diff --git a/.github/workflows/licenses-update.yml b/.github/workflows/licenses-update.yml index 6eb89c41..2db7e023 100644 --- a/.github/workflows/licenses-update.yml +++ b/.github/workflows/licenses-update.yml @@ -24,7 +24,7 @@ jobs: - name: Generate GitHub App Token id: generate-token - uses: actions/create-github-app-token@136412a57a7081aa63c935a2cc2918f76c34f514 # v1.11.2 + uses: actions/create-github-app-token@67e27a7eb7db372a1c61a7f9bdab8699e9ee57f7 # v1.11.3 with: app-id: ${{ secrets.GH_APP_ID }} private-key: ${{ secrets.GH_APP_PRIVATE_KEY }} diff --git a/.github/workflows/pre_commit.yml b/.github/workflows/pre_commit.yml index 161be517..9398feb4 100644 --- a/.github/workflows/pre_commit.yml +++ b/.github/workflows/pre_commit.yml @@ -22,7 +22,7 @@ jobs: - name: Generate GitHub App Token id: generate-token - uses: actions/create-github-app-token@136412a57a7081aa63c935a2cc2918f76c34f514 # v1.11.2 + uses: actions/create-github-app-token@67e27a7eb7db372a1c61a7f9bdab8699e9ee57f7 # v1.11.3 with: app-id: ${{ secrets.GH_APP_ID }} private-key: ${{ secrets.GH_APP_PRIVATE_KEY }} diff --git a/.github/workflows/sync_files.yml b/.github/workflows/sync_files.yml index 690734df..e415ba67 100644 --- a/.github/workflows/sync_files.yml +++ b/.github/workflows/sync_files.yml @@ -30,7 +30,7 @@ jobs: - name: Generate GitHub App Token id: generate-token - uses: actions/create-github-app-token@136412a57a7081aa63c935a2cc2918f76c34f514 # v1.11.2 + uses: actions/create-github-app-token@67e27a7eb7db372a1c61a7f9bdab8699e9ee57f7 # v1.11.3 with: app-id: ${{ secrets.GH_APP_ID }} private-key: ${{ secrets.GH_APP_PRIVATE_KEY }} @@ -63,7 +63,7 @@ jobs: - name: Generate GitHub App Token id: generate-token - uses: actions/create-github-app-token@136412a57a7081aa63c935a2cc2918f76c34f514 # v1.11.2 + uses: actions/create-github-app-token@67e27a7eb7db372a1c61a7f9bdab8699e9ee57f7 # v1.11.3 with: app-id: ${{ vars.GH_APP_ID }} private-key: ${{ secrets.GH_APP_PRIVATE_KEY }} diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 7dc2bc1f..cc11d6a1 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -9,7 +9,6 @@ // "ms-vscode-remote.vscode-remote-extensionpack", // Remote Development Pack for SSH, WSL, and Containers "Oracle.oracle-java", // Oracle Java extension with additional features for Java development "redhat.java", // Java support by Red Hat with IntelliSense, debugging, and code navigation - "shengchen.vscode-checkstyle", // Checkstyle integration for Java code quality checks "streetsidesoftware.code-spell-checker", // Spell checker for code to avoid typos "vmware.vscode-boot-dev-pack", // Developer tools for Spring Boot by VMware "vmware.vscode-spring-boot", // Spring Boot tools by VMware for enhanced Spring development diff --git a/.vscode/settings.json b/.vscode/settings.json index b7ac1b3c..34f41eb4 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2,57 +2,147 @@ "java.compile.nullAnalysis.mode": "automatic", "files.eol": "auto", "java.configuration.updateBuildConfiguration": "interactive", - "black-formatter.args": ["--line-length", "127"], - "flake8.args": ["--max-line-length", "127"], - "pylint.args": ["max-line-length", "127"], + "black-formatter.args": [ + "--line-length", + "127" + ], + "flake8.args": [ + "--max-line-length", + "127" + ], "[java]": { "editor.tabSize": 4, "editor.detectIndentation": false, - "editor.rulers": [127] + "editor.rulers": [ + 127 + ], + "editor.defaultFormatter": "josevseb.google-java-format-for-vs-code" }, "[python]": { "editor.tabSize": 2, "editor.detectIndentation": false, - "editor.rulers": [127] + "editor.rulers": [ + 127 + ] }, "[gradle-build]": { "editor.tabSize": 4, "editor.detectIndentation": false, - "editor.rulers": [127] + "editor.rulers": [ + 127 + ] }, "[gradle]": { "editor.tabSize": 4, "editor.detectIndentation": false, - "editor.rulers": [127] + "editor.rulers": [ + 127 + ] }, "[html]": { "editor.tabSize": 2, - "editor.rulers": [127], + "editor.rulers": [ + 127 + ], "files.trimFinalNewlines": false, "files.insertFinalNewline": false }, "[javascript]": { "editor.tabSize": 2, - "editor.rulers": [127] + "editor.rulers": [ + 127 + ] }, "[yaml]": { "files.trimFinalNewlines": false, "files.insertFinalNewline": false }, + "files.insertFinalNewline": true, + "files.trimFinalNewlines": true, + "files.trimTrailingWhitespace": true, + "files.autoSave": "onFocusChange", + "files.autoSaveWhenNoErrors": true, "diffEditor.maxComputationTime": 0, "editor.wordSegmenterLocales": "", "editor.guides.bracketPairs": "active", "editor.guides.bracketPairsHorizontal": "active", - "files.insertFinalNewline": true, - "files.trimFinalNewlines": true, - "files.trimTrailingWhitespace": true, "editor.indentSize": "tabSize", "editor.stickyScroll.enabled": false, "editor.minimap.enabled": false, "editor.formatOnSave": true, + "editor.insertSpaces": true, "java.format.enabled": true, "java.format.settings.profile": "GoogleStyle", "java.format.settings.google.version": "1.25.2", "java.format.settings.google.mode": "jar-file", - "java.format.settings.google.extra": "--aosp --skip-sorting-imports" + "java.format.settings.google.extra": "--aosp --skip-sorting-imports --skip-javadoc-formatting", + // (DE) Aktiviert Kommentare im Java-Format. + // (EN) Enables comments in Java formatting. + // "java.format.comments.enabled": true, + // (DE) Generiert automatisch Kommentare im Code. + // (EN) Automatically generates comments in code. + // "java.codeGeneration.generateComments": true, + // https://github.com/redhat-developer/vscode-java/blob/master/document/_java.learnMoreAboutCleanUps.md#java-clean-ups + "java.saveActions.cleanup": true, + "java.cleanup.actions": [ + "invertEquals", // Inverts calls to Object.equals(Object) and String.equalsIgnoreCase(String) to avoid useless null pointer exception. + "instanceofPatternMatch" // Replaces instanceof checks with pattern matching. + ], + // (DE) Aktiviert die Code-Vervollständigung für Java. + // (EN) Enables code completion for Java. + "java.completion.engine": "dom", + "java.completion.enabled": true, + "java.completion.importOrder": [ + "java", + "javax", + "org", + "com", + "net", + "io", + "jakarta", + "lombok", + "me", + "stirling", + ], + "java.project.resourceFilters": [ + ".devcontainer/", + ".git/", + ".github/", + ".gradle/", + ".venv/", + ".venv*/", + ".vscode/", + "bin/", + "build/", + "configs/", + "customFiles/", + "docs/", + "exampleYmlFiles", + "gradle/", + "images/", + "logs/", + "pipeline/", + "scripts/", + "testings/", + ".git-blame-ignore-revs", + ".gitattributes", + ".gitignore", + ".pre-commit-config.yaml", + ], + // Enables signature help in Java. + "java.signatureHelp.enabled": true, + // Enables detailed signature help descriptions. + "java.signatureHelp.description.enabled": true, + // Downloads sources for Maven dependencies. + "java.maven.downloadSources": true, + // Enables Gradle project import. + "java.import.gradle.enabled": true, + // Downloads sources for Eclipse projects. + "java.eclipse.downloadSources": true, + // Enables import of the Gradle wrapper. + "java.import.gradle.wrapper.enabled": true, + "spring.initializr.defaultLanguage": "Java", + "spring.initializr.defaultGroupId": "stirling.software.SPDF", + "spring.initializr.defaultArtifactId": "SPDF", + "cSpell.enabled": false, } diff --git a/README.md b/README.md index 05060be1..cde8e5c4 100644 --- a/README.md +++ b/README.md @@ -119,10 +119,10 @@ Stirling-PDF currently supports 39 languages! | Arabic (العربية) (ar_AR) | ![89%](https://geps.dev/progress/89) | | Azerbaijani (Azərbaycan Dili) (az_AZ) | ![88%](https://geps.dev/progress/88) | | Basque (Euskara) (eu_ES) | ![51%](https://geps.dev/progress/51) | -| Bulgarian (Български) (bg_BG) | ![85%](https://geps.dev/progress/85) | +| Bulgarian (Български) (bg_BG) | ![99%](https://geps.dev/progress/99) | | Catalan (Català) (ca_CA) | ![80%](https://geps.dev/progress/80) | -| Croatian (Hrvatski) (hr_HR) | ![87%](https://geps.dev/progress/87) | -| Czech (Česky) (cs_CZ) | ![98%](https://geps.dev/progress/98) | +| Croatian (Hrvatski) (hr_HR) | ![86%](https://geps.dev/progress/86) | +| Czech (Česky) (cs_CZ) | ![97%](https://geps.dev/progress/97) | | Danish (Dansk) (da_DK) | ![85%](https://geps.dev/progress/85) | | Dutch (Nederlands) (nl_NL) | ![85%](https://geps.dev/progress/85) | | English (English) (en_GB) | ![100%](https://geps.dev/progress/100) | @@ -142,15 +142,15 @@ Stirling-PDF currently supports 39 languages! | Polish (Polski) (pl_PL) | ![85%](https://geps.dev/progress/85) | | Portuguese (Português) (pt_PT) | ![97%](https://geps.dev/progress/97) | | Portuguese Brazilian (Português) (pt_BR) | ![98%](https://geps.dev/progress/98) | -| Romanian (Română) (ro_RO) | ![81%](https://geps.dev/progress/81) | -| Russian (Русский) (ru_RU) | ![98%](https://geps.dev/progress/98) | +| Romanian (Română) (ro_RO) | ![80%](https://geps.dev/progress/80) | +| Russian (Русский) (ru_RU) | ![97%](https://geps.dev/progress/97) | | Serbian Latin alphabet (Srpski) (sr_LATN_RS) | ![63%](https://geps.dev/progress/63) | | Simplified Chinese (简体中文) (zh_CN) | ![99%](https://geps.dev/progress/99) | | Slovakian (Slovensky) (sk_SK) | ![74%](https://geps.dev/progress/74) | -| Slovenian (Slovenščina) (sl_SI) | ![97%](https://geps.dev/progress/97) | -| Spanish (Español) (es_ES) | ![87%](https://geps.dev/progress/87) | +| Slovenian (Slovenščina) (sl_SI) | ![96%](https://geps.dev/progress/96) | +| Spanish (Español) (es_ES) | ![86%](https://geps.dev/progress/86) | | Swedish (Svenska) (sv_SE) | ![92%](https://geps.dev/progress/92) | -| Thai (ไทย) (th_TH) | ![86%](https://geps.dev/progress/86) | +| Thai (ไทย) (th_TH) | ![85%](https://geps.dev/progress/85) | | Tibetan (བོད་ཡིག་) (zh_BO) | ![94%](https://geps.dev/progress/94) | | Traditional Chinese (繁體中文) (zh_TW) | ![98%](https://geps.dev/progress/98) | | Turkish (Türkçe) (tr_TR) | ![82%](https://geps.dev/progress/82) | diff --git a/build.gradle b/build.gradle index 182e91f4..7d8a9898 100644 --- a/build.gradle +++ b/build.gradle @@ -260,7 +260,7 @@ spotless { googleJavaFormat("1.25.2").aosp().reorderImports(false) - importOrder("java", "javax", "org", "com", "net", "io") + importOrder("java", "javax", "org", "com", "net", "io", "jakarta", "lombok", "me", "stirling") toggleOffOn() trimTrailingWhitespace() leadingTabsToSpaces() @@ -272,7 +272,7 @@ sonar { properties { property "sonar.projectKey", "Stirling-Tools_Stirling-PDF" property "sonar.organization", "stirling-tools" - + property "sonar.exclusions", "**/build-wrapper-dump.json, src/main/java/org/apache/**, src/main/resources/static/pdfjs/**, src/main/resources/static/pdfjs-legacy/**, src/main/resources/static/js/thirdParty/**" property "sonar.coverage.exclusions", "src/main/java/org/apache/**, src/main/resources/static/pdfjs/**, src/main/resources/static/pdfjs-legacy/**, src/main/resources/static/js/thirdParty/**" property "sonar.cpd.exclusions", "src/main/java/org/apache/**, src/main/resources/static/pdfjs/**, src/main/resources/static/pdfjs-legacy/**, src/main/resources/static/js/thirdParty/**" @@ -297,14 +297,14 @@ dependencies { implementation 'ch.qos.logback:logback-core:1.5.15' implementation 'ch.qos.logback:logback-classic:1.5.15' - - // Exclude vulnerable BouncyCastle version used in tableau + + // Exclude vulnerable BouncyCastle version used in tableau configurations.all { exclude group: 'org.bouncycastle', module: 'bcpkix-jdk15on' exclude group: 'org.bouncycastle', module: 'bcutil-jdk15on' exclude group: 'org.bouncycastle', module: 'bcmail-jdk15on' } - + if (System.getenv("STIRLING_PDF_DESKTOP_UI") != "false") { implementation 'org.apache.commons:commons-compress:1.26.0' implementation "me.friwi:jcefmaven:127.3.1" @@ -408,7 +408,7 @@ dependencies { implementation "org.bouncycastle:bcprov-jdk18on:$bouncycastleVersion" implementation "org.bouncycastle:bcpkix-jdk18on:$bouncycastleVersion" implementation "org.springframework.boot:spring-boot-starter-actuator:$springBootVersion" - implementation "io.micrometer:micrometer-core:1.14.3" + implementation "io.micrometer:micrometer-core:1.14.4" implementation group: "com.google.zxing", name: "core", version: "3.5.3" // https://mvnrepository.com/artifact/org.commonmark/commonmark implementation "org.commonmark:commonmark:0.24.0" diff --git a/src/main/resources/messages_bg_BG.properties b/src/main/resources/messages_bg_BG.properties index 79c300f6..5f7702b6 100644 --- a/src/main/resources/messages_bg_BG.properties +++ b/src/main/resources/messages_bg_BG.properties @@ -79,10 +79,10 @@ info=Информация pro=Pro page=Страница pages=Страници -loading=Loading... -addToDoc=Add to Document -reset=Reset -apply=Apply +loading=Зареждане на... +addToDoc=Добавяне към документ +reset=Нулиране +apply=Приложи legal.privacy=Политика за поверителност legal.terms=Правила и условия @@ -138,13 +138,13 @@ analytics.settings=Можете да промените настройките # NAVBAR # ############# navbar.favorite=Любими -navbar.recent=New and recently updated +navbar.recent=Нови и наскоро актуализирани navbar.darkmode=Тъмна тема navbar.language=Езици navbar.settings=Настройки navbar.allTools=Инструменти navbar.multiTool=Мулти инструменти -navbar.search=Search +navbar.search=Търсене navbar.sections.organize=Организирайте navbar.sections.convertTo=Преобразуване в PDF navbar.sections.convertFrom=Преобразуване от PDF @@ -240,20 +240,20 @@ database.creationDate=Дата на създаване database.fileSize=Размер на файла database.deleteBackupFile=Изтриване на архивен файл database.importBackupFile=Импортиране на архивен файл -database.createBackupFile=Create Backup File +database.createBackupFile=Създаване на файл с резервно копие database.downloadBackupFile=Изтеглете архивен файл database.info_1=Когато импортирате данни, е от решаващо значение да осигурите правилната структура. Ако не сте сигурни в това, което правите, потърсете съвет и подкрепа от професионалист. Грешка в структурата може да причини неизправност на приложението, включително пълна невъзможност за стартиране на приложението. database.info_2=Името на файла няма значение при качване. След това ще бъде преименуван, за да следва формата backup_user_yyyyMMddHHmm.sql, осигурявайки последователна конвенция за именуване. database.submit=Импортиране на резервно копие database.importIntoDatabaseSuccessed=Импортирането в базата данни бе успешно -database.backupCreated=Database backup successful +database.backupCreated=Успешно архивиране на базата данни database.fileNotFound=Файлът не е намерен database.fileNullOrEmpty=Файлът не трябва да е нулев или празен database.failedImportFile=Неуспешно импортиране на файл -database.notSupported=This function is not available for your database connection. +database.notSupported=Тази функция не е налична за вашата връзка с база данни. session.expired=Вашата сесия е изтекла. Моля, опреснете страницата и опитайте отново. -session.refreshPage=Refresh Page +session.refreshPage=Презареждане на страницата ############# # HOME-PAGE # @@ -262,18 +262,18 @@ home.desc=Вашето локално хоствано обслужване на home.searchBar=Търсене на функции... -home.viewPdf.title=View/Edit PDF +home.viewPdf.title=Преглед/Редактиране PDF home.viewPdf.desc=Преглеждайте, коментирайте, добавяйте текст или изображения viewPdf.tags=преглед,четене,анотиране,текст,изображение -home.setFavorites=Set Favourites -home.hideFavorites=Hide Favourites -home.showFavorites=Show Favourites -home.legacyHomepage=Old homepage -home.newHomePage=Try our new homepage! -home.alphabetical=Alphabetical -home.globalPopularity=Global Popularity -home.sortBy=Sort by: +home.setFavorites=Задаване на предпочитани +home.hideFavorites=Скриване на предпочитани +home.showFavorites=Покажи предпочитани +home.legacyHomepage=Стара начална страница +home.newHomePage=Опитайте новата ни начална страница! +home.alphabetical=По азбучен ред +home.globalPopularity=Световна популярност +home.sortBy=Сортиране по: home.multiTool.title=PDF Мулти инструмент home.multiTool.desc=Обединяване, завъртане, пренареждане и премахване на страници @@ -462,9 +462,9 @@ home.MarkdownToPDF.title=Markdown към PDF home.MarkdownToPDF.desc=Преобразува всеки Markdown файл към PDF MarkdownToPDF.tags=маркиране,уеб-съдържание,трансформация,преобразуване -home.PDFToMarkdown.title=PDF to Markdown -home.PDFToMarkdown.desc=Converts any PDF to Markdown -PDFToMarkdown.tags=markup,web-content,transformation,convert,md +home.PDFToMarkdown.title=PDF към Markdown +home.PDFToMarkdown.desc=Преобразува всеки PDF файл в Markdown +PDFToMarkdown.tags=маркиране, уеб-съдържание, трансформация, конвертиране, MD home.getPdfInfo.title=Вземете ЦЯЛАТА информация от PDF home.getPdfInfo.desc=Взима всяка възможна информация от PDF файлове @@ -489,11 +489,11 @@ home.autoRedact.title=Автоматично редактиране home.autoRedact.desc=Автоматично редактира (зачернява) текст в PDF въз основа на въведен текст autoRedact.tags=Редактиране,Скриване,затъмняване,черен,маркер,скрит -home.redact.title=Manual Redaction -home.redact.desc=Redacts a PDF based on selected text, drawn shapes and/or selected page(s) -redact.tags=Redact,Hide,black out,black,marker,hidden,manual +home.redact.title=Ръчно редактиране +home.redact.desc=Редактиране на PDF файл въз основа на избран текст, нарисувани форми и/или избрана страница(и) +redact.tags=Редактиране, скриване, затъмнение, черно, маркер, скрито, ръчно -home.tableExtraxt.title=PDF в CSV +home.tableExtraxt.title=PDF към CSV home.tableExtraxt.desc=Извлича таблици от PDF, като ги конвертира в CSV tableExtraxt.tags=CSV,извличане на таблица,извличане,конвертиране @@ -533,9 +533,9 @@ home.splitPdfByChapters.title=Разделете PDF по глави home.splitPdfByChapters.desc=Разделете PDF на множество файлове въз основа на неговата структура на глави. splitPdfByChapters.tags=разделяне, глави, отметки, организиране -home.validateSignature.title=Validate PDF Signature -home.validateSignature.desc=Verify digital signatures and certificates in PDF documents -validateSignature.tags=signature,verify,validate,pdf,certificate,digital signature,Validate Signature,Validate certificate +home.validateSignature.title=Валидиране на PDF подпис +home.validateSignature.desc=Проверка на цифрови подписи и сертификати в PDF документи +validateSignature.tags=подпис,проверка,валидиране,pdf,сертификат,цифров подпис,валидиране на подпис,валидиране на сертификат #replace-invert-color replace-color.title=Замени-инвертиране-на-цвят @@ -580,7 +580,7 @@ login.oauth2invalidRequest=Невалидна заявка login.oauth2AccessDenied=Отказан достъп login.oauth2InvalidTokenResponse=Невалиден отговор на токена login.oauth2InvalidIdToken=Невалиден токен за идентификатор -login.relyingPartyRegistrationNotFound=No relying party registration found +login.relyingPartyRegistrationNotFound=Не е открита регистрация на доверяваща се страна login.userIsDisabled=Потребителят е деактивиран, влизането в момента е блокирано с това потребителско име. Моля, свържете се с администратора. login.alreadyLoggedIn=Вече сте влезли в login.alreadyLoggedIn2=устройства. Моля, излезте от устройствата и опитайте отново. @@ -599,31 +599,31 @@ autoRedact.convertPDFToImageLabel=Преобразуване на PDF към PDF autoRedact.submitButton=Изпращане #redact -redact.title=Manual Redaction -redact.header=Manual Redaction -redact.submit=Redact -redact.textBasedRedaction=Text based Redaction -redact.pageBasedRedaction=Page-based Redaction -redact.convertPDFToImageLabel=Convert PDF to PDF-Image (Used to remove text behind the box) -redact.pageRedactionNumbers.title=Pages -redact.pageRedactionNumbers.placeholder=(e.g. 1,2,8 or 4,7,12-16 or 2n-1) -redact.redactionColor.title=Redaction Color -redact.export=Export -redact.upload=Upload -redact.boxRedaction=Box draw redaction -redact.zoom=Zoom -redact.zoomIn=Zoom in -redact.zoomOut=Zoom out -redact.nextPage=Next Page -redact.previousPage=Previous Page -redact.toggleSidebar=Toggle Sidebar -redact.showThumbnails=Show Thumbnails -redact.showDocumentOutline=Show Document Outline (double-click to expand/collapse all items) -redact.showAttatchments=Show Attachments -redact.showLayers=Show Layers (double-click to reset all layers to the default state) -redact.colourPicker=Colour Picker -redact.findCurrentOutlineItem=Find current outline item -redact.applyChanges=Apply Changes +redact.title=Ръчно редактиране +redact.header=Ръчно редактиране +redact.submit=Редактиране +redact.textBasedRedaction=Редактиране на базата на текст +redact.pageBasedRedaction=Редактиране на базата на страници +redact.convertPDFToImageLabel=Конвертиране на PDF в PDF-изображение (използва се за премахване на текста зад полето) +redact.pageRedactionNumbers.title=Страници +redact.pageRedactionNumbers.placeholder=(напр. 1,2,8 или 4,7,12-16 или 2n-1) +redact.redactionColor.title=Цвят на редактиране +redact.export=Експорт +redact.upload=Качване +redact.boxRedaction=Редактиране на рисунката в квадратчето +redact.zoom=Увеличаване +redact.zoomIn=Увеличаване на мащаба +redact.zoomOut=Намаляване на мащаба +redact.nextPage=Следваща страница +redact.previousPage=Предишна страница +redact.toggleSidebar=Превключване на страничната лента +redact.showThumbnails=Показване на миниатюри +redact.showDocumentOutline=Показване на контура на документа (кликнете два пъти, за да разгънете/свиете всички елементи) +redact.showAttatchments=Показване на прикачени файлове +redact.showLayers=Показване на слоеве (щракнете два пъти, за да върнете всички слоеве в състояние по подразбиране) +redact.colourPicker=Избор на цвят +redact.findCurrentOutlineItem=Намиране на текущия елемент от контура +redact.applyChanges=Прилагане на промените #showJS showJS.title=Покажи Javascript @@ -661,9 +661,9 @@ MarkdownToPDF.credit=Използва WeasyPrint #pdf-to-markdown -PDFToMarkdown.title=PDF To Markdown -PDFToMarkdown.header=PDF To Markdown -PDFToMarkdown.submit=Convert +PDFToMarkdown.title=PDF към Markdown +PDFToMarkdown.header=PDF към Markdown +PDFToMarkdown.submit=Преобразуване #url-to-pdf @@ -809,7 +809,7 @@ certSign.showSig=Показване на подпис certSign.reason=Причина certSign.location=Местоположение certSign.name=Име -certSign.showLogo=Show Logo +certSign.showLogo=Покажи лого certSign.submit=Подпишете PDF @@ -844,9 +844,9 @@ compare.highlightColor.2=Цвят на маркирането 2: compare.document.1=Документ 1 compare.document.2=Документ 2 compare.submit=Сравнявай -compare.complex.message=One or both of the provided documents are large files, accuracy of comparison may be reduced -compare.large.file.message=One or Both of the provided documents are too large to process -compare.no.text.message=One or both of the selected PDFs have no text content. Please choose PDFs with text for comparison. +compare.complex.message=Един или и двата предоставени документа са големи файлове, точността на сравнението може да бъде намалена. +compare.large.file.message=Един или и двата предоставени документа са твърде големи за обработка +compare.no.text.message=Един или и двата избрани PDF файла нямат текстово съдържание. Моля, изберете PDF файлове с текст за сравнение. #BookToPDF BookToPDF.title=Книги и комикси в PDF @@ -869,18 +869,18 @@ sign.draw=Начертайте подпис sign.text=Въвеждане на текст sign.clear=Изчисти sign.add=Добави -sign.saved=Saved Signatures -sign.save=Save Signature -sign.personalSigs=Personal Signatures -sign.sharedSigs=Shared Signatures -sign.noSavedSigs=No saved signatures found -sign.addToAll=Add to all pages -sign.delete=Delete -sign.first=First page -sign.last=Last page -sign.next=Next page -sign.previous=Previous page -sign.maintainRatio=Toggle maintain aspect ratio +sign.saved=Съхранени подписи +sign.save=Запазване на подпис +sign.personalSigs=Лични подписи +sign.sharedSigs=Споделени подписи +sign.noSavedSigs=Не са намерени запазени подписи +sign.addToAll=Дибави към всички страници +sign.delete=Изтрий +sign.first=Първа страница +sign.last=Последна страница +sign.next=Следваща страница +sign.previous=Предишна стараница +sign.maintainRatio=Превключване за поддържане на съотношението на страните #repair @@ -952,7 +952,7 @@ compress.title=Компресиране compress.header=Компресиране на PDF compress.credit=Тази услуга използва qpdf за PDF компресиране/оптимизиране. compress.selectText.1=Ръчен режим - от 1 до 5 -compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. +compress.selectText.1.1=При нива на оптимизация от 6 до 9, в допълнение към общото компресиране на PDF, резолюцията на изображението се намалява, за да се намали допълнително размерът на файла. По-високите нива водят до по-силна компресия на изображенията (до 50% от оригиналния размер), като се постига по-голямо намаляване на размера, но с потенциална загуба на качество на изображенията. compress.selectText.2=Ниво на оптимизация: compress.selectText.3=4 (Ужасно за текстови изображения) compress.selectText.4=Автоматичен режим - Автоматично настройва качеството, за да получи PDF с точен размер @@ -992,7 +992,7 @@ pdfOrganiser.mode.7=Премахни първо pdfOrganiser.mode.8=Премахване на последния pdfOrganiser.mode.9=Премахване на първия и последния pdfOrganiser.mode.10=Обединяване на четно и нечетно -pdfOrganiser.mode.11=Duplicate all pages +pdfOrganiser.mode.11=Дублиране на всички страници pdfOrganiser.placeholder=(напр. 1,3,2 или 4-8,2,10-12 или 2n-1) @@ -1000,42 +1000,42 @@ pdfOrganiser.placeholder=(напр. 1,3,2 или 4-8,2,10-12 или 2n-1) multiTool.title=PDF Мулти инструмент multiTool.header=PDF Мулти инструмент multiTool.uploadPrompts=Име на файл -multiTool.selectAll=Select All -multiTool.deselectAll=Deselect All -multiTool.selectPages=Page Select -multiTool.selectedPages=Selected Pages -multiTool.page=Page -multiTool.deleteSelected=Delete Selected -multiTool.downloadAll=Export -multiTool.downloadSelected=Export Selected +multiTool.selectAll=Изберете всички +multiTool.deselectAll=Отмяна на избора на всички +multiTool.selectPages=Избор на страница +multiTool.selectedPages=Избрани страници +multiTool.page=Страница +multiTool.deleteSelected=Изтриване на избраното +multiTool.downloadAll=Експорт +multiTool.downloadSelected=Избрано за експортиране -multiTool.insertPageBreak=Insert Page Break -multiTool.addFile=Add File -multiTool.rotateLeft=Rotate Left -multiTool.rotateRight=Rotate Right -multiTool.split=Split -multiTool.moveLeft=Move Left -multiTool.moveRight=Move Right -multiTool.delete=Delete -multiTool.dragDropMessage=Page(s) Selected -multiTool.undo=Undo -multiTool.redo=Redo +multiTool.insertPageBreak=Вмъкване на прекъсване на страница +multiTool.addFile=Добавяне на файл +multiTool.rotateLeft=Завъртете наляво +multiTool.rotateRight=Завъртете надясно +multiTool.split=Разделяне +multiTool.moveLeft=Преместване наляво +multiTool.moveRight=Преместване надясно +multiTool.delete=Изтрий +multiTool.dragDropMessage=Избран(и) страница(/и) +multiTool.undo=Отмяна на +multiTool.redo=Повтори #decrypt -decrypt.passwordPrompt=This file is password-protected. Please enter the password: -decrypt.cancelled=Operation cancelled for PDF: {0} -decrypt.noPassword=No password provided for encrypted PDF: {0} -decrypt.invalidPassword=Please try again with the correct password. -decrypt.invalidPasswordHeader=Incorrect password or unsupported encryption for PDF: {0} -decrypt.unexpectedError=There was an error processing the file. Please try again. -decrypt.serverError=Server error while decrypting: {0} -decrypt.success=File decrypted successfully. +decrypt.passwordPrompt=Този файл е защитен с парола. Моля, въведете паролата: +decrypt.cancelled=Операцията за PDF е отменена: {0} +decrypt.noPassword=Не е предоставена парола за шифрирания PDF: {0} +decrypt.invalidPassword=Моля, опитайте отново с правилната парола. +decrypt.invalidPasswordHeader=Неправилна парола или неподдържано криптиране за PDF: {0} +decrypt.unexpectedError=Възникна грешка при обработката на файла. Моля, опитайте отново. +decrypt.serverError=Грешка в работата на сървъра повреме на дешифриране: {0} +decrypt.success=Файлът е успешно дешифриран. #multiTool-advert -multiTool-advert.message=This feature is also available in our multi-tool page. Check it out for enhanced page-by-page UI and additional features! +multiTool-advert.message=Тази функция е налична и в нашата страница с множество инструменти. Проверете го за подобрен потребителски интерфейс страница по страница и допълнителни функции! #view pdf -viewPdf.title=View/Edit PDF +viewPdf.title=Преглед/Редактиране на PDF viewPdf.header=Преглед на PDF #pageRemover @@ -1336,51 +1336,51 @@ splitByChapters.desc.4=Разрешаване на дубликати: Ако е splitByChapters.submit=Разделяне на PDF #File Chooser -fileChooser.click=Click -fileChooser.or=or -fileChooser.dragAndDrop=Drag & Drop -fileChooser.dragAndDropPDF=Drag & Drop PDF file -fileChooser.dragAndDropImage=Drag & Drop Image file -fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.click=Щракнете +fileChooser.or=или +fileChooser.dragAndDrop=Влачете и пуснете +fileChooser.dragAndDropPDF=Влачете и пуснете PDF файл +fileChooser.dragAndDropImage=Влачете и пуснете изображение +fileChooser.hoveredDragAndDrop=Влачете и пуснете файл(ове) тук #release notes -releases.footer=Releases -releases.title=Release Notes -releases.header=Release Notes -releases.current.version=Current Release -releases.note=Release notes are only available in English +releases.footer=Версии +releases.title=Бележки към версиите +releases.header=Бележки към версиите +releases.current.version=Текуща версия +releases.note=Бележките към изданието са налични само на английски език #Validate Signature -validateSignature.title=Validate PDF Signatures -validateSignature.header=Validate Digital Signatures -validateSignature.selectPDF=Select signed PDF file -validateSignature.submit=Validate Signatures -validateSignature.results=Validation Results -validateSignature.status=Status -validateSignature.signer=Signer -validateSignature.date=Date -validateSignature.reason=Reason -validateSignature.location=Location -validateSignature.noSignatures=No digital signatures found in this document -validateSignature.status.valid=Valid -validateSignature.status.invalid=Invalid -validateSignature.chain.invalid=Certificate chain validation failed - cannot verify signer's identity -validateSignature.trust.invalid=Certificate not in trust store - source cannot be verified -validateSignature.cert.expired=Certificate has expired -validateSignature.cert.revoked=Certificate has been revoked -validateSignature.signature.info=Signature Information -validateSignature.signature=Signature -validateSignature.signature.mathValid=Signature is mathematically valid BUT: -validateSignature.selectCustomCert=Custom Certificate File X.509 (Optional) -validateSignature.cert.info=Certificate Details -validateSignature.cert.issuer=Issuer -validateSignature.cert.subject=Subject -validateSignature.cert.serialNumber=Serial Number -validateSignature.cert.validFrom=Valid From -validateSignature.cert.validUntil=Valid Until -validateSignature.cert.algorithm=Algorithm -validateSignature.cert.keySize=Key Size -validateSignature.cert.version=Version -validateSignature.cert.keyUsage=Key Usage -validateSignature.cert.selfSigned=Self-Signed -validateSignature.cert.bits=bits +validateSignature.title=Удостоверяване на PDF подписи +validateSignature.header=Потвърждаване на цифрови подписи +validateSignature.selectPDF=Изберете подписания PDF файл +validateSignature.submit=Потвърждаване на подписите +validateSignature.results=Резултати от валидирането +validateSignature.status=Статус +validateSignature.signer=Подписващ +validateSignature.date=Дата +validateSignature.reason=Причина +validateSignature.location=Местоположение +validateSignature.noSignatures=В този документ не са открити цифрови подписи +validateSignature.status.valid=Валиден +validateSignature.status.invalid=Невалиден +validateSignature.chain.invalid=Удостоверяването на веригата на сертификата е неуспешно - не може да се провери самоличността на подписващия +validateSignature.trust.invalid=Сертификатът не е в хранилището за доверие - източникът не може да бъде проверен +validateSignature.cert.expired=Сертификатът е изтекъл +validateSignature.cert.revoked=Сертификатът е отменен +validateSignature.signature.info=Информация за подписа +validateSignature.signature=Подпис +validateSignature.signature.mathValid=Подписът е математически валиден, НО: +validateSignature.selectCustomCert=Файл със сертификат X.509 по поръчка (по избор) +validateSignature.cert.info=Подробности за сертификата +validateSignature.cert.issuer=Издател +validateSignature.cert.subject=Тема +validateSignature.cert.serialNumber=Сериен номер +validateSignature.cert.validFrom=Валиден от +validateSignature.cert.validUntil=Валиден до +validateSignature.cert.algorithm=Алгоритъм +validateSignature.cert.keySize=Размер на ключ +validateSignature.cert.version=Версия +validateSignature.cert.keyUsage=Предназначение на ключа за използване +validateSignature.cert.selfSigned=Самостоятелно подписан +validateSignature.cert.bits=битове diff --git a/src/main/resources/messages_it_IT.properties b/src/main/resources/messages_it_IT.properties index f17e7f58..bbd88bd0 100644 --- a/src/main/resources/messages_it_IT.properties +++ b/src/main/resources/messages_it_IT.properties @@ -992,7 +992,7 @@ pdfOrganiser.mode.7=Rimuovi prima pdfOrganiser.mode.8=Rimuovi ultima pdfOrganiser.mode.9=Rimuovi la prima e l'ultima pdfOrganiser.mode.10=Unione pari-dispari -pdfOrganiser.mode.11=Duplicate all pages +pdfOrganiser.mode.11=Duplica tutte le pagine pdfOrganiser.placeholder=(ad es. 1,3,2 o 4-8,2,10-12 o 2n-1) @@ -1035,7 +1035,7 @@ decrypt.success=File decrittografato con successo. multiTool-advert.message=Questa funzione è disponibile anche nella nostra pagina multi-strumento. Scoprila per un'interfaccia utente pagina per pagina migliorata e funzionalità aggiuntive! #view pdf -viewPdf.title=View/Edit PDF +viewPdf.title=Visualizza/Modifica PDF viewPdf.header=Visualizza PDF #pageRemover diff --git a/src/main/resources/static/3rdPartyLicenses.json b/src/main/resources/static/3rdPartyLicenses.json index b56f77c8..0cd33d7c 100644 --- a/src/main/resources/static/3rdPartyLicenses.json +++ b/src/main/resources/static/3rdPartyLicenses.json @@ -560,7 +560,7 @@ { "moduleName": "io.micrometer:micrometer-core", "moduleUrl": "https://github.com/micrometer-metrics/micrometer", - "moduleVersion": "1.14.3", + "moduleVersion": "1.14.4", "moduleLicense": "The Apache Software License, Version 2.0", "moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0.txt" },