Compare commits

..

4 Commits

Author SHA1 Message Date
Anthony Stirling
568700668e Update build.yml 2024-10-19 16:22:12 +01:00
Anthony Stirling
9c56dc7d31 Update build.yml 2024-10-19 16:09:24 +01:00
Ludy87
1c1bea090d changed: deprecation code 2024-10-19 16:48:57 +02:00
Ludy87
f23007515a implement Saml2 login/logout 2024-10-19 14:48:12 +02:00
133 changed files with 4464 additions and 8353 deletions

View File

@@ -16,27 +16,21 @@ Java:
Back End: Back End:
- changed-files: - changed-files:
- any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/config/**/*' - any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/config/security/**/*'
- any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/controller/**/*' - any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/config/model/provider/**/*'
- any-glob-to-any-file: 'src/main/resources/settings.yml.template' - any-glob-to-any-file: 'src/main/resources/settings.yml.template'
- any-glob-to-any-file: 'src/main/resources/application.properties'
- any-glob-to-any-file: 'src/main/resources/banner.txt' - any-glob-to-any-file: 'src/main/resources/banner.txt'
- any-glob-to-any-file: 'scripts/png_to_webp.py'
- any-glob-to-any-file: 'split_photos.py'
Security: Security:
- changed-files: - changed-files:
- any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/config/security/**/*' - any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/config/security/**/*'
- any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/model/provider/**/*' - any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/config/model/provider/**/*'
- any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/model/AuthenticationType.java' - any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/config/model/AuthenticationType.java'
- any-glob-to-any-file: 'scripts/download-security-jar.sh'
API: API:
- changed-files: - changed-files:
- any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/controller/web/MetricsController.java' - any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/controller/web/MetricsController.java'
- any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/controller/api/**/*' - any-glob-to-any-file: 'src/main/java/stirling/software/SPDF/controller/api/**/*'
- any-glob-to-any-file: 'scripts/png_to_webp.py'
- any-glob-to-any-file: 'split_photos.py'
Documentation: Documentation:
- changed-files: - changed-files:
@@ -49,9 +43,6 @@ Docker:
- any-glob-to-any-file: 'Dockerfile' - any-glob-to-any-file: 'Dockerfile'
- any-glob-to-any-file: 'Dockerfile-*' - any-glob-to-any-file: 'Dockerfile-*'
- any-glob-to-any-file: 'exampleYmlFiles/*.yml' - any-glob-to-any-file: 'exampleYmlFiles/*.yml'
- any-glob-to-any-file: 'scripts/init.sh'
- any-glob-to-any-file: 'scripts/init-without-ocr.sh'
- any-glob-to-any-file: 'scripts/installFonts.sh'
Test: Test:
- changed-files: - changed-files:

21
.github/labels.yml vendored
View File

@@ -3,12 +3,9 @@
# #
# The repository labels will be automatically configured using this file and # The repository labels will be automatically configured using this file and
# the GitHub Action https://github.com/marketplace/actions/github-labeler. # the GitHub Action https://github.com/marketplace/actions/github-labeler.
- name: "Licenses"
color: "EDEDED"
from_name: "licenses"
- name: "Back End" - name: "Back End"
color: "20CE6C" color: "20CE6C"
description: "Issues or pull requests related to back-end development" description: "Issues related to back-end development"
from_name: "Back end" from_name: "Back end"
- name: "Bug" - name: "Bug"
description: "Something isn't working" description: "Something isn't working"
@@ -27,7 +24,6 @@
from_name: "documentation" from_name: "documentation"
- name: "Done for next release" - name: "Done for next release"
color: "0CDBD1" color: "0CDBD1"
description: "Items that are completed and will be included in the next release"
- name: "Done" - name: "Done"
color: "60F13B" color: "60F13B"
- name: "duplicate" - name: "duplicate"
@@ -41,7 +37,7 @@
description: "Fix needs to be confirmed" description: "Fix needs to be confirmed"
- name: "Front End" - name: "Front End"
color: "BBD2F1" color: "BBD2F1"
description: "Issues or pull requests related to front-end development" description: "Issues related to front-end development"
- name: "github-actions" - name: "github-actions"
description: "Pull requests that update GitHub Actions code" description: "Pull requests that update GitHub Actions code"
color: "999999" color: "999999"
@@ -95,16 +91,3 @@
description: "Testing-related issues or pull requests" description: "Testing-related issues or pull requests"
- name: "Stale" - name: "Stale"
color: "000000" color: "000000"
description: "Issues or pull requests that have become inactive"
- name: "Priority: Critical"
color: "000000"
description: "Issues or pull requests with the highest priority"
- name: "Priority: High"
color: "FF0000"
description: "Issues or pull requests with high priority"
- name: "Priority: Medium"
color: "FFFF00"
description: "Issues or pull requests with medium priority"
- name: "Priority: Low"
color: "00FF00"
description: "Issues or pull requests with low priority"

View File

@@ -8,7 +8,6 @@ Closes #(issue_number)
- [ ] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) - [ ] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have performed a self-review of my own code - [ ] I have performed a self-review of my own code
- [ ] I have attached images of the change if it is UI based
- [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] My changes generate no new warnings - [ ] My changes generate no new warnings
- [ ] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only) - [ ] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only)

View File

@@ -8,20 +8,17 @@ gradle_path = "build.gradle"
def get_chart_version(path): def get_chart_version(path):
""" """
Reads the version and the appVersion from Chart.yaml. Reads the appVersion from Chart.yaml.
Args: Args:
path (str): The file path to the Chart.yaml. path (str): The file path to the Chart.yaml.
Returns: Returns:
dict: The version under "chart" key and the appVersion under "app" key. str: The appVersion if found, otherwise an empty string.
""" """
with open(path, encoding="utf-8") as file: with open(path, encoding="utf-8") as file:
chart_yaml = yaml.safe_load(file) chart_yaml = yaml.safe_load(file)
return { return chart_yaml.get("appVersion", "")
"chart": chart_yaml["version"],
"app": chart_yaml["appVersion"]
}
def get_gradle_version(path): def get_gradle_version(path):
@@ -42,46 +39,17 @@ def get_gradle_version(path):
return "" return ""
def get_new_chart_version(chart_version, old_app_version, new_app_version): def update_chart_version(path, new_version):
"""
Get the new chart version from
Args:
str: The current chart version.
str: The current app version.
str: The new app version.
Returns:
str: The new chart version to update to.
"""
chart_major, chart_minor, chart_patch = chart_version.split(".")
old_major, old_minor, old_patch = old_app_version.split(".")
new_major, new_minor, new_patch = new_app_version.split(".")
if old_major != new_major:
new_chart_version = f"{int(chart_major)+1}.0.0"
elif old_minor != new_minor:
new_chart_version = f"{chart_major}.{int(chart_minor)+1}.0"
elif old_patch != new_patch:
new_chart_version = f"{chart_major}.{chart_minor}.{int(chart_patch)+1}"
return new_chart_version
def update_chart_version(path, new_chart_version, new_app_version):
""" """
Updates the version and the appVersion in Chart.yaml with a new version. Updates the appVersion in Chart.yaml with a new version.
Args: Args:
path (str): The file path to the Chart.yaml. path (str): The file path to the Chart.yaml.
new_chart_version (str): The new chart version to update to. new_version (str): The new version to update to.
new_app_version (str): The new app version to update to.
""" """
with open(path, encoding="utf-8") as file: with open(path, encoding="utf-8") as file:
chart_yaml = yaml.safe_load(file) chart_yaml = yaml.safe_load(file)
chart_yaml["version"] = new_chart_version chart_yaml["appVersion"] = new_version
chart_yaml["appVersion"] = new_app_version
with open(path, "w", encoding="utf-8") as file: with open(path, "w", encoding="utf-8") as file:
yaml.safe_dump(chart_yaml, file) yaml.safe_dump(chart_yaml, file)
@@ -90,11 +58,10 @@ def update_chart_version(path, new_chart_version, new_app_version):
chart_version = get_chart_version(chart_yaml_path) chart_version = get_chart_version(chart_yaml_path)
gradle_version = get_gradle_version(gradle_path) gradle_version = get_gradle_version(gradle_path)
if chart_version["app"] != gradle_version: if chart_version != gradle_version:
new_chart_version = get_new_chart_version(chart_version["chart"], chart_version["app"], gradle_version, )
print( print(
f"Versions do not match. Updating Chart.yaml from {chart_version['chart']} to {new_chart_version}." f"Versions do not match. Updating Chart.yaml from {chart_version} to {gradle_version}."
) )
update_chart_version(chart_yaml_path, new_chart_version, gradle_version) update_chart_version(chart_yaml_path, gradle_version)
else: else:
print("Versions match. No update required.") print("Versions match. No update required.")

View File

@@ -37,6 +37,21 @@ jobs:
- name: Build with Gradle - name: Build with Gradle
run: ./gradlew build --no-build-cache run: ./gradlew build --no-build-cache
continue-on-error: true
- name: Upload JUnit test results
if: always()
uses: actions/upload-artifact@v3
with:
name: junit-test-results
path: '**/build/test-results/test/TEST-*.xml'
retention-days: 7
- name: Check for test failures
if: failure()
run: |
echo "Tests failed. Please check the JUnit test results artifact for details."
exit 1
docker-compose-tests: docker-compose-tests:
# if: github.event_name == 'push' && github.ref == 'refs/heads/main' || # if: github.event_name == 'push' && github.ref == 'refs/heads/main' ||

View File

@@ -1,47 +0,0 @@
name: Lint and Test Helm Charts
on:
push:
branches: ["main"]
pull_request:
branches: ["main"]
jobs:
lint-test:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Helm
uses: azure/setup-helm@v4
- name: Set up python
uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Run pre-commit
uses: pre-commit/action@v3.0.1
with:
extra_args: helm-docs-built
- name: Set up chart-testing
uses: helm/chart-testing-action@v2
- name: Run chart-testing (list-changed)
id: list-changed
run: |
changed=$(ct list-changed --target-branch ${{ github.event.repository.default_branch }})
if [[ -n "$changed" ]]; then
echo "changed=true" >> "$GITHUB_OUTPUT"
fi
- name: Run chart-testing
if: steps.list-changed.outputs.changed == 'true'
run: ct lint --target-branch ${{ github.event.repository.default_branch }} --validate-maintainers=false

View File

@@ -1,31 +0,0 @@
name: Release Helm charts
on:
push:
branches:
- main
permissions:
contents: write
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up git config
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
- name: Run chart-releaser
uses: helm/chart-releaser-action@v1.6.0
with:
config: "./cr.yaml"
charts_dir: "chart"
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"

View File

@@ -26,10 +26,6 @@ jobs:
run: pip install pyyaml run: pip install pyyaml
- name: Sync versions - name: Sync versions
run: python .github/scripts/gradle_to_chart.py run: python .github/scripts/gradle_to_chart.py
- name: Run pre-commit helm-docs-built
uses: pre-commit/action@v3.0.1
with:
extra_args: helm-docs-built
- name: Set up git config - name: Set up git config
run: | run: |
git config --global user.name "github-actions[bot]" git config --global user.name "github-actions[bot]"

1
.gitignore vendored
View File

@@ -4,7 +4,6 @@ bin/
tmp/ tmp/
*.tmp *.tmp
*.bak *.bak
*.exe
*.swp *.swp
*~.nib *~.nib
local.properties local.properties

View File

@@ -37,9 +37,3 @@ repos:
language: python language: python
exclude: ^(src/main/resources/static/pdfjs|src/main/resources/static/pdfjs-legacy) exclude: ^(src/main/resources/static/pdfjs|src/main/resources/static/pdfjs-legacy)
files: ^.*(\.html|\.css|\.js)$ files: ^.*(\.html|\.css|\.js)$
- repo: https://github.com/norwoodj/helm-docs
rev: v1.14.2
hooks:
- id: helm-docs-built
args:
- --chart-search-root=chart

View File

@@ -1,7 +1,6 @@
# New Database Backup and Import Functionality # New Database Backup and Import Functionality
> [!IMPORTANT] **Full activation will take place on approximately January 5th, 2025!**
> **Full activation will take place on approximately January 5th, 2025!**
Why is the waiting time six months? Why is the waiting time six months?

View File

@@ -7,7 +7,6 @@ Stirling-PDF is a robust, locally hosted web-based PDF manipulation tool. This g
## 2. Project Overview ## 2. Project Overview
Stirling-PDF is built using: Stirling-PDF is built using:
- Spring Boot + Thymeleaf - Spring Boot + Thymeleaf
- PDFBox - PDFBox
- LibreOffice - LibreOffice
@@ -21,17 +20,14 @@ Stirling-PDF is built using:
## 3. Development Environment Setup ## 3. Development Environment Setup
### Prerequisites ### Prerequisites
- Docker - Docker
- Git - Git
- Java JDK 17 or later - Java JDK 17 or later
- Gradle 7.0 or later (Included within repo) - Gradle 7.0 or later (Included within repo)
### Setup Steps ### Setup Steps
1. Clone the repository: 1. Clone the repository:
```
```bash
git clone https://github.com/Stirling-Tools/Stirling-PDF.git git clone https://github.com/Stirling-Tools/Stirling-PDF.git
cd Stirling-PDF cd Stirling-PDF
``` ```
@@ -47,9 +43,10 @@ Visit the [Lombok website](https://projectlombok.org/setup/) for installation in
5. Add environment variable 5. Add environment variable
For local testing you should generally be testing the full 'Security' version of Stirling-PDF to do this you must add the environment flag DOCKER_ENABLE_SECURITY=true to your system and/or IDE build/run step For local testing you should generally be testing the full 'Security' version of Stirling-PDF to do this you must add the environment flag DOCKER_ENABLE_SECURITY=true to your system and/or IDE build/run step
## 4. Project Structure ## 4. Project Structure
```bash ```
Stirling-PDF/ Stirling-PDF/
├── .github/ # GitHub-specific files (workflows, issue templates) ├── .github/ # GitHub-specific files (workflows, issue templates)
├── configs/ # Configuration files used by stirling at runtime (generated at runtime) ├── configs/ # Configuration files used by stirling at runtime (generated at runtime)
@@ -95,7 +92,6 @@ Stirling-PDF/
## 5. Docker-based Development ## 5. Docker-based Development
Stirling-PDF offers several Docker versions: Stirling-PDF offers several Docker versions:
- Full: All features included - Full: All features included
- Ultra-Lite: Basic PDF operations only - Ultra-Lite: Basic PDF operations only
- Fat: Includes additional libraries and fonts predownloaded - Fat: Includes additional libraries and fonts predownloaded
@@ -157,13 +153,11 @@ docker-compose -f exampleYmlFiles/docker-compose-latest-security.yml up
Stirling-PDF uses different Docker images for various configurations. The build process is controlled by environment variables and uses specific Dockerfile variants. Here's how to build the Docker images: Stirling-PDF uses different Docker images for various configurations. The build process is controlled by environment variables and uses specific Dockerfile variants. Here's how to build the Docker images:
1. Set the security environment variable: 1. Set the security environment variable:
```bash ```bash
export DOCKER_ENABLE_SECURITY=false # or true for security-enabled builds export DOCKER_ENABLE_SECURITY=false # or true for security-enabled builds
``` ```
2. Build the project with Gradle: 2. Build the project with Gradle:
```bash ```bash
./gradlew clean build ./gradlew clean build
``` ```
@@ -171,19 +165,16 @@ Stirling-PDF uses different Docker images for various configurations. The build
3. Build the Docker images: 3. Build the Docker images:
For the latest version: For the latest version:
```bash ```bash
docker build --no-cache --pull --build-arg VERSION_TAG=alpha -t frooodle/s-pdf:latest -f ./Dockerfile . docker build --no-cache --pull --build-arg VERSION_TAG=alpha -t frooodle/s-pdf:latest -f ./Dockerfile .
``` ```
For the ultra-lite version: For the ultra-lite version:
```bash ```bash
docker build --no-cache --pull --build-arg VERSION_TAG=alpha -t frooodle/s-pdf:latest-ultra-lite -f ./Dockerfile-ultra-lite . docker build --no-cache --pull --build-arg VERSION_TAG=alpha -t frooodle/s-pdf:latest-ultra-lite -f ./Dockerfile-ultra-lite .
``` ```
For the fat version (with security enabled): For the fat version (with security enabled):
```bash ```bash
export DOCKER_ENABLE_SECURITY=true export DOCKER_ENABLE_SECURITY=true
docker build --no-cache --pull --build-arg VERSION_TAG=alpha -t frooodle/s-pdf:latest-fat -f ./Dockerfile-fat . docker build --no-cache --pull --build-arg VERSION_TAG=alpha -t frooodle/s-pdf:latest-fat -f ./Dockerfile-fat .
@@ -191,6 +182,8 @@ Stirling-PDF uses different Docker images for various configurations. The build
Note: The `--no-cache` and `--pull` flags ensure that the build process uses the latest base images and doesn't use cached layers, which is useful for testing and ensuring reproducible builds. however to improve build times these can often be removed depending on your usecase Note: The `--no-cache` and `--pull` flags ensure that the build process uses the latest base images and doesn't use cached layers, which is useful for testing and ensuring reproducible builds. however to improve build times these can often be removed depending on your usecase
## 6. Testing ## 6. Testing
### Comprehensive Testing Script ### Comprehensive Testing Script
@@ -204,7 +197,6 @@ To run the test script:
``` ```
This script performs the following actions: This script performs the following actions:
1. Builds all Docker images (full, ultra-lite, fat) 1. Builds all Docker images (full, ultra-lite, fat)
2. Runs each version to ensure it starts correctly 2. Runs each version to ensure it starts correctly
3. Executes Cucumber tests against main version and ensures feature compatibility, in the event these tests fail your PR will not be merged 3. Executes Cucumber tests against main version and ensures feature compatibility, in the event these tests fail your PR will not be merged
@@ -217,6 +209,7 @@ Note: The `test.sh` script will run automatically when you raise a PR. However,
2. Access the application at `http://localhost:8080` and manually test all features developed. 2. Access the application at `http://localhost:8080` and manually test all features developed.
### Local Testing (Java and UI Components) ### Local Testing (Java and UI Components)
For quick iterations and development of Java backend, JavaScript, and UI components, you can run and test Stirling-PDF locally without Docker. This approach allows you to work on and verify changes to: For quick iterations and development of Java backend, JavaScript, and UI components, you can run and test Stirling-PDF locally without Docker. This approach allows you to work on and verify changes to:
@@ -230,8 +223,7 @@ For quick iterations and development of Java backend, JavaScript, and UI compone
To run Stirling-PDF locally: To run Stirling-PDF locally:
1. Compile and run the project using built in IDE methods or by running: 1. Compile and run the project using built in IDE methods or by running:
```
```bash
./gradlew bootRun ./gradlew bootRun
``` ```
@@ -242,11 +234,11 @@ To run Stirling-PDF locally:
4. For API changes, use tools like Postman or curl to test endpoints directly. 4. For API changes, use tools like Postman or curl to test endpoints directly.
Important notes: Important notes:
- Local testing doesn't include features that depend on external tools like OCRmyPDF, LibreOffice, or Python scripts. - Local testing doesn't include features that depend on external tools like OCRmyPDF, LibreOffice, or Python scripts.
- There are currently no automated unit tests. All testing is done manually through the UI or API calls. (You are welcome to add JUnits!) - There are currently no automated unit tests. All testing is done manually through the UI or API calls. (You are welcome to add JUnits!)
- Always verify your changes in the full Docker environment before submitting pull requests, as some integrations and features will only work in the complete setup. - Always verify your changes in the full Docker environment before submitting pull requests, as some integrations and features will only work in the complete setup.
## 7. Contributing ## 7. Contributing
1. Fork the repository on GitHub. 1. Fork the repository on GitHub.
@@ -254,17 +246,14 @@ Important notes:
3. Make your changes and commit them with clear, descriptive messages and ensure any documentation is updated related to your changes. 3. Make your changes and commit them with clear, descriptive messages and ensure any documentation is updated related to your changes.
4. Test your changes thoroughly in the Docker environment. 4. Test your changes thoroughly in the Docker environment.
5. Run the `test.sh` script to ensure all versions build correctly and pass the Cucumber tests: 5. Run the `test.sh` script to ensure all versions build correctly and pass the Cucumber tests:
```bash ```bash
./test.sh ./test.sh
``` ```
6. Push your changes to your fork. 6. Push your changes to your fork.
7. Submit a pull request to the main repository. 7. Submit a pull request to the main repository.
8. See additional [contributing guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) 8. See additional [contributing guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
When you raise a PR: When you raise a PR:
- The `test.sh` script will run automatically against your PR. - The `test.sh` script will run automatically against your PR.
- The PR checks will verify versioning and dependency updates. - The PR checks will verify versioning and dependency updates.
- Documentation will be automatically updated for dependency changes. - Documentation will be automatically updated for dependency changes.
@@ -279,7 +268,6 @@ API documentation is available at `/swagger-ui/index.html` when running the appl
## 9. Customization ## 9. Customization
Stirling-PDF can be customized through environment variables or a `settings.yml` file. Key customization options include: Stirling-PDF can be customized through environment variables or a `settings.yml` file. Key customization options include:
- Application name and branding - Application name and branding
- Security settings - Security settings
- UI customization - UI customization
@@ -288,8 +276,7 @@ Stirling-PDF can be customized through environment variables or a `settings.yml`
When using Docker, pass environment variables using the `-e` flag or in your `docker-compose.yml` file. When using Docker, pass environment variables using the `-e` flag or in your `docker-compose.yml` file.
Example: Example:
```
```bash
docker run -p 8080:8080 -e APP_NAME="My PDF Tool" stirling-pdf:full docker run -p 8080:8080 -e APP_NAME="My PDF Tool" stirling-pdf:full
``` ```
@@ -306,14 +293,16 @@ For managing language translations that affect multiple files, Stirling-PDF prov
This script helps you make consistent replacements across language files. This script helps you make consistent replacements across language files.
When contributing translations: When contributing translations:
1. Use the helper script for multi-file changes. 1. Use the helper script for multi-file changes.
2. Ensure all language files are updated consistently. 2. Ensure all language files are updated consistently.
3. The PR checks will verify consistency in language file updates. 3. The PR checks will verify consistency in language file updates.
Remember to test your changes thoroughly to ensure they don't break any existing functionality. Remember to test your changes thoroughly to ensure they don't break any existing functionality.
## Code examples
# Code examples
### Overview of Thymeleaf ### Overview of Thymeleaf
@@ -322,28 +311,22 @@ Thymeleaf is a server-side Java HTML template engine. It is used in Stirling-PD
### Thymeleaf overview ### Thymeleaf overview
In Stirling-PDF, Thymeleaf is used to create HTML templates that are rendered on the server side. These templates are located in the `src/main/resources/templates` directory. Thymeleaf templates use a combination of HTML and special Thymeleaf attributes to dynamically generate content. In Stirling-PDF, Thymeleaf is used to create HTML templates that are rendered on the server side. These templates are located in the `src/main/resources/templates` directory. Thymeleaf templates use a combination of HTML and special Thymeleaf attributes to dynamically generate content.
Some examples of this are
Some examples of this are:
```html ```html
<th:block th:insert="~{fragments/navbar.html :: navbar}"></th:block> <th:block th:insert="~{fragments/navbar.html :: navbar}"></th:block>
or or
<th:block th:insert="~{fragments/footer.html :: footer}"></th:block> <th:block th:insert="~{fragments/footer.html :: footer}"></th:block>
``` ```
Where it uses the th:block, th: indicating its a special thymeleaf element to be used serverside in generating the html, and block being the actual element type. Where it uses the th:block, th: indicating its a special thymeleaf element to be used serverside in generating the html, and block being the actual element type.
In this case we are inserting the ``navbar`` entry within the ``fragments/navbar.html`` fragment into the ``th:block`` element. In this case we are inserting the ``navbar`` entry within the ``fragments/navbar.html`` fragment into the ``th:block`` element.
They can be more complex such as: They can be more complex such as
```html ```html
<th:block th:insert="~{fragments/common :: head(title=#{pageExtracter.title}, header=#{pageExtracter.header})}"></th:block> <th:block th:insert="~{fragments/common :: head(title=#{pageExtracter.title}, header=#{pageExtracter.header})}"></th:block>
``` ```
Which is the same as above but passes the parameters title and header into the fragment common.html to be used in its HTML generation Which is the same as above but passes the parameters title and header into the fragment common.html to be used in its HTML generation
Thymeleaf can also be used to loop through objects or pass things from java side into html side. Thymeleaf can also be used to loop through objects or pass things from java side into html side.
```java ```java
@GetMapping @GetMapping
public String newFeaturePage(Model model) { public String newFeaturePage(Model model) {
@@ -351,9 +334,7 @@ Thymeleaf can also be used to loop through objects or pass things from java side
return "new-feature"; return "new-feature";
} }
``` ```
in above example if exampleData is a list of plain java objects of class Person and within it you had id, name, age etc. You can reference it like so in above example if exampleData is a list of plain java objects of class Person and within it you had id, name, age etc. You can reference it like so
```html ```html
<tbody> <tbody>
<!-- Use th:each to iterate over the list --> <!-- Use th:each to iterate over the list -->
@@ -365,7 +346,6 @@ in above example if exampleData is a list of plain java objects of class Person
</tr> </tr>
</tbody> </tbody>
``` ```
This would generate n entries of tr for each person in exampleData This would generate n entries of tr for each person in exampleData
### Adding a New Feature to the Backend (API) ### Adding a New Feature to the Backend (API)
@@ -417,35 +397,34 @@ This would generate n entries of tr for each person in exampleData
``` ```
2b. **Integrate the Service with the Controller:** 2b. **Integrate the Service with the Controller:**
- Autowire the service class in the controller and use it to handle the API request.
- Autowire the service class in the controller and use it to handle the API request. ```java
package stirling.software.SPDF.controller.api;
```java import org.springframework.beans.factory.annotation.Autowired;
package stirling.software.SPDF.controller.api; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import stirling.software.SPDF.service.NewFeatureService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired; @RestController
import org.springframework.web.bind.annotation.GetMapping; @RequestMapping("/api/v1/new-feature")
import org.springframework.web.bind.annotation.RequestMapping; @Tag(name = "General", description = "General APIs")
import org.springframework.web.bind.annotation.RestController; public class NewFeatureController {
import stirling.software.SPDF.service.NewFeatureService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
@RestController @Autowired
@RequestMapping("/api/v1/new-feature") private NewFeatureService newFeatureService;
@Tag(name = "General", description = "General APIs")
public class NewFeatureController {
@Autowired @GetMapping
private NewFeatureService newFeatureService; @Operation(summary = "New Feature", description = "This is a new feature endpoint.")
public String newFeature() {
@GetMapping return newFeatureService.getNewFeatureData();
@Operation(summary = "New Feature", description = "This is a new feature endpoint.") }
public String newFeature() { }
return newFeatureService.getNewFeatureData(); ```
}
}
```
### Adding a New Feature to the Frontend (UI) ### Adding a New Feature to the Frontend (UI)
@@ -532,6 +511,7 @@ This would generate n entries of tr for each person in exampleData
</li> </li>
``` ```
## Adding New Translations to Existing Language Files in Stirling-PDF ## Adding New Translations to Existing Language Files in Stirling-PDF
When adding a new feature or modifying existing ones in Stirling-PDF, you'll need to add new translation entries to the existing language files. Here's a step-by-step guide: When adding a new feature or modifying existing ones in Stirling-PDF, you'll need to add new translation entries to the existing language files. Here's a step-by-step guide:
@@ -542,13 +522,13 @@ Find the existing `messages.properties` files in the `src/main/resources` direct
- `messages.properties` (default, usually English) - `messages.properties` (default, usually English)
- `messages_en_GB.properties` - `messages_en_GB.properties`
- `messages_fr_FR.properties` - `messages_fr.properties`
- `messages_de_DE.properties` - `messages_de.properties`
- etc. - etc.
### 2. Add New Translation Entries ### 2. Add New Translation Entries
Open each of these files and add your new translation entries. For example, if you're adding a new feature called "PDF Splitter", Open each of these files and add your new translation entries. For example, if you're adding a new feature called "PDF Splitter",
Use descriptive, hierarchical keys (e.g., `feature.element.description`) Use descriptive, hierarchical keys (e.g., `feature.element.description`)
you might add: you might add:
@@ -572,4 +552,6 @@ In your Thymeleaf templates, use the `#{key}` syntax to reference the new transl
<button th:text="#{pdfSplitter.button.split}">Split PDF</button> <button th:text="#{pdfSplitter.button.split}">Split PDF</button>
``` ```
Remember, never hard-code text in your templates or Java code. Always use translation keys to ensure proper localization. Remember, never hard-code text in your templates or Java code. Always use translation keys to ensure proper localization.

View File

@@ -1,41 +1,33 @@
## User Guide for Local Directory Scanning and File Processing ## User Guide for Local Directory Scanning and File Processing
### Setting Up Watched Folders ### Setting Up Watched Folders:
- Create a folder where you want your files to be monitored. This is your 'watched folder'. - Create a folder where you want your files to be monitored. This is your 'watched folder'.
- The default directory for this is `./pipeline/watchedFolders/`. - The default directory for this is `./pipeline/watchedFolders/`
- Place any directories you want to be scanned into this folder. This folder should contain multiple folders, each for their own tasks and pipelines. - Place any directories you want to be scanned into this folder, this folder should contain multiple folders each for their own tasks and pipelines.
### Configuring Processing with JSON Files ### Configuring Processing with JSON Files:
- In each directory you want processed (e.g `./pipeline/watchedFolders/officePrinter`), include a JSON configuration file.
- In each directory you want processed (e.g., `./pipeline/watchedFolders/officePrinter`), include a JSON configuration file. - This JSON file should specify how you want the files in the directory to be handled (e.g., what operations to perform on them) which can be made, configured and downloaded from Stirling-PDF Pipeline interface.r
- This JSON file should specify how you want the files in the directory to be handled (e.g., what operations to perform on them). This can be made, configured, and downloaded from the Stirling-PDF Pipeline interface.
### Automatic Scanning and Processing
### Automatic Scanning and Processing:
- The system automatically checks the watched folder every minute for new directories and files to process. - The system automatically checks the watched folder every minute for new directories and files to process.
- When a directory with a valid JSON configuration file is found, it begins processing the files inside according to the configuration. - When a directory with a valid JSON configuration file is found, it begins processing the files inside as per the configuration.
### Processing Steps
### Processing Steps:
- Files in each directory are processed according to the instructions in the JSON file. - Files in each directory are processed according to the instructions in the JSON file.
- This might involve file conversions, data filtering, renaming files, etc. If the output of a step is a zip, this zip will be automatically unzipped as it passes to the next process. - This might involve file conversions, data filtering, renaming files, etc. If the output of a step is a zip, this zip will be automatically unzipped as it passes to next process.
### Results and Output
### Results and Output:
- After processing, the results are saved in a specified output location. This could be a different folder or location as defined in the JSON file or the default location `./pipeline/finishedFolders/`. - After processing, the results are saved in a specified output location. This could be a different folder or location as defined in the JSON file or the default location `./pipeline/finishedFolders/`.
- Each processed file is named and organized according to the rules set in the JSON configuration. - Each processed file is named and organized according to the rules set in the JSON configuration.
### Completion and Cleanup ### Completion and Cleanup:
- Once processing is complete, the original files in the watched folder's directory are removed. - Once processing is complete, the original files in the watched folder's directory are removed.
- You can find the processed files in the designated output location. - You can find the processed files in the designated output location.
### Error Handling ### Error Handling:
- If there's an error during processing, the system will not delete the original files, allowing you to check and retry if necessary. - If there's an error during processing, the system will not delete the original files, allowing you to check and retry if necessary.
### User Interaction ### User Interaction:
- As a user, your main tasks are to set up the watched folders, place directories with files for processing, and create the corresponding JSON configuration files. - As a user, your main tasks are to set up the watched folders, place directories with files for processing, and create the corresponding JSON configuration files.
- The system handles the rest, including scanning, processing, and outputting results. - The system handles the rest, including scanning, processing, and outputting results.

View File

@@ -1,47 +1,43 @@
<p align="center"> <p align="center"><img src="https://raw.githubusercontent.com/Stirling-Tools/Stirling-PDF/main/docs/stirling.png" width="80" ><br><h1 align="center">Stirling-PDF</h1>
<img src="https://raw.githubusercontent.com/Stirling-Tools/Stirling-PDF/main/docs/stirling.png" width="80">
<br>
<h1 align="center">Stirling-PDF</h1>
</p> </p>
# How to add new languages to Stirling-PDF # How to add new languages to Stirling-PDF
Fork Stirling-PDF and create a new branch out of `main`. Fork Stirling-PDF and make a new branch out of Main
Then add a reference to the language in the navbar by adding a new language entry to the dropdown: Then add reference to the language in the navbar by adding a new language entry to the dropdown
- Edit the file: [languages.html](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/src/main/resources/templates/fragments/languages.html) https://github.com/Stirling-Tools/Stirling-PDF/blob/main/src/main/resources/templates/fragments/languages.html
- Add a flag SVG file to: [flags directory](https://github.com/Stirling-Tools/Stirling-PDF/tree/main/src/main/resources/static/images/flags) and add a flag svg file to
https://github.com/Stirling-Tools/Stirling-PDF/tree/main/src/main/resources/static/images/flags
Any SVG flags are fine, i got most of mine from [here](https://flagicons.lipis.dev/)
If your language isn't represented by a flag just find whichever closely matches it, such as for Arabic i chose Saudi Arabia
Any SVG flags are fine; most of the current ones were sourced from [here](https://flagicons.lipis.dev/). If your language isn't represented by a flag, choose a similar one, such as Saudi Arabia's flag for Arabic. For example to add Polish you would add
For example, to add Polish, you would add:
```html ```html
<a class="dropdown-item lang_dropdown-item" href="" data-bs-language-code="pl_PL"> <a class="dropdown-item lang_dropdown-item" href="" data-language-code="pl_PL">
<img src="images/flags/pl.svg" alt="icon" width="20" height="15"> Polski <img src="images/flags/pl.svg" alt="icon" width="20" height="15"> Polski
</a> </a>
``` ```
The `data-bs-language-code` is the code used to reference the file in the next step. The data-language-code is the code used to reference the file in the next step.
### Add Language Property File Start by copying the existing english property file
Start by copying the existing English property file: [https://github.com/Stirling-Tools/Stirling-PDF/blob/main/src/main/resources/messages_en_GB.properties](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/src/main/resources/messages_en_GB.properties)
- [messages_en_GB.properties](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/src/main/resources/messages_en_GB.properties) Copy and rename it to messages_{your data-language-code here}.properties, in the polish example you would set the name to messages_pl_PL.properties
Copy and rename it to `messages_{your data-bs-language-code here}.properties`. In the Polish example, you would set the name to `messages_pl_PL.properties`. Then simply translate all property entries within that file and make a PR into main for others to use!
Then simply translate all property entries within that file and make a Pull Request (PR) into `main` for others to use! If you do not have a java IDE i am happy to verify the changes worked once you raise PR (but won't be able to verify the translations themselves)
If you do not have a Java IDE, I am happy to verify that the changes work once you raise the PR (but I won't be able to verify the translations themselves).
## Handling Untranslatable Strings ## Handling Untranslatable Strings
Sometimes, certain strings in the properties file may not require translation because they are the same in the target language or are universal (like names of protocols, certain terminologies, etc.). To ensure accurate statistics for language progress, these strings should be added to the `ignore_translation.toml` file located in the `scripts` directory. This will exclude them from the translation progress calculations. Sometimes, certain strings in the properties file may not require translation because they are the same in the target language or are universal (like names of protocols, certain terminologies, etc.). To ensure accurate statistics for language progress, these strings should be added to the `ignore_translation.toml` file located in the `scripts` directory. This will exclude them from the translation progress calculations.
For example, if the English string `error=Error` does not need translation in Polish, add it to the `ignore_translation.toml` under the Polish section: For example, if the English string error=Error does not need translation in Polish, add it to the ignore_translation.toml under the Polish section:
```toml ```toml
[pl_PL] [pl_PL]
@@ -53,9 +49,7 @@ ignore = [
## Add New Translation Tags ## Add New Translation Tags
> [!IMPORTANT] - **Important**: If you add any new translation tags, they must first be added to the `messages_en_GB.properties` file. This ensures consistency across all language files.
> If you add any new translation tags, they must first be added to the `messages_en_GB.properties` file. This ensures consistency across all language files.
- New translation tags **must be added** to the `messages_en_GB.properties` file to maintain a reference for other languages. - New translation tags **must be added** to the `messages_en_GB.properties` file to maintain a reference for other languages.
- After adding the new tags to `messages_en_GB.properties`, add and translate them in the respective language file (e.g., `messages_pl_PL.properties`). - After adding the new tags to `messages_en_GB.properties`, add and translate them in the respective language file (e.g., `messages_pl_PL.properties`).

View File

@@ -3,37 +3,35 @@
This document provides instructions on how to add additional language packs for the OCR tab in Stirling-PDF, both inside and outside of Docker. This document provides instructions on how to add additional language packs for the OCR tab in Stirling-PDF, both inside and outside of Docker.
## My OCR used to work and now doesn't! ## My OCR used to work and now doesn't!
The paths have changed for the tessadata locations on new docker images, please use ``/usr/share/tessdata`` (Others should still work for backwards compatibility but might not)
The paths have changed for the tessdata locations on new Docker images. Please use `/usr/share/tessdata` (Others should still work for backward compatibility but might not).
## How does the OCR Work ## How does the OCR Work
Stirling-PDF uses [OCRmyPDF](https://github.com/ocrmypdf/OCRmyPDF) which in turn uses tesseract for its text recognition.
Stirling-PDF uses [OCRmyPDF](https://github.com/ocrmypdf/OCRmyPDF), which in turn uses Tesseract for its text recognition. All credit goes to them for this awesome work! All credit goes to them for this awesome work!
## Language Packs ## Language Packs
Tesseract OCR supports a variety of languages. You can find additional language packs in the Tesseract GitHub repositories: Tesseract OCR supports a variety of languages. You can find additional language packs in the Tesseract GitHub repositories:
- [tessdata_fast](https://github.com/tesseract-ocr/tessdata_fast): These language packs are smaller and faster to load but may provide lower recognition accuracy. - [tessdata_fast](https://github.com/tesseract-ocr/tessdata_fast): These language packs are smaller and faster to load, but may provide lower recognition accuracy.
- [tessdata](https://github.com/tesseract-ocr/tessdata): These language packs are larger and provide better recognition accuracy, but may take longer to load. - [tessdata](https://github.com/tesseract-ocr/tessdata): These language packs are larger and provide better recognition accuracy, but may take longer to load.
Depending on your requirements, you can choose the appropriate language pack for your use case. By default, Stirling-PDF uses `tessdata_fast` for English, but this can be replaced. Depending on your requirements, you can choose the appropriate language pack for your use case. By default Stirling-PDF uses the tessdata_fast eng but this can be replaced.
### Installing Language Packs ### Installing Language Packs
1. Download the desired language pack(s) by selecting the `.traineddata` file(s) for the language(s) you need. 1. Download the desired language pack(s) by selecting the `.traineddata` file(s) for the language(s) you need.
2. Place the `.traineddata` files in the Tesseract tessdata directory: `/usr/share/tessdata` 2. Place the `.traineddata` files in the Tesseract tessdata directory: `/usr/share/tessdata`
**DO NOT REMOVE EXISTING `eng.traineddata`, IT'S REQUIRED.** # DO NOT REMOVE EXISTING ENG.TRAINEDDATA, IT'S REQUIRED.
### Docker Setup #### Docker
If you are using Docker, you need to expose the Tesseract tessdata directory as a volume in order to use the additional language packs. If you are using Docker, you need to expose the Tesseract tessdata directory as a volume in order to use the additional language packs.
#### Docker Compose #### Docker Compose
Modify your `docker-compose.yml` file to include the following volume configuration: Modify your `docker-compose.yml` file to include the following volume configuration:
```yaml ```yaml
services: services:
your_service_name: your_service_name:
@@ -42,19 +40,18 @@ services:
- /location/of/trainingData:/usr/share/tessdata - /location/of/trainingData:/usr/share/tessdata
``` ```
#### Docker Run
Add the following to your existing Docker run command:
#### Docker run
Add the following to your existing docker run command
```bash ```bash
-v /location/of/trainingData:/usr/share/tessdata -v /location/of/trainingData:/usr/share/tessdata
``` ```
### Non-Docker Setup #### Non-Docker
If you are not using Docker, you need to install the OCR components, including the ocrmypdf app.
You can see [OCRmyPDF install guide](https://ocrmypdf.readthedocs.io/en/latest/installation.html)
If you are not using Docker, you need to install the OCR components, including the `ocrmypdf` app. You can see the [OCRmyPDF install guide](https://ocrmypdf.readthedocs.io/en/latest/installation.html). Debian based systems, install languages with this command:
For Debian-based systems, install languages with this command:
```bash ```bash
sudo apt update &&\ sudo apt update &&\
@@ -68,7 +65,7 @@ apt search tesseract-ocr-
dpkg-query -W tesseract-ocr- | sed 's/tesseract-ocr-//g' dpkg-query -W tesseract-ocr- | sed 's/tesseract-ocr-//g'
``` ```
For Fedora: Fedora:
```bash ```bash
# All languages # All languages

View File

@@ -1,35 +1,48 @@
To run the application without Docker/Podman, you will need to manually install all dependencies and build the necessary components. To run the application without Docker/Podman, you will need to manually install all dependencies and build the necessary components.
Note that some dependencies might not be available in the standard repositories of all Linux distributions, and may require additional steps to install. Note that some dependencies might not be available in the standard repositories of all Linux distributions, and may require additional steps to install.
The following guide assumes you have a basic understanding of using a command line interface in your operating system. The following guide assumes you have a basic understanding of using a command line interface in your operating system.
It should work on most Linux distributions and MacOS. For Windows, you might need to use Windows Subsystem for Linux (WSL) for certain steps. The amount of dependencies is to actually reduce overall size, i.e., installing LibreOffice subcomponents rather than the full LibreOffice package. It should work on most Linux distributions and MacOS. For Windows, you might need to use Windows Subsystem for Linux (WSL) for certain steps.
The amount of dependencies is to actually reduce overall size, ie installing LibreOffice sub components rather than full LibreOffice package.
You could theoretically use a Distrobox/Toolbox if your distribution has old or not all packages. But you might just as well use the Docker container then. You could theoretically use a Distrobox/Toolbox, if your Distribution has old or not all Packages. But you might just as well use the Docker Container then.
### Step 1: Prerequisites ### Step 1: Prerequisites
Install the following software, if not already installed: Install the following software, if not already installed:
- Java 17 or later (21 recommended) - Java 17 or later (21 recommended)
- Gradle 7.0 or later (included within repo so not needed on server) - Gradle 7.0 or later (included within repo so not needed on server)
- Git - Git
- Python 3.8 (with pip) - Python 3.8 (with pip)
- Make - Make
- GCC/G++ - GCC/G++
- Automake - Automake
- Autoconf - Autoconf
- libtool - libtool
- pkg-config - pkg-config
- zlib1g-dev - zlib1g-dev
- libleptonica-dev - libleptonica-dev
For Debian-based systems, you can use the following command: For Debian-based systems, you can use the following command:
```bash ```bash
sudo apt-get update sudo apt-get update
sudo apt-get install -y git automake autoconf libtool libleptonica-dev pkg-config zlib1g-dev make g++ openjdk-21-jdk python3 python3-pip sudo apt-get install -y git automake autoconf libtool libleptonica-dev pkg-config zlib1g-dev make g++ openjdk-21-jdk python3 python3-pip
``` ```
For Fedora-based systems use this command: For Fedora-based systems use this command:
@@ -39,7 +52,6 @@ sudo dnf install -y git automake autoconf libtool leptonica-devel pkg-config zli
``` ```
For non-root users with Nix Package Manager, use the following command: For non-root users with Nix Package Manager, use the following command:
```bash ```bash
nix-channel --update nix-channel --update
nix-env -iA nixpkgs.jdk21 nixpkgs.git nixpkgs.python38 nixpkgs.gnumake nixpkgs.libgcc nixpkgs.automake nixpkgs.autoconf nixpkgs.libtool nixpkgs.pkg-config nixpkgs.zlib nixpkgs.leptonica nix-env -iA nixpkgs.jdk21 nixpkgs.git nixpkgs.python38 nixpkgs.gnumake nixpkgs.libgcc nixpkgs.automake nixpkgs.autoconf nixpkgs.libtool nixpkgs.pkg-config nixpkgs.zlib nixpkgs.leptonica
@@ -51,37 +63,45 @@ For Debian and Fedora, you can build it from source using the following commands
```bash ```bash
mkdir ~/.git mkdir ~/.git
cd ~/.git && \ cd ~/.git &&\
git clone https://github.com/agl/jbig2enc.git && \ git clone https://github.com/agl/jbig2enc.git &&\
cd jbig2enc && \ cd jbig2enc &&\
./autogen.sh && \ ./autogen.sh &&\
./configure && \ ./configure &&\
make && \ make &&\
sudo make install sudo make install
``` ```
For Nix, you will face `Leptonica not detected`. Bypass this by installing it directly using the following command: For Nix, you will face `Leptonica not detected`. Bypass this by installing it directly using the following command:
```bash ```bash
nix-env -iA nixpkgs.jbig2enc nix-env -iA nixpkgs.jbig2enc
``` ```
### Step 3: Install Additional Software ### Step 3: Install Additional Software
Next we need to install LibreOffice for conversions, ocrmypdf for OCR, and opencv for pattern recognition functionality.
Next we need to install LibreOffice for conversions, ocrmypdf for OCR, and OpenCV for pattern recognition functionality.
Install the following software: Install the following software:
- libreoffice-core - libreoffice-core
- libreoffice-common - libreoffice-common
- libreoffice-writer - libreoffice-writer
- libreoffice-calc - libreoffice-calc
- libreoffice-impress - libreoffice-impress
- python3-uno - python3-uno
- unoconv - unoconv
- pngquant - pngquant
- unpaper - unpaper
- ocrmypdf - ocrmypdf
- opencv-python-headless - opencv-python-headless
For Debian-based systems, you can use the following command: For Debian-based systems, you can use the following command:
@@ -108,52 +128,51 @@ pip3 install uno opencv-python-headless unoconv pngquant WeasyPrint
### Step 4: Clone and Build Stirling-PDF ### Step 4: Clone and Build Stirling-PDF
```bash ```bash
cd ~/.git && \ cd ~/.git &&\
git clone https://github.com/Stirling-Tools/Stirling-PDF.git && \ git clone https://github.com/Stirling-Tools/Stirling-PDF.git &&\
cd Stirling-PDF && \ cd Stirling-PDF &&\
chmod +x ./gradlew && \ chmod +x ./gradlew &&\
./gradlew build ./gradlew build
``` ```
### Step 5: Move Jar to Desired Location ### Step 5: Move jar to desired location
After the build process, a `.jar` file will be generated in the `build/libs` directory. You can move this file to a desired location, for example, `/opt/Stirling-PDF/`. You must also move the Script folder within the Stirling-PDF repo that you have downloaded to this directory. This folder is required for the Python scripts using OpenCV. After the build process, a `.jar` file will be generated in the `build/libs` directory.
You can move this file to a desired location, for example, `/opt/Stirling-PDF/`.
You must also move the Script folder within the Stirling-PDF repo that you have downloaded to this directory.
This folder is required for the python scripts using OpenCV.
```bash ```bash
sudo mkdir /opt/Stirling-PDF && \ sudo mkdir /opt/Stirling-PDF &&\
sudo mv ./build/libs/Stirling-PDF-*.jar /opt/Stirling-PDF/ && \ sudo mv ./build/libs/Stirling-PDF-*.jar /opt/Stirling-PDF/ &&\
sudo mv scripts /opt/Stirling-PDF/ && \ sudo mv scripts /opt/Stirling-PDF/ &&\
echo "Scripts installed." echo "Scripts installed."
``` ```
For non-root users, you can just keep the jar in the main directory of Stirling-PDF using the following command: For non-root users, you can just keep the jar in the main directory of Stirling-PDF using the following command:
```bash ```bash
mv ./build/libs/Stirling-PDF-*.jar ./Stirling-PDF-*.jar mv ./build/libs/Stirling-PDF-*.jar ./Stirling-PDF-*.jar
``` ```
### Step 6: Other Files ### Step 6: Other files
#### OCR #### OCR
If you plan to use the OCR (Optical Character Recognition) functionality, you might need to install language packs for Tesseract if running non-english scanning.
If you plan to use the OCR (Optical Character Recognition) functionality, you might need to install language packs for Tesseract if running non-English scanning.
##### Installing Language Packs ##### Installing Language Packs
Easiest is to use the langpacks provided by your repositories. Skip the other steps.
The easiest method is to use the language packs provided by your repositories. Skip the other steps if they are available. Manual:
**Manual:**
1. Download the desired language pack(s) by selecting the `.traineddata` file(s) for the language(s) you need. 1. Download the desired language pack(s) by selecting the `.traineddata` file(s) for the language(s) you need.
2. Place the `.traineddata` files in the Tesseract tessdata directory: `/usr/share/tessdata` 2. Place the `.traineddata` files in the Tesseract tessdata directory: `/usr/share/tessdata`
3. Please view [OCRmyPDF install guide](https://ocrmypdf.readthedocs.io/en/latest/installation.html) for more info. 3. Please view [OCRmyPDF install guide](https://ocrmypdf.readthedocs.io/en/latest/installation.html) for more info.
**IMPORTANT:** DO NOT REMOVE EXISTING `eng.traineddata`, IT'S REQUIRED. **IMPORTANT:** DO NOT REMOVE EXISTING `eng.traineddata`, IT'S REQUIRED.
**Debian-based systems**, install languages with this command: Debian based systems, install languages with this command:
```bash ```bash
sudo apt update && \ sudo apt update &&\
# All languages # All languages
# sudo apt install -y 'tesseract-ocr-*' # sudo apt install -y 'tesseract-ocr-*'
@@ -164,7 +183,7 @@ apt search tesseract-ocr-
dpkg-query -W tesseract-ocr- | sed 's/tesseract-ocr-//g' dpkg-query -W tesseract-ocr- | sed 's/tesseract-ocr-//g'
``` ```
**Fedora:** Fedora:
```bash ```bash
# All languages # All languages
@@ -177,13 +196,13 @@ dnf search -C tesseract-langpack-
rpm -qa | grep tesseract-langpack | sed 's/tesseract-langpack-//g' rpm -qa | grep tesseract-langpack | sed 's/tesseract-langpack-//g'
``` ```
**Nix:** Nix:
```bash ```bash
nix-env -iA nixpkgs.tesseract nix-env -iA nixpkgs.tesseract
``` ```
**Note:** Nix Package Manager pre-installs almost all the language packs when Tesseract is installed. **Note:** Nix Package Manager pre-installs almost all the language packs when tesseract is installed.
### Step 7: Run Stirling-PDF ### Step 7: Run Stirling-PDF
@@ -195,13 +214,11 @@ or
java -jar /opt/Stirling-PDF/Stirling-PDF-*.jar java -jar /opt/Stirling-PDF/Stirling-PDF-*.jar
``` ```
Since LibreOffice, soffice, and conversion tools have their dbus_tmp_dir set as `dbus_tmp_dir="/run/user/$(id -u)/libreoffice-dbus"`, you might get the following error when using their endpoints: Since libreoffice, soffice, and conversion tools have their dbus_tmp_dir set as `dbus_tmp_dir="/run/user/$(id -u)/libreoffice-dbus"`, you might get the following error when using their endpoints:
``` ```
[Thread-7] INFO s.s.SPDF.utils.ProcessExecutor - mkdir: cannot create directory /run/user/1501: Permission denied [Thread-7] INFO s.s.SPDF.utils.ProcessExecutor - mkdir: cannot create directory /run/user/1501: Permission denied
``` ```
To resolve this, before starting the Stirling-PDF, you have to set the environment variable to a directory you have write access to by using the following commands:
To resolve this, before starting Stirling-PDF, you have to set the environment variable to a directory you have write access to by using the following commands:
```bash ```bash
mkdir temp mkdir temp
@@ -211,10 +228,9 @@ or
java -jar ./Stirling-PDF-*.jar java -jar ./Stirling-PDF-*.jar
``` ```
### Step 8: Adding a Desktop Icon ### Step 8: Adding a Desktop icon
This will add a modified app starter to your app menu.
This will add a modified Appstarter to your Appmenu.
```bash ```bash
location=$(pwd)/gradlew location=$(pwd)/gradlew
image=$(pwd)/docs/stirling-transparent.svg image=$(pwd)/docs/stirling-transparent.svg
@@ -235,40 +251,35 @@ EOF
Note: Currently the app will run in the background until manually closed. Note: Currently the app will run in the background until manually closed.
### Optional: Changing the Host and Port of the Application ### Optional: Changing the host and port of the application:
To override the default configuration, you can add the following to `/.git/Stirling-PDF/configs/custom_settings.yml` file: To override the default configuration, you can add the following to `/.git/Stirling-PDF/configs/custom_settings.yml` file:
```yaml ```bash
server: server:
host: 0.0.0.0 # Not working - use instead address host: 0.0.0.0 # Not working - use instead address
address: 0.0.0.0 address: 0.0.0.0
port: 3000 port: 3000
``` ```
'-Djava.net.preferIPv4Stack=true' --> To force ipv4 only in the java starting command
`-Djava.net.preferIPv4Stack=true` --> To force IPv4 only in the Java starting command
**Note:** This file is created after the first application launch. To have it before that, you can create the directory and add the file yourself. **Note:** This file is created after the first application launch. To have it before that, you can create the directory and add the file yourself.
### Optional: Run Stirling-PDF as a Service (requires root) ### Optional: Run Stirling-PDF as a service (requires root).
First create a `.env` file, where you can store environment variables: First create a .env file, where you can store environment variables:
```
```bash
touch /opt/Stirling-PDF/.env touch /opt/Stirling-PDF/.env
``` ```
In this file you can add all variables, one variable per line, as stated in the main readme (for example SYSTEM_DEFAULTLOCALE="de-DE").
In this file, you can add all variables, one variable per line, as stated in the main readme (for example `SYSTEM_DEFAULTLOCALE="de-DE"`). Create a new file where we store our service settings and open it with nano editor:
```
Create a new file where we store our service settings and open it with the nano editor:
```bash
nano /etc/systemd/system/stirlingpdf.service nano /etc/systemd/system/stirlingpdf.service
``` ```
Paste this content, make sure to update the filename of the jar file. Press `Ctrl+S` and `Ctrl+X` to save and exit the nano editor: Paste this content, make sure to update the filename of the jar-file. Press Ctrl+S and Ctrl+X to save and exit the nano editor:
```
```ini
[Unit] [Unit]
Description=Stirling-PDF service Description=Stirling-PDF service
After=syslog.target network.target After=syslog.target network.target
@@ -292,25 +303,22 @@ WantedBy=multi-user.target
Notify systemd that it has to rebuild its internal service database (you have to run this command every time you make a change in the service file): Notify systemd that it has to rebuild its internal service database (you have to run this command every time you make a change in the service file):
```bash ```
sudo systemctl daemon-reload sudo systemctl daemon-reload
``` ```
Enable the service to tell it to start automatically: Enable the service to tell the service to start it automatically:
```
```bash
sudo systemctl enable stirlingpdf.service sudo systemctl enable stirlingpdf.service
``` ```
See the status of the service: See the status of the service:
```
```bash
sudo systemctl status stirlingpdf.service sudo systemctl status stirlingpdf.service
``` ```
Manually start/stop/restart the service: Manually start/stop/restart the service:
```
```bash
sudo systemctl start stirlingpdf.service sudo systemctl start stirlingpdf.service
sudo systemctl stop stirlingpdf.service sudo systemctl stop stirlingpdf.service
sudo systemctl restart stirlingpdf.service sudo systemctl restart stirlingpdf.service
@@ -318,11 +326,12 @@ sudo systemctl restart stirlingpdf.service
--- ---
Remember to set the necessary environment variables before running the project if you want to customize the application. The list can be seen in the main readme. Remember to set the necessary environment variables before running the project if you want to customize the application the list can be seen in the main readme.
You can do this in the terminal by using the `export` command or `-D` argument to the Java `-jar` command: You can do this in the terminal by using the `export` command or -D argument to java -jar command:
```bash ```bash
export APP_HOME_NAME="Stirling PDF" export APP_HOME_NAME="Stirling PDF"
or or
-DAPP_HOME_NAME="Stirling PDF" -DAPP_HOME_NAME="Stirling PDF"
```

View File

@@ -1,7 +1,6 @@
# Pipeline Configuration and Usage Tutorial # Pipeline Configuration and Usage Tutorial
- Configure the pipeline config file and input files to run files against it
- Configure the pipeline config file and input files to run files against it. - For reuse, download the config file and re-upload it when needed, or place it in /pipeline/defaultWebUIConfigs/ to auto-load in the web UI for all users
- For reuse, download the config file and re-upload it when needed, or place it in `/pipeline/defaultWebUIConfigs/` to auto-load in the web UI for all users.
## Steps to Configure and Use Your Pipeline ## Steps to Configure and Use Your Pipeline
@@ -27,16 +26,19 @@
- Use the **Validation** button to check your pipeline. A green indicator signifies correct setup; a pop-out error indicates issues. - Use the **Validation** button to check your pipeline. A green indicator signifies correct setup; a pop-out error indicates issues.
8. **Download Pipeline Configuration** 8. **Download Pipeline Configuration**
- To use the configuration for folder scanning (or save it for future use and re-upload it), download a JSON file in this menu. You can also pre-load it for future use by placing it in `/pipeline/defaultWebUIConfigs/`. It will then appear in the dropdown menu for all users to use. - To use the configuration for folder scanning (or save it for future use and reupload it), you can also download a JSON file in this menu. You can also pre-load this for future use by placing it in ``/pipeline/defaultWebUIConfigs/``. It will then appear in the dropdown menu for all users to use.
9. **Submit Files for Processing** 9. **Submit Files for Processing**
- If your pipeline is correctly set up, close the configure menu, input the files, and hit **Submit**. - If your pipeline is correctly set up close the configure menu, input the files and hit **Submit**.
10. **Note on Web UI Limitations** 10. **Note on Web UI Limitations**
- The current web UI version does not support operations that require multiple different types of inputs, such as adding a separate image to a PDF. - The current web UI version does not support operations that require multiple different types of inputs, such as adding a separate image to a PDF.
### Current Limitations ### Current Limitations
- Cannot have more than one of the same operation
- Cannot input additional files via UI
- All files and operations run in serial mode
- Cannot have more than one of the same operation.
- Cannot input additional files via UI.
- All files and operations run in serial mode.

405
README.md
View File

@@ -1,4 +1,4 @@
<p align="center"><img src="https://raw.githubusercontent.com/Stirling-Tools/Stirling-PDF/main/docs/stirling.png" width="80"></p> <p align="center"><img src="https://raw.githubusercontent.com/Stirling-Tools/Stirling-PDF/main/docs/stirling.png" width="80" ></p>
<h1 align="center">Stirling-PDF</h1> <h1 align="center">Stirling-PDF</h1>
[![Docker Pulls](https://img.shields.io/docker/pulls/frooodle/s-pdf)](https://hub.docker.com/r/frooodle/s-pdf) [![Docker Pulls](https://img.shields.io/docker/pulls/frooodle/s-pdf)](https://hub.docker.com/r/frooodle/s-pdf)
@@ -9,9 +9,9 @@
[![Deploy to DO](https://www.deploytodo.com/do-btn-blue.svg)](https://cloud.digitalocean.com/apps/new?repo=https://github.com/Stirling-Tools/Stirling-PDF/tree/digitalOcean&refcode=c3210994b1af) [![Deploy to DO](https://www.deploytodo.com/do-btn-blue.svg)](https://cloud.digitalocean.com/apps/new?repo=https://github.com/Stirling-Tools/Stirling-PDF/tree/digitalOcean&refcode=c3210994b1af)
[<img src="https://www.ssdnodes.com/wp-content/uploads/2023/11/footer-logo.svg" alt="Name" height="40">](https://www.ssdnodes.com/manage/aff.php?aff=2216&register=true) [<img src="https://www.ssdnodes.com/wp-content/uploads/2023/11/footer-logo.svg" alt="Name" height="40">](https://www.ssdnodes.com/manage/aff.php?aff=2216&register=true)
Stirling-PDF is a robust, locally hosted web-based PDF manipulation tool using Docker. It enables you to carry out various operations on PDF files, including splitting, merging, converting, reorganizing, adding images, rotating, compressing, and more. This locally hosted web application has evolved to encompass a comprehensive set of features, addressing all your PDF requirements. This is a robust, locally hosted web-based PDF manipulation tool using Docker. It enables you to carry out various operations on PDF files, including splitting, merging, converting, reorganizing, adding images, rotating, compressing, and more. This locally hosted web application has evolved to encompass a comprehensive set of features, addressing all your PDF requirements.
Stirling-PDF does not initiate any outbound calls for record-keeping or tracking purposes. Stirling PDF does not initiate any outbound calls for record-keeping or tracking purposes.
All files and PDFs exist either exclusively on the client side, reside in server memory only during task execution, or temporarily reside in a file solely for the execution of the task. Any file downloaded by the user will have been deleted from the server by that point. All files and PDFs exist either exclusively on the client side, reside in server memory only during task execution, or temporarily reside in a file solely for the execution of the task. Any file downloaded by the user will have been deleted from the server by that point.
@@ -19,7 +19,7 @@ All files and PDFs exist either exclusively on the client side, reside in server
## Features ## Features
- Dark mode support - Dark mode support.
- Custom download options - Custom download options
- Parallel file processing and downloads - Parallel file processing and downloads
- Custom 'Pipelines' to run multiple features in a queue - Custom 'Pipelines' to run multiple features in a queue
@@ -27,68 +27,68 @@ All files and PDFs exist either exclusively on the client side, reside in server
- Optional Login and Authentication support (see [here](https://github.com/Stirling-Tools/Stirling-PDF/tree/main#login-authentication) for documentation) - Optional Login and Authentication support (see [here](https://github.com/Stirling-Tools/Stirling-PDF/tree/main#login-authentication) for documentation)
- Database Backup and Import (see [here](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/DATABASE.md) for documentation) - Database Backup and Import (see [here](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/DATABASE.md) for documentation)
## PDF Features ## **PDF Features**
### Page Operations ### **Page Operations**
- View and modify PDFs - View multi-page PDFs with custom viewing, sorting, and searching. Plus on-page edit features like annotate, draw, and adding text and images. (Using PDF.js with Joxit and Liberation fonts) - View and modify PDFs - View multi page PDFs with custom viewing sorting and searching. Plus on page edit features like annotate, draw and adding text and images. (Using PDF.js with Joxit and Liberation.Liberation fonts)
- Full interactive GUI for merging/splitting/rotating/moving PDFs and their pages - Full interactive GUI for merging/splitting/rotating/moving PDFs and their pages.
- Merge multiple PDFs into a single resultant file - Merge multiple PDFs together into a single resultant file.
- Split PDFs into multiple files at specified page numbers or extract all pages as individual files - Split PDFs into multiple files at specified page numbers or extract all pages as individual files.
- Reorganize PDF pages into different orders - Reorganize PDF pages into different orders.
- Rotate PDFs in 90-degree increments - Rotate PDFs in 90-degree increments.
- Remove pages - Remove pages.
- Multi-page layout (format PDFs into a multi-paged page) - Multi-page layout (Format PDFs into a multi-paged page).
- Scale page contents size by set percentage - Scale page contents size by set %.
- Adjust contrast - Adjust Contrast.
- Crop PDF - Crop PDF.
- Auto split PDF (with physically scanned page dividers) - Auto Split PDF (With physically scanned page dividers).
- Extract page(s) - Extract page(s).
- Convert PDF to a single page - Convert PDF to a single page.
- Overlay PDFs on top of each other - Overlay PDFs ontop of each other
### Conversion Operations ### **Conversion Operations**
- Convert PDFs to and from images - Convert PDFs to and from images.
- Convert any common file to PDF (using LibreOffice) - Convert any common file to PDF (using LibreOffice).
- Convert PDF to Word/PowerPoint/others (using LibreOffice) - Convert PDF to Word/Powerpoint/Others (using LibreOffice).
- Convert HTML to PDF - Convert HTML to PDF.
- URL to PDF - URL to PDF.
- Markdown to PDF - Markdown to PDF.
### Security & Permissions ### **Security & Permissions**
- Add and remove passwords - Add and remove passwords.
- Change/set PDF permissions - Change/set PDF Permissions.
- Add watermark(s) - Add watermark(s).
- Certify/sign PDFs - Certify/sign PDFs.
- Sanitize PDFs - Sanitize PDFs.
- Auto-redact text - Auto-redact text.
### Other Operations ### **Other Operations**
- Add/generate/write signatures - Add/Generate/Write signatures.
- Repair PDFs - Repair PDFs.
- Detect and remove blank pages - Detect and remove blank pages.
- Compare two PDFs and show differences in text - Compare 2 PDFs and show differences in text.
- Add images to PDFs - Add images to PDFs.
- Compress PDFs to decrease their filesize (using OCRMyPDF) - Compress PDFs to decrease their filesize (Using OCRMyPDF).
- Extract images from PDF - Extract images from PDF.
- Extract images from scans - Extract images from Scans.
- Add page numbers - Add page numbers.
- Auto rename file by detecting PDF header text - Auto rename file by detecting PDF header text.
- OCR on PDF (using OCRMyPDF) - OCR on PDF (Using OCRMyPDF).
- PDF/A conversion (using OCRMyPDF) - PDF/A conversion (Using OCRMyPDF).
- Edit metadata - Edit metadata.
- Flatten PDFs - Flatten PDFs.
- Get all information on a PDF to view or export as JSON - Get all information on a PDF to view or export as JSON.
- Show/detect embedded JavaScript - Show/Detect embedded Javascript
For an overview of the tasks and the technology each uses, please view [Endpoint-groups.md](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/Endpoint-groups.md). For a overview of the tasks and the technology each uses please view [Endpoint-groups.md](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/Endpoint-groups.md)
A demo of the app is available [here](https://stirlingpdf.io). Demo of the app is available [here](https://stirlingpdf.io).
## Technologies Used ## Technologies used
- Spring Boot + Thymeleaf - Spring Boot + Thymeleaf
- [PDFBox](https://github.com/apache/pdfbox/tree/trunk) - [PDFBox](https://github.com/apache/pdfbox/tree/trunk)
@@ -99,28 +99,27 @@ A demo of the app is available [here](https://stirlingpdf.io).
- [PDF.js](https://github.com/mozilla/pdf.js) - [PDF.js](https://github.com/mozilla/pdf.js)
- [PDF-LIB.js](https://github.com/Hopding/pdf-lib) - [PDF-LIB.js](https://github.com/Hopding/pdf-lib)
## How to Use ## How to use
### Windows ### Windows
For windows users download the latest Stirling-PDF.exe from our [release](https://github.com/Stirling-Tools/Stirling-PDF/releases) section or by clicking [here](https://github.com/Stirling-Tools/Stirling-PDF/releases/latest/download/Stirling-PDF.exe)
For Windows users, download the latest Stirling-PDF.exe from our [release](https://github.com/Stirling-Tools/Stirling-PDF/releases) section or by clicking [here](https://github.com/Stirling-Tools/Stirling-PDF/releases/latest/download/Stirling-PDF.exe).
### Locally ### Locally
Please view the [LocalRunGuide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/LocalRunGuide.md). Please view https://github.com/Stirling-Tools/Stirling-PDF/blob/main/LocalRunGuide.md
### Docker / Podman ### Docker / Podman
> [!NOTE] https://hub.docker.com/r/frooodle/s-pdf
> <https://hub.docker.com/r/frooodle/s-pdf>
Stirling-PDF has three different versions: a full version, an ultra-lite version, and a 'fat' version. Depending on the types of features you use, you may want a smaller image to save on space. To see what the different versions offer, please look at our [version mapping](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/Version-groups.md). For people that don't mind space optimization, just use the latest tag.
Stirling PDF has 3 different versions, a Full version and ultra-Lite version as well as a 'Fat' version. Depending on the types of features you use you may want a smaller image to save on space.
To see what the different versions offer please look at our [version mapping](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/Version-groups.md)
For people that don't mind about space optimization just use the latest tag.
![Docker Image Size (tag)](https://img.shields.io/docker/image-size/frooodle/s-pdf/latest?label=Stirling-PDF%20Full) ![Docker Image Size (tag)](https://img.shields.io/docker/image-size/frooodle/s-pdf/latest?label=Stirling-PDF%20Full)
![Docker Image Size (tag)](https://img.shields.io/docker/image-size/frooodle/s-pdf/latest-ultra-lite?label=Stirling-PDF%20Ultra-Lite) ![Docker Image Size (tag)](https://img.shields.io/docker/image-size/frooodle/s-pdf/latest-ultra-lite?label=Stirling-PDF%20Ultra-Lite)
![Docker Image Size (tag)](https://img.shields.io/docker/image-size/frooodle/s-pdf/latest-fat?label=Stirling-PDF%20Fat) ![Docker Image Size (tag)](https://img.shields.io/docker/image-size/frooodle/s-pdf/latest-fat?label=Stirling-PDF%20Fat)
Please note in the examples below, you may need to change the volume paths as needed, e.g., `./extraConfigs:/configs` to `/opt/stirlingpdf/extraConfigs:/configs`. Please note in below examples you may need to change the volume paths as needed, current examples install them to the current working directory
eg ``./extraConfigs:/configs`` to ``/opt/stirlingpdf/extraConfigs:/configs``
### Docker Run ### Docker Run
@@ -130,13 +129,15 @@ docker run -d \
-v ./trainingData:/usr/share/tessdata \ -v ./trainingData:/usr/share/tessdata \
-v ./extraConfigs:/configs \ -v ./extraConfigs:/configs \
-v ./logs:/logs \ -v ./logs:/logs \
# Optional customization (not required)
# -v /location/of/customFiles:/customFiles \
-e DOCKER_ENABLE_SECURITY=false \ -e DOCKER_ENABLE_SECURITY=false \
-e INSTALL_BOOK_AND_ADVANCED_HTML_OPS=false \ -e INSTALL_BOOK_AND_ADVANCED_HTML_OPS=false \
-e LANGS=en_GB \ -e LANGS=en_GB \
--name stirling-pdf \ --name stirling-pdf \
frooodle/s-pdf:latest frooodle/s-pdf:latest
Can also add these for customisation but are not required
-v /location/of/customFiles:/customFiles \
``` ```
### Docker Compose ### Docker Compose
@@ -149,7 +150,7 @@ services:
ports: ports:
- '8080:8080' - '8080:8080'
volumes: volumes:
- ./trainingData:/usr/share/tessdata # Required for extra OCR languages - ./trainingData:/usr/share/tessdata #Required for extra OCR languages
- ./extraConfigs:/configs - ./extraConfigs:/configs
# - ./customFiles:/customFiles/ # - ./customFiles:/customFiles/
# - ./logs:/logs/ # - ./logs:/logs/
@@ -161,234 +162,196 @@ services:
Note: Podman is CLI-compatible with Docker, so simply replace "docker" with "podman". Note: Podman is CLI-compatible with Docker, so simply replace "docker" with "podman".
## Enable OCR/Compression Feature ## Enable OCR/Compression feature
Please view the [HowToUseOCR.md](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToUseOCR.md). Please view https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToUseOCR.md
## Reuse Stored Files
Certain functionality like `Sign` supports pre-saved files stored at `/customFiles/signatures/`. Image files placed within here will be accessible to be used via the web UI. Currently, this supports two folder types:
- `/customFiles/signatures/ALL_USERS`: Accessible to all users, useful for organizations where many users use the same files or for users not using authentication
- `/customFiles/signatures/{username}`: Such as `/customFiles/signatures/froodle`, accessible only to the `froodle` username, private for all others
## Supported Languages ## Supported Languages
Stirling-PDF currently supports 36 languages! Stirling PDF currently supports 38!
| Language | Progress | | Language | Progress |
| -------------------------------------------- | -------------------------------------- | | ------------------------------------------- | -------------------------------------- |
| Arabic (العربية) (ar_AR) | ![98%](https://geps.dev/progress/98) | | Arabic (العربية) (ar_AR) | ![93%](https://geps.dev/progress/93) |
| Basque (Euskara) (eu_ES) | ![56%](https://geps.dev/progress/56) | | Basque (Euskara) (eu_ES) | ![57%](https://geps.dev/progress/57) |
| Bulgarian (Български) (bg_BG) | ![98%](https://geps.dev/progress/98) | | Bulgarian (Български) (bg_BG) | ![86%](https://geps.dev/progress/86) |
| Catalan (Català) (ca_CA) | ![44%](https://geps.dev/progress/44) | | Catalan (Català) (ca_CA) | ![44%](https://geps.dev/progress/44) |
| Croatian (Hrvatski) (hr_HR) | ![99%](https://geps.dev/progress/99) | | Croatian (Hrvatski) (hr_HR) | ![87%](https://geps.dev/progress/87) |
| Czech (Česky) (cs_CZ) | ![99%](https://geps.dev/progress/99) | | Czech (Česky) (cs_CZ) | ![82%](https://geps.dev/progress/82) |
| Danish (Dansk) (da_DK) | ![98%](https://geps.dev/progress/98) | | Danish (Dansk) (da_DK) | ![91%](https://geps.dev/progress/91) |
| Dutch (Nederlands) (nl_NL) | ![97%](https://geps.dev/progress/97) | | Dutch (Nederlands) (nl_NL) | ![88%](https://geps.dev/progress/88) |
| English (English) (en_GB) | ![100%](https://geps.dev/progress/100) | | English (English) (en_GB) | ![100%](https://geps.dev/progress/100) |
| English (US) (en_US) | ![100%](https://geps.dev/progress/100) | | English (US) (en_US) | ![100%](https://geps.dev/progress/100) |
| French (Français) (fr_FR) | ![98%](https://geps.dev/progress/98) | | French (Français) (fr_FR) | ![85%](https://geps.dev/progress/85) |
| German (Deutsch) (de_DE) | ![99%](https://geps.dev/progress/99) | | German (Deutsch) (de_DE) | ![93%](https://geps.dev/progress/93) |
| Greek (Ελληνικά) (el_GR) | ![98%](https://geps.dev/progress/98) | | Greek (Ελληνικά) (el_GR) | ![75%](https://geps.dev/progress/75) |
| Hindi (हिंदी) (hi_IN) | ![96%](https://geps.dev/progress/96) | | Hindi (हिंदी) (hi_IN) | ![72%](https://geps.dev/progress/72) |
| Hungarian (Magyar) (hu_HU) | ![99%](https://geps.dev/progress/99) | | Hungarian (Magyar) (hu_HU) | ![69%](https://geps.dev/progress/69) |
| Indonesian (Bahasa Indonesia) (id_ID) | ![99%](https://geps.dev/progress/99) | | Indonesia (Bahasa Indonesia) (id_ID) | ![70%](https://geps.dev/progress/70) |
| Irish (Gaeilge) (ga_IE) | ![89%](https://geps.dev/progress/89) | | Irish (Gaeilge) (ga_IE) | ![90%](https://geps.dev/progress/90) |
| Italian (Italiano) (it_IT) | ![99%](https://geps.dev/progress/99) | | Italian (Italiano) (it_IT) | ![99%](https://geps.dev/progress/99) |
| Japanese (日本語) (ja_JP) | ![86%](https://geps.dev/progress/86) | | Japanese (日本語) (ja_JP) | ![87%](https://geps.dev/progress/87) |
| Korean (한국어) (ko_KR) | ![97%](https://geps.dev/progress/97) | | Korean (한국어) (ko_KR) | ![77%](https://geps.dev/progress/77) |
| Norwegian (Norsk) (no_NB) | ![89%](https://geps.dev/progress/89) | | Norwegian (Norsk) (no_NB) | ![90%](https://geps.dev/progress/90) |
| Polish (Polski) (pl_PL) | ![98%](https://geps.dev/progress/98) | | Polish (Polski) (pl_PL) | ![84%](https://geps.dev/progress/84) |
| Portuguese (Português) (pt_PT) | ![99%](https://geps.dev/progress/99) | | Portuguese (Português) (pt_PT) | ![72%](https://geps.dev/progress/72) |
| Portuguese Brazilian (Português) (pt_BR) | ![99%](https://geps.dev/progress/99) | | Portuguese Brazilian (Português) (pt_BR) | ![99%](https://geps.dev/progress/99) |
| Romanian (Română) (ro_RO) | ![91%](https://geps.dev/progress/91) | | Romanian (Română) (ro_RO) | ![92%](https://geps.dev/progress/92) |
| Russian (Русский) (ru_RU) | ![98%](https://geps.dev/progress/98) | | Russian (Русский) (ru_RU) | ![77%](https://geps.dev/progress/77) |
| Serbian Latin alphabet (Srpski) (sr_LATN_RS) | ![71%](https://geps.dev/progress/71) | | Serbian Latin alphabet (Srpski) (sr_LATN_RS) | ![72%](https://geps.dev/progress/72) |
| Simplified Chinese (简体中文) (zh_CN) | ![92%](https://geps.dev/progress/92) | | Simplified Chinese (简体中文) (zh_CN) | ![93%](https://geps.dev/progress/93) |
| Slovakian (Slovensky) (sk_SK) | ![83%](https://geps.dev/progress/83) | | Slovakian (Slovensky) (sk_SK) | ![84%](https://geps.dev/progress/84) |
| Spanish (Español) (es_ES) | ![99%](https://geps.dev/progress/99) | | Spanish (Español) (es_ES) | ![93%](https://geps.dev/progress/93) |
| Swedish (Svenska) (sv_SE) | ![98%](https://geps.dev/progress/98) | | Swedish (Svenska) (sv_SE) | ![92%](https://geps.dev/progress/92) |
| Thai (ไทย) (th_TH) | ![97%](https://geps.dev/progress/97) | | Thai (ไทย) (th_TH) | ![91%](https://geps.dev/progress/91) |
| Traditional Chinese (繁體中文) (zh_TW) | ![98%](https://geps.dev/progress/98) | | Traditional Chinese (繁體中文) (zh_TW) | ![99%](https://geps.dev/progress/99) |
| Turkish (Türkçe) (tr_TR) | ![93%](https://geps.dev/progress/93) | | Turkish (Türkçe) (tr_TR) | ![94%](https://geps.dev/progress/94) |
| Ukrainian (Українська) (uk_UA) | ![81%](https://geps.dev/progress/81) | | Ukrainian (Українська) (uk_UA) | ![82%](https://geps.dev/progress/82) |
| Vietnamese (Tiếng Việt) (vi_VN) | ![89%](https://geps.dev/progress/89) | | Vietnamese (Tiếng Việt) (vi_VN) | ![90%](https://geps.dev/progress/90) |
## Contributing (Creating Issues, Translations, Fixing Bugs, etc.) ## Contributing (creating issues, translations, fixing bugs, etc.)
Please see our [Contributing Guide](CONTRIBUTING.md). Please see our [Contributing Guide](CONTRIBUTING.md)!
## Customization ## Customisation
Stirling-PDF allows easy customization of the app, including things like: Stirling PDF allows easy customization of the app.
Includes things like
- Custom application name - Custom application name
- Custom slogans, icons, HTML, images, CSS, etc. (via file overrides) - Custom slogans, icons, HTML, images CSS etc (via file overrides)
There are two options for this, either using the generated settings file `settings.yml`, which is located in the `/configs` directory and follows standard YAML formatting, or using environment variables, which would override the settings file. There are two options for this, either using the generated settings file ``settings.yml``
This file is located in the ``/configs`` directory and follows standard YAML formatting
For example, in `settings.yml`, you might have: Environment variables are also supported and would override the settings file
For example in the settings.yml you have
```yaml ```yaml
security: security:
enableLogin: 'true' enableLogin: 'true'
``` ```
To have this via an environment variable, you would use `SECURITY_ENABLELOGIN`. To have this via an environment variable you would have ``SECURITY_ENABLELOGIN``
The current list of settings is: The Current list of settings is
```yaml ```yaml
security: security:
enableLogin: false # set to 'true' to enable login enableLogin: false # set to 'true' to enable login
csrfDisabled: true # set to 'true' to disable CSRF protection (not recommended for production) csrfDisabled: true # Set to 'true' to disable CSRF protection (not recommended for production)
loginAttemptCount: 5 # lock user account after 5 tries; when using e.g. Fail2Ban you can deactivate the function with -1 loginAttemptCount: 5 # lock user account after 5 tries; when using e.g. Fail2Ban you can deactivate the function with -1
loginResetTimeMinutes: 120 # lock account for 2 hours after x attempts loginResetTimeMinutes: 120 # lock account for 2 hours after x attempts
loginMethod: all # 'all' (Login Username/Password and OAuth2[must be enabled and configured]), 'normal'(only Login with Username/Password) or 'oauth2'(only Login with OAuth2) loginMethod: all # 'all' (Login Username/Password and OAuth2[must be enabled and configured]), 'normal'(only Login with Username/Password) or 'oauth2'(only Login with OAuth2)
initialLogin: initialLogin:
username: '' # initial username for the first login username: '' # Initial username for the first login
password: '' # initial password for the first login password: '' # Initial password for the first login
oauth2: oauth2:
enabled: false # set to 'true' to enable login (Note: enableLogin must also be 'true' for this to work) enabled: false # set to 'true' to enable login (Note: enableLogin must also be 'true' for this to work)
client: client:
keycloak: keycloak:
issuer: '' # URL of the Keycloak realm's OpenID Connect Discovery endpoint issuer: '' # URL of the Keycloak realm's OpenID Connect Discovery endpoint
clientId: '' # client ID for Keycloak OAuth2 clientId: '' # Client ID for Keycloak OAuth2
clientSecret: '' # client secret for Keycloak OAuth2 clientSecret: '' # Client Secret for Keycloak OAuth2
scopes: openid, profile, email # scopes for Keycloak OAuth2 scopes: openid, profile, email # Scopes for Keycloak OAuth2
useAsUsername: preferred_username # field to use as the username for Keycloak OAuth2 useAsUsername: preferred_username # Field to use as the username for Keycloak OAuth2
google: google:
clientId: '' # client ID for Google OAuth2 clientId: '' # Client ID for Google OAuth2
clientSecret: '' # client secret for Google OAuth2 clientSecret: '' # Client Secret for Google OAuth2
scopes: https://www.googleapis.com/auth/userinfo.email, https://www.googleapis.com/auth/userinfo.profile # scopes for Google OAuth2 scopes: https://www.googleapis.com/auth/userinfo.email, https://www.googleapis.com/auth/userinfo.profile # Scopes for Google OAuth2
useAsUsername: email # field to use as the username for Google OAuth2 useAsUsername: email # Field to use as the username for Google OAuth2
github: github:
clientId: '' # client ID for GitHub OAuth2 clientId: '' # Client ID for GitHub OAuth2
clientSecret: '' # client secret for GitHub OAuth2 clientSecret: '' # Client Secret for GitHub OAuth2
scopes: read:user # scope for GitHub OAuth2 scopes: read:user # Scope for GitHub OAuth2
useAsUsername: login # field to use as the username for GitHub OAuth2 useAsUsername: login # Field to use as the username for GitHub OAuth2
issuer: '' # set to any provider that supports OpenID Connect Discovery (/.well-known/openid-configuration) endpoint issuer: '' # set to any provider that supports OpenID Connect Discovery (/.well-known/openid-configuration) end-point
clientId: '' # client ID from your provider clientId: '' # Client ID from your provider
clientSecret: '' # client secret from your provider clientSecret: '' # Client Secret from your provider
autoCreateUser: false # set to 'true' to allow auto-creation of non-existing users autoCreateUser: false # set to 'true' to allow auto-creation of non-existing users
blockRegistration: false # set to 'true' to deny login with SSO without prior registration by an admin blockRegistration: false # set to 'true' to deny login with SSO without prior registration by an admin
useAsUsername: email # default is 'email'; custom fields can be used as the username useAsUsername: email # Default is 'email'; custom fields can be used as the username
scopes: openid, profile, email # specify the scopes for which the application will request permissions scopes: openid, profile, email # Specify the scopes for which the application will request permissions
provider: google # set this to your OAuth provider's name, e.g., 'google' or 'keycloak' provider: google # Set this to your OAuth provider's name, e.g., 'google' or 'keycloak'
saml2:
enabled: false # currently in alpha, not recommended for use yet, enableAlphaFunctionality must be set to true
autoCreateUser: false # set to 'true' to allow auto-creation of non-existing users
blockRegistration: false # set to 'true' to deny login with SSO without prior registration by an admin
registrationId: stirling
idpMetadataUri: https://dev-XXXXXXXX.okta.com/app/externalKey/sso/saml/metadata
idpSingleLogoutUrl: https://dev-XXXXXXXX.okta.com/app/dev-XXXXXXXX_stirlingpdf_1/externalKey/slo/saml
idpSingleLoginUrl: https://dev-XXXXXXXX.okta.com/app/dev-XXXXXXXX_stirlingpdf_1/externalKey/sso/saml
idpIssuer: http://www.okta.com/externalKey
idpCert: classpath:okta.crt
privateKey: classpath:saml-private-key.key
spCert: classpath:saml-public-cert.crt
enterpriseEdition:
enabled: false # set to 'true' to enable enterprise edition
key: 00000000-0000-0000-0000-000000000000
CustomMetadata:
autoUpdateMetadata: false # set to 'true' to automatically update metadata with below values
author: username # supports text such as 'John Doe' or types such as username to autopopulate with user's username
creator: Stirling-PDF # supports text such as 'Company-PDF'
producer: Stirling-PDF # supports text such as 'Company-PDF'
legal:
termsAndConditions: https://www.stirlingpdf.com/terms-and-conditions # URL to the terms and conditions of your application (e.g. https://example.com/terms). Empty string to disable or filename to load from local file in static folder
privacyPolicy: https://www.stirlingpdf.com/privacy-policy # URL to the privacy policy of your application (e.g. https://example.com/privacy). Empty string to disable or filename to load from local file in static folder
accessibilityStatement: '' # URL to the accessibility statement of your application (e.g. https://example.com/accessibility). Empty string to disable or filename to load from local file in static folder
cookiePolicy: '' # URL to the cookie policy of your application (e.g. https://example.com/cookie). Empty string to disable or filename to load from local file in static folder
impressum: '' # URL to the impressum of your application (e.g. https://example.com/impressum). Empty string to disable or filename to load from local file in static folder
system: system:
defaultLocale: en-US # set the default language (e.g. 'de-DE', 'fr-FR', etc) defaultLocale: 'en-US' # Set the default language (e.g. 'de-DE', 'fr-FR', etc)
googlevisibility: false # 'true' to allow Google visibility (via robots.txt), 'false' to disallow googlevisibility: false # 'true' to allow Google visibility (via robots.txt), 'false' to disallow
enableAlphaFunctionality: false # set to enable functionality which might need more testing before it fully goes live (this feature might make no changes) enableAlphaFunctionality: false # Set to enable functionality which might need more testing before it fully goes live (This feature might make no changes)
showUpdate: false # see when a new update is available showUpdate: true # see when a new update is available
showUpdateOnlyAdmin: false # only admins can see when a new update is available, depending on showUpdate it must be set to 'true' showUpdateOnlyAdmin: false # Only admins can see when a new update is available, depending on showUpdate it must be set to 'true'
customHTMLFiles: false # enable to have files placed in /customFiles/templates override the existing template HTML files customHTMLFiles: false # enable to have files placed in /customFiles/templates override the existing template html files
tessdataDir: /usr/share/tessdata # path to the directory containing the Tessdata files. This setting is relevant for Windows systems. For Windows users, this path should be adjusted to point to the appropriate directory where the Tessdata files are stored.
enableAnalytics: undefined # set to 'true' to enable analytics, set to 'false' to disable analytics; for enterprise users, this is set to true
ui: ui:
appName: '' # application's visible name appName: '' # Application's visible name
homeDescription: '' # short description or tagline shown on the homepage homeDescription: '' # Short description or tagline shown on homepage.
appNameNavbar: '' # name displayed on the navigation bar appNameNavbar: '' # Name displayed on the navigation bar
endpoints: endpoints:
toRemove: [] # list endpoints to disable (e.g. ['img-to-pdf', 'remove-pages']) toRemove: [] # List endpoints to disable (e.g. ['img-to-pdf', 'remove-pages'])
groupsToRemove: [] # list groups to disable (e.g. ['LibreOffice']) groupsToRemove: [] # List groups to disable (e.g. ['LibreOffice'])
metrics: metrics:
enabled: true # 'true' to enable Info APIs (`/api/*`) endpoints, 'false' to disable enabled: true # 'true' to enable Info APIs (`/api/*`) endpoints, 'false' to disable
# Automatically Generated Settings (Do Not Edit Directly)
AutomaticallyGenerated:
key: example
UUID: example
``` ```
There is an additional config file `/configs/custom_settings.yml` where users familiar with Java and Spring `application.properties` can input their own settings on top of Stirling-PDF's existing ones. There is an additional config file ``/configs/custom_settings.yml`` were users familiar with java and spring application.properties can input their own settings on-top of Stirling-PDFs existing ones
### Extra Notes ### Extra notes
- **Endpoints**: Currently, the `ENDPOINTS_TO_REMOVE` and `GROUPS_TO_REMOVE` endpoints can include comma-separated lists of endpoints and groups to disable. For example, `ENDPOINTS_TO_REMOVE=img-to-pdf,remove-pages` would disable both image-to-pdf and remove pages, while `GROUPS_TO_REMOVE=LibreOffice` would disable all things that use LibreOffice. You can see a list of all endpoints and groups [here](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/Endpoint-groups.md). - Endpoints. Currently, the endpoints ENDPOINTS_TO_REMOVE and GROUPS_TO_REMOVE can include comma separate lists of endpoints and groups to disable as example ENDPOINTS_TO_REMOVE=img-to-pdf,remove-pages would disable both image-to-pdf and remove pages, GROUPS_TO_REMOVE=LibreOffice Would disable all things that use LibreOffice. You can see a list of all endpoints and groups [here](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/Endpoint-groups.md)
- **customStaticFilePath**: Customize static files such as the app logo by placing files in the `/customFiles/static/` directory. An example of customizing the app logo is placing `/customFiles/static/favicon.svg` to override the current SVG. This can be used to change any `images/icons/css/fonts/js`, etc. in Stirling-PDF. - customStaticFilePath. Customise static files such as the app logo by placing files in the /customFiles/static/ directory. An example of customising app logo is placing a /customFiles/static/favicon.svg to override current SVG. This can be used to change any images/icons/css/fonts/js etc in Stirling-PDF
### Environment-Only Parameters ### Environment only parameters
- `SYSTEM_ROOTURIPATH` - Set the application's root URI (e.g. `/pdf-app` to set the root URI to `localhost:8080/pdf-app`) - ``SYSTEM_ROOTURIPATH`` ie set to ``/pdf-app`` to Set the application's root URI to ``localhost:8080/pdf-app``
- `SYSTEM_CONNECTIONTIMEOUTMINUTES` - Set custom connection timeout values - ``SYSTEM_CONNECTIONTIMEOUTMINUTES`` to set custom connection timeout values
- `DOCKER_ENABLE_SECURITY` - Set to `true` to download security jar (required for authentication login) - ``DOCKER_ENABLE_SECURITY`` to tell docker to download security jar (required as true for auth login)
- `INSTALL_BOOK_AND_ADVANCED_HTML_OPS` - Download Calibre onto Stirling-PDF to enable PDF to/from book and advanced HTML conversion - ``INSTALL_BOOK_AND_ADVANCED_HTML_OPS`` to download calibre onto stirling-pdf enabling pdf to/from book and advanced html conversion
- `LANGS` - Define custom font libraries to install for document conversions - ``LANGS`` to define custom font libraries to install for use for document conversions
## API ## API
For those wanting to use Stirling-PDF's backend API to link with their own custom scripting to edit PDFs, you can view all existing API documentation [here](https://app.swaggerhub.com/apis-docs/Stirling-Tools/Stirling-PDF/), or navigate to `/swagger-ui/index.html` of your Stirling-PDF instance for your version's documentation (or by following the API button in the settings of Stirling-PDF). For those wanting to use Stirling-PDFs backend API to link with their own custom scripting to edit PDFs you can view all existing API documentation
[here](https://app.swaggerhub.com/apis-docs/Stirling-Tools/Stirling-PDF/) or navigate to /swagger-ui/index.html of your stirling-pdf instance for your versions documentation (Or by following the API button in your settings of Stirling-PDF)
## Login Authentication ## Login authentication
![stirling-login](images/login-light.png) ![stirling-login](images/login-light.png)
### Prerequisites ### Prerequisites
- User must have the folder `./configs` volumed within Docker so that it is retained during updates. - User must have the folder ./configs volumed within docker so that it is retained during updates.
- Docker users must download the security jar version by setting `DOCKER_ENABLE_SECURITY` to `true` in environment variables. - Docker users must download the security jar version by setting ``DOCKER_ENABLE_SECURITY`` to ``true`` in environment variables.
- Then either enable login via the `settings.yml` file or set `SECURITY_ENABLE_LOGIN` to `true`. - Then either enable login via the settings.yml file or via setting ``SECURITY_ENABLE_LOGIN`` to ``true``
- Now the initial user will be generated with username `admin` and password `stirling`. On login, you will be forced to change the password to a new one. You can also use the environment variables `SECURITY_INITIALLOGIN_USERNAME` and `SECURITY_INITIALLOGIN_PASSWORD` to set your own credentials straight away (recommended to remove them after user creation). - Now the initial user will be generated with username ``admin`` and password ``stirling``. On login you will be forced to change the password to a new one. You can also use the environment variables ``SECURITY_INITIALLOGIN_USERNAME`` and ``SECURITY_INITIALLOGIN_PASSWORD`` to set your own straight away (Recommended to remove them after user creation).
Once the above has been done, on restart, a new `stirling-pdf-DB.mv.db` will show if everything worked. Once the above has been done, on restart, a new stirling-pdf-DB.mv.db will show if everything worked.
When you log in to Stirling-PDF, you will be redirected to the `/login` page to log in with those default credentials. After login, everything should function as normal. When you login to Stirling PDF you will be redirected to /login page to login with those default credentials. After login everything should function as normal
To access your account settings, go to Account Settings in the settings cog menu (top right in the navbar). This Account Settings menu is also where you find your API key. To access your account settings go to Account settings in the settings cog menu (top right in navbar) This Account settings menu is also where you find your API key.
To add new users, go to the bottom of Account Settings and hit 'Admin Settings'. Here you can add new users. The different roles mentioned within this are for rate limiting. This is a work in progress and will be expanded on more in the future. To add new users go to the bottom of Account settings and hit 'Admin Settings', here you can add new users. The different roles mentioned within this are for rate limiting. This is a Work in progress which will be expanding on more in future
For API usage, you must provide a header with `X-API-Key` and the associated API key for that user. For API usage you must provide a header with 'X-API-Key' and the associated API key for that user.
## FAQ ## FAQ
### Q1: What are your planned features? ### Q1: What are your planned features?
- Progress bar/tracking - Progress bar/Tracking
- Full custom logic pipelines to combine multiple operations together - Full custom logic pipelines to combine multiple operations together.
- Folder support with auto-scanning to perform operations on - Folder support with auto scanning to perform operations on
- Redact text (via UI, not just automated) - Redact text (Via UI not just automated way)
- Add forms - Add Forms
- Multi-page layout (stitch PDF pages together) support x rows y columns and custom page sizing - Multi page layout (Stich PDF pages together) support x rows y columns and custom page sizing
- Fill forms manually or automatically - Fill forms manually or automatically
### Q2: Why is my application downloading .htm files? ### Q2: Why is my application downloading .htm files?
This is an issue commonly caused by your NGINX configuration. The default file upload size for NGINX is 1MB. You need to add the following in your Nginx sites-available file: `client_max_body_size SIZE;` (where "SIZE" is 50M for example for 50MB files). This is an issue caused commonly by your NGINX configuration. The default file upload size for NGINX is 1MB, you need to add the following in your Nginx sites-available file. ``client_max_body_size SIZE;`` Where "SIZE" is 50M for example for 50MB files.
### Q3: Why is my download timing out? ### Q3: Why is my download timing out
NGINX has timeout values by default, so if you are running Stirling-PDF behind NGINX, you may need to set a timeout value, such as adding the config `proxy_read_timeout 3600;`. NGINX has timeout values by default so if you are running Stirling-PDF behind NGINX you may need to set a timeout value such as adding the config ``proxy_read_timeout 3600;``

View File

@@ -1,7 +1,7 @@
|All versions in a Docker environment can download Calibre as a optional extra at runtime to support `book-to-pdf` and `pdf-to-book` using parameter ``INSTALL_BOOK_AND_ADVANCED_HTML_OPS``. |All versions in a Docker environment can download Calibre as a optional extra at runtime to support `book-to-pdf` and `pdf-to-book` using parameter ``INSTALL_BOOK_AND_ADVANCED_HTML_OPS``.
The 'Fat' container contains all those found in 'Full' with security jar along with this Calibre install. The 'Fat' container contains all those found in 'Full' with security jar along with this Calibre install.
| Technology | Ultra-Lite | Full | Technology | Ultra-Lite | Full |
| ---------- | :--------: | :---: | | ---------- | :--------: | :---: |
| Java | ✔️ | ✔️ | | Java | ✔️ | ✔️ |
| JavaScript | ✔️ | ✔️ | | JavaScript | ✔️ | ✔️ |

View File

@@ -1,6 +1,6 @@
plugins { plugins {
id "java" id "java"
id "org.springframework.boot" version "3.3.5" id "org.springframework.boot" version "3.3.4"
id "io.spring.dependency-management" version "1.1.6" id "io.spring.dependency-management" version "1.1.6"
id "org.springdoc.openapi-gradle-plugin" version "1.8.0" id "org.springdoc.openapi-gradle-plugin" version "1.8.0"
id "io.swagger.swaggerhub" version "1.3.2" id "io.swagger.swaggerhub" version "1.3.2"
@@ -13,7 +13,7 @@ plugins {
import com.github.jk1.license.render.* import com.github.jk1.license.render.*
ext { ext {
springBootVersion = "3.3.5" springBootVersion = "3.3.4"
pdfboxVersion = "3.0.3" pdfboxVersion = "3.0.3"
logbackVersion = "1.5.7" logbackVersion = "1.5.7"
imageioVersion = "3.12.0" imageioVersion = "3.12.0"
@@ -22,7 +22,7 @@ ext {
} }
group = "stirling.software" group = "stirling.software"
version = "0.31.1" version = "0.30.0"
java { java {
// 17 is lowest but we support and recommend 21 // 17 is lowest but we support and recommend 21
@@ -119,7 +119,7 @@ configurations.all {
} }
dependencies { dependencies {
//security updates //security updates
implementation "org.springframework:spring-webmvc:6.1.14" implementation "org.springframework:spring-webmvc:6.1.13"
implementation("io.github.pixee:java-security-toolkit:1.2.0") implementation("io.github.pixee:java-security-toolkit:1.2.0")
@@ -137,11 +137,11 @@ dependencies {
if (System.getenv("DOCKER_ENABLE_SECURITY") != "false") { if (System.getenv("DOCKER_ENABLE_SECURITY") != "false") {
implementation "org.springframework.boot:spring-boot-starter-security:$springBootVersion" implementation "org.springframework.boot:spring-boot-starter-security:$springBootVersion"
implementation "org.thymeleaf.extras:thymeleaf-extras-springsecurity5:3.1.2.RELEASE" runtimeOnly "org.thymeleaf.extras:thymeleaf-extras-springsecurity5:3.1.2.RELEASE"
implementation "org.springframework.boot:spring-boot-starter-data-jpa:$springBootVersion" implementation "org.springframework.boot:spring-boot-starter-data-jpa:$springBootVersion"
implementation "org.springframework.boot:spring-boot-starter-oauth2-client:$springBootVersion" implementation "org.springframework.boot:spring-boot-starter-oauth2-client:$springBootVersion"
implementation 'org.springframework.security:spring-security-saml2-service-provider:6.3.4' implementation 'org.springframework.security:spring-security-saml2-service-provider:6.3.3'
implementation 'com.unboundid.product.scim2:scim2-sdk-client:2.3.5' implementation 'com.unboundid.product.scim2:scim2-sdk-client:2.3.5'
//2.2.x requires rebuild of DB file.. need migration path //2.2.x requires rebuild of DB file.. need migration path
runtimeOnly "com.h2database:h2:2.1.214" runtimeOnly "com.h2database:h2:2.1.214"
@@ -154,8 +154,6 @@ dependencies {
implementation "org.springframework.security:spring-security-saml2-service-provider" implementation "org.springframework.security:spring-security-saml2-service-provider"
implementation 'com.coveo:saml-client:5.0.0' implementation 'com.coveo:saml-client:5.0.0'
} }
testImplementation "org.springframework.boot:spring-boot-starter-test:$springBootVersion" testImplementation "org.springframework.boot:spring-boot-starter-test:$springBootVersion"
@@ -181,9 +179,6 @@ dependencies {
runtimeOnly "com.twelvemonkeys.imageio:imageio-webp:$imageioVersion" runtimeOnly "com.twelvemonkeys.imageio:imageio-webp:$imageioVersion"
// runtimeOnly "com.twelvemonkeys.imageio:imageio-xwd:$imageioVersion" // runtimeOnly "com.twelvemonkeys.imageio:imageio-xwd:$imageioVersion"
// Image metadata extractor
implementation "com.drewnoakes:metadata-extractor:2.19.0"
implementation "commons-io:commons-io:2.17.0" implementation "commons-io:commons-io:2.17.0"
implementation "org.springdoc:springdoc-openapi-starter-webmvc-ui:2.2.0" implementation "org.springdoc:springdoc-openapi-starter-webmvc-ui:2.2.0"
//general PDF //general PDF
@@ -209,8 +204,8 @@ dependencies {
implementation "io.micrometer:micrometer-core:1.13.6" implementation "io.micrometer:micrometer-core:1.13.6"
implementation group: "com.google.zxing", name: "core", version: "3.5.3" implementation group: "com.google.zxing", name: "core", version: "3.5.3"
// https://mvnrepository.com/artifact/org.commonmark/commonmark // https://mvnrepository.com/artifact/org.commonmark/commonmark
implementation "org.commonmark:commonmark:0.24.0" implementation "org.commonmark:commonmark:0.23.0"
implementation "org.commonmark:commonmark-ext-gfm-tables:0.24.0" implementation "org.commonmark:commonmark-ext-gfm-tables:0.23.0"
// https://mvnrepository.com/artifact/com.bucket4j/bucket4j_jdk17 // https://mvnrepository.com/artifact/com.bucket4j/bucket4j_jdk17
implementation "com.bucket4j:bucket4j_jdk17-core:8.14.0" implementation "com.bucket4j:bucket4j_jdk17-core:8.14.0"
implementation "com.fathzer:javaluator:3.0.5" implementation "com.fathzer:javaluator:3.0.5"

View File

@@ -1,5 +1,5 @@
apiVersion: v2 apiVersion: v2
appVersion: 0.31.1 appVersion: 0.30.0
description: locally hosted web application that allows you to perform various operations description: locally hosted web application that allows you to perform various operations
on PDF files on PDF files
home: https://github.com/Stirling-Tools/Stirling-PDF home: https://github.com/Stirling-Tools/Stirling-PDF
@@ -13,4 +13,4 @@ maintainers:
name: stirling-pdf-chart name: stirling-pdf-chart
sources: sources:
- https://github.com/Stirling-Tools/Stirling-PDF - https://github.com/Stirling-Tools/Stirling-PDF
version: 1.0.1 version: 1.0.0

View File

@@ -1,95 +0,0 @@
# stirling-pdf-chart
![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![AppVersion: 0.30.1](https://img.shields.io/badge/AppVersion-0.30.1-informational?style=flat-square)
locally hosted web application that allows you to perform various operations on PDF files
**Homepage:** <https://github.com/Stirling-Tools/Stirling-PDF>
## Maintainers
| Name | Email | Url |
| ---- | ------ | --- |
| Stirling-Tools | | <https://github.com/Stirling-Tools/Stirling-PDF> |
## Source Code
* <https://github.com/Stirling-Tools/Stirling-PDF>
## Chart Repo
Add the following repo to use the chart:
```console
helm repo add stirling-pdf https://stirling-tools.github.io/Stirling-PDF
```
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| affinity | object | `{}` | |
| commonLabels | object | `{}` | Labels to apply to all resources |
| containerSecurityContext | object | `{}` | |
| deployment.annotations | object | `{}` | Stirling-pdf Deployment annotations |
| deployment.extraVolumeMounts | list | `[]` | Additional volumes to mount |
| deployment.extraVolumes | list | `[]` | Additional volumes |
| deployment.labels | object | `{}` | |
| deployment.sidecarContainers | object | `{}` | of the chart's content, send notifications... |
| envs | list | `[]` | |
| extraArgs | list | `[]` | |
| image.pullPolicy | string | `"IfNotPresent"` | |
| image.repository | string | `"frooodle/s-pdf"` | |
| image.tag | string | `nil` | |
| ingress | object | `{"annotations":{},"enabled":false,"hosts":[],"ingressClassName":null,"labels":{},"pathType":"ImplementationSpecific"}` | Ingress for load balancer |
| ingress.annotations | object | `{}` | Stirling-pdf Ingress annotations |
| ingress.hosts | list | `[]` | Must be provided if Ingress is enabled |
| ingress.ingressClassName | string | `nil` | See https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/#specifying-the-class-of-an-ingress |
| ingress.labels | object | `{}` | Stirling-pdf Ingress labels |
| nodeSelector | object | `{}` | |
| persistence.accessMode | string | `"ReadWriteOnce"` | |
| persistence.enabled | bool | `false` | |
| persistence.labels | object | `{}` | |
| persistence.path | string | `"/tmp"` | |
| persistence.pv | object | `{"accessMode":"ReadWriteOnce","capacity":{"storage":"8Gi"},"enabled":false,"nfs":{"path":null,"server":null},"pvname":null}` | stirling-pdf data Persistent Volume Storage Class If defined, storageClassName: <storageClass> If set to "-", storageClassName: "", which disables dynamic provisioning If undefined (the default) or set to null, no storageClassName spec is set, choosing the default provisioner. (gp2 on AWS, standard on GKE, AWS & OpenStack) storageClass: "-" volumeName: |
| persistence.size | string | `"8Gi"` | |
| podAnnotations | object | `{}` | Read more about kube2iam to provide access to s3 https://github.com/jtblin/kube2iam |
| podLabels | object | `{}` | ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ |
| priorityClassName | string | `""` | |
| probes.liveness.failureThreshold | int | `3` | |
| probes.liveness.initialDelaySeconds | int | `5` | |
| probes.liveness.periodSeconds | int | `10` | |
| probes.liveness.successThreshold | int | `1` | |
| probes.liveness.timeoutSeconds | int | `1` | |
| probes.livenessHttpGetConfig.scheme | string | `"HTTP"` | |
| probes.readiness.failureThreshold | int | `3` | |
| probes.readiness.initialDelaySeconds | int | `5` | |
| probes.readiness.periodSeconds | int | `10` | |
| probes.readiness.successThreshold | int | `1` | |
| probes.readiness.timeoutSeconds | int | `1` | |
| probes.readinessHttpGetConfig.scheme | string | `"HTTP"` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| rootPath | string | `"/"` | Rootpath for the application |
| secret.labels | object | `{}` | |
| securityContext | object | `{"enabled":true,"fsGroup":1000}` | does not allow this, try setting securityContext: {} |
| service.annotations | object | `{}` | |
| service.externalPort | int | `8080` | |
| service.externalTrafficPolicy | string | `"Local"` | |
| service.labels | object | `{}` | |
| service.loadBalancerIP | string | `nil` | Only valid if service.type: LoadBalancer |
| service.loadBalancerSourceRanges | list | `[]` | Only valid if service.type: LoadBalancer |
| service.nodePort | string | `nil` | |
| service.servicename | string | `nil` | |
| service.targetPort | string | `nil` | from deployment above. Leave empty to use stirling-pdf directly. |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.automountServiceAccountToken | bool | `false` | |
| serviceAccount.create | bool | `true` | |
| serviceAccount.name | string | `""` | |
| serviceMonitor.enabled | bool | `false` | |
| serviceMonitor.labels | object | `{}` | |
| serviceMonitor.metricsPath | string | `"/metrics"` | |
| strategy.type | string | `"RollingUpdate"` | |
| tolerations | list | `[]` | |
| volumePermissions | object | `{"image":{"pullPolicy":"Always","registry":"docker.io","repository":"bitnami/minideb","tag":"buster"}}` | volumePermissions: Change the owner of the persistent volume mountpoint to RunAsUser:fsGroup |

View File

@@ -1,25 +0,0 @@
{{ template "chart.header" . }}
{{ template "chart.deprecationWarning" . }}
{{ template "chart.badgesSection" . }}
{{ template "chart.description" . }}
{{ template "chart.homepageLine" . }}
{{ template "chart.maintainersSection" . }}
{{ template "chart.sourcesSection" . }}
{{ template "chart.requirementsSection" . }}
## Chart Repo
Add the following repo to use the chart:
```console
helm repo add stirling-pdf https://docs.stirlingpdf.com/Stirling-PDF/
```
{{ template "chart.valuesSection" . }}

View File

@@ -1,5 +1,4 @@
extraArgs: extraArgs: []
[]
# - --storage-timestamp-tolerance 1s # - --storage-timestamp-tolerance 1s
replicaCount: 1 replicaCount: 1
strategy: strategy:
@@ -11,11 +10,12 @@ image:
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
secret: secret:
labels: {} labels: {}
# -- Labels to apply to all resources ## Labels to apply to all resources
##
commonLabels: {} commonLabels: {}
# team_name: dev # team_name: dev
# -- Rootpath for the application # rootpath for the application
rootPath: / rootPath: /
envs: [] envs: []
@@ -31,22 +31,22 @@ envs: []
# value: "en_GB" # value: "en_GB"
deployment: deployment:
# -- Stirling-pdf Deployment annotations ## stirling-pdf Deployment annotations
annotations: {} annotations: {}
# name: value # name: value
labels: {} labels: {}
# name: value # name: value
# -- Additional volumes # additional volumes
extraVolumes: [] extraVolumes: []
# - name: nginx-config # - name: nginx-config
# secret: # secret:
# secretName: nginx-config # secretName: nginx-config
# -- Additional volumes to mount # additional volumes to mount
extraVolumeMounts: [] extraVolumeMounts: []
# -- sidecarContainers for the stirling-pdf ## sidecarContainers for the stirling-pdf
# -- Can be used to add a proxy to the pod that does # Can be used to add a proxy to the pod that does
# -- scanning for secrets, signing, authentication, validation # scanning for secrets, signing, authentication, validation
# -- of the chart's content, send notifications... # of the chart's content, send notifications...
sidecarContainers: {} sidecarContainers: {}
## Example sidecarContainer which uses an extraVolume from above and ## Example sidecarContainer which uses an extraVolume from above and
## a named port that can be referenced in the service as targetPort. ## a named port that can be referenced in the service as targetPort.
@@ -60,34 +60,33 @@ deployment:
# readOnly: true # readOnly: true
# mountPath: /etc/nginx # mountPath: /etc/nginx
# -- Pod annotations ## Pod annotations
# -- ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
# -- Read more about kube2iam to provide access to s3 https://github.com/jtblin/kube2iam ## Read more about kube2iam to provide access to s3 https://github.com/jtblin/kube2iam
podAnnotations: ##
{} podAnnotations: {}
# iam.amazonaws.com/role: role-arn # iam.amazonaws.com/role: role-arn
# -- Pod labels ## Pod labels
# -- ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
podLabels: podLabels: {}
{}
# name: value # name: value
service: service:
servicename: servicename:
type: ClusterIP type: ClusterIP
externalTrafficPolicy: Local externalTrafficPolicy: Local
# -- Uses pre-assigned IP address from cloud provider ## Uses pre-assigned IP address from cloud provider
# -- Only valid if service.type: LoadBalancer ## Only valid if service.type: LoadBalancer
loadBalancerIP: loadBalancerIP:
# -- Limits which cidr blocks can connect to service's load balancer ## Limits which cidr blocks can connect to service's load balancer
# -- Only valid if service.type: LoadBalancer ## Only valid if service.type: LoadBalancer
loadBalancerSourceRanges: [] loadBalancerSourceRanges: []
# clusterIP: None # clusterIP: None
externalPort: 8080 externalPort: 8080
# -- targetPort of the container to use. If a sidecar should handle the ## targetPort of the container to use. If a sidecar should handle the
# -- requests first, use the named port from the sidecar. See sidecar example ## requests first, use the named port from the sidecar. See sidecar example
# -- from deployment above. Leave empty to use stirling-pdf directly. ## from deployment above. Leave empty to use stirling-pdf directly.
targetPort: targetPort:
nodePort: nodePort:
annotations: {} annotations: {}
@@ -134,10 +133,10 @@ serviceAccount:
## Annotations for the Service Account ## Annotations for the Service Account
annotations: {} annotations: {}
# -- UID/GID 1000 is the default user "stirling-pdf" used in # UID/GID 1000 is the default user "stirling-pdf" used in
# -- the container image starting in v0.8.0 and above. This # the container image starting in v0.8.0 and above. This
# -- is required for local persistent storage. If your cluster # is required for local persistent storage. If your cluster
# -- does not allow this, try setting securityContext: {} # does not allow this, try setting securityContext: {}
securityContext: securityContext:
enabled: true enabled: true
fsGroup: 1000 fsGroup: 1000
@@ -160,8 +159,7 @@ persistence:
enabled: false enabled: false
accessMode: ReadWriteOnce accessMode: ReadWriteOnce
size: 8Gi size: 8Gi
labels: labels: {}
{}
# name: value # name: value
path: /tmp path: /tmp
## A manually managed Persistent Volume and Claim ## A manually managed Persistent Volume and Claim
@@ -169,12 +167,13 @@ persistence:
## If defined, PVC must be created manually before volume will be bound ## If defined, PVC must be created manually before volume will be bound
# existingClaim: # existingClaim:
# -- stirling-pdf data Persistent Volume Storage Class ## stirling-pdf data Persistent Volume Storage Class
# If defined, storageClassName: <storageClass> ## If defined, storageClassName: <storageClass>
# If set to "-", storageClassName: "", which disables dynamic provisioning ## If set to "-", storageClassName: "", which disables dynamic provisioning
# If undefined (the default) or set to null, no storageClassName spec is ## If undefined (the default) or set to null, no storageClassName spec is
# set, choosing the default provisioner. (gp2 on AWS, standard on ## set, choosing the default provisioner. (gp2 on AWS, standard on
# GKE, AWS & OpenStack) ## GKE, AWS & OpenStack)
##
# storageClass: "-" # storageClass: "-"
# volumeName: # volumeName:
pv: pv:
@@ -187,8 +186,9 @@ persistence:
server: server:
path: path:
# -- Init containers parameters: ## Init containers parameters:
# -- volumePermissions: Change the owner of the persistent volume mountpoint to RunAsUser:fsGroup ## volumePermissions: Change the owner of the persistent volume mountpoint to RunAsUser:fsGroup
##
volumePermissions: volumePermissions:
image: image:
registry: docker.io registry: docker.io
@@ -202,25 +202,25 @@ volumePermissions:
# pullSecrets: # pullSecrets:
# - myRegistryKeySecretName # - myRegistryKeySecretName
# -- Ingress for load balancer ## Ingress for load balancer
ingress: ingress:
enabled: false enabled: false
pathType: "ImplementationSpecific" pathType: "ImplementationSpecific"
# -- Stirling-pdf Ingress labels ## stirling-pdf Ingress labels
labels: ##
{} labels: {}
# dns: "route53" # dns: "route53"
# -- Stirling-pdf Ingress annotations ## stirling-pdf Ingress annotations
annotations: ##
{} annotations: {}
# kubernetes.io/ingress.class: nginx # kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true" # kubernetes.io/tls-acme: "true"
# -- Stirling-pdf Ingress hostnames ## stirling-pdf Ingress hostnames
# -- Must be provided if Ingress is enabled ## Must be provided if Ingress is enabled
hosts: ##
[] hosts: []
# - name: stirling-pdf.domain1.com # - name: stirling-pdf.domain1.com
# path: / # path: /
# tls: false # tls: false
@@ -234,6 +234,7 @@ ingress:
# ## Secrets must be added manually to the namespace # ## Secrets must be added manually to the namespace
# tlsSecret: stirling-pdf.domain2-tls # tlsSecret: stirling-pdf.domain2-tls
# -- For Kubernetes >= 1.18 you should specify the ingress-controller via the field ingressClassName # For Kubernetes >= 1.18 you should specify the ingress-controller via the field ingressClassName
# -- See https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/#specifying-the-class-of-an-ingress # See https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/#specifying-the-class-of-an-ingress
ingressClassName: ingressClassName:

View File

@@ -1,2 +0,0 @@
skip-existing: true
generate-release-notes: true

View File

@@ -19,6 +19,7 @@ ignore = [
[cs_CZ] [cs_CZ]
ignore = [ ignore = [
'info',
'language.direction', 'language.direction',
'pipeline.header', 'pipeline.header',
'text', 'text',
@@ -78,6 +79,7 @@ ignore = [
'alphabet', 'alphabet',
'compare.document.1', 'compare.document.1',
'compare.document.2', 'compare.document.2',
'info',
'language.direction', 'language.direction',
'licenses.license', 'licenses.license',
'licenses.module', 'licenses.module',
@@ -85,6 +87,8 @@ ignore = [
'licenses.version', 'licenses.version',
'pdfOrganiser.mode', 'pdfOrganiser.mode',
'pipeline.title', 'pipeline.title',
'pipelineOptions.pipelineHeader',
'sponsor',
'watermark.type.2', 'watermark.type.2',
] ]
@@ -101,8 +105,11 @@ ignore = [
[hr_HR] [hr_HR]
ignore = [ ignore = [
'PDFToBook.selectText.1', 'PDFToBook.selectText.1',
'font',
'home.pipeline.title', 'home.pipeline.title',
'info',
'language.direction', 'language.direction',
'pdfOrganiser.tags',
'showJS.tags', 'showJS.tags',
] ]
@@ -118,6 +125,7 @@ ignore = [
[it_IT] [it_IT]
ignore = [ ignore = [
'font',
'language.direction', 'language.direction',
'no', 'no',
'password', 'password',
@@ -140,10 +148,18 @@ ignore = [
[nl_NL] [nl_NL]
ignore = [ ignore = [
'HTMLToPDF.print',
'adjustContrast.contrast',
'compare.document.1', 'compare.document.1',
'compare.document.2', 'compare.document.2',
'error',
'getPdfInfo.downloadJson',
'help',
'info',
'language.direction', 'language.direction',
'navbar.allTools', 'navbar.allTools',
'printFile.submit',
'showJS.downloadJS',
'sponsor', 'sponsor',
] ]
@@ -165,6 +181,7 @@ ignore = [
[pt_BR] [pt_BR]
ignore = [ ignore = [
'changeMetadata.trapped',
'language.direction', 'language.direction',
'pipelineOptions.pipelineHeader', 'pipelineOptions.pipelineHeader',
] ]
@@ -210,6 +227,7 @@ ignore = [
[th_TH] [th_TH]
ignore = [ ignore = [
'language.direction', 'language.direction',
'pipeline.title',
'pipelineOptions.pipelineHeader', 'pipelineOptions.pipelineHeader',
'showJS.tags', 'showJS.tags',
] ]

View File

@@ -1,20 +0,0 @@
#!/bin/bash
# Check if a key was provided
if [ $# -eq 0 ]; then
echo "Please provide a key to remove."
exit 1
fi
key_to_remove="$1"
for file in ../src/main/resources/messages_*.properties; do
# If the key ends with a dot, remove all keys starting with it
if [[ "$key_to_remove" == *. ]]; then
sed -i "/^${key_to_remove//./\\.}/d" "$file"
else
# Otherwise, remove only the exact key match
sed -i "/^${key_to_remove//./\\.}=/d" "$file"
fi
echo "Updated $file"
done

View File

@@ -1,19 +1,22 @@
package stirling.software.SPDF.EE; package stirling.software.SPDF.EE;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import lombok.extern.slf4j.Slf4j;
import stirling.software.SPDF.model.ApplicationProperties; import stirling.software.SPDF.model.ApplicationProperties;
@Configuration @Configuration
@Lazy @Lazy
@Slf4j
public class EEAppConfig { public class EEAppConfig {
private static final Logger logger = LoggerFactory.getLogger(EEAppConfig.class);
@Autowired ApplicationProperties applicationProperties; @Autowired ApplicationProperties applicationProperties;
@Autowired private LicenseKeyChecker licenseKeyChecker; @Autowired private LicenseKeyChecker licenseKeyChecker;
@Bean(name = "runningEE") @Bean(name = "runningEE")

View File

@@ -15,7 +15,6 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import org.springframework.context.annotation.Scope;
import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource; import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader; import org.springframework.core.io.ResourceLoader;
@@ -163,14 +162,12 @@ public class AppConfig {
} }
@Bean(name = "analyticsPrompt") @Bean(name = "analyticsPrompt")
@Scope("request")
public boolean analyticsPrompt() { public boolean analyticsPrompt() {
return applicationProperties.getSystem().getEnableAnalytics() == null return applicationProperties.getSystem().getEnableAnalytics() == null
|| "undefined".equals(applicationProperties.getSystem().getEnableAnalytics()); || "undefined".equals(applicationProperties.getSystem().getEnableAnalytics());
} }
@Bean(name = "analyticsEnabled") @Bean(name = "analyticsEnabled")
@Scope("request")
public boolean analyticsEnabled() { public boolean analyticsEnabled() {
if (applicationProperties.getEnterpriseEdition().isEnabled()) return true; if (applicationProperties.getEnterpriseEdition().isEnabled()) return true;
return applicationProperties.getSystem().getEnableAnalytics() != null return applicationProperties.getSystem().getEnableAnalytics() != null

View File

@@ -5,7 +5,6 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
import java.util.stream.Collectors;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@@ -43,7 +42,7 @@ public class EndpointConfiguration {
public void disableEndpoint(String endpoint) { public void disableEndpoint(String endpoint) {
if (!endpointStatuses.containsKey(endpoint) || endpointStatuses.get(endpoint) != false) { if (!endpointStatuses.containsKey(endpoint) || endpointStatuses.get(endpoint) != false) {
logger.debug("Disabling {}", endpoint); logger.info("Disabling {}", endpoint);
endpointStatuses.put(endpoint, false); endpointStatuses.put(endpoint, false);
} }
} }
@@ -77,23 +76,6 @@ public class EndpointConfiguration {
} }
} }
public void logDisabledEndpointsSummary() {
List<String> disabledList =
endpointStatuses.entrySet().stream()
.filter(entry -> !entry.getValue()) // only get disabled endpoints (value
// is false)
.map(Map.Entry::getKey)
.sorted()
.collect(Collectors.toList());
if (!disabledList.isEmpty()) {
logger.info(
"Total disabled endpoints: {}. Disabled endpoints: {}",
disabledList.size(),
String.join(", ", disabledList));
}
}
public void init() { public void init() {
// Adding endpoints to "PageOps" group // Adding endpoints to "PageOps" group
addEndpointToGroup("PageOps", "remove-pages"); addEndpointToGroup("PageOps", "remove-pages");
@@ -181,12 +163,14 @@ public class EndpointConfiguration {
// python // python
addEndpointToGroup("Python", "extract-image-scans"); addEndpointToGroup("Python", "extract-image-scans");
addEndpointToGroup("Python", REMOVE_BLANKS);
addEndpointToGroup("Python", "html-to-pdf"); addEndpointToGroup("Python", "html-to-pdf");
addEndpointToGroup("Python", "url-to-pdf"); addEndpointToGroup("Python", "url-to-pdf");
addEndpointToGroup("Python", "pdf-to-img"); addEndpointToGroup("Python", "pdf-to-img");
// openCV // openCV
addEndpointToGroup("OpenCV", "extract-image-scans"); addEndpointToGroup("OpenCV", "extract-image-scans");
addEndpointToGroup("OpenCV", REMOVE_BLANKS);
// LibreOffice // LibreOffice
addEndpointToGroup("LibreOffice", "repair"); addEndpointToGroup("LibreOffice", "repair");
@@ -246,17 +230,6 @@ public class EndpointConfiguration {
addEndpointToGroup("Javascript", "sign"); addEndpointToGroup("Javascript", "sign");
addEndpointToGroup("Javascript", "compare"); addEndpointToGroup("Javascript", "compare");
addEndpointToGroup("Javascript", "adjust-contrast"); addEndpointToGroup("Javascript", "adjust-contrast");
// Ghostscript dependent endpoints
addEndpointToGroup("Ghostscript", "compress-pdf");
addEndpointToGroup("Ghostscript", "pdf-to-pdfa");
// Weasyprint dependent endpoints
addEndpointToGroup("Weasyprint", "html-to-pdf");
addEndpointToGroup("Weasyprint", "url-to-pdf");
// Pdftohtml dependent endpoints
addEndpointToGroup("Pdftohtml", "pdf-to-html");
} }
private void processEnvironmentConfigs() { private void processEnvironmentConfigs() {
@@ -278,9 +251,5 @@ public class EndpointConfiguration {
} }
} }
public Set<String> getEndpointsForGroup(String group) {
return endpointGroups.getOrDefault(group, new HashSet<>());
}
private static final String REMOVE_BLANKS = "remove-blanks"; private static final String REMOVE_BLANKS = "remove-blanks";
} }

View File

@@ -1,146 +0,0 @@
package stirling.software.SPDF.config;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import jakarta.annotation.PostConstruct;
import lombok.extern.slf4j.Slf4j;
@Configuration
@Slf4j
public class ExternalAppDepConfig {
@Autowired private EndpointConfiguration endpointConfiguration;
private boolean isCommandAvailable(String command) {
try {
ProcessBuilder processBuilder = new ProcessBuilder();
if (System.getProperty("os.name").toLowerCase().contains("windows")) {
processBuilder.command("where", command);
} else {
processBuilder.command("which", command);
}
Process process = processBuilder.start();
int exitCode = process.waitFor();
return exitCode == 0;
} catch (Exception e) {
log.debug("Error checking for command {}: {}", command, e.getMessage());
return false;
}
}
private final Map<String, List<String>> commandToGroupMapping =
new HashMap<>() {
{
put("gs", List.of("Ghostscript"));
put("soffice", List.of("LibreOffice"));
put("ocrmypdf", List.of("OCRmyPDF"));
put("weasyprint", List.of("Weasyprint"));
put("pdftohtml", List.of("Pdftohtml"));
}
};
private List<String> getAffectedFeatures(String group) {
return endpointConfiguration.getEndpointsForGroup(group).stream()
.map(endpoint -> formatEndpointAsFeature(endpoint))
.collect(Collectors.toList());
}
private String formatEndpointAsFeature(String endpoint) {
// First replace common terms
String feature = endpoint.replace("-", " ").replace("pdf", "PDF").replace("img", "image");
// Split into words and capitalize each word
return Arrays.stream(feature.split("\\s+"))
.map(word -> capitalizeWord(word))
.collect(Collectors.joining(" "));
}
private String capitalizeWord(String word) {
if (word.isEmpty()) {
return word;
}
if ("pdf".equalsIgnoreCase(word)) {
return "PDF";
}
return word.substring(0, 1).toUpperCase() + word.substring(1).toLowerCase();
}
private void checkDependencyAndDisableGroup(String command) {
boolean isAvailable = isCommandAvailable(command);
if (!isAvailable) {
List<String> affectedGroups = commandToGroupMapping.get(command);
if (affectedGroups != null) {
for (String group : affectedGroups) {
List<String> affectedFeatures = getAffectedFeatures(group);
endpointConfiguration.disableGroup(group);
log.warn(
"Missing dependency: {} - Disabling group: {} (Affected features: {})",
command,
group,
affectedFeatures != null && !affectedFeatures.isEmpty()
? String.join(", ", affectedFeatures)
: "unknown");
}
}
}
}
@PostConstruct
public void checkDependencies() {
// Check core dependencies
checkDependencyAndDisableGroup("gs");
checkDependencyAndDisableGroup("soffice");
checkDependencyAndDisableGroup("ocrmypdf");
checkDependencyAndDisableGroup("weasyprint");
checkDependencyAndDisableGroup("pdftohtml");
// Special handling for Python/OpenCV dependencies
boolean pythonAvailable = isCommandAvailable("python3") || isCommandAvailable("python");
if (!pythonAvailable) {
List<String> pythonFeatures = getAffectedFeatures("Python");
List<String> openCVFeatures = getAffectedFeatures("OpenCV");
endpointConfiguration.disableGroup("Python");
endpointConfiguration.disableGroup("OpenCV");
log.warn(
"Missing dependency: Python - Disabling Python features: {} and OpenCV features: {}",
String.join(", ", pythonFeatures),
String.join(", ", openCVFeatures));
} else {
// If Python is available, check for OpenCV
try {
ProcessBuilder processBuilder = new ProcessBuilder();
if (System.getProperty("os.name").toLowerCase().contains("windows")) {
processBuilder.command("python", "-c", "import cv2");
} else {
processBuilder.command("python3", "-c", "import cv2");
}
Process process = processBuilder.start();
int exitCode = process.waitFor();
if (exitCode != 0) {
List<String> openCVFeatures = getAffectedFeatures("OpenCV");
endpointConfiguration.disableGroup("OpenCV");
log.warn(
"OpenCV not available in Python - Disabling OpenCV features: {}",
String.join(", ", openCVFeatures));
}
} catch (Exception e) {
List<String> openCVFeatures = getAffectedFeatures("OpenCV");
endpointConfiguration.disableGroup("OpenCV");
log.warn(
"Error checking OpenCV: {} - Disabling OpenCV features: {}",
e.getMessage(),
String.join(", ", openCVFeatures));
}
}
endpointConfiguration.logDisabledEndpointsSummary();
}
}

View File

@@ -8,8 +8,6 @@ import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order; import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import io.micrometer.common.util.StringUtils;
import jakarta.annotation.PostConstruct; import jakarta.annotation.PostConstruct;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import stirling.software.SPDF.model.ApplicationProperties; import stirling.software.SPDF.model.ApplicationProperties;
@@ -41,23 +39,4 @@ public class InitialSetup {
applicationProperties.getAutomaticallyGenerated().setKey(secretKey); applicationProperties.getAutomaticallyGenerated().setKey(secretKey);
} }
} }
@PostConstruct
public void initLegalUrls() throws IOException {
// Initialize Terms and Conditions
String termsUrl = applicationProperties.getLegal().getTermsAndConditions();
if (StringUtils.isEmpty(termsUrl)) {
String defaultTermsUrl = "https://www.stirlingpdf.com/terms-and-conditions";
GeneralUtils.saveKeyToConfig("legal.termsAndConditions", defaultTermsUrl);
applicationProperties.getLegal().setTermsAndConditions(defaultTermsUrl);
}
// Initialize Privacy Policy
String privacyUrl = applicationProperties.getLegal().getPrivacyPolicy();
if (StringUtils.isEmpty(privacyUrl)) {
String defaultPrivacyUrl = "https://www.stirlingpdf.com/privacy-policy";
GeneralUtils.saveKeyToConfig("legal.privacyPolicy", defaultPrivacyUrl);
applicationProperties.getLegal().setPrivacyPolicy(defaultPrivacyUrl);
}
}
} }

View File

@@ -36,8 +36,6 @@ import org.springframework.security.saml2.provider.service.web.authentication.Sa
import org.springframework.security.web.SecurityFilterChain; import org.springframework.security.web.SecurityFilterChain;
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
import org.springframework.security.web.authentication.rememberme.PersistentTokenRepository; import org.springframework.security.web.authentication.rememberme.PersistentTokenRepository;
import org.springframework.security.web.csrf.CookieCsrfTokenRepository;
import org.springframework.security.web.csrf.CsrfTokenRequestAttributeHandler;
import org.springframework.security.web.savedrequest.NullRequestCache; import org.springframework.security.web.savedrequest.NullRequestCache;
import org.springframework.security.web.util.matcher.AntPathRequestMatcher; import org.springframework.security.web.util.matcher.AntPathRequestMatcher;
@@ -96,41 +94,6 @@ public class SecurityConfiguration {
userAuthenticationFilter, UsernamePasswordAuthenticationFilter.class); userAuthenticationFilter, UsernamePasswordAuthenticationFilter.class);
if (applicationProperties.getSecurity().getCsrfDisabled()) { if (applicationProperties.getSecurity().getCsrfDisabled()) {
http.csrf(csrf -> csrf.disable()); http.csrf(csrf -> csrf.disable());
} else {
CookieCsrfTokenRepository cookieRepo =
CookieCsrfTokenRepository.withHttpOnlyFalse();
CsrfTokenRequestAttributeHandler requestHandler =
new CsrfTokenRequestAttributeHandler();
requestHandler.setCsrfRequestAttributeName(null);
http.csrf(
csrf ->
csrf.ignoringRequestMatchers(
request -> {
String apiKey = request.getHeader("X-API-Key");
// If there's no API key, don't ignore CSRF
// (return false)
if (apiKey == null || apiKey.trim().isEmpty()) {
return false;
}
// Validate API key using existing UserService
try {
Optional<User> user =
userService.getUserByApiKey(apiKey);
// If API key is valid, ignore CSRF (return
// true)
// If API key is invalid, don't ignore CSRF
// (return false)
return user.isPresent();
} catch (Exception e) {
// If there's any error validating the API
// key, don't ignore CSRF
return false;
}
})
.csrfTokenRepository(cookieRepo)
.csrfTokenRequestHandler(requestHandler));
} }
http.addFilterBefore(rateLimitingFilter(), UsernamePasswordAuthenticationFilter.class); http.addFilterBefore(rateLimitingFilter(), UsernamePasswordAuthenticationFilter.class);
http.addFilterAfter(firstLoginFilter, UsernamePasswordAuthenticationFilter.class); http.addFilterAfter(firstLoginFilter, UsernamePasswordAuthenticationFilter.class);
@@ -150,7 +113,6 @@ public class SecurityConfiguration {
logout.logoutRequestMatcher(new AntPathRequestMatcher("/logout")) logout.logoutRequestMatcher(new AntPathRequestMatcher("/logout"))
.logoutSuccessHandler( .logoutSuccessHandler(
new CustomLogoutSuccessHandler(applicationProperties)) new CustomLogoutSuccessHandler(applicationProperties))
.clearAuthentication(true)
.invalidateHttpSession(true) // Invalidate session .invalidateHttpSession(true) // Invalidate session
.deleteCookies("JSESSIONID", "remember-me")); .deleteCookies("JSESSIONID", "remember-me"));
http.rememberMe( http.rememberMe(
@@ -241,8 +203,7 @@ public class SecurityConfiguration {
} }
// Handle SAML // Handle SAML
if (applicationProperties.getSecurity().isSaml2Activ() if (applicationProperties.getSecurity().isSaml2Activ()) {
&& applicationProperties.getSystem().getEnableAlphaFunctionality()) {
http.authenticationProvider(samlAuthenticationProvider()); http.authenticationProvider(samlAuthenticationProvider());
http.saml2Login( http.saml2Login(
saml2 -> saml2 ->
@@ -261,16 +222,6 @@ public class SecurityConfiguration {
} else { } else {
if (applicationProperties.getSecurity().getCsrfDisabled()) { if (applicationProperties.getSecurity().getCsrfDisabled()) {
http.csrf(csrf -> csrf.disable()); http.csrf(csrf -> csrf.disable());
} else {
CookieCsrfTokenRepository cookieRepo =
CookieCsrfTokenRepository.withHttpOnlyFalse();
CsrfTokenRequestAttributeHandler requestHandler =
new CsrfTokenRequestAttributeHandler();
requestHandler.setCsrfRequestAttributeName(null);
http.csrf(
csrf ->
csrf.csrfTokenRepository(cookieRepo)
.csrfTokenRequestHandler(requestHandler));
} }
http.authorizeHttpRequests(authz -> authz.anyRequest().permitAll()); http.authorizeHttpRequests(authz -> authz.anyRequest().permitAll());
} }
@@ -423,10 +374,6 @@ public class SecurityConfiguration {
} }
@Bean @Bean
@ConditionalOnProperty(
name = "security.saml2.enabled",
havingValue = "true",
matchIfMissing = false)
public RelyingPartyRegistrationRepository relyingPartyRegistrations() throws Exception { public RelyingPartyRegistrationRepository relyingPartyRegistrations() throws Exception {
SAML2 samlConf = applicationProperties.getSecurity().getSaml2(); SAML2 samlConf = applicationProperties.getSecurity().getSaml2();

View File

@@ -45,6 +45,10 @@ public class UserService implements UserServiceInterface {
@Autowired DatabaseBackupInterface databaseBackupHelper; @Autowired DatabaseBackupInterface databaseBackupHelper;
public long getTotalUserCount() {
return userRepository.count();
}
// Handle OAUTH2 login and user auto creation. // Handle OAUTH2 login and user auto creation.
public boolean processOAuth2PostLogin(String username, boolean autoCreateUser) public boolean processOAuth2PostLogin(String username, boolean autoCreateUser)
throws IllegalArgumentException, IOException { throws IllegalArgumentException, IOException {
@@ -358,9 +362,4 @@ public class UserService implements UserServiceInterface {
return principal.toString(); return principal.toString();
} }
} }
@Override
public long getTotalUsersCount() {
return userRepository.count();
}
} }

View File

@@ -1,42 +1,48 @@
package stirling.software.SPDF.config.security.saml2; package stirling.software.SPDF.config.security.saml2;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.security.KeyFactory; import java.security.KeyFactory;
import java.security.cert.CertificateFactory; import java.security.cert.CertificateFactory;
import java.security.cert.X509Certificate; import java.security.cert.X509Certificate;
import java.security.interfaces.RSAPrivateKey; import java.security.interfaces.RSAPrivateKey;
import java.security.spec.PKCS8EncodedKeySpec; import java.security.spec.PKCS8EncodedKeySpec;
import java.util.Base64;
import org.bouncycastle.util.io.pem.PemObject;
import org.bouncycastle.util.io.pem.PemReader;
import org.springframework.core.io.Resource; import org.springframework.core.io.Resource;
import org.springframework.util.FileCopyUtils;
public class CertificateUtils { public class CertificateUtils {
public static X509Certificate readCertificate(Resource certificateResource) throws Exception { public static X509Certificate readCertificate(Resource certificateResource) throws Exception {
try (PemReader pemReader = String certificateString =
new PemReader( new String(
new InputStreamReader( FileCopyUtils.copyToByteArray(certificateResource.getInputStream()),
certificateResource.getInputStream(), StandardCharsets.UTF_8))) { StandardCharsets.UTF_8);
PemObject pemObject = pemReader.readPemObject(); String certContent =
byte[] decodedCert = pemObject.getContent(); certificateString
CertificateFactory cf = CertificateFactory.getInstance("X.509"); .replace("-----BEGIN CERTIFICATE-----", "")
return (X509Certificate) cf.generateCertificate(new ByteArrayInputStream(decodedCert)); .replace("-----END CERTIFICATE-----", "")
} .replaceAll("\\R", "")
.replaceAll("\\s+", "");
CertificateFactory cf = CertificateFactory.getInstance("X.509");
byte[] decodedCert = Base64.getDecoder().decode(certContent);
return (X509Certificate) cf.generateCertificate(new ByteArrayInputStream(decodedCert));
} }
public static RSAPrivateKey readPrivateKey(Resource privateKeyResource) throws Exception { public static RSAPrivateKey readPrivateKey(Resource privateKeyResource) throws Exception {
try (PemReader pemReader = String privateKeyString =
new PemReader( new String(
new InputStreamReader( FileCopyUtils.copyToByteArray(privateKeyResource.getInputStream()),
privateKeyResource.getInputStream(), StandardCharsets.UTF_8))) { StandardCharsets.UTF_8);
PemObject pemObject = pemReader.readPemObject(); String privateKeyContent =
byte[] decodedKey = pemObject.getContent(); privateKeyString
return (RSAPrivateKey) .replace("-----BEGIN PRIVATE KEY-----", "")
KeyFactory.getInstance("RSA") .replace("-----END PRIVATE KEY-----", "")
.generatePrivate(new PKCS8EncodedKeySpec(decodedKey)); .replaceAll("\\R", "")
} .replaceAll("\\s+", "");
KeyFactory kf = KeyFactory.getInstance("RSA");
byte[] decodedKey = Base64.getDecoder().decode(privateKeyContent);
return (RSAPrivateKey) kf.generatePrivate(new PKCS8EncodedKeySpec(decodedKey));
} }
} }

View File

@@ -1,65 +0,0 @@
package stirling.software.SPDF.controller.api;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.v3.oas.annotations.Hidden;
import jakarta.servlet.http.HttpServletResponse;
import stirling.software.SPDF.service.LanguageService;
@RestController
@RequestMapping("/js")
public class AdditionalLanguageJsController {
@Autowired private LanguageService languageService;
@Hidden
@GetMapping(value = "/additionalLanguageCode.js", produces = "application/javascript")
public void generateAdditionalLanguageJs(HttpServletResponse response) throws IOException {
List<String> supportedLanguages = languageService.getSupportedLanguages();
response.setContentType("application/javascript");
PrintWriter writer = response.getWriter();
// Erstelle das JavaScript dynamisch
writer.println("const supportedLanguages = " + toJsonArray(supportedLanguages) + ";");
// Generiere die `getDetailedLanguageCode`-Funktion
writer.println(
"""
function getDetailedLanguageCode() {
const userLanguages = navigator.languages ? navigator.languages : [navigator.language];
for (let lang of userLanguages) {
let matchedLang = supportedLanguages.find(supportedLang => supportedLang.startsWith(lang.replace('-', '_')));
if (matchedLang) {
return matchedLang;
}
}
// Fallback
return "en_GB";
}
""");
writer.flush();
}
// Hilfsfunktion zum Konvertieren der Liste in ein JSON-Array
private String toJsonArray(List<String> list) {
StringBuilder jsonArray = new StringBuilder("[");
for (int i = 0; i < list.size(); i++) {
jsonArray.append("\"").append(list.get(i)).append("\"");
if (i < list.size() - 1) {
jsonArray.append(",");
}
}
jsonArray.append("]");
return jsonArray.toString();
}
}

View File

@@ -32,7 +32,6 @@ public class SettingsController {
} }
GeneralUtils.saveKeyToConfig("system.enableAnalytics", String.valueOf(enabled), false); GeneralUtils.saveKeyToConfig("system.enableAnalytics", String.valueOf(enabled), false);
applicationProperties.getSystem().setEnableAnalytics(String.valueOf(enabled)); applicationProperties.getSystem().setEnableAnalytics(String.valueOf(enabled));
return ResponseEntity.ok("Updated"); return ResponseEntity.ok("Updated");
} }
} }

View File

@@ -4,6 +4,4 @@ public interface UserServiceInterface {
String getApiKeyForUser(String username); String getApiKeyForUser(String username);
String getCurrentUsername(); String getCurrentUsername();
long getTotalUsersCount();
} }

View File

@@ -1,14 +1,10 @@
package stirling.software.SPDF.controller.api.security; package stirling.software.SPDF.controller.api.security;
import java.awt.Color;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader; import java.io.InputStreamReader;
import java.io.OutputStream; import java.io.OutputStream;
import java.nio.file.Files;
import java.security.KeyStore; import java.security.KeyStore;
import java.security.KeyStoreException; import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException; import java.security.NoSuchAlgorithmException;
@@ -18,39 +14,12 @@ import java.security.UnrecoverableKeyException;
import java.security.cert.Certificate; import java.security.cert.Certificate;
import java.security.cert.CertificateException; import java.security.cert.CertificateException;
import java.security.cert.CertificateFactory; import java.security.cert.CertificateFactory;
import java.security.cert.X509Certificate;
import java.util.Calendar; import java.util.Calendar;
import java.util.List;
import org.apache.commons.io.FileUtils;
import org.apache.pdfbox.examples.signature.CreateSignatureBase; import org.apache.pdfbox.examples.signature.CreateSignatureBase;
import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.PDPageContentStream;
import org.apache.pdfbox.pdmodel.PDResources;
import org.apache.pdfbox.pdmodel.common.PDRectangle;
import org.apache.pdfbox.pdmodel.common.PDStream;
import org.apache.pdfbox.pdmodel.font.PDFont;
import org.apache.pdfbox.pdmodel.font.PDType1Font;
import org.apache.pdfbox.pdmodel.font.Standard14Fonts.FontName;
import org.apache.pdfbox.pdmodel.graphics.blend.BlendMode;
import org.apache.pdfbox.pdmodel.graphics.form.PDFormXObject;
import org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject;
import org.apache.pdfbox.pdmodel.graphics.state.PDExtendedGraphicsState;
import org.apache.pdfbox.pdmodel.interactive.annotation.PDAnnotationWidget;
import org.apache.pdfbox.pdmodel.interactive.annotation.PDAppearanceDictionary;
import org.apache.pdfbox.pdmodel.interactive.annotation.PDAppearanceStream;
import org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature; import org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature;
import org.apache.pdfbox.pdmodel.interactive.digitalsignature.SignatureOptions;
import org.apache.pdfbox.pdmodel.interactive.form.PDAcroForm;
import org.apache.pdfbox.pdmodel.interactive.form.PDField;
import org.apache.pdfbox.pdmodel.interactive.form.PDSignatureField;
import org.apache.pdfbox.util.Matrix;
import org.bouncycastle.asn1.pkcs.PrivateKeyInfo; import org.bouncycastle.asn1.pkcs.PrivateKeyInfo;
import org.bouncycastle.asn1.x500.RDN;
import org.bouncycastle.asn1.x500.X500Name;
import org.bouncycastle.asn1.x500.style.BCStyle;
import org.bouncycastle.asn1.x500.style.IETFUtils;
import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.bouncycastle.jce.provider.BouncyCastleProvider;
import org.bouncycastle.openssl.PEMDecryptorProvider; import org.bouncycastle.openssl.PEMDecryptorProvider;
import org.bouncycastle.openssl.PEMEncryptedKeyPair; import org.bouncycastle.openssl.PEMEncryptedKeyPair;
@@ -66,7 +35,6 @@ import org.bouncycastle.pkcs.PKCSException;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.ClassPathResource;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
@@ -94,8 +62,6 @@ public class CertSignController {
} }
class CreateSignature extends CreateSignatureBase { class CreateSignature extends CreateSignatureBase {
File logoFile;
public CreateSignature(KeyStore keystore, char[] pin) public CreateSignature(KeyStore keystore, char[] pin)
throws KeyStoreException, throws KeyStoreException,
UnrecoverableKeyException, UnrecoverableKeyException,
@@ -103,101 +69,6 @@ public class CertSignController {
IOException, IOException,
CertificateException { CertificateException {
super(keystore, pin); super(keystore, pin);
ClassPathResource resource = new ClassPathResource("static/images/signature.png");
try (InputStream is = resource.getInputStream()) {
logoFile = Files.createTempFile("signature", ".png").toFile();
FileUtils.copyInputStreamToFile(is, logoFile);
} catch (IOException e) {
logger.error("Failed to load image signature file");
throw e;
}
}
public InputStream createVisibleSignature(
PDDocument srcDoc, PDSignature signature, Integer pageNumber, Boolean showLogo)
throws IOException {
// modified from org.apache.pdfbox.examples.signature.CreateVisibleSignature2
try (PDDocument doc = new PDDocument()) {
PDPage page = new PDPage(srcDoc.getPage(pageNumber).getMediaBox());
doc.addPage(page);
PDAcroForm acroForm = new PDAcroForm(doc);
doc.getDocumentCatalog().setAcroForm(acroForm);
PDSignatureField signatureField = new PDSignatureField(acroForm);
PDAnnotationWidget widget = signatureField.getWidgets().get(0);
List<PDField> acroFormFields = acroForm.getFields();
acroForm.setSignaturesExist(true);
acroForm.setAppendOnly(true);
acroForm.getCOSObject().setDirect(true);
acroFormFields.add(signatureField);
PDRectangle rect = new PDRectangle(0, 0, 200, 50);
widget.setRectangle(rect);
// from PDVisualSigBuilder.createHolderForm()
PDStream stream = new PDStream(doc);
PDFormXObject form = new PDFormXObject(stream);
PDResources res = new PDResources();
form.setResources(res);
form.setFormType(1);
PDRectangle bbox = new PDRectangle(rect.getWidth(), rect.getHeight());
float height = bbox.getHeight();
form.setBBox(bbox);
PDFont font = new PDType1Font(FontName.TIMES_BOLD);
// from PDVisualSigBuilder.createAppearanceDictionary()
PDAppearanceDictionary appearance = new PDAppearanceDictionary();
appearance.getCOSObject().setDirect(true);
PDAppearanceStream appearanceStream = new PDAppearanceStream(form.getCOSObject());
appearance.setNormalAppearance(appearanceStream);
widget.setAppearance(appearance);
try (PDPageContentStream cs = new PDPageContentStream(doc, appearanceStream)) {
if (showLogo) {
cs.saveGraphicsState();
PDExtendedGraphicsState extState = new PDExtendedGraphicsState();
extState.setBlendMode(BlendMode.MULTIPLY);
extState.setNonStrokingAlphaConstant(0.5f);
cs.setGraphicsStateParameters(extState);
cs.transform(Matrix.getScaleInstance(0.08f, 0.08f));
PDImageXObject img =
PDImageXObject.createFromFileByExtension(logoFile, doc);
cs.drawImage(img, 100, 0);
cs.restoreGraphicsState();
}
// show text
float fontSize = 10;
float leading = fontSize * 1.5f;
cs.beginText();
cs.setFont(font, fontSize);
cs.setNonStrokingColor(Color.black);
cs.newLineAtOffset(fontSize, height - leading);
cs.setLeading(leading);
X509Certificate cert = (X509Certificate) getCertificateChain()[0];
// https://stackoverflow.com/questions/2914521/
X500Name x500Name = new X500Name(cert.getSubjectX500Principal().getName());
RDN cn = x500Name.getRDNs(BCStyle.CN)[0];
String name = IETFUtils.valueToString(cn.getFirst().getValue());
String date = signature.getSignDate().getTime().toString();
String reason = signature.getReason();
cs.showText("Signed by " + name);
cs.newLine();
cs.showText(date);
cs.newLine();
cs.showText(reason);
cs.endText();
}
ByteArrayOutputStream baos = new ByteArrayOutputStream();
doc.save(baos);
return new ByteArrayInputStream(baos.toByteArray());
}
} }
} }
@@ -226,8 +97,7 @@ public class CertSignController {
String reason = request.getReason(); String reason = request.getReason();
String location = request.getLocation(); String location = request.getLocation();
String name = request.getName(); String name = request.getName();
Integer pageNumber = request.getPageNumber() - 1; Integer pageNumber = request.getPageNumber();
Boolean showLogo = request.isShowLogo();
if (certType == null) { if (certType == null) {
throw new IllegalArgumentException("Cert type must be provided"); throw new IllegalArgumentException("Cert type must be provided");
@@ -256,19 +126,11 @@ public class CertSignController {
throw new IllegalArgumentException("Invalid cert type: " + certType); throw new IllegalArgumentException("Invalid cert type: " + certType);
} }
// TODO: page number
CreateSignature createSignature = new CreateSignature(ks, password.toCharArray()); CreateSignature createSignature = new CreateSignature(ks, password.toCharArray());
ByteArrayOutputStream baos = new ByteArrayOutputStream(); ByteArrayOutputStream baos = new ByteArrayOutputStream();
sign( sign(pdfDocumentFactory, pdf.getBytes(), baos, createSignature, name, location, reason);
pdfDocumentFactory,
pdf.getBytes(),
baos,
createSignature,
showSignature,
pageNumber,
name,
location,
reason,
showLogo);
return WebResponseUtils.boasToWebResponse( return WebResponseUtils.boasToWebResponse(
baos, baos,
Filenames.toSimpleFileName(pdf.getOriginalFilename()).replaceFirst("[.][^.]+$", "") Filenames.toSimpleFileName(pdf.getOriginalFilename()).replaceFirst("[.][^.]+$", "")
@@ -280,12 +142,9 @@ public class CertSignController {
byte[] input, byte[] input,
OutputStream output, OutputStream output,
CreateSignature instance, CreateSignature instance,
Boolean showSignature,
Integer pageNumber,
String name, String name,
String location, String location,
String reason, String reason) {
Boolean showLogo) {
try (PDDocument doc = pdfDocumentFactory.load(input)) { try (PDDocument doc = pdfDocumentFactory.load(input)) {
PDSignature signature = new PDSignature(); PDSignature signature = new PDSignature();
signature.setFilter(PDSignature.FILTER_ADOBE_PPKLITE); signature.setFilter(PDSignature.FILTER_ADOBE_PPKLITE);
@@ -295,17 +154,7 @@ public class CertSignController {
signature.setReason(reason); signature.setReason(reason);
signature.setSignDate(Calendar.getInstance()); signature.setSignDate(Calendar.getInstance());
if (showSignature) { doc.addSignature(signature, instance);
SignatureOptions signatureOptions = new SignatureOptions();
signatureOptions.setVisualSignature(
instance.createVisibleSignature(doc, signature, pageNumber, showLogo));
signatureOptions.setPage(pageNumber);
doc.addSignature(signature, instance, signatureOptions);
} else {
doc.addSignature(signature, instance);
}
doc.saveIncremental(output); doc.saveIncremental(output);
} catch (Exception e) { } catch (Exception e) {
logger.error("exception", e); logger.error("exception", e);

View File

@@ -89,9 +89,10 @@ public class AccountWebController {
} }
SAML2 saml2 = securityProps.getSaml2(); SAML2 saml2 = securityProps.getSaml2();
if (securityProps.isSaml2Activ() if (saml2 != null) {
&& applicationProperties.getSystem().getEnableAlphaFunctionality()) { if (saml2.getEnabled()) {
providerList.put("/saml2/authenticate/" + saml2.getRegistrationId(), "SAML 2"); providerList.put("/saml2/authenticate/" + saml2.getRegistrationId(), "SAML 2");
}
} }
// Remove any null keys/values from the providerList // Remove any null keys/values from the providerList
providerList providerList
@@ -100,8 +101,7 @@ public class AccountWebController {
model.addAttribute("providerlist", providerList); model.addAttribute("providerlist", providerList);
model.addAttribute("loginMethod", securityProps.getLoginMethod()); model.addAttribute("loginMethod", securityProps.getLoginMethod());
boolean altLogin = providerList.size() > 0 ? securityProps.isAltLogin() : false; model.addAttribute("altLogin", securityProps.isAltLogin());
model.addAttribute("altLogin", altLogin);
model.addAttribute("currentPage", "login"); model.addAttribute("currentPage", "login");
@@ -164,17 +164,6 @@ public class AccountWebController {
case "userIsDisabled": case "userIsDisabled":
erroroauth = "login.userIsDisabled"; erroroauth = "login.userIsDisabled";
break; break;
case "invalid_destination":
erroroauth = "login.invalid_destination";
break;
// Valid InResponseTo was not available from the validation context, unable to
// evaluate
case "invalid_in_response_to":
erroroauth = "login.invalid_in_response_to";
break;
case "not_authentication_provider_found":
erroroauth = "login.not_authentication_provider_found";
break;
default: default:
break; break;
} }

View File

@@ -31,10 +31,6 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import io.swagger.v3.oas.annotations.Hidden; import io.swagger.v3.oas.annotations.Hidden;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import stirling.software.SPDF.controller.api.pipeline.UserServiceInterface;
import stirling.software.SPDF.model.SignatureFile;
import stirling.software.SPDF.service.SignatureService;
@Controller @Controller
@Tag(name = "General", description = "General APIs") @Tag(name = "General", description = "General APIs")
public class GeneralWebController { public class GeneralWebController {
@@ -175,28 +171,11 @@ public class GeneralWebController {
return "split-pdfs"; return "split-pdfs";
} }
private static final String SIGNATURE_BASE_PATH = "customFiles/static/signatures/";
private static final String ALL_USERS_FOLDER = "ALL_USERS";
@Autowired private SignatureService signatureService;
@Autowired(required = false)
private UserServiceInterface userService;
@GetMapping("/sign") @GetMapping("/sign")
@Hidden @Hidden
public String signForm(Model model) { public String signForm(Model model) {
String username = "";
if (userService != null) {
username = userService.getCurrentUsername();
}
// Get signatures from both personal and ALL_USERS folders
List<SignatureFile> signatures = signatureService.getAvailableSignatures(username);
model.addAttribute("currentPage", "sign"); model.addAttribute("currentPage", "sign");
model.addAttribute("fonts", getFontNames()); model.addAttribute("fonts", getFontNames());
model.addAttribute("signatures", signatures);
return "sign"; return "sign";
} }

View File

@@ -1,44 +0,0 @@
package stirling.software.SPDF.controller.web;
import java.io.IOException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import stirling.software.SPDF.controller.api.pipeline.UserServiceInterface;
import stirling.software.SPDF.service.SignatureService;
@Controller
@RequestMapping("/api/v1/general/")
public class SignatureController {
@Autowired private SignatureService signatureService;
@Autowired(required = false)
private UserServiceInterface userService;
@GetMapping("/sign/{fileName}")
public ResponseEntity<byte[]> getSignature(@PathVariable(name = "fileName") String fileName)
throws IOException {
String username = "NON_SECURITY_USER";
if (userService != null) {
username = userService.getCurrentUsername();
}
// Verify access permission
if (!signatureService.hasAccessToFile(username, fileName)) {
return ResponseEntity.status(HttpStatus.FORBIDDEN).build();
}
byte[] imageBytes = signatureService.getSignatureBytes(username, fileName);
return ResponseEntity.ok()
.contentType(MediaType.IMAGE_JPEG) // Adjust based on file type
.body(imageBytes);
}
}

View File

@@ -1,11 +0,0 @@
package stirling.software.SPDF.model;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
@AllArgsConstructor
public class SignatureFile {
private String fileName;
private String category; // "Personal" or "Shared"
}

View File

@@ -50,7 +50,4 @@ public class SignPDFWithCertRequest extends PDFFile {
description = description =
"The page number where the signature should be visible. This is required if showSignature is set to true") "The page number where the signature should be visible. This is required if showSignature is set to true")
private Integer pageNumber; private Integer pageNumber;
@Schema(description = "Whether to visually show a signature logo along with the signature")
private boolean showLogo;
} }

View File

@@ -1,41 +0,0 @@
package stirling.software.SPDF.service;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.stereotype.Service;
@Service
public class LanguageService {
private final PathMatchingResourcePatternResolver resourcePatternResolver =
new PathMatchingResourcePatternResolver();
public List<String> getSupportedLanguages() {
List<String> supportedLanguages = new ArrayList<>();
try {
Resource[] resources =
resourcePatternResolver.getResources("classpath*:messages_*.properties");
for (Resource resource : resources) {
if (resource.exists() && resource.isReadable()) {
String filename = resource.getFilename();
if (filename != null
&& filename.startsWith("messages_")
&& filename.endsWith(".properties")) {
String languageCode =
filename.replace("messages_", "").replace(".properties", "");
supportedLanguages.add(languageCode);
}
}
}
} catch (IOException e) {
e.printStackTrace();
}
return supportedLanguages;
}
}

View File

@@ -19,7 +19,6 @@ import org.springframework.stereotype.Service;
import com.posthog.java.PostHog; import com.posthog.java.PostHog;
import stirling.software.SPDF.controller.api.pipeline.UserServiceInterface;
import stirling.software.SPDF.model.ApplicationProperties; import stirling.software.SPDF.model.ApplicationProperties;
@Service @Service
@@ -27,23 +26,20 @@ public class PostHogService {
private final PostHog postHog; private final PostHog postHog;
private final String uniqueId; private final String uniqueId;
private final ApplicationProperties applicationProperties; private final ApplicationProperties applicationProperties;
private final UserServiceInterface userService;
@Autowired @Autowired
public PostHogService( public PostHogService(
PostHog postHog, PostHog postHog,
@Qualifier("UUID") String uuid, @Qualifier("UUID") String uuid,
ApplicationProperties applicationProperties, ApplicationProperties applicationProperties) {
@Autowired(required = false) UserServiceInterface userService) {
this.postHog = postHog; this.postHog = postHog;
this.uniqueId = uuid; this.uniqueId = uuid;
this.applicationProperties = applicationProperties; this.applicationProperties = applicationProperties;
this.userService = userService;
captureSystemInfo(); captureSystemInfo();
} }
private void captureSystemInfo() { private void captureSystemInfo() {
if (!Boolean.parseBoolean(applicationProperties.getSystem().getEnableAnalytics())) { if (!Boolean.getBoolean(applicationProperties.getSystem().getEnableAnalytics())) {
return; return;
} }
try { try {
@@ -54,7 +50,7 @@ public class PostHogService {
} }
public void captureEvent(String eventName, Map<String, Object> properties) { public void captureEvent(String eventName, Map<String, Object> properties) {
if (!Boolean.parseBoolean(applicationProperties.getSystem().getEnableAnalytics())) { if (!Boolean.getBoolean(applicationProperties.getSystem().getEnableAnalytics())) {
return; return;
} }
postHog.capture(uniqueId, eventName, properties); postHog.capture(uniqueId, eventName, properties);
@@ -138,10 +134,6 @@ public class PostHogService {
} }
metrics.put("application_properties", captureApplicationProperties()); metrics.put("application_properties", captureApplicationProperties());
if (userService != null) {
metrics.put("total_users_created", userService.getTotalUsersCount());
}
} catch (Exception e) { } catch (Exception e) {
metrics.put("error", e.getMessage()); metrics.put("error", e.getMessage());
} }

View File

@@ -1,100 +0,0 @@
package stirling.software.SPDF.service;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import org.springframework.stereotype.Service;
import org.thymeleaf.util.StringUtils;
import lombok.extern.slf4j.Slf4j;
import stirling.software.SPDF.model.SignatureFile;
@Service
@Slf4j
public class SignatureService {
private static final String SIGNATURE_BASE_PATH = "customFiles/signatures/";
private static final String ALL_USERS_FOLDER = "ALL_USERS";
public boolean hasAccessToFile(String username, String fileName) throws IOException {
validateFileName(fileName);
// Check if file exists in user's personal folder or ALL_USERS folder
Path userPath = Paths.get(SIGNATURE_BASE_PATH, username, fileName);
Path allUsersPath = Paths.get(SIGNATURE_BASE_PATH, ALL_USERS_FOLDER, fileName);
return Files.exists(userPath) || Files.exists(allUsersPath);
}
public List<SignatureFile> getAvailableSignatures(String username) {
List<SignatureFile> signatures = new ArrayList<>();
// Get signatures from user's personal folder
if (!StringUtils.isEmptyOrWhitespace(username)) {
Path userFolder = Paths.get(SIGNATURE_BASE_PATH, username);
if (Files.exists(userFolder)) {
try {
signatures.addAll(getSignaturesFromFolder(userFolder, "Personal"));
} catch (IOException e) {
log.error("Error reading user signatures folder", e);
}
}
}
// Get signatures from ALL_USERS folder
Path allUsersFolder = Paths.get(SIGNATURE_BASE_PATH, ALL_USERS_FOLDER);
if (Files.exists(allUsersFolder)) {
try {
signatures.addAll(getSignaturesFromFolder(allUsersFolder, "Shared"));
} catch (IOException e) {
log.error("Error reading shared signatures folder", e);
}
}
return signatures;
}
private List<SignatureFile> getSignaturesFromFolder(Path folder, String category)
throws IOException {
return Files.list(folder)
.filter(path -> isImageFile(path))
.map(path -> new SignatureFile(path.getFileName().toString(), category))
.collect(Collectors.toList());
}
public byte[] getSignatureBytes(String username, String fileName) throws IOException {
validateFileName(fileName);
// First try user's personal folder
Path userPath = Paths.get(SIGNATURE_BASE_PATH, username, fileName);
if (Files.exists(userPath)) {
return Files.readAllBytes(userPath);
}
// Then try ALL_USERS folder
Path allUsersPath = Paths.get(SIGNATURE_BASE_PATH, ALL_USERS_FOLDER, fileName);
if (Files.exists(allUsersPath)) {
return Files.readAllBytes(allUsersPath);
}
throw new FileNotFoundException("Signature file not found");
}
private boolean isImageFile(Path path) {
String fileName = path.getFileName().toString().toLowerCase();
return fileName.endsWith(".jpg")
|| fileName.endsWith(".jpeg")
|| fileName.endsWith(".png")
|| fileName.endsWith(".gif");
}
private void validateFileName(String fileName) {
if (fileName.contains("..") || fileName.contains("/") || fileName.contains("\\")) {
throw new IllegalArgumentException("Invalid filename");
}
}
}

View File

@@ -1,31 +1,13 @@
package stirling.software.SPDF.utils; package stirling.software.SPDF.utils;
import java.awt.geom.AffineTransform;
import java.awt.image.AffineTransformOp;
import java.awt.image.BufferedImage; import java.awt.image.BufferedImage;
import java.awt.image.DataBuffer; import java.awt.image.DataBuffer;
import java.awt.image.DataBufferByte; import java.awt.image.DataBufferByte;
import java.awt.image.DataBufferInt; import java.awt.image.DataBufferInt;
import java.io.IOException;
import java.io.InputStream;
import java.nio.ByteBuffer; import java.nio.ByteBuffer;
import javax.imageio.ImageIO;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.multipart.MultipartFile;
import com.drew.imaging.ImageMetadataReader;
import com.drew.imaging.ImageProcessingException;
import com.drew.metadata.Metadata;
import com.drew.metadata.MetadataException;
import com.drew.metadata.exif.ExifSubIFDDirectory;
public class ImageProcessingUtils { public class ImageProcessingUtils {
private static final Logger logger = LoggerFactory.getLogger(PdfUtils.class);
static BufferedImage convertColorType(BufferedImage sourceImage, String colorType) { static BufferedImage convertColorType(BufferedImage sourceImage, String colorType) {
BufferedImage convertedImage; BufferedImage convertedImage;
switch (colorType) { switch (colorType) {
@@ -77,51 +59,4 @@ public class ImageProcessingUtils {
return data; return data;
} }
} }
public static double extractImageOrientation(InputStream is) throws IOException {
try {
Metadata metadata = ImageMetadataReader.readMetadata(is);
ExifSubIFDDirectory directory =
metadata.getFirstDirectoryOfType(ExifSubIFDDirectory.class);
if (directory == null) {
return 0;
}
int orientationTag = directory.getInt(ExifSubIFDDirectory.TAG_ORIENTATION);
switch (orientationTag) {
case 1:
return 0;
case 6:
return 90;
case 3:
return 180;
case 8:
return 270;
default:
logger.warn("Unknown orientation tag: {}", orientationTag);
return 0;
}
} catch (ImageProcessingException | MetadataException e) {
return 0;
}
}
public static BufferedImage applyOrientation(BufferedImage image, double orientation) {
if (orientation == 0) {
return image;
}
AffineTransform transform =
AffineTransform.getRotateInstance(
Math.toRadians(orientation),
image.getWidth() / 2.0,
image.getHeight() / 2.0);
AffineTransformOp op = new AffineTransformOp(transform, AffineTransformOp.TYPE_BILINEAR);
return op.filter(image, null);
}
public static BufferedImage loadImageWithExifOrientation(MultipartFile file)
throws IOException {
BufferedImage image = ImageIO.read(file.getInputStream());
double orientation = extractImageOrientation(file.getInputStream());
return applyOrientation(image, orientation);
}
} }

View File

@@ -194,8 +194,7 @@ public class PdfUtils {
pdfDocument.close(); pdfDocument.close();
// Assumes the expectedPageSize is in the format "widthxheight", e.g. "595x842" // Assumes the expectedPageSize is in the format "widthxheight", e.g. "595x842" for A4
// for A4
String[] dimensions = expectedPageSize.split("x"); String[] dimensions = expectedPageSize.split("x");
float expectedPageWidth = Float.parseFloat(dimensions[0]); float expectedPageWidth = Float.parseFloat(dimensions[0]);
float expectedPageHeight = Float.parseFloat(dimensions[1]); float expectedPageHeight = Float.parseFloat(dimensions[1]);
@@ -408,7 +407,7 @@ public class PdfUtils {
addImageToDocument(doc, pdImage, fitOption, autoRotate); addImageToDocument(doc, pdImage, fitOption, autoRotate);
} }
} else { } else {
BufferedImage image = ImageProcessingUtils.loadImageWithExifOrientation(file); BufferedImage image = ImageIO.read(file.getInputStream());
BufferedImage convertedImage = BufferedImage convertedImage =
ImageProcessingUtils.convertColorType(image, colorType); ImageProcessingUtils.convertColorType(image, colorType);
// Use JPEGFactory if it's JPEG since JPEG is lossy // Use JPEGFactory if it's JPEG since JPEG is lossy

View File

@@ -5,7 +5,6 @@ import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.nio.file.Files;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
@@ -54,7 +53,7 @@ public class CustomColorReplaceStrategy extends ReplaceAndInvertColorStrategy {
} }
// Create a temporary file, with the original filename from the multipart file // Create a temporary file, with the original filename from the multipart file
File file = Files.createTempFile("temp", getFileInput().getOriginalFilename()).toFile(); File file = File.createTempFile("temp", getFileInput().getOriginalFilename());
// Transfer the content of the multipart file to the file // Transfer the content of the multipart file to the file
getFileInput().transferTo(file); getFileInput().transferTo(file);

View File

@@ -6,7 +6,6 @@ import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.nio.file.Files;
import javax.imageio.ImageIO; import javax.imageio.ImageIO;
@@ -31,7 +30,7 @@ public class InvertFullColorStrategy extends ReplaceAndInvertColorStrategy {
public InputStreamResource replace() throws IOException { public InputStreamResource replace() throws IOException {
// Create a temporary file, with the original filename from the multipart file // Create a temporary file, with the original filename from the multipart file
File file = Files.createTempFile("temp", getFileInput().getOriginalFilename()).toFile(); File file = File.createTempFile("temp", getFileInput().getOriginalFilename());
// Transfer the content of the multipart file to the file // Transfer the content of the multipart file to the file
getFileInput().transferTo(file); getFileInput().transferTo(file);

View File

@@ -76,17 +76,15 @@ donate=تبرع
color=لون color=لون
sponsor=راعٍ sponsor=راعٍ
info=معلومات info=معلومات
pro=محترف pro=Pro
page=صفحة page=Page
pages=صفحات pages=Pages
loading=جارٍ التحميل...
addToDoc=إضافة إلى المستند
legal.privacy=سياسة الخصوصية legal.privacy=Privacy Policy
legal.terms=شروط الاستخدام legal.terms=Terms and Conditions
legal.accessibility=Accessibility legal.accessibility=Accessibility
legal.cookie=سياسة ملفات تعريف الارتباط legal.cookie=Cookie Policy
legal.impressum=بيان الهوية legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -116,8 +114,8 @@ pipelineOptions.validateButton=تحقق
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=ترقية إلى محترف enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=هذه الخاصية متوفرة فقط للمستخدمين المحترفين. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
@@ -125,12 +123,12 @@ enterpriseEdition.ssoAdvert=Looking for more user management features? Check out
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=هل تريد تحسين Stirling PDF؟ analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF يحتوي على إحصائيات مختصة للمساعدة في تحسين المنتج. لا نتبع أي معلومات شخصية أو محتوى الملفات. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=يرجى مراعاة تفعيل الإحصائيات لمساعدتنا على نمو Stirling-PDF وتوفير فهم أفضل لمستخدمينا. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=تفعيل الإحصائيات analytics.enable=Enable analytics
analytics.disable=تعطيل الإحصائيات analytics.disable=Disable analytics
analytics.settings=يمكنك تغيير إعدادات الإحصائيات في ملف config/settings.yml analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=تحويل من PDF
navbar.sections.security=التوقيع والأمان navbar.sections.security=التوقيع والأمان
navbar.sections.advance=متقدم navbar.sections.advance=متقدم
navbar.sections.edit=عرض وتعديل navbar.sections.edit=عرض وتعديل
navbar.sections.popular=المفضل navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=يجب ألا يكون الملف فارغًا أو خ
database.failedImportFile=فشل استيراد الملف database.failedImportFile=فشل استيراد الملف
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -506,28 +503,28 @@ home.removeImagePdf.desc=إزالة الصورة من PDF لتقليل حجم ا
removeImagePdf.tags=إزالة الصورة,عمليات الصفحة,الخلفية,جانب الخادم removeImagePdf.tags=إزالة الصورة,عمليات الصفحة,الخلفية,جانب الخادم
home.splitPdfByChapters.title=تجزئة المستندات PDF حسب الفصول home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=قسم مستند PDF إلى ملفات متعددة بناءً على هيكل فصوله. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=تجزئة، فصول، علامات تبويب، تنظيم splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=استبدال-إلغاء مirro لون PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=استبدال الألوان للنصوص والخلفيات في المستندات PDF وإلغاء تعكير اللون الكامل للمستند لتقليل حجم الملف home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=استبدال اللون، عمليات الصفحة، الخلفية، جانب الخادم replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=خيارات استبدال-إلغاء مirro لون replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Default(Default high contrast colors) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=خصيصة (ألوان شخصية) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Full-Invert(Invert all colors) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=خيارات ألوان التباين العالي replace-color.selectText.5=High contrast color options
replace-color.selectText.6=نص أبيض على خلفية سوداء replace-color.selectText.6=white text on black background
replace-color.selectText.7=نص أسود على خلفية بيضاء replace-color.selectText.7=Black text on white background
replace-color.selectText.8=نص صفرة على خلفية سوداء replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=نص أخضر على خلفية سوداء replace-color.selectText.9=Green text on black background
replace-color.selectText.10=اختر لون النص replace-color.selectText.10=Choose text Color
replace-color.selectText.11=اختر لون الخلفية replace-color.selectText.11=Choose background Color
replace-color.submit=استبدال replace-color.submit=Replace
@@ -554,9 +551,10 @@ login.oauth2AccessDenied=تم رفض الوصول
login.oauth2InvalidTokenResponse=استجابة الرمز المميز غير صالحة login.oauth2InvalidTokenResponse=استجابة الرمز المميز غير صالحة
login.oauth2InvalidIdToken=رمز الهوية غير صالح login.oauth2InvalidIdToken=رمز الهوية غير صالح
login.userIsDisabled=تم تعطيل المستخدم، تم حظر تسجيل الدخول حاليًا باستخدام اسم المستخدم هذا. يرجى الاتصال بالمسؤول. login.userIsDisabled=تم تعطيل المستخدم، تم حظر تسجيل الدخول حاليًا باستخدام اسم المستخدم هذا. يرجى الاتصال بالمسؤول.
login.alreadyLoggedIn=لقد تسجل دخولًا إلى login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=أجهزة أخرى. يرجى تسجيل الخروج من الأجهزة وحاول مرة أخرى. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=لديك عدة جلسات نشطة login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=حجب تلقائي autoRedact.title=حجب تلقائي
@@ -731,7 +729,7 @@ pageLayout.submit=إرسال
scalePages.title=ضبط مقياس الصفحة scalePages.title=ضبط مقياس الصفحة
scalePages.header=ضبط مقياس الصفحة scalePages.header=ضبط مقياس الصفحة
scalePages.pageSize=حجم صفحة المستند. scalePages.pageSize=حجم صفحة المستند.
scalePages.keepPageSize=الحجم الأصلي scalePages.keepPageSize=Original Size
scalePages.scaleFactor=مستوى التكبير (الاقتصاص) للصفحة. scalePages.scaleFactor=مستوى التكبير (الاقتصاص) للصفحة.
scalePages.submit=إرسال scalePages.submit=إرسال
@@ -751,7 +749,6 @@ certSign.showSig=إظهار التوقيع
certSign.reason=السبب certSign.reason=السبب
certSign.location=الموقع certSign.location=الموقع
certSign.name=الاسم certSign.name=الاسم
certSign.showLogo=عرض الشعار
certSign.submit=توقيع PDF certSign.submit=توقيع PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=لون التظليل 2:
compare.document.1=المستند 1 compare.document.1=المستند 1
compare.document.2=المستند 2 compare.document.2=المستند 2
compare.submit=مقارنة compare.submit=مقارنة
compare.complex.message=أو كلا المستندين المقدمين كبيران حجمًا، مما يؤدي إلى تقليل دقة المقارنة
compare.large.file.message=أو كلا المستندين المقدمين كبيرة حجمهما للتعامل معهما
compare.no.text.message=أحد أو كلي المستندات المرجوة للمقارنة لا يحتوي على محتوى نصي. يرجى اختيار مستندات تحتوي على نص لم يتم التعرف عليه.
#BookToPDF #BookToPDF
BookToPDF.title=الكتب والكوميكس إلى PDF BookToPDF.title=الكتب والكوميكس إلى PDF
@@ -811,11 +805,6 @@ sign.draw=رسم التوقيع
sign.text=إدخال النص sign.text=إدخال النص
sign.clear=مسح sign.clear=مسح
sign.add=إضافة sign.add=إضافة
sign.saved=توقيعات تم حفظها
sign.save=حفظ توقيع
sign.personalSigs=توقيعات شخصية
sign.sharedSigs=توقيعات مشتركة
sign.noSavedSigs=لم يتم العثور على توقيعات محفوظة
#repair #repair
@@ -1193,8 +1182,8 @@ licenses.license=الترخيص
survey.nav=استطلاع survey.nav=استطلاع
survey.title=استطلاع Stirling-PDF survey.title=استطلاع Stirling-PDF
survey.description=Stirling-PDF لا يحتوي على تتبع لذا نريد أن نسمع من مستخدمينا لتحسين Stirling-PDF! survey.description=Stirling-PDF لا يحتوي على تتبع لذا نريد أن نسمع من مستخدمينا لتحسين Stirling-PDF!
survey.changes=تحديث Stirling-PDF منذ آخر استبيان! للحصول على المزيد من المعلومات الرجاء زيارة مقالتنا في المدونة هنا: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=مع هذه التحديثات، نستفيد من الدعم العملي والمنحة المالية survey.changes2=With these changes we are getting paid business support and funding
survey.please=يرجى النظر في المشاركة في استطلاعنا! survey.please=يرجى النظر في المشاركة في استطلاعنا!
survey.disabled=(سيتم تعطيل النافذة المنبثقة للاستطلاع في التحديثات التالية ولكنها ستكون متاحة في أسفل الصفحة) survey.disabled=(سيتم تعطيل النافذة المنبثقة للاستطلاع في التحديثات التالية ولكنها ستكون متاحة في أسفل الصفحة)
survey.button=المشاركة في الاستطلاع survey.button=المشاركة في الاستطلاع
@@ -1222,13 +1211,15 @@ removeImage.removeImage=إزالة الصورة
removeImage.submit=إزالة الصورة removeImage.submit=إزالة الصورة
splitByChapters.title=تجزئة المستند حسب الفصول splitByChapters.title=Split PDF by Chapters
splitByChapters.header=تجزئة المستند حسب الفصول splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=مستوى العلامات التذكارية splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=شامل البيانات المرفقة splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure. splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.). splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=تمثيل البيانات الأصلية: إذا تم اختيارها، سترمز البيانات المرجعية الأصلية إلى كل PDF مجزأ. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=سماح بالتكرار: إذا تم اختياره، يسمح بوجود معاينات متعددة في الصفحة نفسها لخلق ملفات PDF منفصلة. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=تقطيع ملف PDF splitByChapters.submit=Split PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Размер на шрифт addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Име на шрифт addPageNumbers.fontName=Font Name
pdfPrompt=Изберете PDF(и) pdfPrompt=Изберете PDF(и)
multiPdfPrompt=Изберете PDF (2+) multiPdfPrompt=Изберете PDF (2+)
multiPdfDropPrompt=Изберете (или плъзнете и пуснете) всички PDF файлове, от които се нуждаете multiPdfDropPrompt=Изберете (или плъзнете и пуснете) всички PDF файлове, от които се нуждаете
@@ -56,12 +56,12 @@ userNotFoundMessage=Потребителят не е намерен
incorrectPasswordMessage=Текущата парола е неправилна. incorrectPasswordMessage=Текущата парола е неправилна.
usernameExistsMessage=Новият потребител вече съществува. usernameExistsMessage=Новият потребител вече съществува.
invalidUsernameMessage=Невалидно потребителско име, потребителското име може да съдържа само букви, цифри и следните специални знаци @._+- или трябва да е валиден имейл адрес. invalidUsernameMessage=Невалидно потребителско име, потребителското име може да съдържа само букви, цифри и следните специални знаци @._+- или трябва да е валиден имейл адрес.
invalidPasswordMessage=Паролата не трябва да е празна и не трябва да има интервали в началото или в края. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=Нова парола и Потвърждаване на новата парола трябва да съвпадат. confirmPasswordErrorMessage=New Password and Confirm New Password must match.
deleteCurrentUserMessage=Не може да се изтрие вписания в момента потребител. deleteCurrentUserMessage=Не може да се изтрие вписания в момента потребител.
deleteUsernameExistsMessage=Потребителското име не съществува и не може да бъде изтрито. deleteUsernameExistsMessage=Потребителското име не съществува и не може да бъде изтрито.
downgradeCurrentUserMessage=Не може да се понижи ролята на текущия потребител downgradeCurrentUserMessage=Не може да се понижи ролята на текущия потребител
disabledCurrentUserMessage=Текущият потребител не може да бъде деактивиран disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=Не може да се понижи ролята на текущия потребител. Следователно текущият потребител няма да бъде показан. downgradeCurrentUserLongMessage=Не може да се понижи ролята на текущия потребител. Следователно текущият потребител няма да бъде показан.
userAlreadyExistsOAuthMessage=Потребителят вече съществува като OAuth2 потребител. userAlreadyExistsOAuthMessage=Потребителят вече съществува като OAuth2 потребител.
userAlreadyExistsWebMessage=Потребителят вече съществува като уеб-потребител. userAlreadyExistsWebMessage=Потребителят вече съществува като уеб-потребител.
@@ -75,18 +75,16 @@ visitGithub=Посетете Github Repository
donate=Направете дарение donate=Направете дарение
color=Цвят color=Цвят
sponsor=Спонсор sponsor=Спонсор
info=Информация info=Info
pro=Pro pro=Pro
page=Страница page=Page
pages=Страници pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Политика за поверителност legal.privacy=Privacy Policy
legal.terms=Правила и условия legal.terms=Terms and Conditions
legal.accessibility=Достъпност legal.accessibility=Accessibility
legal.cookie=Политика за бисквитки legal.cookie=Cookie Policy
legal.impressum=Отпечатък legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -98,7 +96,7 @@ pipeline.defaultOption=Персонализиран
pipeline.submitButton=Подайте pipeline.submitButton=Подайте
pipeline.help=Pipeline Помощ pipeline.help=Pipeline Помощ
pipeline.scanHelp=Помощ за сканиране на папки pipeline.scanHelp=Помощ за сканиране на папки
pipeline.deletePrompt=Сигурни ли сте, че искате да изтриете pipeline pipeline.deletePrompt=Are you sure you want to delete pipeline
###################### ######################
# Pipeline Options # # Pipeline Options #
@@ -116,21 +114,21 @@ pipelineOptions.validateButton=Валидирай
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Направете надстройка до Pro версията enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Тази функция е достъпна само за потребители на Pro версията. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro поддържа YAML конфигурационни файлове и други SSO функции. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Търсите повече функции за управление на потребителите? Погледнете за Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Искате ли да подобрите Stirling PDF? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF включва анализи, за да ни помогне да подобрим продукта. Ние не проследяваме лична информация или съдържание на файлове. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Моля, обмислете възможността за анализ, за ​​да помогнете на Stirling-PDF да расте и да ни позволи да разберем по-добре нашите потребители. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Активиране на анализа analytics.enable=Enable analytics
analytics.disable=Деактивиране на анализа analytics.disable=Disable analytics
analytics.settings=Можете да промените настройките за анализ във config/settings.yml файла analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=Преобразуване от PDF
navbar.sections.security=Подписване и сигурност navbar.sections.security=Подписване и сигурност
navbar.sections.advance=Разширено navbar.sections.advance=Разширено
navbar.sections.edit=Преглед и редактиране navbar.sections.edit=Преглед и редактиране
navbar.sections.popular=Популярни navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -204,9 +202,9 @@ adminUserSettings.header=Настройки за администраторск
adminUserSettings.admin=Администратор adminUserSettings.admin=Администратор
adminUserSettings.user=Потребител adminUserSettings.user=Потребител
adminUserSettings.addUser=Добавяне на нов потребител adminUserSettings.addUser=Добавяне на нов потребител
adminUserSettings.deleteUser=Изтриване на потребител adminUserSettings.deleteUser=Delete User
adminUserSettings.confirmDeleteUser=Трябва ли потребителят да бъде изтрит? adminUserSettings.confirmDeleteUser=Should the user be deleted?
adminUserSettings.confirmChangeUserStatus=Трябва ли потребителят да бъде деактивиран/активиран? adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=Потребителското име може да съдържа само букви, цифри и следните специални символи @._+- или трябва да е валиден имейл адрес. adminUserSettings.usernameInfo=Потребителското име може да съдържа само букви, цифри и следните специални символи @._+- или трябва да е валиден имейл адрес.
adminUserSettings.roles=Роли adminUserSettings.roles=Роли
adminUserSettings.role=Роля adminUserSettings.role=Роля
@@ -220,33 +218,32 @@ adminUserSettings.forceChange=Принудете потребителя да п
adminUserSettings.submit=Съхранете потребителя adminUserSettings.submit=Съхранете потребителя
adminUserSettings.changeUserRole=Промяна на ролята на потребителя adminUserSettings.changeUserRole=Промяна на ролята на потребителя
adminUserSettings.authenticated=Удостоверен adminUserSettings.authenticated=Удостоверен
adminUserSettings.editOwnProfil=Редактиране на собствен профил adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=активиран потребител adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=деактивиран потребител adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Активни потребители: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Деактивирани потребители: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Общо потребители: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=Последна заявка adminUserSettings.lastRequest=Last Request
database.title=Импорт/Експорт на база данни database.title=Database Import/Export
database.header=Импорт/Експорт на база данни database.header=Database Import/Export
database.fileName=Име на файл database.fileName=File Name
database.creationDate=Дата на създаване database.creationDate=Creation Date
database.fileSize=Размер на файла database.fileSize=File Size
database.deleteBackupFile=Изтриване на архивен файл database.deleteBackupFile=Delete Backup File
database.importBackupFile=Импортиране на архивен файл database.importBackupFile=Import Backup File
database.downloadBackupFile=Изтеглете архивен файл database.downloadBackupFile=Download Backup File
database.info_1=Когато импортирате данни, е от решаващо значение да осигурите правилната структура. Ако не сте сигурни в това, което правите, потърсете съвет и подкрепа от професионалист. Грешка в структурата може да причини неизправност на приложението, включително пълна невъзможност за стартиране на приложението. database.info_1=When importing data, it is crucial to ensure the correct structure. If you are unsure of what you are doing, seek advice and support from a professional. An error in the structure can cause application malfunctions, up to and including the complete inability to run the application.
database.info_2=Името на файла няма значение при качване. След това ще бъде преименуван, за да следва формата backup_user_yyyyMMddHHmm.sql, осигурявайки последователна конвенция за именуване. database.info_2=The file name does not matter when uploading. It will be renamed afterward to follow the format backup_user_yyyyMMddHHmm.sql, ensuring a consistent naming convention.
database.submit=Импортиране на резервно копие database.submit=Import Backup
database.importIntoDatabaseSuccessed=Импортирането в базата данни бе успешно database.importIntoDatabaseSuccessed=Import into database successed
database.fileNotFound=Файлът не е намерен database.fileNotFound=File not Found
database.fileNullOrEmpty=Файлът не трябва да е нулев или празен database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Неуспешно импортиране на файл database.failedImportFile=Failed Import File
session.expired=Вашата сесия е изтекла. Моля, опреснете страницата и опитайте отново. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -393,9 +390,9 @@ home.certSign.title=Подпишете със сертификат
home.certSign.desc=Подписва PDF със сертификат/ключ (PEM/P12) home.certSign.desc=Подписва PDF със сертификат/ключ (PEM/P12)
certSign.tags=удостоверяване,PEM,P12,официален,шифроване certSign.tags=удостоверяване,PEM,P12,официален,шифроване
home.removeCertSign.title=Премахване на знака за сертификат home.removeCertSign.title=Remove Certificate Sign
home.removeCertSign.desc=Премахване на подпис на сертификат от PDF home.removeCertSign.desc=Remove certificate signature from PDF
removeCertSign.tags=удостоверяване,PEM,P12,официален,декриптиране removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=Оформление с няколко страници home.pageLayout.title=Оформление с няколко страници
home.pageLayout.desc=Слейте няколко страници от PDF документ в една страница home.pageLayout.desc=Слейте няколко страници от PDF документ в една страница
@@ -501,33 +498,33 @@ home.BookToPDF.title=Книга към PDF
home.BookToPDF.desc=Преобразува формати на книги/комикси в PDF с помощта на calibre home.BookToPDF.desc=Преобразува формати на книги/комикси в PDF с помощта на calibre
BookToPDF.tags=Книга,комикс,calibre,конвертиране,манга,Amazon,Kindle BookToPDF.tags=Книга,комикс,calibre,конвертиране,манга,Amazon,Kindle
home.removeImagePdf.title=Премахване на изображение home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=Премахнете изображението от PDF, за да намалите размера на файла home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Премахване на изображение, операции на страници, админ страна, страна на сървъра removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=Разделете PDF по глави home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Разделете PDF на множество файлове въз основа на неговата структура на глави. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=разделяне, глави, отметки, организиране splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Замени-инвертиране-на-цвят replace-color.title=Replace-Invert-Color
replace-color.header=Замяна-инвертиране на цвят PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Замяна и обръщане на цвят home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Заменете цвета на текста и фона в PDF и обърнете пълния цвят на PDF, за да намалите размера на файла home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Замяна на цвят, операции на страници, заден край, страна на сървъра replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Опции за замяна или инвертиране на цвят replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=По подразбиране (цветове с висок контраст по подразбиране) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=По избор (персонализирани цветове) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Пълно инвертиране (Инвертиране на всички цветове) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Цветови опции с висок контраст replace-color.selectText.5=High contrast color options
replace-color.selectText.6=Бял текст на черен фон replace-color.selectText.6=white text on black background
replace-color.selectText.7=Черен текст на бял фон replace-color.selectText.7=Black text on white background
replace-color.selectText.8=Жълт текст на черен фон replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=Зелен текст на черен фон replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Изберете цвят на текста replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Изберете цвят на фона replace-color.selectText.11=Choose background Color
replace-color.submit=Замени replace-color.submit=Replace
@@ -546,17 +543,18 @@ login.locked=Вашият акаунт е заключен.
login.signinTitle=Моля впишете се login.signinTitle=Моля впишете се
login.ssoSignIn=Влизане чрез еднократно влизане login.ssoSignIn=Влизане чрез еднократно влизане
login.oauth2AutoCreateDisabled=OAUTH2 Автоматично създаване на потребител е деактивирано login.oauth2AutoCreateDisabled=OAUTH2 Автоматично създаване на потребител е деактивирано
login.oauth2AdminBlockedUser=Регистрацията или влизането на нерегистрирани потребители в момента е блокирано. Моля, свържете се с администратора. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Заявката за оторизация не е намерена login.oauth2RequestNotFound=Заявката за оторизация не е намерена
login.oauth2InvalidUserInfoResponse=Невалидна информация за потребителя login.oauth2InvalidUserInfoResponse=Невалидна информация за потребителя
login.oauth2invalidRequest=Невалидна заявка login.oauth2invalidRequest=Невалидна заявка
login.oauth2AccessDenied=Отказан достъп login.oauth2AccessDenied=Отказан достъп
login.oauth2InvalidTokenResponse=Невалиден отговор на токена login.oauth2InvalidTokenResponse=Невалиден отговор на токена
login.oauth2InvalidIdToken=Невалиден токен за идентификатор login.oauth2InvalidIdToken=Невалиден токен за идентификатор
login.userIsDisabled=Потребителят е деактивиран, влизането в момента е блокирано с това потребителско име. Моля, свържете се с администратора. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=Вече сте влезли в login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=устройства. Моля, излезте от устройствата и опитайте отново. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Имате твърде много активни сесии login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Автоматично редактиране autoRedact.title=Автоматично редактиране
@@ -731,7 +729,7 @@ pageLayout.submit=Подайте
scalePages.title=Коригиране на мащаба на страницата scalePages.title=Коригиране на мащаба на страницата
scalePages.header=Коригиране на мащаба на страницата scalePages.header=Коригиране на мащаба на страницата
scalePages.pageSize=Размер на страница от документа. scalePages.pageSize=Размер на страница от документа.
scalePages.keepPageSize=Оригинален размер scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Ниво на мащабиране (изрязване) на страница. scalePages.scaleFactor=Ниво на мащабиране (изрязване) на страница.
scalePages.submit=Подайте scalePages.submit=Подайте
@@ -751,15 +749,14 @@ certSign.showSig=Показване на подпис
certSign.reason=Причина certSign.reason=Причина
certSign.location=Местоположение certSign.location=Местоположение
certSign.name=Име certSign.name=Име
certSign.showLogo=Show Logo
certSign.submit=Подпишете PDF certSign.submit=Подпишете PDF
#removeCertSign #removeCertSign
removeCertSign.title=Премахване на подписа на сертификата removeCertSign.title=Remove Certificate Signature
removeCertSign.header=Премахнете цифровия сертификат от PDF removeCertSign.header=Remove the digital certificate from the PDF
removeCertSign.selectPDF=Изберете PDF файл: removeCertSign.selectPDF=Select a PDF file:
removeCertSign.submit=Премахване на подпис removeCertSign.submit=Remove Signature
#removeBlanks #removeBlanks
@@ -781,14 +778,11 @@ removeAnnotations.submit=Премахване
#compare #compare
compare.title=Сравнявай compare.title=Сравнявай
compare.header=Сравнявай PDF-и compare.header=Сравнявай PDF-и
compare.highlightColor.1=Цвят на маркирането 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=Цвят на маркирането 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=Документ 1 compare.document.1=Документ 1
compare.document.2=Документ 2 compare.document.2=Документ 2
compare.submit=Сравнявай 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.
#BookToPDF #BookToPDF
BookToPDF.title=Книги и комикси в PDF BookToPDF.title=Книги и комикси в PDF
@@ -811,11 +805,6 @@ sign.draw=Начертайте подпис
sign.text=Въвеждане на текст sign.text=Въвеждане на текст
sign.clear=Изчисти sign.clear=Изчисти
sign.add=Добави sign.add=Добави
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=Минимална контурна площ:
ScannerImageSplit.selectText.8=Задава минималния праг на контурната площ за изображение ScannerImageSplit.selectText.8=Задава минималния праг на контурната площ за изображение
ScannerImageSplit.selectText.9=Размер на рамката: ScannerImageSplit.selectText.9=Размер на рамката:
ScannerImageSplit.selectText.10=Задава размера на добавената и премахната граница, за да предотврати бели граници към изхода (по подразбиране: 1). ScannerImageSplit.selectText.10=Задава размера на добавената и премахната граница, за да предотврати бели граници към изхода (по подразбиране: 1).
ScannerImageSplit.info=Python не е инсталиран. Изисква се да се изпълнява. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=Обработка на PDF чрез OCR
extractImages.title=Извличане на изображения extractImages.title=Извличане на изображения
extractImages.header=Извличане на изображения extractImages.header=Извличане на изображения
extractImages.selectText=Изберете формат на изображението, в който да преобразувате извлечените изображения extractImages.selectText=Изберете формат на изображението, в който да преобразувате извлечените изображения
extractImages.allowDuplicates=Запазване на дублирани изображения extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Извличане extractImages.submit=Извличане
@@ -907,7 +896,7 @@ merge.title=Обединяване
merge.header=Обединяване на множество PDF файлове (2+) merge.header=Обединяване на множество PDF файлове (2+)
merge.sortByName=Сортиране по име merge.sortByName=Сортиране по име
merge.sortByDate=Сортиране по дата merge.sortByDate=Сортиране по дата
merge.removeCertSign=Премахване на цифровия подпис в обединения файл? merge.removeCertSign=Remove digital signature in the merged file?
merge.submit=Обединяване merge.submit=Обединяване
@@ -925,7 +914,7 @@ pdfOrganiser.mode.6=Четно-нечетно разделяне
pdfOrganiser.mode.7=Премахни първо pdfOrganiser.mode.7=Премахни първо
pdfOrganiser.mode.8=Премахване на последния pdfOrganiser.mode.8=Премахване на последния
pdfOrganiser.mode.9=Премахване на първия и последния pdfOrganiser.mode.9=Премахване на първия и последния
pdfOrganiser.mode.10=Обединяване на четно и нечетно pdfOrganiser.mode.10=Odd-Even Merge
pdfOrganiser.placeholder=(напр. 1,3,2 или 4-8,2,10-12 или 2n-1) pdfOrganiser.placeholder=(напр. 1,3,2 или 4-8,2,10-12 или 2n-1)
@@ -994,7 +983,7 @@ pdfToImage.color=Цвят
pdfToImage.grey=Скала на сивото pdfToImage.grey=Скала на сивото
pdfToImage.blackwhite=Черно и бяло (може да загубите данни!) pdfToImage.blackwhite=Черно и бяло (може да загубите данни!)
pdfToImage.submit=Преобразуване pdfToImage.submit=Преобразуване
pdfToImage.info=Python не е инсталиран. Изисква се за конвертиране на WebP. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1031,7 +1020,7 @@ watermark.selectText.6=дължинаSpacer (Разстояние между в
watermark.selectText.7=Непрозрачност (0% - 100%): watermark.selectText.7=Непрозрачност (0% - 100%):
watermark.selectText.8=Тип воден знак: watermark.selectText.8=Тип воден знак:
watermark.selectText.9=Изображение за воден знак: watermark.selectText.9=Изображение за воден знак:
watermark.selectText.10=Конвертирайте PDF в PDF-изображение watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=Добавяне на воден знак watermark.submit=Добавяне на воден знак
watermark.type.1=Текст watermark.type.1=Текст
watermark.type.2=Изображение watermark.type.2=Изображение
@@ -1088,7 +1077,7 @@ pdfToPDFA.credit=Тази услуга използва ghostscript за PDF/A
pdfToPDFA.submit=Преобразуване pdfToPDFA.submit=Преобразуване
pdfToPDFA.tip=В момента не работи за няколко входа наведнъж pdfToPDFA.tip=В момента не работи за няколко входа наведнъж
pdfToPDFA.outputFormat=Изходен формат pdfToPDFA.outputFormat=Изходен формат
pdfToPDFA.pdfWithDigitalSignature=PDF файлът съдържа цифров подпис. Това ще бъде премахнато в следващата стъпка. pdfToPDFA.pdfWithDigitalSignature=The PDF contains a digital signature. This will be removed in the next step.
#PDFToWord #PDFToWord
@@ -1129,10 +1118,10 @@ PDFToXML.credit=Тази услуга използва LibreOffice за прео
PDFToXML.submit=Преобразуване PDFToXML.submit=Преобразуване
#PDFToCSV #PDFToCSV
PDFToCSV.title=PDF към CSV PDFToCSV.title=PDF ??? CSV
PDFToCSV.header=PDF към CSV PDFToCSV.header=PDF ??? CSV
PDFToCSV.prompt=Изберете страница за извличане на таблица PDFToCSV.prompt=Изберете страница за извличане на таблица
PDFToCSV.submit=Преобразуване PDFToCSV.submit=????
#split-by-size-or-count #split-by-size-or-count
split-by-size-or-count.title=Разделяне на PDF по размер или брой split-by-size-or-count.title=Разделяне на PDF по размер или брой
@@ -1190,15 +1179,15 @@ licenses.version=Версия
licenses.license=Лиценз licenses.license=Лиценз
#survey #survey
survey.nav=Анкета survey.nav=Survey
survey.title=Stirling-PDF Анкета survey.title=Stirling-PDF Survey
survey.description=Stirling-PDF няма проследяване, така че искаме да чуем мнението на нашите потребители за подобряване на Stirling-PDF! survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF!
survey.changes=Stirling-PDF се промени от последното проучване! За да научите повече, моля, проверете публикацията в нашия блог тук: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=С тези промени получаваме платена бизнес подкрепа и финансиране survey.changes2=With these changes we are getting paid business support and funding
survey.please=Моля, помислете дали да не участвате в нашата анкета! survey.please=Please consider taking our survey!
survey.disabled=(Изскачащият прозорец с анкетата ще бъде деактивиран при следващите актуализации, но ще бъде наличен в долната част на страницата) survey.disabled=(Survey popup will be disabled in following updates but available at foot of page)
survey.button=Участвайте в анкетата survey.button=Take Survey
survey.dontShowAgain=Не показвай повече survey.dontShowAgain=Don't show again
#error #error
@@ -1216,19 +1205,21 @@ error.discordSubmit=Discord - Изпратете запитване за под
#remove-image #remove-image
removeImage.title=Премахване на изображението removeImage.title=Remove image
removeImage.header=Премахване на изображението removeImage.header=Remove image
removeImage.removeImage=Премахване на изображението removeImage.removeImage=Remove image
removeImage.submit=Премахване на изображението removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=Разделете PDF по глави
splitByChapters.header=Разделете PDF по глави
splitByChapters.bookmarkLevel=Ниво на отметка
splitByChapters.includeMetadata=Включете метаданни
splitByChapters.allowDuplicates=Разрешаване на дубликати
splitByChapters.desc.1=Този инструмент разделя PDF файл на множество PDF файлове въз основа на неговата структура на глави.
splitByChapters.desc.2=Ниво на отметка: Изберете нивото на отметките, които да използвате за разделяне (0 за най-високо ниво, 1 за второ ниво и т.н.).
splitByChapters.desc.3=Включване на метаданни: Ако е отметнато, метаданните на оригиналния PDF ще бъдат включени във всеки разделен PDF.
splitByChapters.desc.4=Разрешаване на дубликати: Ако е отметнато, позволява множество отметки на една и съща страница за създаване на отделни PDF файлове.
splitByChapters.submit=Разделяне на PDF

View File

@@ -79,8 +79,6 @@ info=Info
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=User is deactivated, login is currently blocked with this u
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Auto Redact autoRedact.title=Auto Redact
@@ -751,7 +749,6 @@ certSign.showSig=Mostra la signatura
certSign.reason=Motiu certSign.reason=Motiu
certSign.location=Ubicació certSign.location=Ubicació
certSign.name=Nom certSign.name=Nom
certSign.showLogo=Show Logo
certSign.submit=Firma PDF certSign.submit=Firma PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Highlight Color 2:
compare.document.1=Document 1 compare.document.1=Document 1
compare.document.2=Document 2 compare.document.2=Document 2
compare.submit=Comparar compare.submit=Comparar
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.
#BookToPDF #BookToPDF
BookToPDF.title=Books and Comics to PDF BookToPDF.title=Books and Comics to PDF
@@ -811,11 +805,6 @@ sign.draw=Dibuixa la signatura
sign.text=Entrada de text sign.text=Entrada de text
sign.clear=Esborrar sign.clear=Esborrar
sign.add=Afegeix sign.add=Afegeix
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Velikost písma addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Název písma addPageNumbers.fontName=Font Name
pdfPrompt=Vyberte PDF soubory pdfPrompt=Vyberte PDF soubory
multiPdfPrompt=Vyberte PDF soubory (2+) multiPdfPrompt=Vyberte PDF soubory (2+)
multiPdfDropPrompt=Vyberte (nebo přetáhněte) všechny požadované PDF soubory multiPdfDropPrompt=Vyberte (nebo přetáhněte) všechny požadované PDF soubory
@@ -56,12 +56,12 @@ userNotFoundMessage=Uživatel nenalezen.
incorrectPasswordMessage=Současné heslo není správné. incorrectPasswordMessage=Současné heslo není správné.
usernameExistsMessage=Nové uživatelské jméno již existuje. usernameExistsMessage=Nové uživatelské jméno již existuje.
invalidUsernameMessage=Nesprávné uživatelské jméno, smí obsahovat pouze písmena, číslice a následující speciální znaky @._+- nebo musí být validní emailová adresa. invalidUsernameMessage=Nesprávné uživatelské jméno, smí obsahovat pouze písmena, číslice a následující speciální znaky @._+- nebo musí být validní emailová adresa.
invalidPasswordMessage=Heslo nemůže být prázdné a nemůže mít mezery na začátku nebo konci. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=Nové heslo musí shodovat s potvrzujícím novým heslem. confirmPasswordErrorMessage=New Password and Confirm New Password must match.
deleteCurrentUserMessage=Nelze smazat aktuální přihlášeného uživatele. deleteCurrentUserMessage=Nelze smazat aktuální přihlášeného uživatele.
deleteUsernameExistsMessage=Uživatelské jméno neexistuje a nelze ho smazat. deleteUsernameExistsMessage=Uživatelské jméno neexistuje a nelze ho smazat.
downgradeCurrentUserMessage=Nelze snížit roli aktuálního uživatele. downgradeCurrentUserMessage=Nelze snížit roli aktuálního uživatele.
disabledCurrentUserMessage=Současný uživatel nemůže být zakázán disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=Nelze snížit roli aktuálního uživatele. Proto nebude aktuální uživatel zobrazen. downgradeCurrentUserLongMessage=Nelze snížit roli aktuálního uživatele. Proto nebude aktuální uživatel zobrazen.
userAlreadyExistsOAuthMessage=Uživatel již existuje jako OAuth2 uživatel. userAlreadyExistsOAuthMessage=Uživatel již existuje jako OAuth2 uživatel.
userAlreadyExistsWebMessage=Uživatel již existuje jako webový uživatel. userAlreadyExistsWebMessage=Uživatel již existuje jako webový uživatel.
@@ -75,18 +75,16 @@ visitGithub=Navštivte Github repozitář
donate=Přispějte donate=Přispějte
color=Barva color=Barva
sponsor=Sponzor sponsor=Sponzor
info=Informace info=Info
pro=Pro pro=Pro
page=Strana page=Page
pages=Strany pages=Pages
loading=Načítání...
addToDoc=Přidat do dokumentu
legal.privacy=Politika soukromí legal.privacy=Privacy Policy
legal.terms=Podmínky použití legal.terms=Terms and Conditions
legal.accessibility=Snaha o přístupnost legal.accessibility=Accessibility
legal.cookie=Zásada cookies legal.cookie=Cookie Policy
legal.impressum=Odborné prohlášení legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -98,7 +96,7 @@ pipeline.defaultOption=Vlastní
pipeline.submitButton=Odeslat pipeline.submitButton=Odeslat
pipeline.help=Pomoc s pipeline pipeline.help=Pomoc s pipeline
pipeline.scanHelp=Pomoc se skenováním adresáře pipeline.scanHelp=Pomoc se skenováním adresáře
pipeline.deletePrompt=Opravdu chcete smazat tento kanál? pipeline.deletePrompt=Are you sure you want to delete pipeline
###################### ######################
# Pipeline Options # # Pipeline Options #
@@ -116,21 +114,21 @@ pipelineOptions.validateButton=Ověřit
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Upgradujte na Pro enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Tato funkce je k dispozici pouze pro uživatelé s předplatným Pro. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro podporuje konfigurační soubory YAML a další funkce SSO. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Hledáte větší počet správních funkcí uživatelů? Podívejte se na Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Chcete-li zlepšit Stirling PDF, pomozte nám. analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF má povolené analýzy pro to, abychom mohli zlepšovat produkt. Nezaznamenáváme žádné osobní informace nebo obsah souborů. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Považte za možnost povolení analýz k tomu, abychom mohli růst Stirling-PDF a lépe pochopit naši skupinu uživatelů. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Zapnout analýzy analytics.enable=Enable analytics
analytics.disable=Vypnout analýzy analytics.disable=Disable analytics
analytics.settings=Můžete změnit nastavení pro analýzy v souboru config/settings.yml analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=Převést z PDF
navbar.sections.security=Podpis a Bezpečnost navbar.sections.security=Podpis a Bezpečnost
navbar.sections.advance=Pokročilé navbar.sections.advance=Pokročilé
navbar.sections.edit=Prohlédnout a Upravit navbar.sections.edit=Prohlédnout a Upravit
navbar.sections.popular=Populární navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -164,7 +162,7 @@ settings.zipThreshold=Zazipuj soubory, když překročí počet stažených soub
settings.signOut=Odhlásit settings.signOut=Odhlásit
settings.accountSettings=Nastavení Účtu settings.accountSettings=Nastavení Účtu
settings.bored.help=Umožňuje hru s easter eggy settings.bored.help=Umožňuje hru s easter eggy
settings.cacheInputs.name=Ukládání vstupů formuláře settings.cacheInputs.name=Save form inputs
settings.cacheInputs.help=Umožňuje uložit dříve použité vstupy pro budoucí použití settings.cacheInputs.help=Umožňuje uložit dříve použité vstupy pro budoucí použití
changeCreds.title=Změnit pověření changeCreds.title=Změnit pověření
@@ -200,13 +198,13 @@ account.syncToAccount=Synchronizovat Účet <- Prohlížeč
adminUserSettings.title=Nastavení Uživatelského Nastavení adminUserSettings.title=Nastavení Uživatelského Nastavení
adminUserSettings.header=Nastavení správce uživatelů adminUserSettings.header=Admin User Control Settings
adminUserSettings.admin=Správce adminUserSettings.admin=Admin
adminUserSettings.user=Uživatel adminUserSettings.user=Uživatel
adminUserSettings.addUser=Přidat Nového Uživatele adminUserSettings.addUser=Přidat Nového Uživatele
adminUserSettings.deleteUser=Smazat uživatele adminUserSettings.deleteUser=Delete User
adminUserSettings.confirmDeleteUser=Měli by se uživatel smazat? adminUserSettings.confirmDeleteUser=Should the user be deleted?
adminUserSettings.confirmChangeUserStatus=Měli by se změnit stav uživatele (vytřída/aktivace)? adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=Uživatelské Jméno může obsahovat pouze písmena, čísla a následující speciální znaky @._+- nebo musí být správná emailová adresa. adminUserSettings.usernameInfo=Uživatelské Jméno může obsahovat pouze písmena, čísla a následující speciální znaky @._+- nebo musí být správná emailová adresa.
adminUserSettings.roles=Role adminUserSettings.roles=Role
adminUserSettings.role=Role adminUserSettings.role=Role
@@ -220,33 +218,32 @@ adminUserSettings.forceChange=Vynutit uživateli změnu hesla při přihlášen
adminUserSettings.submit=Uložit Uživatele adminUserSettings.submit=Uložit Uživatele
adminUserSettings.changeUserRole=Zmenit Roli Uživatele adminUserSettings.changeUserRole=Zmenit Roli Uživatele
adminUserSettings.authenticated=Ověřeno adminUserSettings.authenticated=Ověřeno
adminUserSettings.editOwnProfil=Upravit vlastní profil adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=povolený uživatel adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=zakázáný uživatel adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Aktivní uživatelé: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Zakázанные uživatelé: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Celkem uživatelů: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=Poslední žádost adminUserSettings.lastRequest=Last Request
database.title=Import/Export databáze database.title=Database Import/Export
database.header=Import/Export databáze database.header=Database Import/Export
database.fileName=Název souboru database.fileName=File Name
database.creationDate=Datum vytvoření database.creationDate=Creation Date
database.fileSize=Velikost souboru database.fileSize=File Size
database.deleteBackupFile=Smazat záložní soubor database.deleteBackupFile=Delete Backup File
database.importBackupFile=Import zálohy souboru database.importBackupFile=Import Backup File
database.downloadBackupFile=Stáhnout zálohový soubor database.downloadBackupFile=Download Backup File
database.info_1=Při importu dat je důležité zajistit správnou strukturu. Pokud jste nejistí, jak se chovat, hledajte konzultaci a podporu od profesionala. Chyba v struktuře může vést k selhání aplikace, dokonce i k tomu, že by aplikace nemohla být spuštěna. database.info_1=When importing data, it is crucial to ensure the correct structure. If you are unsure of what you are doing, seek advice and support from a professional. An error in the structure can cause application malfunctions, up to and including the complete inability to run the application.
database.info_2=Název souboru nezáleží při nahrávání. Bude jeho zpětně znovu pojmenován podle formáту backup_user_yyyyMMddHHmm.sql, což zajišťuje konzistentní pravidlo označení. database.info_2=The file name does not matter when uploading. It will be renamed afterward to follow the format backup_user_yyyyMMddHHmm.sql, ensuring a consistent naming convention.
database.submit=Import zálohy database.submit=Import Backup
database.importIntoDatabaseSuccessed=Import do databáze byl úspěšný database.importIntoDatabaseSuccessed=Import into database successed
database.fileNotFound=File not Found database.fileNotFound=File not Found
database.fileNullOrEmpty=Soubor nemůže být null nebo prázdný database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Vaše sesace vypršela. Prosím obnovte stránku a zkusit to znovu. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -350,7 +347,7 @@ PDFToPresentation.tags=snímky,přehled,kancelář,microsoft
home.PDFToText.title=PDF na RTF (Text) home.PDFToText.title=PDF na RTF (Text)
home.PDFToText.desc=Převod PDF do formátu Textu nebo RTF home.PDFToText.desc=Převod PDF do formátu Textu nebo RTF
PDFToText.tags=bohatý formátování, bohaté formátování, bohatej formátkace textu PDFToText.tags=richformat,richtextformat,rich text format
home.PDFToHTML.title=PDF na HTML home.PDFToHTML.title=PDF na HTML
home.PDFToHTML.desc=Převod PDF do formátu HTML home.PDFToHTML.desc=Převod PDF do formátu HTML
@@ -393,9 +390,9 @@ home.certSign.title=Podpis s certifikátem
home.certSign.desc=Podpis PDF s certifikátem/klíčem (PEM/P12) home.certSign.desc=Podpis PDF s certifikátem/klíčem (PEM/P12)
certSign.tags=autentizace,PEM,P12,oficiální,šifrování certSign.tags=autentizace,PEM,P12,oficiální,šifrování
home.removeCertSign.title=Odstranit certifikátovou podepsanost home.removeCertSign.title=Remove Certificate Sign
home.removeCertSign.desc=Odstranit certifikátovou podepsanost z PDF home.removeCertSign.desc=Remove certificate signature from PDF
removeCertSign.tags=autentizace, PEM, P12, úřední, dešifrování removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=Vícestránkové rozložení home.pageLayout.title=Vícestránkové rozložení
home.pageLayout.desc=Sloučení více stránek dokumentu PDF do jedné stránky home.pageLayout.desc=Sloučení více stránek dokumentu PDF do jedné stránky
@@ -501,33 +498,33 @@ home.BookToPDF.title=Kniha na PDF
home.BookToPDF.desc=Převádí formáty knih/komiksů do PDF pomocí calibre home.BookToPDF.desc=Převádí formáty knih/komiksů do PDF pomocí calibre
BookToPDF.tags=Kniha,Komiks,Calibre,Konvertovat,manga,amazon,kindle,epub,mobi,azw3,docx,rtf,txt,html,lit,fb2,pdb,lrf BookToPDF.tags=Kniha,Komiks,Calibre,Konvertovat,manga,amazon,kindle,epub,mobi,azw3,docx,rtf,txt,html,lit,fb2,pdb,lrf
home.removeImagePdf.title=Odstranit obrázek home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=Odstranit obrázek z PDF k snížení velikosti souboru home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Odstranit obrázek, operace na stránkách, záložní strana, serverové čidla removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=Rozdělit PDF podle kapitol home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Rozdělit PDF do více souborů na základě jeho struktury kapitol. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=rozdělení, kapitoly, zápisky, organizace splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=Nahradit inverzní barvu PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Nahradit barvy pro text a pozadí v PDF a inverzní celý barvový spektrum PDF k snižení velikosti souboru home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Nahrazovat barvu, operace na stránkách, záložní strana, serverové čidla replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Možnosti nahrazení nebo inverze barev replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Výchozí (vysoká kontrastová barva) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Vlastní (vlastní barvy) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Celé inverzní (inverzní všechny barvy) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Možnosti vysoké kontrastové barvy replace-color.selectText.5=High contrast color options
replace-color.selectText.6=Bílá text na černém pozadí replace-color.selectText.6=white text on black background
replace-color.selectText.7=Černý text na bílé pozadí replace-color.selectText.7=Black text on white background
replace-color.selectText.8=Zlutý text na černém pozadí replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=Zelený text na černém pozadí replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Vyberte barvu textu replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Vyberte barvu pozadí replace-color.selectText.11=Choose background Color
replace-color.submit= Nahradit replace-color.submit=Replace
@@ -537,45 +534,46 @@ replace-color.submit= Nahradit
# # # #
########################### ###########################
#login #login
login.title=Přihlášení login.title=Sign in
login.header=Přihlášení login.header=Sign in
login.signin=Přihlásit se login.signin=Sign in
login.rememberme=Zapamatovat si mě login.rememberme=Remember me
login.invalid=Neplatné uživatelské jméno nebo heslo. login.invalid=Invalid username or password.
login.locked=Vaše účto bylo zablokováno. login.locked=Your account has been locked.
login.signinTitle=Prosím, přihlaste se login.signinTitle=Please sign in
login.ssoSignIn=Přihlášení prostřednictvím jednotného přihlašovacího systému login.ssoSignIn=Login via Single Sign-on
login.oauth2AutoCreateDisabled=Automatické vytvoření uživatele OAUTH2 je vypnuté login.oauth2AutoCreateDisabled=OAUTH2 Auto-Create User Disabled
login.oauth2AdminBlockedUser=Registrace nebo přihlášení nepozitrovených uživatelů aktuálně jsou zablokovaná. Štěňte na správce. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Požadavek na autorizaci nenalezen login.oauth2RequestNotFound=Authorization request not found
login.oauth2InvalidUserInfoResponse=Neplatný odpověď s informacemi o uživateli login.oauth2InvalidUserInfoResponse=Invalid User Info Response
login.oauth2invalidRequest=Neplatný požadavek login.oauth2invalidRequest=Invalid Request
login.oauth2AccessDenied=Přístup zazobán login.oauth2AccessDenied=Access Denied
login.oauth2InvalidTokenResponse=Neplatná odpověď tokenu login.oauth2InvalidTokenResponse=Invalid Token Response
login.oauth2InvalidIdToken=Neplatný identifikační token login.oauth2InvalidIdToken=Invalid Id Token
login.userIsDisabled=Uživatel je deaktivován, přihlášení aktuálně pro tuto uživatelskou jmena je zakázáno. Kontaktujte správce. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=Jste již přihlášeni na login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=zariadení. Odhlašujte se z těchto zařízení a zkuste to znovu. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Máte příliš mnoho aktivních sesií login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Automatické smazání autoRedact.title=Auto Redact
autoRedact.header=Automatické smazání autoRedact.header=Auto Redact
autoRedact.colorLabel=Barva autoRedact.colorLabel=Colour
autoRedact.textsToRedactLabel=Text k smazání (řádkově oddělený) autoRedact.textsToRedactLabel=Text to Redact (line-separated)
autoRedact.textsToRedactPlaceholder=např. \nKonfidenciální \nSkrytější autoRedact.textsToRedactPlaceholder=e.g. \nConfidential \nTop-Secret
autoRedact.useRegexLabel=Použít regulární výraz autoRedact.useRegexLabel=Use Regex
autoRedact.wholeWordSearchLabel=Hledání celých slov autoRedact.wholeWordSearchLabel=Whole Word Search
autoRedact.customPaddingLabel=Vlastní doplňující vzdálenost autoRedact.customPaddingLabel=Custom Extra Padding
autoRedact.convertPDFToImageLabel=Převést PDF do PDF-Obrázku (Pro odstranění textu za obdélníkem) autoRedact.convertPDFToImageLabel=Convert PDF to PDF-Image (Used to remove text behind the box)
autoRedact.submitButton=Odeslat autoRedact.submitButton=Submit
#showJS #showJS
showJS.title=Zobrazit JavaScript showJS.title=Show Javascript
showJS.header=Zobrazit JavaScript showJS.header=Show Javascript
showJS.downloadJS=Stáhnout JavaScript showJS.downloadJS=Download Javascript
showJS.submit=Zobrazit showJS.submit=Show
#pdfToSinglePage #pdfToSinglePage
@@ -731,7 +729,7 @@ pageLayout.submit=Odeslat
scalePages.title=Upravit měřítko stránky scalePages.title=Upravit měřítko stránky
scalePages.header=Upravit měřítko stránky scalePages.header=Upravit měřítko stránky
scalePages.pageSize=Velikost stránky dokumentu. scalePages.pageSize=Velikost stránky dokumentu.
scalePages.keepPageSize=Původní velikost scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Úroveň přiblížení (oříznutí) stránky. scalePages.scaleFactor=Úroveň přiblížení (oříznutí) stránky.
scalePages.submit=Odeslat scalePages.submit=Odeslat
@@ -751,15 +749,14 @@ certSign.showSig=Ukázat podpis
certSign.reason=Důvod certSign.reason=Důvod
certSign.location=Umístění certSign.location=Umístění
certSign.name=Název certSign.name=Název
certSign.showLogo=Zobraz loga
certSign.submit=Podepsat PDF certSign.submit=Podepsat PDF
#removeCertSign #removeCertSign
removeCertSign.title=Odstranit certifikátovou podpisu removeCertSign.title=Remove Certificate Signature
removeCertSign.header=Odstranění digitálního certifikátu z PDF removeCertSign.header=Remove the digital certificate from the PDF
removeCertSign.selectPDF=Vyberte soubor PDF: removeCertSign.selectPDF=Select a PDF file:
removeCertSign.submit=Odstranit podpis removeCertSign.submit=Remove Signature
#removeBlanks #removeBlanks
@@ -781,14 +778,11 @@ removeAnnotations.submit=Odebrat
#compare #compare
compare.title=Porovnat compare.title=Porovnat
compare.header=Porovnat PDF compare.header=Porovnat PDF
compare.highlightColor.1=Podtržovací barva 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=Podtržovací barva 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=Dokument 1 compare.document.1=Dokument 1
compare.document.2=Dokument 2 compare.document.2=Dokument 2
compare.submit=Porovnat compare.submit=Porovnat
compare.complex.message=Jedno nebo oba z předložených dokumentů jsou velké soubory, přesnost porovnání může být snižena
compare.large.file.message=Jeden nebo oba předložené dokumenty jsou příliš velké na zpracování
compare.no.text.message=Jedno nebo oba vybrané PDF soubory nemají textový obsah. Zvolte PDF soubory se textem pro porovnání.
#BookToPDF #BookToPDF
BookToPDF.title=Knihy a komiksy do PDF BookToPDF.title=Knihy a komiksy do PDF
@@ -811,11 +805,6 @@ sign.draw=Nakreslit podpis
sign.text=Vstup textu sign.text=Vstup textu
sign.clear=Vymazat sign.clear=Vymazat
sign.add=Přidat sign.add=Přidat
sign.saved=Uložené podpisy
sign.save=Uložit podpis
sign.personalSigs=Osobní podpisy
sign.sharedSigs=Sdílené podpisy
sign.noSavedSigs=Nenašly se žádné uložené podpisy
#repair #repair
@@ -834,7 +823,7 @@ flatten.submit=Zploštit
#ScannerImageSplit #ScannerImageSplit
ScannerImageSplit.selectText.1=Práh úhlu: ScannerImageSplit.selectText.1=Práh úhlu:
ScannerImageSplit.selectText.2=Nastaví minimální absolutní úhel, který je vyžadován k otočení obrázku (výchozí: 10). ScannerImageSplit.selectText.2=Nastaví minimální absolutní úhel, který je vyžadován k otočení obrázku (výchozí: 10).
ScannerImageSplit.selectText.3=Tolerancie: ScannerImageSplit.selectText.3=Tolerance:
ScannerImageSplit.selectText.4=Určuje rozsah barevné variace kolem odhadované barvy pozadí (výchozí: 30). ScannerImageSplit.selectText.4=Určuje rozsah barevné variace kolem odhadované barvy pozadí (výchozí: 30).
ScannerImageSplit.selectText.5=Minimální plocha: ScannerImageSplit.selectText.5=Minimální plocha:
ScannerImageSplit.selectText.6=Nastaví minimální plošný práh pro fotografii (výchozí: 10000). ScannerImageSplit.selectText.6=Nastaví minimální plošný práh pro fotografii (výchozí: 10000).
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=Minimální plocha kontury:
ScannerImageSplit.selectText.8=Nastaví minimální plošný práh kontury pro fotografii ScannerImageSplit.selectText.8=Nastaví minimální plošný práh kontury pro fotografii
ScannerImageSplit.selectText.9=Velikost okraje: ScannerImageSplit.selectText.9=Velikost okraje:
ScannerImageSplit.selectText.10=Nastaví velikost okraje přidaného a odebraného k zabránění bílých ohraničení ve výstupu (výchozí: 1). ScannerImageSplit.selectText.10=Nastaví velikost okraje přidaného a odebraného k zabránění bílých ohraničení ve výstupu (výchozí: 1).
ScannerImageSplit.info=Python není nainstalován. Je potřeba pro jeho spuštění. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=Zpracovat PDF s OCR
extractImages.title=Extrahovat obrázky extractImages.title=Extrahovat obrázky
extractImages.header=Extrahovat obrázky extractImages.header=Extrahovat obrázky
extractImages.selectText=Vyberte formát obrázku pro extrahované obrázky extractImages.selectText=Vyberte formát obrázku pro extrahované obrázky
extractImages.allowDuplicates=Uložit duplikátní obrázky extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Extrahovat extractImages.submit=Extrahovat
@@ -907,7 +896,7 @@ merge.title=Sloučit
merge.header=Sloučit více PDF (2+) merge.header=Sloučit více PDF (2+)
merge.sortByName=Seřadit podle názvu merge.sortByName=Seřadit podle názvu
merge.sortByDate=Seřadit podle data merge.sortByDate=Seřadit podle data
merge.removeCertSign=Odebrat digitální podpis v převedeném souboru? merge.removeCertSign=Remove digital signature in the merged file?
merge.submit=Sloučit merge.submit=Sloučit
@@ -925,7 +914,7 @@ pdfOrganiser.mode.6=Liché-Sudé rozdělení
pdfOrganiser.mode.7=Odstranit první pdfOrganiser.mode.7=Odstranit první
pdfOrganiser.mode.8=Odstranit poslední pdfOrganiser.mode.8=Odstranit poslední
pdfOrganiser.mode.9=Odstranit první a poslední pdfOrganiser.mode.9=Odstranit první a poslední
pdfOrganiser.mode.10=Lomeno spojení pdfOrganiser.mode.10=Odd-Even Merge
pdfOrganiser.placeholder=(např. 1,3,2 nebo 4-8,2,10-12 nebo 2n-1) pdfOrganiser.placeholder=(např. 1,3,2 nebo 4-8,2,10-12 nebo 2n-1)
@@ -994,7 +983,7 @@ pdfToImage.color=Barevný
pdfToImage.grey=Stupně šedi pdfToImage.grey=Stupně šedi
pdfToImage.blackwhite=Černobílý (Může dojít k ztrátě dat!) pdfToImage.blackwhite=Černobílý (Může dojít k ztrátě dat!)
pdfToImage.submit=Převést pdfToImage.submit=Převést
pdfToImage.info=Python není nainstalován. Potřebuje se pro konverzi do WebP. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1031,7 +1020,7 @@ watermark.selectText.6=Výška mezery (Mezera mezi každým vodoznakem svisle):
watermark.selectText.7=Průhlednost (0% - 100%): watermark.selectText.7=Průhlednost (0% - 100%):
watermark.selectText.8=Typ vodoznaku: watermark.selectText.8=Typ vodoznaku:
watermark.selectText.9=Obrázek vodoznaku: watermark.selectText.9=Obrázek vodoznaku:
watermark.selectText.10=Převést PDF na PDF-Obrázek watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=Přidat vodoznak watermark.submit=Přidat vodoznak
watermark.type.1=Text watermark.type.1=Text
watermark.type.2=Obrázek watermark.type.2=Obrázek
@@ -1088,7 +1077,7 @@ pdfToPDFA.credit=Tato služba používá ghostscript pro konverzi do formátu PD
pdfToPDFA.submit=Převést pdfToPDFA.submit=Převést
pdfToPDFA.tip=V současné době nepracuje pro více vstupů najednou pdfToPDFA.tip=V současné době nepracuje pro více vstupů najednou
pdfToPDFA.outputFormat=Výstupní formát pdfToPDFA.outputFormat=Výstupní formát
pdfToPDFA.pdfWithDigitalSignature=PDF obsahuje digitální podpis, který bude odebrán v následujícím kroku. pdfToPDFA.pdfWithDigitalSignature=The PDF contains a digital signature. This will be removed in the next step.
#PDFToWord #PDFToWord
@@ -1190,15 +1179,15 @@ licenses.version=Verze
licenses.license=Licence licenses.license=Licence
#survey #survey
survey.nav=Přehled survey.nav=Survey
survey.title=Stirling-PDF Přehled survey.title=Stirling-PDF Survey
survey.description=Stirling-PDF nemá sledování, proto chceme vaše názory k podnětom k lepšímu Stirling-PDF! survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF!
survey.changes=Stirling-PDF se změnil od posledního příspěvku! Další informace najdete na našem blogu zde: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=S těmito změnami získáváme platné podpory a finanční podporu od business partnerů. survey.changes2=With these changes we are getting paid business support and funding
survey.please=Please consider taking our survey! survey.please=Please consider taking our survey!
survey.disabled=(Přehled bude v budoucnu zakázán, ale zůstane k dispozici na nástavbě) survey.disabled=(Survey popup will be disabled in following updates but available at foot of page)
survey.button=Udělat Příspěvek survey.button=Take Survey
survey.dontShowAgain=Neukazuj to znovu survey.dontShowAgain=Don't show again
#error #error
@@ -1216,19 +1205,21 @@ error.discordSubmit=Discord - Odeslat příspěvek podpory
#remove-image #remove-image
removeImage.title=Odstranit obrázek removeImage.title=Remove image
removeImage.header=Odstranit obrázek removeImage.header=Remove image
removeImage.removeImage=Odstranit obrázek removeImage.removeImage=Remove image
removeImage.submit=Odebrat obrázek removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=Podělit PDF podle kapitol
splitByChapters.header=Podělení PDF na kapitoly
splitByChapters.bookmarkLevel=Úroveň záhlaví
splitByChapters.includeMetadata=Zahrnout metadatů
splitByChapters.allowDuplicates=Povolit duplicitní záznamy
splitByChapters.desc.1=Tento nástroj podělí PDF soubor na více PDF soubory na základě struktury kapitol.
splitByChapters.desc.2=Úroveň záhlaví: Zvolte úroveň záhlaví pro použití při oddělování (0 pro hlavní, 1 pro druhou úroveň atd.).
splitByChapters.desc.3=Zahrnout metadatů: Pokud je zaškrtnuto, původní metadata PDF souboru budou zahrnuty do každého odděleného PDF souboru.
splitByChapters.desc.4=Povolit duplicitní záznamy: Pokud je zaškrtnuto, návštěvníci mohou vytvořit samostatné PDF soubory z více záhlaví na stejné straně.
splitByChapters.submit=Podělit se PDF

View File

@@ -74,19 +74,17 @@ seeDockerHub=Se Docker Hub
visitGithub=Besøg Github Repository visitGithub=Besøg Github Repository
donate=Donér donate=Donér
color=Farve color=Farve
sponsor=Sponsorer sponsor=Sponsor
info=Info info=Info
pro=Pro pro=Pro
page=Sidenummer page=Page
pages=Sideantal pages=Pages
loading=Laster...
addToDoc=Tilføj til Dokument
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Vilkår og betingelser legal.terms=Terms and Conditions
legal.accessibility=Adgangsnævnteglen legal.accessibility=Accessibility
legal.cookie=Cokiebelejring legal.cookie=Cookie Policy
legal.impressum=Angivelse af ansvar legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -116,21 +114,21 @@ pipelineOptions.validateButton=Validér
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Opgrader til Pro enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Denne funktion er kun tilgængelig for Pro-brugere. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro understøtter YAML-konfigurationsfiler og andre SSO-funktioner. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert= søger du flere funktioner til brugerstyring? Prøv Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Vil du gøre Stirling PDF bedre? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF har indsat analytics for at hjælpe os med at forbedre produktet. Vi følger ikke nogen personoplysninger eller filinhold. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Bevægelsesmæssigt aktiver du analytics for at hjælpe Stirling-PDF med at vokse og til atstå os bedre at forstå vores brugere. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Aktivér analytics analytics.enable=Enable analytics
analytics.disable=Deaktiver analytics analytics.disable=Disable analytics
analytics.settings=Du kan ændre analytics-indstillingerne i config/settings.yml-filen analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=Konvertér fra PDF
navbar.sections.security=Signér & Sikkerhed navbar.sections.security=Signér & Sikkerhed
navbar.sections.advance=Avanceret navbar.sections.advance=Avanceret
navbar.sections.edit=Vis & Redigér navbar.sections.edit=Vis & Redigér
navbar.sections.popular=Populære navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -201,7 +199,7 @@ account.syncToAccount=Synkroniser Konto <- Browser
adminUserSettings.title=Brugerkontrolindstillinger adminUserSettings.title=Brugerkontrolindstillinger
adminUserSettings.header=Admin Brugerkontrolindstillinger adminUserSettings.header=Admin Brugerkontrolindstillinger
adminUserSettings.admin=Administrer adminUserSettings.admin=Admin
adminUserSettings.user=Bruger adminUserSettings.user=Bruger
adminUserSettings.addUser=Tilføj Ny Bruger adminUserSettings.addUser=Tilføj Ny Bruger
adminUserSettings.deleteUser=Slet Bruger adminUserSettings.deleteUser=Slet Bruger
@@ -245,8 +243,7 @@ database.fileNotFound=Fil ikke fundet
database.fileNullOrEmpty=Fil må ikke være null eller tom database.fileNullOrEmpty=Fil må ikke være null eller tom
database.failedImportFile=Kunne ikke importere fil database.failedImportFile=Kunne ikke importere fil
session.expired=Din sesions tid har udløbet. Genlad siden og prøv igen. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -506,28 +503,28 @@ home.removeImagePdf.desc=Fjern billede fra PDF for at reducere filstørrelse
removeImagePdf.tags=Fjern Billede,Sideoperationer,Back end,server side removeImagePdf.tags=Fjern Billede,Sideoperationer,Back end,server side
home.splitPdfByChapters.title=Partitioner PDF efter kapitler home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Partitioner en PDF i flere filer baseret på dens kapitelstruktur. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=partitionering,kapitler,merker,organisering splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=Erstat-omgivende Farve PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Erstatt farve for tekst og baggrund i en PDF og omgivende farve til fuld farve af PDF for at redusere filstørrelsen. home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Erstat Farve,Side operationer,Behandling,server side replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Erstatt eller omgivende Farvemuligheder replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Standard (høj kontrastfarver) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Brugerdefineret (anpassede farver) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Inverter alle farver replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Høj kontrastfarveindstillinger replace-color.selectText.5=High contrast color options
replace-color.selectText.6=Hvid tekst på sort baggrund replace-color.selectText.6=white text on black background
replace-color.selectText.7=Sort tekst på hvid baggrund replace-color.selectText.7=Black text on white background
replace-color.selectText.8=Gul tekst på sort baggrund replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=Grøn tekst på sort baggrund replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Vælg tekstfarve replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Vælg baggrundsfarve replace-color.selectText.11=Choose background Color
replace-color.submit=Erstat replace-color.submit=Replace
@@ -554,9 +551,10 @@ login.oauth2AccessDenied=Adgang Nægtet
login.oauth2InvalidTokenResponse=Ugyldigt Token Svar login.oauth2InvalidTokenResponse=Ugyldigt Token Svar
login.oauth2InvalidIdToken=Ugyldigt Id Token login.oauth2InvalidIdToken=Ugyldigt Id Token
login.userIsDisabled=Bruger er deaktiveret, login er i øjeblikket blokeret med dette brugernavn. Kontakt venligst administratoren. login.userIsDisabled=Bruger er deaktiveret, login er i øjeblikket blokeret med dette brugernavn. Kontakt venligst administratoren.
login.alreadyLoggedIn=Du er allerede logget ind på login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=enheder. Log ud af disse enheder og prøv igen. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Du har for mange aktive sessoner login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Auto Rediger autoRedact.title=Auto Rediger
@@ -574,7 +572,7 @@ autoRedact.submitButton=Indsend
#showJS #showJS
showJS.title=Vis Javascript showJS.title=Vis Javascript
showJS.header=Vis Javascript showJS.header=Vis Javascript
showJS.downloadJS=Last ned Javascript showJS.downloadJS=Download Javascript
showJS.submit=Vis showJS.submit=Vis
@@ -631,7 +629,7 @@ HTMLToPDF.printBackground=Render baggrunden af hjemmesider.
HTMLToPDF.defaultHeader=Aktivér Standard Header (Navn og sidenummerAS HTMLToPDF.defaultHeader=Aktivér Standard Header (Navn og sidenummerAS
HTMLToPDF.cssMediaType=Ændre CSS-medietypen for siden. HTMLToPDF.cssMediaType=Ændre CSS-medietypen for siden.
HTMLToPDF.none=Ingen HTMLToPDF.none=Ingen
HTMLToPDF.print=Skriv ud HTMLToPDF.print=Print
HTMLToPDF.screen=Skærm HTMLToPDF.screen=Skærm
@@ -643,9 +641,9 @@ AddStampRequest.stampText=Stempeltekst
AddStampRequest.stampImage=Stempelbillede AddStampRequest.stampImage=Stempelbillede
AddStampRequest.alphabet=Alfabet AddStampRequest.alphabet=Alfabet
AddStampRequest.fontSize=Skrift/Billedstørrelse AddStampRequest.fontSize=Skrift/Billedstørrelse
AddStampRequest.rotation=Vendelse AddStampRequest.rotation=Rotation
AddStampRequest.opacity=Gennemsigtighed AddStampRequest.opacity=Gennemsigtighed
AddStampRequest.position=Plassering AddStampRequest.position=Position
AddStampRequest.overrideX=Tilsidesæt X-koordinat AddStampRequest.overrideX=Tilsidesæt X-koordinat
AddStampRequest.overrideY=Tilsidesæt Y-koordinat AddStampRequest.overrideY=Tilsidesæt Y-koordinat
AddStampRequest.customMargin=Brugerdefineret Margin AddStampRequest.customMargin=Brugerdefineret Margin
@@ -669,7 +667,7 @@ addPageNumbers.title=Tilføj Sidenumre
addPageNumbers.header=Tilføj Sidenumre addPageNumbers.header=Tilføj Sidenumre
addPageNumbers.selectText.1=Vælg PDF-fil: addPageNumbers.selectText.1=Vælg PDF-fil:
addPageNumbers.selectText.2=Marginstørrelse addPageNumbers.selectText.2=Marginstørrelse
addPageNumbers.selectText.3=Plassering addPageNumbers.selectText.3=Position
addPageNumbers.selectText.4=Startnummer addPageNumbers.selectText.4=Startnummer
addPageNumbers.selectText.5=Sider at nummerere addPageNumbers.selectText.5=Sider at nummerere
addPageNumbers.selectText.6=Brugerdefineret Tekst addPageNumbers.selectText.6=Brugerdefineret Tekst
@@ -751,7 +749,6 @@ certSign.showSig=Vis Underskrift
certSign.reason=Årsag certSign.reason=Årsag
certSign.location=Placering certSign.location=Placering
certSign.name=Navn certSign.name=Navn
certSign.showLogo=Vis Logo
certSign.submit=Underskriv PDF certSign.submit=Underskriv PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Fremhævningsfarve 2:
compare.document.1=Dokument 1 compare.document.1=Dokument 1
compare.document.2=Dokument 2 compare.document.2=Dokument 2
compare.submit=Sammenlign compare.submit=Sammenlign
compare.complex.message=Et eller begge af de angivne dokumenter er store filer, præcisionen ved sammenligningen kan geminse.
compare.large.file.message=Et eller Begge af de Angivne Dokumenter Er For Store At Behandle
compare.no.text.message=Et eller Begge Af de Vælgede PDFs Har Ingen Tekstindhold. Vælg Vores PDFs Med Tekst for Sammenligning.
#BookToPDF #BookToPDF
BookToPDF.title=Bøger og Tegneserier til PDF BookToPDF.title=Bøger og Tegneserier til PDF
@@ -811,11 +805,6 @@ sign.draw=Tegn Underskrift
sign.text=Tekstinput sign.text=Tekstinput
sign.clear=Ryd sign.clear=Ryd
sign.add=Tilføj sign.add=Tilføj
sign.saved=Gemte Signaturer
sign.save=Gem Signatur
sign.personalSigs=Personlige Signaturer
sign.sharedSigs=Delte Signaturer
sign.noSavedSigs=Ingen Gemte Signaturer Fundet
#repair #repair
@@ -834,7 +823,7 @@ flatten.submit=Udjævn
#ScannerImageSplit #ScannerImageSplit
ScannerImageSplit.selectText.1=Vinkeltærskel: ScannerImageSplit.selectText.1=Vinkeltærskel:
ScannerImageSplit.selectText.2=Indstiller den minimale absolutte vinkel, der kræves for at billedet roteres (standard: 10). ScannerImageSplit.selectText.2=Indstiller den minimale absolutte vinkel, der kræves for at billedet roteres (standard: 10).
ScannerImageSplit.selectText.3=Tolerancen: ScannerImageSplit.selectText.3=Tolerance:
ScannerImageSplit.selectText.4=Bestemmer området for farvevariation omkring den estimerede baggrundsfarve (standard: 30). ScannerImageSplit.selectText.4=Bestemmer området for farvevariation omkring den estimerede baggrundsfarve (standard: 30).
ScannerImageSplit.selectText.5=Minimum Areal: ScannerImageSplit.selectText.5=Minimum Areal:
ScannerImageSplit.selectText.6=Indstiller den minimale arealtærskel for et foto (standard: 10000). ScannerImageSplit.selectText.6=Indstiller den minimale arealtærskel for et foto (standard: 10000).
@@ -1025,7 +1014,7 @@ watermark.header=Tilføj Vandmærke
watermark.selectText.1=Vælg PDF til at tilføje vandmærke: watermark.selectText.1=Vælg PDF til at tilføje vandmærke:
watermark.selectText.2=Vandmærketekst: watermark.selectText.2=Vandmærketekst:
watermark.selectText.3=Skriftstørrelse: watermark.selectText.3=Skriftstørrelse:
watermark.selectText.4=Vendt Side (0-360): watermark.selectText.4=Rotation (0-360):
watermark.selectText.5=breddeAfstand (Afstand mellem hvert vandmærke vandret): watermark.selectText.5=breddeAfstand (Afstand mellem hvert vandmærke vandret):
watermark.selectText.6=højdeAfstand (Afstand mellem hvert vandmærke lodret): watermark.selectText.6=højdeAfstand (Afstand mellem hvert vandmærke lodret):
watermark.selectText.7=Gennemsigtighed (0% - 100%): watermark.selectText.7=Gennemsigtighed (0% - 100%):
@@ -1193,8 +1182,8 @@ licenses.license=License
survey.nav=Undersøgelse survey.nav=Undersøgelse
survey.title=Stirling-PDF Undersøgelse survey.title=Stirling-PDF Undersøgelse
survey.description=Stirling-PDF har ingen sporing, så vi vil gerne høre fra vores brugere for at forbedre Stirling-PDF! survey.description=Stirling-PDF har ingen sporing, så vi vil gerne høre fra vores brugere for at forbedre Stirling-PDF!
survey.changes=Stirling-PDF Har Endtes Sidst Ganger du Foresatte En Kig! For At Lære Mere, Se Vores Blog Indlæg Her: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=Med Disse Endringer Er Vi Kommet I Betalende Forretningsstøtte og Finansiering survey.changes2=With these changes we are getting paid business support and funding
survey.please=Overvej venligst at deltage i vores undersøgelse! survey.please=Overvej venligst at deltage i vores undersøgelse!
survey.disabled=(Undersøgelsespop-up vil blive deaktiveret i følgende opdateringer, men vil være tilgængelig i bunden af siden) survey.disabled=(Undersøgelsespop-up vil blive deaktiveret i følgende opdateringer, men vil være tilgængelig i bunden af siden)
survey.button=Tag Undersøgelsen survey.button=Tag Undersøgelsen
@@ -1222,13 +1211,15 @@ removeImage.removeImage=Fjern billede
removeImage.submit=Fjern removeImage.submit=Fjern
splitByChapters.title=Del PDF ved Kapitler splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Splitter PDF efter kapitel splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bogmærke niveau splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Inkluder metadata splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Tillad duplikater splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=Denne værktøj splitter en PDF-fil op i flere PDF'er baseret på dens kapitelstruktur. splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bogmærke niveau: Vælg nivået af bogmærker, der skal bruges til at splittere (0 for hovedniveau, 1 for anden niveau osv.). splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Inkluder metadata: Hvis markeret, vil den originale PDF's metadata inkluderes i hver splitterdels PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Tillad duplikater: Hvis markeret, tillader det flere bogmærker på samme side til at oprette separate PDF'er. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Splitter PDF splitByChapters.submit=Split PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Schriftgröße addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Schriftart addPageNumbers.fontName=Font Name
pdfPrompt=PDF(s) auswählen pdfPrompt=PDF(s) auswählen
multiPdfPrompt=PDFs auswählen(2+) multiPdfPrompt=PDFs auswählen(2+)
multiPdfDropPrompt=Wählen Sie alle gewünschten PDFs aus (oder ziehen Sie sie per Drag & Drop hierhin) multiPdfDropPrompt=Wählen Sie alle gewünschten PDFs aus (oder ziehen Sie sie per Drag & Drop hierhin)
@@ -77,10 +77,8 @@ color=Farbe
sponsor=Sponsor sponsor=Sponsor
info=Informationen info=Informationen
pro=Pro pro=Pro
page=Seite page=Page
pages=Seiten pages=Pages
loading=Laden...
addToDoc=In Dokument hinzufügen
legal.privacy=Datenschutz legal.privacy=Datenschutz
legal.terms=AGB legal.terms=AGB
@@ -116,21 +114,21 @@ pipelineOptions.validateButton=Validieren
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Auf Pro-Version umsteigen enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Diese Funktion ist nur für Pro-Nutzer verfügbar. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling-PDF Pro unterstützt YAML Konfigurationsdateien, SSO und weitere Funktionen. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Suchen Sie weitere Funktionen in der Benutzerverwaltung? Steigen Sie auf die Pro-Version um enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Möchten Sie Stirling-PDF verbessern? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling-PDF verfügt über Opt-in-Analytics, die uns helfen, das Produkt zu verbessern. Wir zeichnen keine persönlichen Informationen oder Dateiinhalte auf. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Bitte erwägen Sie die Analytics zu aktivieren, um Stirling-PDF beim Wachsen zu helfen und um unsere User besser zu verstehen. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Analytics aktivieren analytics.enable=Enable analytics
analytics.disable=Analytics deaktivieren analytics.disable=Disable analytics
analytics.settings=Sie können die Einstellungen für die Analytics in der config/settings.yml Datei bearbeiten analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=Konvertieren von PDF
navbar.sections.security=Zeichen und Sicherheit navbar.sections.security=Zeichen und Sicherheit
navbar.sections.advance=Fortschrittlich navbar.sections.advance=Fortschrittlich
navbar.sections.edit=Anzeigen und Bearbeiten navbar.sections.edit=Anzeigen und Bearbeiten
navbar.sections.popular=Beliebt navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -245,8 +243,7 @@ database.fileNotFound=Datei nicht gefunden
database.fileNullOrEmpty=Datei darf nicht null oder leer sein database.fileNullOrEmpty=Datei darf nicht null oder leer sein
database.failedImportFile=Dateiimport fehlgeschlagen database.failedImportFile=Dateiimport fehlgeschlagen
session.expired=Ihre Sitzung ist abgelaufen. Bitte laden Sie die Seite neu und versuchen Sie es erneut. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -395,7 +392,7 @@ certSign.tags=authentifizieren,pem,p12,offiziell,verschlüsseln
home.removeCertSign.title=Zertifikatsignatur entfernen home.removeCertSign.title=Zertifikatsignatur entfernen
home.removeCertSign.desc=Zertifikatsignatur aus PDF entfernen home.removeCertSign.desc=Zertifikatsignatur aus PDF entfernen
removeCertSign.tags=authentifizieren,PEM,P12,offiziell,entschlüsseln removeCertSign.tags=authentifizieren,PEM,P12,offiziell,entschlüsseln,decrypt
home.pageLayout.title=Mehrseitiges Layout home.pageLayout.title=Mehrseitiges Layout
home.pageLayout.desc=Mehrere Seiten eines PDF zu einer Seite zusammenführen home.pageLayout.desc=Mehrere Seiten eines PDF zu einer Seite zusammenführen
@@ -506,28 +503,28 @@ home.removeImagePdf.desc=Bild aus PDF entfernen, um die Dateigröße zu verringe
removeImagePdf.tags=bild entfernen,seitenoperationen,back end,server side removeImagePdf.tags=bild entfernen,seitenoperationen,back end,server side
home.splitPdfByChapters.title=PDF-Datei nach Kapiteln aufteilen home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Aufteilung einer PDF-Datei in mehrere Dateien auf Basis der Kapitelstruktur. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=aufteilen,kapitel,lesezeichen,organisieren splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Farbe Ersetzen-Invertieren replace-color.title=Replace-Invert-Color
replace-color.header=Farb-PDF Ersetzen-Invertieren replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Farbe ersetzen und invertieren home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Ersetzen Sie die Farbe des Texts und Hintergrund der PDF-Datei und invertieren Sie die komplette Farbe der PDF-Datei, um die Dateigröße zu reduzieren home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Farbe ersetzen,Seiteneinstellungen,Backend,Serverseite replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Ersetzen oder Invertieren von Farboptionen replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Standard(Standardfarben mit hohem Kontrast) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Benutzerdefiniert(Benutzerdefinierte Farben) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Vollinvertierung(Invertierung aller Farben) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Farboptionen mit hohem Kontrast replace-color.selectText.5=High contrast color options
replace-color.selectText.6=Weißer Text auf schwarzem Hintergrund replace-color.selectText.6=white text on black background
replace-color.selectText.7=Schwarzer Text auf weißem Hintergrund replace-color.selectText.7=Black text on white background
replace-color.selectText.8=Gelber Text auf schwarzem Hintergrund replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=Grüner Text auf schwarzem Hintergrund replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Textfarbe auswählen replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Hintergrundfarbe auswählen replace-color.selectText.11=Choose background Color
replace-color.submit=Ersetzen replace-color.submit=Replace
@@ -554,9 +551,10 @@ login.oauth2AccessDenied=Zugriff abgelehnt
login.oauth2InvalidTokenResponse=Ungültige Token-Antwort login.oauth2InvalidTokenResponse=Ungültige Token-Antwort
login.oauth2InvalidIdToken=Ungültiges ID-Token login.oauth2InvalidIdToken=Ungültiges ID-Token
login.userIsDisabled=Benutzer ist deaktiviert, die Anmeldung ist mit diesem Benutzernamen derzeit gesperrt. Bitte wenden Sie sich an den Administrator. login.userIsDisabled=Benutzer ist deaktiviert, die Anmeldung ist mit diesem Benutzernamen derzeit gesperrt. Bitte wenden Sie sich an den Administrator.
login.alreadyLoggedIn=Sie sind bereits an login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=Geräten angemeldet. Bitte melden Sie sich dort ab und versuchen es dann erneut. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Sie haben zu viele aktive Sitzungen login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Automatisch zensieren/schwärzen autoRedact.title=Automatisch zensieren/schwärzen
@@ -706,7 +704,7 @@ autoSplitPDF.header=PDF automatisch teilen
autoSplitPDF.description=Drucken Sie, fügen Sie ein, scannen Sie, laden Sie hoch und lassen Sie uns Ihre Dokumente automatisch trennen. Kein manuelles Sortieren erforderlich. autoSplitPDF.description=Drucken Sie, fügen Sie ein, scannen Sie, laden Sie hoch und lassen Sie uns Ihre Dokumente automatisch trennen. Kein manuelles Sortieren erforderlich.
autoSplitPDF.selectText.1=Drucken Sie einige Trennblätter aus (schwarz/weiß ist ausreichend). autoSplitPDF.selectText.1=Drucken Sie einige Trennblätter aus (schwarz/weiß ist ausreichend).
autoSplitPDF.selectText.2=Scannen Sie alle Dokumente auf einmal, indem Sie das Trennblatt zwischen die Dokumente einlegen. autoSplitPDF.selectText.2=Scannen Sie alle Dokumente auf einmal, indem Sie das Trennblatt zwischen die Dokumente einlegen.
autoSplitPDF.selectText.3=Laden Sie die einzelne große gescannte PDF-Datei hoch und überlassen Sie Stirling-PDF den Rest. autoSplitPDF.selectText.3=Laden Sie die einzelne große gescannte PDF-Datei hoch und überlassen Sie Stirling PDF den Rest.
autoSplitPDF.selectText.4=Trennseiten werden automatisch erkannt und entfernt, so dass ein sauberes Enddokument garantiert ist. autoSplitPDF.selectText.4=Trennseiten werden automatisch erkannt und entfernt, so dass ein sauberes Enddokument garantiert ist.
autoSplitPDF.formPrompt=PDF mit Stirling-PDF Seitentrennern hochladen: autoSplitPDF.formPrompt=PDF mit Stirling-PDF Seitentrennern hochladen:
autoSplitPDF.duplexMode=Duplex-Modus (Scannen von Vorder- und Rückseite) autoSplitPDF.duplexMode=Duplex-Modus (Scannen von Vorder- und Rückseite)
@@ -731,7 +729,7 @@ pageLayout.submit=Abschicken
scalePages.title=Seitengröße anpassen scalePages.title=Seitengröße anpassen
scalePages.header=Seitengröße anpassen scalePages.header=Seitengröße anpassen
scalePages.pageSize=Format der Seiten des Dokuments scalePages.pageSize=Format der Seiten des Dokuments
scalePages.keepPageSize=Originalgröße beibehalten scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Zoomstufe (Ausschnitt) einer Seite scalePages.scaleFactor=Zoomstufe (Ausschnitt) einer Seite
scalePages.submit=Abschicken scalePages.submit=Abschicken
@@ -751,7 +749,6 @@ certSign.showSig=Signatur anzeigen
certSign.reason=Grund certSign.reason=Grund
certSign.location=Standort certSign.location=Standort
certSign.name=Name certSign.name=Name
certSign.showLogo=Logo anzeigen
certSign.submit=PDF signieren certSign.submit=PDF signieren
@@ -786,9 +783,6 @@ compare.highlightColor.2=Highlight-Farbe 2:
compare.document.1=Dokument 1 compare.document.1=Dokument 1
compare.document.2=Dokument 2 compare.document.2=Dokument 2
compare.submit=Vergleichen compare.submit=Vergleichen
compare.complex.message=Eines oder beide Dokumente sind sehr groß, dadurch kann die Genauigkeit des Vergleichs kann beeinträchtigt werden.
compare.large.file.message=Eines oder beide Dokumente sind zu groß, um verarbeitet zu werden
compare.no.text.message=Ein oder beide ausgewählten PDFs enthalten keine Textinhalt. Wählen Sie bitte PDFs mit Text für die Vergleichsanalyse.
#BookToPDF #BookToPDF
BookToPDF.title=Bücher und Comics zu PDF BookToPDF.title=Bücher und Comics zu PDF
@@ -811,11 +805,6 @@ sign.draw=Signatur zeichnen
sign.text=Texteingabe sign.text=Texteingabe
sign.clear=Leeren sign.clear=Leeren
sign.add=Signieren sign.add=Signieren
sign.saved=Gespeicherte Signaturen
sign.save=Signature speichern
sign.personalSigs=Persönliche Signaturen
sign.sharedSigs=Geteilte Signaturen
sign.noSavedSigs=Es wurden keine gespeicherten Signaturen gefunden
#repair #repair
@@ -869,7 +858,7 @@ ocr.submit=PDF mit OCR verarbeiten
extractImages.title=Bilder extrahieren extractImages.title=Bilder extrahieren
extractImages.header=Bilder extrahieren extractImages.header=Bilder extrahieren
extractImages.selectText=Wählen Sie das Bildformat aus, in das extrahierte Bilder konvertiert werden sollen extractImages.selectText=Wählen Sie das Bildformat aus, in das extrahierte Bilder konvertiert werden sollen
extractImages.allowDuplicates=Doppelte Bilder speichern extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Extrahieren extractImages.submit=Extrahieren
@@ -1193,8 +1182,8 @@ licenses.license=Lizenz
survey.nav=Umfrage survey.nav=Umfrage
survey.title=Stirling-PDF-Umfrage survey.title=Stirling-PDF-Umfrage
survey.description=Stirling-PDF hat kein Tracking, daher möchten wir von unseren Benutzern hören, wie wir Stirling-PDF verbessern können! survey.description=Stirling-PDF hat kein Tracking, daher möchten wir von unseren Benutzern hören, wie wir Stirling-PDF verbessern können!
survey.changes=Stirling-PDF hat sich seit der letzten Umfrage verändert! Mehr Informationen finden Sie bitte in unserem Blog-Beitrag hier: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=Mit diesen Änderungen erhalten wir beauftragte Geschäftsunterstützung und Finanzierung survey.changes2=With these changes we are getting paid business support and funding
survey.please=Bitte nehmen Sie an unserer Umfrage teil! survey.please=Bitte nehmen Sie an unserer Umfrage teil!
survey.disabled=(Das Umfrage-Popup wird in folgenden Updates deaktiviert, ist aber am Fuß der Seite verfügbar.) survey.disabled=(Das Umfrage-Popup wird in folgenden Updates deaktiviert, ist aber am Fuß der Seite verfügbar.)
survey.button=Umfrage durchführen survey.button=Umfrage durchführen
@@ -1222,13 +1211,15 @@ removeImage.removeImage=Bild entfernen
removeImage.submit=Bild entfernen removeImage.submit=Bild entfernen
splitByChapters.title=PDF nach Kapiteln aufteilen splitByChapters.title=Split PDF by Chapters
splitByChapters.header=PDF nach Kapiteln aufteilen splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Lesezeichenebene splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Metadaten einschließen splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Duplikate erlauben splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=Dieses Werkzeug teilt eine PDF-Datei auf der Grundlage ihrer Kapitelstruktur in mehrere PDF-Dateien auf. splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Lesezeichenebene: Wählen Sie die Ebene der Lesezeichen, die für die Aufteilung verwendet werden soll (0 für die erste Ebene, 1 für die zweite Ebene usw.). splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Metadaten einschließen: Wenn diese Option aktiviert ist, werden die Metadaten der ursprünglichen PDF-Datei in jede aufgeteilte PDF-Datei übernommen. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Duplikate erlauben: Wenn diese Option aktiviert ist, können mehrere Lesezeichen auf derselben Seite separate PDF Dateien erstellen. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=PDF teilen splitByChapters.submit=Split PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Μέγεθος Τύπου addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Όνομα Τύπου addPageNumbers.fontName=Font Name
pdfPrompt=Επιλογή PDF(s) pdfPrompt=Επιλογή PDF(s)
multiPdfPrompt=Επιλογή PDFs (2+) multiPdfPrompt=Επιλογή PDFs (2+)
multiPdfDropPrompt=Επιλογή (ή τράβηγμα αρχείου και απόθεση) όλων των PDF που χρειάζεστε multiPdfDropPrompt=Επιλογή (ή τράβηγμα αρχείου και απόθεση) όλων των PDF που χρειάζεστε
@@ -39,7 +39,7 @@ delete=Διαγραφή
username=Όνομα Χρήστη username=Όνομα Χρήστη
password=Κωδικός password=Κωδικός
welcome=Καλως Ήλθατε welcome=Καλως Ήλθατε
property=Χαρακτηριστικό property=Property
black=Μαύρο black=Μαύρο
white=Άσπρο white=Άσπρο
red=Κόκκινο red=Κόκκινο
@@ -56,15 +56,15 @@ userNotFoundMessage=Ο χρήστης δεν βρέθηκε.
incorrectPasswordMessage=Ο τρέχων κωδικός πρόσβασης είναι λανθασμένος. incorrectPasswordMessage=Ο τρέχων κωδικός πρόσβασης είναι λανθασμένος.
usernameExistsMessage=Το νέο όνομα χρήστη υπάρχει ήδη. usernameExistsMessage=Το νέο όνομα χρήστη υπάρχει ήδη.
invalidUsernameMessage=Μη έγκυρο όνομα χρήστη, όνομα χρήστη μπορεί να περιέχει μόνο γράμματα, αριθμούς και τους ακόλουθους ειδικούς χαρακτήρες @._+- ή πρέπει να είναι έγκυρη διεύθυνση email. invalidUsernameMessage=Μη έγκυρο όνομα χρήστη, όνομα χρήστη μπορεί να περιέχει μόνο γράμματα, αριθμούς και τους ακόλουθους ειδικούς χαρακτήρες @._+- ή πρέπει να είναι έγκυρη διεύθυνση email.
invalidPasswordMessage=Ο κωδικός πρόσβασης δεν μπορεί να είναι αδύναμος και δεν μπορεί να έχει χαμογελάτα στην αρχή ή το τέλος. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=Ο Διαβεβαιωμένος Νέος Κωδικός Πρόσβασης πρέπει να συνάρτησε με το Νέο Κωδίκο Πρόσβασης. confirmPasswordErrorMessage=New Password and Confirm New Password must match.
deleteCurrentUserMessage=Δεν είναι δυνατή η διαγραφή του τρέχοντος συνδεδεμένου χρήστη. deleteCurrentUserMessage=Δεν είναι δυνατή η διαγραφή του τρέχοντος συνδεδεμένου χρήστη.
deleteUsernameExistsMessage=Το όνομα χρήστη δεν υπάρχει και δεν μπορεί να διαγραφεί. deleteUsernameExistsMessage=Το όνομα χρήστη δεν υπάρχει και δεν μπορεί να διαγραφεί.
downgradeCurrentUserMessage=Δεν είναι δυνατή η υποβάθμιση του ρόλου του τρέχοντος χρήστη downgradeCurrentUserMessage=Δεν είναι δυνατή η υποβάθμιση του ρόλου του τρέχοντος χρήστη
disabledCurrentUserMessage=Ο σύγχρονος χρήστης δεν μπορεί να απενειλθείται disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=Δεν είναι δυνατή η υποβάθμιση του ρόλου του τρέχοντος χρήστη. Ως εκ τούτου, ο τρέχων χρήστης δεν θα εμφανίζεται. downgradeCurrentUserLongMessage=Δεν είναι δυνατή η υποβάθμιση του ρόλου του τρέχοντος χρήστη. Ως εκ τούτου, ο τρέχων χρήστης δεν θα εμφανίζεται.
userAlreadyExistsOAuthMessage=Το υχής ήδη υπάρχει ως OAuth2 χρήστης. userAlreadyExistsOAuthMessage=The user already exists as an OAuth2 user.
userAlreadyExistsWebMessage=Ο χρήστης εξαρτάται ήδη ως πλήρωμα χρήστη. userAlreadyExistsWebMessage=The user already exists as an web user.
error=Σφάλμα error=Σφάλμα
oops=Ωχ! oops=Ωχ!
help=Βοήθεια help=Βοήθεια
@@ -75,30 +75,28 @@ visitGithub=Επισκεφθείτε το Αποθετήριο του Github
donate=Δωρισε donate=Δωρισε
color=Χρώμα color=Χρώμα
sponsor=οστηρικτής sponsor=οστηρικτής
info=Πληροφορίες info=Info
pro=Προ pro=Pro
page=Σελίδα page=Page
pages=Σελίδες pages=Pages
loading=Φόρτωση...
addToDoc=Πρόσθεση στο Εκπομπώματο
legal.privacy=Πολιτική Προνομίους legal.privacy=Privacy Policy
legal.terms=Φράσεις Υποχρεωτικότητας legal.terms=Terms and Conditions
legal.accessibility=Πρόσβαση legal.accessibility=Accessibility
legal.cookie=Πολιτική Χώρου Συνθέσεων legal.cookie=Cookie Policy
legal.impressum=Κατάσταση legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
############### ###############
pipeline.header=Μενού Pipeline (Beta) pipeline.header=Μενού Pipeline (Beta)
pipeline.uploadButton=Αναβάθμιση Καλυτερού pipeline.uploadButton=Upload Custom
pipeline.configureButton=Διαμόρφωσε pipeline.configureButton=Διαμόρφωσε
pipeline.defaultOption=Κατασκευή Μετρόπολης pipeline.defaultOption=Custom
pipeline.submitButton=Υποβολή pipeline.submitButton=Υποβολή
pipeline.help=Βοήθεια για το Pipeline pipeline.help=Βοήθεια για το Pipeline
pipeline.scanHelp=Βοήθεια για Σάρωση Φακέλων pipeline.scanHelp=Βοήθεια για Σάρωση Φακέλων
pipeline.deletePrompt=Είστε σίγουροι ότι θέλετε να διαγράψετε το πρότυπο; pipeline.deletePrompt=Are you sure you want to delete pipeline
###################### ######################
# Pipeline Options # # Pipeline Options #
@@ -109,52 +107,52 @@ pipelineOptions.saveSettings=Αποθήκευση Ρυθμίσεων Λειτο
pipelineOptions.pipelineNamePrompt=Εισαγάγετε το όνομα του pipeline εδώ pipelineOptions.pipelineNamePrompt=Εισαγάγετε το όνομα του pipeline εδώ
pipelineOptions.selectOperation=Επιλέξτε Λειτουργία pipelineOptions.selectOperation=Επιλέξτε Λειτουργία
pipelineOptions.addOperationButton=Προσθήκη λειτουργίας pipelineOptions.addOperationButton=Προσθήκη λειτουργίας
pipelineOptions.pipelineHeader=Πρότυπο: pipelineOptions.pipelineHeader=Pipeline:
pipelineOptions.saveButton=Λήψη pipelineOptions.saveButton=Λήψη
pipelineOptions.validateButton=Επικυρώνω pipelineOptions.validateButton=Επικυρώνω
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Ενημερώστε σε Pro enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Αυτή η λειτουργία είναι διαθέσιμη μόνο για τους χρήστες Pro. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro υποστηρίζει αρχεία συνασκήματος YAML και άλλες λειτουργίες SSO. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Σάξεις για περισσότερες λειτουργίες διαχείρισης χρηστών; Πроверьте Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Επιθυμείτε να βελτιώσετε το Stirling PDF; analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF έχει επιλεγμένα ανάλυμα για να με βοηθήσει στην βελτίωση του προϊόντος. Δεν ακολουθούμε καμία ιδιοχειρισμένη πληροφορία ή συγκέντρωση υπόλοιπου πλάνου. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Παρακαλώ ενεργοποιήστε τα ανάλυμα για να βοηθήσετε το Stirling-PDF να ξεφύγει και να μας βοηθήσετε στον καλύτερο δυνατό ανάλυμα χρηστών. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Ενεργοποίηση ανάλυμα analytics.enable=Enable analytics
analytics.disable=Διακόπτωση ανάλυμα analytics.disable=Disable analytics
analytics.settings=Μπορείτε να αλλάξετε τις προπαραστάσεις των ανάλυμα σε υποθέσεις/settings.yml analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
############# #############
navbar.favorite=Πιρημός navbar.favorite=Favorites
navbar.darkmode=Μαύρο Θέμα navbar.darkmode=Μαύρο Θέμα
navbar.language=Γλώσσες navbar.language=Languages
navbar.settings=Ρυθμίσεις navbar.settings=Ρυθμίσεις
navbar.allTools=Εργαλεία navbar.allTools=Tools
navbar.multiTool=Multi Tools navbar.multiTool=Multi Tools
navbar.sections.organize=Οργάνωση navbar.sections.organize=Organize
navbar.sections.convertTo=Μετατροπή σε PDF navbar.sections.convertTo=Convert to PDF
navbar.sections.convertFrom=Μετατροπή από PDF navbar.sections.convertFrom=Convert from PDF
navbar.sections.security=Υπογραφή & Σέκυνση navbar.sections.security=Sign & Security
navbar.sections.advance=Διεξοδικό navbar.sections.advance=Advanced
navbar.sections.edit=Σύντομος Προβολής & Διοίκηση navbar.sections.edit=View & Edit
navbar.sections.popular=Επιφανειακά navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
############# #############
settings.title=Ρυθμίσεις settings.title=Ρυθμίσεις
settings.update=Υπάρχει διαθέσιμη ενημέρωση settings.update=Υπάρχει διαθέσιμη ενημέρωση
settings.updateAvailable={0} είναι το πρόγραμμα εκτελεσιμωμένο σήμερα. Έχετε διαθέσιμη μια νέα έκδοση (σήμερα: {1}). settings.updateAvailable={0} is the current installed version. A new version ({1}) is available.
settings.appVersion=Έκδοση εφαρμογής: settings.appVersion=Έκδοση εφαρμογής:
settings.downloadOption.title=Επιλέξετε την επιλογή λήψης (Για λήψεις μεμονωμένων αρχείων χωρίς zip): settings.downloadOption.title=Επιλέξετε την επιλογή λήψης (Για λήψεις μεμονωμένων αρχείων χωρίς zip):
settings.downloadOption.1=Άνοιγμα στο ίδιο παράθυρο settings.downloadOption.1=Άνοιγμα στο ίδιο παράθυρο
@@ -163,9 +161,9 @@ settings.downloadOption.3=Λήψη αρχείου
settings.zipThreshold=Αρχεία Zip όταν ο αριθμός των ληφθέντων αρχείων είναι πολύ μεγάλος settings.zipThreshold=Αρχεία Zip όταν ο αριθμός των ληφθέντων αρχείων είναι πολύ μεγάλος
settings.signOut=Αποσύνδεση settings.signOut=Αποσύνδεση
settings.accountSettings=Ρυθμίσεις Λογαριασμού settings.accountSettings=Ρυθμίσεις Λογαριασμού
settings.bored.help=Ενεργοποίηση παιχνίδι ευφήμων settings.bored.help=Enables easter egg game
settings.cacheInputs.name=Αποθήκευση των εισαγωγών settings.cacheInputs.name=Save form inputs
settings.cacheInputs.help=Ενεργοποίηση για να αποθηκεύσετε προηγουμένως χρησιμοποιημένες εισαγωγές για το μέλλον settings.cacheInputs.help=Enable to store previously used inputs for future runs
changeCreds.title=Αλλαγή Διαπιστευτηρίων changeCreds.title=Αλλαγή Διαπιστευτηρίων
changeCreds.header=Ενημέρωση των λεπτομερειών του Λογαριασμού σας changeCreds.header=Ενημέρωση των λεπτομερειών του Λογαριασμού σας
@@ -193,7 +191,7 @@ account.signOut=Αποσύνδεση
account.yourApiKey=Το κλειδί σας για τη διεπαφή προγραμματισμού εφαρμογών (API key) account.yourApiKey=Το κλειδί σας για τη διεπαφή προγραμματισμού εφαρμογών (API key)
account.syncTitle=Συγχρονισμός των ρυθμίσεων του φυλλομετρητή (Web Browser) με τον λογαριασμό account.syncTitle=Συγχρονισμός των ρυθμίσεων του φυλλομετρητή (Web Browser) με τον λογαριασμό
account.settingsCompare=Σύγκριση Ρυθμίσεων: account.settingsCompare=Σύγκριση Ρυθμίσεων:
account.property=Υπεροχή account.property=Property
account.webBrowserSettings=Ρύθμιση φυλλομετρητή (Web Browser) account.webBrowserSettings=Ρύθμιση φυλλομετρητή (Web Browser)
account.syncToBrowser=Συγχρονισμός Λογαριασμού -> Φυλλομετρητή (Web Browser) account.syncToBrowser=Συγχρονισμός Λογαριασμού -> Φυλλομετρητή (Web Browser)
account.syncToAccount=Συγχρονισμός Λογαριασμού <- Φυλλομετρητή (Web Browser) account.syncToAccount=Συγχρονισμός Λογαριασμού <- Φυλλομετρητή (Web Browser)
@@ -204,10 +202,10 @@ adminUserSettings.header=Ρυθμίσεις ελέγχου Διαχειριστ
adminUserSettings.admin=Διαχειριστής adminUserSettings.admin=Διαχειριστής
adminUserSettings.user=Χρήστης adminUserSettings.user=Χρήστης
adminUserSettings.addUser=Προσθήκη νέου Χρήστη adminUserSettings.addUser=Προσθήκη νέου Χρήστη
adminUserSettings.deleteUser=Διαγραφή Χρηστών adminUserSettings.deleteUser=Delete User
adminUserSettings.confirmDeleteUser=Είναι αποδεκτό να διαγράψετε τον χρήστη; adminUserSettings.confirmDeleteUser=Should the user be deleted?
adminUserSettings.confirmChangeUserStatus=Είναι αποδεκτό να αλλάξετε το σύμβαθρο του χρηστών; adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=Το όνομα χρήστη μπορεί να περιέχει μόνο γράμματα, αριθμούς και τα εξής διευρυμένα συμβολικά @._+- ή πρέπει να είναι έγκυρο e-mail. adminUserSettings.usernameInfo=Username can only contain letters, numbers and the following special characters @._+- or must be a valid email address.
adminUserSettings.roles=Ρόλοι adminUserSettings.roles=Ρόλοι
adminUserSettings.role=Ρόλος adminUserSettings.role=Ρόλος
adminUserSettings.actions=Ενέργειες adminUserSettings.actions=Ενέργειες
@@ -219,34 +217,33 @@ adminUserSettings.internalApiUser=Εσωτερικός API χρήστης
adminUserSettings.forceChange=Αναγκάστε τον χρήστη να αλλάξει το όνομα χρήστη/κωδικό πρόσβασης κατά τη σύνδεση adminUserSettings.forceChange=Αναγκάστε τον χρήστη να αλλάξει το όνομα χρήστη/κωδικό πρόσβασης κατά τη σύνδεση
adminUserSettings.submit=Αποθήκευση Χρήστη adminUserSettings.submit=Αποθήκευση Χρήστη
adminUserSettings.changeUserRole=Αλλαγή ρόλου χρήστη adminUserSettings.changeUserRole=Αλλαγή ρόλου χρήστη
adminUserSettings.authenticated=Εγγεγραφές adminUserSettings.authenticated=Authenticated
adminUserSettings.editOwnProfil=Επεξεργασία Τοποθεσίας Δικότητας adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=Ενεργούς Χρήστης adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=Απενεργούς Χρήστης adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Ενεργοί Χρήστες: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Απενεργοί Χρήστες: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Συνολικός Αριθμός Χρηστών: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=Τελευταία Ερώτηση adminUserSettings.lastRequest=Last Request
database.title=Εισάγωντας/Εξαγωγή Δεδομένων Βάσης Δεδομένων database.title=Database Import/Export
database.header=Εισάγωντας/Εξαγωγή Δεδομένων Βάσης Δεδομένων database.header=Database Import/Export
database.fileName=Όνομα αρχείου database.fileName=File Name
database.creationDate=Ημερομηνία δημιουργίας database.creationDate=Creation Date
database.fileSize=Μέγεθος αρχείου database.fileSize=File Size
database.deleteBackupFile=Διαγραφή Προγράμματος Ανασυγκρότησης database.deleteBackupFile=Delete Backup File
database.importBackupFile=Εισάγωντας Προγράμματος Ανασυγκρότησης database.importBackupFile=Import Backup File
database.downloadBackupFile=Κατέβασμα Προγράμματος Ανασυγκρότησης database.downloadBackupFile=Download Backup File
database.info_1=Όταν εισάγετε δεδομένα, είναι σημαντικό να εξασφαλίσετε τη σωστή μορφοποίηση. Αν δεν είστε σίγουροι για το ποια πράγματα κάνετε, αιτήστε υποβολή και υποστήριξη από ευελίκτω. Μια σφάλμα στη μορφοποίηση μπορεί να προκαλέσει καταστάσεις λάθους στην εφαρμογή, αν όχι ολόκληρη την αποχώρηση της εφαρμογής. database.info_1=When importing data, it is crucial to ensure the correct structure. If you are unsure of what you are doing, seek advice and support from a professional. An error in the structure can cause application malfunctions, up to and including the complete inability to run the application.
database.info_2=Το ονόμα του αρχείου δεν έχει σημασία όταν ξεκινάτε μια επέμβαση. Αλλαγήται αργότερα για να ακολουθήσει το σχήμα backup_ωςώντας_YYYYMMDDHHmm.sql, επιτρέποντας μια συνεχές κατάληψη ονόματος. database.info_2=The file name does not matter when uploading. It will be renamed afterward to follow the format backup_user_yyyyMMddHHmm.sql, ensuring a consistent naming convention.
database.submit=Εισάγωντας Προγράμματος Ανασυγκρότησης database.submit=Import Backup
database.importIntoDatabaseSuccessed=Τελείωση εισαγωγής στη βάση δεδομένων. database.importIntoDatabaseSuccessed=Import into database successed
database.fileNotFound=File not Found database.fileNotFound=File not Found
database.fileNullOrEmpty=Το αρχείο δεν μπορεί να είναι τυχόν ή κενό. database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Η σεζώνη σας υπάρξει παραγωγή. Πατήστε για να ανανεώσετε το πλήρωμα και δοκιμάστε ξανά. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -257,7 +254,7 @@ home.searchBar=Αναζήτηση για χαρακτηριστικά...
home.viewPdf.title=Εμφάνιση PDF home.viewPdf.title=Εμφάνιση PDF
home.viewPdf.desc=Εμφάνιση, προσθήκη σχεδίου, προσθήκη κειμένου ή εικόνων home.viewPdf.desc=Εμφάνιση, προσθήκη σχεδίου, προσθήκη κειμένου ή εικόνων
viewPdf.tags=ψηφιοποίηση,ανάγνωση,καταχώρηση,τεκτωνική,εικόνα viewPdf.tags=view,read,annotate,text,image
home.multiTool.title=PDF Πολυεργαλείο home.multiTool.title=PDF Πολυεργαλείο
home.multiTool.desc=Συγχώνευση, Περιστροφή, Αναδιάταξη και Κατάργηση σελίδων home.multiTool.desc=Συγχώνευση, Περιστροφή, Αναδιάταξη και Κατάργηση σελίδων
@@ -265,11 +262,11 @@ multiTool.tags=Multi Tool,Multi operation,UI,click drag,front end,client side,in
home.merge.title=Συγχώνευση home.merge.title=Συγχώνευση
home.merge.desc=Συγχώνευση πολλών PDF σε ένα με εύκολο τρόπο. home.merge.desc=Συγχώνευση πολλών PDF σε ένα με εύκολο τρόπο.
merge.tags=συνδυασμός,λεπτομέρειες σελίδας,μετάβαση από το μέχρι το κράτος,κρήτερο χρώμα merge.tags=merge,Page operations,Back end,server side
home.split.title=Διαχωρισμός home.split.title=Διαχωρισμός
home.split.desc=Διαχωρισμός των PDF σε πολλά έγγραφα. home.split.desc=Διαχωρισμός των PDF σε πολλά έγγραφα.
split.tags=λεπτομέρειες σελίδας,διαχωρισμός,πολυσελίδια,κοπή,κρήτερο χρώμα split.tags=Page operations,divide,Multi Page,cut,server side
home.rotate.title=Περιστροφή home.rotate.title=Περιστροφή
home.rotate.desc=Περιστροφή των PDF σας με εύκολο τρόπο. home.rotate.desc=Περιστροφή των PDF σας με εύκολο τρόπο.
@@ -278,45 +275,45 @@ rotate.tags=από την πλευρά του server
home.imageToPdf.title=Εικόνα σε PDF home.imageToPdf.title=Εικόνα σε PDF
home.imageToPdf.desc=Μετατροπή εικόνας (PNG, JPEG, GIF) σε PDF. home.imageToPdf.desc=Μετατροπή εικόνας (PNG, JPEG, GIF) σε PDF.
imageToPdf.tags=διαδοχική ψηφιοποίηση,εικόνα,jpg,πληροφορίας,φωτογραφία imageToPdf.tags=conversion,img,jpg,picture,photo
home.pdfToImage.title=PDF σε εικόνα home.pdfToImage.title=PDF σε εικόνα
home.pdfToImage.desc=Μετατροπή ενός PDF σε μία εικόνα. (PNG, JPEG, GIF) home.pdfToImage.desc=Μετατροπή ενός PDF σε μία εικόνα. (PNG, JPEG, GIF)
pdfToImage.tags=διαδοχική ψηφιοποίηση,εικόνα,jpg,πληροφορίας,φωτογραφία pdfToImage.tags=conversion,img,jpg,picture,photo
home.pdfOrganiser.title=Οργάνωση home.pdfOrganiser.title=Οργάνωση
home.pdfOrganiser.desc=Αφαίρεση/Αναδιάταξη σελίδων με οποιαδήποτε σειρά home.pdfOrganiser.desc=Αφαίρεση/Αναδιάταξη σελίδων με οποιαδήποτε σειρά
pdfOrganiser.tags=διπλώματος,ήρωαι,ίσοδες,κατάταξη,μέταβαση pdfOrganiser.tags=duplex,even,odd,sort,move
home.addImage.title=Προσθήκη Εικόνας home.addImage.title=Προσθήκη Εικόνας
home.addImage.desc=Προσθήκη μιας εικόνας σε μια καθορισμένη θέση στο PDF home.addImage.desc=Προσθήκη μιας εικόνας σε μια καθορισμένη θέση στο PDF
addImage.tags=εικόνα,γούστιο,φωτογραφία addImage.tags=img,jpg,picture,photo
home.watermark.title=Προσθήκη Υδατογραφήματος home.watermark.title=Προσθήκη Υδατογραφήματος
home.watermark.desc=Προσθήκη ενός προσαρμοσμένου υδατογράφηματος στο έγγραφό PDF. home.watermark.desc=Προσθήκη ενός προσαρμοσμένου υδατογράφηματος στο έγγραφό PDF.
watermark.tags=λέξη-πίνακας,τυπώμενο,ετικέτα,δικαιοχειρισμός,διόρθωση,εικόνα,γούστιο,φωτογραφία watermark.tags=Text,repeating,label,own,copyright,trademark,img,jpg,picture,photo
home.permissions.title=Αλλαγή Δικαιωμάτων home.permissions.title=Αλλαγή Δικαιωμάτων
home.permissions.desc=Αλλαγή των Δικαιωμάτων στο έγγραφο PDF home.permissions.desc=Αλλαγή των Δικαιωμάτων στο έγγραφο PDF
permissions.tags=αποκοπή,γραμμακτής,μετάβαση permissions.tags=read,write,edit,print
home.removePages.title=Αφαίρεση home.removePages.title=Αφαίρεση
home.removePages.desc=Αφαίρεση μή επιθυμητών σελίδων απο το έγγραφο PDF. home.removePages.desc=Αφαίρεση μή επιθυμητών σελίδων απο το έγγραφο PDF.
removePages.tags=απόθεση σελίδων,διαγραφή σελίδων removePages.tags=Remove pages,delete pages
home.addPassword.title=Προσθήκη κωδικού home.addPassword.title=Προσθήκη κωδικού
home.addPassword.desc=Κρυπτογράφηση - κλείδωμα του PDF αρχείου με έναν κωδικό. home.addPassword.desc=Κρυπτογράφηση - κλείδωμα του PDF αρχείου με έναν κωδικό.
addPassword.tags=σφραγίστω,σφραγίζομαι addPassword.tags=secure,security
home.removePassword.title=Αφαίρεση Κωδικού home.removePassword.title=Αφαίρεση Κωδικού
home.removePassword.desc=Κατάργήση της προστασίας με κωδικό πρόσβασης από το έγγραφο PDF. home.removePassword.desc=Κατάργήση της προστασίας με κωδικό πρόσβασης από το έγγραφο PDF.
removePassword.tags=σφραγίστω,παρακυμπνώ,σφραγική,διαγραφή σφραγίδας removePassword.tags=secure,Decrypt,security,unpassword,delete password
home.compressPdfs.title=Συμπίεση home.compressPdfs.title=Συμπίεση
home.compressPdfs.desc=Συμπίεση των αρχείων PDF για την μείωση του μεγέθους τους. home.compressPdfs.desc=Συμπίεση των αρχείων PDF για την μείωση του μεγέθους τους.
compressPdfs.tags=ελαφρύνση,κοντά,τροχιές compressPdfs.tags=squish,small,tiny
home.changeMetadata.title=Αλλαγή Μεταδεδομένων home.changeMetadata.title=Αλλαγή Μεταδεδομένων
@@ -329,16 +326,16 @@ fileToPDF.tags=transformation,format,document,picture,slide,text,conversion,offi
home.ocr.title=οπτική αναγνώριση χαρακτήρων (OCR) / Σαρώσεις Cleanup home.ocr.title=οπτική αναγνώριση χαρακτήρων (OCR) / Σαρώσεις Cleanup
home.ocr.desc=Το Cleanup σαρώνει και ανιχνεύει κείμενο από εικόνες μέσα σε ένα PDF και το προσθέτει ξανά ως κείμενο home.ocr.desc=Το Cleanup σαρώνει και ανιχνεύει κείμενο από εικόνες μέσα σε ένα PDF και το προσθέτει ξανά ως κείμενο
ocr.tags=γνώση,λέξεις,εικόνα,ζήτημα,ανίδηση,δοχή,πρόγραμμα γνωστικής ανάγνωσης ocr.tags=recognition,text,image,scan,read,identify,detection,editable
home.extractImages.title=Εξαγωγή εικόνων home.extractImages.title=Εξαγωγή εικόνων
home.extractImages.desc=Εξαγωγή όλων των εικόνων απο ένα PDF και αποθήκευση αυτών σε zip home.extractImages.desc=Εξαγωγή όλων των εικόνων απο ένα PDF και αποθήκευση αυτών σε zip
extractImages.tags=εικόνα,φωτογραφία,θυλώματος,αρχείο,γραφή,παράδειγμα extractImages.tags=picture,photo,save,archive,zip,capture,grab
home.pdfToPDFA.title=PDF σε PDF/A home.pdfToPDFA.title=PDF σε PDF/A
home.pdfToPDFA.desc=Μετατροπή PDF σε PDF/A για μακροχρόνια αποθήκευση home.pdfToPDFA.desc=Μετατροπή PDF σε PDF/A για μακροχρόνια αποθήκευση
pdfToPDFA.tags=θυλώματος,σύνολο,κανόνες,παραστατικό,κράτηση pdfToPDFA.tags=archive,long-term,standard,conversion,storage,preservation
home.PDFToWord.title=PDF σε Word home.PDFToWord.title=PDF σε Word
home.PDFToWord.desc=Μετατροπή του PDF σε Word αρχείο (DOC, DOCX and ODT) home.PDFToWord.desc=Μετατροπή του PDF σε Word αρχείο (DOC, DOCX and ODT)
@@ -354,24 +351,24 @@ PDFToText.tags=richformat,richtextformat,rich text format
home.PDFToHTML.title=PDF σε HTML home.PDFToHTML.title=PDF σε HTML
home.PDFToHTML.desc=Μετατροπή του PDF σε μορφή HTML home.PDFToHTML.desc=Μετατροπή του PDF σε μορφή HTML
PDFToHTML.tags=πρόσβαση σε πλαίσιο,περιεχόμενα για διαδικτυακά PDFToHTML.tags=web content,browser friendly
home.PDFToXML.title=PDF σε XML home.PDFToXML.title=PDF σε XML
home.PDFToXML.desc=Μετατροπή του PDF σε μορφή XML home.PDFToXML.desc=Μετατροπή του PDF σε μορφή XML
PDFToXML.tags=ξυστώση-δεδομένων,σύνθεση στρογγυλών εξισώσεων,κοντινή κατάληψη,πρόσβαση PDFToXML.tags=data-extraction,structured-content,interop,transformation,convert
home.ScannerImageSplit.title=Ανίχνευση/Διαίρεση σαρωμένων φωτογραφιών home.ScannerImageSplit.title=Ανίχνευση/Διαίρεση σαρωμένων φωτογραφιών
home.ScannerImageSplit.desc=Διαχωρίσμός πολλών φωτογραφίών μέσα από μια φωτογραφία/PDF home.ScannerImageSplit.desc=Διαχωρίσμός πολλών φωτογραφίών μέσα από μια φωτογραφία/PDF
ScannerImageSplit.tags=διχοτομία,δικτυακή-δοκιμασία,σκάνερις,θέση πλατύων,διαχώριση ScannerImageSplit.tags=separate,auto-detect,scans,multi-photo,organize
home.sign.title=Υπογραφή home.sign.title=Υπογραφή
home.sign.desc=Προσθήκη υπογραφής στο PDF με σχέδιο, κείμενο ή εικόνα. home.sign.desc=Προσθήκη υπογραφής στο PDF με σχέδιο, κείμενο ή εικόνα.
sign.tags=αποθωμάσια,κατογώρηση,φωνή,χαρακτεία-υπογραφής sign.tags=authorize,initials,drawn-signature,text-sign,image-signature
home.flatten.title=Συνοπτικοποίηση home.flatten.title=Flatten
home.flatten.desc=Κατάργηση όλων των διαδραστικών στοιχείων και φορμών από ένα PDF home.flatten.desc=Κατάργηση όλων των διαδραστικών στοιχείων και φορμών από ένα PDF
flatten.tags=εγχώριο,απενεργοποιήση,αδρανής-ενεργό,προσαρμογές flatten.tags=static,deactivate,non-interactive,streamline
home.repair.title=Επιδιόρθωση home.repair.title=Επιδιόρθωση
home.repair.desc=Προσπάθεια επιδιόρθωσης ενός κατεστραμμένου PDF home.repair.desc=Προσπάθεια επιδιόρθωσης ενός κατεστραμμένου PDF
@@ -379,87 +376,87 @@ repair.tags=fix,restore,correction,recover
home.removeBlanks.title=Αφαίρεση κενών Σελίδων home.removeBlanks.title=Αφαίρεση κενών Σελίδων
home.removeBlanks.desc=Ανίχευση και αφαίρεση κενών σελίδων από ένα έγγραφο home.removeBlanks.desc=Ανίχευση και αφαίρεση κενών σελίδων από ένα έγγραφο
removeBlanks.tags=καθαρισμός,προσαρμογές,εξωφύλακτες-δεδομένων,διοργάνωση removeBlanks.tags=cleanup,streamline,non-content,organize
home.removeAnnotations.title=Αποθήκευση Παρατηρήσεων home.removeAnnotations.title=Remove Annotations
home.removeAnnotations.desc=Ελέγξτε και προστίθετε σχόλια/παρατηρήσεις από το PDF home.removeAnnotations.desc=Removes all comments/annotations from a PDF
removeAnnotations.tags=σχόλια,κουμπί-ντεκτ,χαρτές,κάθετα-δεδομένα,αποβολή removeAnnotations.tags=comments,highlight,notes,markup,remove
home.compare.title=Σύγκριση home.compare.title=Σύγκριση
home.compare.desc=Σύγκριση και εμφάνιση των διαφορών μεταξύ δύο PDF αρχείων home.compare.desc=Σύγκριση και εμφάνιση των διαφορών μεταξύ δύο PDF αρχείων
compare.tags=διακρίσεις,σύγκριση,αλλαγές,πληθυσμική-ανάλυση compare.tags=differentiate,contrast,changes,analysis
home.certSign.title=Υπογραφή με Πιστοποιητικό home.certSign.title=Υπογραφή με Πιστοποιητικό
home.certSign.desc=Υπογραφή ενός PDF αρχείου με ένα Πιστοποιητικό/Κλειδί (PEM/P12) home.certSign.desc=Υπογραφή ενός PDF αρχείου με ένα Πιστοποιητικό/Κλειδί (PEM/P12)
certSign.tags=υπογραφή,PEM,P12,δημοσίες,δεκτικότητα,κρυπτογράφηση certSign.tags=authenticate,PEM,P12,official,encrypt
home.removeCertSign.title=Αποθήκευση Υπογραφής Τέλους home.removeCertSign.title=Remove Certificate Sign
home.removeCertSign.desc=Εμβέλειες σημάδισης από το PDF home.removeCertSign.desc=Remove certificate signature from PDF
removeCertSign.tags=υπογραφή,PEM,P12,δημοσίες,κρυπτογράφηση-κλείσιμο removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=Διάταξη πολλών σελίδων home.pageLayout.title=Διάταξη πολλών σελίδων
home.pageLayout.desc=Συγχώνευση πολλαπλών σελίδων ενός εγγράφου PDF σε μία μόνο σελίδα home.pageLayout.desc=Συγχώνευση πολλαπλών σελίδων ενός εγγράφου PDF σε μία μόνο σελίδα
pageLayout.tags=σύνθεση,ενωμένη,απλή-ροεπίσκαιρα,διοργάνωση pageLayout.tags=merge,composite,single-view,organize
home.scalePages.title=Προσαρμογή του μεγέθους/κλίμακας σελίδας home.scalePages.title=Προσαρμογή του μεγέθους/κλίμακας σελίδας
home.scalePages.desc=Αλλαγή του μεγέθους/κλίμακας μίας σελίδας και/η του περιεχομένου της. home.scalePages.desc=Αλλαγή του μεγέθους/κλίμακας μίας σελίδας και/η του περιεχομένου της.
scalePages.tags=μεταβάλλοντας τους διάστασες,ενδιαφέροντες πόροι,παρακμή,μετατύχηση scalePages.tags=resize,modify,dimension,adapt
home.pipeline.title=Pipeline (Για προχωρημένους) home.pipeline.title=Pipeline (Για προχωρημένους)
home.pipeline.desc=Εκτέλεση πολλαπλών ενεργειών σε αρχεία PDF ορίζοντας pipeline scripts home.pipeline.desc=Εκτέλεση πολλαπλών ενεργειών σε αρχεία PDF ορίζοντας pipeline scripts
pipeline.tags=αυτόματος κλωστήρας,σειρά,γραμμογραφική,αποδτομή-πακέτων pipeline.tags=automate,sequence,scripted,batch-process
home.add-page-numbers.title=Προσθήκη αριθμών σε Σελίδες home.add-page-numbers.title=Προσθήκη αριθμών σε Σελίδες
home.add-page-numbers.desc=Προσθήκη αριθμών σελίδων σε ένα έγγραφο σε μια καθορισμένη θέση home.add-page-numbers.desc=Προσθήκη αριθμών σελίδων σε ένα έγγραφο σε μια καθορισμένη θέση
add-page-numbers.tags=αυτόματη αρίθμηση σελίδων,κατάταξη,διοργάνωση,παραγγελία add-page-numbers.tags=paginate,label,organize,index
home.auto-rename.title=Αυτόματη μετονομασία αρχείου PDF home.auto-rename.title=Αυτόματη μετονομασία αρχείου PDF
home.auto-rename.desc=Αυτόματη μετονομασία ενός αρχείου PDF με βάση την κεφαλίδα που έχει εντοπιστεί home.auto-rename.desc=Αυτόματη μετονομασία ενός αρχείου PDF με βάση την κεφαλίδα που έχει εντοπιστεί
auto-rename.tags=αυτόματη αναδεικτική κατατάξη μέσω κεφαλαιών,διοργάνωση,καθαρισμός auto-rename.tags=auto-detect,header-based,organize,relabel
home.adjust-contrast.title=Προσαρμογή χρωμάτων/Αντίθεση home.adjust-contrast.title=Προσαρμογή χρωμάτων/Αντίθεση
home.adjust-contrast.desc=Προσαρμογή της αντίθεσης, του κορεσμού και της φωτεινότητας ενός PDF home.adjust-contrast.desc=Προσαρμογή της αντίθεσης, του κορεσμού και της φωτεινότητας ενός PDF
adjust-contrast.tags=καταπολέμηση του συγκρούσεων,ενδιαφέροντας ελέγχο,μεταβάλλοντας για είδη,εξέλιξη adjust-contrast.tags=color-correction,tune,modify,enhance
home.crop.title=Περικοπή PDF home.crop.title=Περικοπή PDF
home.crop.desc=Περικοπή ενός PDF για να μειωθεί το μέγεθός του (διατηρεί το κείμενο!) home.crop.desc=Περικοπή ενός PDF για να μειωθεί το μέγεθός του (διατηρεί το κείμενο!)
crop.tags=καταγραφή-καύσης,περικόπτωση,επεξεργασία,forma crop.tags=trim,shrink,edit,shape
home.autoSplitPDF.title=Αυτόματος διαχωρισμός σελίδων home.autoSplitPDF.title=Αυτόματος διαχωρισμός σελίδων
home.autoSplitPDF.desc=Αυτόματος διαχωρισμός σαρωμένου PDF με φυσικό σαρωμένο διαχωριστή σελίδων QR Code home.autoSplitPDF.desc=Αυτόματος διαχωρισμός σαρωμένου PDF με φυσικό σαρωμένο διαχωριστή σελίδων QR Code
autoSplitPDF.tags=βάσει QR-code,διχοτομία,ελέγχο-διχοτομία,κλάδωση autoSplitPDF.tags=QR-based,separate,scan-segment,organize
home.sanitizePdf.title=Απολύμανση home.sanitizePdf.title=Απολύμανση
home.sanitizePdf.desc=Αφαίρεση σεναρίων και άλλων στοιχείων από αρχεία PDF home.sanitizePdf.desc=Αφαίρεση σεναρίων και άλλων στοιχείων από αρχεία PDF
sanitizePdf.tags=καθαρισμός,διατηρητική,ασφάλεια,προσχώρηση-δυνατότητες sanitizePdf.tags=clean,secure,safe,remove-threats
home.URLToPDF.title=URL/Ιστότοπος σε PDF home.URLToPDF.title=URL/Ιστότοπος σε PDF
home.URLToPDF.desc=Μετατροπή οποιαδήποτε διεύθυνσης URL http(s) σε PDF home.URLToPDF.desc=Μετατροπή οποιαδήποτε διεύθυνσης URL http(s) σε PDF
URLToPDF.tags=καταγραφή-Διαδικτύου,θηράω-σεγκένεια,Διαδικτυακό-σε-δοκίμιο,αποθήκευση URLToPDF.tags=web-capture,save-page,web-to-doc,archive
home.HTMLToPDF.title=HTML σε PDF home.HTMLToPDF.title=HTML σε PDF
home.HTMLToPDF.desc=Μετατροπή οποιουδήποτε αρχείου HTML ή zip σε PDF home.HTMLToPDF.desc=Μετατροπή οποιουδήποτε αρχείου HTML ή zip σε PDF
HTMLToPDF.tags=μάρκαρι,χρηστήρια-Διαδικτύου,παρασταση,καλύτερο HTMLToPDF.tags=markup,web-content,transformation,convert
home.MarkdownToPDF.title=Markdown σε PDF home.MarkdownToPDF.title=Markdown σε PDF
home.MarkdownToPDF.desc=Μετατροπή οποιουδήποτε αρχείου Markdown σε PDF home.MarkdownToPDF.desc=Μετατροπή οποιουδήποτε αρχείου Markdown σε PDF
MarkdownToPDF.tags=μάρκαρι,χρηστήρια-Διαδικτύου,παρασταση,καλύτερο MarkdownToPDF.tags=markup,web-content,transformation,convert
home.getPdfInfo.title=Λήψη όλων των πληροφοριών από το PDF home.getPdfInfo.title=Λήψη όλων των πληροφοριών από το PDF
home.getPdfInfo.desc=Λήψη όλων των πιθανών πληροφοριών από τα αρχεία PDF home.getPdfInfo.desc=Λήψη όλων των πιθανών πληροφοριών από τα αρχεία PDF
getPdfInfo.tags=πληροφορίες,δεδομένα,στατιστικά,πληθυσμός getPdfInfo.tags=infomation,data,stats,statistics
home.extractPage.title=Εξαγωγή σελίδων home.extractPage.title=Εξαγωγή σελίδων
home.extractPage.desc=Εξαγωγή των επιλεγμένων σελίδων από ένα PDF home.extractPage.desc=Εξαγωγή των επιλεγμένων σελίδων από ένα PDF
extractPage.tags=αποδιατύπωση extractPage.tags=extract
home.PdfToSinglePage.title=PDF σε μία μεγάλη σελίδα home.PdfToSinglePage.title=PDF σε μία μεγάλη σελίδα
home.PdfToSinglePage.desc=Συγχώνευση όλων των σελίδων PDF σε μια μεγάλη σελίδα home.PdfToSinglePage.desc=Συγχώνευση όλων των σελίδων PDF σε μια μεγάλη σελίδα
PdfToSinglePage.tags=για-μία-σελίδα PdfToSinglePage.tags=single page
home.showJS.title=Εμφάνιση Javascript home.showJS.title=Εμφάνιση Javascript
@@ -468,29 +465,29 @@ showJS.tags=JS
home.autoRedact.title=Αυτόματο Μαύρισμα Κειμένου home.autoRedact.title=Αυτόματο Μαύρισμα Κειμένου
home.autoRedact.desc=Αυτόματη επεξεργασία (Μαύρισμα) κείμενου σε PDF με βάση το κείμενο εισαγωγής home.autoRedact.desc=Αυτόματη επεξεργασία (Μαύρισμα) κείμενου σε PDF με βάση το κείμενο εισαγωγής
autoRedact.tags=ξεκράζω,φυλακίζω,εικόνο-κουπές,κρατήστε ασφαλείς,δημιουργήστε autoRedact.tags=Redact,Hide,black out,black,marker,hidden
home.tableExtraxt.title=PDF σε CSV home.tableExtraxt.title=PDF σε CSV
home.tableExtraxt.desc=Εξάγει πίνακες από PDF μετατρέποντάς το σε CSV home.tableExtraxt.desc=Εξάγει πίνακες από PDF μετατρέποντάς το σε CSV
tableExtraxt.tags=CSV,καταθέσεις-τάβλες,αποδιατύπωση,μετατροπή tableExtraxt.tags=CSV,Table Extraction,extract,convert
home.autoSizeSplitPDF.title=Αυτόματη διαίρεση κατά μέγεθος/πλήθος home.autoSizeSplitPDF.title=Αυτόματη διαίρεση κατά μέγεθος/πλήθος
home.autoSizeSplitPDF.desc=Διαχωρίστε ένα μόνο PDF σε πολλά έγγραφα με βάση το μέγεθος, τον αριθμό σελίδων ή τον αριθμό εγγράφων home.autoSizeSplitPDF.desc=Διαχωρίστε ένα μόνο PDF σε πολλά έγγραφα με βάση το μέγεθος, τον αριθμό σελίδων ή τον αριθμό εγγράφων
autoSizeSplitPDF.tags=pdf,διαχωρισμός,γραμμακτής,διορθώσεις-κάντε autoSizeSplitPDF.tags=pdf,split,document,organization
home.overlay-pdfs.title=Επικάλυψη PDFs home.overlay-pdfs.title=Επικάλυψη PDFs
home.overlay-pdfs.desc=Επικαλύπτει αρχεία PDF πάνω σε άλλο PDF home.overlay-pdfs.desc=Επικαλύπτει αρχεία PDF πάνω σε άλλο PDF
overlay-pdfs.tags=πλέξη-πDFs overlay-pdfs.tags=Overlay
home.split-by-sections.title=Διαχωρισμός PDF ανά ενότητες home.split-by-sections.title=Διαχωρισμός PDF ανά ενότητες
home.split-by-sections.desc=Διαχωρίστε κάθε σελίδα ενός PDF σε μικρότερες οριζόντιες και κάθετες ενότητες home.split-by-sections.desc=Διαχωρίστε κάθε σελίδα ενός PDF σε μικρότερες οριζόντιες και κάθετες ενότητες
split-by-sections.tags=διχοτομία-διεργασίες,διεργασίες,κρατήστε split-by-sections.tags=Section Split, Divide, Customize
home.AddStampRequest.title=Προσθήκη σφραγίδας σε PDF home.AddStampRequest.title=Προσθήκη σφραγίδας σε PDF
home.AddStampRequest.desc=Προσθέστε κείμενο ή προσθέστε σφραγίδες εικόνας σε καθορισμένες τοποθεσίες home.AddStampRequest.desc=Προσθέστε κείμενο ή προσθέστε σφραγίδες εικόνας σε καθορισμένες τοποθεσίες
AddStampRequest.tags=κάντε-πίνακα,πρόσθεση-εικόνας,κέντρο-εικόνας,χαμυλόχατο,PDF,βάζω-δείγμα,κρατήστε AddStampRequest.tags=Stamp, Add image, center image, Watermark, PDF, Embed, Customize
home.PDFToBook.title=PDF σε Book home.PDFToBook.title=PDF σε Book
@@ -501,33 +498,33 @@ home.BookToPDF.title=Book σε PDF
home.BookToPDF.desc=Μετατρέπει τις μορφές Books/Comics σε PDF χρησιμοποιώντας calibre home.BookToPDF.desc=Μετατρέπει τις μορφές Books/Comics σε PDF χρησιμοποιώντας calibre
BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.removeImagePdf.title=Αφαίρεση εικόνας home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=Αφαίρεση εικόνας από το PDF για να μειώσετε το μέγεθος του αρχείου home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Αφαίρεση-Εικόνας,Πράξεις-Σελίδας,ύπαρξη-τμήματος,πλην-δυναμική removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=Διχοτομία PDF ανά Περιγραφές home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=διχοτομία,περιγραφές,κεφάλαια,συνορία splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=Αντικατάσταση-Αντίστροφη Παθωμένη Πίντσουρ replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Αντικατάσταση χρώματος για το πεδίο κειμένου και απόχρωμη έκθεση PDF για μείωση μεγέθους αρχείου home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Αντικατάσταση χρώματος, Διαδικασίες σελίδας, Μέσω πληροφόρησης, Από την εσωτερική replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Επιλογές αντικατάστασης-Αντίστροφης χρώματος replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Προεπιλογή (Χαράκτηρες υψηλής αντιδιαβάσιμότητας) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Εξαιρετικό (Προσωπικές επιλογές χρώματος) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Αντίστροφη Παθωμένη (Αντίστροφη αντικατάσταση όλων των πχώματος) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Επιλογές υψηλής αντιδιαβάσιμότητας replace-color.selectText.5=High contrast color options
replace-color.selectText.6=Χρίστος το πεδίο κειμένου σε μαύρη οπτική replace-color.selectText.6=white text on black background
replace-color.selectText.7=Μαύρο το πεδίο κειμένου σε χλωρό οπτική replace-color.selectText.7=Black text on white background
replace-color.selectText.8=Ευτυχισμένο το πεδίο κειμένου σε μαύρη οπτική replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=Χλωροφαίνοντος το πεδίο κειμένου σε μαύρη οπτική replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Επιλογή χρώματος του κειμένου replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Επιλογή απόχρωμης οπτικής replace-color.selectText.11=Choose background Color
replace-color.submit=Αντικατάσταση replace-color.submit=Replace
@@ -546,17 +543,18 @@ login.locked=Ο λογαριασμός σας έχει κλειδωθεί.
login.signinTitle=Παρακαλώ, συνδεθείτε login.signinTitle=Παρακαλώ, συνδεθείτε
login.ssoSignIn=Σύνδεση μέσω μοναδικής σύνδεσης login.ssoSignIn=Σύνδεση μέσω μοναδικής σύνδεσης
login.oauth2AutoCreateDisabled=Απενεργοποιήθηκε ο χρήστης αυτόματης δημιουργίας OAUTH2 login.oauth2AutoCreateDisabled=Απενεργοποιήθηκε ο χρήστης αυτόματης δημιουργίας OAUTH2
login.oauth2AdminBlockedUser=Η εγγραφή και το πληκτρολόγημα ανθρώπων με όχι εγγραμμένες λογισμικές αρχίζουν να είναι ορισμένες τοποθετήσεις. Παρακαλώ στείλτε μια ισχυρά παραίτηση στον διοικητή. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Απαιτήσεις πληροφόρησης χρήστη ανακαλύψτηκαν μη έχουν βρεθεί login.oauth2RequestNotFound=Authorization request not found
login.oauth2InvalidUserInfoResponse=Απάντηση μεμονωμένων πληροφοριών χρήστη αποδείξτηκε άγνωστη login.oauth2InvalidUserInfoResponse=Invalid User Info Response
login.oauth2invalidRequest=Αρχαίως απαιτήσεις πληροφοριών χρήστη login.oauth2invalidRequest=Invalid Request
login.oauth2AccessDenied=Πρόσβαση ορισμένες τοποθετήσεις login.oauth2AccessDenied=Access Denied
login.oauth2InvalidTokenResponse=Απάντηση άρκετο ρόταμα login.oauth2InvalidTokenResponse=Invalid Token Response
login.oauth2InvalidIdToken=Λιδός όρκου μη αρκετός login.oauth2InvalidIdToken=Invalid Id Token
login.userIsDisabled=Ο χρήστης είναι δευτεροβαθμιακά διακωμένος, το σύστημα άλλαξε τον καθώς βρεθεί. Παρακαλείστε τους αρχηγούς να επιβεβαιώσουν τη συμπεριφορά χρήστη. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=Είστε ήδη σύνδεδες σε login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=κατοχόι. Παρακαλώ δυσκέντρωση τους και προσπαθήστε ξανά. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Έχετε πολλές εγγραφές σε βίτιο μέση login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Αυτόματο Μαύρισμα Κειμένου autoRedact.title=Αυτόματο Μαύρισμα Κειμένου
@@ -566,7 +564,7 @@ autoRedact.textsToRedactLabel=Κείμενο για μαύρισμα (διαχω
autoRedact.textsToRedactPlaceholder=π.χ. \nΕμπιστευτικό \nΑκρώς απόρρητο autoRedact.textsToRedactPlaceholder=π.χ. \nΕμπιστευτικό \nΑκρώς απόρρητο
autoRedact.useRegexLabel=Χρήση Regex autoRedact.useRegexLabel=Χρήση Regex
autoRedact.wholeWordSearchLabel=Αναζήτηση ολόκληρης της λέξης autoRedact.wholeWordSearchLabel=Αναζήτηση ολόκληρης της λέξης
autoRedact.customPaddingLabel=Εμπνευσμένη Προσθήκη Ανάκρισης autoRedact.customPaddingLabel=Custom Extra Padding
autoRedact.convertPDFToImageLabel=Μετατροπή PDF σε PDF-Εικόνα (Χρησιμοποιείται για την αφαίρεση κειμένου πίσω από το πλαίσιο) autoRedact.convertPDFToImageLabel=Μετατροπή PDF σε PDF-Εικόνα (Χρησιμοποιείται για την αφαίρεση κειμένου πίσω από το πλαίσιο)
autoRedact.submitButton=Υποβολή autoRedact.submitButton=Υποβολή
@@ -632,7 +630,7 @@ HTMLToPDF.defaultHeader=Ενεργοποίηση προεπιλεγμένης κ
HTMLToPDF.cssMediaType=Αλλάξτε τον τύπο μέσων (media type )CSS της σελίδας. HTMLToPDF.cssMediaType=Αλλάξτε τον τύπο μέσων (media type )CSS της σελίδας.
HTMLToPDF.none=Κανένα HTMLToPDF.none=Κανένα
HTMLToPDF.print=Εκτύπωσε HTMLToPDF.print=Εκτύπωσε
HTMLToPDF.screen=Ορόσκοπος HTMLToPDF.screen=Screen
#AddStampRequest #AddStampRequest
@@ -731,7 +729,7 @@ pageLayout.submit=Υποβολή
scalePages.title=Προσαρμογή κλίμακας σελίδας scalePages.title=Προσαρμογή κλίμακας σελίδας
scalePages.header=Προσαρμογή κλίμακας σελίδας scalePages.header=Προσαρμογή κλίμακας σελίδας
scalePages.pageSize=Μέγεθος μιας σελίδας του εγγράφου. scalePages.pageSize=Μέγεθος μιας σελίδας του εγγράφου.
scalePages.keepPageSize=Τροποποίηση με ευθύγειες γραμμές scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Επίπεδο ζουμ (περικοπή) σελίδας. scalePages.scaleFactor=Επίπεδο ζουμ (περικοπή) σελίδας.
scalePages.submit=Υποβολή scalePages.submit=Υποβολή
@@ -751,15 +749,14 @@ certSign.showSig=Εμφάνιση Υπογραφής
certSign.reason=Αιτία certSign.reason=Αιτία
certSign.location=Τοποθεσία certSign.location=Τοποθεσία
certSign.name=Όνομα certSign.name=Όνομα
certSign.showLogo=Προειδοποίηση Παρόχου
certSign.submit=Υπογραφή PDF certSign.submit=Υπογραφή PDF
#removeCertSign #removeCertSign
removeCertSign.title=Αφαίρεση Αντικειμένων Τυπογραφίας Τομβής removeCertSign.title=Remove Certificate Signature
removeCertSign.header=Αφαίρεση της πληροφόρησης όρκου από το PDF removeCertSign.header=Remove the digital certificate from the PDF
removeCertSign.selectPDF=Επιλέξτε ένα αρχείο PDF: removeCertSign.selectPDF=Select a PDF file:
removeCertSign.submit=Αφαιρέστε την ψήφιση removeCertSign.submit=Remove Signature
#removeBlanks #removeBlanks
@@ -781,14 +778,11 @@ removeAnnotations.submit=Κατάργηση
#compare #compare
compare.title=Σύγκριση compare.title=Σύγκριση
compare.header=Σύγκριση PDFs compare.header=Σύγκριση PDFs
compare.highlightColor.1=Μάσκα Εμφανισμού 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=Μάσκα Εμφανισμού 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=Έγγραφο 1 compare.document.1=Έγγραφο 1
compare.document.2=Έγγραφο 2 compare.document.2=Έγγραφο 2
compare.submit=Σύγκριση compare.submit=Σύγκριση
compare.complex.message=Ένα ή τα δίπλα αποδεκτής χαρτογράφημα είναι μεγάλο, η πραγματικότητα αναζήτησης μπορεί να εξαβλύσει τη συγκρίση
compare.large.file.message=Ένα ή τα δίπλα αποδεκτής χαρτογράφημα είναι πολύ μεγάλο για να εξυπηρετήσει
compare.no.text.message=ένα ή τα δίπλα αποδεκτής χαρτογράφημα δεν περιέχουν κείμενο. Παρακαλώ επιλέξτε PDF με κείμενο για σύγκριση.
#BookToPDF #BookToPDF
BookToPDF.title=Books και Comics σε PDF BookToPDF.title=Books και Comics σε PDF
@@ -811,11 +805,6 @@ sign.draw=Σχεδίαση υπογραφής
sign.text=Εισαγωγή κειμένου sign.text=Εισαγωγή κειμένου
sign.clear=Καθάρισμα sign.clear=Καθάρισμα
sign.add=Προσθήκη sign.add=Προσθήκη
sign.saved=Αποθηκευμένες Αλιάσιδες
sign.save=Αποθήκευση Αλιάσης
sign.personalSigs=Προσωπικές Αλιάσεις
sign.sharedSigs=Μεταδότες Αλιάσεις
sign.noSavedSigs=Δεν βρέθηκαν αποθηκευμένες αλιάσεις
#repair #repair
@@ -825,10 +814,10 @@ repair.submit=Επιδιόρθωση
#flatten #flatten
flatten.title=Φιλοξένηση flatten.title=Flatten
flatten.header=Flatten PDFs flatten.header=Flatten PDFs
flatten.flattenOnlyForms=Φιλοξενήστε μόνο τα φόρμαδα flatten.flattenOnlyForms=Flatten only forms
flatten.submit=Φιλοξένηση flatten.submit=Flatten
#ScannerImageSplit #ScannerImageSplit
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=Ελάχιστη επιφάνεια περιγρ
ScannerImageSplit.selectText.8=Ρυθμίζει το ελάχιστο όριο περιγράμματος για μια φωτογραφία ScannerImageSplit.selectText.8=Ρυθμίζει το ελάχιστο όριο περιγράμματος για μια φωτογραφία
ScannerImageSplit.selectText.9=Μέγεθος περιγράμματος: ScannerImageSplit.selectText.9=Μέγεθος περιγράμματος:
ScannerImageSplit.selectText.10=Ορίζει το μέγεθος του περιγράμματος που προστίθεται και αφαιρείται για να αποτρέπονται λευκά περιγράμματα στην έξοδο (προεπιλογή: 1). ScannerImageSplit.selectText.10=Ορίζει το μέγεθος του περιγράμματος που προστίθεται και αφαιρείται για να αποτρέπονται λευκά περιγράμματα στην έξοδο (προεπιλογή: 1).
ScannerImageSplit.info=Δεν είναι ιστάμενος Python. Είναι απαιτήτων για τη λειτουργία. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=Επεξεργασία PDF με OCR
extractImages.title=Εξαγωγή Εικόνων extractImages.title=Εξαγωγή Εικόνων
extractImages.header=Εξαγωγή Εικόνων extractImages.header=Εξαγωγή Εικόνων
extractImages.selectText=Επιλέξτε μορφή εικόνας για να μετατρέψετε τις εξαγόμενες εικόνες extractImages.selectText=Επιλέξτε μορφή εικόνας για να μετατρέψετε τις εξαγόμενες εικόνες
extractImages.allowDuplicates=Αποθήκευση εικόνων που μπορούν να είναι ίδιες extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Εξαγωγή extractImages.submit=Εξαγωγή
@@ -877,7 +866,7 @@ extractImages.submit=Εξαγωγή
fileToPDF.title=Αρχείο σε PDF fileToPDF.title=Αρχείο σε PDF
fileToPDF.header=Μετατροπή οποιουδήποτε αρχείου σε PDF fileToPDF.header=Μετατροπή οποιουδήποτε αρχείου σε PDF
fileToPDF.credit=Αυτή η υπηρεσία χρησιμοποιεί LibreOffice και Unoconv για την μετατροπή των αρχείων. fileToPDF.credit=Αυτή η υπηρεσία χρησιμοποιεί LibreOffice και Unoconv για την μετατροπή των αρχείων.
fileToPDF.supportedFileTypesInfo=Υποστηριζόμενα αρχεία fileToPDF.supportedFileTypesInfo=Supported File types
fileToPDF.supportedFileTypes=Οι υποστηριζόμενοι τύποι αρχείων θα πρέπει να περιλαμβάνουν τα παρακάτω, ωστόσο, για μια πλήρη ενημερωμένη λίστα με τις υποστηριζόμενες μορφές, ανατρέξτε στην τεκμηρίωση του LibreOffice fileToPDF.supportedFileTypes=Οι υποστηριζόμενοι τύποι αρχείων θα πρέπει να περιλαμβάνουν τα παρακάτω, ωστόσο, για μια πλήρη ενημερωμένη λίστα με τις υποστηριζόμενες μορφές, ανατρέξτε στην τεκμηρίωση του LibreOffice
fileToPDF.submit=Μετατροπή σε PDF fileToPDF.submit=Μετατροπή σε PDF
@@ -907,7 +896,7 @@ merge.title=Συγχώνευση
merge.header=Συγχώνευση πολλαπλών PDFs (2+) merge.header=Συγχώνευση πολλαπλών PDFs (2+)
merge.sortByName=Ταξινόμηση με βάση το Όνομα merge.sortByName=Ταξινόμηση με βάση το Όνομα
merge.sortByDate=Ταξινόμηση με βάση την Ημερομηνία merge.sortByDate=Ταξινόμηση με βάση την Ημερομηνία
merge.removeCertSign=Επιλογή για τη μέριξη δικαιωμάτων σημείους σημάδους; Αφαίρεση ηλεκτρονικών πρόσβασης από το συγχέωνται αρχείο? merge.removeCertSign=Remove digital signature in the merged file?
merge.submit=Συγχώνευση merge.submit=Συγχώνευση
@@ -915,24 +904,24 @@ merge.submit=Συγχώνευση
pdfOrganiser.title=Διοργανωτής σελίδας pdfOrganiser.title=Διοργανωτής σελίδας
pdfOrganiser.header=Διοργανωτής σελίδας PDF pdfOrganiser.header=Διοργανωτής σελίδας PDF
pdfOrganiser.submit=Αναδιάταξη σελίδων pdfOrganiser.submit=Αναδιάταξη σελίδων
pdfOrganiser.mode=Τύπος pdfOrganiser.mode=Mode
pdfOrganiser.mode.1=Προσαρμοσμένη Σειρά Σελίδας pdfOrganiser.mode.1=Προσαρμοσμένη Σειρά Σελίδας
pdfOrganiser.mode.2=Αντίστροφη Σειρά pdfOrganiser.mode.2=Αντίστροφη Σειρά
pdfOrganiser.mode.3=Ταξινόμηση Διπλής Όψης (Duplex Sort) pdfOrganiser.mode.3=Ταξινόμηση Διπλής Όψης (Duplex Sort)
pdfOrganiser.mode.4=Ταξινόμηση Φυλλαδίου (Booklet Sort) pdfOrganiser.mode.4=Ταξινόμηση Φυλλαδίου (Booklet Sort)
pdfOrganiser.mode.5=Πλάσμα Σεπτιμερή Λεφτοδυοκόσμου pdfOrganiser.mode.5=Side Stitch Booklet Sort
pdfOrganiser.mode.6=Διαίρεση Μονού-Ζυγού pdfOrganiser.mode.6=Διαίρεση Μονού-Ζυγού
pdfOrganiser.mode.7=Αφαίρεση Πρώτου pdfOrganiser.mode.7=Αφαίρεση Πρώτου
pdfOrganiser.mode.8=Αφαίρεση Τελευταίου pdfOrganiser.mode.8=Αφαίρεση Τελευταίου
pdfOrganiser.mode.9=Αφαίρεση Πρώτου και Τελευταίου pdfOrganiser.mode.9=Αφαίρεση Πρώτου και Τελευταίου
pdfOrganiser.mode.10=Περίπτωση Τυχαίου Μέριξης pdfOrganiser.mode.10=Odd-Even Merge
pdfOrganiser.placeholder=(π.χ. 1,3,2 ή 4-8,2,10-12 ή 2n-1) pdfOrganiser.placeholder=(π.χ. 1,3,2 ή 4-8,2,10-12 ή 2n-1)
#multiTool #multiTool
multiTool.title=PDF Πολυεργαλείο multiTool.title=PDF Πολυεργαλείο
multiTool.header=PDF Πολυεργαλείο multiTool.header=PDF Πολυεργαλείο
multiTool.uploadPrompts=Όνομα αρχείου multiTool.uploadPrompts=File Name
#view pdf #view pdf
viewPdf.title=Προβολή PDF viewPdf.title=Προβολή PDF
@@ -994,7 +983,7 @@ pdfToImage.color=Χρώμα
pdfToImage.grey=Κλίμακα του γκρι pdfToImage.grey=Κλίμακα του γκρι
pdfToImage.blackwhite=Ασπρόμαυρο (Μπορεί να χαθούν δεδομένα!) pdfToImage.blackwhite=Ασπρόμαυρο (Μπορεί να χαθούν δεδομένα!)
pdfToImage.submit=Μετατροπή pdfToImage.submit=Μετατροπή
pdfToImage.info=Δεν είναι ιστάμενος Python. Είναι απαιτήτων για τη μετατροπή σε WebP. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1031,7 +1020,7 @@ watermark.selectText.6=heightSpacer (Κενό μεταξύ κάθε υδατογ
watermark.selectText.7=Αδιαφάνεια (Opacity) (0% - 100%): watermark.selectText.7=Αδιαφάνεια (Opacity) (0% - 100%):
watermark.selectText.8=Τύπος Υδατογραφήματος: watermark.selectText.8=Τύπος Υδατογραφήματος:
watermark.selectText.9=Εικόνα Υδατογραφήματος: watermark.selectText.9=Εικόνα Υδατογραφήματος:
watermark.selectText.10=Μετατροπή PDF σε PDF-Image watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=Προσθήκη Υδατογραφήματος watermark.submit=Προσθήκη Υδατογραφήματος
watermark.type.1=Κείμενο watermark.type.1=Κείμενο
watermark.type.2=Εικόνα watermark.type.2=Εικόνα
@@ -1075,7 +1064,7 @@ changeMetadata.keywords=Λέξεις-κλειδιά:
changeMetadata.modDate=Ημερομηνία Τροποποίησης (yyyy/MM/dd HH:mm:ss): changeMetadata.modDate=Ημερομηνία Τροποποίησης (yyyy/MM/dd HH:mm:ss):
changeMetadata.producer=Παραγωγός: changeMetadata.producer=Παραγωγός:
changeMetadata.subject=Θέμα: changeMetadata.subject=Θέμα:
changeMetadata.trapped=Τυχόν Περίκλειση: changeMetadata.trapped=Trapped:
changeMetadata.selectText.4=Άλλα μεταδεδομένα: changeMetadata.selectText.4=Άλλα μεταδεδομένα:
changeMetadata.selectText.5=Προσθήκη εγγραφής προσαρμοσμένων μεταδεδομένων changeMetadata.selectText.5=Προσθήκη εγγραφής προσαρμοσμένων μεταδεδομένων
changeMetadata.submit=Αλλαγή changeMetadata.submit=Αλλαγή
@@ -1087,8 +1076,8 @@ pdfToPDFA.header=PDF σε PDF/A
pdfToPDFA.credit=Αυτή η υπηρεσία χρησιμοποιεί ghostscript για PDF/A μετατροπή pdfToPDFA.credit=Αυτή η υπηρεσία χρησιμοποιεί ghostscript για PDF/A μετατροπή
pdfToPDFA.submit=Μετατροπή pdfToPDFA.submit=Μετατροπή
pdfToPDFA.tip=Προς το παρόν δεν λειτουργεί για πολλαπλές εισόδους ταυτόχρονα pdfToPDFA.tip=Προς το παρόν δεν λειτουργεί για πολλαπλές εισόδους ταυτόχρονα
pdfToPDFA.outputFormat=Εξόδος αναμορφώσεων pdfToPDFA.outputFormat=Output format
pdfToPDFA.pdfWithDigitalSignature=Το PDF περιέχει ηλεκτρονική ψηφιακή υπογραφή. Αυτό θα αφαιρεθεί στο επόμενο βήμα. pdfToPDFA.pdfWithDigitalSignature=The PDF contains a digital signature. This will be removed in the next step.
#PDFToWord #PDFToWord
@@ -1157,8 +1146,8 @@ overlay-pdfs.mode.fixedRepeat=Διορθώθηκε η Επικάλυψη Επα
overlay-pdfs.counts.label=Μετρήσεις επικάλυψης (για σταθερή λειτουργία επανάληψης) overlay-pdfs.counts.label=Μετρήσεις επικάλυψης (για σταθερή λειτουργία επανάληψης)
overlay-pdfs.counts.placeholder=Εισαγάγετε μετρήσεις διαχωρισμένες με κόμματα (π.χ. 2,3,1) overlay-pdfs.counts.placeholder=Εισαγάγετε μετρήσεις διαχωρισμένες με κόμματα (π.χ. 2,3,1)
overlay-pdfs.position.label=Επιλέξτε Θέση Επικάλυψης overlay-pdfs.position.label=Επιλέξτε Θέση Επικάλυψης
overlay-pdfs.position.foreground=Προσκήνιο overlay-pdfs.position.foreground=Foreground
overlay-pdfs.position.background=фондо overlay-pdfs.position.background=Background
overlay-pdfs.submit=Υποβολή overlay-pdfs.submit=Υποβολή
@@ -1174,31 +1163,31 @@ split-by-sections.merge=Συγχώνευση σε ένα PDF
#printFile #printFile
printFile.title=Εκτύπωση Αρχείου printFile.title=Print File
printFile.header=Εκτύπωση Αρχείου σε Εκτυπωτή printFile.header=Print File to Printer
printFile.selectText.1=Επιλογή Αρχείου για Εκτύπωση printFile.selectText.1=Select File to Print
printFile.selectText.2=Εισάγετε το όνομα του εκτυπωτή printFile.selectText.2=Enter Printer Name
printFile.submit=Εκτύπωση printFile.submit=Print
#licenses #licenses
licenses.nav=Άδειες licenses.nav=Άδειες
licenses.title=3rd Party Άδειες licenses.title=3rd Party Άδειες
licenses.header=3rd Party Άδειες licenses.header=3rd Party Άδειες
licenses.module=Μόδουλο licenses.module=Module
licenses.version=Εκδοχή licenses.version=Εκδοχή
licenses.license=Άδεια licenses.license=Άδεια
#survey #survey
survey.nav=Έρευνα survey.nav=Survey
survey.title=Περιεχόμενο Έρευνας Stirling-PDF survey.title=Stirling-PDF Survey
survey.description=Η Stirling-PDF δεν επηρεάζεται από τη μετακίνηση. Ελπίζουμε πως θα συμμεριζόμαστε για να βελτιώσουμε τη Stirling-PDF! survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF!
survey.changes=Αφού κάποιες αλλαγές στην Stirling-PDF, θα πρόκειται να εξετάσουμε με τρόπου πιο συγκεκριμένο αυτά. Αναχαίτιζε την ελέγχωσή τους! survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=Με αυτές τις αλλαγές, συμπεριλαμβάνονται και οι δομοφόνια χρηματοδότησης και εκπομπής survey.changes2=With these changes we are getting paid business support and funding
survey.please=Please consider taking our survey! survey.please=Please consider taking our survey!
survey.disabled=(Το παράθυρο ερεύνησης θα απενεργοποιηθεί σε μελλοντικές ενημερώσεις, αλλά θα παρουσιάζεται στο τέλος της διαδικασίας) survey.disabled=(Survey popup will be disabled in following updates but available at foot of page)
survey.button=Παίρνω μερίδα στην ερεύνα survey.button=Take Survey
survey.dontShowAgain=Δεν απεικονίζεται ξανά survey.dontShowAgain=Don't show again
#error #error
@@ -1216,19 +1205,21 @@ error.discordSubmit=Discord - Υποβάλετε ένα Support post
#remove-image #remove-image
removeImage.title=Αφαίρεση εικόνας removeImage.title=Remove image
removeImage.header=Αφαίρεση εικόνας removeImage.header=Remove image
removeImage.removeImage=Αφαίρεση εικόνας removeImage.removeImage=Remove image
removeImage.submit=Αποθέτει την εικόνα removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=Χωρίστε το PDF με βάση τα κεφάλαια
splitByChapters.header=Χωρίστε το PDF με βάση τα κεφάλαια
splitByChapters.bookmarkLevel=Επίπεδο Σήμανσης Σκέψης
splitByChapters.includeMetadata=Πρόσθεση Metadata
splitByChapters.allowDuplicates=Διάλυση Παρόντων Τίτλων Επιπέδου
splitByChapters.desc.1=Αυτή η εργαλείο χωρίζει το PDF αρχείο σε πολλά PDF βάση της καθορισμένης δομής του κεφαλαιώδους.
splitByChapters.desc.2=Επίπεδο Σήμανσης Σκέψης: Επιλέξτε το επίπεδο σήμανσης σκέψης που να χρησιμοποιηθεί για τη διάλυση (0 για το κύριο επίπεδο, 1 για το δεύτερο επίπεδο κλπ.).
splitByChapters.desc.3=Πρόσθεση Metadata: Αν επεξεργαστείται, οι αρχικές metadata του PDF θα προστεθούν σε κάθε διαλυμένο PDF.
splitByChapters.desc.4=Διάλυση Παρόντων Τίτλων Επιπέδου: Αν επεξεργαστείται, επιτρέπει τη δημιουργία αποκοπών PDF με βάση πλήρως καθορισμένους σήμαντες έδρας.
splitByChapters.submit=Διαλύστε το PDF

View File

@@ -79,8 +79,6 @@ info=Info
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed to import file database.failedImportFile=Failed to import file
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=User is deactivated, login is currently blocked with this u
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Auto Redact autoRedact.title=Auto Redact
@@ -751,7 +749,6 @@ certSign.showSig=Show Signature
certSign.reason=Reason certSign.reason=Reason
certSign.location=Location certSign.location=Location
certSign.name=Name certSign.name=Name
certSign.showLogo=Show Logo
certSign.submit=Sign PDF certSign.submit=Sign PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Highlight Color 2:
compare.document.1=Document 1 compare.document.1=Document 1
compare.document.2=Document 2 compare.document.2=Document 2
compare.submit=Compare compare.submit=Compare
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.
#BookToPDF #BookToPDF
BookToPDF.title=Books and Comics to PDF BookToPDF.title=Books and Comics to PDF
@@ -811,11 +805,6 @@ sign.draw=Draw Signature
sign.text=Text Input sign.text=Text Input
sign.clear=Clear sign.clear=Clear
sign.add=Add sign.add=Add
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -79,8 +79,6 @@ info=Info
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=User is deactivated, login is currently blocked with this u
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Auto Redact autoRedact.title=Auto Redact
@@ -751,7 +749,6 @@ certSign.showSig=Show Signature
certSign.reason=Reason certSign.reason=Reason
certSign.location=Location certSign.location=Location
certSign.name=Name certSign.name=Name
certSign.showLogo=Show Logo
certSign.submit=Sign PDF certSign.submit=Sign PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Highlight Color 2:
compare.document.1=Document 1 compare.document.1=Document 1
compare.document.2=Document 2 compare.document.2=Document 2
compare.submit=Compare compare.submit=Compare
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.
#BookToPDF #BookToPDF
BookToPDF.title=Books and Comics to PDF BookToPDF.title=Books and Comics to PDF
@@ -811,11 +805,6 @@ sign.draw=Draw Signature
sign.text=Text Input sign.text=Text Input
sign.clear=Clear sign.clear=Clear
sign.add=Add sign.add=Add
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Tamaño de Letra addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Nombre de Letra addPageNumbers.fontName=Font Name
pdfPrompt=Seleccionar PDF(s) pdfPrompt=Seleccionar PDF(s)
multiPdfPrompt=Seleccionar PDFs (2+) multiPdfPrompt=Seleccionar PDFs (2+)
multiPdfDropPrompt=Seleccione (o arrastre y suelte) todos los PDFs que quiera multiPdfDropPrompt=Seleccione (o arrastre y suelte) todos los PDFs que quiera
@@ -50,7 +50,7 @@ WorkInProgess=Tarea en progreso, puede no funcionar o ralentizarse; ¡por favor,
poweredBy=Desarrollado por poweredBy=Desarrollado por
yes= yes=
no=No no=No
changedCredsMessage=¡Se cambiaron las credenciales! changedCredsMessage=Se cambiaron las credenciales!
notAuthenticatedMessage=Usuario no autentificado. notAuthenticatedMessage=Usuario no autentificado.
userNotFoundMessage=Usuario no encontrado. userNotFoundMessage=Usuario no encontrado.
incorrectPasswordMessage=La contraseña actual no es correcta. incorrectPasswordMessage=La contraseña actual no es correcta.
@@ -75,18 +75,16 @@ visitGithub=Visitar Repositorio de Github
donate=Donar donate=Donar
color=Color color=Color
sponsor=Patrocinador sponsor=Patrocinador
info=Información info=Info
pro=Pro pro=Pro
page=Página page=Page
pages=Páginas pages=Pages
loading=Cargando...
addToDoc=Agregar al Documento
legal.privacy=Política de Privacidad legal.privacy=Privacy Policy
legal.terms=Términos y Condiciones legal.terms=Terms and Conditions
legal.accessibility=Accesibilidad legal.accessibility=Accessibility
legal.cookie=Política de Cookies legal.cookie=Cookie Policy
legal.impressum=Impresión legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -116,21 +114,21 @@ pipelineOptions.validateButton=Validar
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Actualiza a Pro enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Esta característica está únicamente disponible para usuarios Pro. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro soporta configuración de ficheros YAML y otras características SSO. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=¿Busca más funciones de administración de usuarios? Consulte Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=¿Quieres mejorar Stirling PDF? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF ha optado por analíticas para ayudarnos a mejorar el producto. No rastreamos ninguna información personal ni contenido de archivos. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Considere habilitar analíticas para ayudar a Stirling-PDF a crecer y permitirnos comprender mejor a nuestros usuarios. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Habilitar analíticas analytics.enable=Enable analytics
analytics.disable=Deshabilitar analíticas analytics.disable=Disable analytics
analytics.settings=Puede cambiar la configuración de analíticas en el archivo config/settings.yml analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=Convertir desde PDF
navbar.sections.security=Señalización y seguridad navbar.sections.security=Señalización y seguridad
navbar.sections.advance=Avanzado navbar.sections.advance=Avanzado
navbar.sections.edit=Ver y Editar navbar.sections.edit=Ver y Editar
navbar.sections.popular=Populares navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -245,8 +243,7 @@ database.fileNotFound=Archivo no encontrado
database.fileNullOrEmpty=El archivo no debe ser nulo o vacío. database.fileNullOrEmpty=El archivo no debe ser nulo o vacío.
database.failedImportFile=Archivo de importación fallido database.failedImportFile=Archivo de importación fallido
session.expired=Tu sesión ha caducado. Actualice la página e inténtelo de nuevo. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -395,7 +392,7 @@ certSign.tags=autentificar,PEM,P12,oficial,encriptar
home.removeCertSign.title=Quitar signo de certificado home.removeCertSign.title=Quitar signo de certificado
home.removeCertSign.desc=Eliminar firma de certificado de PDF home.removeCertSign.desc=Eliminar firma de certificado de PDF
removeCertSign.tags=autenticar,PEM,P12,oficial,desencriptar removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=Diseño de varias páginas home.pageLayout.title=Diseño de varias páginas
home.pageLayout.desc=Unir varias páginas de un documento PDF en una sola página home.pageLayout.desc=Unir varias páginas de un documento PDF en una sola página
@@ -506,28 +503,28 @@ home.removeImagePdf.desc=Eliminar imagen del PDF> para reducir el tamaño de arc
removeImagePdf.tags=Eliminar imagen,Operaciones de página,Back end,lado del servidor removeImagePdf.tags=Eliminar imagen,Operaciones de página,Back end,lado del servidor
home.splitPdfByChapters.title=Dividir PDF por capítulos home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Divida un PDF en varios archivos según su estructura de capítulos. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=dividir,capítulos,marcadores,organizar splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Reemplazar-Invertir-Color replace-color.title=Replace-Invert-Color
replace-color.header=Reemplazar-Invertir Color en PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Reemplazar e Invertir Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Reemplaza el color del texto y el fondo en el PDF e invierte el color completo del PDF para reducir el tamaño del archivo home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Reemplazar Color,Operaciones de Página,Back end,Lado del servidor replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Opciones para Reemplazar o Invertir color replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Predeterminado (Colores de alto contraste predeterminados) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Personalizado (Colores personalizados) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Invertir Completo (Invertir todos los colores) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Opciones de color de alto contraste replace-color.selectText.5=High contrast color options
replace-color.selectText.6=Texto blanco sobre fondo negro replace-color.selectText.6=white text on black background
replace-color.selectText.7=Texto negro sobre fondo blanco replace-color.selectText.7=Black text on white background
replace-color.selectText.8=Texto amarillo sobre fondo negro replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=Texto verde sobre fondo negro replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Elegir Color de Texto replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Elegir Color de Fondo replace-color.selectText.11=Choose background Color
replace-color.submit=Reemplazar replace-color.submit=Replace
@@ -546,7 +543,7 @@ login.locked=Su cuenta se ha bloqueado.
login.signinTitle=Por favor, inicie sesión login.signinTitle=Por favor, inicie sesión
login.ssoSignIn=Iniciar sesión a través del inicio de sesión único login.ssoSignIn=Iniciar sesión a través del inicio de sesión único
login.oauth2AutoCreateDisabled=Usuario de creación automática de OAUTH2 DESACTIVADO login.oauth2AutoCreateDisabled=Usuario de creación automática de OAUTH2 DESACTIVADO
login.oauth2AdminBlockedUser=El registro o inicio de sesión de usuarios no registrados está actualmente bloqueado. Por favor, contáctese con el administrador. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Solicitud de autorización no encontrada login.oauth2RequestNotFound=Solicitud de autorización no encontrada
login.oauth2InvalidUserInfoResponse=Respuesta de información de usuario no válida login.oauth2InvalidUserInfoResponse=Respuesta de información de usuario no válida
login.oauth2invalidRequest=Solicitud no válida login.oauth2invalidRequest=Solicitud no válida
@@ -554,9 +551,10 @@ login.oauth2AccessDenied=Acceso denegado
login.oauth2InvalidTokenResponse=Respuesta de token no válida login.oauth2InvalidTokenResponse=Respuesta de token no válida
login.oauth2InvalidIdToken=Token de identificación no válido login.oauth2InvalidIdToken=Token de identificación no válido
login.userIsDisabled=El usuario está desactivado, actualmente el acceso está bloqueado para ese nombre de usuario. Por favor, póngase en contacto con el administrador. login.userIsDisabled=El usuario está desactivado, actualmente el acceso está bloqueado para ese nombre de usuario. Por favor, póngase en contacto con el administrador.
login.alreadyLoggedIn=Ya has iniciado sesión en login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=dispositivos. Cierra sesión en los dispositivos y vuelve a intentarlo. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Tienes demasiadas sesiones activas login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Auto Redactar autoRedact.title=Auto Redactar
@@ -751,7 +749,6 @@ certSign.showSig=Mostrar firma
certSign.reason=Razón certSign.reason=Razón
certSign.location=Ubicación certSign.location=Ubicación
certSign.name=Nombre certSign.name=Nombre
certSign.showLogo=Mostrar Logotipo
certSign.submit=Firmar PDF certSign.submit=Firmar PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Color resaltado 2:
compare.document.1=Documento 1 compare.document.1=Documento 1
compare.document.2=Documento 2 compare.document.2=Documento 2
compare.submit=Comparar compare.submit=Comparar
compare.complex.message=Uno o ambos de los documentos proporcionados son archivos grandes; la precisión de la comparación puede disminuir.
compare.large.file.message=Uno o ambos de los documentos proporcionados son demasiado grandes para procesarse.
compare.no.text.message=Uno o ambos de los PDF seleccionados no contienen contenido de texto. Por favor, elija PDFs con texto para la comparación.
#BookToPDF #BookToPDF
BookToPDF.title=Libros y Cómics a PDF BookToPDF.title=Libros y Cómics a PDF
@@ -811,11 +805,6 @@ sign.draw=Dibujar firma
sign.text=Entrada de texto sign.text=Entrada de texto
sign.clear=Borrar sign.clear=Borrar
sign.add=Agregar sign.add=Agregar
sign.saved=firmas guardadas
sign.save=Guardar Firma
sign.personalSigs=Firmas Personales
sign.sharedSigs=Firmas compartidas
sign.noSavedSigs=No se encontraron firmas guardadas
#repair #repair
@@ -899,7 +888,7 @@ addImage.title=Añadir imagen
addImage.header=Añadir imagen de PDF addImage.header=Añadir imagen de PDF
addImage.everyPage=¿Todas las páginas? addImage.everyPage=¿Todas las páginas?
addImage.upload=Añadir imagen addImage.upload=Añadir imagen
addImage.submit=Enviar imagen addImage.submit=Añadir imagen
#merge #merge
@@ -1135,7 +1124,7 @@ PDFToCSV.prompt=Elija una página para extraer la tabla
PDFToCSV.submit=Extraer PDFToCSV.submit=Extraer
#split-by-size-or-count #split-by-size-or-count
split-by-size-or-count.title=Dividir PDF por tamaño o cantidad split-by-size-or-count.title=Split PDF by Size or Count
split-by-size-or-count.header=Dividir PDF por tamaño o número split-by-size-or-count.header=Dividir PDF por tamaño o número
split-by-size-or-count.type.label=Seleccionar tipo de división split-by-size-or-count.type.label=Seleccionar tipo de división
split-by-size-or-count.type.size=Por tamaño split-by-size-or-count.type.size=Por tamaño
@@ -1193,8 +1182,8 @@ licenses.license=Licencia
survey.nav=Encuesta survey.nav=Encuesta
survey.title=Encuesta Stirling-PDF survey.title=Encuesta Stirling-PDF
survey.description=Stirling-PDF no tiene seguimiento, por lo que queremos escuchar a nuestros usuarios para mejorar Stirling-PDF. survey.description=Stirling-PDF no tiene seguimiento, por lo que queremos escuchar a nuestros usuarios para mejorar Stirling-PDF.
survey.changes=Stirling-PDF ha cambiado desde la última encuesta! Para obtener más información, revise nuestro artículo de blog aquí: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=Con estos cambios estamos obteniendo apoyo y financiamiento empresarial survey.changes2=With these changes we are getting paid business support and funding
survey.please=¡Considere realizar nuestra encuesta! survey.please=¡Considere realizar nuestra encuesta!
survey.disabled=(La ventana emergente de la encuesta se desactivará en las siguientes actualizaciones, pero estará disponible al pie de la página.) survey.disabled=(La ventana emergente de la encuesta se desactivará en las siguientes actualizaciones, pero estará disponible al pie de la página.)
survey.button=Realizar encuesta survey.button=Realizar encuesta
@@ -1222,13 +1211,15 @@ removeImage.removeImage=Eliminar imagen
removeImage.submit=Eliminar imagen removeImage.submit=Eliminar imagen
splitByChapters.title=Dividir PDF por Capítulos splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Dividir PDF por Capítulos splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Nivel de Marcador splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Incluir Metadatos splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Permitir Duplicados splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=Esta herramienta divide un archivo PDF en múltiples archivos PDF según su estructura de capítulos. splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Nivel de Marcador: Elige el nivel de marcadores para dividir (0 para el nivel superior, 1 para el segundo nivel, etc.). splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Incluir Metadatos: Si está seleccionado, los metadatos del PDF original se incluirán en cada PDF dividido. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Permitir Duplicados: Si está seleccionado, permite que múltiples marcadores en la misma página creen archivos PDF separados. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Dividir PDF splitByChapters.submit=Split PDF

View File

@@ -79,8 +79,6 @@ info=Info
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=User is deactivated, login is currently blocked with this u
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Auto Idatzi autoRedact.title=Auto Idatzi
@@ -751,7 +749,6 @@ certSign.showSig=Erakutsi sinadura
certSign.reason=Arrazoia certSign.reason=Arrazoia
certSign.location=Kokalekua certSign.location=Kokalekua
certSign.name=Izena certSign.name=Izena
certSign.showLogo=Show Logo
certSign.submit=Sinatu PDFa certSign.submit=Sinatu PDFa
@@ -786,9 +783,6 @@ compare.highlightColor.2=Highlight Color 2:
compare.document.1=1. dokumentua compare.document.1=1. dokumentua
compare.document.2=2. dokumentua compare.document.2=2. dokumentua
compare.submit=Konparatu compare.submit=Konparatu
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.
#BookToPDF #BookToPDF
BookToPDF.title=Books and Comics to PDF BookToPDF.title=Books and Comics to PDF
@@ -811,11 +805,6 @@ sign.draw=Marraztu sinadura
sign.text=Testua sartzea sign.text=Testua sartzea
sign.clear=Garbitu sign.clear=Garbitu
sign.add=Gehitu sign.add=Gehitu
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -3,14 +3,14 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Taille de Police addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Nom de la Police addPageNumbers.fontName=Font Name
pdfPrompt=Sélectionnez le(s) PDF pdfPrompt=Sélectionnez le(s) PDF
multiPdfPrompt=Sélectionnez les PDF multiPdfPrompt=Sélectionnez les PDF
multiPdfDropPrompt=Sélectionnez (ou glissez-déposez) tous les PDF dont vous avez besoin multiPdfDropPrompt=Sélectionnez (ou glissez-déposez) tous les PDF dont vous avez besoin
imgPrompt=Choisir une image imgPrompt=Choisir une image
genericSubmit=Envoyer genericSubmit=Envoyer
processTimeWarning=Attention, ce processus peut prendre jusqu'à une minute en fonction de la taille du fichier. processTimeWarning=Attention, ce processus peut prendre jusquà une minute en fonction de la taille du fichier.
pageOrderPrompt=Ordre des pages (entrez une liste de numéros de page séparés par des virgules ou des fonctions telles que 2n+1) : pageOrderPrompt=Ordre des pages (entrez une liste de numéros de page séparés par des virgules ou des fonctions telles que 2n+1) :
pageSelectionPrompt=Sélection des pages (entrez une liste de numéros de page séparés par des virgules ou des fonctions telles que 2n+1) : pageSelectionPrompt=Sélection des pages (entrez une liste de numéros de page séparés par des virgules ou des fonctions telles que 2n+1) :
goToPage=Aller goToPage=Aller
@@ -23,7 +23,7 @@ close=Fermer
filesSelected=fichiers sélectionnés filesSelected=fichiers sélectionnés
noFavourites=Aucun favori ajouté noFavourites=Aucun favori ajouté
downloadComplete=Téléchargement terminé downloadComplete=Téléchargement terminé
bored=Marre d'attendre ? bored=Marre dattendre ?
alphabet=Alphabet alphabet=Alphabet
downloadPdf=Télécharger le PDF downloadPdf=Télécharger le PDF
text=Texte text=Texte
@@ -34,9 +34,9 @@ sizes.small=Petit
sizes.medium=Moyen sizes.medium=Moyen
sizes.large=Grand sizes.large=Grand
sizes.x-large=Très grand sizes.x-large=Très grand
error.pdfPassword=Le document PDF est protégé par un mot de passe qui n'a pas été fourni ou était incorrect error.pdfPassword=Le document PDF est protégé par un mot de passe qui na pas été fourni ou était incorrect
delete=Supprimer delete=Supprimer
username=Nom d'utilisateur username=Nom dutilisateur
password=Mot de passe password=Mot de passe
welcome=Bienvenue welcome=Bienvenue
property=Propriété property=Propriété
@@ -54,39 +54,37 @@ changedCredsMessage=Les identifiants ont été mis à jour !
notAuthenticatedMessage=Utilisateur non authentifié. notAuthenticatedMessage=Utilisateur non authentifié.
userNotFoundMessage=Utilisateur non trouvé. userNotFoundMessage=Utilisateur non trouvé.
incorrectPasswordMessage=Le mot de passe actuel est incorrect. incorrectPasswordMessage=Le mot de passe actuel est incorrect.
usernameExistsMessage=Le nouveau nom d'utilisateur existe déjà. usernameExistsMessage=Le nouveau nom dutilisateur existe déjà.
invalidUsernameMessage=Nom d'utilisateur invalide, le nom d'utilisateur ne peut contenir que des lettres, des chiffres et les caractères spéciaux suivants @._+- ou doit être une adresse e-mail valide. invalidUsernameMessage=Nom dutilisateur invalide, le nom dutilisateur ne peut contenir que des lettres, des chiffres et les caractères spéciaux suivants @._+- ou doit être une adresse e-mail valide.
invalidPasswordMessage=Le mot de passe ne peut pas être vide et ne doit pas contenir d'espaces au début ou en fin. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=Nouveau Mot de passe et Confirmer le Nouveau Mot de passe doivent correspondre. confirmPasswordErrorMessage=New Password and Confirm New Password must match.
deleteCurrentUserMessage=Impossible de supprimer l'utilisateur actuellement connecté. deleteCurrentUserMessage=Impossible de supprimer lutilisateur actuellement connecté.
deleteUsernameExistsMessage=Le nom d'utilisateur n'existe pas et ne peut pas être supprimé. deleteUsernameExistsMessage=Le nom dutilisateur nexiste pas et ne peut pas être supprimé.
downgradeCurrentUserMessage=Impossible de rétrograder le rôle de l'utilisateur actuel. downgradeCurrentUserMessage=Impossible de rétrograder le rôle de l'utilisateur actuel.
disabledCurrentUserMessage=L'utilisateur actuel ne peut pas être désactivé disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=Impossible de rétrograder le rôle de l'utilisateur actuel. Par conséquent, l'utilisateur actuel ne sera pas affiché. downgradeCurrentUserLongMessage=Impossible de rétrograder le rôle de l'utilisateur actuel. Par conséquent, l'utilisateur actuel ne sera pas affiché.
userAlreadyExistsOAuthMessage=L'utilisateur existe déjà en tant qu'utilisateur OAuth2. userAlreadyExistsOAuthMessage=L'utilisateur existe déjà en tant qu'utilisateur OAuth2.
userAlreadyExistsWebMessage=L'utilisateur existe déjà en tant qu'utilisateur Web. userAlreadyExistsWebMessage=L'utilisateur existe déjà en tant qu'utilisateur Web.
error=Erreur error=Erreur
oops=Oups ! oops=Oups !
help=Aide help=Aide
goHomepage=Aller à la page d'accueil goHomepage=Aller à la page daccueil
joinDiscord=Rejoignez notre serveur Discord joinDiscord=Rejoignez notre serveur Discord
seeDockerHub=Consulter le Docker Hub seeDockerHub=Consulter le Docker Hub
visitGithub=Visiter le dépôt Github visitGithub=Visiter le dépôt Github
donate=Faire un don donate=Faire un don
color=Couleur color=Couleur
sponsor=Sponsoriser sponsor=Sponsor
info=Informations info=Info
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Chargement...
addToDoc=Ajouter au Document
legal.privacy=Politique de Confidentialité legal.privacy=Privacy Policy
legal.terms=Conditions Générales legal.terms=Terms and Conditions
legal.accessibility=Accessibilité legal.accessibility=Accessibility
legal.cookie=Politique des Cookies legal.cookie=Cookie Policy
legal.impressum=Mentions Légales legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -98,7 +96,7 @@ pipeline.defaultOption=Personnaliser
pipeline.submitButton=Soumettre pipeline.submitButton=Soumettre
pipeline.help=Aide Pipeline pipeline.help=Aide Pipeline
pipeline.scanHelp=Aide analyse de dossier pipeline.scanHelp=Aide analyse de dossier
pipeline.deletePrompt=Êtes-vous sûr de vouloir supprimer le pipeline ? pipeline.deletePrompt=Are you sure you want to delete pipeline
###################### ######################
# Pipeline Options # # Pipeline Options #
@@ -109,28 +107,28 @@ pipelineOptions.saveSettings=Sauvegarder la configuration
pipelineOptions.pipelineNamePrompt=Entrez ici le nom du pipeline pipelineOptions.pipelineNamePrompt=Entrez ici le nom du pipeline
pipelineOptions.selectOperation=Sélectionner une opération pipelineOptions.selectOperation=Sélectionner une opération
pipelineOptions.addOperationButton=Ajouter une opération pipelineOptions.addOperationButton=Ajouter une opération
pipelineOptions.pipelineHeader=Pipeline : pipelineOptions.pipelineHeader=Pipeline:
pipelineOptions.saveButton=Télécharger pipelineOptions.saveButton=Télécharger
pipelineOptions.validateButton=Valider pipelineOptions.validateButton=Valider
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Passer à Pro enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Cette fonctionnalité est uniquement disponible pour les utilisateurs Pro. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro prend en charge les fichiers de configuration YAML et d'autres fonctionnalités SSO. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Vous cherchez plus de fonctionnalités de gestion des utilisateurs ? Découvrez Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Souhaitez-vous améliorer Stirling PDF ? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF utilise des analyses volontaires pour nous aider à améliorer le produit. Nous ne suivons aucune information personnelle ni le contenu des fichiers. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Veuillez envisager d'activer les analyses pour aider Stirling-PDF à se développer et pour nous permettre de mieux comprendre nos utilisateurs. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Activer les analyses analytics.enable=Enable analytics
analytics.disable=Désactiver les analyses analytics.disable=Disable analytics
analytics.settings=Vous pouvez modifier les paramètres des analyses dans le fichier config/settings.yml analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=Convertir depuis PDF
navbar.sections.security=Signature et sécurité navbar.sections.security=Signature et sécurité
navbar.sections.advance=Mode avancé navbar.sections.advance=Mode avancé
navbar.sections.edit=Voir et modifier navbar.sections.edit=Voir et modifier
navbar.sections.popular=Populaire navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -155,8 +153,8 @@ navbar.sections.popular=Populaire
settings.title=Paramètres settings.title=Paramètres
settings.update=Mise à jour disponible settings.update=Mise à jour disponible
settings.updateAvailable={0} est la version actuellement installée. Une nouvelle version ({1}) est disponible. settings.updateAvailable={0} est la version actuellement installée. Une nouvelle version ({1}) est disponible.
settings.appVersion=Version de l'application : settings.appVersion=Version de lapplication :
settings.downloadOption.title=Choisissez l'option de téléchargement (pour les téléchargements à fichier unique non ZIP) : settings.downloadOption.title=Choisissez loption de téléchargement (pour les téléchargements à fichier unique non ZIP) :
settings.downloadOption.1=Ouvrir dans la même fenêtre settings.downloadOption.1=Ouvrir dans la même fenêtre
settings.downloadOption.2=Ouvrir dans une nouvelle fenêtre settings.downloadOption.2=Ouvrir dans une nouvelle fenêtre
settings.downloadOption.3=Télécharger le fichier settings.downloadOption.3=Télécharger le fichier
@@ -170,7 +168,7 @@ settings.cacheInputs.help=Permet de stocker les entrées précédemment utilisé
changeCreds.title=Modifiez vos identifiants changeCreds.title=Modifiez vos identifiants
changeCreds.header=Mettez à jour vos identifiants de connexion changeCreds.header=Mettez à jour vos identifiants de connexion
changeCreds.changePassword=Vous utilisez les identifiants de connexion par défaut. Veuillez saisir un nouveau mot de passe changeCreds.changePassword=Vous utilisez les identifiants de connexion par défaut. Veuillez saisir un nouveau mot de passe
changeCreds.newUsername=Nouveau nom d'utilisateur changeCreds.newUsername=Nouveau nom dutilisateur
changeCreds.oldPassword=Mot de passe actuel changeCreds.oldPassword=Mot de passe actuel
changeCreds.newPassword=Nouveau mot de passe changeCreds.newPassword=Nouveau mot de passe
changeCreds.confirmNewPassword=Confirmer le nouveau mot de passe changeCreds.confirmNewPassword=Confirmer le nouveau mot de passe
@@ -180,10 +178,10 @@ changeCreds.submit=Soumettre les modifications
account.title=Paramètres du compte account.title=Paramètres du compte
account.accountSettings=Paramètres du compte account.accountSettings=Paramètres du compte
account.adminSettings=Paramètres d'administration Voir et ajouter des utilisateurs account.adminSettings=Paramètres dadministration Voir et ajouter des utilisateurs
account.userControlSettings=Contrôle des paramètres des utilisateurs account.userControlSettings=Contrôle des paramètres des utilisateurs
account.changeUsername=Modifier le nom d'utilisateur account.changeUsername=Modifier le nom dutilisateur
account.newUsername=Nouveau nom d'utilisateur account.newUsername=Nouveau nom dutilisateur
account.password=Mot de passe de confirmation account.password=Mot de passe de confirmation
account.oldPassword=Ancien mot de passe account.oldPassword=Ancien mot de passe
account.newPassword=Nouveau mot de passe account.newPassword=Nouveau mot de passe
@@ -204,49 +202,48 @@ adminUserSettings.header=Administration des paramètres des utilisateurs
adminUserSettings.admin=Administateur adminUserSettings.admin=Administateur
adminUserSettings.user=Utilisateur adminUserSettings.user=Utilisateur
adminUserSettings.addUser=Ajouter un utilisateur adminUserSettings.addUser=Ajouter un utilisateur
adminUserSettings.deleteUser=Supprimer l'utilisateur adminUserSettings.deleteUser=Delete User
adminUserSettings.confirmDeleteUser=Voulez vous vraiment supprimer l'utilisateur ? adminUserSettings.confirmDeleteUser=Should the user be deleted?
adminUserSettings.confirmChangeUserStatus=Voulez vous vraiment déactiver/réactiver l'utilisateur ? adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=Le nom d'utilisateur ne peut contenir que des lettres, des chiffres et les caractères spéciaux suivants @._+- ou doit être une adresse e-mail valide. adminUserSettings.usernameInfo=Le nom d'utilisateur ne peut contenir que des lettres, des chiffres et les caractères spéciaux suivants @._+- ou doit être une adresse e-mail valide.
adminUserSettings.roles=Rôles adminUserSettings.roles=Rôles
adminUserSettings.role=Rôle adminUserSettings.role=Rôle
adminUserSettings.actions=Actions adminUserSettings.actions=Actions
adminUserSettings.apiUser=Utilisateur API limité adminUserSettings.apiUser=Utilisateur API limité
adminUserSettings.extraApiUser=Utilisateur limité supplémentaire de l'API adminUserSettings.extraApiUser=Utilisateur limité supplémentaire de lAPI
adminUserSettings.webOnlyUser=Utilisateur Web uniquement adminUserSettings.webOnlyUser=Utilisateur Web uniquement
adminUserSettings.demoUser=Demo User (Paramètres par défaut) adminUserSettings.demoUser=Demo User (Paramètres par défaut)
adminUserSettings.internalApiUser=Utilisateur de l'API interne adminUserSettings.internalApiUser=Utilisateur de l'API interne
adminUserSettings.forceChange=Forcer l'utilisateur à changer son nom d'utilisateur/mot de passe lors de la connexion adminUserSettings.forceChange=Forcer lutilisateur à changer son nom dutilisateur/mot de passe lors de la connexion
adminUserSettings.submit=Ajouter adminUserSettings.submit=Ajouter
adminUserSettings.changeUserRole=Changer le rôle de l'utilisateur adminUserSettings.changeUserRole=Changer le rôle de l'utilisateur
adminUserSettings.authenticated=Authentifié adminUserSettings.authenticated=Authentifié
adminUserSettings.editOwnProfil=Éditer son propre profil adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=Utilisateur activé adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=Utilisateur désactivé adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Utilisateurs actifs : adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Utilisateurs désactivés : adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Utilisateurs au total : adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=Dernière requête adminUserSettings.lastRequest=Last Request
database.title=Import/Export de la Base de Données database.title=Database Import/Export
database.header=Import/Export de la Base de Données database.header=Database Import/Export
database.fileName=Nom du Fichier database.fileName=File Name
database.creationDate=Date de Création database.creationDate=Creation Date
database.fileSize=Taille du Fichier database.fileSize=File Size
database.deleteBackupFile=Supprimer le fichier de sauvegarde database.deleteBackupFile=Delete Backup File
database.importBackupFile=Importer le fichier de sauvegarde database.importBackupFile=Import Backup File
database.downloadBackupFile=Télécharger le fichier de sauvegarde database.downloadBackupFile=Download Backup File
database.info_1=Lors de l'importation des données, il est crucial de garantir la structure correcte. Si vous n'êtes pas sûr de ce que vous faites, sollicitez un avis et un soutien d'un professionnel. Une erreur dans la structure peut entraîner des dysfonctionnements de l'application, allant jusqu'à l'incapacité totale d'exécuter l'application. database.info_1=When importing data, it is crucial to ensure the correct structure. If you are unsure of what you are doing, seek advice and support from a professional. An error in the structure can cause application malfunctions, up to and including the complete inability to run the application.
database.info_2=Le nom du fichier ne fait pas de différence lors de l'upload. Il sera renommé ultérieurement selon le format backup_user_yyyyMMddHHmm.sql, assurant ainsi une convention de nommage cohérente. database.info_2=The file name does not matter when uploading. It will be renamed afterward to follow the format backup_user_yyyyMMddHHmm.sql, ensuring a consistent naming convention.
database.submit=Importer la sauvegarde database.submit=Import Backup
database.importIntoDatabaseSuccessed=Importation dans la base de données réussie database.importIntoDatabaseSuccessed=Import into database successed
database.fileNotFound=File not Found database.fileNotFound=File not Found
database.fileNullOrEmpty=Fichier ne peut pas être null ou vide database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Votre session a expiré. Veuillez recharger la page et réessayer. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -285,7 +282,7 @@ home.pdfToImage.desc=Convertissez un PDF en image (PNG, JPEG, GIF).
pdfToImage.tags=conversion,img,jpg,image,photo pdfToImage.tags=conversion,img,jpg,image,photo
home.pdfOrganiser.title=Organiser home.pdfOrganiser.title=Organiser
home.pdfOrganiser.desc=Supprimez ou réorganisez les pages dans n'importe quel ordre. home.pdfOrganiser.desc=Supprimez ou réorganisez les pages dans nimporte quel ordre.
pdfOrganiser.tags=organiser,recto-verso,duplex,even,odd,sort,move pdfOrganiser.tags=organiser,recto-verso,duplex,even,odd,sort,move
@@ -295,7 +292,7 @@ addImage.tags=img,jpg,image,photo
home.watermark.title=Ajouter un filigrane home.watermark.title=Ajouter un filigrane
home.watermark.desc=Ajoutez un filigrane personnalisé à votre PDF. home.watermark.desc=Ajoutez un filigrane personnalisé à votre PDF.
watermark.tags=texte,filigrane,label,propriété,droit d'auteur,marque déposée,img,jpg,image,photo,copyright,trademark watermark.tags=texte,filigrane,label,propriété,droit dauteur,marque déposée,img,jpg,image,photo,copyright,trademark
home.permissions.title=Modifier les permissions home.permissions.title=Modifier les permissions
home.permissions.desc=Modifiez les permissions de votre PDF. home.permissions.desc=Modifiez les permissions de votre PDF.
@@ -324,16 +321,16 @@ home.changeMetadata.desc=Modifiez, supprimez ou ajoutez des métadonnées à un
changeMetadata.tags=métadonnées,titre,auteur,date,création,heure,éditeur,statistiques,title,author,date,creation,time,publisher,producer,stats,metadata changeMetadata.tags=métadonnées,titre,auteur,date,création,heure,éditeur,statistiques,title,author,date,creation,time,publisher,producer,stats,metadata
home.fileToPDF.title=Fichier en PDF home.fileToPDF.title=Fichier en PDF
home.fileToPDF.desc=Convertissez presque n'importe quel fichier en PDF (DOCX, PNG, XLS, PPT, TXT, etc.). home.fileToPDF.desc=Convertissez presque nimporte quel fichiers en PDF (DOCX, PNG, XLS, PPT, TXT et plus).
fileToPDF.tags=convertion,transformation,format,document,image,slide,texte,conversion,office,docs,word,excel,powerpoint fileToPDF.tags=convertion,transformation,format,document,image,slide,texte,conversion,office,docs,word,excel,powerpoint
home.ocr.title=OCR / Nettoyage des numérisations home.ocr.title=OCR / Nettoyage des numérisations
home.ocr.desc=Utilisez l'OCR pour analyser et détecter le texte des images d'un PDF et le rajouter en tant que tel. home.ocr.desc=Utilisez lOCR pour analyser et détecter le texte des images dun PDF et le rajouter en tant que tel.
ocr.tags=ocr,reconnaissance,texte,image,numérisation,scan,read,identify,detection,editable ocr.tags=ocr,reconnaissance,texte,image,numérisation,scan,read,identify,detection,editable
home.extractImages.title=Extraire les images home.extractImages.title=Extraire les images
home.extractImages.desc=Extrayez toutes les images d'un PDF et enregistrez-les dans un ZIP. home.extractImages.desc=Extrayez toutes les images dun PDF et enregistrez-les dans un ZIP.
extractImages.tags=image,photo,save,archive,zip,capture,grab extractImages.tags=image,photo,save,archive,zip,capture,grab
home.pdfToPDFA.title=PDF en PDF/A home.pdfToPDFA.title=PDF en PDF/A
@@ -342,7 +339,7 @@ pdfToPDFA.tags=convertion,archive,long-term,standard,conversion,storage,préserv
home.PDFToWord.title=PDF en Word home.PDFToWord.title=PDF en Word
home.PDFToWord.desc=Convertissez un PDF en Word (DOC, DOCX et ODT). home.PDFToWord.desc=Convertissez un PDF en Word (DOC, DOCX et ODT).
PDFToWord.tags=doc, docx, odt, word, transformation, format, conversion, office, microsoft, docfile PDFToWord.tags=doc,docx,odt,word,transformation,format,conversion,office,microsoft,docfile
home.PDFToPresentation.title=PDF en formats de présentation home.PDFToPresentation.title=PDF en formats de présentation
home.PDFToPresentation.desc=Convertissez un PDF en format de présentation (PPT, PPTX et ODP). home.PDFToPresentation.desc=Convertissez un PDF en format de présentation (PPT, PPTX et ODP).
@@ -350,7 +347,7 @@ PDFToPresentation.tags=présentation,slides,show,office,microsoft
home.PDFToText.title=PDF en RTF (texte) home.PDFToText.title=PDF en RTF (texte)
home.PDFToText.desc=Convertissez un PDF au format RTF (texte). home.PDFToText.desc=Convertissez un PDF au format RTF (texte).
PDFToText.tags=format riche, format de texte riche, format de texte enrichi PDFToText.tags=richformat,richtextformat,rich text format
home.PDFToHTML.title=PDF en HTML home.PDFToHTML.title=PDF en HTML
home.PDFToHTML.desc=Convertissez un PDF au format HTML. home.PDFToHTML.desc=Convertissez un PDF au format HTML.
@@ -362,7 +359,7 @@ home.PDFToXML.desc=Convertissez un PDF au format XML.
PDFToXML.tags=xml,extraction de données,contenu structuré,interopérabilité,data-extraction,structured-content,interop,transformation,convert PDFToXML.tags=xml,extraction de données,contenu structuré,interopérabilité,data-extraction,structured-content,interop,transformation,convert
home.ScannerImageSplit.title=Diviser les photos numérisées home.ScannerImageSplit.title=Diviser les photos numérisées
home.ScannerImageSplit.desc=Divisez plusieurs photos à partir d'une photo ou d'un PDF. home.ScannerImageSplit.desc=Divisez plusieurs photos à partir dune photo ou dun PDF.
ScannerImageSplit.tags=diviser,détecter automatiquement,numériser,separate,auto-detect,scans,multi-photo,organize ScannerImageSplit.tags=diviser,détecter automatiquement,numériser,separate,auto-detect,scans,multi-photo,organize
home.sign.title=Signer home.sign.title=Signer
@@ -370,7 +367,7 @@ home.sign.desc=Ajoutez une signature au PDF avec un dessin, du texte ou une imag
sign.tags=signer,authorize,initials,drawn-signature,text-sign,image-signature sign.tags=signer,authorize,initials,drawn-signature,text-sign,image-signature
home.flatten.title=Rendre inerte home.flatten.title=Rendre inerte
home.flatten.desc=Supprimez tous les éléments et formulaires interactifs d'un PDF. home.flatten.desc=Supprimez tous les éléments et formulaires interactifs dun PDF.
flatten.tags=inerte,static,deactivate,non-interactive,streamline flatten.tags=inerte,static,deactivate,non-interactive,streamline
home.repair.title=Réparer home.repair.title=Réparer
@@ -378,11 +375,11 @@ home.repair.desc=Essayez de réparer un PDF corrompu ou cassé.
repair.tags=réparer,restaurer,corriger,récupérer,fix,restore,correction,recover repair.tags=réparer,restaurer,corriger,récupérer,fix,restore,correction,recover
home.removeBlanks.title=Supprimer les pages vierges home.removeBlanks.title=Supprimer les pages vierges
home.removeBlanks.desc=Détectez et supprimez les pages vierges d'un PDF. home.removeBlanks.desc=Détectez et supprimez les pages vierges dun PDF.
removeBlanks.tags=pages vierges,supprimer,nettoyer,cleanup,streamline,non-content,organize removeBlanks.tags=pages vierges,supprimer,nettoyer,cleanup,streamline,non-content,organize
home.removeAnnotations.title=Supprimer les annotations home.removeAnnotations.title=Supprimer les annotations
home.removeAnnotations.desc=Supprimer tous les commentaires/annotations d'un PDF. home.removeAnnotations.desc=Supprimer tous les commentaires/annotations dun PDF.
removeAnnotations.tags=commentaires,supprimer,annotations,highlight,notes,markup,remove removeAnnotations.tags=commentaires,supprimer,annotations,highlight,notes,markup,remove
home.compare.title=Comparer home.compare.title=Comparer
@@ -393,16 +390,16 @@ home.certSign.title=Signer avec un certificat
home.certSign.desc=Signez un PDF avec un certificat ou une clé (PEM/P12). home.certSign.desc=Signez un PDF avec un certificat ou une clé (PEM/P12).
certSign.tags=signer,chiffrer,certificat,authenticate,PEM,P12,official,encrypt certSign.tags=signer,chiffrer,certificat,authenticate,PEM,P12,official,encrypt
home.removeCertSign.title=Supprimer la signature par certificat home.removeCertSign.title=Remove Certificate Sign
home.removeCertSign.desc=Supprimez la signature par certificat d'un PDF home.removeCertSign.desc=Remove certificate signature from PDF
removeCertSign.tags=signer,chiffrer,certificat,authenticate,PEM,P12,official,decrypt removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=Fusionner des pages home.pageLayout.title=Fusionner des pages
home.pageLayout.desc=Fusionnez plusieurs pages d'un PDF en une seule. home.pageLayout.desc=Fusionnez plusieurs pages dun PDF en une seule.
pageLayout.tags=fusionner,merge,composite,single-view,organize pageLayout.tags=fusionner,merge,composite,single-view,organize
home.scalePages.title=Ajuster l'échelle ou la taille home.scalePages.title=Ajuster léchelle ou la taille
home.scalePages.desc=Modifiez la taille ou l'échelle d'une page et/ou de son contenu. home.scalePages.desc=Modifiez la taille ou léchelle dune page et/ou de son contenu.
scalePages.tags=ajuster,redimensionner,resize,modify,dimension,adapt scalePages.tags=ajuster,redimensionner,resize,modify,dimension,adapt
home.pipeline.title=Pipeline home.pipeline.title=Pipeline
@@ -418,7 +415,7 @@ home.auto-rename.desc=Renommez automatiquement un fichier PDF en fonction de son
auto-rename.tags=renommer,détection automatique,réétiqueter,auto-detect,header-based,organize,relabel auto-rename.tags=renommer,détection automatique,réétiqueter,auto-detect,header-based,organize,relabel
home.adjust-contrast.title=Ajuster les couleurs home.adjust-contrast.title=Ajuster les couleurs
home.adjust-contrast.desc=Ajustez le contraste, la saturation et la luminosité d'un PDF. home.adjust-contrast.desc=Ajustez le contraste, la saturation et la luminosité dun PDF.
adjust-contrast.tags=ajuster,couleurs,amélioration,color-correction,tune,modify,enhance adjust-contrast.tags=ajuster,couleurs,amélioration,color-correction,tune,modify,enhance
home.crop.title=Redimensionner home.crop.title=Redimensionner
@@ -434,16 +431,16 @@ home.sanitizePdf.desc=Supprimez les scripts et autres éléments des PDF.
sanitizePdf.tags=assainir,sécurisé,clean,secure,safe,remove-threats sanitizePdf.tags=assainir,sécurisé,clean,secure,safe,remove-threats
home.URLToPDF.title=URL en PDF home.URLToPDF.title=URL en PDF
home.URLToPDF.desc=Convertissez n'importe quelle URL http(s) en PDF. home.URLToPDF.desc=Convertissez nimporte quelle URL http(s) en PDF.
URLToPDF.tags=pdf,contenu Web,save-page,web-to-doc,archive URLToPDF.tags=pdf,contenu Web,save-page,web-to-doc,archive
home.HTMLToPDF.title=HTML en PDF home.HTMLToPDF.title=HTML en PDF
home.HTMLToPDF.desc=Convertissez n'importe quel fichier HTML ou ZIP en PDF. home.HTMLToPDF.desc=Convertissez nimporte quel fichier HTML ou ZIP en PDF.
HTMLToPDF.tags=html,markup,contenu Web,transformation,convert HTMLToPDF.tags=html,markup,contenu Web,transformation,convert
home.MarkdownToPDF.title=Markdown en PDF home.MarkdownToPDF.title=Markdown en PDF
home.MarkdownToPDF.desc=Convertissez n'importe quel fichier Markdown en PDF. home.MarkdownToPDF.desc=Convertissez nimporte quel fichier Markdown en PDF.
MarkdownToPDF.tags=markdown,markup,contenu Web,transformation,convert MarkdownToPDF.tags=markdown,markup,contenu Web,transformation,convert
@@ -467,29 +464,29 @@ home.showJS.desc=Recherche et affiche tout JavaScript injecté dans un PDF.
showJS.tags=JS showJS.tags=JS
home.autoRedact.title=Caviarder automatiquement home.autoRedact.title=Caviarder automatiquement
home.autoRedact.desc=Caviardez automatiquement les informations sensibles d'un PDF. home.autoRedact.desc=Caviardez automatiquement les informations sensibles dun PDF.
autoRedact.tags=caviarder,redact,auto autoRedact.tags=caviarder,redact,auto
home.tableExtraxt.title=PDF en CSV home.tableExtraxt.title=PDF en CSV
home.tableExtraxt.desc=Extrait les tableaux d'un PDF et les transforme en CSV. home.tableExtraxt.desc=Extrait les tableaux dun PDF et les transforme en CSV.
tableExtraxt.tags=CSV, Extraction de table, extraction, conversion tableExtraxt.tags=CSV,Table Extraction,extract,convert
home.autoSizeSplitPDF.title=Séparer automatiquement par taille/nombre home.autoSizeSplitPDF.title=Séparer automatiquement par taille/nombre
home.autoSizeSplitPDF.desc=Séparer un PDF unique en plusieurs documents en fonction de la taille, du nombre de pages ou du nombre de documents. home.autoSizeSplitPDF.desc=Séparer un PDF unique en plusieurs documents en fonction de la taille, du nombre de pages ou du nombre de documents.
autoSizeSplitPDF.tags=pdf, découpage, document, organisation autoSizeSplitPDF.tags=pdf,split,document,organization
home.overlay-pdfs.title=Incrustation de PDF home.overlay-pdfs.title=Incrustation de PDF
home.overlay-pdfs.desc=Incrustation d'un PDF sur un autre PDF. home.overlay-pdfs.desc=Incrustation dun PDF sur un autre PDF.
overlay-pdfs.tags=Overlay,incrustation overlay-pdfs.tags=Overlay,incrustation
home.split-by-sections.title=Séparer un PDF en sections home.split-by-sections.title=Séparer un PDF en sections
home.split-by-sections.desc=Diviser chaque page d'un PDF en sections horizontales/verticales plus petites. home.split-by-sections.desc=Diviser chaque page dun PDF en sections horizontales/verticales plus petites.
split-by-sections.tags=Sections,Diviser,Section Split, Divide, Customize split-by-sections.tags=Sections,Diviser,Section Split, Divide, Customize
home.AddStampRequest.title=Ajouter un tampon sur un PDF home.AddStampRequest.title=Ajouter un tampon sur un PDF
home.AddStampRequest.desc=Ajouter un texte ou l'image d'un tampon à un emplacement défini. home.AddStampRequest.desc=Ajouter un texte ou limage dun tampon à un emplacement défini.
AddStampRequest.tags=Tampon,Ajouter,Stamp,Add image,center image,Watermark,PDF,Embed,Customize AddStampRequest.tags=Tampon,Ajouter,Stamp,Add image,center image,Watermark,PDF,Embed,Customize
@@ -501,33 +498,33 @@ home.BookToPDF.title=eBook vers PDF
home.BookToPDF.desc=Convertit les formats de livres/bandes dessinées en PDF à l'aide de calibre home.BookToPDF.desc=Convertit les formats de livres/bandes dessinées en PDF à l'aide de calibre
BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.removeImagePdf.title=Supprimer les images home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=Supprimez les images d'un PDF pour réduire sa taille home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Images,Remove Image,Page operations,Back end,server side removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=Séparer un PDF par chapitres home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Séparez un PDF en fichiers multiples en fonction de sa structure par chapitres. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=séparer,chapitres,split,chapters,bookmarks,organize splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Remplacer-Inverser-Couleur replace-color.title=Replace-Invert-Color
replace-color.header=Remplacer-Inverser Couleur PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Remplacer et Inverser Couleur home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Remplacer la couleur pour le texte et l'arrière-plan dans le PDF et inverser la couleur complète du PDF pour réduire la taille du fichier home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Remplacer Couleur,Opérations de Page,Back-end,Côté serveur replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Options de Remplacement ou d'Inversion de Couleur replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Par défaut (Couleurs à fort contraste par défaut) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Personnalisé (Couleurs personnalisées) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Inversion complète (Inverser toutes les couleurs) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Options de couleur à fort contraste replace-color.selectText.5=High contrast color options
replace-color.selectText.6=Texte blanc sur fond noir replace-color.selectText.6=white text on black background
replace-color.selectText.7=Texte noir sur fond blanc replace-color.selectText.7=Black text on white background
replace-color.selectText.8=Texte jaune sur fond noir replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=Texte vert sur fond noir replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Choisir la couleur du texte replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Choisir la couleur de l'arrière-plan replace-color.selectText.11=Choose background Color
replace-color.submit=Remplacer replace-color.submit=Replace
@@ -541,22 +538,23 @@ login.title=Connexion
login.header=Connexion login.header=Connexion
login.signin=Connexion login.signin=Connexion
login.rememberme=Se souvenir de moi login.rememberme=Se souvenir de moi
login.invalid=Nom d'utilisateur ou mot de passe invalide. login.invalid=Nom dutilisateur ou mot de passe invalide.
login.locked=Votre compte a été verrouillé. login.locked=Votre compte a été verrouillé.
login.signinTitle=Veuillez vous connecter login.signinTitle=Veuillez vous connecter
login.ssoSignIn=Se connecter via l'authentification unique login.ssoSignIn=Se connecter via l'authentification unique
login.oauth2AutoCreateDisabled=OAUTH2 Création automatique d'utilisateur désactivée login.oauth2AutoCreateDisabled=OAUTH2 Création automatique d'utilisateur désactivée
login.oauth2AdminBlockedUser=La création ou l'authentification d'utilisateurs non enregistrés est actuellement bloquée. Veuillez contacter l'administrateur. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Demande d'autorisation introuvable login.oauth2RequestNotFound=Demande d'autorisation introuvable
login.oauth2InvalidUserInfoResponse=Réponse contenant les informations de l'utilisateur est invalide login.oauth2InvalidUserInfoResponse=Réponse contenant les informations de l'utilisateur est invalide
login.oauth2invalidRequest=Requête invalide login.oauth2invalidRequest=Requête invalide
login.oauth2AccessDenied=Accès refusé login.oauth2AccessDenied=Accès refusé
login.oauth2InvalidTokenResponse=Réponse contenant le jeton est invalide login.oauth2InvalidTokenResponse=Réponse contenant le jeton est invalide
login.oauth2InvalidIdToken=Jeton d'identification invalide login.oauth2InvalidIdToken=Jeton d'identification invalide
login.userIsDisabled=L'utilisateur est désactivé, la connexion est actuellement bloquée avec ce nom d'utilisateur. Veuillez contacter l'administrateur. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=Vous êtes déjà connecté sur login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=appareils. Veuillez vous déconnecter des appareils et réessayer. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Vous avez trop de sessions actives. login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Caviarder automatiquement autoRedact.title=Caviarder automatiquement
@@ -588,7 +586,7 @@ pdfToSinglePage.submit=Convertir en une seule page
pageExtracter.title=Extraire des pages pageExtracter.title=Extraire des pages
pageExtracter.header=Extraire des pages pageExtracter.header=Extraire des pages
pageExtracter.submit=Extraire pageExtracter.submit=Extraire
pageExtracter.placeholder=(par exemple : 1,2,8 ou 4,7,12-16 ou 2n-1) pageExtracter.placeholder=(e.g. 1,2,8 or 4,7,12-16 or 2n-1)
#getPdfInfo #getPdfInfo
@@ -620,15 +618,15 @@ HTMLToPDF.header=HTML en PDF
HTMLToPDF.help=Accepte les fichiers HTML et les ZIP contenant du HTML, du CSS, des images, etc. (requis). HTMLToPDF.help=Accepte les fichiers HTML et les ZIP contenant du HTML, du CSS, des images, etc. (requis).
HTMLToPDF.submit=Convertir HTMLToPDF.submit=Convertir
HTMLToPDF.credit=Utilise WeasyPrint. HTMLToPDF.credit=Utilise WeasyPrint.
HTMLToPDF.zoom=Niveau de zoom pour l'affichage du site web. HTMLToPDF.zoom=Niveau de zoom pour laffichage du site web.
HTMLToPDF.pageWidth=Largeur de la page en centimètres. (Vide par défaut) HTMLToPDF.pageWidth=Largeur de la page en centimètres. (Vide par défaut)
HTMLToPDF.pageHeight=Hauteur de la page en centimètres. (Vide par défaut) HTMLToPDF.pageHeight=Hauteur de la page en centimètres. (Vide par défaut)
HTMLToPDF.marginTop=Marge supérieure de la page en millimètres. (Vide par défaut) HTMLToPDF.marginTop=Marge supérieure de la page en millimètres. (Vide par défaut)
HTMLToPDF.marginBottom=Marge inférieure de la page en millimètres. (Vide par défaut) HTMLToPDF.marginBottom=Marge inférieure de la page en millimètres. (Vide par défaut)
HTMLToPDF.marginLeft=Marge gauche de la page en millimètres. (Vide par défaut) HTMLToPDF.marginLeft=Marge gauche de la page en millimètres. (Vide par défaut)
HTMLToPDF.marginRight=Marge droite de la page en millimètres. (Vide par défaut) HTMLToPDF.marginRight=Marge droite de la page en millimètres. (Vide par défaut)
HTMLToPDF.printBackground=Restituer l'image de fond des sites web. HTMLToPDF.printBackground=Restituer limage de fond des sites web.
HTMLToPDF.defaultHeader=Activer l'entête par défaut (Nom et numéro de page) HTMLToPDF.defaultHeader=Activer lentête par défaut (Nom et numéro de page)
HTMLToPDF.cssMediaType=Modifier le type de média CSS de la page. HTMLToPDF.cssMediaType=Modifier le type de média CSS de la page.
HTMLToPDF.none=Aucun HTMLToPDF.none=Aucun
HTMLToPDF.print=Imprimer HTMLToPDF.print=Imprimer
@@ -706,7 +704,7 @@ autoSplitPDF.header=Séparer automatiquement les pages
autoSplitPDF.description=Imprimez, insérez, numérisez, téléchargez et laissez-nous séparer automatiquement vos documents. Aucun travail de tri manuel nécessaire. autoSplitPDF.description=Imprimez, insérez, numérisez, téléchargez et laissez-nous séparer automatiquement vos documents. Aucun travail de tri manuel nécessaire.
autoSplitPDF.selectText.1=Imprimez des feuilles de séparation ci-dessous (le mode noir et blanc convient). autoSplitPDF.selectText.1=Imprimez des feuilles de séparation ci-dessous (le mode noir et blanc convient).
autoSplitPDF.selectText.2=Numérisez tous vos documents en une seule fois en insérant les feuilles intercalaires entre eux. autoSplitPDF.selectText.2=Numérisez tous vos documents en une seule fois en insérant les feuilles intercalaires entre eux.
autoSplitPDF.selectText.3=Téléchargez le fichier PDF numérisé et laissez Stirling PDF s'occuper du reste. autoSplitPDF.selectText.3=Téléchargez le fichier PDF numérisé et laissez Stirling PDF soccuper du reste.
autoSplitPDF.selectText.4=Les feuilles de séparation sont automatiquement détectées et supprimées, garantissant un document final soigné. autoSplitPDF.selectText.4=Les feuilles de séparation sont automatiquement détectées et supprimées, garantissant un document final soigné.
autoSplitPDF.formPrompt=PDF contenant des feuilles de séparation de Stirling PDF : autoSplitPDF.formPrompt=PDF contenant des feuilles de séparation de Stirling PDF :
autoSplitPDF.duplexMode=Mode recto-verso autoSplitPDF.duplexMode=Mode recto-verso
@@ -728,11 +726,11 @@ pageLayout.submit=Fusionner
#scalePages #scalePages
scalePages.title=Ajuster la taille ou l'échelle scalePages.title=Ajuster la taille ou léchelle
scalePages.header=Ajuster la taille ou l'échelle scalePages.header=Ajuster la taille ou léchelle
scalePages.pageSize=Taille d'une page du document scalePages.pageSize=Taille dune page du document
scalePages.keepPageSize=Taille d'origine scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Niveau de zoom (recadrage) d'une page scalePages.scaleFactor=Niveau de zoom (recadrage) dune page
scalePages.submit=Ajuster scalePages.submit=Ajuster
@@ -740,10 +738,10 @@ scalePages.submit=Ajuster
certSign.title=Signer avec un certificat certSign.title=Signer avec un certificat
certSign.header=Signer avec un certificat (Travail en cours) certSign.header=Signer avec un certificat (Travail en cours)
certSign.selectPDF=PDF à signer certSign.selectPDF=PDF à signer
certSign.jksNote=Note: Si votre type de certificat n'est pas listé ci-dessous, merci de le convertir en fichier Java Keystore (.jks) en utilisant l'outil en ligne de commande keytool. Puis choisissez l'option Fichier .jks ci-dessous. certSign.jksNote=Note: Si votre type de certificat nest pas listé ci-dessous, merci de le convertir en fichier Java Keystore (.jks) en utilisant loutil en ligne de commande keytool. Puis choisissez loption Fichier .jks ci-dessous.
certSign.selectKey=Fichier de clé privée (format PKCS#8, peut être .pem ou .der) certSign.selectKey=Fichier de clé privée (format PKCS#8, peut être .pem ou .der)
certSign.selectCert=Fichier de certificat (format X.509, peut être .pem ou .der) certSign.selectCert=Fichier de certificat (format X.509, peut être .pem ou .der)
certSign.selectP12=Fichier keystore de clés PKCS#12 (.p12 ou .pfx) (facultatif, s'il n'est fourni, il doit contenir votre clé privée et votre certificat) certSign.selectP12=Fichier keystore de clés PKCS#12 (.p12 ou .pfx) (facultatif, sil nest fourni, il doit contenir votre clé privée et votre certificat)
certSign.selectJKS=Sélectionner votre fichier Java Keystore File (.jks or .keystore): certSign.selectJKS=Sélectionner votre fichier Java Keystore File (.jks or .keystore):
certSign.certType=Type de certificat certSign.certType=Type de certificat
certSign.password=Mot de passe keystore ou clé privée le cas échéant certSign.password=Mot de passe keystore ou clé privée le cas échéant
@@ -751,15 +749,14 @@ certSign.showSig=Afficher la signature
certSign.reason=Raison certSign.reason=Raison
certSign.location=Emplacement certSign.location=Emplacement
certSign.name=Nom certSign.name=Nom
certSign.showLogo=Afficher le logo
certSign.submit=Signer certSign.submit=Signer
#removeCertSign #removeCertSign
removeCertSign.title=Supprimer la Signature de Certificat removeCertSign.title=Remove Certificate Signature
removeCertSign.header=Supprimer le certificat numérique du PDF removeCertSign.header=Remove the digital certificate from the PDF
removeCertSign.selectPDF=Sélectionnez un fichier PDF : removeCertSign.selectPDF=Select a PDF file:
removeCertSign.submit=Supprimer la Signature removeCertSign.submit=Remove Signature
#removeBlanks #removeBlanks
@@ -781,26 +778,23 @@ removeAnnotations.submit=Supprimer
#compare #compare
compare.title=Comparer compare.title=Comparer
compare.header=Comparer compare.header=Comparer
compare.highlightColor.1=Couleur de mise en évidence 1 : compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=Couleur de mise en évidence 2 : compare.highlightColor.2=Highlight Color 2:
compare.document.1=Document 1 compare.document.1=Document 1
compare.document.2=Document 2 compare.document.2=Document 2
compare.submit=Comparer compare.submit=Comparer
compare.complex.message=Un ou les deux documents fournis sont des fichiers volumineux, l'exactitude de la comparaison peut être réduite
compare.large.file.message=Un ou les deux documents fournis sont trop volumineux pour être traités
compare.no.text.message=L'un ou les deux documents PDF sélectionnés ne contiennent aucun contenu textuel. Veuillez choisir des documents PDF avec du texte pour la comparaison.
#BookToPDF #BookToPDF
BookToPDF.title=Livres et BD vers PDF BookToPDF.title=Livres et BD vers PDF
BookToPDF.header=Livre vers PDF BookToPDF.header=Livre vers PDF
BookToPDF.credit=Utilise Calibre BookToPDF.credit=Utiliser Calibre
BookToPDF.submit=Convertir BookToPDF.submit=Convertir
#PDFToBook #PDFToBook
PDFToBook.title=PDF vers Livre PDFToBook.title=PDF vers Livre
PDFToBook.header=PDF vers Livre PDFToBook.header=PDF vers Livre
PDFToBook.selectText.1=Format PDFToBook.selectText.1=Format
PDFToBook.credit=Utilise Calibre PDFToBook.credit=Utiliser Calibre
PDFToBook.submit=Convertir PDFToBook.submit=Convertir
#sign #sign
@@ -811,11 +805,6 @@ sign.draw=Dessiner une signature
sign.text=Saisir de texte sign.text=Saisir de texte
sign.clear=Effacer sign.clear=Effacer
sign.add=Ajouter sign.add=Ajouter
sign.saved=Saved Signatures
sign.save=Enregistrer le sceau
sign.personalSigs=Sceaux personnels
sign.sharedSigs=Sceaux partagés
sign.noSavedSigs=Aucun sceau enregistré trouvé
#repair #repair
@@ -833,16 +822,16 @@ flatten.submit=Rendre inerte
#ScannerImageSplit #ScannerImageSplit
ScannerImageSplit.selectText.1=Seuil de rotation ScannerImageSplit.selectText.1=Seuil de rotation
ScannerImageSplit.selectText.2=Définit l'angle absolu minimum requis pour la rotation de l'image (par défaut : 10). ScannerImageSplit.selectText.2=Définit langle absolu minimum requis pour la rotation de limage (par défaut : 10).
ScannerImageSplit.selectText.3=Tolérance ScannerImageSplit.selectText.3=Tolérance
ScannerImageSplit.selectText.4=Détermine la plage de variation de couleur autour de la couleur d'arrière-plan estimée (par défaut : 20). ScannerImageSplit.selectText.4=Détermine la plage de variation de couleur autour de la couleur darrière-plan estimée (par défaut : 20).
ScannerImageSplit.selectText.5=Surface minimale ScannerImageSplit.selectText.5=Surface minimale
ScannerImageSplit.selectText.6=Définit la surface minimale pour une photo (par défaut : 8000). ScannerImageSplit.selectText.6=Définit la surface minimale pour une photo (par défaut : 8000).
ScannerImageSplit.selectText.7=Surface de contour minimale ScannerImageSplit.selectText.7=Surface de contour minimale
ScannerImageSplit.selectText.8=Définit la surface de contour minimale pour une photo (par défaut : 500). ScannerImageSplit.selectText.8=Définit la surface de contour minimale pour une photo (par défaut : 500).
ScannerImageSplit.selectText.9=Taille de la bordure ScannerImageSplit.selectText.9=Taille de la bordure
ScannerImageSplit.selectText.10=Définit la taille de la bordure ajoutée et supprimée pour éviter les bordures blanches dans la sortie (par défaut : 1). ScannerImageSplit.selectText.10=Définit la taille de la bordure ajoutée et supprimée pour éviter les bordures blanches dans la sortie (par défaut : 1).
ScannerImageSplit.info=Python n'est pas installé. Il est nécessaire pour le fonctionnement. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -851,25 +840,25 @@ ocr.header=OCR (Reconnaissance optique de caractères) / Nettoyage des numérisa
ocr.selectText.1=Langues à détecter dans le PDF (celles listées sont celles actuellement détectées) ocr.selectText.1=Langues à détecter dans le PDF (celles listées sont celles actuellement détectées)
ocr.selectText.2=Produire un fichier texte contenant le texte détecté à côté du PDF ocr.selectText.2=Produire un fichier texte contenant le texte détecté à côté du PDF
ocr.selectText.3=Corriger les pages qui ont été numérisées à un angle oblique en les remettant en place ocr.selectText.3=Corriger les pages qui ont été numérisées à un angle oblique en les remettant en place
ocr.selectText.4=Nettoyer la page afin qu'il soit moins probable que l'OCR trouve du texte dans le bruit de fond, sans modifier la sortie ocr.selectText.4=Nettoyer la page afin quil soit moins probable que lOCR trouve du texte dans le bruit de fond, sans modifier la sortie
ocr.selectText.5=Nettoyer la page afin qu'il soit moins probable que l'OCR trouve du texte dans le bruit de fond, en modifiant la sortie ocr.selectText.5=Nettoyer la page afin quil soit moins probable que lOCR trouve du texte dans le bruit de fond, en modifiant la sortie
ocr.selectText.6=Ignorer les pages contenant du texte interactif, n'analyser que les pages qui sont des images ocr.selectText.6=Ignorer les pages contenant du texte interactif, nanalyser que les pages qui sont des images
ocr.selectText.7=Forcer l'OCR, analyser chaque page et supprimer tous les éléments de texte d'origine ocr.selectText.7=Forcer lOCR, analyser chaque page et supprimer tous les éléments de texte dorigine
ocr.selectText.8=Normal (génère une erreur si le PDF contient du texte) ocr.selectText.8=Normal (génère une erreur si le PDF contient du texte)
ocr.selectText.9=Paramètres additionnels ocr.selectText.9=Paramètres additionnels
ocr.selectText.10=Mode OCR ocr.selectText.10=Mode OCR
ocr.selectText.11=Supprimer les images après l'OCR (Supprime TOUTES les images, utile uniquement si elles font partie de l'étape de conversion) ocr.selectText.11=Supprimer les images après lOCR (Supprime TOUTES les images, utile uniquement si elles font partie de létape de conversion)
ocr.selectText.12=Type de rendu (avancé) ocr.selectText.12=Type de rendu (avancé)
ocr.help=Veuillez lire cette documentation pour savoir comment utiliser l'OCR pour d'autres langues ou une utilisation hors Docker : ocr.help=Veuillez lire cette documentation pour savoir comment utiliser lOCR pour dautres langues ou une utilisation hors Docker :
ocr.credit=Ce service utilise OCRmyPDF et Tesseract pour l'OCR. ocr.credit=Ce service utilise OCRmyPDF et Tesseract pour lOCR.
ocr.submit=Traiter ocr.submit=Traiter
#extractImages #extractImages
extractImages.title=Extraire les images extractImages.title=Extraire les images
extractImages.header=Extraire les images extractImages.header=Extraire les images
extractImages.selectText=Format d'image dans lequel convertir les images extraites extractImages.selectText=Format dimage dans lequel convertir les images extraites
extractImages.allowDuplicates=Enregistrer les images dupliquées extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Extraire extractImages.submit=Extraire
@@ -884,10 +873,10 @@ fileToPDF.submit=Convertir
#compress #compress
compress.title=Compresser un PDF compress.title=Compresser un PDF
compress.header=Compresser un PDF (lorsque c'est possible!) compress.header=Compresser un PDF (lorsque cest possible!)
compress.credit=Ce service utilise Ghostscript pour la compression et l'optimisation des PDF. compress.credit=Ce service utilise Ghostscript pour la compression et loptimisation des PDF.
compress.selectText.1=Mode manuel de 1 à 4 compress.selectText.1=Mode manuel de 1 à 4
compress.selectText.2=Niveau d'optimisation compress.selectText.2=Niveau doptimisation
compress.selectText.3=4 (terrible pour les images textuelles) compress.selectText.3=4 (terrible pour les images textuelles)
compress.selectText.4=Mode automatique ajuste automatiquement la qualité pour obtenir le PDF à la taille exacte compress.selectText.4=Mode automatique ajuste automatiquement la qualité pour obtenir le PDF à la taille exacte
compress.selectText.5=Taille PDF attendue (par exemple, 25MB, 10,8MB, 25KB) compress.selectText.5=Taille PDF attendue (par exemple, 25MB, 10,8MB, 25KB)
@@ -907,7 +896,7 @@ merge.title=Fusionner
merge.header=Fusionner plusieurs PDF merge.header=Fusionner plusieurs PDF
merge.sortByName=Trier par nom merge.sortByName=Trier par nom
merge.sortByDate=Trier par date merge.sortByDate=Trier par date
merge.removeCertSign=Supprimer la signature numérique dans le fichier fusionné ? merge.removeCertSign=Remove digital signature in the merged file?
merge.submit=Fusionner merge.submit=Fusionner
@@ -925,8 +914,8 @@ pdfOrganiser.mode.6=Partage impair-pair
pdfOrganiser.mode.7=Supprimer le premier pdfOrganiser.mode.7=Supprimer le premier
pdfOrganiser.mode.8=Supprimer le dernier pdfOrganiser.mode.8=Supprimer le dernier
pdfOrganiser.mode.9=Supprimer le premier et le dernier pdfOrganiser.mode.9=Supprimer le premier et le dernier
pdfOrganiser.mode.10=Méger Impair-Pair pdfOrganiser.mode.10=Odd-Even Merge
pdfOrganiser.placeholder=(par exemple 1,3,2 ou 4-8,2,10-12 ou 2n-1) pdfOrganiser.placeholder=(e.g. 1,3,2 or 4-8,2,10-12 or 2n-1)
#multiTool #multiTool
@@ -943,7 +932,7 @@ pageRemover.title=Supprimer des pages
pageRemover.header=Supprimer des pages pageRemover.header=Supprimer des pages
pageRemover.pagesToDelete=Pages à supprimer (entrez une liste de numéros de pages séparés par des virgules) : pageRemover.pagesToDelete=Pages à supprimer (entrez une liste de numéros de pages séparés par des virgules) :
pageRemover.submit=Supprimer les pages pageRemover.submit=Supprimer les pages
pageRemover.placeholder=(par exemple 1,2,6 ou 1-10,15-30) pageRemover.placeholder=(e.g. 1,2,6 or 1-10,15-30)
#rotate #rotate
@@ -972,9 +961,9 @@ split.submit=Diviser
imageToPDF.title=Image en PDF imageToPDF.title=Image en PDF
imageToPDF.header=Image en PDF imageToPDF.header=Image en PDF
imageToPDF.submit=Convertir imageToPDF.submit=Convertir
imageToPDF.selectLabel=Options d'ajustement de l'image imageToPDF.selectLabel=Options dajustement de limage
imageToPDF.fillPage=Remplir la page imageToPDF.fillPage=Remplir la page
imageToPDF.fitDocumentToImage=Ajuster la page à l'image imageToPDF.fitDocumentToImage=Ajuster la page à limage
imageToPDF.maintainAspectRatio=Maintenir les proportions imageToPDF.maintainAspectRatio=Maintenir les proportions
imageToPDF.selectText.2=Rotation automatique du PDF imageToPDF.selectText.2=Rotation automatique du PDF
imageToPDF.selectText.3=Logique multi-fichiers (uniquement activée si vous travaillez avec plusieurs images) imageToPDF.selectText.3=Logique multi-fichiers (uniquement activée si vous travaillez avec plusieurs images)
@@ -985,37 +974,37 @@ imageToPDF.selectText.5=Convertir en PDF séparés
#pdfToImage #pdfToImage
pdfToImage.title=Image en PDF pdfToImage.title=Image en PDF
pdfToImage.header=Image en PDF pdfToImage.header=Image en PDF
pdfToImage.selectText=Format d'image pdfToImage.selectText=Format dimage
pdfToImage.singleOrMultiple=Type de résultat pdfToImage.singleOrMultiple=Type de résultat
pdfToImage.single=Une seule grande image pdfToImage.single=Une seule grande image
pdfToImage.multi=Plusieurs images pdfToImage.multi=Plusieurs images
pdfToImage.colorType=Type d'impression pdfToImage.colorType=Type dimpression
pdfToImage.color=Couleur pdfToImage.color=Couleur
pdfToImage.grey=Niveaux de gris pdfToImage.grey=Niveaux de gris
pdfToImage.blackwhite=Noir et blanc (peut engendrer une perte de données !) pdfToImage.blackwhite=Noir et blanc (peut engendrer une perte de données !)
pdfToImage.submit=Convertir pdfToImage.submit=Convertir
pdfToImage.info=Python nest pas installé. Nécessaire pour la conversion WebP. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
addPassword.title=Ajouter un mot de passe addPassword.title=Ajouter un mot de passe
addPassword.header=Ajouter un mot de passe addPassword.header=Ajouter un mot de passe
addPassword.selectText.1=PDF à chiffrer addPassword.selectText.1=PDF à chiffrer
addPassword.selectText.2=Mot de passe de l'utilisateur addPassword.selectText.2=Mot de passe de lutilisateur
addPassword.selectText.3=Longueur de la clé de chiffrement addPassword.selectText.3=Longueur de la clé de chiffrement
addPassword.selectText.4=Les valeurs plus élevées sont plus fortes, mais les valeurs plus faibles ont une meilleure compatibilité. addPassword.selectText.4=Les valeurs plus élevées sont plus fortes, mais les valeurs plus faibles ont une meilleure compatibilité.
addPassword.selectText.5=Autorisations à définir (utilisation recommandée avec le mot de passe du propriétaire) addPassword.selectText.5=Autorisations à définir (utilisation recommandée avec le mot de passe du propriétaire)
addPassword.selectText.6=Empêcher l'assemblage du document addPassword.selectText.6=Empêcher lassemblage du document
addPassword.selectText.7=Empêcher l'extraction de contenu addPassword.selectText.7=Empêcher lextraction de contenu
addPassword.selectText.8=Empêcher l'extraction pour l'accessibilité addPassword.selectText.8=Empêcher lextraction pour laccessibilité
addPassword.selectText.9=Empêcher de remplir les formulaires addPassword.selectText.9=Empêcher de remplir les formulaires
addPassword.selectText.10=Empêcher la modification addPassword.selectText.10=Empêcher la modification
addPassword.selectText.11=Empêcher la modification des annotations addPassword.selectText.11=Empêcher la modification des annotations
addPassword.selectText.12=Empêcher l'impression addPassword.selectText.12=Empêcher limpression
addPassword.selectText.13=Empêcher l'impression des différents formats addPassword.selectText.13=Empêcher limpression des différents formats
addPassword.selectText.14=Mot de passe du propriétaire addPassword.selectText.14=Mot de passe du propriétaire
addPassword.selectText.15=Restreint ce qui peut être fait avec le document une fois qu'il est ouvert (non pris en charge par tous les lecteurs). addPassword.selectText.15=Restreint ce qui peut être fait avec le document une fois quil est ouvert (non pris en charge par tous les lecteurs).
addPassword.selectText.16=Restreint l'ouverture du document lui-même. addPassword.selectText.16=Restreint louverture du document lui-même.
addPassword.submit=Chiffrer addPassword.submit=Chiffrer
@@ -1031,9 +1020,9 @@ watermark.selectText.6=heightSpacer (espace entre chaque filigrane verticalement
watermark.selectText.7=Opacité (de 0% à 100%) watermark.selectText.7=Opacité (de 0% à 100%)
watermark.selectText.8=Type de filigrane watermark.selectText.8=Type de filigrane
watermark.selectText.9=Image du filigrane watermark.selectText.9=Image du filigrane
watermark.selectText.10=Convertir le PDF en PDF-Image watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=Ajouter un filigrane watermark.submit=Ajouter un filigrane
watermark.type.1=Texte watermark.type.1=Text
watermark.type.2=Image watermark.type.2=Image
@@ -1043,14 +1032,14 @@ permissions.header=Modifier les permissions
permissions.warning=Attention, pour que ces permissions soient immuables il est recommandé de les paramétrer avec un mot de passe via la page Ajouter un mot de passe. permissions.warning=Attention, pour que ces permissions soient immuables il est recommandé de les paramétrer avec un mot de passe via la page Ajouter un mot de passe.
permissions.selectText.1=Sélectionnez le PDF permissions.selectText.1=Sélectionnez le PDF
permissions.selectText.2=Permissions à définir permissions.selectText.2=Permissions à définir
permissions.selectText.3=Empêcher l'assemblage du document permissions.selectText.3=Empêcher lassemblage du document
permissions.selectText.4=Empêcher l'extraction de contenu permissions.selectText.4=Empêcher lextraction de contenu
permissions.selectText.5=Empêcher l'extraction pour l'accessibilité permissions.selectText.5=Empêcher lextraction pour laccessibilité
permissions.selectText.6=Empêcher de remplir les formulaires permissions.selectText.6=Empêcher de remplir les formulaires
permissions.selectText.7=Empêcher la modification permissions.selectText.7=Empêcher la modification
permissions.selectText.8=Empêcher la modification des annotations permissions.selectText.8=Empêcher la modification des annotations
permissions.selectText.9=Empêcher l'impression permissions.selectText.9=Empêcher limpression
permissions.selectText.10=Empêcher l'impression des différents formats permissions.selectText.10=Empêcher limpression des différents formats
permissions.submit=Modifier permissions.submit=Modifier
@@ -1075,7 +1064,7 @@ changeMetadata.keywords=Mots clés
changeMetadata.modDate=Date de modification (yyyy/MM/dd HH:mm:ss) changeMetadata.modDate=Date de modification (yyyy/MM/dd HH:mm:ss)
changeMetadata.producer=Producteur changeMetadata.producer=Producteur
changeMetadata.subject=Sujet changeMetadata.subject=Sujet
changeMetadata.trapped=Recouvrement (technique d'impression) changeMetadata.trapped=Recouvrement (technique dimpression)
changeMetadata.selectText.4=Autres métadonnées changeMetadata.selectText.4=Autres métadonnées
changeMetadata.selectText.5=Ajouter une entrée de métadonnées personnalisée changeMetadata.selectText.5=Ajouter une entrée de métadonnées personnalisée
changeMetadata.submit=Modifier changeMetadata.submit=Modifier
@@ -1088,7 +1077,7 @@ pdfToPDFA.credit=Ce service utilise ghostscript pour la conversion en PDF/A.
pdfToPDFA.submit=Convertir pdfToPDFA.submit=Convertir
pdfToPDFA.tip=Ne fonctionne actuellement pas pour plusieurs entrées à la fois pdfToPDFA.tip=Ne fonctionne actuellement pas pour plusieurs entrées à la fois
pdfToPDFA.outputFormat=Format de sortie pdfToPDFA.outputFormat=Format de sortie
pdfToPDFA.pdfWithDigitalSignature=Le PDF contient une signature numérique. Elle sera supprimée dans l'étape suivante. pdfToPDFA.pdfWithDigitalSignature=The PDF contains a digital signature. This will be removed in the next step.
#PDFToWord #PDFToWord
@@ -1150,13 +1139,13 @@ split-by-size-or-count.submit=Séparer
overlay-pdfs.header=Incrustation de PDF overlay-pdfs.header=Incrustation de PDF
overlay-pdfs.baseFile.label=Sélectionner le fichier PDF de base overlay-pdfs.baseFile.label=Sélectionner le fichier PDF de base
overlay-pdfs.overlayFiles.label=Sélectionner les fichiers PDF à superposer overlay-pdfs.overlayFiles.label=Sélectionner les fichiers PDF à superposer
overlay-pdfs.mode.label=Sélectionner le mode d'incrustation overlay-pdfs.mode.label=Sélectionner le mode dincrustation
overlay-pdfs.mode.sequential=Superposition séquentielle overlay-pdfs.mode.sequential=Superposition séquentielle
overlay-pdfs.mode.interleaved=Superposition entrelacée overlay-pdfs.mode.interleaved=Superposition entrelacée
overlay-pdfs.mode.fixedRepeat=Superposition à répétition fixe overlay-pdfs.mode.fixedRepeat=Superposition à répétition fixe
overlay-pdfs.counts.label=Nombre de superpositions (pour le mode de répétition fixe) overlay-pdfs.counts.label=Nombre de superpositions (pour le mode de répétition fixe)
overlay-pdfs.counts.placeholder=Compteurs (séparés par des virgules, exemple : 2,3,1) overlay-pdfs.counts.placeholder=Compteurs (séparés par des virgules, exemple : 2,3,1)
overlay-pdfs.position.label=Définir la position de l'incrustation overlay-pdfs.position.label=Définir la position de lincrustation
overlay-pdfs.position.foreground=Premier plan overlay-pdfs.position.foreground=Premier plan
overlay-pdfs.position.background=Arrière-plan overlay-pdfs.position.background=Arrière-plan
overlay-pdfs.submit=Soumettre overlay-pdfs.submit=Soumettre
@@ -1190,45 +1179,47 @@ licenses.version=Version
licenses.license=Licence licenses.license=Licence
#survey #survey
survey.nav=Enquête survey.nav=Survey
survey.title=Enquête Stirling-PDF survey.title=Stirling-PDF Survey
survey.description=Stirling-PDF n'a pas de suivi, donc nous voulons entendre nos utilisateurs pour améliorer Stirling-PDF ! survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF!
survey.changes=Stirling-PDF a changé depuis la dernière enquête ! Pour en savoir plus, veuillez consulter notre article de blog ici : survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=Avec ces changements, nous obtenons un soutien commercial rémunéré et un financement survey.changes2=With these changes we are getting paid business support and funding
survey.please=Veuillez envisager de répondre à notre enquête ! survey.please=Please consider taking our survey!
survey.disabled=(La fenêtre contextuelle de l'enquête sera désactivée dans les mises à jour suivantes mais sera disponible en bas de page) survey.disabled=(Survey popup will be disabled in following updates but available at foot of page)
survey.button=Répondre à l'enquête survey.button=Take Survey
survey.dontShowAgain=Ne plus afficher survey.dontShowAgain=Don't show again
#error #error
error.sorry=Désolé pour ce problème ! error.sorry=Désolé pour ce problème !
error.needHelp=Besoin d'aide / Vous avez trouvé un problème ? error.needHelp=Besoin daide / Vous avez trouvé un problème ?
error.contactTip=Si vous avez encore des problèmes, n'hésitez pas à nous contacter pour obtenir de l'aide. Vous pouvez soumettre un ticket sur notre page GitHub ou nous contacter via Discord : error.contactTip=Si vous avez encore des problèmes, nhésitez pas à nous contacter pour obtenir de laide. Vous pouvez soumettre un ticket sur notre page GitHub ou nous contacter via Discord :
error.404.head=404 - Page non trouvée | oups on s'est foiré ! error.404.head=404 - Page non trouvée | oups on sest foiré !
error.404.1=Nous ne parvenons pas à trouver la page que vous recherchez. error.404.1=Nous ne parvenons pas à trouver la page que vous recherchez.
error.404.2=Quelque chose n'a pas fonctionné error.404.2=Quelque chose na pas fonctionné
error.github=Créer un ticket sur GitHub error.github=Créer un ticket sur GitHub
error.showStack=Afficher la Stack Trace error.showStack=Afficher la Stack Trace
error.copyStack=Copier la Stack Trace error.copyStack=Copier la Stack Trace
error.githubSubmit=GitHub - Créer un ticket error.githubSubmit=GitHub - Créer un ticket
error.discordSubmit=Discord - Poster un message de demande d'assistance error.discordSubmit=Discord - Poster un message de demande dassistance
#remove-image #remove-image
removeImage.title=Supprimer l'image removeImage.title=Remove image
removeImage.header=Supprimer l'image removeImage.header=Remove image
removeImage.removeImage=Supprimer l'image removeImage.removeImage=Remove image
removeImage.submit=Supprimer l'image removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=Diviser un PDF par Chapitres
splitByChapters.header=Diviser un PDF par Chapitres
splitByChapters.bookmarkLevel=Niveau de Signet
splitByChapters.includeMetadata=Inclure les Métadonnées
splitByChapters.allowDuplicates=Autoriser les Doublons
splitByChapters.desc.1=Cet outil divise un fichier PDF en plusieurs PDF en fonction de sa structure de chapitres.
splitByChapters.desc.2=Niveau de Signet : Choisissez le niveau de signets à utiliser pour la division (0 pour le niveau supérieur, 1 pour le deuxième niveau, etc...).
splitByChapters.desc.3=Inclure les Métadonnées : Si coché, les métadonnées du PDF original seront incluses dans chaque PDF divisé.
splitByChapters.desc.4=Autoriser les Doublons : Si coché, permet à plusieurs signets sur la même page de créer des PDF séparés.
splitByChapters.submit=Diviser le PDF

View File

@@ -79,8 +79,6 @@ info=Eolas
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=Níor cheart go mbeadh an comhad ar neamhní nó folamh
database.failedImportFile=Theip ar iompórtáil an chomhaid database.failedImportFile=Theip ar iompórtáil an chomhaid
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=User is deactivated, login is currently blocked with this u
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Auto Redact autoRedact.title=Auto Redact
@@ -751,7 +749,6 @@ certSign.showSig=Taispeáin Síniú
certSign.reason=Cúis certSign.reason=Cúis
certSign.location=Suíomh certSign.location=Suíomh
certSign.name=Ainm certSign.name=Ainm
certSign.showLogo=Show Logo
certSign.submit=Sínigh PDF certSign.submit=Sínigh PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Dath Aibhsithe 2:
compare.document.1=Doiciméad 1 compare.document.1=Doiciméad 1
compare.document.2=Doiciméad 2 compare.document.2=Doiciméad 2
compare.submit=Déan comparáid idir compare.submit=Déan comparáid idir
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.
#BookToPDF #BookToPDF
BookToPDF.title=Leabhair agus comics a PDF BookToPDF.title=Leabhair agus comics a PDF
@@ -811,11 +805,6 @@ sign.draw=Tarraing Síniú
sign.text=Ionchur Téacs sign.text=Ionchur Téacs
sign.clear=Glan sign.clear=Glan
sign.add=Cuir sign.add=Cuir
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -12,17 +12,17 @@ imgPrompt=छवियों का चयन करें
genericSubmit=प्रस्तुत करें genericSubmit=प्रस्तुत करें
processTimeWarning=चेतावनी: यह प्रक्रिया फ़ाइल के आकार पर निर्भर करती है और यह से एक मिनट तक लग सकती है processTimeWarning=चेतावनी: यह प्रक्रिया फ़ाइल के आकार पर निर्भर करती है और यह से एक मिनट तक लग सकती है
pageOrderPrompt=कस्टम पेज क्रम (पेज नंबरों या 2n+1 जैसे कार्यों की एक कॉमा से अलग-अलग सूची दर्ज करें): pageOrderPrompt=कस्टम पेज क्रम (पेज नंबरों या 2n+1 जैसे कार्यों की एक कॉमा से अलग-अलग सूची दर्ज करें):
pageSelectionPrompt=कस्तम पेज चयन (पेज संख्याओं 1,5,6 या फंक्शन 2n+1 को अलग-अलग बैरीज़ में लिखिए) : pageSelectionPrompt=Custom Page Selection (Enter a comma-separated list of page numbers 1,5,6 or Functions like 2n+1) :
goToPage=जाएँ goToPage=जाएँ
true=सही true=सही
false=गलत false=गलत
unknown=अज्ञात unknown=अज्ञात
save=सहेजें save=सहेजें
saveToBrowser=ब्राउझर में सहमत करें saveToBrowser=Save to Browser
close=बंद करें close=बंद करें
filesSelected=फ़ाइलें चयनित हैं filesSelected=फ़ाइलें चयनित हैं
noFavourites=कोई पसंदीदा जोड़ा नहीं गया है noFavourites=कोई पसंदीदा जोड़ा नहीं गया है
downloadComplete=डाउनलोड पूरा हुआ downloadComplete=Download Complete
bored=बोर हो रहे हैं? bored=बोर हो रहे हैं?
alphabet=वर्णमाला alphabet=वर्णमाला
downloadPdf=पीडीएफ़ डाउनलोड करें downloadPdf=पीडीएफ़ डाउनलोड करें
@@ -46,91 +46,89 @@ red=लाल
green=हरा green=हरा
blue=नीला blue=नीला
custom=कस्टम... custom=कस्टम...
WorkInProgess=कार्य चल रहा है, ये लगभग कार्य कर सकते हैं या फ़ौल बिजी में हो सकते हैं, किसी समस्या का पता लगाने के लिए कृपया रिपोर्ट करें! WorkInProgess=Work in progress, May not work or be buggy, Please report any problems!
poweredBy=बलिदान की स्वामित्व poweredBy=Powered by
yes=हा yes=Yes
no=नहीं no=No
changedCredsMessage=क्रेडेंशियल्स बदल दी गईं! changedCredsMessage=क्रेडेंशियल्स बदल दी गईं!
notAuthenticatedMessage=उपयोगकर्ता प्रमाणित नहीं है। notAuthenticatedMessage=उपयोगकर्ता प्रमाणित नहीं है।
userNotFoundMessage=उपयोगकर्ता नहीं मिला। userNotFoundMessage=उपयोगकर्ता नहीं मिला।
incorrectPasswordMessage=वर्तमान पासवर्ड गलत है। incorrectPasswordMessage=वर्तमान पासवर्ड गलत है।
usernameExistsMessage=नया उपयोगकर्ता नाम पहले से मौजूद है। usernameExistsMessage=नया उपयोगकर्ता नाम पहले से मौजूद है।
invalidUsernameMessage=अवैध उपयोगकर्ता नाम, उपयोगकर्ता नाम केवल अक्षर, संख्या और इन प्रतिकरणों @._+- में ही शामिल हो सकते हैं या एक बिल्ड-आउट वैध ईमेल एड्रेस के रूप में होना चाहिए। invalidUsernameMessage=Invalid username, username can only contain letters, numbers and the following special characters @._+- or must be a valid email address.
invalidPasswordMessage=पासवर्ड खाली नहीं हो सकता है और इसमें शुरुआत या अंत में अज्ञात अंदाज के विच्छेदन नहीं हो सकते। invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=नया पासवर्ड और पुष्टि नया पासवर्ड मेल खाते हैं। confirmPasswordErrorMessage=New Password and Confirm New Password must match.
deleteCurrentUserMessage=प्रसिद्धिगत उपयोगकर्ता को नहीं हटा सकते हैं। deleteCurrentUserMessage=Cannot delete currently logged in user.
deleteUsernameExistsMessage=उपयोगकर्ता नाम मौजूद नहीं है और नहीं हटा सकता है। deleteUsernameExistsMessage=The username does not exist and cannot be deleted.
downgradeCurrentUserMessage=मौजूदा यूज़र की भूमिका को डाउनग्रेड नहीं किया जा सकता downgradeCurrentUserMessage=मौजूदा यूज़र की भूमिका को डाउनग्रेड नहीं किया जा सकता
disabledCurrentUserMessage=वर्तमान उपयोगकर्ता निषेध किया गया है। disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=मौजूदा यूज़र की भूमिका को डाउनग्रेड नहीं किया जा सकता। इसलिए, वर्तमान उपयोगकर्ता को नहीं दिखाया जाएगा। downgradeCurrentUserLongMessage=मौजूदा यूज़र की भूमिका को डाउनग्रेड नहीं किया जा सकता। इसलिए, वर्तमान उपयोगकर्ता को नहीं दिखाया जाएगा।
userAlreadyExistsOAuthMessage=उपयोगकर्ता ऑटहॉराइजेशन 2 से वास्तविक में मौजूद है। userAlreadyExistsOAuthMessage=The user already exists as an OAuth2 user.
userAlreadyExistsWebMessage=उपयोगकर्ता वेब से राजीव में मौजूद है। userAlreadyExistsWebMessage=The user already exists as an web user.
error=मुश्किल error=Error
oops=ओह! oops=Oops!
help=सहायता help=Help
goHomepage=主页前往 goHomepage=Go to Homepage
joinDiscord=हमारे Discord सर्वर में शामिल होना joinDiscord=Join our Discord server
seeDockerHub=Docker Hub पर देखें seeDockerHub=See Docker Hub
visitGithub=गिटहब को दृश्यकरण करें visitGithub=Visit Github Repository
donate=दान करें donate=Donate
color=रंग color=Color
sponsor=पatreon से पोर्टन sponsor=Sponsor
info=सूचना info=Info
pro=कॉलेजीय pro=Pro
page=पृष्ठ page=पृष्ठ
pages=पृष्ठों pages=पृष्ठों
loading=डालिंग...
addToDoc=Add to Document
legal.privacy=गुप्तता सूचना legal.privacy=Privacy Policy
legal.terms=शर्तें और प्रवाह legal.terms=Terms and Conditions
legal.accessibility=कारणीबिलिटी legal.accessibility=Accessibility
legal.cookie=कुकीज़ नीति legal.cookie=Cookie Policy
legal.impressum=प्रेरणा legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
############### ###############
pipeline.header=पाइपलाइन सूची (बेटा) pipeline.header=Pipeline Menu (Beta)
pipeline.uploadButton=व्यक्तिगत अपलोड pipeline.uploadButton=Upload Custom
pipeline.configureButton=संरचना करें pipeline.configureButton=Configure
pipeline.defaultOption=कसरत की शुल्क pipeline.defaultOption=Custom
pipeline.submitButton=प्रविष्टि pipeline.submitButton=Submit
pipeline.help=पाइपलाइन मदद pipeline.help=Pipeline Help
pipeline.scanHelp=फोल्डर स्फॅं जस्त्र मदद pipeline.scanHelp=Folder Scanning Help
pipeline.deletePrompt=कि आपकी है पाइपलाइन का हटाना करना चाहते हैं? pipeline.deletePrompt=Are you sure you want to delete pipeline
###################### ######################
# Pipeline Options # # Pipeline Options #
###################### ######################
pipelineOptions.header=पाइपलाइन संरचना pipelineOptions.header=Pipeline Configuration
pipelineOptions.pipelineNameLabel=पाइपलाइन का नाम pipelineOptions.pipelineNameLabel=Pipeline Name
pipelineOptions.saveSettings=कार्यक्रम सेटिंग्स संरक्षण pipelineOptions.saveSettings=Save Operation Settings
pipelineOptions.pipelineNamePrompt=यहाँ पाइपलाइन का नाम दर्ज करें pipelineOptions.pipelineNamePrompt=Enter pipeline name here
pipelineOptions.selectOperation=कार्य चुनें pipelineOptions.selectOperation=Select Operation
pipelineOptions.addOperationButton=कार्य जोड़ें pipelineOptions.addOperationButton=Add operation
pipelineOptions.pipelineHeader=पाइपलाइन: pipelineOptions.pipelineHeader=Pipeline:
pipelineOptions.saveButton=डाउनलोड pipelineOptions.saveButton=Download
pipelineOptions.validateButton=सुविधा परीक्षण pipelineOptions.validateButton=Validate
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=प्रो के लिए अदायगी में तहत तुलना करें enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=यह संभावना केवल प्रो उपयोगकर्ताओं के लिए उपलब्ध है। enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=स्टीरिंग पीडीऍफ़ प्रो यॅमल संरचना फाइलें और अन्य SSO सुविधाओं का समर्थन करता है। enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=सामान्य प्रबंधन विशेषताएं खोजने के लिए स्टीरिंग पीडीऍफ़ प्रो का परीक्षण करें enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=स्टीरिंग पीडीऍफ़ को बेहतर करने में मदद करना चाहते हैं? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=स्टीरिंग पीडीऍफ़ मध्यम सुनिश्चित है जो हमें उपलब्ध कराता है और उत्पाद को बेहतर करने में मदद करता है। हम किसी प्रकार का व्यक्तिगत जानकारी या फ़ाइल सामग्रियों का ट्रॅक नहीं करते हैं। analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=मांगित गर्न मा, कैनलीस-पडफको सुधार बढाउने मदत गर्न माफि गर्ने प्रयोगकर्ताको समजलाई समज्दा परिवर्तनले मदत गर्न सकिँदू। analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=कैनलीस खुलाउँछु analytics.enable=Enable analytics
analytics.disable=कैनलीस बुझाउँछु analytics.disable=Disable analytics
analytics.settings=परिष्कार संपर्कमा कैनलीस सेटिङहरू परिवर्तन गर्न सकिँदू analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=पीडीएफ से कनवर्ट कर
navbar.sections.security=संकेत और सुरक्षा navbar.sections.security=संकेत और सुरक्षा
navbar.sections.advance=उन्नत navbar.sections.advance=उन्नत
navbar.sections.edit=देखें और संपादित करें navbar.sections.edit=देखें और संपादित करें
navbar.sections.popular=यादृच्छिको navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -163,13 +161,13 @@ settings.downloadOption.3=फ़ाइल डाउनलोड करें
settings.zipThreshold=जब डाउनलोड की गई फ़ाइलों की संख्या सीमा से अधिक हो settings.zipThreshold=जब डाउनलोड की गई फ़ाइलों की संख्या सीमा से अधिक हो
settings.signOut=साइन आउट settings.signOut=साइन आउट
settings.accountSettings=खाता सेटिंग्स settings.accountSettings=खाता सेटिंग्स
settings.bored.help=बालाची खुशाखुशी गेम सक्रिय गर्ने आवकता settings.bored.help=Enables easter egg game
settings.cacheInputs.name=पहिलो इनपुटहरू बंदरगाहमा राख्न settings.cacheInputs.name=Save form inputs
settings.cacheInputs.help=क्रियाकलापको पारित कर्मचारी भेट्दा पूर्ववार उपयोग मा लगाएको इनपुटहरू बंदरगाहमा संग्रहित गर्ने आवकता settings.cacheInputs.help=Enable to store previously used inputs for future runs
changeCreds.title=क्रेडेंशियल बदलें changeCreds.title=क्रेडेंशियल बदलें
changeCreds.header=अपना खाता विवरण अपडेट करें changeCreds.header=अपना खाता विवरण अपडेट करें
changeCreds.changePassword=सुरक्षित पासワर्ड वापर्ने बदल्नु हो changeCreds.changePassword=You are using default login credentials. Please enter a new password
changeCreds.newUsername=नया उपयोगकर्ता नाम changeCreds.newUsername=नया उपयोगकर्ता नाम
changeCreds.oldPassword=वर्तमान पासवर्ड changeCreds.oldPassword=वर्तमान पासवर्ड
changeCreds.newPassword=नया पासवर्ड changeCreds.newPassword=नया पासवर्ड
@@ -204,25 +202,25 @@ adminUserSettings.header=व्यवस्थापक उपयोगकर्
adminUserSettings.admin=व्यवस्थापक adminUserSettings.admin=व्यवस्थापक
adminUserSettings.user=उपयोगकर्ता adminUserSettings.user=उपयोगकर्ता
adminUserSettings.addUser=नया उपयोगकर्ता जोड़ें adminUserSettings.addUser=नया उपयोगकर्ता जोड़ें
adminUserSettings.deleteUser=उपयोगकर्ता छुट्टी देनु adminUserSettings.deleteUser=Delete User
adminUserSettings.confirmDeleteUser=उपयोगकर्ताको छुट्टी दिइने सँचार हुनुपछै अनुमति दिन्‍दै लागि पुष्टि गर्नुहोस् adminUserSettings.confirmDeleteUser=Should the user be deleted?
adminUserSettings.confirmChangeUserStatus=उपयोगकर्ताको स्थिरपद्धति परिवर्तनले पुष्टि गर्नुहोस्‍ adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=उपयोगकर्ता नाममा केही संख्या, क्रतिका र अगले पूर्णाङ्क @._+- मा जस्ता विशेष चिह्नहरू छुन्न सकिँदू उपयोगकर्ता नामले एक संधारणीय पत्रक्याले बनाइएच। adminUserSettings.usernameInfo=Username can only contain letters, numbers and the following special characters @._+- or must be a valid email address.
adminUserSettings.roles=रोल्स adminUserSettings.roles=रोल्स
adminUserSettings.role=रोल adminUserSettings.role=रोल
adminUserSettings.actions=क्रियाएँ adminUserSettings.actions=क्रियाएँ
adminUserSettings.apiUser=सीमित API उपयोगकर्ता adminUserSettings.apiUser=सीमित API उपयोगकर्ता
adminUserSettings.extraApiUser=अतिरिक्त सीमित API उपयोगकर्ता adminUserSettings.extraApiUser=Additional Limited API User
adminUserSettings.webOnlyUser=केवल वेब उपयोगकर्ता adminUserSettings.webOnlyUser=केवल वेब उपयोगकर्ता
adminUserSettings.demoUser=विनंति उपयोगकर्ता (स्वामित्व अनुकूली) adminUserSettings.demoUser=Demo User (No custom settings)
adminUserSettings.internalApiUser=अन्तराल API उपयोगकर्ता adminUserSettings.internalApiUser=Internal API User
adminUserSettings.forceChange=उपयोगकर्ता को लॉगिन पर उपयोगकर्ता नाम/पासवर्ड बदलने के लिए मजबूर करें adminUserSettings.forceChange=उपयोगकर्ता को लॉगिन पर उपयोगकर्ता नाम/पासवर्ड बदलने के लिए मजबूर करें
adminUserSettings.submit=उपयोगकर्ता को सहेजें adminUserSettings.submit=उपयोगकर्ता को सहेजें
adminUserSettings.changeUserRole=यूज़र की भूमिका बदलें adminUserSettings.changeUserRole=यूज़र की भूमिका बदलें
adminUserSettings.authenticated=मान्यताप्राप्त adminUserSettings.authenticated=Authenticated
adminUserSettings.editOwnProfil=आफु प्रोफाइल संपादन गर्नुहोस् adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=कार्यक्षम उपयोगकर्ता adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=अकार्यक्षम उपयोगकर्ता adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Active Users: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Disabled Users: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Total Users: adminUserSettings.totalUsers=Total Users:
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -488,46 +485,46 @@ home.split-by-sections.title=खंडों से पीडीएफ़ वि
home.split-by-sections.desc=पीडीएफ़ के प्रत्येक पृष्ठ को छोटे से छोटे क्षैतिज और ऊर्ध्वाधर खंडों में विभाजित करें home.split-by-sections.desc=पीडीएफ़ के प्रत्येक पृष्ठ को छोटे से छोटे क्षैतिज और ऊर्ध्वाधर खंडों में विभाजित करें
split-by-sections.tags=खंड विभाजन, विभाजित करें, अनुकूलित split-by-sections.tags=खंड विभाजन, विभाजित करें, अनुकूलित
home.AddStampRequest.title=PDF में स्पष्ट रंग जोड़ें home.AddStampRequest.title=Add Stamp to PDF
home.AddStampRequest.desc=साहित्य पुनर्व्यवस्थित करें या निर्धारित स्थानों पर चित्र लक्षण जोड़ें home.AddStampRequest.desc=Add text or add image stamps at set locations
AddStampRequest.tags=Stamp, Add image, center image, Watermark, PDF, Embed, Customize AddStampRequest.tags=Stamp, Add image, center image, Watermark, PDF, Embed, Customize
home.PDFToBook.title=PDF से बुक home.PDFToBook.title=PDF to Book
home.PDFToBook.desc=Calibre का उपयोग करके PDF को बुक/कमिक्स फॉर्मेट में परिवर्तित करें home.PDFToBook.desc=Converts PDF to Book/Comic formats using calibre
PDFToBook.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle PDFToBook.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.BookToPDF.title=बुक से PDF home.BookToPDF.title=Book to PDF
home.BookToPDF.desc=Calibre का उपयोग करके Books/Comics फॉर्मेट को PDF में परिवर्तित करें home.BookToPDF.desc=Converts Books/Comics formats to PDF using calibre
BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.removeImagePdf.title=चित्र हटाएं home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=PDF से चित्र हटा कर फाइल आकार को कम करें home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=चित्र हटाएं,पृष्ठ ऑपरेशन्स,बाकी सिड,सर्वर साइड removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=अध्यायों पर अलग-करें home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=पुस्तक के अध्याय की संरचना पर आधारित एक PDF को बहिन-भागों में विभाजित करें home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=विभाजन,अध्याय,पसंदीदा,रजैत splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=चित्र रंग परिवर्तन/उलटकर परिवर्तन PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=PDF में टेक्स्ट और पैरासेमा के लिए रंग परिवर्तन करें और पूरी फोटो उलटकर परिवर्तन करें जो कि फाइल आकार को कम करें home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=रंग परिवर्तन,पृष्ठ ऑपरेशन्स,बाकी सिड,सर्वर साइड replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=रंग परिवर्तन/उलटकर परिवर्तन विकल्प replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=वैश्विक(वैश्विक उच्च अंतराल रंग) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=स्वतन्त्र(आम रंग) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=सार्वभौमिक-क्रमांतरण(सभी रंगों को आलवा करें) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=कुछ तृvigya रंग विकल्प replace-color.selectText.5=High contrast color options
replace-color.selectText.6=गायन उपरि पीक मैदान पर काला अवलोकन replace-color.selectText.6=white text on black background
replace-color.selectText.7=काले उपरि काला रेखा replace-color.selectText.7=Black text on white background
replace-color.selectText.8=काले उपरि काला मैदान पर सफ़ेद अवलोकन replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=काले उपरि काला मैदान पर हियंग अवलोकन replace-color.selectText.9=Green text on black background
replace-color.selectText.10=याद की जाने वाली रेखा चुनें replace-color.selectText.10=Choose text Color
replace-color.selectText.11=पौधा उपरि पीक मैदान चुनें replace-color.selectText.11=Choose background Color
replace-color.submit=बदलें replace-color.submit=Replace
@@ -546,17 +543,18 @@ login.locked=आपका खाता लॉक कर दिया गया
login.signinTitle=कृपया साइन इन करें login.signinTitle=कृपया साइन इन करें
login.ssoSignIn=सिंगल साइन - ऑन के ज़रिए लॉग इन करें login.ssoSignIn=सिंगल साइन - ऑन के ज़रिए लॉग इन करें
login.oauth2AutoCreateDisabled=OAUTH2 ऑटो - क्रिएट यूज़र अक्षम किया गया login.oauth2AutoCreateDisabled=OAUTH2 ऑटो - क्रिएट यूज़र अक्षम किया गया
login.oauth2AdminBlockedUser=व्यक्तिगत नहीं की रजिस्टर या लॉग-इन वर्षा माह प्रतिबंधित है। कृपया संबवादक से संपर्क करें. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=स्वीकारोचा याचना मिल नहीं रही login.oauth2RequestNotFound=Authorization request not found
login.oauth2InvalidUserInfoResponse=अमान्तरित प्रकाशीय जानकारी संदेश कैसे है login.oauth2InvalidUserInfoResponse=Invalid User Info Response
login.oauth2invalidRequest=गलत याचना login.oauth2invalidRequest=Invalid Request
login.oauth2AccessDenied=इनपुट उम्मीदवार डिसकार login.oauth2AccessDenied=Access Denied
login.oauth2InvalidTokenResponse=अमान्तरित सिक्वेंस जवाब कैसे है login.oauth2InvalidTokenResponse=Invalid Token Response
login.oauth2InvalidIdToken=गलत इड टोकन login.oauth2InvalidIdToken=Invalid Id Token
login.userIsDisabled=उपयोगकर्ता डिसबाल, यह वर्षा सभी उपयोगकर्ता जूझे वर्षाकरण बारा मिल गई है। कृपया संबवादक से संपर्क करें. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=आप पहले से ही login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=सुनिश्चित करने वाले डिवाइस्स पर लॉग-इन हैं। कृपया इन डिवाइस से लॉगआउट करें और पुनः प्रयास करें login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=आपके अधिक संख्या में विदीश हो रहे हैं login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=स्वत: गोपनीयकरण autoRedact.title=स्वत: गोपनीयकरण
@@ -588,7 +586,7 @@ pdfToSinglePage.submit=एकल पृष्ठ में परिवर्त
pageExtracter.title=पृष्ठों को निकालें pageExtracter.title=पृष्ठों को निकालें
pageExtracter.header=पृष्ठों को निकालें pageExtracter.header=पृष्ठों को निकालें
pageExtracter.submit=निकालें pageExtracter.submit=निकालें
pageExtracter.placeholder=(उदाहरण के लिए 1,2,8 या 4,7,12-16 या 2n-1) pageExtracter.placeholder=(e.g. 1,2,8 or 4,7,12-16 or 2n-1)
#getPdfInfo #getPdfInfo
@@ -620,37 +618,37 @@ HTMLToPDF.header=HTML से पीडीएफ़
HTMLToPDF.help=HTML फ़ाइलों और html/css/images आदि को आत्मसात करने वाले ZIPs को स्वीकार करता है HTMLToPDF.help=HTML फ़ाइलों और html/css/images आदि को आत्मसात करने वाले ZIPs को स्वीकार करता है
HTMLToPDF.submit=रूपांतरित करें HTMLToPDF.submit=रूपांतरित करें
HTMLToPDF.credit=WeasyPrint का प्रयोग होता है HTMLToPDF.credit=WeasyPrint का प्रयोग होता है
HTMLToPDF.zoom=संप्रेषण वेबसाइट के लिए डॉलर स्तर। HTMLToPDF.zoom=Zoom level for displaying the website.
HTMLToPDF.pageWidth=पृष्ठ की चौड़ाई मिलीमिटर में। (व्यंकत अधिकतर मान) HTMLToPDF.pageWidth=Width of the page in centimeters. (Blank to default)
HTMLToPDF.pageHeight=पृष्ठ की ऊँचाई मिलीमिटर में। (व्यंकत अधिकतर मान) HTMLToPDF.pageHeight=Height of the page in centimeters. (Blank to default)
HTMLToPDF.marginTop=पृष्ठ का शीर्ष बन्दरगाह मिलीमिटर में। (व्यंकत अधिकतर मान) HTMLToPDF.marginTop=Top margin of the page in millimeters. (Blank to default)
HTMLToPDF.marginBottom=पृष्ठ का तल बन्दरगाह मिलीमिटर में। (व्यंकत अधिकतर मान) HTMLToPDF.marginBottom=Bottom margin of the page in millimeters. (Blank to default)
HTMLToPDF.marginLeft=पृष्ठ का बाएँ बन्दरगाह मिलीमिटर में। (व्यंकत अधिकतर मान) HTMLToPDF.marginLeft=Left margin of the page in millimeters. (Blank to default)
HTMLToPDF.marginRight=पृष्ठ का डाई बन्दरगाह मिलीमिटर में। (व्यंकत अधिकतर मान) HTMLToPDF.marginRight=Right margin of the page in millimeters. (Blank to default)
HTMLToPDF.printBackground=वेबसाइट के पैनल को छद्म रूप से दिखाएं। HTMLToPDF.printBackground=Render the background of websites.
HTMLToPDF.defaultHeader=उचित उपनाम (नाम और पृष्ठ संख्या) इनकार करें। HTMLToPDF.defaultHeader=Enable Default Header (Name and page number)
HTMLToPDF.cssMediaType=पृष्ठ के लिए CSS मीडिया टाइप परिवर्तित करें। HTMLToPDF.cssMediaType=Change the CSS media type of the page.
HTMLToPDF.none=कोई नहीं HTMLToPDF.none=None
HTMLToPDF.print=दबाओ और बन्दोच्स हार्डवेयर पर आउटपुट करें। HTMLToPDF.print=Print
HTMLToPDF.screen=दिखाएँ जैसा कि अपने ट्रिपल पर। HTMLToPDF.screen=Screen
#AddStampRequest #AddStampRequest
AddStampRequest.header=बिन्दुक बन्दोच्स हेडर AddStampRequest.header=Stamp PDF
AddStampRequest.title=बिन्दुक बन्दोच्स AddStampRequest.title=Stamp PDF
AddStampRequest.stampType=बिन्दुक प्रकार AddStampRequest.stampType=Stamp Type
AddStampRequest.stampText=बिन्दुक टेक्स्ट AddStampRequest.stampText=Stamp Text
AddStampRequest.stampImage=बिन्दुक आइमेज AddStampRequest.stampImage=Stamp Image
AddStampRequest.alphabet=अक्षर AddStampRequest.alphabet=Alphabet
AddStampRequest.fontSize=फोन्ट/चित्र का आकार AddStampRequest.fontSize=Font/Image Size
AddStampRequest.rotation=वृद्धि AddStampRequest.rotation=Rotation
AddStampRequest.opacity=परिस्थिति AddStampRequest.opacity=Opacity
AddStampRequest.position=स्थिति AddStampRequest.position=Position
AddStampRequest.overrideX=X निर्देशांक परिबद्ध करें AddStampRequest.overrideX=Override X Coordinate
AddStampRequest.overrideY=Y निर्देशांक परिबद्ध करें AddStampRequest.overrideY=Override Y Coordinate
AddStampRequest.customMargin=संवैधित मैरज AddStampRequest.customMargin=Custom Margin
AddStampRequest.customColor=संवैधित टेक्स्ट रंग AddStampRequest.customColor=Custom Text Color
AddStampRequest.submit=प्रदान करें AddStampRequest.submit=Submit
#sanitizePDF #sanitizePDF
@@ -731,7 +729,7 @@ pageLayout.submit=प्रस्तुत क
scalePages.title=पृष्ठ-स्केल समायोजित करें scalePages.title=पृष्ठ-स्केल समायोजित करें
scalePages.header=पृष्ठ-स्केल समायोजित करें scalePages.header=पृष्ठ-स्केल समायोजित करें
scalePages.pageSize=दस्तावेज़ के पृष्ठ का आकार। scalePages.pageSize=दस्तावेज़ के पृष्ठ का आकार।
scalePages.keepPageSize=मूल आकार scalePages.keepPageSize=Original Size
scalePages.scaleFactor=पृष्ठ का ज़ूम स्तर (क्रॉप)। scalePages.scaleFactor=पृष्ठ का ज़ूम स्तर (क्रॉप)।
scalePages.submit=प्रस्तुत करें scalePages.submit=प्रस्तुत करें
@@ -740,26 +738,25 @@ scalePages.submit=प्रस्तुत करें
certSign.title=प्रमाणपत्र साइनिंग certSign.title=प्रमाणपत्र साइनिंग
certSign.header=अपने प्रमाणपत्र के साथ एक पीडीएफ़ पर हस्ताक्षर करें (काम जारी है) certSign.header=अपने प्रमाणपत्र के साथ एक पीडीएफ़ पर हस्ताक्षर करें (काम जारी है)
certSign.selectPDF=साइन करने के लिए एक पीडीएफ़ फ़ाइल का चयन करें: certSign.selectPDF=साइन करने के लिए एक पीडीएफ़ फ़ाइल का चयन करें:
certSign.jksNote=नोट: यदि आपके संदेश प्रकार नीचे सूचीबद्ध नहीं है, तो कृपया keytool कमांड लाइन टूल का उपयोग कर आपका संदेश फ़ाइल (.jks) में परिवर्तित करें. फिर, नीचे .jks फ़ाइल विकल्प चुनें. certSign.jksNote=Note: If your certificate type is not listed below, please convert it to a Java Keystore (.jks) file using the keytool command line tool. Then, choose the .jks file option below.
certSign.selectKey=अपनी निजी कुंजी फ़ाइल का चयन करें (PKCS#8 प्रारूप, .pem या .der हो सकता है): certSign.selectKey=अपनी निजी कुंजी फ़ाइल का चयन करें (PKCS#8 प्रारूप, .pem या .der हो सकता है):
certSign.selectCert=अपनी प्रमाणपत्र फ़ाइल का चयन करें (X.509 प्रारूप, .pem या .der हो सकता है): certSign.selectCert=अपनी प्रमाणपत्र फ़ाइल का चयन करें (X.509 प्रारूप, .pem या .der हो सकता है):
certSign.selectP12=अपनी PKCS#12 कीस्टोर फ़ाइल का चयन करें (.p12 या .pfx) (वैकल्पिक, यदि प्रदान की गई हो, तो इसमें आपकी निजी कुंजी और प्रमाणपत्र होना चाहिए): certSign.selectP12=अपनी PKCS#12 कीस्टोर फ़ाइल का चयन करें (.p12 या .pfx) (वैकल्पिक, यदि प्रदान की गई हो, तो इसमें आपकी निजी कुंजी और प्रमाणपत्र होना चाहिए):
certSign.selectJKS=आपका Java Keystore (.jks या .keystore) फ़ाइल को चुनें: certSign.selectJKS=Select Your Java Keystore File (.jks or .keystore):
certSign.certType=प्रमाणपत्र प्रकार certSign.certType=प्रमाणपत्र प्रकार
certSign.password=अपनी कीस्टोर या निजी कुंजी पासवर्ड दर्ज करें (यदि कोई हो): certSign.password=अपनी कीस्टोर या निजी कुंजी पासवर्ड दर्ज करें (यदि कोई हो):
certSign.showSig=हस्ताक्षर दिखाएं certSign.showSig=हस्ताक्षर दिखाएं
certSign.reason=कारण certSign.reason=कारण
certSign.location=स्थान certSign.location=स्थान
certSign.name=नाम certSign.name=नाम
certSign.showLogo=लॉगो दिखाएं
certSign.submit=पीडीएफ़ पर हस्ताक्षर करें certSign.submit=पीडीएफ़ पर हस्ताक्षर करें
#removeCertSign #removeCertSign
removeCertSign.title=वितरण साइनचर्टर हटाएं removeCertSign.title=Remove Certificate Signature
removeCertSign.header=PDF में डिजिटल चार्टर को हटाएं removeCertSign.header=Remove the digital certificate from the PDF
removeCertSign.selectPDF=एक PDF फ़ाइल को चुनें: removeCertSign.selectPDF=Select a PDF file:
removeCertSign.submit=साइनचर्टर हटाएं removeCertSign.submit=Remove Signature
#removeBlanks #removeBlanks
@@ -781,27 +778,24 @@ removeAnnotations.submit=हटाएं
#compare #compare
compare.title=तुलना करें compare.title=तुलना करें
compare.header=पीडीएफ़ तुलना करें compare.header=पीडीएफ़ तुलना करें
compare.highlightColor.1=प्रकाशित रंग 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=प्रकाशित रंग 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=दस्तावेज़ 1 compare.document.1=दस्तावेज़ 1
compare.document.2=दस्तावेज़ 2 compare.document.2=दस्तावेज़ 2
compare.submit=तुलना करें compare.submit=तुलना करें
compare.complex.message=एक या दोनों प्रदान की गई संस्कृति महंगे हैं, अपरिमेयता की तुलना की शुरुआत हो सकती है
compare.large.file.message=One or Both of the provided documents are too large to process
compare.no.text.message=चयनित PDF में कोई भी प्रतीक नहीं है. कृपया प्रतीक वाले PDFs का चयन करें.
#BookToPDF #BookToPDF
BookToPDF.title=बुक्स और कमिक्स को PDF में BookToPDF.title=Books and Comics to PDF
BookToPDF.header=बुक्स से पीडीएफ BookToPDF.header=Book to PDF
BookToPDF.credit=Calibre का उपयोग करता है BookToPDF.credit=Uses Calibre
BookToPDF.submit=संवाद करें BookToPDF.submit=Convert
#PDFToBook #PDFToBook
PDFToBook.title=PDF से बुक्स PDFToBook.title=PDF to Book
PDFToBook.header=PDF से बुक्स PDFToBook.header=PDF to Book
PDFToBook.selectText.1=फॉर्मट PDFToBook.selectText.1=Format
PDFToBook.credit=Calibre का उपयोग करता है PDFToBook.credit=Uses Calibre
PDFToBook.submit=संवाद करें PDFToBook.submit=Convert
#sign #sign
sign.title=हस्ताक्षर sign.title=हस्ताक्षर
@@ -811,11 +805,6 @@ sign.draw=हस्ताक्षर बनाएँ
sign.text=पाठ इनपुट sign.text=पाठ इनपुट
sign.clear=साफ़ करें sign.clear=साफ़ करें
sign.add=जोड़ें sign.add=जोड़ें
sign.saved=जोड़े हुए प्रदर्शन
sign.save=प्रदर्शन बचाएं
sign.personalSigs=मौजूदा प्रदर्शन
sign.sharedSigs=साझेदार प्रदर्शन
sign.noSavedSigs=कोई भी संवर्तित प्रदर्शन नहीं मौजूद है
#repair #repair
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=न्यूनतम कंटोर क्ष
ScannerImageSplit.selectText.8=फोटो के लिए न्यूनतम कंटोर क्षेत्र थ्रेशोल्ड को सेट करता है। ScannerImageSplit.selectText.8=फोटो के लिए न्यूनतम कंटोर क्षेत्र थ्रेशोल्ड को सेट करता है।
ScannerImageSplit.selectText.9=बॉर्डर का आकार: ScannerImageSplit.selectText.9=बॉर्डर का आकार:
ScannerImageSplit.selectText.10=निकालने और जोड़ने के लिए जोड़ा जाने वाला बॉर्डर का आकार सेट करता है ताकि आउटपुट में सफेद बॉर्डर न आए (डिफ़ॉल्ट: 1)। ScannerImageSplit.selectText.10=निकालने और जोड़ने के लिए जोड़ा जाने वाला बॉर्डर का आकार सेट करता है ताकि आउटपुट में सफेद बॉर्डर न आए (डिफ़ॉल्ट: 1)।
ScannerImageSplit.info=Python नहीं इंस्टॉल है. यह संचालित करने के लिए आवश्यक है. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=OCR के साथ PDF प्रोसेस करें
extractImages.title=छवियां निकालें extractImages.title=छवियां निकालें
extractImages.header=छवियां निकालें extractImages.header=छवियां निकालें
extractImages.selectText=निकाली गई छवियों को कन्वर्ट करने के लिए छवि प्रारूप चुनें extractImages.selectText=निकाली गई छवियों को कन्वर्ट करने के लिए छवि प्रारूप चुनें
extractImages.allowDuplicates=यह दबाव अनुमति दें extractImages.allowDuplicates=Save duplicate images
extractImages.submit=निकालें extractImages.submit=निकालें
@@ -877,7 +866,7 @@ extractImages.submit=निकालें
fileToPDF.title=फ़ाइल से पीडीएफ़ fileToPDF.title=फ़ाइल से पीडीएफ़
fileToPDF.header=किसी भी फ़ाइल को पीडीएफ़ में बदलें fileToPDF.header=किसी भी फ़ाइल को पीडीएफ़ में बदलें
fileToPDF.credit=यह सेवा फ़ाइल परिवर्तन के लिए LibreOffice और Unoconv का उपयोग करती है। fileToPDF.credit=यह सेवा फ़ाइल परिवर्तन के लिए LibreOffice और Unoconv का उपयोग करती है।
fileToPDF.supportedFileTypesInfo=समर्थित फ़ाइल प्रजातियाँ fileToPDF.supportedFileTypesInfo=Supported File types
fileToPDF.supportedFileTypes=समर्थित फ़ाइल प्रकार नीचे दिए गए होने चाहिए हालांकि समर्थित प्रारूपों की पूरी अद्यतन सूची के लिए कृपया LibreOffice दस्तावेज़ीकरण से संदर्भित करें fileToPDF.supportedFileTypes=समर्थित फ़ाइल प्रकार नीचे दिए गए होने चाहिए हालांकि समर्थित प्रारूपों की पूरी अद्यतन सूची के लिए कृपया LibreOffice दस्तावेज़ीकरण से संदर्भित करें
fileToPDF.submit=पीडीएफ़ में बदलें fileToPDF.submit=पीडीएफ़ में बदलें
@@ -907,7 +896,7 @@ merge.title=मर्ज
merge.header=एक से अधिक PDF एक साथ मर्ज करें (2+) merge.header=एक से अधिक PDF एक साथ मर्ज करें (2+)
merge.sortByName=नाम से क्रमबद्ध करें merge.sortByName=नाम से क्रमबद्ध करें
merge.sortByDate=तारीख से क्रमबद्ध करें merge.sortByDate=तारीख से क्रमबद्ध करें
merge.removeCertSign=संयोजित फाइल में डिजिटल साइग्नचर को हटा दें? merge.removeCertSign=Remove digital signature in the merged file?
merge.submit=मर्ज करें merge.submit=मर्ज करें
@@ -915,24 +904,24 @@ merge.submit=मर्ज करें
pdfOrganiser.title=पेज व्यवस्थापक pdfOrganiser.title=पेज व्यवस्थापक
pdfOrganiser.header=PDF पेज व्यवस्थापक pdfOrganiser.header=PDF पेज व्यवस्थापक
pdfOrganiser.submit=पृष्ठों को पुनः व्यवस्थित करें pdfOrganiser.submit=पृष्ठों को पुनः व्यवस्थित करें
pdfOrganiser.mode=रूप pdfOrganiser.mode=Mode
pdfOrganiser.mode.1=कस्टम पेज क्रम pdfOrganiser.mode.1=Custom Page Order
pdfOrganiser.mode.2=वापसी क्रम pdfOrganiser.mode.2=Reverse Order
pdfOrganiser.mode.3=दुबल इंस्टर क्रम pdfOrganiser.mode.3=Duplex Sort
pdfOrganiser.mode.4=बुकलत सॉर्ट pdfOrganiser.mode.4=Booklet Sort
pdfOrganiser.mode.5=पारित-पीछे स्टिस्ट बुकलत सॉर्ट pdfOrganiser.mode.5=Side Stitch Booklet Sort
pdfOrganiser.mode.6=अशैली-बहूनी कटा-चिह्नित करना pdfOrganiser.mode.6=Odd-Even Split
pdfOrganiser.mode.7=पहली पेज हटाना pdfOrganiser.mode.7=Remove First
pdfOrganiser.mode.8=आखिरी पेज हटाना pdfOrganiser.mode.8=Remove Last
pdfOrganiser.mode.9=पहली और आखिरी पेज हटाना pdfOrganiser.mode.9=Remove First and Last
pdfOrganiser.mode.10=अशैली-बहूनी मिश्रण pdfOrganiser.mode.10=Odd-Even Merge
pdfOrganiser.placeholder=(जैसे 1,3,2 या 4-8,2,10-12 या 2n-1) pdfOrganiser.placeholder=(e.g. 1,3,2 or 4-8,2,10-12 or 2n-1)
#multiTool #multiTool
multiTool.title=पीडीएफ मल्टी टूल multiTool.title=पीडीएफ मल्टी टूल
multiTool.header=पीडीएफ मल्टी टूल multiTool.header=पीडीएफ मल्टी टूल
multiTool.uploadPrompts=फाइल का नाम multiTool.uploadPrompts=File Name
#view pdf #view pdf
viewPdf.title=पीडीएफ देखें viewPdf.title=पीडीएफ देखें
@@ -943,7 +932,7 @@ pageRemover.title=पेज हटाने वाला
pageRemover.header=पीडीएफ पेज हटाने वाला pageRemover.header=पीडीएफ पेज हटाने वाला
pageRemover.pagesToDelete=हटाने के पेज (पृष्ठ संख्याओं की व्यवस्था के लिए एक कॉमा से अलग संख्याओं की सूची दर्ज करें): pageRemover.pagesToDelete=हटाने के पेज (पृष्ठ संख्याओं की व्यवस्था के लिए एक कॉमा से अलग संख्याओं की सूची दर्ज करें):
pageRemover.submit=पेज हटाएं pageRemover.submit=पेज हटाएं
pageRemover.placeholder=(जैसे 1,2,6 या 1-10,15-30) pageRemover.placeholder=(e.g. 1,2,6 or 1-10,15-30)
#rotate #rotate
@@ -994,7 +983,7 @@ pdfToImage.color=रंगीन
pdfToImage.grey=ग्रे स्केल pdfToImage.grey=ग्रे स्केल
pdfToImage.blackwhite=काला और सफेद (डेटा खो सकता है!) pdfToImage.blackwhite=काला और सफेद (डेटा खो सकता है!)
pdfToImage.submit=परिवर्तित करें pdfToImage.submit=परिवर्तित करें
pdfToImage.info=पायथन नहीं अनिस्तारित है। वेबP परिवर्तन के लिए आवश्यक है। pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1031,10 +1020,10 @@ watermark.selectText.6=ऊंचाई स्पेसर (प्रत्ये
watermark.selectText.7=अपारदर्शिता (0% - 100%): watermark.selectText.7=अपारदर्शिता (0% - 100%):
watermark.selectText.8=वॉटरमार्क प्रकार: watermark.selectText.8=वॉटरमार्क प्रकार:
watermark.selectText.9=वॉटरमार्क छवि: watermark.selectText.9=वॉटरमार्क छवि:
watermark.selectText.10=PDF डीपीआईमज़ देखभाल करें watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=वॉटरमार्क जोड़ें watermark.submit=वॉटरमार्क जोड़ें
watermark.type.1=संदेश watermark.type.1=Text
watermark.type.2=इमेज watermark.type.2=Image
#Change permissions #Change permissions
@@ -1086,9 +1075,9 @@ pdfToPDFA.title=PDF से PDF/A में
pdfToPDFA.header=PDF से PDF/A में pdfToPDFA.header=PDF से PDF/A में
pdfToPDFA.credit=इस सेवा में PDF/A परिवर्तन के लिए ghostscript का उपयोग किया जाता है। pdfToPDFA.credit=इस सेवा में PDF/A परिवर्तन के लिए ghostscript का उपयोग किया जाता है।
pdfToPDFA.submit=परिवर्तित करें pdfToPDFA.submit=परिवर्तित करें
pdfToPDFA.tip=यह सैकड़ों प्रविष्टियाँ एक ही समय में काम करते हैं pdfToPDFA.tip=Currently does not work for multiple inputs at once
pdfToPDFA.outputFormat=आउटपुट फॉर्मेट pdfToPDFA.outputFormat=Output format
pdfToPDFA.pdfWithDigitalSignature=यह पीडीएफ मेला हस्ताक्षर से संबद्ध है। अगले कदम में यह हटाया जाएगा。 pdfToPDFA.pdfWithDigitalSignature=The PDF contains a digital signature. This will be removed in the next step.
#PDFToWord #PDFToWord
@@ -1170,14 +1159,14 @@ split-by-sections.vertical.label=लंबवत विभाजन
split-by-sections.horizontal.placeholder=क्षैतिज विभाजन की संख्या दर्ज करें split-by-sections.horizontal.placeholder=क्षैतिज विभाजन की संख्या दर्ज करें
split-by-sections.vertical.placeholder=लंबवत विभाजन की संख्या दर्ज करें split-by-sections.vertical.placeholder=लंबवत विभाजन की संख्या दर्ज करें
split-by-sections.submit=PDF को विभाजित करें split-by-sections.submit=PDF को विभाजित करें
split-by-sections.merge=एक पीडीऐ में मिलाएं split-by-sections.merge=Merge Into One PDF
#printFile #printFile
printFile.title=फाइल प्रिंत करें printFile.title=Print File
printFile.header=प्रिंट फाइल को प्रिंटर पर प्रिंट करें printFile.header=Print File to Printer
printFile.selectText.1=Select File to Print printFile.selectText.1=Select File to Print
printFile.selectText.2=प्रिंटर का नाम दर्ज करें printFile.selectText.2=Enter Printer Name
printFile.submit=Print printFile.submit=Print
@@ -1185,50 +1174,52 @@ printFile.submit=Print
licenses.nav=Licenses licenses.nav=Licenses
licenses.title=3rd Party Licenses licenses.title=3rd Party Licenses
licenses.header=3rd Party Licenses licenses.header=3rd Party Licenses
licenses.module=मॗड्यूल licenses.module=Module
licenses.version=वेरसन licenses.version=Version
licenses.license=License licenses.license=License
#survey #survey
survey.nav=परीक्षण survey.nav=Survey
survey.title=स्टार्लिंग-पीडीएफ परीक्षण survey.title=Stirling-PDF Survey
survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF! survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF!
survey.changes=अंतिम परीक्षण के बाद स्टार्लिंग-पीडीएफ में कई बदलाव हो गए! अधिक जानने के लिए यहाँ हमारे ब्लॉग पोस्ट का प्रयास करें: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=इन बदलावों से हम अपने व्यवसाय सहायता और जैकड़ की मिलान पाने की कुछ आशा रख रहे हैं survey.changes2=With these changes we are getting paid business support and funding
survey.please=Please consider taking our survey! survey.please=Please consider taking our survey!
survey.disabled=(अपडेटों के बाद स्क्वायर पपपल अक्सर निष्क्रिय होगा, लेकिन पृष्ठ की तल उस पर उपलब्ध होगा) survey.disabled=(Survey popup will be disabled in following updates but available at foot of page)
survey.button=परीक्षण करें survey.button=Take Survey
survey.dontShowAgain=मुद्रण फ्लास्क से नहीं मिलाएं survey.dontShowAgain=Don't show again
#error #error
error.sorry=अनुभव में विफलता के लिए खेद होता है! error.sorry=Sorry for the issue!
error.needHelp=मदद की जरूरत है / सहायता पानी पाया? error.needHelp=Need help / Found an issue?
error.contactTip=अगर आप भी समस्याओं के साथ बच रहे हैं, तो हमें मदद प्राप्त करने के लिए निष्क्रियता न करके अपनी सहायता की मुद्दों को भेज सकते हैं. आप GitHub पेज पर टिकट भेज सकते हैं या Discord ग्रुप में हमसे संपर्क कर सकते हैं: error.contactTip=If you're still having trouble, don't hesitate to reach out to us for help. You can submit a ticket on our GitHub page or contact us through Discord:
error.404.head=404 - पृष्ठ नहीं पाया | तो, कोड में कुछ गलती हुई! error.404.head=404 - Page Not Found | Oops, we tripped in the code!
error.404.1=मेहनदरी से, आप खोज रहे पृष्ठ नहीं पाया जा सकता. error.404.1=We can't seem to find the page you're looking for.
error.404.2=कुछ गलती हुई. error.404.2=Something went wrong
error.github=GitHub पर टिकट भेजें error.github=Submit a ticket on GitHub
error.showStack=स्टैक ट्रेस को दिखाएं error.showStack=Show Stack Trace
error.copyStack=स्टैक ट्रेस कopiए error.copyStack=Copy Stack Trace
error.githubSubmit=GitHub - टिकट पहुँचाओ error.githubSubmit=GitHub - Submit a ticket
error.discordSubmit=Discord - समर्थन पोस्ट पोस्ट करें error.discordSubmit=Discord - Submit Support post
#remove-image #remove-image
removeImage.title=इंजाइम हटाएं removeImage.title=Remove image
removeImage.header=इंजाइम हटाएं removeImage.header=Remove image
removeImage.removeImage=इंजाइम हटाएं removeImage.removeImage=Remove image
removeImage.submit=इंजाइम हटाएं removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=पीडीएफ को अध्यायों द्वारा भागों में बाटें
splitByChapters.header=पीडीएफ को अध्यायों द्वारा भागों में बाटें
splitByChapters.bookmarkLevel=लेमैक्स स्तर
splitByChapters.includeMetadata=मीटाडेटा को शामिल करें
splitByChapters.allowDuplicates=डबल्स अनुमति दें
splitByChapters.desc.1=यह यंकल सिपटे एक पीडीएफ फाइल को अपनी अध्याय संरचना के आधार पर बहुतांश नेट्स में विभाजित करता है.
splitByChapters.desc.2=लेमैक्स स्तर: विभाजन के लिए उपयोग की गई लेमैक्स स्तर चुनें (0 टॉप-लेवल, 1 दूसरा-लेवल, इतर जैसे).
splitByChapters.desc.3=मॉडेटरेट का शामिल करें: यदि सत्यापित किया जाता है, प्रारंभिक PDF की मॉडेटरेट को प्रत्येक विभाग PDF में शामिल किया जाएगा।
splitByChapters.desc.4=यादृच्छिक पुनरावृत्ति अनुमोदित: यदि सत्यापित किया जाता है, एक ही पेज पर दोहरे मूल्यांकन पब्लिक पीड़एफ बनाने की संभावना देता है।
splitByChapters.submit=PDF विभाजित

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Veličina pisma addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Ime pisma addPageNumbers.fontName=Font Name
pdfPrompt=Odaberi PDF(ove) pdfPrompt=Odaberi PDF(ove)
multiPdfPrompt=Odaberi PDF-ove (2+) multiPdfPrompt=Odaberi PDF-ove (2+)
multiPdfDropPrompt=Odaberi (ili povuci i ispusti) sve potrebne PDF-ove multiPdfDropPrompt=Odaberi (ili povuci i ispusti) sve potrebne PDF-ove
@@ -27,7 +27,7 @@ bored=Dosađujete se čekajući?
alphabet=Abeceda alphabet=Abeceda
downloadPdf=Preuzmi PDF downloadPdf=Preuzmi PDF
text=Tekst text=Tekst
font=Pismo font=Font
selectFillter=-- Odaberi -- selectFillter=-- Odaberi --
pageNum=Broj stranice pageNum=Broj stranice
sizes.small=Malo sizes.small=Malo
@@ -56,12 +56,12 @@ userNotFoundMessage=Korisnik nije pronađen.
incorrectPasswordMessage=Kriva zaporka. incorrectPasswordMessage=Kriva zaporka.
usernameExistsMessage=Korisničko ime već postoji usernameExistsMessage=Korisničko ime već postoji
invalidUsernameMessage=Nevažeće korisničko ime, korisničko ime može sadržavati samo slova, brojke i sljedeće posebne znakove @._+- ili mora biti važeća adresa e-pošte. invalidUsernameMessage=Nevažeće korisničko ime, korisničko ime može sadržavati samo slova, brojke i sljedeće posebne znakove @._+- ili mora biti važeća adresa e-pošte.
invalidPasswordMessage=Lozinka ne smije biti prazna i ne smije počinjati ni završavati sa razmakom. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=Nova lozinka i potvrda nove lozinke moraju biti identične. confirmPasswordErrorMessage=New Password and Confirm New Password must match.
deleteCurrentUserMessage=Nije moguće izbrisati trenutno prijavljenog korisnika. deleteCurrentUserMessage=Nije moguće izbrisati trenutno prijavljenog korisnika.
deleteUsernameExistsMessage=Korisničko ime ne postoji i ne može se izbrisati. deleteUsernameExistsMessage=Korisničko ime ne postoji i ne može se izbrisati.
downgradeCurrentUserMessage=Nije moguće vratiti unazad ulogu trenutnog korisnika downgradeCurrentUserMessage=Nije moguće vratiti unazad ulogu trenutnog korisnika
disabledCurrentUserMessage=Trenutni korisnik ne može biti onemogućen disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=Nije moguće vratiti unazad ulogu trenutnog korisnika. Dakle, trenutni korisnik neće biti prikazan. downgradeCurrentUserLongMessage=Nije moguće vratiti unazad ulogu trenutnog korisnika. Dakle, trenutni korisnik neće biti prikazan.
userAlreadyExistsOAuthMessage=Korisnik već postoji kao OAuth2 korisnik. userAlreadyExistsOAuthMessage=Korisnik već postoji kao OAuth2 korisnik.
userAlreadyExistsWebMessage=Korisnik već postoji kao web korisnik. userAlreadyExistsWebMessage=Korisnik već postoji kao web korisnik.
@@ -75,18 +75,16 @@ visitGithub=Posjeti Github Repository
donate=Doniraj donate=Doniraj
color=Boja color=Boja
sponsor=Sponzor sponsor=Sponzor
info=Informacije info=Info
pro=Pro pro=Pro
page=Stranica page=Page
pages=Stranice pages=Pages
loading=Učitavanje...
addToDoc=Dodaj u dokument
legal.privacy=Politika privatnosti legal.privacy=Privacy Policy
legal.terms=Uspe sodržine legal.terms=Terms and Conditions
legal.accessibility=Dostupnost legal.accessibility=Accessibility
legal.cookie=Politika kolačića legal.cookie=Cookie Policy
legal.impressum=Vedro ishoda legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -98,7 +96,7 @@ pipeline.defaultOption=Prilagođeno
pipeline.submitButton=Pošalji pipeline.submitButton=Pošalji
pipeline.help=Pipeline Pomoć pipeline.help=Pipeline Pomoć
pipeline.scanHelp=Pomoć za skeniranje mapa pipeline.scanHelp=Pomoć za skeniranje mapa
pipeline.deletePrompt=Jeste li sigurni da želite obrisati pipeline? pipeline.deletePrompt=Are you sure you want to delete pipeline
###################### ######################
# Pipeline Options # # Pipeline Options #
@@ -116,21 +114,21 @@ pipelineOptions.validateButton=Potvrdi
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Ažurirajte na Pro enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Ova funkcija je dostupna samo pro korisnicima. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro podrzava konfiguiracione datoteke u formati YAML i druga osobine SSO. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Tražite još funkcija za upravljanje korisnicima? Razmotrite Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Želite li da stvarate Stirling PDF bolji? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF ima uključene analitike koje nam pomažu da proizvod poboljšamo. Niste pratili nikakva osobna informacija ni sadržaj datoteka. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Razmotrite omogućivanje analitičkih podataka kako biste stvorili Stirling-PDF veće i da bismo bolje razumeli naših korisnika. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Omogući analitike analytics.enable=Enable analytics
analytics.disable=Onemogući analitike analytics.disable=Disable analytics
analytics.settings=Možete promijeniti postavke za analitike u datoteci config/settings.yml analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=Pretvori iz PDF
navbar.sections.security=Potpis & sigurnost navbar.sections.security=Potpis & sigurnost
navbar.sections.advance=Napredno navbar.sections.advance=Napredno
navbar.sections.edit=Pregled & Uređivanje navbar.sections.edit=Pregled & Uređivanje
navbar.sections.popular=Popularno navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -204,9 +202,9 @@ adminUserSettings.header=Postavka kontrole korisnika za administratora
adminUserSettings.admin=Administrator adminUserSettings.admin=Administrator
adminUserSettings.user=Korisnik adminUserSettings.user=Korisnik
adminUserSettings.addUser=Dodaj novog korisnika adminUserSettings.addUser=Dodaj novog korisnika
adminUserSettings.deleteUser=Obriši korisnika adminUserSettings.deleteUser=Delete User
adminUserSettings.confirmDeleteUser=Treba li obračunati ovaj korisnika? adminUserSettings.confirmDeleteUser=Should the user be deleted?
adminUserSettings.confirmChangeUserStatus=Treba li isključiti/uključiti ovog korisnika? adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=Korisničko ime može sadržavati samo slova, brojke i sljedeće posebne znakove @._+- ili mora biti važeća adresa e-pošte. adminUserSettings.usernameInfo=Korisničko ime može sadržavati samo slova, brojke i sljedeće posebne znakove @._+- ili mora biti važeća adresa e-pošte.
adminUserSettings.roles=Uloge adminUserSettings.roles=Uloge
adminUserSettings.role=Uloga adminUserSettings.role=Uloga
@@ -220,33 +218,32 @@ adminUserSettings.forceChange=Prisiliti korisnika da promijeni lozinku prilikom
adminUserSettings.submit=Spremi korisnika adminUserSettings.submit=Spremi korisnika
adminUserSettings.changeUserRole=Promijenite korisničku ulogu adminUserSettings.changeUserRole=Promijenite korisničku ulogu
adminUserSettings.authenticated=Autentificirano adminUserSettings.authenticated=Autentificirano
adminUserSettings.editOwnProfil=Uredi vlastit profil adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=Omotljiv korisnik adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=Onemogućen korisnik adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Aktivni korisnici: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Isključeni korisnici: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Ukupan broj korisnika: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=Zadnji zahtjev adminUserSettings.lastRequest=Last Request
database.title=Database Import/Export database.title=Database Import/Export
database.header=Database Import/Export database.header=Database Import/Export
database.fileName=Ime datoteke database.fileName=File Name
database.creationDate=Datum stvaranja database.creationDate=Creation Date
database.fileSize=Veličina datoteke database.fileSize=File Size
database.deleteBackupFile=Obriši zadao sažeto datoteke database.deleteBackupFile=Delete Backup File
database.importBackupFile=Uvezi sažeto datoteku database.importBackupFile=Import Backup File
database.downloadBackupFile=Preuzmi sažeto datoteku database.downloadBackupFile=Download Backup File
database.info_1=Kada uvažavate podatke, je ključno sigurno imati ispravan struktur. Ako niste sigurni šta uradite, tražite savjet i podršku od professionala. Greška u strukturi može uzrokovati greške u aplikaciji, do i uključujući potpunu nevjerojatnost funkcionalnosti aplikacije. database.info_1=When importing data, it is crucial to ensure the correct structure. If you are unsure of what you are doing, seek advice and support from a professional. An error in the structure can cause application malfunctions, up to and including the complete inability to run the application.
database.info_2=Ime datoteke nije relevantno prijevezi. Buduće bit će ponovno oznaceno za određeni format backup_user_yyyyMMddHHmm.sql, čime se osigurava konzistentna nazivnica. database.info_2=The file name does not matter when uploading. It will be renamed afterward to follow the format backup_user_yyyyMMddHHmm.sql, ensuring a consistent naming convention.
database.submit=Uvezi sažeto database.submit=Import Backup
database.importIntoDatabaseSuccessed=Uvez u bazu podataka uspio database.importIntoDatabaseSuccessed=Import into database successed
database.fileNotFound=File not Found database.fileNotFound=File not Found
database.fileNullOrEmpty=Datoteka ne smije biti null ili prazna database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Vaš sesija je istekla. Molim vas da osvježite stranicu i pokušate ponovno. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -286,7 +283,7 @@ pdfToImage.tags=konverzija,img,jpg,slika,foto
home.pdfOrganiser.title=Organiziranje home.pdfOrganiser.title=Organiziranje
home.pdfOrganiser.desc=Uklonite/preuredite stranice bilo kojim redoslijedom home.pdfOrganiser.desc=Uklonite/preuredite stranice bilo kojim redoslijedom
pdfOrganiser.tags=dvostrana,parne,neparni,prikupljanje,prebacivanje pdfOrganiser.tags=duplex,even,odd,sort,move
home.addImage.title=Dodaj sliku home.addImage.title=Dodaj sliku
@@ -350,7 +347,7 @@ PDFToPresentation.tags=slajdovi,prikaz,office,microsoft
home.PDFToText.title=PDF u RTF (Tekst) home.PDFToText.title=PDF u RTF (Tekst)
home.PDFToText.desc=Pretvorite PDF u tekst ili RTF format home.PDFToText.desc=Pretvorite PDF u tekst ili RTF format
PDFToText.tags=bojaformata,tjedentextformat,sadržanotekstformat PDFToText.tags=richformat,richtextformat,rich text format
home.PDFToHTML.title=PDF u HTML home.PDFToHTML.title=PDF u HTML
home.PDFToHTML.desc=Pretvorite PDF u HTML format home.PDFToHTML.desc=Pretvorite PDF u HTML format
@@ -393,9 +390,9 @@ home.certSign.title=Potpišite s certifikatom
home.certSign.desc=Potpisuje PDF s certifikatom/ključem (PEM/P12) home.certSign.desc=Potpisuje PDF s certifikatom/ključem (PEM/P12)
certSign.tags=autentifikacija,PEM,P12,zvanično,šifriranje certSign.tags=autentifikacija,PEM,P12,zvanično,šifriranje
home.removeCertSign.title=Ukloni potpis sertifikata home.removeCertSign.title=Remove Certificate Sign
home.removeCertSign.desc=Uklonite potpis sertifikata iz PDF-a home.removeCertSign.desc=Remove certificate signature from PDF
removeCertSign.tags=autentičiranje,PEM,P12,djelomičan dešifriranje removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=Izgled s više stranica home.pageLayout.title=Izgled s više stranica
home.pageLayout.desc=Spojite više stranica PDF dokumenta u jednu stranicu home.pageLayout.desc=Spojite više stranica PDF dokumenta u jednu stranicu
@@ -501,33 +498,33 @@ home.BookToPDF.title=Book u PDF
home.BookToPDF.desc=Pretvara format knjige/stripa u PDF format pomoću calibre home.BookToPDF.desc=Pretvara format knjige/stripa u PDF format pomoću calibre
BookToPDF.tags=Knjiga,Strip,Calibre,Pretvori,manga,amazon,kindle BookToPDF.tags=Knjiga,Strip,Calibre,Pretvori,manga,amazon,kindle
home.removeImagePdf.title=Ukloni sliku home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=Ukloni sliku iz PDF-a kako bi se smanjio veličina datoteke home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Ukloni sliku, Rad sa stranicama, Back end, server strana removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=Podijeli PDF prema glavama home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Podijeli PDF na više datoteka prema njegovom strukturnom obliku glava. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=podjela, glave, markere, organizacija splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=Zameni-inverziranje boja u PDF-u replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Zamenite boju teksta i pozadine u PDF-u te inverzirajte cijeli PDF kako bi se smanjila veličina datoteke. home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Zameni boju, Rad sa stranicama, Back end, server strana replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Optije za zamenu ili inverziranje boja replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Standardno (standarske visoko kontrastne boje) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Napčno (prilagođene boje) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Cijelo-inverzirajte (inverzirajte sve boje) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Optije visoko kontrastne boje replace-color.selectText.5=High contrast color options
replace-color.selectText.6=Crna tekst na bijelu pozadini replace-color.selectText.6=white text on black background
replace-color.selectText.7=Bijeli tekst na crvenoj pozadini replace-color.selectText.7=Black text on white background
replace-color.selectText.8=Žutni tekst na crnoj pozadini replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=Zeleni tekst na crnoj pozadini replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Izaberite boju teksta replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Izaberite pozadinu boju replace-color.selectText.11=Choose background Color
replace-color.submit=Zamijeni replace-color.submit=Replace
@@ -546,17 +543,18 @@ login.locked=Vaš račun je zaključan.
login.signinTitle=Molimo vas da se prijavite login.signinTitle=Molimo vas da se prijavite
login.ssoSignIn=Prijavite se putem jedinstvene prijave login.ssoSignIn=Prijavite se putem jedinstvene prijave
login.oauth2AutoCreateDisabled=OAUTH2 automatsko kreiranje korisnika je onemogućeno login.oauth2AutoCreateDisabled=OAUTH2 automatsko kreiranje korisnika je onemogućeno
login.oauth2AdminBlockedUser=Registracija ili prijava nekadreguiranih korisnika trenutno su blokirane. Molimo Vas da kontaktirate administratora. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Zahtjev za autorizaciju nije pronađen login.oauth2RequestNotFound=Zahtjev za autorizaciju nije pronađen
login.oauth2InvalidUserInfoResponse=Nevažeće informacije o korisniku login.oauth2InvalidUserInfoResponse=Nevažeće informacije o korisniku
login.oauth2invalidRequest=Neispravan zahtjev login.oauth2invalidRequest=Neispravan zahtjev
login.oauth2AccessDenied=Pristup odbijen login.oauth2AccessDenied=Pristup odbijen
login.oauth2InvalidTokenResponse=Nevažeći odgovor tokena login.oauth2InvalidTokenResponse=Nevažeći odgovor tokena
login.oauth2InvalidIdToken=Nevažeći ID token login.oauth2InvalidIdToken=Nevažeći ID token
login.userIsDisabled=Korisnik je deaktiviran, prijava sa ovim korisničkim imenom je trenutno zakazana. Molimo Vas da kontaktirate administratorske osobe. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=Već ste se prijavili na login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=ure. Odjavite se s ure i pokušajte ponovo. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Imate preko mrežne sesije aktivnih login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Automatsko uređivanje autoRedact.title=Automatsko uređivanje
@@ -731,7 +729,7 @@ pageLayout.submit=Potvrdi
scalePages.title=Podesite veličinu stranice scalePages.title=Podesite veličinu stranice
scalePages.header=Podesite veličinu stranice scalePages.header=Podesite veličinu stranice
scalePages.pageSize=Veličina stranice dokumenta. scalePages.pageSize=Veličina stranice dokumenta.
scalePages.keepPageSize=Originalna veličina scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Razina zumiranja (obrezivanje) stranice. scalePages.scaleFactor=Razina zumiranja (obrezivanje) stranice.
scalePages.submit=Potvrdi scalePages.submit=Potvrdi
@@ -751,15 +749,14 @@ certSign.showSig=Prikaži potpis
certSign.reason=Razlog certSign.reason=Razlog
certSign.location=Mjesto certSign.location=Mjesto
certSign.name=Ime certSign.name=Ime
certSign.showLogo=Prikaži logo
certSign.submit=Potpiši PDF certSign.submit=Potpiši PDF
#removeCertSign #removeCertSign
removeCertSign.title=Ukloni digitalno potpisano dokazilo removeCertSign.title=Remove Certificate Signature
removeCertSign.header=Uklonite digitalni potpis iz PDF-a removeCertSign.header=Remove the digital certificate from the PDF
removeCertSign.selectPDF=Odaberite datoteku PDF: removeCertSign.selectPDF=Select a PDF file:
removeCertSign.submit=Ukloni potpisi removeCertSign.submit=Remove Signature
#removeBlanks #removeBlanks
@@ -781,14 +778,11 @@ removeAnnotations.submit=Ukloni
#compare #compare
compare.title=Uporedite compare.title=Uporedite
compare.header=Usporedite PDF-ove compare.header=Usporedite PDF-ove
compare.highlightColor.1=Boja osvetljenja 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=Boja osvetljenja 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=Dokument 1 compare.document.1=Dokument 1
compare.document.2=Dokument 2 compare.document.2=Dokument 2
compare.submit=Uporedi compare.submit=Uporedi
compare.complex.message=Jedan ili oba unesena dokumenta su veliki datoteke, to može smanjiti preciznost usporedbi
compare.large.file.message=Jedan ili oba unesena dokumenta su prevelike za obradu
compare.no.text.message=Jedan ili oba odabrana PDF-a nema tekst. Odaberite PDF-ove s tekstom za usporedbu.
#BookToPDF #BookToPDF
BookToPDF.title=Knjige i stripovi u PDF BookToPDF.title=Knjige i stripovi u PDF
@@ -811,11 +805,6 @@ sign.draw=Nacrtaj potpis
sign.text=Tekstualni unos sign.text=Tekstualni unos
sign.clear=Obriši sign.clear=Obriši
sign.add=Dodaj sign.add=Dodaj
sign.saved=Sacuvane potpisne oznake
sign.save=Sačuvaj potpisnu oznaku
sign.personalSigs=Osobni potpisi
sign.sharedSigs=Dijeljeni potpisi
sign.noSavedSigs=Nema sacuvanih potpisa pronađenih
#repair #repair
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=Minimalna konturna površina:
ScannerImageSplit.selectText.8=Postavlja minimalni prag površine konture za fotografiju ScannerImageSplit.selectText.8=Postavlja minimalni prag površine konture za fotografiju
ScannerImageSplit.selectText.9=Veličina obruba: ScannerImageSplit.selectText.9=Veličina obruba:
ScannerImageSplit.selectText.10=Postavlja veličinu obruba koji se dodaje i uklanja kako bi se spriječili bijeli obrubi u ispisu (zadano: 1). ScannerImageSplit.selectText.10=Postavlja veličinu obruba koji se dodaje i uklanja kako bi se spriječili bijeli obrubi u ispisu (zadano: 1).
ScannerImageSplit.info=Python nije instaliran. Treba je za izvršenje. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=Obradi PDF sa OCR-om
extractImages.title=Ekstrakt slika extractImages.title=Ekstrakt slika
extractImages.header=Ekstrakt slika extractImages.header=Ekstrakt slika
extractImages.selectText=Odaberite format slike za pretvaranje izdvojenih slika extractImages.selectText=Odaberite format slike za pretvaranje izdvojenih slika
extractImages.allowDuplicates=Sačuvaj duplikate slike extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Izdvajanje extractImages.submit=Izdvajanje
@@ -907,7 +896,7 @@ merge.title=Spajanje
merge.header=Spajanje više PDF-ova (2+) merge.header=Spajanje više PDF-ova (2+)
merge.sortByName=Poredaj po imenu merge.sortByName=Poredaj po imenu
merge.sortByDate=Poredaj po datumu merge.sortByDate=Poredaj po datumu
merge.removeCertSign=Ukloniti digitalni potpis u kombiniranom datoteku? merge.removeCertSign=Remove digital signature in the merged file?
merge.submit=Spajanje merge.submit=Spajanje
@@ -925,7 +914,7 @@ pdfOrganiser.mode.6=Par-Nepar Podjela
pdfOrganiser.mode.7=Ukloni Prvu pdfOrganiser.mode.7=Ukloni Prvu
pdfOrganiser.mode.8=Ukloni Zadnju pdfOrganiser.mode.8=Ukloni Zadnju
pdfOrganiser.mode.9=Ukloni Prvu i Zadnju pdfOrganiser.mode.9=Ukloni Prvu i Zadnju
pdfOrganiser.mode.10=Neparno-parna kombinacija pdfOrganiser.mode.10=Odd-Even Merge
pdfOrganiser.placeholder=(npr. 1,3,2 ili 4-8,2,10-12 ili 2n-1) pdfOrganiser.placeholder=(npr. 1,3,2 ili 4-8,2,10-12 ili 2n-1)
@@ -994,7 +983,7 @@ pdfToImage.color=Boja
pdfToImage.grey=Sivi tonovi pdfToImage.grey=Sivi tonovi
pdfToImage.blackwhite=Crno-bijelo (mogu se izgubiti podaci!) pdfToImage.blackwhite=Crno-bijelo (mogu se izgubiti podaci!)
pdfToImage.submit=Pretvori pdfToImage.submit=Pretvori
pdfToImage.info=Python nije instaliran. Treba je za konverziju na WebP. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1031,7 +1020,7 @@ watermark.selectText.6=Visina razmaka (Razmak između svakog vodenog žiga okomi
watermark.selectText.7=Neprozirnost (0% - 100%): watermark.selectText.7=Neprozirnost (0% - 100%):
watermark.selectText.8=Vrsta vodenog žiga: watermark.selectText.8=Vrsta vodenog žiga:
watermark.selectText.9=Slika vodenog žiga: watermark.selectText.9=Slika vodenog žiga:
watermark.selectText.10=Konvertiraj PDF u PDF-Sliku watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=Dodaj vodeni žig watermark.submit=Dodaj vodeni žig
watermark.type.1=Tekst watermark.type.1=Tekst
watermark.type.2=Slika watermark.type.2=Slika
@@ -1088,7 +1077,7 @@ pdfToPDFA.credit=Ova usluga koristi ghostscript za PDF/A pretvorbu
pdfToPDFA.submit=Pretvoriti pdfToPDFA.submit=Pretvoriti
pdfToPDFA.tip=Trenutno ne radi za više unosa odjednom pdfToPDFA.tip=Trenutno ne radi za više unosa odjednom
pdfToPDFA.outputFormat=Izlazni format pdfToPDFA.outputFormat=Izlazni format
pdfToPDFA.pdfWithDigitalSignature=PDF sadrži digitalni potpis. U sledećem koraku će biti uklonjen. pdfToPDFA.pdfWithDigitalSignature=The PDF contains a digital signature. This will be removed in the next step.
#PDFToWord #PDFToWord
@@ -1190,15 +1179,15 @@ licenses.version=Verzija
licenses.license=Licenca licenses.license=Licenca
#survey #survey
survey.nav=Upitnica survey.nav=Survey
survey.title=Stirling-PDF Upitnica survey.title=Stirling-PDF Survey
survey.description=Stirling-PDF nema praćenje pa želimo svesnost korisnika da bi poboljšali Stirling-PDF! survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF!
survey.changes=Stirling-PDF je promenjen od poslednje upitnice! Za više informacija, proverite naš blog ovdje: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=S ovim promenama dobivamo platnu podršku i financiranje poslovnim aktivnostima survey.changes2=With these changes we are getting paid business support and funding
survey.please=Please consider taking our survey! survey.please=Please consider taking our survey!
survey.disabled=(Upitnica popup će biti onemogućena u sljedećim ažuracanjima aliće se nalaziti na dnu stranice) survey.disabled=(Survey popup will be disabled in following updates but available at foot of page)
survey.button=Izvrsi upitnicu survey.button=Take Survey
survey.dontShowAgain=Ne prikazujući ponovo survey.dontShowAgain=Don't show again
#error #error
@@ -1216,19 +1205,21 @@ error.discordSubmit=Discord - Pošalji objavu podrške
#remove-image #remove-image
removeImage.title=Ukloni sliku removeImage.title=Remove image
removeImage.header=Ukloni sliku removeImage.header=Remove image
removeImage.removeImage=Ukloni sliku removeImage.removeImage=Remove image
removeImage.submit=Izbriši sliku removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=Podijeli PDF naoglazdene glave
splitByChapters.header=Podijeli PDF naoglazdene glave
splitByChapters.bookmarkLevel=Nivo oznaka
splitByChapters.includeMetadata=Uključi metapodatke
splitByChapters.allowDuplicates=Dopuštaj duplikate
splitByChapters.desc.1=Ova alatka podijeli PDF datoteku u više PDFa na teme njene strukture glava.
splitByChapters.desc.2=Nivo oznaka: Odaberite nivo oznaka koji će se koristiti za podjelu (0 za prvi nivo, 1 za drugi nivo itd.).
splitByChapters.desc.3=Uključi metapodatke: Ako je pokušano, metapodaci iz originalne PDF datoteke će biti uključeni u svaku podijeljenu PDF datoteku.
splitByChapters.desc.4=Dopuštaj duplikate: Ako je ova opcija zaštićena, dozvoljava se da se na istoj strani mogu stvoriti posebne PDF datoteke s više oznaka.
splitByChapters.submit=Podijeli PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Betűméret addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Betűtípus addPageNumbers.fontName=Font Name
pdfPrompt=Válasszon PDF-fájlokat pdfPrompt=Válasszon PDF-fájlokat
multiPdfPrompt=Válasszon PDF-fájlokat (2+) multiPdfPrompt=Válasszon PDF-fájlokat (2+)
multiPdfDropPrompt=Válassza ki (vagy húzza ide) az összes szükséges PDF-fájlt multiPdfDropPrompt=Válassza ki (vagy húzza ide) az összes szükséges PDF-fájlt
@@ -12,17 +12,17 @@ imgPrompt=Válasszon képeket
genericSubmit=Beküldés genericSubmit=Beküldés
processTimeWarning=Figyelmeztetés: Ez a folyamat akár egy percig is eltarthat a fájlmérettől függően processTimeWarning=Figyelmeztetés: Ez a folyamat akár egy percig is eltarthat a fájlmérettől függően
pageOrderPrompt=Egyedi oldalsorrend (Adjon meg vesszővel elválasztott oldalszámokat vagy függvényeket, például 2n+1): pageOrderPrompt=Egyedi oldalsorrend (Adjon meg vesszővel elválasztott oldalszámokat vagy függvényeket, például 2n+1):
pageSelectionPrompt=Egyedi oldal kiválasztás (Virtuális, hússzögletes lista formátumban írja meg a választott oldalak számát, például 1,5,6 vagy függvények formában: 2n+1): pageSelectionPrompt=Custom Page Selection (Enter a comma-separated list of page numbers 1,5,6 or Functions like 2n+1) :
goToPage=Ugrás goToPage=Ugrás
true=Igaz true=Igaz
false=Hamis false=Hamis
unknown=Ismeretlen unknown=Ismeretlen
save=Mentés save=Mentés
saveToBrowser=Mentés bölcskébe saveToBrowser=Save to Browser
close=Bezárás close=Bezárás
filesSelected=kiválasztott fájlok filesSelected=kiválasztott fájlok
noFavourites=Nincs hozzáadva kedvenc noFavourites=Nincs hozzáadva kedvenc
downloadComplete=Letöltés befejezve downloadComplete=Download Complete
bored=Unatkozol? bored=Unatkozol?
alphabet=Ábécé alphabet=Ábécé
downloadPdf=PDF letöltése downloadPdf=PDF letöltése
@@ -46,115 +46,113 @@ red=Piros
green=Zöld green=Zöld
blue=Kék blue=Kék
custom=Egyedi... custom=Egyedi...
WorkInProgess=Munka folyamatban, lehetséges hibával működhet, kérjük jelentse meg bármilyen problémát! WorkInProgess=Work in progress, May not work or be buggy, Please report any problems!
poweredBy=Hozzávalója: poweredBy=Powered by
yes=Igen yes=Yes
no=Nem no=No
changedCredsMessage=A hitelek megváltoztak! changedCredsMessage=A hitelek megváltoztak!
notAuthenticatedMessage=Felhasználó nincs hitelesítve. notAuthenticatedMessage=Felhasználó nincs hitelesítve.
userNotFoundMessage=A felhasználó nem található. userNotFoundMessage=A felhasználó nem található.
incorrectPasswordMessage=A jelenlegi jelszó helytelen. incorrectPasswordMessage=A jelenlegi jelszó helytelen.
usernameExistsMessage=Az új felhasználónév már létezik. usernameExistsMessage=Az új felhasználónév már létezik.
invalidUsernameMessage=Érvénytelen felhasználónév, a felhasználónév csak betűk, számokat és az alábbi kisebb karaktereket tartalmazhat @._+- vagy egy érvényes e-mail címnek kell lennie. invalidUsernameMessage=Invalid username, username can only contain letters, numbers and the following special characters @._+- or must be a valid email address.
invalidPasswordMessage=A jelszó nem lehet üres és nem lehet teljesen tartalmazni háttérspácseket. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=Új jelszó és Megerősítési új jelszó egyeztetése. confirmPasswordErrorMessage=New Password and Confirm New Password must match.
deleteCurrentUserMessage=Jelenleg bejelentkezett felhasználót nem lehet törölni. deleteCurrentUserMessage=Cannot delete currently logged in user.
deleteUsernameExistsMessage=A felhasználónév nem létezik és nem lehet törlésre került. deleteUsernameExistsMessage=The username does not exist and cannot be deleted.
downgradeCurrentUserMessage=A jelenlegi felhasználó szerepkörét nem lehet visszaminősíteni downgradeCurrentUserMessage=A jelenlegi felhasználó szerepkörét nem lehet visszaminősíteni
disabledCurrentUserMessage=Jelenleg bejelentkezett felhasználó nem lehet letiltva. disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=Az aktuális felhasználó szerepkörét nem lehet visszaminősíteni. Ezért az aktuális felhasználó nem jelenik meg. downgradeCurrentUserLongMessage=Az aktuális felhasználó szerepkörét nem lehet visszaminősíteni. Ezért az aktuális felhasználó nem jelenik meg.
userAlreadyExistsOAuthMessage=Az ezer hitelesítő szolgáltatás felhasználó ismertetve van. userAlreadyExistsOAuthMessage=The user already exists as an OAuth2 user.
userAlreadyExistsWebMessage=A web felhasználó ismertetve van. userAlreadyExistsWebMessage=The user already exists as an web user.
error=Hiba error=Error
oops=Egy gond történt! oops=Oops!
help=Segítség help=Help
goHomepage=Kezdőoldal megnyitása goHomepage=Go to Homepage
joinDiscord=Jönj hozzá a Discord-szervert joinDiscord=Join our Discord server
seeDockerHub=Docker Hub-on látni seeDockerHub=See Docker Hub
visitGithub=GitHub Repository megtekintése visitGithub=Visit Github Repository
donate=Szerzés működéséhez segítségnyújtás donate=Donate
color=Szín color=Color
sponsor=Támogatók bejegyzése sponsor=Sponsor
info=Információ info=Info
pro=Professionális pro=Pro
page=Oldal page=Page
pages=Oldalak pages=Pages
loading=Betöltés...
addToDoc=Hozzáadás dokumentumba
legal.privacy=Adatvédelmi nyilatkozat legal.privacy=Privacy Policy
legal.terms=Feltételek és feltételek legal.terms=Terms and Conditions
legal.accessibility=Elérhetőség legal.accessibility=Accessibility
legal.cookie=Cukiernyomtatványi zászló legal.cookie=Cookie Policy
legal.impressum=Rendszerinformáció legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
############### ###############
pipeline.header=Pipelinenavigációs menü (betavizsgálat) pipeline.header=Pipeline Menu (Beta)
pipeline.uploadButton=Feltöltés pipeline.uploadButton=Upload Custom
pipeline.configureButton=Konfigurálás pipeline.configureButton=Configure
pipeline.defaultOption=Egyéni pipeline.defaultOption=Custom
pipeline.submitButton=Küldés pipeline.submitButton=Submit
pipeline.help=Útmutató a pipelínhez pipeline.help=Pipeline Help
pipeline.scanHelp=Mappák lekérése útmutatása pipeline.scanHelp=Folder Scanning Help
pipeline.deletePrompt=Biztosan törölni szeretné az opciókat? pipeline.deletePrompt=Are you sure you want to delete pipeline
###################### ######################
# Pipeline Options # # Pipeline Options #
###################### ######################
pipelineOptions.header=Pipelín beállításai pipelineOptions.header=Pipeline Configuration
pipelineOptions.pipelineNameLabel=Pipelín neve pipelineOptions.pipelineNameLabel=Pipeline Name
pipelineOptions.saveSettings=Beállítások mentése pipelineOptions.saveSettings=Save Operation Settings
pipelineOptions.pipelineNamePrompt=Írd be a pipelín nevét ide pipelineOptions.pipelineNamePrompt=Enter pipeline name here
pipelineOptions.selectOperation=Művelet kiválasztása pipelineOptions.selectOperation=Select Operation
pipelineOptions.addOperationButton=Művelet hozzáadása pipelineOptions.addOperationButton=Add operation
pipelineOptions.pipelineHeader=Pipelín: pipelineOptions.pipelineHeader=Pipeline:
pipelineOptions.saveButton=Mentés pipelineOptions.saveButton=Download
pipelineOptions.validateButton=Érvényesítés pipelineOptions.validateButton=Validate
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Növelje a személyrendszert PRO-re enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Ez a funkció csak a PRO felhasználók számára érhető el. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF PRO támogatja a YAML konfigurációs fájlokat és más SSO jellemzőket. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Több felhasználókezelési funkcióra vár? Ismételje meg a figyalmazást az Stirling PDF PRO szolgáltatásaihoz. enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Szeretnéd tetszésre módosítani a Stirling PDF-t? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=A Stirling PDF szöveges adatokat jellemző integrációt teszi lehetővé, hogy javítsuk a terméket. Nem folytatjuk semmit sem a személyes információk vagy fájl tartalmakat. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Köszönjük tekintse meg az integrációt, ami segít a Stirling-PDF növekedésében és segítne megértenünk a felhasználóinkat jobban. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Engedélyezze az analitikát analytics.enable=Enable analytics
analytics.disable=Letiltja az analitikát analytics.disable=Disable analytics
analytics.settings=A beállítások módosítása az analitikáért a config/settings.yml fájlban analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
############# #############
navbar.favorite=Kedvencek navbar.favorite=Favorites
navbar.darkmode=Sötét mód navbar.darkmode=Sötét mód
navbar.language=Nyelvek navbar.language=Languages
navbar.settings=Beállítások navbar.settings=Beállítások
navbar.allTools=Eszközök navbar.allTools=Tools
navbar.multiTool=Multi Tools navbar.multiTool=Multi Tools
navbar.sections.organize=Összeállítás navbar.sections.organize=Organize
navbar.sections.convertTo=Átalakítás PDF-be navbar.sections.convertTo=Convert to PDF
navbar.sections.convertFrom=PDF-ből átalakítás navbar.sections.convertFrom=Convert from PDF
navbar.sections.security=Hitelesítés & Biztonság navbar.sections.security=Sign & Security
navbar.sections.advance=Fogadott funkciók navbar.sections.advance=Advanced
navbar.sections.edit=Nézés és szerkesztés navbar.sections.edit=View & Edit
navbar.sections.popular=Populáris navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
############# #############
settings.title=Beállítások settings.title=Beállítások
settings.update=Frisítés elérhető settings.update=Frisítés elérhető
settings.updateAvailable={0} az aktuális telepített verzió. Az újabb verzió ({1}) elérhető. settings.updateAvailable={0} is the current installed version. A new version ({1}) is available.
settings.appVersion=App Verzió: settings.appVersion=App Verzió:
settings.downloadOption.title=Válassza ki a letöltési lehetőséget (Egyetlen fájl esetén a nem tömörített letöltésekhez): settings.downloadOption.title=Válassza ki a letöltési lehetőséget (Egyetlen fájl esetén a nem tömörített letöltésekhez):
settings.downloadOption.1=Nyissa meg ugyanabban az ablakban settings.downloadOption.1=Nyissa meg ugyanabban az ablakban
@@ -163,13 +161,13 @@ settings.downloadOption.3=Töltse le a fájlt
settings.zipThreshold=Fájlok tömörítése, ha a letöltött fájlok száma meghaladja settings.zipThreshold=Fájlok tömörítése, ha a letöltött fájlok száma meghaladja
settings.signOut=Kijelentkezés settings.signOut=Kijelentkezés
settings.accountSettings=Fiókbeállítások settings.accountSettings=Fiókbeállítások
settings.bored.help=Easter Egg játék engedélyezése settings.bored.help=Enables easter egg game
settings.cacheInputs.name=Formulálapok mentése settings.cacheInputs.name=Save form inputs
settings.cacheInputs.help=Engedélyezve a korábban használt adatok tárolása a következő futásokhoz settings.cacheInputs.help=Enable to store previously used inputs for future runs
changeCreds.title=Hitelesítés megváltoztatása changeCreds.title=Hitelesítés megváltoztatása
changeCreds.header=Frissítse fiókadatait changeCreds.header=Frissítse fiókadatait
changeCreds.changePassword=Használja a szükséges bejelentkezési adatokat. Kérjen meg egy új jelszót. changeCreds.changePassword=You are using default login credentials. Please enter a new password
changeCreds.newUsername=Új felhasználónév changeCreds.newUsername=Új felhasználónév
changeCreds.oldPassword=Jelenlegi jelszó changeCreds.oldPassword=Jelenlegi jelszó
changeCreds.newPassword=Új jelszó changeCreds.newPassword=Új jelszó
@@ -204,49 +202,48 @@ adminUserSettings.header=Adminisztrátori Felhasználói Vezérlési Beállítá
adminUserSettings.admin=Adminisztrátor adminUserSettings.admin=Adminisztrátor
adminUserSettings.user=Felhasználó adminUserSettings.user=Felhasználó
adminUserSettings.addUser=Új felhasználó hozzáadása adminUserSettings.addUser=Új felhasználó hozzáadása
adminUserSettings.deleteUser=Törlés felhasználó adminUserSettings.deleteUser=Delete User
adminUserSettings.confirmDeleteUser=A felhasználót töröljük? adminUserSettings.confirmDeleteUser=Should the user be deleted?
adminUserSettings.confirmChangeUserStatus=Az állapot módosítása megfelelően? adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=A felhasználónév csak betűk, számok és az alábbi speciális karakterek @._+- vagy egy érvényes e-mail-cím lehet. adminUserSettings.usernameInfo=Username can only contain letters, numbers and the following special characters @._+- or must be a valid email address.
adminUserSettings.roles=Szerepek adminUserSettings.roles=Szerepek
adminUserSettings.role=Szerep adminUserSettings.role=Szerep
adminUserSettings.actions=Műveletek adminUserSettings.actions=Műveletek
adminUserSettings.apiUser=Korlátozott API-felhasználó adminUserSettings.apiUser=Korlátozott API-felhasználó
adminUserSettings.extraApiUser=További korlátozott API felhasználó adminUserSettings.extraApiUser=Additional Limited API User
adminUserSettings.webOnlyUser=Csak webes felhasználó adminUserSettings.webOnlyUser=Csak webes felhasználó
adminUserSettings.demoUser=Demofelhasználó (nincs egyedi beállítás) adminUserSettings.demoUser=Demo User (No custom settings)
adminUserSettings.internalApiUser=Belső API felhasználó adminUserSettings.internalApiUser=Internal API User
adminUserSettings.forceChange=Kényszerítse a felhasználót a felhasználónév/jelszó megváltoztatására bejelentkezéskor adminUserSettings.forceChange=Kényszerítse a felhasználót a felhasználónév/jelszó megváltoztatására bejelentkezéskor
adminUserSettings.submit=Felhasználó mentése adminUserSettings.submit=Felhasználó mentése
adminUserSettings.changeUserRole=Felhasználó szerepkörének módosítása adminUserSettings.changeUserRole=Felhasználó szerepkörének módosítása
adminUserSettings.authenticated=Bejelentkezett adminUserSettings.authenticated=Authenticated
adminUserSettings.editOwnProfil=Saját profil szerkesztése adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=Engedélyezett felhasználó adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=Letiltott felhasználó adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Aktív Felhasználók: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Letiltott Felhasználók: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Összes Felhasználó: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=Utolsó kérelem adminUserSettings.lastRequest=Last Request
database.title=Adatbázis import/export database.title=Database Import/Export
database.header=Adatbázis import/export database.header=Database Import/Export
database.fileName=Fájlnév database.fileName=File Name
database.creationDate=Létrehozás dátuma database.creationDate=Creation Date
database.fileSize=Fájlszámítás database.fileSize=File Size
database.deleteBackupFile=Visszaulasztó fájl törlése database.deleteBackupFile=Delete Backup File
database.importBackupFile=Bemérsz visszaulastó fájl database.importBackupFile=Import Backup File
database.downloadBackupFile=Bemérő fájlet letöltés database.downloadBackupFile=Download Backup File
database.info_1=A bemeneti adatok bemérésekor fontos, hogy az helyes struktúrát biztosítsa. Ha nem tudja mit csinál, kérjen támogatást egy szakembertől. Az erőforrás hibája okozhat alkalmazás-ismerséleti gondokat, és viszontig, hogy az alkalmazás teljesen nem fut. database.info_1=When importing data, it is crucial to ensure the correct structure. If you are unsure of what you are doing, seek advice and support from a professional. An error in the structure can cause application malfunctions, up to and including the complete inability to run the application.
database.info_2=A fájl neve nem jelent részt a feltöltés során. Később újra néven lesz átalakítva egy konzisztens nevésrendszert követve, a formátum: visszaulasztó_user_yyyyMMddHHmm.sql. database.info_2=The file name does not matter when uploading. It will be renamed afterward to follow the format backup_user_yyyyMMddHHmm.sql, ensuring a consistent naming convention.
database.submit=Bemérsz visszaulastó fájl database.submit=Import Backup
database.importIntoDatabaseSuccessed=Adatbázisba importálva sikeresen database.importIntoDatabaseSuccessed=Import into database successed
database.fileNotFound=File not Found database.fileNotFound=File not Found
database.fileNullOrEmpty=Fájlnull vagy üres nélkül nem lehet folytatni database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=A munkamenet letelezett. Frissítse a lapot és próbálkozzon újra. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -381,9 +378,9 @@ home.removeBlanks.title=Üres lapok eltávolítása
home.removeBlanks.desc=Felismeri és eltávolítja az üres lapokat a dokumentumból home.removeBlanks.desc=Felismeri és eltávolítja az üres lapokat a dokumentumból
removeBlanks.tags=takarítás,egyszerűsítés,nem-tartalom,szervez removeBlanks.tags=takarítás,egyszerűsítés,nem-tartalom,szervez
home.removeAnnotations.title=Kijelölések eltávolítása home.removeAnnotations.title=Remove Annotations
home.removeAnnotations.desc=Egy PDF-től minden megjegyzés/mérlegelt elemét törli ki home.removeAnnotations.desc=Removes all comments/annotations from a PDF
removeAnnotations.tags=megjegyzések, kiemelés, jegyzetek, módosítások, törlés removeAnnotations.tags=comments,highlight,notes,markup,remove
home.compare.title=Összehasonlítás home.compare.title=Összehasonlítás
home.compare.desc=Összehasonlítja és megmutatja a különbségeket két PDF dokumentum között home.compare.desc=Összehasonlítja és megmutatja a különbségeket két PDF dokumentum között
@@ -393,9 +390,9 @@ home.certSign.title=Aláírás Tanúsítvánnyal
home.certSign.desc=PDF aláírása tanúsítvánnyal/kulccsal (PEM/P12) home.certSign.desc=PDF aláírása tanúsítvánnyal/kulccsal (PEM/P12)
certSign.tags=hitelesítés,PEM,P12,hivatalos,segitít,álca certSign.tags=hitelesítés,PEM,P12,hivatalos,segitít,álca
home.removeCertSign.title=Tanúsítványi aláírás eltávolítása home.removeCertSign.title=Remove Certificate Sign
home.removeCertSign.desc=A PDF-től a tanúsítványi aláíratot törli ki home.removeCertSign.desc=Remove certificate signature from PDF
removeCertSign.tags=hitelesítés, PEM, P12, szakmai, dekriptálás removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=Több oldal elrendezése home.pageLayout.title=Több oldal elrendezése
home.pageLayout.desc=Több oldal egyesítése egy PDF dokumentumban egyetlen oldallá home.pageLayout.desc=Több oldal egyesítése egy PDF dokumentumban egyetlen oldallá
@@ -421,7 +418,7 @@ home.adjust-contrast.title=Színek/Kontraszt beállítása
home.adjust-contrast.desc=PDF kontrasztjának, telítettségének és világosságának beállítása home.adjust-contrast.desc=PDF kontrasztjának, telítettségének és világosságának beállítása
adjust-contrast.tags=szín-korrekció,beállítás,módosítás,fokoz adjust-contrast.tags=szín-korrekció,beállítás,módosítás,fokoz
home.crop.title=PDF vágása home.crop.title=Crop PDF
home.crop.desc=PDF vágása a méret csökkentése érdekében (a szöveg megőrzése mellett!) home.crop.desc=PDF vágása a méret csökkentése érdekében (a szöveg megőrzése mellett!)
crop.tags=vágás,csökkentés,szerkesztés,forma crop.tags=vágás,csökkentés,szerkesztés,forma
@@ -470,7 +467,7 @@ home.autoRedact.title=Automatikus Elrejtés
home.autoRedact.desc=Automatikusan kitakar (elrejt) szöveget egy PDF-ben az input szöveg alapján home.autoRedact.desc=Automatikusan kitakar (elrejt) szöveget egy PDF-ben az input szöveg alapján
autoRedact.tags=Elrejt,Elrejtés,kitakarás,fekete,fekete,marker,elrejtett autoRedact.tags=Elrejt,Elrejtés,kitakarás,fekete,fekete,marker,elrejtett
home.tableExtraxt.title=PDF-től CSV-be való átalakítás home.tableExtraxt.title=PDF to CSV
home.tableExtraxt.desc=Táblázatok kinyerése a PDF-ből CSV formátumra konvertálva home.tableExtraxt.desc=Táblázatok kinyerése a PDF-ből CSV formátumra konvertálva
tableExtraxt.tags=CSV,Táblázat kinyerése,kinyer,konvertál tableExtraxt.tags=CSV,Táblázat kinyerése,kinyer,konvertál
@@ -488,46 +485,46 @@ home.split-by-sections.title=PDF Szakaszokra osztása
home.split-by-sections.desc=Minden oldal felosztása kisebb vízszintes és függőleges szakaszokra home.split-by-sections.desc=Minden oldal felosztása kisebb vízszintes és függőleges szakaszokra
split-by-sections.tags=Szakasz elosztás, felosztás, testreszabás split-by-sections.tags=Szakasz elosztás, felosztás, testreszabás
home.AddStampRequest.title=Stempel hozzáadása PDF-be home.AddStampRequest.title=Add Stamp to PDF
home.AddStampRequest.desc=Addja a szövegét vagy képkép stempelésekbe a megadott helyekre home.AddStampRequest.desc=Add text or add image stamps at set locations
AddStampRequest.tags=Stempel, kép hozzáadása, középső rendítés, csatorna, PDF, beágyazás, személyre szokásos AddStampRequest.tags=Stamp, Add image, center image, Watermark, PDF, Embed, Customize
home.PDFToBook.title=PDF to könyv home.PDFToBook.title=PDF to Book
home.PDFToBook.desc=A calibre segítségével PDF fájlt könyvtár/szókincs formátumba alakít. home.PDFToBook.desc=Converts PDF to Book/Comic formats using calibre
PDFToBook.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle PDFToBook.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.BookToPDF.title=Könyv a PDF-be home.BookToPDF.title=Book to PDF
home.BookToPDF.desc=A calibre segítségével könyvtár/szókincs fájlt PDF-be alakít. home.BookToPDF.desc=Converts Books/Comics formats to PDF using calibre
BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.removeImagePdf.title=Kép törölése home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=Törlés a képből a fájl méret csökkentéséhez home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Kép törlése, oldalszerkezet műveletek, háttér műveletek, kiszolgálói oldal removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=PDF felosztása fejezetek szerint home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Fejezetei alapján egy PDF fájl több dokumentumba osztás. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=Osztás, fejezetek, jelezes, organizálás splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=Visszaalakítás-összevétel a színekkel PDF-ben replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Cserélje le a szöveg és háttér színét PDF-ben és visszaalakítja a teljes színt az eszköz méret csökkentéséhez home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Szín cseréje, oldalszerkezet műveletek, kiszolgálói oldal replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Cserélés-visszaalakítási opciók replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Alapértelmezett (Alacsony kontrastos színek) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Egyéni (Egyéni színok) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Összevétel Összesen (Mind a színeket visszaalakítja) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Alacsony kontrastos szín opciók replace-color.selectText.5=High contrast color options
replace-color.selectText.6=fehér szöveg fekete háttérre replace-color.selectText.6=white text on black background
replace-color.selectText.7=fekete szöveg fehére háttérre replace-color.selectText.7=Black text on white background
replace-color.selectText.8=pálva szöveg fekete háttérre replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=zöld szöveg fekete háttérre replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Válasszon színet a szövékre replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Válassza a háttérszínt replace-color.selectText.11=Choose background Color
replace-color.submit=Cseréljön le replace-color.submit=Replace
@@ -546,17 +543,18 @@ login.locked=A fiókja zárolva lett!
login.signinTitle=Kérjük, jelentkezzen be! login.signinTitle=Kérjük, jelentkezzen be!
login.ssoSignIn=Bejelentkezés egyszeri bejelentkezéssel login.ssoSignIn=Bejelentkezés egyszeri bejelentkezéssel
login.oauth2AutoCreateDisabled=OAUTH2 Felhasználó automatikus létrehozása letiltva login.oauth2AutoCreateDisabled=OAUTH2 Felhasználó automatikus létrehozása letiltva
login.oauth2AdminBlockedUser=A nevű felhasználók regisztrációja vagy bejelentkezése megszakítva. Kérjen segítséget a rendszergazdától. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Hozzájárulási kérést nem találtunk login.oauth2RequestNotFound=Authorization request not found
login.oauth2InvalidUserInfoResponse=Érvénytelen felhasználói információs válasz login.oauth2InvalidUserInfoResponse=Invalid User Info Response
login.oauth2invalidRequest=Érvénytelen kérelem login.oauth2invalidRequest=Invalid Request
login.oauth2AccessDenied=Hozzáférés megtagadva login.oauth2AccessDenied=Access Denied
login.oauth2InvalidTokenResponse=Érvénytelen token-válasz login.oauth2InvalidTokenResponse=Invalid Token Response
login.oauth2InvalidIdToken=Érvénytelen azonosító token login.oauth2InvalidIdToken=Invalid Id Token
login.userIsDisabled=A felhasználó deaktivált, a bejelentkezés jelenleg megszakítva ezzel a felhasználónévvel. Kérjen segítséget a rendszergazdától. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=Már be van jelentkezve az login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=eszközökre. Kijelentkezzen ezekből a eszközökből, majd próbálja újra bejelentkezni. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Túl sok aktív munkamenet login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Érzékeny tartalom eltávolítása autoRedact.title=Érzékeny tartalom eltávolítása
@@ -588,7 +586,7 @@ pdfToSinglePage.submit=Átalakítás egyetlen oldallá
pageExtracter.title=Oldalak kinyerése pageExtracter.title=Oldalak kinyerése
pageExtracter.header=Oldalak kinyerése pageExtracter.header=Oldalak kinyerése
pageExtracter.submit=Kinyerés pageExtracter.submit=Kinyerés
pageExtracter.placeholder=(pl. 1,2,8 vagy 4,7,12-16 vagy 2n-1) pageExtracter.placeholder=(e.g. 1,2,8 or 4,7,12-16 or 2n-1)
#getPdfInfo #getPdfInfo
@@ -620,37 +618,37 @@ HTMLToPDF.header=HTML >> PDF
HTMLToPDF.help=Elfogad HTML fájlokat és ZIP-fájlokat, amelyek tartalmaznak html/css/képeket stb. HTMLToPDF.help=Elfogad HTML fájlokat és ZIP-fájlokat, amelyek tartalmaznak html/css/képeket stb.
HTMLToPDF.submit=Átalakítás HTMLToPDF.submit=Átalakítás
HTMLToPDF.credit=WeasyPrint alkalmazása HTMLToPDF.credit=WeasyPrint alkalmazása
HTMLToPDF.zoom=Oldalnéző szint a weboldal megjelenítésére. HTMLToPDF.zoom=Zoom level for displaying the website.
HTMLToPDF.pageWidth=Oldal szélessége centiméterben. (Törlés esetén az alapértelmezett érték lesz) HTMLToPDF.pageWidth=Width of the page in centimeters. (Blank to default)
HTMLToPDF.pageHeight=Oldal magassága centiméterben. (Törlés esetén az alapértelmezett érték lesz) HTMLToPDF.pageHeight=Height of the page in centimeters. (Blank to default)
HTMLToPDF.marginTop=Oldal felső marginalása milliméterben. (Törlés esetén az alapértelmezett érték lesz) HTMLToPDF.marginTop=Top margin of the page in millimeters. (Blank to default)
HTMLToPDF.marginBottom=Oldal alsó marginalása milliméterben. (Törlés esetén az alapértelmezett érték lesz) HTMLToPDF.marginBottom=Bottom margin of the page in millimeters. (Blank to default)
HTMLToPDF.marginLeft=Oldal bal oldali marginalása milliméterben. (Törlés esetén az alapértelmezett érték lesz) HTMLToPDF.marginLeft=Left margin of the page in millimeters. (Blank to default)
HTMLToPDF.marginRight=Oldal jobb oldali marginalása milliméterben. (Törlés esetén az alapértelmezett érték lesz) HTMLToPDF.marginRight=Right margin of the page in millimeters. (Blank to default)
HTMLToPDF.printBackground=Oldalsáv háttérét nyomtatásra jelenítse meg. HTMLToPDF.printBackground=Render the background of websites.
HTMLToPDF.defaultHeader=Alapértelmezett fejléc (Nevezés és oldal szám) engedélyezése HTMLToPDF.defaultHeader=Enable Default Header (Name and page number)
HTMLToPDF.cssMediaType=Oldal CSS média típusának módosítása. HTMLToPDF.cssMediaType=Change the CSS media type of the page.
HTMLToPDF.none=Nincs HTMLToPDF.none=None
HTMLToPDF.print=Nyomtatás HTMLToPDF.print=Print
HTMLToPDF.screen=Élő képernyő HTMLToPDF.screen=Screen
#AddStampRequest #AddStampRequest
AddStampRequest.header=Stempel PDF-be AddStampRequest.header=Stamp PDF
AddStampRequest.title=Stempel PDF-be AddStampRequest.title=Stamp PDF
AddStampRequest.stampType=Stempel típusa AddStampRequest.stampType=Stamp Type
AddStampRequest.stampText=Stempel szövege AddStampRequest.stampText=Stamp Text
AddStampRequest.stampImage=Stempel képsora AddStampRequest.stampImage=Stamp Image
AddStampRequest.alphabet=Alphabet AddStampRequest.alphabet=Alphabet
AddStampRequest.fontSize=Betűméret/stépésnév AddStampRequest.fontSize=Font/Image Size
AddStampRequest.rotation=Fordítás AddStampRequest.rotation=Rotation
AddStampRequest.opacity=Átlátszathossz AddStampRequest.opacity=Opacity
AddStampRequest.position=Pozíció AddStampRequest.position=Position
AddStampRequest.overrideX=Överrite X koordinátája AddStampRequest.overrideX=Override X Coordinate
AddStampRequest.overrideY=Överrite Y koordinátája AddStampRequest.overrideY=Override Y Coordinate
AddStampRequest.customMargin=Egyéni mezők marginalája AddStampRequest.customMargin=Custom Margin
AddStampRequest.customColor=Egyéni szövegszín AddStampRequest.customColor=Custom Text Color
AddStampRequest.submit=Küldés AddStampRequest.submit=Submit
#sanitizePDF #sanitizePDF
@@ -696,7 +694,7 @@ adjustContrast.download=Letöltés
#crop #crop
crop.title=Körülvágás crop.title=Körülvágás
crop.header=PDF kivágása crop.header=Crop PDF
crop.submit=Elküldés crop.submit=Elküldés
@@ -731,7 +729,7 @@ pageLayout.submit=Elküldés
scalePages.title=Oldalméret beállítása scalePages.title=Oldalméret beállítása
scalePages.header=Oldalméret beállítása scalePages.header=Oldalméret beállítása
scalePages.pageSize=A dokumentum egy oldalának mérete. scalePages.pageSize=A dokumentum egy oldalának mérete.
scalePages.keepPageSize=Váltás az eredeti méretre scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Az oldal nagyításának szintje (vágás). scalePages.scaleFactor=Az oldal nagyításának szintje (vágás).
scalePages.submit=Küldés scalePages.submit=Küldés
@@ -740,26 +738,25 @@ scalePages.submit=Küldés
certSign.title=Tanúsítvánnyal történő aláírás certSign.title=Tanúsítvánnyal történő aláírás
certSign.header=Aláírás PDF tanúsítvánnyal (fejlesztés alatt) certSign.header=Aláírás PDF tanúsítvánnyal (fejlesztés alatt)
certSign.selectPDF=Válasszon PDF fájlt az aláíráshoz: certSign.selectPDF=Válasszon PDF fájlt az aláíráshoz:
certSign.jksNote=Megjegyzés: Ha a tanúsítvány típusa nem szerepel a fenti listában, konvertálja Java Keystore (.jks) formátumba a keytool parancssor segítségével. Válassza az alábbi .jks vagy .keystore fájl opciót. certSign.jksNote=Note: If your certificate type is not listed below, please convert it to a Java Keystore (.jks) file using the keytool command line tool. Then, choose the .jks file option below.
certSign.selectKey=Válassza ki a saját kulcsfájlját (PKCS#8 formátum, lehet .pem vagy .der kiterjesztésű): certSign.selectKey=Válassza ki a saját kulcsfájlját (PKCS#8 formátum, lehet .pem vagy .der kiterjesztésű):
certSign.selectCert=Válassza ki a tanúsítványfájlját (X.509 formátum, lehet .pem vagy .der kiterjesztésű): certSign.selectCert=Válassza ki a tanúsítványfájlját (X.509 formátum, lehet .pem vagy .der kiterjesztésű):
certSign.selectP12=Válassza ki a PKCS#12 kulcstár fájlját (.p12 vagy .pfx) (Opcionális, ha rendelkezésre áll, tartalmaznia kell a privát kulcsot és a tanúsítványt.): certSign.selectP12=Válassza ki a PKCS#12 kulcstár fájlját (.p12 vagy .pfx) (Opcionális, ha rendelkezésre áll, tartalmaznia kell a privát kulcsot és a tanúsítványt.):
certSign.selectJKS=Java Keystore-fájl választása (.jks vagy .keystore): certSign.selectJKS=Select Your Java Keystore File (.jks or .keystore):
certSign.certType=Tanúsítvány típusa certSign.certType=Tanúsítvány típusa
certSign.password=Adja meg a kulcstár vagy a privát kulcs jelszavát (ha van): certSign.password=Adja meg a kulcstár vagy a privát kulcs jelszavát (ha van):
certSign.showSig=Aláírás megjelenítése certSign.showSig=Aláírás megjelenítése
certSign.reason=Ok certSign.reason=Ok
certSign.location=Hely certSign.location=Hely
certSign.name=Név certSign.name=Név
certSign.showLogo=Logó megjelenítése
certSign.submit=PDF aláírása certSign.submit=PDF aláírása
#removeCertSign #removeCertSign
removeCertSign.title=Tanúsítvány aláírás eltávolítása removeCertSign.title=Remove Certificate Signature
removeCertSign.header=PDF-ből törölje a digitális tanúsítványt removeCertSign.header=Remove the digital certificate from the PDF
removeCertSign.selectPDF=PDF fájl kiválasztása: removeCertSign.selectPDF=Select a PDF file:
removeCertSign.submit=Aláírást törlés removeCertSign.submit=Remove Signature
#removeBlanks #removeBlanks
@@ -773,35 +770,32 @@ removeBlanks.submit=Üres oldalak eltávolítása
#removeAnnotations #removeAnnotations
removeAnnotations.title=Számítógépes bejegyzések törlése removeAnnotations.title=Remove Annotations
removeAnnotations.header=Számítógépes bejegyzések törlése removeAnnotations.header=Remove Annotations
removeAnnotations.submit=Töröl removeAnnotations.submit=Remove
#compare #compare
compare.title=Összehasonlítás compare.title=Összehasonlítás
compare.header=PDF-ek összehasonlítása compare.header=PDF-ek összehasonlítása
compare.highlightColor.1=Kötłówiteli szín 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=Kijelzési szín 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=Dokumentum 1 compare.document.1=Dokumentum 1
compare.document.2=Dokumentum 2 compare.document.2=Dokumentum 2
compare.submit=Összehasonlítás compare.submit=Összehasonlítás
compare.complex.message=Egy vagy mindkét kiválasztott dokumentum nagy, az összehasonlítás precizégének csökkenhet.
compare.large.file.message=Egy vagy mindkét kiválasztott dokumentum túl nagy a feldolgozáshoz.
compare.no.text.message=Egy vagy mindkét kiválasztott PDF nincs szöveggal. Kérjük, válasszon szöveg tartalmazó PDF-t.
#BookToPDF #BookToPDF
BookToPDF.title=Könyvek és kézirattak PDF-be BookToPDF.title=Books and Comics to PDF
BookToPDF.header=Könyv to PDF BookToPDF.header=Book to PDF
BookToPDF.credit=Használja a Calibre-t BookToPDF.credit=Uses Calibre
BookToPDF.submit=Konvertálás BookToPDF.submit=Convert
#PDFToBook #PDFToBook
PDFToBook.title=PDF-ből könyv PDFToBook.title=PDF to Book
PDFToBook.header=PDF to Book PDFToBook.header=PDF to Book
PDFToBook.selectText.1=Formátum PDFToBook.selectText.1=Format
PDFToBook.credit=Használja a Calibre-t PDFToBook.credit=Uses Calibre
PDFToBook.submit=Konvertálás PDFToBook.submit=Convert
#sign #sign
sign.title=Aláírás sign.title=Aláírás
@@ -811,11 +805,6 @@ sign.draw=Aláírás rajzolása
sign.text=Szöveg beírása sign.text=Szöveg beírása
sign.clear=Törlés sign.clear=Törlés
sign.add=Hozzáadás sign.add=Hozzáadás
sign.saved=Mentett aláírások
sign.save=Aláíráshoz mentés
sign.personalSigs=Személyi aláíráshoz
sign.sharedSigs=Megosztott aláíráshoz
sign.noSavedSigs=Nincsenek mentett aláírások találat
#repair #repair
@@ -827,7 +816,7 @@ repair.submit=Javítás
#flatten #flatten
flatten.title=Kiegyenlítés flatten.title=Kiegyenlítés
flatten.header=PDF-ek kiegyenlítése flatten.header=PDF-ek kiegyenlítése
flatten.flattenOnlyForms=Csak formákat átalakít flatten.flattenOnlyForms=Flatten only forms
flatten.submit=Kiegyenlítés flatten.submit=Kiegyenlítés
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=Minimális kontúr terület:
ScannerImageSplit.selectText.8=A fotók minimális kontúrterületének beállítása ScannerImageSplit.selectText.8=A fotók minimális kontúrterületének beállítása
ScannerImageSplit.selectText.9=Keret mérete: ScannerImageSplit.selectText.9=Keret mérete:
ScannerImageSplit.selectText.10=A hozzáadott és eltávolított keret méretének beállítása a fehér keretek elkerülése érdekében a kimeneten (alapértelmezett: 1). ScannerImageSplit.selectText.10=A hozzáadott és eltávolított keret méretének beállítása a fehér keretek elkerülése érdekében a kimeneten (alapértelmezett: 1).
ScannerImageSplit.info=A Python nincs telepítve. Összefogóként szükséges. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=PDF feldolgozása OCR-rel
extractImages.title=Képek kinyerése extractImages.title=Képek kinyerése
extractImages.header=Képek kinyerése extractImages.header=Képek kinyerése
extractImages.selectText=Válassza ki a képformátumot a kinyert képek konvertálásához extractImages.selectText=Válassza ki a képformátumot a kinyert képek konvertálásához
extractImages.allowDuplicates=Duplikált képek mentése extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Kinyerés extractImages.submit=Kinyerés
@@ -877,7 +866,7 @@ extractImages.submit=Kinyerés
fileToPDF.title=Fájl PDF dokumentummá alakítása fileToPDF.title=Fájl PDF dokumentummá alakítása
fileToPDF.header=Konvertáljon bármilyen fájlt PDF dokumentummá fileToPDF.header=Konvertáljon bármilyen fájlt PDF dokumentummá
fileToPDF.credit=Ez a szolgáltatás a LibreOffice-t és az Unoconv-ot használja a fájlkonverzióhoz. fileToPDF.credit=Ez a szolgáltatás a LibreOffice-t és az Unoconv-ot használja a fájlkonverzióhoz.
fileToPDF.supportedFileTypesInfo=Támogatott fájltípusok fileToPDF.supportedFileTypesInfo=Supported File types
fileToPDF.supportedFileTypes=A funkció az alábbi fájltípusokat támogatja, azonban a teljesen friss támogatott formátumok listájáért kérjük, tekintse meg a LibreOffice dokumentációját fileToPDF.supportedFileTypes=A funkció az alábbi fájltípusokat támogatja, azonban a teljesen friss támogatott formátumok listájáért kérjük, tekintse meg a LibreOffice dokumentációját
fileToPDF.submit=Konvertálás PDF dokumentummá fileToPDF.submit=Konvertálás PDF dokumentummá
@@ -907,7 +896,7 @@ merge.title=Összevonás
merge.header=Több PDF összevonása (2+) merge.header=Több PDF összevonása (2+)
merge.sortByName=Név szerinti rendezés merge.sortByName=Név szerinti rendezés
merge.sortByDate=Dátum szerinti rendezés merge.sortByDate=Dátum szerinti rendezés
merge.removeCertSign=Eltávolítja a megyérismereteket az összefuzött fájlban? merge.removeCertSign=Remove digital signature in the merged file?
merge.submit=Összevonás merge.submit=Összevonás
@@ -915,24 +904,24 @@ merge.submit=Összevonás
pdfOrganiser.title=Oldalszervező pdfOrganiser.title=Oldalszervező
pdfOrganiser.header=PDF Oldalszervező pdfOrganiser.header=PDF Oldalszervező
pdfOrganiser.submit=Oldalak átrendezése pdfOrganiser.submit=Oldalak átrendezése
pdfOrganiser.mode=Mód pdfOrganiser.mode=Mode
pdfOrganiser.mode.1=Törzsbeírás szabályos sorrend pdfOrganiser.mode.1=Custom Page Order
pdfOrganiser.mode.2=Fordított sorrend pdfOrganiser.mode.2=Reverse Order
pdfOrganiser.mode.3=Dupla oldal rendezés pdfOrganiser.mode.3=Duplex Sort
pdfOrganiser.mode.4=Könyvrész letrehozása rendezés pdfOrganiser.mode.4=Booklet Sort
pdfOrganiser.mode.5=Oldalsarkatásos könyvrész letrehozása rendezés pdfOrganiser.mode.5=Side Stitch Booklet Sort
pdfOrganiser.mode.6=Tökéletes páratlan-páros split pdfOrganiser.mode.6=Odd-Even Split
pdfOrganiser.mode.7=Először is eltávolítanunk pdfOrganiser.mode.7=Remove First
pdfOrganiser.mode.8=Utolsó törölése pdfOrganiser.mode.8=Remove Last
pdfOrganiser.mode.9=Először és utolsó törlése pdfOrganiser.mode.9=Remove First and Last
pdfOrganiser.mode.10=Tökéletes páratlan-páros összekeverés pdfOrganiser.mode.10=Odd-Even Merge
pdfOrganiser.placeholder=(pl.: 1,3,2 vagy 4-8,2,10-12 vagy 2n-1) pdfOrganiser.placeholder=(e.g. 1,3,2 or 4-8,2,10-12 or 2n-1)
#multiTool #multiTool
multiTool.title=PDF többfunkciós eszköz multiTool.title=PDF többfunkciós eszköz
multiTool.header=PDF többfunkciós eszköz multiTool.header=PDF többfunkciós eszköz
multiTool.uploadPrompts=Fájl neve multiTool.uploadPrompts=File Name
#view pdf #view pdf
viewPdf.title=PDF megtekintése viewPdf.title=PDF megtekintése
@@ -943,7 +932,7 @@ pageRemover.title=Oldaltörlő
pageRemover.header=PDF oldaltörlő pageRemover.header=PDF oldaltörlő
pageRemover.pagesToDelete=Törlendő oldalak (adja meg az oldalszámok vesszővel elválasztott listáját): pageRemover.pagesToDelete=Törlendő oldalak (adja meg az oldalszámok vesszővel elválasztott listáját):
pageRemover.submit=Oldalak törlése pageRemover.submit=Oldalak törlése
pageRemover.placeholder=(pl.: 1,2,6 vagy 1-10,15-30) pageRemover.placeholder=(e.g. 1,2,6 or 1-10,15-30)
#rotate #rotate
@@ -994,7 +983,7 @@ pdfToImage.color=színes
pdfToImage.grey=szürkeárnyalatos pdfToImage.grey=szürkeárnyalatos
pdfToImage.blackwhite=fekete-fehér (adatvesztéssel járhat!) pdfToImage.blackwhite=fekete-fehér (adatvesztéssel járhat!)
pdfToImage.submit=Átalakítás pdfToImage.submit=Átalakítás
pdfToImage.info=Nincs telepítve a Python. Szükséges a WebP konverzióhoz. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1031,10 +1020,10 @@ watermark.selectText.6=heightSpacer (Hely a vízjelek között függőlegesen):
watermark.selectText.7=Átlátszóság (0% - 100%): watermark.selectText.7=Átlátszóság (0% - 100%):
watermark.selectText.8=Vízjel típusa: watermark.selectText.8=Vízjel típusa:
watermark.selectText.9=Vízjel képe: watermark.selectText.9=Vízjel képe:
watermark.selectText.10=PDF-t PDF-ra átalakítás watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=Vízjel hozzáadása watermark.submit=Vízjel hozzáadása
watermark.type.1=Szöveg watermark.type.1=Text
watermark.type.2=Kép watermark.type.2=Image
#Change permissions #Change permissions
@@ -1086,9 +1075,9 @@ pdfToPDFA.title=PDF >> PDF/A
pdfToPDFA.header=PDF >> PDF/A pdfToPDFA.header=PDF >> PDF/A
pdfToPDFA.credit=Ez a szolgáltatás az ghostscript-t használja a PDF/A konverzióhoz pdfToPDFA.credit=Ez a szolgáltatás az ghostscript-t használja a PDF/A konverzióhoz
pdfToPDFA.submit=Konvertálás pdfToPDFA.submit=Konvertálás
pdfToPDFA.tip=Jelenleg egyszerre több fájl nem működik ezzel a funkcióval pdfToPDFA.tip=Currently does not work for multiple inputs at once
pdfToPDFA.outputFormat=Kimeneti formátum pdfToPDFA.outputFormat=Output format
pdfToPDFA.pdfWithDigitalSignature=A PDF tartalmaz digitális alásszegyeztetést. Ez lesz eltávolítva az alábbi lépésben. pdfToPDFA.pdfWithDigitalSignature=The PDF contains a digital signature. This will be removed in the next step.
#PDFToWord #PDFToWord
@@ -1170,65 +1159,67 @@ split-by-sections.vertical.label=Vízszintes szakaszok
split-by-sections.horizontal.placeholder=Adja meg a vízszintes szakaszok számát split-by-sections.horizontal.placeholder=Adja meg a vízszintes szakaszok számát
split-by-sections.vertical.placeholder=Adja meg a függőleges szakaszok számát split-by-sections.vertical.placeholder=Adja meg a függőleges szakaszok számát
split-by-sections.submit=Felosztás split-by-sections.submit=Felosztás
split-by-sections.merge=Egyesítsük a dokumentumokat egybe split-by-sections.merge=Merge Into One PDF
#printFile #printFile
printFile.title=Fájl kinyomtatása printFile.title=Print File
printFile.header=Fájlt nyomtatás a számítógépes kiíróra printFile.header=Print File to Printer
printFile.selectText.1=Válasszon ki a kinyomtatandó fájlt printFile.selectText.1=Select File to Print
printFile.selectText.2=Add meg a kiíró nevét printFile.selectText.2=Enter Printer Name
printFile.submit=Nyomtatás printFile.submit=Print
#licenses #licenses
licenses.nav=Licenses licenses.nav=Licenses
licenses.title=3rd Party Licenses licenses.title=3rd Party Licenses
licenses.header=3rd Party Licenses licenses.header=3rd Party Licenses
licenses.module=Modul licenses.module=Module
licenses.version=Verzió licenses.version=Version
licenses.license=License licenses.license=License
#survey #survey
survey.nav=Kérdőív survey.nav=Survey
survey.title=Stirling-PDF Kérdőív survey.title=Stirling-PDF Survey
survey.description=A Stirling-PDF nincs bejelentkezési adatokat tároló funkciója miatt szeretnénk a felhasználóink véleményét gyűjteni, hogy javítsuk meg a Stirling-PDF-t! survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF!
survey.changes=A Stirling-PDF változásai a visszaérkező kérdőív után! További információért látogasson el az alábbi blogfelsorolást. survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=Ezek a változtatások során kapunk fizetendő üzleti támogatást és finanszírozást survey.changes2=With these changes we are getting paid business support and funding
survey.please=Please consider taking our survey! survey.please=Please consider taking our survey!
survey.disabled=(A kérdőív bejelentkezés nélküli megjelenése le lesz tilos további frissítések után, de folyamatosan elérhető a oldal tetején) survey.disabled=(Survey popup will be disabled in following updates but available at foot of page)
survey.button=Kérdőív végrehajtása survey.button=Take Survey
survey.dontShowAgain=Más nincs mutatni ugyanarra a képernyőre survey.dontShowAgain=Don't show again
#error #error
error.sorry=Sajnáljuk, hogy probléma van! error.sorry=Sorry for the issue!
error.needHelp=Segítségüket kérünk! / Hiba találkoztak? error.needHelp=Need help / Found an issue?
error.contactTip=Ha további nehézségekkel találkozna, ne szudirmáld a segítségre kérését. A GitHub oldalán egy típusot is lehet kiküldeni, vagy a Discordban kapcsolatba lépheted veleink: error.contactTip=If you're still having trouble, don't hesitate to reach out to us for help. You can submit a ticket on our GitHub page or contact us through Discord:
error.404.head=404 - Nincs ilyen oldal | Sajnáljuk, hogy valami meghibásodott! error.404.head=404 - Page Not Found | Oops, we tripped in the code!
error.404.1=Nem tudom megkerülni az oldalt, amit keresed. error.404.1=We can't seem to find the page you're looking for.
error.404.2=Valami meghibásodott error.404.2=Something went wrong
error.github=Típusot kiküldheted a GitHub-on error.github=Submit a ticket on GitHub
error.showStack=Lássuk meg a sorozatot error.showStack=Show Stack Trace
error.copyStack=Kövesse a sorozat másolását error.copyStack=Copy Stack Trace
error.githubSubmit=GitHub - Típus kiküldése error.githubSubmit=GitHub - Submit a ticket
error.discordSubmit=Discord - Jegyzettömb kijavítása error.discordSubmit=Discord - Submit Support post
#remove-image #remove-image
removeImage.title=Távolítsa el az kép removeImage.title=Remove image
removeImage.header=Távolítsa el a képet removeImage.header=Remove image
removeImage.removeImage=Távolítsa el a képet removeImage.removeImage=Remove image
removeImage.submit=Távolítsa el a képet removeImage.submit=Remove image
splitByChapters.title=PDF fájlt fejezések szerint bontson fel splitByChapters.title=Split PDF by Chapters
splitByChapters.header=PDF fájlt fejezések szerint bontson fel splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Fejezet címkézése szintje splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Metadata beleszerkesztése splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Duplikációk engedélyezése splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=Ez az eszköz osztja fel a PDF-fájlt szövegszerkezet alapján lévő több fájlra. splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.). splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Metaadatok belefoglalása: Ha bevanítva van, az eredeti PDF fájl metaadatai megtartódnak minden osztott fájlban. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Duplikációk engedélyezése: Ha bevanítva van, lehetővé teszi a megadott oldalon lévő több kijelzőszint alapján új PDF-ek létrehozása. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=PDF osztás splitByChapters.submit=Split PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Ukuran Fonta addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Nama Fonta addPageNumbers.fontName=Font Name
pdfPrompt=Pilih PDF pdfPrompt=Pilih PDF
multiPdfPrompt=Pilih PDF (2+) multiPdfPrompt=Pilih PDF (2+)
multiPdfDropPrompt=Pilih (atau seret & letakkan)) semua PDF yang Anda butuhkan multiPdfDropPrompt=Pilih (atau seret & letakkan)) semua PDF yang Anda butuhkan
@@ -12,17 +12,17 @@ imgPrompt=Pilih Gambar
genericSubmit=Kirim genericSubmit=Kirim
processTimeWarning=Peringatan: Proses ini dapat memakan waktu hingga satu menit, tergantung pada ukuran berkas processTimeWarning=Peringatan: Proses ini dapat memakan waktu hingga satu menit, tergantung pada ukuran berkas
pageOrderPrompt=Urutan Halaman Khusus (Masukkan daftar nomor halaman yang dipisahkan dengan koma atau Fungsi seperti 2n + 1) : pageOrderPrompt=Urutan Halaman Khusus (Masukkan daftar nomor halaman yang dipisahkan dengan koma atau Fungsi seperti 2n + 1) :
pageSelectionPrompt=Pemilihan Halaman Kustom (Masukkan daftar nomor halaman dipisahkan dengan koma 1,5,6 atau Fungsi seperti 2n+1) : pageSelectionPrompt=Custom Page Selection (Enter a comma-separated list of page numbers 1,5,6 or Functions like 2n+1) :
goToPage=Ke goToPage=Ke
true=Benar true=Benar
false=Salah false=Salah
unknown=Tidak diketahui unknown=Tidak diketahui
save=Simpan save=Simpan
saveToBrowser=Simpan ke Peramban saveToBrowser=Save to Browser
close=Tutup close=Tutup
filesSelected=berkas dipilih filesSelected=berkas dipilih
noFavourites=Tidak ada favorit yang ditambahkan noFavourites=Tidak ada favorit yang ditambahkan
downloadComplete=Unduhan Lengkap downloadComplete=Download Complete
bored=Bosan Menunggu? bored=Bosan Menunggu?
alphabet=Abjad alphabet=Abjad
downloadPdf=Unduh PDF downloadPdf=Unduh PDF
@@ -46,115 +46,113 @@ red=Merah
green=Hijau green=Hijau
blue=Biru blue=Biru
custom=Kustom... custom=Kustom...
WorkInProgess=Pekerjaan sedang diproses, Mungkin tidak berfungsi atau terdapat kutu, Silakan laporkan masalah apa pun! WorkInProgess=Work in progress, May not work or be buggy, Please report any problems!
poweredBy=Ditenagai oleh poweredBy=Powered by
yes=Ya yes=Yes
no=Tidak no=No
changedCredsMessage=Kredensial berubah!! changedCredsMessage=Kredensial berubah!!
notAuthenticatedMessage=Pengguna tidak ter-autentikasi. notAuthenticatedMessage=Pengguna tidak ter-autentikasi.
userNotFoundMessage=Pengguna tidak ditemukan. userNotFoundMessage=Pengguna tidak ditemukan.
incorrectPasswordMessage=Kata sandi saat ini salah. incorrectPasswordMessage=Kata sandi saat ini salah.
usernameExistsMessage=Nama pengguna baru sudah ada. usernameExistsMessage=Nama pengguna baru sudah ada.
invalidUsernameMessage=Nama pengguna tidak valid, nama pengguna hanya boleh mengandung huruf, angka, dan karakter khusus berikut @._+- atau harus berupa alamat email yang valid. invalidUsernameMessage=Invalid username, username can only contain letters, numbers and the following special characters @._+- or must be a valid email address.
invalidPasswordMessage=Kata sandi tidak boleh kosong dan tidak boleh memiliki spasi di awal atau akhir. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=Kata Sandi Baru dan Konfirmasi Kata Sandi Baru harus sama. confirmPasswordErrorMessage=New Password and Confirm New Password must match.
deleteCurrentUserMessage=Pengguna yang sedang masuk tidak dapat dihapus. deleteCurrentUserMessage=Cannot delete currently logged in user.
deleteUsernameExistsMessage=Nama pengguna tidak ada dan tidak dapat dihapus. deleteUsernameExistsMessage=The username does not exist and cannot be deleted.
downgradeCurrentUserMessage=Tidak dapat menurunkan peran pengguna saat ini downgradeCurrentUserMessage=Tidak dapat menurunkan peran pengguna saat ini
disabledCurrentUserMessage=Pengguna saat ini tidak dapat dinonaktifkan disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=Tidak dapat menurunkan peran pengguna saat ini. Oleh karena itu, pengguna saat ini tidak akan ditampilkan. downgradeCurrentUserLongMessage=Tidak dapat menurunkan peran pengguna saat ini. Oleh karena itu, pengguna saat ini tidak akan ditampilkan.
userAlreadyExistsOAuthMessage=Pengguna sudah ada sebagai pengguna OAuth2. userAlreadyExistsOAuthMessage=The user already exists as an OAuth2 user.
userAlreadyExistsWebMessage=Pengguna sudah ada sebagai pengguna web. userAlreadyExistsWebMessage=The user already exists as an web user.
error=Kesalahan error=Error
oops=Ups! oops=Oops!
help=Bantuan help=Help
goHomepage=Kembali ke Beranda goHomepage=Go to Homepage
joinDiscord=Bergabung dengan server Discord kami joinDiscord=Join our Discord server
seeDockerHub=Lihat Docker Hub seeDockerHub=See Docker Hub
visitGithub=Kunjungi Repositori Github visitGithub=Visit Github Repository
donate=Donasi donate=Donate
color=Warna color=Color
sponsor=Pembantu sponsor=Sponsor
info=Informasi info=Info
pro=Pro pro=Pro
page=Halaman page=Page
pages=Halaman-halaman pages=Pages
loading=Mengambil data...
addToDoc=Tambahkan ke Dokumen
legal.privacy=Kebijakan Privasi legal.privacy=Privacy Policy
legal.terms=Syarat dan Ketentuan legal.terms=Terms and Conditions
legal.accessibility=Aksesibilitas legal.accessibility=Accessibility
legal.cookie=Kebijakan Kuki legal.cookie=Cookie Policy
legal.impressum=Impresum legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
############### ###############
pipeline.header=Menu Pipeline (Beta) pipeline.header=Pipeline Menu (Beta)
pipeline.uploadButton=Unggah Kustom pipeline.uploadButton=Upload Custom
pipeline.configureButton=Konfigurasi pipeline.configureButton=Configure
pipeline.defaultOption=Kustom pipeline.defaultOption=Custom
pipeline.submitButton=Kirim pipeline.submitButton=Submit
pipeline.help=Bantuan Pipeline pipeline.help=Pipeline Help
pipeline.scanHelp=Bantuan Pemindaian Folder pipeline.scanHelp=Folder Scanning Help
pipeline.deletePrompt=Apakah Anda yakin ingin menghapus pipeline pipeline.deletePrompt=Are you sure you want to delete pipeline
###################### ######################
# Pipeline Options # # Pipeline Options #
###################### ######################
pipelineOptions.header=Konfigurasi Pipeline pipelineOptions.header=Pipeline Configuration
pipelineOptions.pipelineNameLabel=Nama Pipeline pipelineOptions.pipelineNameLabel=Pipeline Name
pipelineOptions.saveSettings=Simpan Pengaturan Operasi pipelineOptions.saveSettings=Save Operation Settings
pipelineOptions.pipelineNamePrompt=Masukkan nama pipeline di sini pipelineOptions.pipelineNamePrompt=Enter pipeline name here
pipelineOptions.selectOperation=Pilih Operasi pipelineOptions.selectOperation=Select Operation
pipelineOptions.addOperationButton=Tambah operasi pipelineOptions.addOperationButton=Add operation
pipelineOptions.pipelineHeader=Pipeline: pipelineOptions.pipelineHeader=Pipeline:
pipelineOptions.saveButton=Unduh pipelineOptions.saveButton=Download
pipelineOptions.validateButton=Validasi pipelineOptions.validateButton=Validate
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Upgrade ke Pro enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Fitur ini hanya tersedia untuk pengguna Pro. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro mendukung berkas konfigurasi YAML dan fitur SSO lainnya. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Mencari lebih banyak fitur manajemen pengguna? Lihat Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Apakah Anda ingin membuat Stirling PDF lebih baik? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF memiliki analitik yang dapat diaktifkan untuk membantu kami meningkatkan produk. Kami tidak melacak informasi pribadi atau konten berkas. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Silakan pertimbangkan untuk mengaktifkan analitik agar Stirling PDF dapat berkembang dan untuk memungkinkan kami memahami pengguna kami dengan lebih baik. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Aktifkan analitik analytics.enable=Enable analytics
analytics.disable=Nonaktifkan analitik analytics.disable=Disable analytics
analytics.settings=Anda dapat mengubah pengaturan untuk analitik di berkas config/settings.yml analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
############# #############
navbar.favorite=Favorit navbar.favorite=Favorites
navbar.darkmode=Mode Gelap navbar.darkmode=Mode Gelap
navbar.language=Bahasa navbar.language=Languages
navbar.settings=Pengaturan navbar.settings=Pengaturan
navbar.allTools=Alat navbar.allTools=Tools
navbar.multiTool=Alat Multi navbar.multiTool=Multi Tools
navbar.sections.organize=Atur navbar.sections.organize=Organize
navbar.sections.convertTo=Konversi ke PDF navbar.sections.convertTo=Convert to PDF
navbar.sections.convertFrom=Konversi dari PDF navbar.sections.convertFrom=Convert from PDF
navbar.sections.security=Tanda Tangan & Keamanan navbar.sections.security=Sign & Security
navbar.sections.advance=Langkah Lanjut navbar.sections.advance=Advanced
navbar.sections.edit=Melihat & Mengedit navbar.sections.edit=View & Edit
navbar.sections.popular=Populer navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
############# #############
settings.title=Pengaturan settings.title=Pengaturan
settings.update=Pembaruan tersedia settings.update=Pembaruan tersedia
settings.updateAvailable={0} adalah versi yang terpasang saat ini. Versi baru ({1}) tersedia. settings.updateAvailable={0} is the current installed version. A new version ({1}) is available.
settings.appVersion=Versi Aplikasi: settings.appVersion=Versi Aplikasi:
settings.downloadOption.title=Pilih opsi unduhan (Untuk unduhan berkas tunggal non zip): settings.downloadOption.title=Pilih opsi unduhan (Untuk unduhan berkas tunggal non zip):
settings.downloadOption.1=Buka di jendela yang sama settings.downloadOption.1=Buka di jendela yang sama
@@ -163,13 +161,13 @@ settings.downloadOption.3=Unduh berkas
settings.zipThreshold=Berkas zip ketika jumlah berkas yang diunduh melebihi settings.zipThreshold=Berkas zip ketika jumlah berkas yang diunduh melebihi
settings.signOut=Keluar settings.signOut=Keluar
settings.accountSettings=Pengaturan Akun settings.accountSettings=Pengaturan Akun
settings.bored.help=Mengaktifkan permainan telur paskah settings.bored.help=Enables easter egg game
settings.cacheInputs.name=Simpan input formulir settings.cacheInputs.name=Save form inputs
settings.cacheInputs.help=Aktifkan untuk menyimpan input yang pernah digunakan untuk menjalankan di masa depan settings.cacheInputs.help=Enable to store previously used inputs for future runs
changeCreds.title=Ubah Kredensial changeCreds.title=Ubah Kredensial
changeCreds.header=Perbarui Detail Akun Anda changeCreds.header=Perbarui Detail Akun Anda
changeCreds.changePassword=Anda menggunakan kredensial login default. Silakan masukkan kata sandi baru changeCreds.changePassword=You are using default login credentials. Please enter a new password
changeCreds.newUsername=Nama Pengguna Baru changeCreds.newUsername=Nama Pengguna Baru
changeCreds.oldPassword=Kata Sandi Saat Ini changeCreds.oldPassword=Kata Sandi Saat Ini
changeCreds.newPassword=Kata Sandi Baru changeCreds.newPassword=Kata Sandi Baru
@@ -201,52 +199,51 @@ account.syncToAccount=Sinkronisasi Akun <- Browser
adminUserSettings.title=Pengaturan Kontrol Pengguna adminUserSettings.title=Pengaturan Kontrol Pengguna
adminUserSettings.header=Pengaturan Kontrol Admin adminUserSettings.header=Pengaturan Kontrol Admin
adminUserSettings.admin=Administrator adminUserSettings.admin=Admin
adminUserSettings.user=Pengguna adminUserSettings.user=Pengguna
adminUserSettings.addUser=Tambahkan Pengguna Baru adminUserSettings.addUser=Tambahkan Pengguna Baru
adminUserSettings.deleteUser=Hapus Pengguna adminUserSettings.deleteUser=Delete User
adminUserSettings.confirmDeleteUser=Haruskah pengguna dihapus? adminUserSettings.confirmDeleteUser=Should the user be deleted?
adminUserSettings.confirmChangeUserStatus=Haruskah pengguna dinonaktifkan/diaktifkan? adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=Nama pengguna hanya boleh mengandung huruf, angka, dan karakter khusus berikut @._+- atau harus berupa alamat email yang valid. adminUserSettings.usernameInfo=Username can only contain letters, numbers and the following special characters @._+- or must be a valid email address.
adminUserSettings.roles=Peran adminUserSettings.roles=Peran
adminUserSettings.role=Peran adminUserSettings.role=Peran
adminUserSettings.actions=Tindakan adminUserSettings.actions=Tindakan
adminUserSettings.apiUser=Pengguna API Terbatas adminUserSettings.apiUser=Pengguna API Terbatas
adminUserSettings.extraApiUser=Pengguna API Terbatas Tambahan adminUserSettings.extraApiUser=Additional Limited API User
adminUserSettings.webOnlyUser=Pengguna Khusus Web adminUserSettings.webOnlyUser=Pengguna Khusus Web
adminUserSettings.demoUser=Pengguna Demo (Tanpa pengaturan kustom) adminUserSettings.demoUser=Demo User (No custom settings)
adminUserSettings.internalApiUser=Pengguna API Internal adminUserSettings.internalApiUser=Internal API User
adminUserSettings.forceChange=Memaksa pengguna untuk mengubah nama pengguna/kata sandi saat masuk adminUserSettings.forceChange=Memaksa pengguna untuk mengubah nama pengguna/kata sandi saat masuk
adminUserSettings.submit=Simpan Pengguna adminUserSettings.submit=Simpan Pengguna
adminUserSettings.changeUserRole=Ubah Peran Pengguna adminUserSettings.changeUserRole=Ubah Peran Pengguna
adminUserSettings.authenticated=Terautentikasi adminUserSettings.authenticated=Authenticated
adminUserSettings.editOwnProfil=Edit profil sendiri adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=Pengguna diaktifkan adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=Pengguna dinonaktifkan adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Pengguna Aktif: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Pengguna Dinonaktifkan: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Total Pengguna: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=Permintaan Terakhir adminUserSettings.lastRequest=Last Request
database.title=Impor/Ekspor Database database.title=Database Import/Export
database.header=Impor/Ekspor Database database.header=Database Import/Export
database.fileName=Nama Berkas database.fileName=File Name
database.creationDate=Tanggal Pembuatan database.creationDate=Creation Date
database.fileSize=Ukuran Berkas database.fileSize=File Size
database.deleteBackupFile=Hapus Berkas Cadangan database.deleteBackupFile=Delete Backup File
database.importBackupFile=Impor Berkas Cadangan database.importBackupFile=Import Backup File
database.downloadBackupFile=Unduh Berkas Cadangan database.downloadBackupFile=Download Backup File
database.info_1=Ketika mengimpor data, sangat penting untuk memastikan struktur yang benar. Jika Anda tidak yakin dengan apa yang Anda lakukan, cari nasihat dan dukungan dari seorang profesional. Kesalahan dalam struktur dapat menyebabkan malfungsi aplikasi, bahkan hingga tidak dapat menjalankan aplikasi sama sekali. database.info_1=When importing data, it is crucial to ensure the correct structure. If you are unsure of what you are doing, seek advice and support from a professional. An error in the structure can cause application malfunctions, up to and including the complete inability to run the application.
database.info_2=Nama berkas tidak menjadi masalah saat mengunggah. Nama berkas akan diubah setelahnya mengikuti format backup_user_yyyyMMddHHmm.sql, memastikan konsistensi dalam penamaan. database.info_2=The file name does not matter when uploading. It will be renamed afterward to follow the format backup_user_yyyyMMddHHmm.sql, ensuring a consistent naming convention.
database.submit=Impor Cadangan database.submit=Import Backup
database.importIntoDatabaseSuccessed=Impor ke database berhasil database.importIntoDatabaseSuccessed=Import into database successed
database.fileNotFound=Berkas tidak Ditemukan database.fileNotFound=File not Found
database.fileNullOrEmpty=Berkas tidak boleh null atau kosong database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Impor Berkas Gagal database.failedImportFile=Failed Import File
session.expired=Sesi Anda telah kedaluwarsa. Silakan muat ulang halaman dan coba lagi. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -316,7 +313,7 @@ removePassword.tags=aman,Dekripsi,keamanan,buka kata sandi,hapus kata sandi
home.compressPdfs.title=Kompres home.compressPdfs.title=Kompres
home.compressPdfs.desc=Kompres PDF untuk mengurangi ukuran berkas. home.compressPdfs.desc=Kompres PDF untuk mengurangi ukuran berkas.
compressPdfs.tags=remas, kecil, mini compressPdfs.tags=squish, kecil, kecil
home.changeMetadata.title=Ubah Metadata home.changeMetadata.title=Ubah Metadata
@@ -393,9 +390,9 @@ home.certSign.title=Tanda tangani dengan Sertifikat
home.certSign.desc=Menandatangani PDF dengan Certificate/Key (PEM/P12) home.certSign.desc=Menandatangani PDF dengan Certificate/Key (PEM/P12)
certSign.tags=mengotentikasi, PEM, P12, resmi, mengenkripsi certSign.tags=mengotentikasi, PEM, P12, resmi, mengenkripsi
home.removeCertSign.title=Hapus Tanda Tangan Sertifikat home.removeCertSign.title=Remove Certificate Sign
home.removeCertSign.desc=Hapus tanda tangan sertifikat dari PDF home.removeCertSign.desc=Remove certificate signature from PDF
removeCertSign.tags=otentikasi, PEM, P12, resmi, dekripsi removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=Tata Letak Multi-Halaman home.pageLayout.title=Tata Letak Multi-Halaman
home.pageLayout.desc=Menggabungkan beberapa halaman dokumen PDF menjadi satu halaman home.pageLayout.desc=Menggabungkan beberapa halaman dokumen PDF menjadi satu halaman
@@ -482,52 +479,52 @@ autoSizeSplitPDF.tags=pdf, membagi, dokumen, organisasi
home.overlay-pdfs.title=Tumpuk PDF home.overlay-pdfs.title=Tumpuk PDF
home.overlay-pdfs.desc=Menumpuk PDF di atas PDF lain home.overlay-pdfs.desc=Menumpuk PDF di atas PDF lain
overlay-pdfs.tags=Overlays overlay-pdfs.tags=Overlay
home.split-by-sections.title=Membagi PDF berdasarkan Bagian home.split-by-sections.title=Membagi PDF berdasarkan Bagian
home.split-by-sections.desc=Membagi setiap halaman PDF menjadi beberapa bagian horizontal dan vertikal yang lebih kecil home.split-by-sections.desc=Membagi setiap halaman PDF menjadi beberapa bagian horizontal dan vertikal yang lebih kecil
split-by-sections.tags=Membagi Bagian, Membagi, Menyesuaikan split-by-sections.tags=Membagi Bagian, Membagi, Menyesuaikan
home.AddStampRequest.title=Tambahkan Tanda Tangan ke PDF home.AddStampRequest.title=Add Stamp to PDF
home.AddStampRequest.desc=Tambahkan teks atau gambar tanda tangan di lokasi yang ditentukan home.AddStampRequest.desc=Add text or add image stamps at set locations
AddStampRequest.tags=Tanda tangan, tambahkan gambar, posisikan gambar di tengah, air tinta, PDF, embedding, customisasi AddStampRequest.tags=Stamp, Add image, center image, Watermark, PDF, Embed, Customize
home.PDFToBook.title=PDF ke Buku home.PDFToBook.title=PDF to Book
home.PDFToBook.desc=Mengonversi PDF ke format Buku/Komik menggunakan calibre home.PDFToBook.desc=Converts PDF to Book/Comic formats using calibre
PDFToBook.tags=Buku,Komik,Calibre,Konversi,manga,amazon,kindle PDFToBook.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.BookToPDF.title=Buku ke PDF home.BookToPDF.title=Book to PDF
home.BookToPDF.desc=Mengonversi format Buku/Komik ke PDF menggunakan calibre home.BookToPDF.desc=Converts Books/Comics formats to PDF using calibre
BookToPDF.tags=Buku,Komik,Calibre,Konversi,manga,amazon,kindle BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.removeImagePdf.title=Hapus Gambar home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=Hapus gambar dari PDF untuk mengurangi ukuran file home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Hapus Gambar,Operasi Halaman,Backend,server side removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=Pisahkan PDF berdasarkan Bab home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Memisahkan PDF menjadi beberapa file berdasarkan struktur babnya. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=pemisahan,bab,bookmark,atur splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Ganti-Inversi-Warna replace-color.title=Replace-Invert-Color
replace-color.header=Ganti-Inversi Warna PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Ganti dan Inversi Warna home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Ganti warna untuk teks dan latar belakang dalam PDF dan inversi seluruh warna PDF untuk mengurangi ukuran file home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Ganti Warna,Operasi Halaman,Backend,server side replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Opsi Ganti atau Inversi warna replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Default(Warna kontras tinggi default) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Kustom(Warna yang disesuaikan) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Full-Inversi(Inversi semua warna) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Opsi warna kontras tinggi replace-color.selectText.5=High contrast color options
replace-color.selectText.6=teks putih di latar belakang hitam replace-color.selectText.6=white text on black background
replace-color.selectText.7=teks hitam di latar belakang putih replace-color.selectText.7=Black text on white background
replace-color.selectText.8=teks kuning di latar belakang hitam replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=teks hijau di latar belakang hitam replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Pilih warna teks replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Pilih warna latar belakang replace-color.selectText.11=Choose background Color
replace-color.submit=Ganti replace-color.submit=Replace
@@ -546,17 +543,18 @@ login.locked=Akun Anda telah dikunci.
login.signinTitle=Silakan masuk login.signinTitle=Silakan masuk
login.ssoSignIn=Masuk melalui Single Sign - on login.ssoSignIn=Masuk melalui Single Sign - on
login.oauth2AutoCreateDisabled=OAUTH2 Buat Otomatis Pengguna Dinonaktifkan login.oauth2AutoCreateDisabled=OAUTH2 Buat Otomatis Pengguna Dinonaktifkan
login.oauth2AdminBlockedUser=Registrasi atau login pengguna yang tidak terdaftar saat ini diblokir. Silakan hubungi administrator. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Permintaan otorisasi tidak ditemukan login.oauth2RequestNotFound=Authorization request not found
login.oauth2InvalidUserInfoResponse=Respons Info Pengguna Tidak Valid login.oauth2InvalidUserInfoResponse=Invalid User Info Response
login.oauth2invalidRequest=Permintaan Tidak Valid login.oauth2invalidRequest=Invalid Request
login.oauth2AccessDenied=Akses Ditolak login.oauth2AccessDenied=Access Denied
login.oauth2InvalidTokenResponse=Respons Token Tidak Valid login.oauth2InvalidTokenResponse=Invalid Token Response
login.oauth2InvalidIdToken=Token ID Tidak Valid login.oauth2InvalidIdToken=Invalid Id Token
login.userIsDisabled=Pengguna dinonaktifkan, login saat ini diblokir dengan nama pengguna ini. Silakan hubungi administrator. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=Anda sudah login ke login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=perangkat. Silakan keluar dari perangkat dan coba lagi. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Anda memiliki terlalu banyak sesi aktif login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Redaksional Otomatis autoRedact.title=Redaksional Otomatis
@@ -588,7 +586,7 @@ pdfToSinglePage.submit=Konversi ke Halaman Tunggal
pageExtracter.title=Ekstrak Halaman pageExtracter.title=Ekstrak Halaman
pageExtracter.header=Ekstrak Halaman pageExtracter.header=Ekstrak Halaman
pageExtracter.submit=Ekstrak pageExtracter.submit=Ekstrak
pageExtracter.placeholder=(misalnya 1,2,8 atau 4,7,12-16 atau 2n-1) pageExtracter.placeholder=(e.g. 1,2,8 or 4,7,12-16 or 2n-1)
#getPdfInfo #getPdfInfo
@@ -620,37 +618,37 @@ HTMLToPDF.header=HTML Ke PDF
HTMLToPDF.help=Menerima berkas HTML dan ZIP yang berisi html / css / gambar, dll yang diperlukan HTMLToPDF.help=Menerima berkas HTML dan ZIP yang berisi html / css / gambar, dll yang diperlukan
HTMLToPDF.submit=Konversi HTMLToPDF.submit=Konversi
HTMLToPDF.credit=Menggunakan WeasyPrint HTMLToPDF.credit=Menggunakan WeasyPrint
HTMLToPDF.zoom=Tingkat perbersan untuk menampilkan situs web. HTMLToPDF.zoom=Zoom level for displaying the website.
HTMLToPDF.pageWidth=Lebar halaman dalam sentimeter. (Kosong untuk default) HTMLToPDF.pageWidth=Width of the page in centimeters. (Blank to default)
HTMLToPDF.pageHeight=Tinggi halaman dalam sentimeter. (Kosong untuk default) HTMLToPDF.pageHeight=Height of the page in centimeters. (Blank to default)
HTMLToPDF.marginTop=Margin atas halaman dalam milimeter. (Kosong untuk default) HTMLToPDF.marginTop=Top margin of the page in millimeters. (Blank to default)
HTMLToPDF.marginBottom=Margin bawah halaman dalam milimeter. (Kosong untuk default) HTMLToPDF.marginBottom=Bottom margin of the page in millimeters. (Blank to default)
HTMLToPDF.marginLeft=Margin kiri halaman dalam milimeter. (Kosong untuk default) HTMLToPDF.marginLeft=Left margin of the page in millimeters. (Blank to default)
HTMLToPDF.marginRight=Margin kanan halaman dalam milimeter. (Kosong untuk default) HTMLToPDF.marginRight=Right margin of the page in millimeters. (Blank to default)
HTMLToPDF.printBackground=Render latar belakang situs web. HTMLToPDF.printBackground=Render the background of websites.
HTMLToPDF.defaultHeader=Aktifkan Header Default (Nama dan nomor halaman) HTMLToPDF.defaultHeader=Enable Default Header (Name and page number)
HTMLToPDF.cssMediaType=Ubah jenis media CSS halaman. HTMLToPDF.cssMediaType=Change the CSS media type of the page.
HTMLToPDF.none=Tidak ada HTMLToPDF.none=None
HTMLToPDF.print=Cetak HTMLToPDF.print=Print
HTMLToPDF.screen=Layar HTMLToPDF.screen=Screen
#AddStampRequest #AddStampRequest
AddStampRequest.header=Stampel PDF AddStampRequest.header=Stamp PDF
AddStampRequest.title=Stampel PDF AddStampRequest.title=Stamp PDF
AddStampRequest.stampType=Jenis Stampel AddStampRequest.stampType=Stamp Type
AddStampRequest.stampText=Teks Stampel AddStampRequest.stampText=Stamp Text
AddStampRequest.stampImage=Gambar Stampel AddStampRequest.stampImage=Stamp Image
AddStampRequest.alphabet=Alfabet AddStampRequest.alphabet=Alphabet
AddStampRequest.fontSize=Ukuran Font/Gambar AddStampRequest.fontSize=Font/Image Size
AddStampRequest.rotation=Rotasi AddStampRequest.rotation=Rotation
AddStampRequest.opacity=Transparansi AddStampRequest.opacity=Opacity
AddStampRequest.position=Posisi AddStampRequest.position=Position
AddStampRequest.overrideX=Timpa Koordinat X AddStampRequest.overrideX=Override X Coordinate
AddStampRequest.overrideY=Timpa Koordinat Y AddStampRequest.overrideY=Override Y Coordinate
AddStampRequest.customMargin=Margin Kustom AddStampRequest.customMargin=Custom Margin
AddStampRequest.customColor=Warna Teks Kustom AddStampRequest.customColor=Custom Text Color
AddStampRequest.submit=Kirim AddStampRequest.submit=Submit
#sanitizePDF #sanitizePDF
@@ -731,7 +729,7 @@ pageLayout.submit=Kirim
scalePages.title=Sesuaikan skala halaman scalePages.title=Sesuaikan skala halaman
scalePages.header=Sesuaikan skala halaman scalePages.header=Sesuaikan skala halaman
scalePages.pageSize=Ukuran halaman dokumen. scalePages.pageSize=Ukuran halaman dokumen.
scalePages.keepPageSize=Ukuran Asli scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Tingkat zoom (potong) halaman. scalePages.scaleFactor=Tingkat zoom (potong) halaman.
scalePages.submit=Kirim scalePages.submit=Kirim
@@ -740,31 +738,30 @@ scalePages.submit=Kirim
certSign.title=Penandatanganan Sertifikat certSign.title=Penandatanganan Sertifikat
certSign.header=Menandatangani PDF dengan sertifikat Anda (Sedang dalam proses) certSign.header=Menandatangani PDF dengan sertifikat Anda (Sedang dalam proses)
certSign.selectPDF=Pilih Berkas PDF untuk Penandatanganan: certSign.selectPDF=Pilih Berkas PDF untuk Penandatanganan:
certSign.jksNote=Catatan: Jika tipe sertifikat Anda tidak terdaftar di bawah, silakan konversi ke file Java Keystore (.jks) menggunakan alat baris perintah keytool. Kemudian, pilih opsi file .jks di bawah. certSign.jksNote=Note: If your certificate type is not listed below, please convert it to a Java Keystore (.jks) file using the keytool command line tool. Then, choose the .jks file option below.
certSign.selectKey=Pilih Berkas Kunci Pribadi Anda (format PKCS # 8, bisa .pem atau .der): certSign.selectKey=Pilih Berkas Kunci Pribadi Anda (format PKCS # 8, bisa .pem atau .der):
certSign.selectCert=Pilih Berkas Sertifikat Anda (format X.509, bisa .pem atau .der): certSign.selectCert=Pilih Berkas Sertifikat Anda (format X.509, bisa .pem atau .der):
certSign.selectP12=Pilih Berkas Keystore PKCS #12 Anda (.p12 atau .pfx) (Opsional, Jika disediakan, berkas tersebut harus berisi kunci pribadi dan sertifikat Anda): certSign.selectP12=Pilih Berkas Keystore PKCS #12 Anda (.p12 atau .pfx) (Opsional, Jika disediakan, berkas tersebut harus berisi kunci pribadi dan sertifikat Anda):
certSign.selectJKS=Pilih Berkas Java Keystore File (.jks atau .keystore): certSign.selectJKS=Select Your Java Keystore File (.jks or .keystore):
certSign.certType=Jenis Sertifikat certSign.certType=Jenis Sertifikat
certSign.password=Masukkan Kata Sandi Kunci atau Kunci Pribadi Anda (Jika Ada): certSign.password=Masukkan Kata Sandi Kunci atau Kunci Pribadi Anda (Jika Ada):
certSign.showSig=Tampilkan Tanda Tangan certSign.showSig=Tampilkan Tanda Tangan
certSign.reason=Alasan certSign.reason=Alasan
certSign.location=Lokasi certSign.location=Lokasi
certSign.name=Nama certSign.name=Nama
certSign.showLogo=Tampilkan Logo
certSign.submit=Tanda tangani PDF certSign.submit=Tanda tangani PDF
#removeCertSign #removeCertSign
removeCertSign.title=Hapus Tanda Tangan Sertifikat removeCertSign.title=Remove Certificate Signature
removeCertSign.header=Hapus sertifikat digital dari PDF removeCertSign.header=Remove the digital certificate from the PDF
removeCertSign.selectPDF=Pilih file PDF: removeCertSign.selectPDF=Select a PDF file:
removeCertSign.submit=Hapus Tanda Tangan removeCertSign.submit=Remove Signature
#removeBlanks #removeBlanks
removeBlanks.title=Hapus yang Kosong removeBlanks.title=Hapus Halaman Kosong
removeBlanks.header=Hapus Halaman Kosong removeBlanks.header=Remove Blank Pages
removeBlanks.threshold=Ambang Batas Keputihan Piksel: removeBlanks.threshold=Ambang Batas Keputihan Piksel:
removeBlanks.thresholdDesc=Ambang batas untuk menentukan seberapa putih piksel putih yang harus diklasifikasikan sebagai 'Putih'. 0=Hitam, 255 putih murni. removeBlanks.thresholdDesc=Ambang batas untuk menentukan seberapa putih piksel putih yang harus diklasifikasikan sebagai 'Putih'. 0=Hitam, 255 putih murni.
removeBlanks.whitePercent=Persen Putih (%): removeBlanks.whitePercent=Persen Putih (%):
@@ -781,27 +778,24 @@ removeAnnotations.submit=Hapus
#compare #compare
compare.title=Bandingkan compare.title=Bandingkan
compare.header=Bandingkan PDF compare.header=Bandingkan PDF
compare.highlightColor.1=Warna Sorotan 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=Warna Sorotan 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=Dokumen 1 compare.document.1=Dokumen 1
compare.document.2=Dokumen 2 compare.document.2=Dokumen 2
compare.submit=Bandingkan compare.submit=Bandingkan
compare.complex.message=Satu atau kedua dokumen yang disediakan adalah file besar, keakuratan perbandingan mungkin berkurang
compare.large.file.message=Satu atau Kedua dokumen yang disediakan terlalu besar untuk diproses
compare.no.text.message=Satu atau kedua PDF yang dipilih tidak memiliki konten teks. Pilih PDF dengan teks untuk perbandingan.
#BookToPDF #BookToPDF
BookToPDF.title=Buku dan Komik ke PDF BookToPDF.title=Books and Comics to PDF
BookToPDF.header=Buku ke PDF BookToPDF.header=Book to PDF
BookToPDF.credit=Menggunakan Calibre BookToPDF.credit=Uses Calibre
BookToPDF.submit=Konversi BookToPDF.submit=Convert
#PDFToBook #PDFToBook
PDFToBook.title=PDF ke Buku PDFToBook.title=PDF to Book
PDFToBook.header=PDF ke Buku PDFToBook.header=PDF to Book
PDFToBook.selectText.1=Format PDFToBook.selectText.1=Format
PDFToBook.credit=Menggunakan Calibre PDFToBook.credit=Uses Calibre
PDFToBook.submit=Konversi PDFToBook.submit=Convert
#sign #sign
sign.title=Tanda sign.title=Tanda
@@ -811,11 +805,6 @@ sign.draw=Gambar Tanda Tangan
sign.text=Masukan Teks sign.text=Masukan Teks
sign.clear=Hapus sign.clear=Hapus
sign.add=Tambah sign.add=Tambah
sign.saved=Tanda Tangan Disimpan
sign.save=Simpan Tanda Tangan
sign.personalSigs=Tanda Tangan Pribadi
sign.sharedSigs=Tanda Tangan Berbagi
sign.noSavedSigs=Tidak ditemukan tanda tangan yang disimpan
#repair #repair
@@ -827,7 +816,7 @@ repair.submit=Perbaiki
#flatten #flatten
flatten.title=Ratakan flatten.title=Ratakan
flatten.header=Ratakan PDF flatten.header=Ratakan PDF
flatten.flattenOnlyForms=Ratakan hanya formulir flatten.flattenOnlyForms=Flatten only forms
flatten.submit=Ratakan flatten.submit=Ratakan
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=Area Kontur Minimum:
ScannerImageSplit.selectText.8=Menetapkan ambang batas area kontur minimum untuk foto ScannerImageSplit.selectText.8=Menetapkan ambang batas area kontur minimum untuk foto
ScannerImageSplit.selectText.9=Ukuran Batas: ScannerImageSplit.selectText.9=Ukuran Batas:
ScannerImageSplit.selectText.10=Menetapkan ukuran batas yang ditambahkan dan dihapus untuk mencegah batas putih pada output (default: 1). ScannerImageSplit.selectText.10=Menetapkan ukuran batas yang ditambahkan dan dihapus untuk mencegah batas putih pada output (default: 1).
ScannerImageSplit.info=Python tidak terinstal. Ini diperlukan untuk menjalankan. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=Memproses PDF dengan OCR
extractImages.title=Ekstrak Gambar extractImages.title=Ekstrak Gambar
extractImages.header=Mengekstrak Gambar extractImages.header=Mengekstrak Gambar
extractImages.selectText=Pilih format gambar yang akan dikonversi extractImages.selectText=Pilih format gambar yang akan dikonversi
extractImages.allowDuplicates=Simpan Gambar Duplikat extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Ekstrak extractImages.submit=Ekstrak
@@ -877,7 +866,7 @@ extractImages.submit=Ekstrak
fileToPDF.title=Berkas ke PDF fileToPDF.title=Berkas ke PDF
fileToPDF.header=Mengonversi berkas apa pun ke PDF fileToPDF.header=Mengonversi berkas apa pun ke PDF
fileToPDF.credit=Layanan ini menggunakan LibreOffice dan Unoconv untuk konversi berkas. fileToPDF.credit=Layanan ini menggunakan LibreOffice dan Unoconv untuk konversi berkas.
fileToPDF.supportedFileTypesInfo=Jenis File Dukungan fileToPDF.supportedFileTypesInfo=Supported File types
fileToPDF.supportedFileTypes=Jenis berkas yang didukung harus mencakup yang di bawah ini, namun untuk daftar lengkap format yang didukung, silakan lihat dokumentasi LibreOffice fileToPDF.supportedFileTypes=Jenis berkas yang didukung harus mencakup yang di bawah ini, namun untuk daftar lengkap format yang didukung, silakan lihat dokumentasi LibreOffice
fileToPDF.submit=Konversi ke PDF fileToPDF.submit=Konversi ke PDF
@@ -907,7 +896,7 @@ merge.title=Gabungkan
merge.header=Gabungkan beberapa PDFs (2+) merge.header=Gabungkan beberapa PDFs (2+)
merge.sortByName=Sortir berdasarkan nama merge.sortByName=Sortir berdasarkan nama
merge.sortByDate=Sortir berdasrkan tanggal merge.sortByDate=Sortir berdasrkan tanggal
merge.removeCertSign=Hapus tanda tangan digital dalam file yang dicampur? merge.removeCertSign=Remove digital signature in the merged file?
merge.submit=Gabungkan merge.submit=Gabungkan
@@ -916,23 +905,23 @@ pdfOrganiser.title=Pengaturan Halaman
pdfOrganiser.header=Pengaturan Halaman PDF pdfOrganiser.header=Pengaturan Halaman PDF
pdfOrganiser.submit=Susun ulang halaman pdfOrganiser.submit=Susun ulang halaman
pdfOrganiser.mode=Mode pdfOrganiser.mode=Mode
pdfOrganiser.mode.1=Urutan Halaman Kustom pdfOrganiser.mode.1=Custom Page Order
pdfOrganiser.mode.2=Urutan Terbalik pdfOrganiser.mode.2=Reverse Order
pdfOrganiser.mode.3=Sortir Duplex pdfOrganiser.mode.3=Duplex Sort
pdfOrganiser.mode.4=Sortir Buku pdfOrganiser.mode.4=Booklet Sort
pdfOrganiser.mode.5=Sortir Buku Jahitan Samping pdfOrganiser.mode.5=Side Stitch Booklet Sort
pdfOrganiser.mode.6=Pemisahan Genap-Ganjil pdfOrganiser.mode.6=Odd-Even Split
pdfOrganiser.mode.7=Hapus Pertama pdfOrganiser.mode.7=Remove First
pdfOrganiser.mode.8=Hapus Terakhir pdfOrganiser.mode.8=Remove Last
pdfOrganiser.mode.9=Hapus Pertama dan Terakhir pdfOrganiser.mode.9=Remove First and Last
pdfOrganiser.mode.10=Penggabungan Genap-Ganjil pdfOrganiser.mode.10=Odd-Even Merge
pdfOrganiser.placeholder=(misalnya 1,3,2 atau 4-8,2,10-12 atau 2n-1) pdfOrganiser.placeholder=(e.g. 1,3,2 or 4-8,2,10-12 or 2n-1)
#multiTool #multiTool
multiTool.title=Alat Multi PDF multiTool.title=Alat Multi PDF
multiTool.header=Alat Multi PDF multiTool.header=Alat Multi PDF
multiTool.uploadPrompts=Nama Berkas multiTool.uploadPrompts=File Name
#view pdf #view pdf
viewPdf.title=Lihat PDF viewPdf.title=Lihat PDF
@@ -943,7 +932,7 @@ pageRemover.title=Penghapus Halaman
pageRemover.header=Penghapus Halaman PDF pageRemover.header=Penghapus Halaman PDF
pageRemover.pagesToDelete=Halaman yang akan dihapus (Masukkan daftar nomor halaman yang dipisahkan dengan koma) : pageRemover.pagesToDelete=Halaman yang akan dihapus (Masukkan daftar nomor halaman yang dipisahkan dengan koma) :
pageRemover.submit=Hapus Halaman pageRemover.submit=Hapus Halaman
pageRemover.placeholder=(misalnya 1,2,6 atau 1-10,15-30) pageRemover.placeholder=(e.g. 1,2,6 or 1-10,15-30)
#rotate #rotate
@@ -994,7 +983,7 @@ pdfToImage.color=Warna
pdfToImage.grey=Skala abu-abu pdfToImage.grey=Skala abu-abu
pdfToImage.blackwhite=Black and White (Bisa kehilangan data!) pdfToImage.blackwhite=Black and White (Bisa kehilangan data!)
pdfToImage.submit=Konversi pdfToImage.submit=Konversi
pdfToImage.info=Python tidak terinstal. Diperlukan untuk konversi WebP. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1028,13 +1017,13 @@ watermark.selectText.3=Ukuran Huruf:
watermark.selectText.4=Rotasi (0-360): watermark.selectText.4=Rotasi (0-360):
watermark.selectText.5=widthSpacer (Spasi diantara setiap watermark horisontal): watermark.selectText.5=widthSpacer (Spasi diantara setiap watermark horisontal):
watermark.selectText.6=heightSpacer (Spasi diantara setiap watermark vertikal): watermark.selectText.6=heightSpacer (Spasi diantara setiap watermark vertikal):
watermark.selectText.7=Kejernihan (0% - 100%): watermark.selectText.7=Opacity (0% - 100%):
watermark.selectText.8=Tipe Watermark: watermark.selectText.8=Tipe Watermark:
watermark.selectText.9=Gambar Watermark: watermark.selectText.9=Gambar Watermark:
watermark.selectText.10=Konversi PDF ke PDF-Image watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=Tambahkan Watermark watermark.submit=Tambahkan Watermark
watermark.type.1=Teks watermark.type.1=Text
watermark.type.2=Gambar watermark.type.2=Image
#Change permissions #Change permissions
@@ -1072,7 +1061,7 @@ changeMetadata.author=Penulis:
changeMetadata.creationDate=Tanggal Dibuat (yyyy/MM/dd HH:mm:ss): changeMetadata.creationDate=Tanggal Dibuat (yyyy/MM/dd HH:mm:ss):
changeMetadata.creator=Pencipta: changeMetadata.creator=Pencipta:
changeMetadata.keywords=Kata kunci: changeMetadata.keywords=Kata kunci:
changeMetadata.modDate=Tangal Diperbarui (yyyy/MM/dd HH:mm:ss): changeMetadata.modDate=Tangal Diupdate (yyyy/MM/dd HH:mm:ss):
changeMetadata.producer=Produser: changeMetadata.producer=Produser:
changeMetadata.subject=Subjek: changeMetadata.subject=Subjek:
changeMetadata.trapped=Terperangkap: changeMetadata.trapped=Terperangkap:
@@ -1086,13 +1075,13 @@ pdfToPDFA.title=PDF Ke PDF/A
pdfToPDFA.header=PDF ke PDF/A pdfToPDFA.header=PDF ke PDF/A
pdfToPDFA.credit=Layanan ini menggunakan ghostscript untuk konversi PDF/A. pdfToPDFA.credit=Layanan ini menggunakan ghostscript untuk konversi PDF/A.
pdfToPDFA.submit=Konversi pdfToPDFA.submit=Konversi
pdfToPDFA.tip=Saat ini tidak dapat digunakan untuk beberapa input sekaligus pdfToPDFA.tip=Currently does not work for multiple inputs at once
pdfToPDFA.outputFormat=Format keluaran pdfToPDFA.outputFormat=Output format
pdfToPDFA.pdfWithDigitalSignature=PDF ini mengandung tanda tangan digital. Ini akan dihapus pada langkah berikutnya. pdfToPDFA.pdfWithDigitalSignature=The PDF contains a digital signature. This will be removed in the next step.
#PDFToWord #PDFToWord
PDFToWord.title=PDF ke Word PDFToWord.title=PDF Ke Word
PDFToWord.header=PDF ke Word PDFToWord.header=PDF ke Word
PDFToWord.selectText.1=Hasil format berkas PDFToWord.selectText.1=Hasil format berkas
PDFToWord.credit=Layanan ini menggunakan LibreOffice untuk konversi berkas. PDFToWord.credit=Layanan ini menggunakan LibreOffice untuk konversi berkas.
@@ -1108,7 +1097,7 @@ PDFToPresentation.submit=Konversi
#PDFToText #PDFToText
PDFToText.title=PDF ke RTF (Text) PDFToText.title=PDF Ke RTF (Text)
PDFToText.header=PDF ke RTF (Text) PDFToText.header=PDF ke RTF (Text)
PDFToText.selectText.1=Hasil format berkas PDFToText.selectText.1=Hasil format berkas
PDFToText.credit=Layanan ini menggunakan LibreOffice untuk konversi berkas. PDFToText.credit=Layanan ini menggunakan LibreOffice untuk konversi berkas.
@@ -1116,20 +1105,20 @@ PDFToText.submit=Konversi
#PDFToHTML #PDFToHTML
PDFToHTML.title=PDF ke HTML PDFToHTML.title=PDF Ke HTML
PDFToHTML.header=PDF ke HTML PDFToHTML.header=PDF ke HTML
PDFToHTML.credit=Layanan ini menggunakan pdftohtml untuk konversi berkas. PDFToHTML.credit=Layanan ini menggunakan pdftohtml untuk konversi berkas.
PDFToHTML.submit=Konversi PDFToHTML.submit=Konversi
#PDFToXML #PDFToXML
PDFToXML.title=PDF ke XML PDFToXML.title=PDF Ke XML
PDFToXML.header=PDF ke XML PDFToXML.header=PDF ke XML
PDFToXML.credit=Layanan ini menggunakan LibreOffice untuk konversi berkas. PDFToXML.credit=Layanan ini menggunakan LibreOffice untuk konversi berkas.
PDFToXML.submit=Konversi PDFToXML.submit=Konversi
#PDFToCSV #PDFToCSV
PDFToCSV.title=PDF ke CSV PDFToCSV.title=PDF Ke CSV
PDFToCSV.header=PDF ke CSV PDFToCSV.header=PDF ke CSV
PDFToCSV.prompt=Pilih halaman untuk mengambil tabel PDFToCSV.prompt=Pilih halaman untuk mengambil tabel
PDFToCSV.submit=Ektraksi PDFToCSV.submit=Ektraksi
@@ -1170,65 +1159,67 @@ split-by-sections.vertical.label=Pembagian Vertikal
split-by-sections.horizontal.placeholder=Input angka untuk pembagian horizontal split-by-sections.horizontal.placeholder=Input angka untuk pembagian horizontal
split-by-sections.vertical.placeholder=Input angka untuk pembagian vertikal split-by-sections.vertical.placeholder=Input angka untuk pembagian vertikal
split-by-sections.submit=Pisahkan PDF split-by-sections.submit=Pisahkan PDF
split-by-sections.merge=Gabung Menjadi Berkas PDF Tunggal split-by-sections.merge=Merge Into One PDF
#printFile #printFile
printFile.title=Cetak File printFile.title=Print File
printFile.header=Cetak File ke Printer printFile.header=Print File to Printer
printFile.selectText.1=Pilih File untuk Dicetak printFile.selectText.1=Select File to Print
printFile.selectText.2=Masukkan Nama Printer printFile.selectText.2=Enter Printer Name
printFile.submit=Cetak printFile.submit=Print
#licenses #licenses
licenses.nav=Lisensi licenses.nav=Licenses
licenses.title=Lisensi Pihak Ketiga licenses.title=3rd Party Licenses
licenses.header=Lisensi Pihak Ketiga licenses.header=3rd Party Licenses
licenses.module=Modul licenses.module=Module
licenses.version=Versi licenses.version=Version
licenses.license=Lisensi licenses.license=License
#survey #survey
survey.nav=Survei survey.nav=Survey
survey.title=Survei Stirling-PDF survey.title=Stirling-PDF Survey
survey.description=Stirling-PDF tidak memiliki pelacakan, jadi kami ingin mendengar dari pengguna kami untuk meningkatkan Stirling-PDF! survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF!
survey.changes=Stirling-PDF telah berubah sejak survei terakhir! Untuk mengetahui lebih lanjut, silakan periksa posting blog kami di sini: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=Dengan perubahan ini, kami mendapatkan dukungan bisnis yang dibayar dan pendanaan survey.changes2=With these changes we are getting paid business support and funding
survey.please=Silakan pertimbangkan untuk mengikuti survei kami! survey.please=Please consider taking our survey!
survey.disabled=(Popup survei akan dinonaktifkan dalam pembaruan berikutnya tetapi tersedia di bagian bawah halaman) survey.disabled=(Survey popup will be disabled in following updates but available at foot of page)
survey.button=Ikuti Survei survey.button=Take Survey
survey.dontShowAgain=Jangan tampilkan lagi survey.dontShowAgain=Don't show again
#error #error
error.sorry=Maaf atas masalah ini! error.sorry=Sorry for the issue!
error.needHelp=Butuh bantuan / Menemukan masalah? error.needHelp=Need help / Found an issue?
error.contactTip=Jika Anda masih mengalami kesulitan, jangan ragu untuk menghubungi kami untuk bantuan. Anda dapat mengirim tiket di halaman GitHub kami atau menghubungi kami melalui Discord: error.contactTip=If you're still having trouble, don't hesitate to reach out to us for help. You can submit a ticket on our GitHub page or contact us through Discord:
error.404.head=404 - Halaman Tidak Ditemukan | Ups, kami tersandung dalam kode! error.404.head=404 - Page Not Found | Oops, we tripped in the code!
error.404.1=Kami tidak dapat menemukan halaman yang Anda cari. error.404.1=We can't seem to find the page you're looking for.
error.404.2=Terjadi kesalahan error.404.2=Something went wrong
error.github=Kirim tiket di GitHub error.github=Submit a ticket on GitHub
error.showStack=Tampilkan Stack Trace error.showStack=Show Stack Trace
error.copyStack=Salin Stack Trace error.copyStack=Copy Stack Trace
error.githubSubmit=GitHub - Kirim tiket error.githubSubmit=GitHub - Submit a ticket
error.discordSubmit=Discord - Kirim pos dukungan error.discordSubmit=Discord - Submit Support post
#remove-image #remove-image
removeImage.title=Hapus gambar removeImage.title=Remove image
removeImage.header=Hapus gambar removeImage.header=Remove image
removeImage.removeImage=Hapus gambar removeImage.removeImage=Remove image
removeImage.submit=Hapus gambar removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=Pecah PDF berdasarkan Bab
splitByChapters.header=Pecah PDF berdasarkan Bab
splitByChapters.bookmarkLevel=Tingkatan Markah
splitByChapters.includeMetadata=Termasuk Metadata
splitByChapters.allowDuplicates=Izinkan Duplikat
splitByChapters.desc.1=Alat ini membagi file PDF menjadi beberapa PDF berdasarkan struktur babnya.
splitByChapters.desc.2=Tingkatan Markah: Pilih tingkatan markah yang digunakan untuk membagi (0 untuk tingkat atas, 1 untuk tingkat kedua, dll.).
splitByChapters.desc.3=Termasuk Metadata: Jika dicentang, metadata asli PDF akan disertakan dalam setiap PDF yang dibagi.
splitByChapters.desc.4=Izinkan Duplikat: Jika dicentang, mengizinkan beberapa markah pada halaman yang sama untuk membuat PDF terpisah.
splitByChapters.submit=Pecah PDF

View File

@@ -27,7 +27,7 @@ bored=Stanco di aspettare?
alphabet=Alfabeto alphabet=Alfabeto
downloadPdf=Scarica PDF downloadPdf=Scarica PDF
text=Testo text=Testo
font=Fonte font=Font
selectFillter=-- Seleziona -- selectFillter=-- Seleziona --
pageNum=Numero pagina pageNum=Numero pagina
sizes.small=Piccolo sizes.small=Piccolo
@@ -79,8 +79,6 @@ info=Info
pro=Pro pro=Pro
page=Pagina page=Pagina
pages=Pagine pages=Pagine
loading=Caricamento...
addToDoc=Aggiungi al documento
legal.privacy=Informativa sulla privacy legal.privacy=Informativa sulla privacy
legal.terms=Termini e Condizioni legal.terms=Termini e Condizioni
@@ -110,7 +108,7 @@ pipelineOptions.pipelineNamePrompt=Inserisci qui il nome della pipeline
pipelineOptions.selectOperation=Seleziona operazione pipelineOptions.selectOperation=Seleziona operazione
pipelineOptions.addOperationButton=Aggiungi operazione pipelineOptions.addOperationButton=Aggiungi operazione
pipelineOptions.pipelineHeader=Pipeline: pipelineOptions.pipelineHeader=Pipeline:
pipelineOptions.saveButton=Salva pipelineOptions.saveButton=Download
pipelineOptions.validateButton=Convalidare pipelineOptions.validateButton=Convalidare
######################## ########################
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=Converti da PDF
navbar.sections.security=Firma & Sicurezza navbar.sections.security=Firma & Sicurezza
navbar.sections.advance=Avanzate navbar.sections.advance=Avanzate
navbar.sections.edit=Visualizza & Modifica navbar.sections.edit=Visualizza & Modifica
navbar.sections.popular=Popolare navbar.sections.popular=Populare
############# #############
# SETTINGS # # SETTINGS #
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=Il file non deve essere nullo o vuoto
database.failedImportFile=Importazione file non riuscita database.failedImportFile=Importazione file non riuscita
session.expired=La tua sessione è scaduta. Aggiorna la pagina e riprova. session.expired=La tua sessione è scaduta. Aggiorna la pagina e riprova.
session.refreshPage=Aggiorna pagina
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=L'utente è disattivato, l'accesso è attualmente bloccato
login.alreadyLoggedIn=Hai già effettuato l'accesso a login.alreadyLoggedIn=Hai già effettuato l'accesso a
login.alreadyLoggedIn2=dispositivi. Esci dai dispositivi e riprova. login.alreadyLoggedIn2=dispositivi. Esci dai dispositivi e riprova.
login.toManySessions=Hai troppe sessioni attive login.toManySessions=Hai troppe sessioni attive
login.toManySessions2=Si prega di uscire dai dispositivi e riprovare. In alternativa, è possibile effettuare l'upgrade a Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Redazione automatica autoRedact.title=Redazione automatica
@@ -751,7 +749,6 @@ certSign.showSig=Mostra firma
certSign.reason=Motivo certSign.reason=Motivo
certSign.location=Posizione certSign.location=Posizione
certSign.name=Nome certSign.name=Nome
certSign.showLogo=Mostra Logo
certSign.submit=Firma PDF certSign.submit=Firma PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Evidenzia colore 2:
compare.document.1=Documento 1 compare.document.1=Documento 1
compare.document.2=Documento 2 compare.document.2=Documento 2
compare.submit=Compara compare.submit=Compara
compare.complex.message=Uno o entrambi i documenti forniti sono file di grandi dimensioni, l'accuratezza del confronto potrebbe risultare ridotta
compare.large.file.message=Uno o entrambi i documenti forniti sono troppo grandi per essere elaborati
compare.no.text.message=Uno o entrambi i PDF selezionati non hanno contenuto di testo. Si prega di scegliere PDF con testo per il confronto.
#BookToPDF #BookToPDF
BookToPDF.title=Libri e fumetti in PDF BookToPDF.title=Libri e fumetti in PDF
@@ -811,11 +805,6 @@ sign.draw=Disegna Firma
sign.text=Testo sign.text=Testo
sign.clear=Cancella sign.clear=Cancella
sign.add=Aggiungi sign.add=Aggiungi
sign.saved=Firme salvate
sign.save=Firma salvata
sign.personalSigs=Firme personali
sign.sharedSigs=Firme condivise
sign.noSavedSigs=Nessuna firma salvata trovata
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Livello segnalibro: seleziona il livello dei segnalibri d
splitByChapters.desc.3=Includi metadati: se selezionato, i metadati del PDF originale verranno inclusi in ogni PDF diviso. splitByChapters.desc.3=Includi metadati: se selezionato, i metadati del PDF originale verranno inclusi in ogni PDF diviso.
splitByChapters.desc.4=Consenti duplicati: se selezionata, consente più segnalibri sulla stessa pagina per creare PDF separati. splitByChapters.desc.4=Consenti duplicati: se selezionata, consente più segnalibri sulla stessa pagina per creare PDF separati.
splitByChapters.submit=Dividi PDF splitByChapters.submit=Dividi PDF

View File

@@ -79,8 +79,6 @@ info=Info
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=プライバシーポリシー legal.privacy=プライバシーポリシー
legal.terms=利用規約 legal.terms=利用規約
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=ファイルは null または空であってはなり
database.failedImportFile=ファイルのインポートに失敗 database.failedImportFile=ファイルのインポートに失敗
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=ユーザーは非アクティブ化されており、現
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=自動塗りつぶし autoRedact.title=自動塗りつぶし
@@ -751,7 +749,6 @@ certSign.showSig=署名を表示
certSign.reason=理由 certSign.reason=理由
certSign.location=場所 certSign.location=場所
certSign.name=名前 certSign.name=名前
certSign.showLogo=Show Logo
certSign.submit=PDFに署名 certSign.submit=PDFに署名
@@ -786,9 +783,6 @@ compare.highlightColor.2=ハイライトカラー 2:
compare.document.1=ドキュメント 1 compare.document.1=ドキュメント 1
compare.document.2=ドキュメント 2 compare.document.2=ドキュメント 2
compare.submit=比較 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.
#BookToPDF #BookToPDF
BookToPDF.title=書籍やコミックをPDFに変換 BookToPDF.title=書籍やコミックをPDFに変換
@@ -811,11 +805,6 @@ sign.draw=署名を書く
sign.text=テキスト入力 sign.text=テキスト入力
sign.clear=クリア sign.clear=クリア
sign.add=追加 sign.add=追加
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=폰트 크기 addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=폰트 이름 addPageNumbers.fontName=Font Name
pdfPrompt=PDF 파일 선택 pdfPrompt=PDF 파일 선택
multiPdfPrompt=여러 PDF 파일 선택 multiPdfPrompt=여러 PDF 파일 선택
multiPdfDropPrompt=사용할 모든 PDF 문서를 선택(또는 드래그 앤 드롭)합니다 multiPdfDropPrompt=사용할 모든 PDF 문서를 선택(또는 드래그 앤 드롭)합니다
@@ -47,7 +47,7 @@ green=녹색
blue=파랑 blue=파랑
custom=관습... custom=관습...
WorkInProgess=작업 진행 중, 작동하지 않거나 버그가 있을 수 있음, 문제가 있으면 보고하십시오! WorkInProgess=작업 진행 중, 작동하지 않거나 버그가 있을 수 있음, 문제가 있으면 보고하십시오!
poweredBy=제공 poweredBy=Powered by
yes= yes=
no=아니요 no=아니요
changedCredsMessage=계정 정보 변경 성공! changedCredsMessage=계정 정보 변경 성공!
@@ -56,15 +56,15 @@ userNotFoundMessage=사용자를 찾을 수 없습니다.
incorrectPasswordMessage=현재 비밀번호가 틀립니다. incorrectPasswordMessage=현재 비밀번호가 틀립니다.
usernameExistsMessage=새 사용자명이 이미 존재합니다. usernameExistsMessage=새 사용자명이 이미 존재합니다.
invalidUsernameMessage=잘못된 사용자 이름입니다. 사용자 이름에는 문자, 숫자 및 다음 특수 문자(@._+-)만 포함할 수 있거나 유효한 이메일 주소여야 합니다. invalidUsernameMessage=잘못된 사용자 이름입니다. 사용자 이름에는 문자, 숫자 및 다음 특수 문자(@._+-)만 포함할 수 있거나 유효한 이메일 주소여야 합니다.
invalidPasswordMessage=비밀번호는 빈칸일 수 없습니다. 또한 시작이나 끝에 공백을 가질 수 없습니다. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=새 비밀번호와 새 비밀번호 확인이 일치하지 않습니다. confirmPasswordErrorMessage=New Password and Confirm New Password must match.
deleteCurrentUserMessage=현재 로그인한 사용자를 삭제할 수 없습니다. deleteCurrentUserMessage=현재 로그인한 사용자를 삭제할 수 없습니다.
deleteUsernameExistsMessage=사용자 이름이 존재하지 않으며 삭제할 수 없습니다. deleteUsernameExistsMessage=사용자 이름이 존재하지 않으며 삭제할 수 없습니다.
downgradeCurrentUserMessage=현재 사용자의 역할을 다운그레이드할 수 없습니다 downgradeCurrentUserMessage=현재 사용자의 역할을 다운그레이드할 수 없습니다
disabledCurrentUserMessage=현재 사용자는 비활성화할 수 없습니다 disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=현재 사용자의 역할을 다운그레이드할 수 없습니다. 따라서 현재 사용자는 표시되지 않습니다. downgradeCurrentUserLongMessage=현재 사용자의 역할을 다운그레이드할 수 없습니다. 따라서 현재 사용자는 표시되지 않습니다.
userAlreadyExistsOAuthMessage=이미 OAuth2 사용자로 등록되어 있습니다. userAlreadyExistsOAuthMessage=The user already exists as an OAuth2 user.
userAlreadyExistsWebMessage=이미 웹 사용자로 등록되어 있습니다. userAlreadyExistsWebMessage=The user already exists as an web user.
error=오류 error=오류
oops=어머나! oops=어머나!
help=도움말 help=도움말
@@ -75,18 +75,16 @@ visitGithub=GitHub 저장소 방문하기
donate=기부하기 donate=기부하기
color=색상 color=색상
sponsor=스폰서 sponsor=스폰서
info=정보 info=Info
pro=프로 pro=Pro
page=페이지 page=Page
pages=페이지 pages=Pages
loading=로딩 중...
addToDoc=문서에 추가
legal.privacy=개인 정보 정책 legal.privacy=Privacy Policy
legal.terms=이용 약관 legal.terms=Terms and Conditions
legal.accessibility=접근성 legal.accessibility=Accessibility
legal.cookie=쿠키 정책 legal.cookie=Cookie Policy
legal.impressum=임프레스무 legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -98,7 +96,7 @@ pipeline.defaultOption=관습
pipeline.submitButton=전송 pipeline.submitButton=전송
pipeline.help=파이프라인 도움말 pipeline.help=파이프라인 도움말
pipeline.scanHelp=폴더 스캔 도움말 pipeline.scanHelp=폴더 스캔 도움말
pipeline.deletePrompt=프로젝트 파이프라인을 삭제하시겠습니까? pipeline.deletePrompt=Are you sure you want to delete pipeline
###################### ######################
# Pipeline Options # # Pipeline Options #
@@ -116,45 +114,45 @@ pipelineOptions.validateButton=확인
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=프로페셔널 버전으로 업그레이드 enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=이 기능은 프로 버전 사용자만 이용 가능합니다. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=스털링 PDF 프로버전은 YAML 구성 파일과 기타 SSO 기능을 지원합니다. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=스털링 PDF를 더 나은 서비스로 발전시키고 싶으신가요? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=스털링 PDF는 사용자 정보 및 파일 내용을 추적하지 않는 제품 개선을 위한 옵인 애널리틱스 기능을 제공합니다. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=애널리틱스 기능을 활성화해 주셔서 스<>털링-PDF가 성장하고 우리 사용자를 더 잘 이해할 수 있도록 도와주세요. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=애널리틱스 활성화 analytics.enable=Enable analytics
analytics.disable=애널리틱스 비활성화 analytics.disable=Disable analytics
analytics.settings=애널리틱스 설정은 config/settings.yml 파일에서 변경하실 수 있습니다. analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
############# #############
navbar.favorite=즐겨찾기 navbar.favorite=Favorites
navbar.darkmode=다크 모드 navbar.darkmode=다크 모드
navbar.language=언어 navbar.language=Languages
navbar.settings=설정 navbar.settings=설정
navbar.allTools=도구 navbar.allTools=Tools
navbar.multiTool=Multi Tools navbar.multiTool=Multi Tools
navbar.sections.organize=조직 navbar.sections.organize=Organize
navbar.sections.convertTo=PDF로 변환 navbar.sections.convertTo=Convert to PDF
navbar.sections.convertFrom=PDF에서 변환 navbar.sections.convertFrom=Convert from PDF
navbar.sections.security=서명 & 보안 navbar.sections.security=Sign & Security
navbar.sections.advance=고급 navbar.sections.advance=Advanced
navbar.sections.edit=보기 & 편집 navbar.sections.edit=View & Edit
navbar.sections.popular=인기 navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
############# #############
settings.title=설정 settings.title=설정
settings.update=업데이트 가능 settings.update=업데이트 가능
settings.updateAvailable={0}는 현재 설치된 버전입니다. 새로운 버전 ({1})이 있습니다. settings.updateAvailable={0} is the current installed version. A new version ({1}) is available.
settings.appVersion=앱 버전: settings.appVersion=앱 버전:
settings.downloadOption.title=다운로드 옵션 선택 (zip 파일이 아닌 단일 파일 다운로드 시): settings.downloadOption.title=다운로드 옵션 선택 (zip 파일이 아닌 단일 파일 다운로드 시):
settings.downloadOption.1=현재 창에서 열기 settings.downloadOption.1=현재 창에서 열기
@@ -163,9 +161,9 @@ settings.downloadOption.3=다운로드
settings.zipThreshold=다운로드한 파일 수가 초과된 경우 파일 압축하기 settings.zipThreshold=다운로드한 파일 수가 초과된 경우 파일 압축하기
settings.signOut=로그아웃 settings.signOut=로그아웃
settings.accountSettings=계정 설정 settings.accountSettings=계정 설정
settings.bored.help=알라딘 게임을 활성화합니다 settings.bored.help=Enables easter egg game
settings.cacheInputs.name=입력 저장 settings.cacheInputs.name=Save form inputs
settings.cacheInputs.help=사용한 입력을 다음 실행에 저장하기 위해 활성화 settings.cacheInputs.help=Enable to store previously used inputs for future runs
changeCreds.title=계정 정보 변경 changeCreds.title=계정 정보 변경
changeCreds.header=계정 정보 업데이트 changeCreds.header=계정 정보 업데이트
@@ -204,9 +202,9 @@ adminUserSettings.header=사용자 관리
adminUserSettings.admin=관리자 adminUserSettings.admin=관리자
adminUserSettings.user=사용자 adminUserSettings.user=사용자
adminUserSettings.addUser=새 사용자 추가 adminUserSettings.addUser=새 사용자 추가
adminUserSettings.deleteUser=유저 삭제 adminUserSettings.deleteUser=Delete User
adminUserSettings.confirmDeleteUser=이 유저를 삭제하시겠습니까? adminUserSettings.confirmDeleteUser=Should the user be deleted?
adminUserSettings.confirmChangeUserStatus=이 유저의 상태를 변경하시겠습니까? adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=사용자 이름은 문자, 숫자, 특수 문자 @._+-만 포함할 수 있으며 유효한 이메일 주소여야 합니다. adminUserSettings.usernameInfo=사용자 이름은 문자, 숫자, 특수 문자 @._+-만 포함할 수 있으며 유효한 이메일 주소여야 합니다.
adminUserSettings.roles=역할 adminUserSettings.roles=역할
adminUserSettings.role=역할 adminUserSettings.role=역할
@@ -219,34 +217,33 @@ adminUserSettings.internalApiUser=내부 API 사용자
adminUserSettings.forceChange=다음 로그인 때 사용자명과 비밀번호를 변경하도록 강제 adminUserSettings.forceChange=다음 로그인 때 사용자명과 비밀번호를 변경하도록 강제
adminUserSettings.submit=사용자 저장 adminUserSettings.submit=사용자 저장
adminUserSettings.changeUserRole=사용자의 역할 변경 adminUserSettings.changeUserRole=사용자의 역할 변경
adminUserSettings.authenticated=인증됨 adminUserSettings.authenticated=Authenticated
adminUserSettings.editOwnProfil=자신의 프로필 편집 adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=활성화된 사용자 adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=비활성화된 사용자 adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=활성화된 사용자: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=비활성화된 사용자: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=총 사용자 수: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=최근 요청 adminUserSettings.lastRequest=Last Request
database.title=데이터베이스 내보내기/임포트 database.title=Database Import/Export
database.header=데이터베이스 내보내기/임포트 database.header=Database Import/Export
database.fileName=파일 이름 database.fileName=File Name
database.creationDate=생성 날짜 database.creationDate=Creation Date
database.fileSize=파일 크기 database.fileSize=File Size
database.deleteBackupFile=백업 파일 삭제 database.deleteBackupFile=Delete Backup File
database.importBackupFile=백업 파일 가져오기 database.importBackupFile=Import Backup File
database.downloadBackupFile=백업 파일 다운로드 database.downloadBackupFile=Download Backup File
database.info_1=데이터를 가져올 때 적절한 구조가 중요합니다. 자신이 무엇을 하는지 확실하지 않다면 전문가의 조언과 지원을 청하는 것이 좋습니다. 구조에 오류가 있으면 애플리케이션 기능 실패나 애플리케이션이 완전히 작동하지 못하게 되는 등의 문제를 초래할 수 있습니다. database.info_1=When importing data, it is crucial to ensure the correct structure. If you are unsure of what you are doing, seek advice and support from a professional. An error in the structure can cause application malfunctions, up to and including the complete inability to run the application.
database.info_2=업로드 시 파일 이름은 중요하지 않습니다. 후에 backup_user_yyyyMMddHHmm.sql 형식으로 다시 지정되어 일관된 이름 규칙을 유지합니다. database.info_2=The file name does not matter when uploading. It will be renamed afterward to follow the format backup_user_yyyyMMddHHmm.sql, ensuring a consistent naming convention.
database.submit=백업 가져오기 database.submit=Import Backup
database.importIntoDatabaseSuccessed=데이터베이스에 성공적으로 가져왔습니다 database.importIntoDatabaseSuccessed=Import into database successed
database.fileNotFound=File not Found database.fileNotFound=File not Found
database.fileNullOrEmpty=파일은 null이나 빈 상태로 될 수 없습니다 database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=세션이 만료되었습니다. 페이지를 새로 고침하고 다시 시도해 주세요. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -257,7 +254,7 @@ home.searchBar=기능 검색...
home.viewPdf.title=PDF 뷰어 home.viewPdf.title=PDF 뷰어
home.viewPdf.desc=PDF 문서을 보고 주석을 달거나, 텍스트 또는 이미지를 추가합니다. home.viewPdf.desc=PDF 문서을 보고 주석을 달거나, 텍스트 또는 이미지를 추가합니다.
viewPdf.tags=보기, 읽기, 표시, 텍스트, 이미지 viewPdf.tags=view,read,annotate,text,image
home.multiTool.title=PDF 멀티 툴 home.multiTool.title=PDF 멀티 툴
home.multiTool.desc=PDF 문서의 페이지를 병합, 회전, 재배열, 제거합니다. home.multiTool.desc=PDF 문서의 페이지를 병합, 회전, 재배열, 제거합니다.
@@ -265,96 +262,96 @@ multiTool.tags=Multi Tool,Multi operation,UI,click drag,front end,client side
home.merge.title=병합 home.merge.title=병합
home.merge.desc=여러 개의 PDF 문서을 쉽게 하나로 합칩니다. home.merge.desc=여러 개의 PDF 문서을 쉽게 하나로 합칩니다.
merge.tags=결합, 페이지 작업, 뒷단, 서버 측 merge.tags=merge,Page operations,Back end,server side
home.split.title=분할 home.split.title=분할
home.split.desc=하나의 PDF 문서을 여러 개의 PDF 문서로 분할합니다. home.split.desc=하나의 PDF 문서을 여러 개의 PDF 문서로 분할합니다.
split.tags=페이지 작업, 분할, 멀티페이지, 자르기, 서버 측 split.tags=Page operations,divide,Multi Page,cut,server side
home.rotate.title=회전 home.rotate.title=회전
home.rotate.desc=PDF 페이지를 회전합니다. home.rotate.desc=PDF 페이지를 회전합니다.
rotate.tags=서버 측 rotate.tags=server side
home.imageToPdf.title=이미지를 PDF로 home.imageToPdf.title=이미지를 PDF로
home.imageToPdf.desc=이미지(PNG, JPEG, GIF)를 PDF 문서로 변환합니다. home.imageToPdf.desc=이미지(PNG, JPEG, GIF)를 PDF 문서로 변환합니다.
imageToPdf.tags=변환, 이미지, jpg, 사진, 사진 imageToPdf.tags=conversion,img,jpg,picture,photo
home.pdfToImage.title=PDF를 이미지로 home.pdfToImage.title=PDF를 이미지로
home.pdfToImage.desc=PDF 문서을 이미지(PNG, JPEG, GIF)로 변환합니다. home.pdfToImage.desc=PDF 문서을 이미지(PNG, JPEG, GIF)로 변환합니다.
pdfToImage.tags=변환, 이미지, jpg, 사진, 사진 pdfToImage.tags=conversion,img,jpg,picture,photo
home.pdfOrganiser.title=정렬 home.pdfOrganiser.title=정렬
home.pdfOrganiser.desc=PDF 문서의 각 페이지를 원하는 순서대로 재배열하거나 제거합니다. home.pdfOrganiser.desc=PDF 문서의 각 페이지를 원하는 순서대로 재배열하거나 제거합니다.
pdfOrganiser.tags=복사, 짝수 페이지, 홀수 페이지, 정렬, 이동 pdfOrganiser.tags=duplex,even,odd,sort,move
home.addImage.title=사진 추가 home.addImage.title=사진 추가
home.addImage.desc=PDF 문서의 설정된 위치에 이미지를 추가합니다. (개발 중) home.addImage.desc=PDF 문서의 설정된 위치에 이미지를 추가합니다. (개발 중)
addImage.tags=이미지, jpg, 사진, 사진 addImage.tags=img,jpg,picture,photo
home.watermark.title=워터마크 추가 home.watermark.title=워터마크 추가
home.watermark.desc=PDF 문서에 사용자 지정 워터마크를 추가합니다. home.watermark.desc=PDF 문서에 사용자 지정 워터마크를 추가합니다.
watermark.tags=텍스트, 반복, 라벨, 소유권, 상표, 이미지, jpg, 사진, 사진 watermark.tags=Text,repeating,label,own,copyright,trademark,img,jpg,picture,photo
home.permissions.title=권한 변경 home.permissions.title=권한 변경
home.permissions.desc=PDF 문서의 권한을 변경합니다. home.permissions.desc=PDF 문서의 권한을 변경합니다.
permissions.tags=읽기, 쓰기, 편집, 인쇄 permissions.tags=read,write,edit,print
home.removePages.title=제거 home.removePages.title=제거
home.removePages.desc=PDF 문서에서 원치 않는 페이지를 제거합니다. home.removePages.desc=PDF 문서에서 원치 않는 페이지를 제거합니다.
removePages.tags=페이지 제거, 삭제 removePages.tags=Remove pages,delete pages
home.addPassword.title=암호 추가 home.addPassword.title=암호 추가
home.addPassword.desc=PDF 문서를 비밀번호로 암호화합니다. home.addPassword.desc=PDF 문서를 비밀번호로 암호화합니다.
addPassword.tags=보안, 안전 addPassword.tags=secure,security
home.removePassword.title=비밀번호 제거 home.removePassword.title=비밀번호 제거
home.removePassword.desc=PDF 문서에서 비밀번호를 제거합니다. home.removePassword.desc=PDF 문서에서 비밀번호를 제거합니다.
removePassword.tags=보안, 복호화, 안전, 비밀번호 해제, 비밀번호 삭제 removePassword.tags=secure,Decrypt,security,unpassword,delete password
home.compressPdfs.title=압축 home.compressPdfs.title=압축
home.compressPdfs.desc=파일 크기를 줄이기 위해 PDF 문서를 압축합니다. home.compressPdfs.desc=파일 크기를 줄이기 위해 PDF 문서를 압축합니다.
compressPdfs.tags=압축, 작게 만드는 compressPdfs.tags=squish,small,tiny
home.changeMetadata.title=메타데이터 변경 home.changeMetadata.title=메타데이터 변경
home.changeMetadata.desc=PDF 문서의 메타데이터를 수정/제거/추가합니다. home.changeMetadata.desc=PDF 문서의 메타데이터를 수정/제거/추가합니다.
changeMetadata.tags=제목, 저자, 날짜, 생성 시간, 출판사, 제작자, 통계 changeMetadata.tags=Title,author,date,creation,time,publisher,producer,stats
home.fileToPDF.title=파일을 PDF로 변환 home.fileToPDF.title=파일을 PDF로 변환
home.fileToPDF.desc=거의 모든 파일을 PDF로 변환합니다(DOCX, PNG, XLS, PPT, TXT 등) home.fileToPDF.desc=거의 모든 파일을 PDF로 변환합니다(DOCX, PNG, XLS, PPT, TXT 등)
fileToPDF.tags=변환, 포맷, 문서, 사진, 슬라이드, 텍스트, 변환, 오피스,-docs, word, excel, powerpoint fileToPDF.tags=transformation,format,document,picture,slide,text,conversion,office,docs,word,excel,powerpoint
home.ocr.title=OCR / 깔끔하게 스캔 home.ocr.title=OCR / 깔끔하게 스캔
home.ocr.desc=깔끔하게 스캔한 뒤, PDF 내의 이미지에서 텍스트를 감지하여 텍스트로 다시 추가합니다. home.ocr.desc=깔끔하게 스캔한 뒤, PDF 내의 이미지에서 텍스트를 감지하여 텍스트로 다시 추가합니다.
ocr.tags=인식, 텍스트, 이미지, 스캔, 읽기, 식별, 감지, 편집 가능한 ocr.tags=recognition,text,image,scan,read,identify,detection,editable
home.extractImages.title=이미지 추출 home.extractImages.title=이미지 추출
home.extractImages.desc=PDF에서 모든 이미지를 추출하여 zip으로 저장합니다. home.extractImages.desc=PDF에서 모든 이미지를 추출하여 zip으로 저장합니다.
extractImages.tags=사진, 스크린샷 저장, 압축, 캡처, 잡아두기 extractImages.tags=picture,photo,save,archive,zip,capture,grab
home.pdfToPDFA.title=PDF를 PDF/A로 변환 home.pdfToPDFA.title=PDF를 PDF/A로 변환
home.pdfToPDFA.desc=장기 보관을 위해 PDF 문서를 PDF/A 문서로 변환합니다. home.pdfToPDFA.desc=장기 보관을 위해 PDF 문서를 PDF/A 문서로 변환합니다.
pdfToPDFA.tags=보관, 장기 보관, 표준화, 변환, 기록 보존 pdfToPDFA.tags=archive,long-term,standard,conversion,storage,preservation
home.PDFToWord.title=PDF를 Word로 home.PDFToWord.title=PDF를 Word로
home.PDFToWord.desc=PDF 문서를 Word 형식으로 변환합니다. (DOC, DOCX, ODT) home.PDFToWord.desc=PDF 문서를 Word 형식으로 변환합니다. (DOC, DOCX, ODT)
PDFToWord.tags=doc, docx, odt, word, 변환, 포맷, 변환, 오피스, microsoft, docfile PDFToWord.tags=doc,docx,odt,word,transformation,format,conversion,office,microsoft,docfile
home.PDFToPresentation.title=PDF를 프리젠테이션으로 home.PDFToPresentation.title=PDF를 프리젠테이션으로
home.PDFToPresentation.desc=PDF 문서를 프리젠테이션 형식으로 변환합니다. (PPT, PPTX, ODP) home.PDFToPresentation.desc=PDF 문서를 프리젠테이션 형식으로 변환합니다. (PPT, PPTX, ODP)
PDFToPresentation.tags=슬라이드, 강의, office, microsoft PDFToPresentation.tags=slides,show,office,microsoft
home.PDFToText.title=PDF to 텍스트/RTF home.PDFToText.title=PDF to 텍스트/RTF
home.PDFToText.desc=PDF 문서를 텍스트 또는 RTF 형식으로 변환합니다. home.PDFToText.desc=PDF 문서를 텍스트 또는 RTF 형식으로 변환합니다.
PDFToText.tags=가이득한 텍스트 형식, 풍부한 텍스트 형식, 풍부한 텍스트 포맷 PDFToText.tags=richformat,richtextformat,rich text format
home.PDFToHTML.title=PDF를 HTML로 home.PDFToHTML.title=PDF를 HTML로
home.PDFToHTML.desc=PDF 문서를 HTML 형식으로 변환합니다. home.PDFToHTML.desc=PDF 문서를 HTML 형식으로 변환합니다.
PDFToHTML.tags=웹 콘텐츠, 브라우저 친화적 PDFToHTML.tags=web content,browser friendly
home.PDFToXML.title=PDF를 XML로 변환 home.PDFToXML.title=PDF를 XML로 변환
@@ -363,63 +360,63 @@ PDFToXML.tags=data-extraction,structured-content,interop,transformation,convert
home.ScannerImageSplit.title=스캔한 사진 감지/분할 home.ScannerImageSplit.title=스캔한 사진 감지/분할
home.ScannerImageSplit.desc=스캔된 PDF 문서 내에서 여러 장의 사진을 분할합니다. home.ScannerImageSplit.desc=스캔된 PDF 문서 내에서 여러 장의 사진을 분할합니다.
ScannerImageSplit.tags=분리, 자동 감지, 스캔, 다중 사진, 조직 ScannerImageSplit.tags=separate,auto-detect,scans,multi-photo,organize
home.sign.title=서명 home.sign.title=서명
home.sign.desc=PDF 문서에 그림, 텍스트, 이미지로 서명을 추가합니다. home.sign.desc=PDF 문서에 그림, 텍스트, 이미지로 서명을 추가합니다.
sign.tags=인증, 초기값, 손글씨 서명, 텍스트 서명, 이미지 서명 sign.tags=authorize,initials,drawn-signature,text-sign,image-signature
home.flatten.title=평탄화 home.flatten.title=평탄화
home.flatten.desc=PDF 문서에서 모든 상호작용 요소와 양식을 제거합니다. home.flatten.desc=PDF 문서에서 모든 상호작용 요소와 양식을 제거합니다.
flatten.tags=정적화, 비활성화, 비 상호작용, 절전 모드 flatten.tags=static,deactivate,non-interactive,streamline
home.repair.title=복구 home.repair.title=복구
home.repair.desc=손상된 PDF 문서의 복구를 시도합니다. home.repair.desc=손상된 PDF 문서의 복구를 시도합니다.
repair.tags=수리, 복원, 수정, 회복 repair.tags=fix,restore,correction,recover
home.removeBlanks.title=빈 페이지 제거 home.removeBlanks.title=빈 페이지 제거
home.removeBlanks.desc=PDF 문서에서 빈 페이지를 감지하고 제거합니다. home.removeBlanks.desc=PDF 문서에서 빈 페이지를 감지하고 제거합니다.
removeBlanks.tags=정돈, 단순화, 콘텐츠 외부 내용 제거, 조직 removeBlanks.tags=cleanup,streamline,non-content,organize
home.removeAnnotations.title=주석 제거 home.removeAnnotations.title=주석 제거
home.removeAnnotations.desc=PDF에서 모든 주석/주석을 제거합니다. home.removeAnnotations.desc=PDF에서 모든 주석/주석을 제거합니다.
removeAnnotations.tags=코멘트, 강조 표시, 주석, 마크업, 삭제 removeAnnotations.tags=comments,highlight,notes,markup,remove
home.compare.title=비교 home.compare.title=비교
home.compare.desc=2개의 PDF 문서를 비교하고 차이를 표시합니다. home.compare.desc=2개의 PDF 문서를 비교하고 차이를 표시합니다.
compare.tags=분별, 대조, 변화, 분석 compare.tags=differentiate,contrast,changes,analysis
home.certSign.title=인증서로 서명 home.certSign.title=인증서로 서명
home.certSign.desc=PDF 문서에 인증서 또는 키로 서명합니다. (PEM/P12) home.certSign.desc=PDF 문서에 인증서 또는 키로 서명합니다. (PEM/P12)
certSign.tags=인증, PEM, P12, 공식적, 암호화 certSign.tags=authenticate,PEM,P12,official,encrypt
home.removeCertSign.title=서명 제거 home.removeCertSign.title=Remove Certificate Sign
home.removeCertSign.desc=PDF에서 서명을 제거합니다. home.removeCertSign.desc=Remove certificate signature from PDF
removeCertSign.tags=인증, PEM, P12, 공식적, 복호화 removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=다중 페이지 레이아웃 home.pageLayout.title=다중 페이지 레이아웃
home.pageLayout.desc=PDF 문서의 여러 페이지를 한 페이지로 합칩니다. home.pageLayout.desc=PDF 문서의 여러 페이지를 한 페이지로 합칩니다.
pageLayout.tags=병합, 합성, 단일 뷰, 정리 pageLayout.tags=merge,composite,single-view,organize
home.scalePages.title=페이지 크기 및 배율 조정 home.scalePages.title=페이지 크기 및 배율 조정
home.scalePages.desc=페이지 및 그 페이지 내용의 크기와 배율을 조정합니다. home.scalePages.desc=페이지 및 그 페이지 내용의 크기와 배율을 조정합니다.
scalePages.tags=크기 조정, 수정, 차원, 적응 scalePages.tags=resize,modify,dimension,adapt
home.pipeline.title=파이프라인 (고급 기능) home.pipeline.title=파이프라인 (고급 기능)
home.pipeline.desc=파이프라인 스크립트를 사용해서 PDF 문서에 여러 동작을 수행합니다. home.pipeline.desc=파이프라인 스크립트를 사용해서 PDF 문서에 여러 동작을 수행합니다.
pipeline.tags=자동화, 시퀀스, 스크립트, 배치 처리 pipeline.tags=automate,sequence,scripted,batch-process
home.add-page-numbers.title=페이지 번호 추가 home.add-page-numbers.title=페이지 번호 추가
home.add-page-numbers.desc=PDF 문서의 페이지마다, 설정한 위치에 페이지 번호를 삽입합니다. home.add-page-numbers.desc=PDF 문서의 페이지마다, 설정한 위치에 페이지 번호를 삽입합니다.
add-page-numbers.tags=페이지 번호 추가, 레이블링, 정리, 인덱싱 add-page-numbers.tags=paginate,label,organize,index
home.auto-rename.title=자동 이름 변경 home.auto-rename.title=자동 이름 변경
home.auto-rename.desc=제목을 감지하여 자동으로 PDF 문서의 파일 이름을 변경합니다. home.auto-rename.desc=제목을 감지하여 자동으로 PDF 문서의 파일 이름을 변경합니다.
auto-rename.tags=자동 탐지, 헤더 기반, 정리, 재레이블 auto-rename.tags=auto-detect,header-based,organize,relabel
home.adjust-contrast.title=색상/대비 조정 home.adjust-contrast.title=색상/대비 조정
home.adjust-contrast.desc=PDF 문서의 대비, 채도, 밝기를 조정합니다. home.adjust-contrast.desc=PDF 문서의 대비, 채도, 밝기를 조정합니다.
adjust-contrast.tags=색상 보정, 조정, 수정, 향상 adjust-contrast.tags=color-correction,tune,modify,enhance
home.crop.title=PDF 잘라내기 home.crop.title=PDF 잘라내기
home.crop.desc=PDF 문서를 잘라내서 크기를 줄입니다. (텍스트가 그대로 유지됩니다!) home.crop.desc=PDF 문서를 잘라내서 크기를 줄입니다. (텍스트가 그대로 유지됩니다!)
@@ -427,29 +424,29 @@ crop.tags=trim,shrink,edit,shape
home.autoSplitPDF.title=자동 문서 나누기 home.autoSplitPDF.title=자동 문서 나누기
home.autoSplitPDF.desc=구분용 QR코드가 들어있는 페이지를 경계로 하여, 스캔된 PDF 문서를 자동으로 나눕니다. home.autoSplitPDF.desc=구분용 QR코드가 들어있는 페이지를 경계로 하여, 스캔된 PDF 문서를 자동으로 나눕니다.
autoSplitPDF.tags=QR 코드 기반, 분리, 스캔 분할, 정리 autoSplitPDF.tags=QR-based,separate,scan-segment,organize
home.sanitizePdf.title=정제 home.sanitizePdf.title=정제
home.sanitizePdf.desc=PDF 문서에서 스크립트와 같은 요소들을 제거합니다. home.sanitizePdf.desc=PDF 문서에서 스크립트와 같은 요소들을 제거합니다.
sanitizePdf.tags=클린징, 보안, 안전, 위협 제거 sanitizePdf.tags=clean,secure,safe,remove-threats
home.URLToPDF.title=URL/웹사이트를 PDF로 home.URLToPDF.title=URL/웹사이트를 PDF로
home.URLToPDF.desc=http(s) 웹사이트를 PDF 문서로 변환합니다. home.URLToPDF.desc=http(s) 웹사이트를 PDF 문서로 변환합니다.
URLToPDF.tags=웹 캡처, 페이지 저장, 웹 문서 변환, 장기 보관 URLToPDF.tags=web-capture,save-page,web-to-doc,archive
home.HTMLToPDF.title=HTML에서 PDF로 home.HTMLToPDF.title=HTML에서 PDF로
home.HTMLToPDF.desc=HTML 파일, 또는 ZIP 파일을 PDF로 변환합니다. home.HTMLToPDF.desc=HTML 파일, 또는 ZIP 파일을 PDF로 변환합니다.
HTMLToPDF.tags=마크업, 웹 내용 변환, 변환 HTMLToPDF.tags=markup,web-content,transformation,convert
home.MarkdownToPDF.title=Markdown에서 PDF로 home.MarkdownToPDF.title=Markdown에서 PDF로
home.MarkdownToPDF.desc=마크다운 파일을 PDF 문서로 변환합니다. home.MarkdownToPDF.desc=마크다운 파일을 PDF 문서로 변환합니다.
MarkdownToPDF.tags=마크업, 웹 내용 변환, 변환 MarkdownToPDF.tags=markup,web-content,transformation,convert
home.getPdfInfo.title=PDF 정보 읽기 home.getPdfInfo.title=PDF 정보 읽기
home.getPdfInfo.desc=PDF 문서의 가능한 모든 정보를 읽습니다. home.getPdfInfo.desc=PDF 문서의 가능한 모든 정보를 읽습니다.
getPdfInfo.tags=정보 제공, 데이터, 통계, 통계 getPdfInfo.tags=infomation,data,stats,statistics
home.extractPage.title=페이지 추출 home.extractPage.title=페이지 추출
@@ -468,29 +465,29 @@ showJS.tags=JS
home.autoRedact.title=자동 검열 home.autoRedact.title=자동 검열
home.autoRedact.desc=PDF 문서에서 입력된 텍스트들을 자동으로 검열(모자이크)합니다. home.autoRedact.desc=PDF 문서에서 입력된 텍스트들을 자동으로 검열(모자이크)합니다.
autoRedact.tags=노출 방지, 숨기기, 검은색 처리, 마커, 숨김 autoRedact.tags=Redact,Hide,black out,black,marker,hidden
home.tableExtraxt.title=PDF에서 CSV로 home.tableExtraxt.title=PDF에서 CSV로
home.tableExtraxt.desc=PDF에서 표를 추출하여 CSV로 변환 home.tableExtraxt.desc=PDF에서 표를 추출하여 CSV로 변환
tableExtraxt.tags=CSV, 테이블 추출, 추출, 변환 tableExtraxt.tags=CSV,Table Extraction,extract,convert
home.autoSizeSplitPDF.title=크기/개수로 자동 분할 home.autoSizeSplitPDF.title=크기/개수로 자동 분할
home.autoSizeSplitPDF.desc=단일 PDF를 크기, 페이지 수 또는 문서 수에 따라 여러 문서로 분할 home.autoSizeSplitPDF.desc=단일 PDF를 크기, 페이지 수 또는 문서 수에 따라 여러 문서로 분할
autoSizeSplitPDF.tags=pdf 분할, 문서 분할, 조직화 autoSizeSplitPDF.tags=pdf,split,document,organization
home.overlay-pdfs.title=PDF 오버레이 home.overlay-pdfs.title=PDF 오버레이
home.overlay-pdfs.desc=PDF를 다른 PDF 위에 오버레이 home.overlay-pdfs.desc=PDF를 다른 PDF 위에 오버레이
overlay-pdfs.tags=오버레이 overlay-pdfs.tags=Overlay
home.split-by-sections.title=섹션별로 PDF 분할 home.split-by-sections.title=섹션별로 PDF 분할
home.split-by-sections.desc=PDF의 각 페이지를 더 작은 가로와 세로 구역으로 나눕니다 home.split-by-sections.desc=PDF의 각 페이지를 더 작은 가로와 세로 구역으로 나눕니다
split-by-sections.tags=섹션 분할, 나누기, 커스텀 split-by-sections.tags=Section Split, Divide, Customize
home.AddStampRequest.title=PDF에 스탬프 추가 home.AddStampRequest.title=PDF에 스탬프 추가
home.AddStampRequest.desc=설정된 위치에 텍스트 추가 또는 이미지 스탬프 추가 home.AddStampRequest.desc=설정된 위치에 텍스트 추가 또는 이미지 스탬프 추가
AddStampRequest.tags=주석 추가, 이미지 중앙 정렬, 워터마크, PDF 임베딩, 커스텀 AddStampRequest.tags=Stamp, Add image, center image, Watermark, PDF, Embed, Customize
home.PDFToBook.title=PDF를 책으로 home.PDFToBook.title=PDF를 책으로
@@ -501,25 +498,25 @@ home.BookToPDF.title=책을 PDF로
home.BookToPDF.desc=구경을 사용하여 책/만화 형식을 PDF로 변환 home.BookToPDF.desc=구경을 사용하여 책/만화 형식을 PDF로 변환
BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.removeImagePdf.title=PDF에서 이미지 제거 home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=PDF에서 이미지를 제거하여 파일 크기를 줄입니다. home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=이미지 제거, 페이지 작업, 서버 측 처리 removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=챕터별로 PDF 분할 home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=PDF를 여러 파일로 나눕니다. 각 장의 구조에 따라. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=분할, 챕터, 북마크, 조직화 splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=색상 교체/반전 PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=PDF에서 텍스트와 배경 색상을 바꾸고 전체 PDF의 색상을 반전하여 파일 크기를 줄입니다. home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=색상 교체, 페이지 작업, 서버 측 처리 replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=색상 교체 또는 반전 옵션 replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=기본값(고 해밍도 색상) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=커스텀(커스텀 색상) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=전체 반전(모든 색상을 반전) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=High contrast color options replace-color.selectText.5=High contrast color options
replace-color.selectText.6=white text on black background replace-color.selectText.6=white text on black background
replace-color.selectText.7=Black text on white background replace-color.selectText.7=Black text on white background
@@ -557,6 +554,7 @@ login.userIsDisabled=User is deactivated, login is currently blocked with this u
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=자동 검열 autoRedact.title=자동 검열
@@ -751,15 +749,14 @@ certSign.showSig=서명 보기
certSign.reason=이유 certSign.reason=이유
certSign.location=위치 certSign.location=위치
certSign.name=이름 certSign.name=이름
certSign.showLogo=로고 표시
certSign.submit=PDF 서명 certSign.submit=PDF 서명
#removeCertSign #removeCertSign
removeCertSign.title=인증서 서명 제거 removeCertSign.title=Remove Certificate Signature
removeCertSign.header=PDF에서 디지털 인증서를 제거합니다 removeCertSign.header=Remove the digital certificate from the PDF
removeCertSign.selectPDF=PDF 파일 선택: removeCertSign.selectPDF=Select a PDF file:
removeCertSign.submit=서명 제거 removeCertSign.submit=Remove Signature
#removeBlanks #removeBlanks
@@ -781,14 +778,11 @@ removeAnnotations.submit=제거하다
#compare #compare
compare.title=비교 compare.title=비교
compare.header=PDF 문서 비교 compare.header=PDF 문서 비교
compare.highlightColor.1=하이라이트 색상 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=하이라이트 색상 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=문서 1 compare.document.1=문서 1
compare.document.2=문서 2 compare.document.2=문서 2
compare.submit=비교 compare.submit=비교
compare.complex.message=제공된 한 개 이상의 문서가 큰 파일인 경우, 비교 정확도가 저하될 수 있습니다
compare.large.file.message=제공된 한 개 이상의 문서가 처리할 수 없을 정도로 큽니다
compare.no.text.message=선택한 PDF 중 하나 이상은 텍스트 내용이 없습니다. 비교를 위해 텍스트가 포함된 PDF를 선택하세요
#BookToPDF #BookToPDF
BookToPDF.title=책과 만화를 PDF로 BookToPDF.title=책과 만화를 PDF로
@@ -811,11 +805,6 @@ sign.draw=서명 그리기
sign.text=텍스트 입력 sign.text=텍스트 입력
sign.clear=초기화 sign.clear=초기화
sign.add=추가 sign.add=추가
sign.saved=저장된 서명
sign.save=서명 저장
sign.personalSigs=개인용 서명
sign.sharedSigs=공유용 서명
sign.noSavedSigs=저장된 서명이 없습니다
#repair #repair
@@ -827,7 +816,7 @@ repair.submit=복구
#flatten #flatten
flatten.title=평탄화 flatten.title=평탄화
flatten.header=PDF 문서의 레이어 평탄화 flatten.header=PDF 문서의 레이어 평탄화
flatten.flattenOnlyForms=양식만 압축 flatten.flattenOnlyForms=Flatten only forms
flatten.submit=평탄화 flatten.submit=평탄화
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=최소 윤곽 영역:
ScannerImageSplit.selectText.8=사진의 최소 윤곽선 영역 임계값을 설정합니다. ScannerImageSplit.selectText.8=사진의 최소 윤곽선 영역 임계값을 설정합니다.
ScannerImageSplit.selectText.9=테두리 크기: ScannerImageSplit.selectText.9=테두리 크기:
ScannerImageSplit.selectText.10=출력에서 흰색 테두리를 방지하기 위해 추가 및 제거되는 테두리의 크기를 설정합니다(기본값: 1). ScannerImageSplit.selectText.10=출력에서 흰색 테두리를 방지하기 위해 추가 및 제거되는 테두리의 크기를 설정합니다(기본값: 1).
ScannerImageSplit.info=Python이 설치되지 않았습니다. 이 기능을 실행하기 위해 필요합니다 ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,15 +858,15 @@ ocr.submit=인식
extractImages.title=이미지 추출 extractImages.title=이미지 추출
extractImages.header=이미지 추출 extractImages.header=이미지 추출
extractImages.selectText=추출된 이미지를 변환할 이미지 형식을 선택합니다. extractImages.selectText=추출된 이미지를 변환할 이미지 형식을 선택합니다.
extractImages.allowDuplicates=중복 이미지 저장 허용 extractImages.allowDuplicates=Save duplicate images
extractImages.submit=추출 extractImages.submit=추출
#File to PDF #File to PDF
fileToPDF.title=파일 to PDF fileToPDF.title=File to PDF
fileToPDF.header=다양한 파일을 PDF로 변환 fileToPDF.header=다양한 파일을 PDF로 변환
fileToPDF.credit=이 서비스는 파일 변환에 LibreOffice와 Unoconv를 사용합니다. fileToPDF.credit=이 서비스는 파일 변환에 LibreOffice와 Unoconv를 사용합니다.
fileToPDF.supportedFileTypesInfo=지원되는 파일 형식 fileToPDF.supportedFileTypesInfo=Supported File types
fileToPDF.supportedFileTypes=지원되는 파일 형식은 아래와 같습니다. 지원되는 형식의 전체 업데이트 목록은 LibreOffice 설명서를 참조합니다. fileToPDF.supportedFileTypes=지원되는 파일 형식은 아래와 같습니다. 지원되는 형식의 전체 업데이트 목록은 LibreOffice 설명서를 참조합니다.
fileToPDF.submit=PDF로 변환 fileToPDF.submit=PDF로 변환
@@ -907,7 +896,7 @@ merge.title=병합
merge.header=여러 개의 PDF 병합 (2개 이상) merge.header=여러 개의 PDF 병합 (2개 이상)
merge.sortByName=이름순 정렬 merge.sortByName=이름순 정렬
merge.sortByDate=날짜순 정렬 merge.sortByDate=날짜순 정렬
merge.removeCertSign=병합 파일에서 디지털 서명을 제거하시겠습니까? merge.removeCertSign=Remove digital signature in the merged file?
merge.submit=병합 merge.submit=병합
@@ -925,14 +914,14 @@ pdfOrganiser.mode.6=홀수-짝수 분할
pdfOrganiser.mode.7=첫 번째 항목 삭제 pdfOrganiser.mode.7=첫 번째 항목 삭제
pdfOrganiser.mode.8=마지막 항목 제거 pdfOrganiser.mode.8=마지막 항목 제거
pdfOrganiser.mode.9=첫 번째와 마지막 제거 pdfOrganiser.mode.9=첫 번째와 마지막 제거
pdfOrganiser.mode.10=홀 짝 번갈아가기 병합 pdfOrganiser.mode.10=Odd-Even Merge
pdfOrganiser.placeholder=(예: 1,3,2 또는 4-8,2,10-12 또는 2n-1) pdfOrganiser.placeholder=(예: 1,3,2 또는 4-8,2,10-12 또는 2n-1)
#multiTool #multiTool
multiTool.title=PDF 멀티툴 multiTool.title=PDF 멀티툴
multiTool.header=PDF 멀티툴 multiTool.header=PDF 멀티툴
multiTool.uploadPrompts=파일 이름 multiTool.uploadPrompts=File Name
#view pdf #view pdf
viewPdf.title=PDF 뷰어 viewPdf.title=PDF 뷰어
@@ -994,7 +983,7 @@ pdfToImage.color=컬러
pdfToImage.grey=그레이스케일 pdfToImage.grey=그레이스케일
pdfToImage.blackwhite=흑백 (데이터 손실 가능성 있음!) pdfToImage.blackwhite=흑백 (데이터 손실 가능성 있음!)
pdfToImage.submit=변환 pdfToImage.submit=변환
pdfToImage.info=Python이 설치되어 있지 않습니다. WebP 변환에 필요합니다. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1031,7 +1020,7 @@ watermark.selectText.6=세로 간격 (각 워터마크 사이의 세로 공간):
watermark.selectText.7=투명도 (0% - 100%): watermark.selectText.7=투명도 (0% - 100%):
watermark.selectText.8=워터마크 유형: watermark.selectText.8=워터마크 유형:
watermark.selectText.9=워터마크 이미지: watermark.selectText.9=워터마크 이미지:
watermark.selectText.10=PDF를 PDF-Image로 변환 watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=워터마크 추가 watermark.submit=워터마크 추가
watermark.type.1=텍스트 watermark.type.1=텍스트
watermark.type.2=이미지 watermark.type.2=이미지
@@ -1087,8 +1076,8 @@ pdfToPDFA.header=PDF 문서를 PDF/A로 변환
pdfToPDFA.credit=이 서비스는 PDF/A 변환을 위해 ghostscript 문서를 사용합니다. pdfToPDFA.credit=이 서비스는 PDF/A 변환을 위해 ghostscript 문서를 사용합니다.
pdfToPDFA.submit=변환 pdfToPDFA.submit=변환
pdfToPDFA.tip=현재 한 번에 여러 입력에 대해 작동하지 않습니다. pdfToPDFA.tip=현재 한 번에 여러 입력에 대해 작동하지 않습니다.
pdfToPDFA.outputFormat=출력 형식 pdfToPDFA.outputFormat=Output format
pdfToPDFA.pdfWithDigitalSignature= PDF에는 디지털 서명이 포함되어 있습니다. 다음 단계에서 이 서명이 제거될 것입니다. pdfToPDFA.pdfWithDigitalSignature=The PDF contains a digital signature. This will be removed in the next step.
#PDFToWord #PDFToWord
@@ -1174,11 +1163,11 @@ split-by-sections.merge=하나의 PDF로 병합
#printFile #printFile
printFile.title=파일 인쇄 printFile.title=Print File
printFile.header=프린터로 파일 인쇄 printFile.header=Print File to Printer
printFile.selectText.1=인쇄할 파일 선택 printFile.selectText.1=Select File to Print
printFile.selectText.2=프린터 이름 입력 printFile.selectText.2=Enter Printer Name
printFile.submit=인쇄 printFile.submit=Print
#licenses #licenses
@@ -1190,15 +1179,15 @@ licenses.version=버전
licenses.license=라이센스 licenses.license=라이센스
#survey #survey
survey.nav=설문조사 survey.nav=Survey
survey.title=스테링-PDF 설문조사 survey.title=Stirling-PDF Survey
survey.description=스테링-PDF는 추적 기능이 없으므로 사용자 의견을 듣습니다. 스테링-PDF를 개선합니다! survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF!
survey.changes=최근 설문조사를 진행한 이후로 스테링-PDF가 변경되었습니다! 자세한 내용은 여기의 블로그 포스트를 확인하시기 바랍니다: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=이러한 변경 사항으로 인해 수익화된 비즈니스 지원과 펀딩을 받게 되었습니다 survey.changes2=With these changes we are getting paid business support and funding
survey.please=Please consider taking our survey! survey.please=Please consider taking our survey!
survey.disabled=(다음 업데이트에서는 설문 조사 팝업이 무단으로 끄일 수 있으나 페이지 하단에서 사용 가능) survey.disabled=(Survey popup will be disabled in following updates but available at foot of page)
survey.button=설문조사 참여 survey.button=Take Survey
survey.dontShowAgain=이것은 다시 보지 않기 survey.dontShowAgain=Don't show again
#error #error
@@ -1216,19 +1205,21 @@ error.discordSubmit=Discord - 문의 게시
#remove-image #remove-image
removeImage.title=이미지 제거 removeImage.title=Remove image
removeImage.header=이미지 제거 removeImage.header=Remove image
removeImage.removeImage=이미지 제거 removeImage.removeImage=Remove image
removeImage.submit=제거 removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=챕터별 PDF 분할
splitByChapters.header=챕터별 PDF 분할
splitByChapters.bookmarkLevel=북마크 레벨
splitByChapters.includeMetadata=메타데이터 포함
splitByChapters.allowDuplicates=중복 허용
splitByChapters.desc.1=이 도구는 챕터 구조를 기반으로 한 PDF 파일을 여러 개의 PDF로 분할합니다.
splitByChapters.desc.2=북마크 레벨: 분할에 사용할 북마크 레벨을 선택하세요 (0은 상위 수준, 1은 하위 수준 등).
splitByChapters.desc.3=메타데이터 포함: 체크하면 각 분할된 PDF에는 원본 PDF의 메타데이터가 포함됩니다.
splitByChapters.desc.4=중복 허용: 중복 북마크가 있는 같은 페이지에 여러 번 분할 PDF를 생성합니다.
splitByChapters.submit=PDF 분할

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Lettertypegrootte addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Lettertypenaam addPageNumbers.fontName=Font Name
pdfPrompt=Selecteer PDF('s) pdfPrompt=Selecteer PDF('s)
multiPdfPrompt=Selecteer PDF's (2+) multiPdfPrompt=Selecteer PDF's (2+)
multiPdfDropPrompt=Selecteer (of sleep & zet neer) alle PDF's die je nodig hebt multiPdfDropPrompt=Selecteer (of sleep & zet neer) alle PDF's die je nodig hebt
@@ -25,13 +25,13 @@ noFavourites=Geen favorieten toegevoegd
downloadComplete=Download klaar downloadComplete=Download klaar
bored=Verveeld met wachten? bored=Verveeld met wachten?
alphabet=Alfabet alphabet=Alfabet
downloadPdf=PDF downloaden downloadPdf=Download PDF
text=Tekst text=Tekst
font=Lettertype font=Lettertype
selectFillter=-- Selecteer -- selectFillter=-- Selecteer --
pageNum=Paginanummer pageNum=Paginanummer
sizes.small=Klein sizes.small=Klein
sizes.medium=Gemiddeld sizes.medium=Medium
sizes.large=Groot sizes.large=Groot
sizes.x-large=Extra groot sizes.x-large=Extra groot
error.pdfPassword=Het PDF document is beveiligd met een wachtwoord en het wachtwoord is niet ingevoerd of is onjuist error.pdfPassword=Het PDF document is beveiligd met een wachtwoord en het wachtwoord is niet ingevoerd of is onjuist
@@ -56,18 +56,18 @@ userNotFoundMessage=Gebruiker niet gevonden.
incorrectPasswordMessage=Huidige wachtwoord is onjuist. incorrectPasswordMessage=Huidige wachtwoord is onjuist.
usernameExistsMessage=Nieuwe gebruikersnaam bestaat al. usernameExistsMessage=Nieuwe gebruikersnaam bestaat al.
invalidUsernameMessage=Ongeldige gebruikersnaam, gebruikersnaam kan alleen letters, nummers en de volgende speciale tekens @._+- bevatten of moet een geldig emailadres zijn. invalidUsernameMessage=Ongeldige gebruikersnaam, gebruikersnaam kan alleen letters, nummers en de volgende speciale tekens @._+- bevatten of moet een geldig emailadres zijn.
invalidPasswordMessage=Het wachtwoord mag geen spaties ten beginne of einde bevatten en mag niet leeg zijn. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=Nieuw wachtwoord en bevestig wachtwoord moeten overeenkomen. confirmPasswordErrorMessage=Nieuw wachtwoord en bevestig wachtwoord moeten overeenkomen.
deleteCurrentUserMessage=Kan niet een momenteel ingelogde gebruiker verwijderen. deleteCurrentUserMessage=Kan niet een momenteel ingelogde gebruiker verwijderen.
deleteUsernameExistsMessage=De gebruikersnaam bestaat niet en kan niet verwijderd worden. deleteUsernameExistsMessage=De gebruikersnaam bestaat niet en kan niet verwijderd worden.
downgradeCurrentUserMessage=Kan de rol van de huidige gebruiker niet downgraden downgradeCurrentUserMessage=Kan de rol van de huidige gebruiker niet downgraden
disabledCurrentUserMessage=De huidige gebruiker kan niet worden uitgeschakeld disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=Kan de rol van de huidige gebruiker niet downgraden. Huidige gebruiker wordt dus niet weergegeven. downgradeCurrentUserLongMessage=Kan de rol van de huidige gebruiker niet downgraden. Huidige gebruiker wordt dus niet weergegeven.
userAlreadyExistsOAuthMessage=De gebruiker bestaat al als een OAuth2 gebruiker. userAlreadyExistsOAuthMessage=De gebruiker bestaat al als een OAuth2 gebruiker.
userAlreadyExistsWebMessage=De gebruiker bestaat al als een web gebruiker. userAlreadyExistsWebMessage=De gebruiker bestaat al als een web gebruiker.
error=Fout error=Error
oops=Oeps! oops=Oeps!
help=Hulp help=Help
goHomepage=Ga naar de startpagina goHomepage=Ga naar de startpagina
joinDiscord=Word lid van onze Discord server joinDiscord=Word lid van onze Discord server
seeDockerHub=Zie Docker Hub seeDockerHub=Zie Docker Hub
@@ -75,18 +75,16 @@ visitGithub=Ga naar de Github Repository
donate=Doneer donate=Doneer
color=Kleur color=Kleur
sponsor=Sponsor sponsor=Sponsor
info=Informatie info=Info
pro=Pro pro=Pro
page=Pagina page=Page
pages=Pagen pages=Pages
loading=Laden...
addToDoc=Toevoegen aan document
legal.privacy=Privacybeleid legal.privacy=Privacy Policy
legal.terms=Voorwaarden van gebruik legal.terms=Terms and Conditions
legal.accessibility=Toegankelijkheid legal.accessibility=Accessibility
legal.cookie=Cookiesbeleid legal.cookie=Cookie Policy
legal.impressum=Imprint legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -226,27 +224,26 @@ adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Active Users: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Disabled Users: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Total Users: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=Laatste aanvraag adminUserSettings.lastRequest=Last Request
database.title=Database Importeer/Exporteer database.title=Database Import/Export
database.header=Database Importeer/Exporteer database.header=Database Import/Export
database.fileName=Bestandsnaam database.fileName=File Name
database.creationDate=Creatiedatum database.creationDate=Creation Date
database.fileSize=Bestandsgrootte database.fileSize=File Size
database.deleteBackupFile=Backupbestand verwijderen database.deleteBackupFile=Delete Backup File
database.importBackupFile=Backupbestand importeren database.importBackupFile=Import Backup File
database.downloadBackupFile=Backupbestand downloaden database.downloadBackupFile=Download Backup File
database.info_1=Bij het importeren van gegevens is het cruciaal om de juiste structuur te zorgen voor. Als je niet zeker bent van wat je doet, raadpleeg dan advies en ondersteuning bij een professionele. Een fout in de structuur kan leiden tot toepassingsfouten, waarmee wellicht zelfs de volledige uitvoerbaarheid van de toepassing belemmerd wordt. database.info_1=When importing data, it is crucial to ensure the correct structure. If you are unsure of what you are doing, seek advice and support from a professional. An error in the structure can cause application malfunctions, up to and including the complete inability to run the application.
database.info_2=De bestandsnaam maakt geen verschil bij het uploaden. Hij zal later worden herbewoond om de indeling backup_user_yyyyMMddHHmm.sql te volgen, waardoor een consistente bestandsnaamconventie waarborgd wordt. database.info_2=The file name does not matter when uploading. It will be renamed afterward to follow the format backup_user_yyyyMMddHHmm.sql, ensuring a consistent naming convention.
database.submit=Backup importeren database.submit=Import Backup
database.importIntoDatabaseSuccessed=Importeer naar database succesvol database.importIntoDatabaseSuccessed=Import into database successed
database.fileNotFound=File not Found database.fileNotFound=File not Found
database.fileNullOrEmpty=Bestand mag niet null of leeg zijn database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Je sessie is verlopen. Voer de pagina opnieuw in en probeer het opnieuw. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -468,7 +465,7 @@ showJS.tags=JS
home.autoRedact.title=Automatisch censureren home.autoRedact.title=Automatisch censureren
home.autoRedact.desc=Automatisch censureren (onherkenbaar maken) van tekst in een PDF op basis van ingevoerde tekst home.autoRedact.desc=Automatisch censureren (onherkenbaar maken) van tekst in een PDF op basis van ingevoerde tekst
autoRedact.tags=Verzwakken, Verbergen, Uitroepen, Gekleurd, Verborgen autoRedact.tags=Redact,Hide,black out,black,marker,hidden
home.tableExtraxt.title=PDF naar CSV home.tableExtraxt.title=PDF naar CSV
home.tableExtraxt.desc=Haalt tabellen uit een PDF en converteert ze naar CSV home.tableExtraxt.desc=Haalt tabellen uit een PDF en converteert ze naar CSV
@@ -501,33 +498,33 @@ home.BookToPDF.title=Boek naar PDF
home.BookToPDF.desc=Converteert boek-/stripformaat naar PDF met gebruik van Calibre home.BookToPDF.desc=Converteert boek-/stripformaat naar PDF met gebruik van Calibre
BookToPDF.tags=Boek,Strip,Comic,Calibre,Converteren,manga,amazon,kindle BookToPDF.tags=Boek,Strip,Comic,Calibre,Converteren,manga,amazon,kindle
home.removeImagePdf.title=Afbeelding verwijderen home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=Afbeeldingen uit PDF verwijderen om het bestandsgrootte te verminderen home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Afbeelding verwijderen, Paginabewerkingen, Achterkant, Serverkant removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=PDF op hoofdstukken splitsen home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Splits een PDF op basis van zijn hoofdstukstructuur in meerdere bestanden. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=splitsen, hoofdstukken, bookmarks, organiseren splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=Kleur-instellingen voor PDF's replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Vervang de kleur van tekst en achtergrond in een PDF en omverkeer de volledige kleur van het document om bestandsgrootte te verkleinen. home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Kleur vervangen, pagina-acties, achterkant, serverzijde replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Vervang of invertere kleure opties replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Standaard (hoog contrast kleuren) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Aangepast (aangepaste kleuren) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Volledig inverteren (alle kleuren omverkeren) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Opties voor hoog contrast replace-color.selectText.5=High contrast color options
replace-color.selectText.6=wit tekst op een zwart grondvlak replace-color.selectText.6=white text on black background
replace-color.selectText.7=zwarte tekst op wit grondvlak replace-color.selectText.7=Black text on white background
replace-color.selectText.8=gele tekst op een zwart grondvlak replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=groene tekst op een zwart grondvlak replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Kies de tekstkleur replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Kies het achtergrondkleur replace-color.selectText.11=Choose background Color
replace-color.submit=Vervang replace-color.submit=Replace
@@ -546,17 +543,18 @@ login.locked=Je account is geblokkeerd.
login.signinTitle=Gelieve in te loggen login.signinTitle=Gelieve in te loggen
login.ssoSignIn=Inloggen via Single Sign-on login.ssoSignIn=Inloggen via Single Sign-on
login.oauth2AutoCreateDisabled=OAUTH2 Automatisch aanmaken gebruiker uitgeschakeld login.oauth2AutoCreateDisabled=OAUTH2 Automatisch aanmaken gebruiker uitgeschakeld
login.oauth2AdminBlockedUser=Registratie of inloggen van niet-registreerde gebruikers is helaas momenteel geblokkeerd. Neem contact op met de beheerder. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Autorisatieverzoek niet gevonden login.oauth2RequestNotFound=Autorisatieverzoek niet gevonden
login.oauth2InvalidUserInfoResponse=Ongeldige reactie op gebruikersinfo login.oauth2InvalidUserInfoResponse=Ongeldige reactie op gebruikersinfo
login.oauth2invalidRequest=Ongeldig verzoek login.oauth2invalidRequest=Ongeldig verzoek
login.oauth2AccessDenied=Toegang geweigerd login.oauth2AccessDenied=Toegang geweigerd
login.oauth2InvalidTokenResponse=Ongeldige tokenreactie login.oauth2InvalidTokenResponse=Ongeldige tokenreactie
login.oauth2InvalidIdToken=Ongeldige ID token login.oauth2InvalidIdToken=Ongeldige ID token
login.userIsDisabled=De gebruiker is gedesactiveerd, inloggen is momenteel geblokkeerd voor deze gebruikersnaam. Neem contact op met de beheerder. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=U zit reeds ingelogd bij login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=apparaten. U moet u a.u.b. uitloggen van de apparaten en opnieuw proberen. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=U heeft te veel actieve sessies login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Automatisch censureren autoRedact.title=Automatisch censureren
@@ -574,7 +572,7 @@ autoRedact.submitButton=Indienen
#showJS #showJS
showJS.title=Toon Javascript showJS.title=Toon Javascript
showJS.header=Toon Javascript showJS.header=Toon Javascript
showJS.downloadJS=Javascript downloaden showJS.downloadJS=Download Javascript
showJS.submit=Toon showJS.submit=Toon
@@ -588,14 +586,14 @@ pdfToSinglePage.submit=Converteren naar enkele pagina
pageExtracter.title=Pagina's extraheren pageExtracter.title=Pagina's extraheren
pageExtracter.header=Pagina's extraheren pageExtracter.header=Pagina's extraheren
pageExtracter.submit=Extraheren pageExtracter.submit=Extraheren
pageExtracter.placeholder=(bijv. 1,2,8 of 4,7,12-16 of 2n-1) pageExtracter.placeholder=(e.g. 1,2,8 or 4,7,12-16 or 2n-1)
#getPdfInfo #getPdfInfo
getPdfInfo.title=Informatie over PDF ophalen getPdfInfo.title=Informatie over PDF ophalen
getPdfInfo.header=Informatie over PDF ophalen getPdfInfo.header=Informatie over PDF ophalen
getPdfInfo.submit=Haal informatie op getPdfInfo.submit=Haal informatie op
getPdfInfo.downloadJson=JSON downloaden getPdfInfo.downloadJson=Download JSON
#markdown-to-pdf #markdown-to-pdf
@@ -631,7 +629,7 @@ HTMLToPDF.printBackground=De achtergrond van websites weergeven.
HTMLToPDF.defaultHeader=Standaard koptekst weergeven (naam en paginanummer) HTMLToPDF.defaultHeader=Standaard koptekst weergeven (naam en paginanummer)
HTMLToPDF.cssMediaType=Wijzig het CSS-mediatype van de pagina. HTMLToPDF.cssMediaType=Wijzig het CSS-mediatype van de pagina.
HTMLToPDF.none=Geen HTMLToPDF.none=Geen
HTMLToPDF.print=Printen HTMLToPDF.print=Print
HTMLToPDF.screen=Scherm HTMLToPDF.screen=Scherm
@@ -688,7 +686,7 @@ auto-rename.submit=Automatisch hernoemen
#adjustContrast #adjustContrast
adjustContrast.title=Contrast aanpassen adjustContrast.title=Contrast aanpassen
adjustContrast.header=Contrast aanpassen adjustContrast.header=Contrast aanpassen
adjustContrast.contrast=Kehrbrechting: adjustContrast.contrast=Contrast:
adjustContrast.brightness=Helderheid: adjustContrast.brightness=Helderheid:
adjustContrast.saturation=Verzadiging: adjustContrast.saturation=Verzadiging:
adjustContrast.download=Downloaden adjustContrast.download=Downloaden
@@ -731,7 +729,7 @@ pageLayout.submit=Indienen
scalePages.title=Pagina-schaal aanpassen scalePages.title=Pagina-schaal aanpassen
scalePages.header=Pagina-schaal aanpassen scalePages.header=Pagina-schaal aanpassen
scalePages.pageSize=Grootte van een pagina van het document. scalePages.pageSize=Grootte van een pagina van het document.
scalePages.keepPageSize=Oorspronkelijke grootte behouden scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Zoomniveau (uitsnede) van een pagina. scalePages.scaleFactor=Zoomniveau (uitsnede) van een pagina.
scalePages.submit=Indienen scalePages.submit=Indienen
@@ -751,7 +749,6 @@ certSign.showSig=Toon handtekening
certSign.reason=Reden certSign.reason=Reden
certSign.location=Locatie certSign.location=Locatie
certSign.name=Naam certSign.name=Naam
certSign.showLogo=Logotype tonen
certSign.submit=PDF ondertekenen certSign.submit=PDF ondertekenen
@@ -781,14 +778,11 @@ removeAnnotations.submit=Verwijderen
#compare #compare
compare.title=Vergelijken compare.title=Vergelijken
compare.header=PDF's vergelijken compare.header=PDF's vergelijken
compare.highlightColor.1=Hervormingskleur 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=Hervormingskleur 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=Document 1 compare.document.1=Document 1
compare.document.2=Document 2 compare.document.2=Document 2
compare.submit=Vergelijken compare.submit=Vergelijken
compare.complex.message=Eén of beide van de bijgewerkte documenten zijn grote bestanden, het vergelijken kan mogelijk minder nauwkeurig zijn.
compare.large.file.message=Eén of beiden van de bijgewerkte documenten zijn te groot om verwerkt te worden.
compare.no.text.message=Een of beide geselecteerde PDF-bestanden bevatten geen tekstinhoud. Kies a.u.b. PDF-bestanden met tekst voor vergelijking.
#BookToPDF #BookToPDF
BookToPDF.title=Boeken en strips naar PDF BookToPDF.title=Boeken en strips naar PDF
@@ -811,11 +805,6 @@ sign.draw=Handtekening tekenen
sign.text=Tekstinvoer sign.text=Tekstinvoer
sign.clear=Wissen sign.clear=Wissen
sign.add=Toevoegen sign.add=Toevoegen
sign.saved=Gesleutelde handtekeningen opgeslagen
sign.save=Opslaan Signatuur
sign.personalSigs=Persoonlijke Signatuuren
sign.sharedSigs=Gedeelde Signatuuren
sign.noSavedSigs=Geen opgeslagen signatuuren gevonden
#repair #repair
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=Minimum contour oppervlakte:
ScannerImageSplit.selectText.8=Stelt de minimale contour oppervlakte drempel in voor een foto ScannerImageSplit.selectText.8=Stelt de minimale contour oppervlakte drempel in voor een foto
ScannerImageSplit.selectText.9=Randgrootte: ScannerImageSplit.selectText.9=Randgrootte:
ScannerImageSplit.selectText.10=Stelt de grootte van de toegevoegde en verwijderde rand in om witte randen in de uitvoer te voorkomen (standaard: 1). ScannerImageSplit.selectText.10=Stelt de grootte van de toegevoegde en verwijderde rand in om witte randen in de uitvoer te voorkomen (standaard: 1).
ScannerImageSplit.info=Python is niet geïnstalleerd. Het wordt vereist om te worden uitgevoerd. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=Verwerk PDF met OCR
extractImages.title=Afbeeldingen extraheren extractImages.title=Afbeeldingen extraheren
extractImages.header=Afbeeldingen extraheren extractImages.header=Afbeeldingen extraheren
extractImages.selectText=Selecteer het beeldformaat voor geëxtraheerde afbeeldingen extractImages.selectText=Selecteer het beeldformaat voor geëxtraheerde afbeeldingen
extractImages.allowDuplicates=Dubbele afbeeldingen opslaan extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Extraheer extractImages.submit=Extraheer
@@ -877,7 +866,7 @@ extractImages.submit=Extraheer
fileToPDF.title=Bestand naar PDF fileToPDF.title=Bestand naar PDF
fileToPDF.header=Zet elk bestand om naar PDF fileToPDF.header=Zet elk bestand om naar PDF
fileToPDF.credit=Deze service gebruikt LibreOffice en Unoconv voor bestandsconversie. fileToPDF.credit=Deze service gebruikt LibreOffice en Unoconv voor bestandsconversie.
fileToPDF.supportedFileTypesInfo=Gestandaardiseerde Bestandstypen fileToPDF.supportedFileTypesInfo=Supported File types
fileToPDF.supportedFileTypes=Ondersteunde bestandstypen zijn hieronder opgenomen, maar raadpleeg voor een volledige lijst met ondersteunde formaten de LibreOffice-documentatie fileToPDF.supportedFileTypes=Ondersteunde bestandstypen zijn hieronder opgenomen, maar raadpleeg voor een volledige lijst met ondersteunde formaten de LibreOffice-documentatie
fileToPDF.submit=Omzetten naar PDF fileToPDF.submit=Omzetten naar PDF
@@ -994,7 +983,7 @@ pdfToImage.color=Kleur
pdfToImage.grey=Grijstinten pdfToImage.grey=Grijstinten
pdfToImage.blackwhite=Zwart en wit (kan data verliezen!) pdfToImage.blackwhite=Zwart en wit (kan data verliezen!)
pdfToImage.submit=Omzetten pdfToImage.submit=Omzetten
pdfToImage.info=Python is niet geïnstalleerd. Vereist voor WebP-conversie. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1031,10 +1020,10 @@ watermark.selectText.6=hoogteSpacer (Ruimte tussen elk watermerk verticaal):
watermark.selectText.7=Transparantie (0% - 100%): watermark.selectText.7=Transparantie (0% - 100%):
watermark.selectText.8=Type watermerk: watermark.selectText.8=Type watermerk:
watermark.selectText.9=Watermerk afbeelding: watermark.selectText.9=Watermerk afbeelding:
watermark.selectText.10=PDF omzetten naar PDF-Afbeelding watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=Watermerk toevoegen watermark.submit=Watermerk toevoegen
watermark.type.1=Tekst watermark.type.1=Text
watermark.type.2=Afbeelding watermark.type.2=Image
#Change permissions #Change permissions
@@ -1087,7 +1076,7 @@ pdfToPDFA.header=PDF naar PDF/A
pdfToPDFA.credit=Deze service gebruikt ghostscript voor PDF/A-conversie pdfToPDFA.credit=Deze service gebruikt ghostscript voor PDF/A-conversie
pdfToPDFA.submit=Converteren pdfToPDFA.submit=Converteren
pdfToPDFA.tip=Werkt momenteel niet voor meerdere inputs tegelijkertijd. pdfToPDFA.tip=Werkt momenteel niet voor meerdere inputs tegelijkertijd.
pdfToPDFA.outputFormat=Uitvoerindeling pdfToPDFA.outputFormat=Output format
pdfToPDFA.pdfWithDigitalSignature=Dit PDF bestand bevat een digitale handtekening. Deze wordt in de volgende stap verwijderd. pdfToPDFA.pdfWithDigitalSignature=Dit PDF bestand bevat een digitale handtekening. Deze wordt in de volgende stap verwijderd.
@@ -1178,7 +1167,7 @@ printFile.title=Print bestand
printFile.header=Print bestand naar printer printFile.header=Print bestand naar printer
printFile.selectText.1=Selecteer bestand om te printen printFile.selectText.1=Selecteer bestand om te printen
printFile.selectText.2=Voer printernaam in printFile.selectText.2=Voer printernaam in
printFile.submit=Druk af printFile.submit=Print
#licenses #licenses
@@ -1193,8 +1182,8 @@ licenses.license=Licentie
survey.nav=Enquête survey.nav=Enquête
survey.title=Stirling-PDF Enquête survey.title=Stirling-PDF Enquête
survey.description=Stirling-PDF heeft geen tracking, dus we willen van onze gebruikers horen om Stirling-PDF te verbeteren. survey.description=Stirling-PDF heeft geen tracking, dus we willen van onze gebruikers horen om Stirling-PDF te verbeteren.
survey.changes=Stirling-PDF is sinds de laatste enquête veranderd! Zie hier onze blogpost voor meer informatie: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=Met deze veranderingen krijgen we betaalde bedrijfsondersteuning en financiering survey.changes2=With these changes we are getting paid business support and funding
survey.please=Overweeg alstublieft om onze enquête in te vullen! survey.please=Overweeg alstublieft om onze enquête in te vullen!
survey.disabled=(Enquête popup wordt in een toekomstige update weggehaald, maar is beschikbaar aan de onderkant van de pagina.) survey.disabled=(Enquête popup wordt in een toekomstige update weggehaald, maar is beschikbaar aan de onderkant van de pagina.)
survey.button=Vul enquête in. survey.button=Vul enquête in.
@@ -1216,19 +1205,21 @@ error.discordSubmit=Discord - Maak een support post
#remove-image #remove-image
removeImage.title=Afbeelding verwijderen removeImage.title=Remove image
removeImage.header=Afbeelding verwijderen removeImage.header=Remove image
removeImage.removeImage=Afbeelding verwijderen removeImage.removeImage=Remove image
removeImage.submit=Verwijder afbeelding removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=PDF splits op hoofdstukken
splitByChapters.header=PDF splitsen per hoofdstuk
splitByChapters.bookmarkLevel=Boekmarkeer niveau
splitByChapters.includeMetadata=Metadata inclusief
splitByChapters.allowDuplicates=Dubbele items toestaan
splitByChapters.desc.1=Dit hulpmiddel splits een PDF-bestand op in meerdere PDF's gebaseerd op zijn hoofdstukstructuur.
splitByChapters.desc.2=Boekmarkeer niveau: Kies het boekmarkeer niveau om te gebruiken voor delen (0 voor topniveau, 1 voor tweedelvou, etc.).
splitByChapters.desc.3=Metadata inclusief: Als gecijfeld, de originele PDF's metadata wordt ingevoegd in elk gesplitst PDF-bestand.
splitByChapters.desc.4=Dubbele items toestaan: Als gecijfeld, zorgen multiple boekmarkeersymboolen op dezelfde pagina voor het maken van aparte PDF-bestanden.
splitByChapters.submit=PDF splitsen

View File

@@ -79,8 +79,6 @@ info=Info
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=Fil må ikke være tom eller null
database.failedImportFile=Import av fil mislyktes database.failedImportFile=Import av fil mislyktes
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=User is deactivated, login is currently blocked with this u
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Automatisk Sensurering autoRedact.title=Automatisk Sensurering
@@ -751,7 +749,6 @@ certSign.showSig=Vis signatur
certSign.reason=Årsak certSign.reason=Årsak
certSign.location=Sted certSign.location=Sted
certSign.name=Navn certSign.name=Navn
certSign.showLogo=Show Logo
certSign.submit=Signer PDF certSign.submit=Signer PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Uthevingsfarge 2:
compare.document.1=Dokument 1 compare.document.1=Dokument 1
compare.document.2=Dokument 2 compare.document.2=Dokument 2
compare.submit=Sammenlign compare.submit=Sammenlign
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.
#BookToPDF #BookToPDF
BookToPDF.title=Bøker og Tegneserier til PDF BookToPDF.title=Bøker og Tegneserier til PDF
@@ -811,11 +805,6 @@ sign.draw=Tegn signatur
sign.text=Tekstinput sign.text=Tekstinput
sign.clear=Slett sign.clear=Slett
sign.add=Legg til sign.add=Legg til
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Rozmiar Czcionki addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Nazwa Czcionki addPageNumbers.fontName=Font Name
pdfPrompt=Wybierz PDF pdfPrompt=Wybierz PDF
multiPdfPrompt=Wybierz PDF (2+) multiPdfPrompt=Wybierz PDF (2+)
multiPdfDropPrompt=Wybierz (lub przeciągnij i puść) wszystkie dokumenty PDF multiPdfDropPrompt=Wybierz (lub przeciągnij i puść) wszystkie dokumenty PDF
@@ -56,12 +56,12 @@ userNotFoundMessage=Brak użytkownika.
incorrectPasswordMessage=Nieprawidłowe hasło. incorrectPasswordMessage=Nieprawidłowe hasło.
usernameExistsMessage=Taki uzytkownik już istnieje. usernameExistsMessage=Taki uzytkownik już istnieje.
invalidUsernameMessage=Niewłaściwa nazwa użytkownika - musi zawierać litery, cyfry i @._+- LUB być adresem email. invalidUsernameMessage=Niewłaściwa nazwa użytkownika - musi zawierać litery, cyfry i @._+- LUB być adresem email.
invalidPasswordMessage=Hasło nie może być puste i nie może zawierać spacji na początku ani na końcu. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=Wpisz poprawnie hasło w OBA pola. confirmPasswordErrorMessage=Wpisz poprawnie hasło w OBA pola.
deleteCurrentUserMessage=Nie można usunąć zalogowanego użytkownika deleteCurrentUserMessage=Nie można usunąć zalogowanego użytkownika
deleteUsernameExistsMessage=Nie można usunąć zalogowanego użytkownika deleteUsernameExistsMessage=Nie można usunąć zalogowanego użytkownika
downgradeCurrentUserMessage=Nie można obniżyć roli bieżącego użytkownika downgradeCurrentUserMessage=Nie można obniżyć roli bieżącego użytkownika
disabledCurrentUserMessage=Nie można wyłączyć bieżącego użytkownika disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=Nie można obniżyć roli bieżącego użytkownika. W związku z tym bieżący użytkownik nie zostanie wyświetlony. downgradeCurrentUserLongMessage=Nie można obniżyć roli bieżącego użytkownika. W związku z tym bieżący użytkownik nie zostanie wyświetlony.
userAlreadyExistsOAuthMessage=Takie konto użytkownika istnieje - stworzone za pomocą OAuth2. userAlreadyExistsOAuthMessage=Takie konto użytkownika istnieje - stworzone za pomocą OAuth2.
userAlreadyExistsWebMessage=Takie konto użytkownika istnieje - stworzone za pomocą przeglądarki. userAlreadyExistsWebMessage=Takie konto użytkownika istnieje - stworzone za pomocą przeglądarki.
@@ -77,16 +77,14 @@ color=kolor
sponsor=sponsor sponsor=sponsor
info=informacje info=informacje
pro=Pro pro=Pro
page=Strona page=Page
pages=Strony pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Polityka Prywatności legal.privacy=Privacy Policy
legal.terms=Zasady i Postanowienia legal.terms=Terms and Conditions
legal.accessibility=Dostępność legal.accessibility=Accessibility
legal.cookie=Polityka plików cookie legal.cookie=Cookie Policy
legal.impressum=Impresja legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -116,21 +114,21 @@ pipelineOptions.validateButton=Waliduj
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Uaktualnij do wersji Pro enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Ta funkcja jest dostępna tylko dla użytkowników Pro. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro obsługuje pliki konfiguracyjne YAML i inne funkcje SSO. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Szukasz więcej funkcji zarządzania użytkownikami? Sprawdź Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Czy chcesz ulepszyć Stirling PDF? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF ma opcję analizy, która pomaga nam udoskonalać produkt. Nie śledzimy żadnych danych osobowych ani zawartości plików. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Rozważ włączenie funkcji analitycznych, które pomogą w rozwoju Stirling-PDF i pozwolą nam lepiej zrozumieć naszych użytkowników. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Włącz analitykę analytics.enable=Enable analytics
analytics.disable=Wyłącz analitykę analytics.disable=Disable analytics
analytics.settings=Możesz zmienić ustawienia analityki w pliku config/settings.yml analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -140,14 +138,14 @@ navbar.darkmode=Tryb nocny
navbar.language=Języki navbar.language=Języki
navbar.settings=Ustawienia navbar.settings=Ustawienia
navbar.allTools=Narzędzia navbar.allTools=Narzędzia
navbar.multiTool=Narzędzie Wielofunkcyjne navbar.multiTool=Multi Tools
navbar.sections.organize=Organizuj navbar.sections.organize=Organizuj
navbar.sections.convertTo=Przetwórz na PDF navbar.sections.convertTo=Przetwórz na PDF
navbar.sections.convertFrom=Przetwórz z PDF navbar.sections.convertFrom=Przetwórz z PDF
navbar.sections.security=Podpis i bezpieczeństwo navbar.sections.security=Podpis i bezpieczeństwo
navbar.sections.advance=Zaawansowane navbar.sections.advance=Zaawansowane
navbar.sections.edit=Podgląd i edycja navbar.sections.edit=Podgląd i edycja
navbar.sections.popular=Popularne navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -220,13 +218,13 @@ adminUserSettings.forceChange=Wymuś zmianę hasło po zalogowaniu
adminUserSettings.submit=Zapisz użytkownika adminUserSettings.submit=Zapisz użytkownika
adminUserSettings.changeUserRole=Zmień rolę użytkownika adminUserSettings.changeUserRole=Zmień rolę użytkownika
adminUserSettings.authenticated=Zalogowany adminUserSettings.authenticated=Zalogowany
adminUserSettings.editOwnProfil=Edytuj własny profil adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=włączony użytkownik adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=wyłączony użytkownik adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Aktywni Użytkownicy: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Wyłączeni Użytkownicy: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Łączna Liczba Użytkowników: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=Ostatnie Zgłoszenie adminUserSettings.lastRequest=Last Request
database.title=Import/Eksport bazy danych database.title=Import/Eksport bazy danych
@@ -245,8 +243,7 @@ database.fileNotFound=Plik nie znaleziony
database.fileNullOrEmpty=Plik nie może być pusty database.fileNullOrEmpty=Plik nie może być pusty
database.failedImportFile=Nie udało się zaimportować pliku database.failedImportFile=Nie udało się zaimportować pliku
session.expired=Twoja sesja wygasła. Odśwież stronę i spróbuj ponownie. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -259,207 +256,207 @@ home.viewPdf.title=Podejrzyj PDF
home.viewPdf.desc=Wyświetl, adnotuj, dodaj tekst lub obrazy home.viewPdf.desc=Wyświetl, adnotuj, dodaj tekst lub obrazy
viewPdf.tags=wyświetl,czytaj,adnotuj,tekst,obraz viewPdf.tags=wyświetl,czytaj,adnotuj,tekst,obraz
home.multiTool.title=Wielofunkcyjne Narzędzie PDF home.multiTool.title=Multi narzędzie PDF
home.multiTool.desc=Łącz, dziel, obracaj, zmieniaj kolejność i usuwaj strony home.multiTool.desc=Łącz, dziel, obracaj, zmieniaj kolejność i usuwaj strony
multiTool.tags=Wielofunkcyjne narzędzie, obsługa wielu operacji, interfejs użytkownika, przeciąganie kliknięć, front-end, strona klienta multiTool.tags=Multi Tool,Multi operation,UI,click drag,front end,client side
home.merge.title=Połącz home.merge.title=Połącz
home.merge.desc=Łatwe łączenie wielu dokumentów PDF w jeden. home.merge.desc=Łatwe łączenie wielu dokumentów PDF w jeden.
merge.tags=scalanie, operacje na stronach, back-end, po stronie serwera merge.tags=merge,Page operations,Back end,server side
home.split.title=Podziel home.split.title=Podziel
home.split.desc=Podziel dokument PDF na wiele dokumentów home.split.desc=Podziel dokument PDF na wiele dokumentów
split.tags=Operacje na stronach, dzielenie, wiele stron, cięcie, po stronie serwera split.tags=Page operations,divide,Multi Page,cut,server side
home.rotate.title=Obróć home.rotate.title=Obróć
home.rotate.desc=Łatwo obracaj dokumenty PDF. home.rotate.desc=Łatwo obracaj dokumenty PDF.
rotate.tags=strona serwera rotate.tags=server side
home.imageToPdf.title=Obraz na PDF home.imageToPdf.title=Obraz na PDF
home.imageToPdf.desc=Konwertuj obraz (PNG, JPEG, GIF) do dokumentu PDF. home.imageToPdf.desc=Konwertuj obraz (PNG, JPEG, GIF) do dokumentu PDF.
imageToPdf.tags=konwersja,img,jpg,obraz,zdjęcie imageToPdf.tags=conversion,img,jpg,picture,photo
home.pdfToImage.title=PDF na Obraz home.pdfToImage.title=PDF na Obraz
home.pdfToImage.desc=Konwertuj plik PDF na obraz (PNG, JPEG, GIF). home.pdfToImage.desc=Konwertuj plik PDF na obraz (PNG, JPEG, GIF).
pdfToImage.tags=konwersja,img,jpg,obraz,zdjęcie pdfToImage.tags=conversion,img,jpg,picture,photo
home.pdfOrganiser.title=Uporządkuj home.pdfOrganiser.title=Uporządkuj
home.pdfOrganiser.desc=Usuń/Zmień kolejność stron w dowolnej kolejności home.pdfOrganiser.desc=Usuń/Zmień kolejność stron w dowolnej kolejności
pdfOrganiser.tags=duplex,parzyste,nieparzyste,sortuj,przenieś pdfOrganiser.tags=duplex,even,odd,sort,move
home.addImage.title=Dodaj obraz home.addImage.title=Dodaj obraz
home.addImage.desc=Dodaje obraz w wybranym miejscu w dokumencie PDF home.addImage.desc=Dodaje obraz w wybranym miejscu w dokumencie PDF
addImage.tags=img,jpg,obraz,zdjęcie addImage.tags=img,jpg,picture,photo
home.watermark.title=Dodaj znak wodny home.watermark.title=Dodaj znak wodny
home.watermark.desc=Dodaj niestandardowy znak wodny do dokumentu PDF. home.watermark.desc=Dodaj niestandardowy znak wodny do dokumentu PDF.
watermark.tags=Tekst,powtarzanie,etykieta,własne,prawa autorskie,znak wodny,img,jpg,obraz,zdjęcie watermark.tags=Text,repeating,label,own,copyright,trademark,img,jpg,picture,photo
home.permissions.title=Zmień uprawnienia home.permissions.title=Zmień uprawnienia
home.permissions.desc=Zmień uprawnienia dokumentu PDF home.permissions.desc=Zmień uprawnienia dokumentu PDF
permissions.tags=odczyt,zapis,edycja,drukowanie permissions.tags=read,write,edit,print
home.removePages.title=Usuń home.removePages.title=Usuń
home.removePages.desc=Usuń niechciane strony z dokumentu PDF. home.removePages.desc=Usuń niechciane strony z dokumentu PDF.
removePages.tags=Usuń strony,usuwaj strony removePages.tags=Remove pages,delete pages
home.addPassword.title=Dodaj hasło home.addPassword.title=Dodaj hasło
home.addPassword.desc=Zaszyfruj dokument PDF za pomocą hasła. home.addPassword.desc=Zaszyfruj dokument PDF za pomocą hasła.
addPassword.tags=bezpieczeństwo,ochrona addPassword.tags=secure,security
home.removePassword.title=Usuń hasło home.removePassword.title=Usuń hasło
home.removePassword.desc=Usuń ochronę hasłem z dokumentu PDF. home.removePassword.desc=Usuń ochronę hasłem z dokumentu PDF.
removePassword.tags=zabezpieczenie,odszyfrowanie,bezpieczeństwo,odhasłowanie,usunięcie hasła removePassword.tags=secure,Decrypt,security,unpassword,delete password
home.compressPdfs.title=Kompresuj home.compressPdfs.title=Kompresuj
home.compressPdfs.desc=Kompresuj dokumenty PDF, aby zmniejszyć ich rozmiar. home.compressPdfs.desc=Kompresuj dokumenty PDF, aby zmniejszyć ich rozmiar.
compressPdfs.tags=zgniatać,mały,malutki compressPdfs.tags=squish,small,tiny
home.changeMetadata.title=Zmień metadane home.changeMetadata.title=Zmień metadane
home.changeMetadata.desc=Zmień/Usuń/Dodaj metadane w dokumencie PDF home.changeMetadata.desc=Zmień/Usuń/Dodaj metadane w dokumencie PDF
changeMetadata.tags=Tytuł,autor,data,utworzenie,czas,wydawca,producent,statystyki changeMetadata.tags=Title,author,date,creation,time,publisher,producer,stats
home.fileToPDF.title=Konwertuj plik do PDF home.fileToPDF.title=Konwertuj plik do PDF
home.fileToPDF.desc=Konwertuj dowolny plik do dokumentu PDF (DOCX, PNG, XLS, PPT, TXT i więcej) home.fileToPDF.desc=Konwertuj dowolny plik do dokumentu PDF (DOCX, PNG, XLS, PPT, TXT i więcej)
fileToPDF.tags=transformacja,format,dokument,obraz,slajd,tekst,konwersja,office,dokumenty,word,excel,powerpoint fileToPDF.tags=transformation,format,document,picture,slide,text,conversion,office,docs,word,excel,powerpoint
home.ocr.title=OCR / Zamiana na tekst home.ocr.title=OCR / Zamiana na tekst
home.ocr.desc=OCR skanuje i wykrywa tekst z obrazów w dokumencie PDF i zamienia go na tekst. home.ocr.desc=OCR skanuje i wykrywa tekst z obrazów w dokumencie PDF i zamienia go na tekst.
ocr.tags=rozpoznawanie, tekst, obraz, skanowanie, odczyt, identyfikacja, wykrywanie, edytowalność ocr.tags=recognition,text,image,scan,read,identify,detection,editable
home.extractImages.title=Wyodrębnij obrazy home.extractImages.title=Wyodrębnij obrazy
home.extractImages.desc=Wyodrębnia wszystkie obrazy z dokumentu PDF i zapisuje je w wybranym formacie home.extractImages.desc=Wyodrębnia wszystkie obrazy z dokumentu PDF i zapisuje je w wybranym formacie
extractImages.tags=obraz, zdjęcie, zapisz, archiwum, zip, przechwyć, złap extractImages.tags=picture,photo,save,archive,zip,capture,grab
home.pdfToPDFA.title=PDF na PDF/A home.pdfToPDFA.title=PDF na PDF/A
home.pdfToPDFA.desc=Konwertuj dokument PDF na PDF/A w celu długoterminowego przechowywania home.pdfToPDFA.desc=Konwertuj dokument PDF na PDF/A w celu długoterminowego przechowywania
pdfToPDFA.tags=archiwum, długoterminowe, standardowe, konwersja, przechowywanie, konserwacja pdfToPDFA.tags=archive,long-term,standard,conversion,storage,preservation
home.PDFToWord.title=PDF na Word home.PDFToWord.title=PDF na Word
home.PDFToWord.desc=Konwertuj dokument PDF na formaty Word (DOC, DOCX i ODT) home.PDFToWord.desc=Konwertuj dokument PDF na formaty Word (DOC, DOCX i ODT)
PDFToWord.tags=doc,docx,odt,word, przekształcenie, transformacja, konwersja, office, microsoft, plik doc PDFToWord.tags=doc,docx,odt,word,transformation,format,conversion,office,microsoft,docfile
home.PDFToPresentation.title=PDF na Prezentację home.PDFToPresentation.title=PDF na Prezentację
home.PDFToPresentation.desc=Konwertuj dokument PDF na formaty prezentacji (PPT, PPTX i ODP) home.PDFToPresentation.desc=Konwertuj dokument PDF na formaty prezentacji (PPT, PPTX i ODP)
PDFToPresentation.tags=slajdy, pokaz, office, microsoft PDFToPresentation.tags=slides,show,office,microsoft
home.PDFToText.title=PDF na Tekst/RTF home.PDFToText.title=PDF na Tekst/RTF
home.PDFToText.desc=Konwertuj dokument PDF na tekst lub format RTF home.PDFToText.desc=Konwertuj dokument PDF na tekst lub format RTF
PDFToText.tags=format tekstu sformatowanego,rtf format PDFToText.tags=richformat,richtextformat,rich text format
home.PDFToHTML.title=PDF na HTML home.PDFToHTML.title=PDF na HTML
home.PDFToHTML.desc=Konwertuj dokument PDF na format HTML home.PDFToHTML.desc=Konwertuj dokument PDF na format HTML
PDFToHTML.tags=zawartość internetowa, przyjazne dla przeglądarek PDFToHTML.tags=web content,browser friendly
home.PDFToXML.title=PDF na XML home.PDFToXML.title=PDF na XML
home.PDFToXML.desc=Konwertuj dokument PDF na format XML home.PDFToXML.desc=Konwertuj dokument PDF na format XML
PDFToXML.tags=ekstrakcja danych, zawartość strukturalna, współdziałanie, transformacja, konwertowanie PDFToXML.tags=data-extraction,structured-content,interop,transformation,convert
home.ScannerImageSplit.title=Wykryj/Podziel zeskanowane zdjęcia home.ScannerImageSplit.title=Wykryj/Podziel zeskanowane zdjęcia
home.ScannerImageSplit.desc=Podziel na wiele zdjęć z jednego zdjęcia/PDF home.ScannerImageSplit.desc=Podziel na wiele zdjęć z jednego zdjęcia/PDF
ScannerImageSplit.tags=oddzielne, automatyczne wykrywanie, skanowanie, wiele zdjęć, porządkowanie ScannerImageSplit.tags=separate,auto-detect,scans,multi-photo,organize
home.sign.title=Podpis home.sign.title=Podpis
home.sign.desc=Dodaje podpis do dokumentu PDF za pomocą rysunku, tekstu lub obrazu home.sign.desc=Dodaje podpis do dokumentu PDF za pomocą rysunku, tekstu lub obrazu
sign.tags=autoryzacja, inicjały, podpis odręczny, podpis tekstowy, podpis graficzny sign.tags=authorize,initials,drawn-signature,text-sign,image-signature
home.flatten.title=Spłaszcz home.flatten.title=Spłaszcz
home.flatten.desc=Usuń wszystkie interaktywne elementy i formularze z dokumentu PDF home.flatten.desc=Usuń wszystkie interaktywne elementy i formularze z dokumentu PDF
flatten.tags=statyczny, dezaktywacja, nieinteraktywny, opływowy, streamline flatten.tags=static,deactivate,non-interactive,streamline
home.repair.title=Napraw home.repair.title=Napraw
home.repair.desc=Spróbuj naprawić uszkodzony dokument PDF home.repair.desc=Spróbuj naprawić uszkodzony dokument PDF
repair.tags=naprawianie, naprawa, przywracanie, poprawianie, odzyskiwanie repair.tags=fix,restore,correction,recover
home.removeBlanks.title=Usuń puste strony home.removeBlanks.title=Usuń puste strony
home.removeBlanks.desc=Wykrywa i usuwa puste strony z dokumentu PDF home.removeBlanks.desc=Wykrywa i usuwa puste strony z dokumentu PDF
removeBlanks.tags=czyszczenie, usprawnianie, brak treści, organizowanie removeBlanks.tags=cleanup,streamline,non-content,organize
home.removeAnnotations.title=Usuń notatki/przypisy home.removeAnnotations.title=Usuń notatki/przypisy
home.removeAnnotations.desc=Usuwa wszystkie notatki i przypisy z dokumentu PDF home.removeAnnotations.desc=Usuwa wszystkie notatki i przypisy z dokumentu PDF
removeAnnotations.tags=komentarze, podświetlanie, notatki, znaczniki, usuwanie removeAnnotations.tags=comments,highlight,notes,markup,remove
home.compare.title=Porównaj home.compare.title=Porównaj
home.compare.desc=Porównuje i pokazuje różnice między dwoma dokumentami PDF home.compare.desc=Porównuje i pokazuje różnice między dwoma dokumentami PDF
compare.tags=rozróżnienie, kontrast, zmiany, analiza compare.tags=differentiate,contrast,changes,analysis
home.certSign.title=Podpisz certyfikatem home.certSign.title=Podpisz certyfikatem
home.certSign.desc=Podpisz dokument PDF za pomocą certyfikatu/klucza prywatnego (PEM/P12) home.certSign.desc=Podpisz dokument PDF za pomocą certyfikatu/klucza prywatnego (PEM/P12)
certSign.tags=uwierzytelnianie, PEM, P12, oficjalny, szyfrowanie certSign.tags=authenticate,PEM,P12,official,encrypt
home.removeCertSign.title=Usuń podpis certyfikatem home.removeCertSign.title=Usuń podpis certyfikatem
home.removeCertSign.desc=Usuń podpis certyfikatem z dokumentu PDF home.removeCertSign.desc=Usuń podpis certyfikatem z dokumentu PDF
removeCertSign.tags=uwierzytelnianie, PEM, P12, oficjalny, odszyfrowywanie removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=Układ wielu stron home.pageLayout.title=Układ wielu stron
home.pageLayout.desc=Scal wiele stron dokumentu PDF w jedną stronę home.pageLayout.desc=Scal wiele stron dokumentu PDF w jedną stronę
pageLayout.tags=scalanie, kompozycja, pojedynczy widok, organizowanie, porządkowanie pageLayout.tags=merge,composite,single-view,organize
home.scalePages.title=Dopasuj rozmiar stron home.scalePages.title=Dopasuj rozmiar stron
home.scalePages.desc=Dopasuj rozmiar stron wybranego dokumentu PDF home.scalePages.desc=Dopasuj rozmiar stron wybranego dokumentu PDF
scalePages.tags=zmiana rozmiaru, modyfikacja, rozmiar, dostosowanie scalePages.tags=resize,modify,dimension,adapt
home.pipeline.title=Automatyzacja home.pipeline.title=Automatyzacja
home.pipeline.desc=Wykonaj wiele akcji na dokumentach PDF, tworząc automatyzację home.pipeline.desc=Wykonaj wiele akcji na dokumentach PDF, tworząc automatyzację
pipeline.tags=automatyzacja, sekwencja, skrypt, przetwarzanie wsadowe pipeline.tags=automate,sequence,scripted,batch-process
home.add-page-numbers.title=Dodaj numery stron home.add-page-numbers.title=Dodaj numery stron
home.add-page-numbers.desc=Dodaj numery strony w dokumencie PDF w podanej lokalizacji home.add-page-numbers.desc=Dodaj numery strony w dokumencie PDF w podanej lokalizacji
add-page-numbers.tags=stronicowanie, etykieta, organizowanie, indeks, index add-page-numbers.tags=paginate,label,organize,index
home.auto-rename.title=Automatycznie zmień nazwę PDF home.auto-rename.title=Automatycznie zmień nazwę PDF
home.auto-rename.desc=Automatycznie zmień nazwę PDF bazując na nagłówku home.auto-rename.desc=Automatycznie zmień nazwę PDF bazując na nagłówku
auto-rename.tags=automatyczne wykrywanie, oparte na nagłówkach, organizowanie, ponowne etykietowanie auto-rename.tags=auto-detect,header-based,organize,relabel
home.adjust-contrast.title=Zmień kolor/nasycenie/jasność home.adjust-contrast.title=Zmień kolor/nasycenie/jasność
home.adjust-contrast.desc=Zmień kolor/nasycenie/jasność w dokumencie PDF home.adjust-contrast.desc=Zmień kolor/nasycenie/jasność w dokumencie PDF
adjust-contrast.tags=Korekcja kolorów, dostrajanie, modyfikacja, ulepszanie adjust-contrast.tags=color-correction,tune,modify,enhance
home.crop.title=Przytnij PDF home.crop.title=Przytnij PDF
home.crop.desc=Przytnij dokument PDF w celu zmniejszenia rozmiaru home.crop.desc=Przytnij dokument PDF w celu zmniejszenia rozmiaru
crop.tags=przycinanie, zmniejszanie, edycja, kształtowanie crop.tags=trim,shrink,edit,shape
home.autoSplitPDF.title=Automatycznie podziel strony home.autoSplitPDF.title=Automatycznie podziel strony
home.autoSplitPDF.desc=Automatycznie podziel dokument na strony home.autoSplitPDF.desc=Automatycznie podziel dokument na strony
autoSplitPDF.tags=Oparty na QR, rozdzielanie, skanowanie, organizowanie autoSplitPDF.tags=QR-based,separate,scan-segment,organize
home.sanitizePdf.title=Dezynfekcja home.sanitizePdf.title=Dezynfekcja
home.sanitizePdf.desc=Usuń skrypt i inne elementy z dokumentu PDF home.sanitizePdf.desc=Usuń skrypt i inne elementy z dokumentu PDF
sanitizePdf.tags=czyszczenie, ochrona, bezpieczeństwo, usuwanie zagrożeń sanitizePdf.tags=clean,secure,safe,remove-threats
home.URLToPDF.title=Strona WWW do PDFa home.URLToPDF.title=Strona WWW do PDFa
home.URLToPDF.desc=Zapisuje podany adres WWW do PDFa home.URLToPDF.desc=Zapisuje podany adres WWW do PDFa
URLToPDF.tags=przechwytywanie stron internetowych, zapisywanie strony, strona internetowa do dokumentu, archiwizacja URLToPDF.tags=web-capture,save-page,web-to-doc,archive
home.HTMLToPDF.title=HTML do PDF home.HTMLToPDF.title=HTML do PDF
home.HTMLToPDF.desc=Zapisuje podany plik HTML/ZIP do PDF home.HTMLToPDF.desc=Zapisuje podany plik HTML/ZIP do PDF
HTMLToPDF.tags=znaczniki, treść internetowa, transformacja, konwertowanie HTMLToPDF.tags=markup,web-content,transformation,convert
home.MarkdownToPDF.title=Markdown do PDF home.MarkdownToPDF.title=Markdown do PDF
home.MarkdownToPDF.desc=Zapisuje dokument Markdown do PDF home.MarkdownToPDF.desc=Zapisuje dokument Markdown do PDF
MarkdownToPDF.tags=znaczniki, treść internetowa, transformacja, konwertowanie MarkdownToPDF.tags=markup,web-content,transformation,convert
home.getPdfInfo.title=Pobierz informacje o pliku PDF home.getPdfInfo.title=Pobierz informacje o pliku PDF
home.getPdfInfo.desc=Pobiera wszelkie informacje o pliku PDF home.getPdfInfo.desc=Pobiera wszelkie informacje o pliku PDF
getPdfInfo.tags=informacje, dane, statystyka, statystyki getPdfInfo.tags=infomation,data,stats,statistics
home.extractPage.title=Wyciągnij stronę z PDF home.extractPage.title=Wyciągnij stronę z PDF
home.extractPage.desc=Wyciąga stronę z dokumentu PDF home.extractPage.desc=Wyciąga stronę z dokumentu PDF
extractPage.tags=wydobycie,separacja,wyciaganie extractPage.tags=extract
home.PdfToSinglePage.title=PDF do jednej strony home.PdfToSinglePage.title=PDF do jednej strony
home.PdfToSinglePage.desc=Łączy wszystkie strony PDFa w jedną wielką stronę PDF home.PdfToSinglePage.desc=Łączy wszystkie strony PDFa w jedną wielką stronę PDF
PdfToSinglePage.tags=pojedyncza strona PdfToSinglePage.tags=single page
home.showJS.title=Pokaż kod JavaScript home.showJS.title=Pokaż kod JavaScript
@@ -468,66 +465,66 @@ showJS.tags=JS
home.autoRedact.title=Zaciemnij home.autoRedact.title=Zaciemnij
home.autoRedact.desc=Zaciemnia dokument PDF bazując na podanej wartości home.autoRedact.desc=Zaciemnia dokument PDF bazując na podanej wartości
autoRedact.tags=Redagowanie, ukrywanie, zaciemnianie, zaczernianie, zaznaczanie, ukrywanie autoRedact.tags=Redact,Hide,black out,black,marker,hidden
home.tableExtraxt.title=PDF do CSV home.tableExtraxt.title=PDF do CSV
home.tableExtraxt.desc=Konwertuje tabele z PDF do pliku CSV home.tableExtraxt.desc=Konwertuje tabele z PDF do pliku CSV
tableExtraxt.tags=CSV, ekstrakcja tabeli, ekstrakcja, konwersja, wydobywanie tableExtraxt.tags=CSV,Table Extraction,extract,convert
home.autoSizeSplitPDF.title=Podziel (Rozmiar/Ilość stron) home.autoSizeSplitPDF.title=Podziel (Rozmiar/Ilość stron)
home.autoSizeSplitPDF.desc=Rozdziela dokument PDF na wiele dokumentów bazując na podanym rozmiarze, ilości stron bądź ilości dokumentów home.autoSizeSplitPDF.desc=Rozdziela dokument PDF na wiele dokumentów bazując na podanym rozmiarze, ilości stron bądź ilości dokumentów
autoSizeSplitPDF.tags=pdf, dzielenie, dokument, organizacja autoSizeSplitPDF.tags=pdf,split,document,organization
home.overlay-pdfs.title=Nałóż PDFa home.overlay-pdfs.title=Nałóż PDFa
home.overlay-pdfs.desc=Nakłada dokumenty PDF na siebie home.overlay-pdfs.desc=Nakłada dokumenty PDF na siebie
overlay-pdfs.tags=Nakładka overlay-pdfs.tags=Overlay
home.split-by-sections.title=Podziel PDF na sekcje home.split-by-sections.title=Podziel PDF na sekcje
home.split-by-sections.desc=Podziel strony PDF w mniejsze sekcje home.split-by-sections.desc=Podziel strony PDF w mniejsze sekcje
split-by-sections.tags=Podział sekcji, dzielenie, dostosowywanie split-by-sections.tags=Section Split, Divide, Customize
home.AddStampRequest.title=Dodaj pieczęć home.AddStampRequest.title=Dodaj pieczęć
home.AddStampRequest.desc=Dodaj pieczęć tekstową/obrazową w wyznaczonej lokalizacji dokumentu home.AddStampRequest.desc=Dodaj pieczęć tekstową/obrazową w wyznaczonej lokalizacji dokumentu
AddStampRequest.tags=Stempel, dodawanie obrazu, wyśrodkowanie obrazu, znak wodny, PDF, osadzanie, dostosowywanie AddStampRequest.tags=Stamp, Add image, center image, Watermark, PDF, Embed, Customize
home.PDFToBook.title=PDF do eBooka home.PDFToBook.title=PDF do eBooka
home.PDFToBook.desc=Zapisuje dokument PDF w formacie eBooka za pomocą Calibre home.PDFToBook.desc=Zapisuje dokument PDF w formacie eBooka za pomocą Calibre
PDFToBook.tags=Książka,komiks,Calibre, konwertowanie, manga, amazon, kindle PDFToBook.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.BookToPDF.title=eBook do PDF home.BookToPDF.title=eBook do PDF
home.BookToPDF.desc=Zapisuje ebooka do PDF za pomocą Calibre home.BookToPDF.desc=Zapisuje ebooka do PDF za pomocą Calibre
BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.removeImagePdf.title=Usuń obraz home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=Usuń obraz z pliku PDF, aby zmniejszyć rozmiar pliku home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Usuń obraz, operacje na stronie, back-end, strona serwera removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=Podziel PDF według rozdziałów home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Podział pliku PDF na wiele plików na podstawie struktury rozdziałów. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=podział, rozdziały, zakładki, porządkowanie, organizacja splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Zamień-Odwróć-Kolor replace-color.title=Replace-Invert-Color
replace-color.header=Zamień-Odwróć kolor PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Zastąp i Odwróć Kolor home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Zastąp kolor tekstu i tła w pliku PDF i odwróć pełen kolor pliku PDF, aby zmniejszyć rozmiar pliku home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Zastąp kolor, operacje na stronach, back-end, strona serwera replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Zastąp lub Odwróć opcje kolorów replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Domyślnie (domyślne kolory o wysokim kontraście) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Niestandardowe (kolory niestandardowe) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Całkowita-Odwrotność (Odwrócenie wszystkich kolorów) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Wysoki kontrast opcji kolorystycznych replace-color.selectText.5=High contrast color options
replace-color.selectText.6=biały tekst na czarnym tle replace-color.selectText.6=white text on black background
replace-color.selectText.7=Czarny tekst na białym tle replace-color.selectText.7=Black text on white background
replace-color.selectText.8=Żółty tekst na czarnym tle replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=Zielony tekst na czarnym tle replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Wybierz Kolor tekstu replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Wybierz Kolor tła replace-color.selectText.11=Choose background Color
replace-color.submit=Zamień replace-color.submit=Replace
@@ -546,17 +543,18 @@ login.locked=Konto jest zablokowane
login.signinTitle=Zaloguj się login.signinTitle=Zaloguj się
login.ssoSignIn=Zaloguj się za pomocą logowania jednokrotnego login.ssoSignIn=Zaloguj się za pomocą logowania jednokrotnego
login.oauth2AutoCreateDisabled=Wyłączono automatyczne tworzenie użytkownika OAUTH2 login.oauth2AutoCreateDisabled=Wyłączono automatyczne tworzenie użytkownika OAUTH2
login.oauth2AdminBlockedUser=Rejestracja lub logowanie niezarejestrowanych użytkowników jest obecnie zablokowane. Prosimy o kontakt z administratorem. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Błąd logowania OAuth2 login.oauth2RequestNotFound=Błąd logowania OAuth2
login.oauth2InvalidUserInfoResponse=Niewłaściwe dane logowania login.oauth2InvalidUserInfoResponse=Niewłaściwe dane logowania
login.oauth2invalidRequest=Nieprawidłowe żądanie login.oauth2invalidRequest=Nieprawidłowe żądanie
login.oauth2AccessDenied=Brak dostępu login.oauth2AccessDenied=Brak dostępu
login.oauth2InvalidTokenResponse=Nieprawidłowa odpowiedź na token login.oauth2InvalidTokenResponse=Nieprawidłowa odpowiedź na token
login.oauth2InvalidIdToken=Nieprawidłowa wartość tokenu login.oauth2InvalidIdToken=Nieprawidłowa wartość tokenu
login.userIsDisabled=Użytkownik jest nieaktywny, logowanie przy użyciu tej nazwy użytkownika jest obecnie zablokowane. Prosimy o kontakt z administratorem. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=Jesteś już zalogowany na login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=urządzeniach. Wyloguj się z tych urządzeń i spróbuj ponownie. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Masz zbyt wiele aktywnych sesji login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Automatyczne zaciemnienie autoRedact.title=Automatyczne zaciemnienie
@@ -751,7 +749,6 @@ certSign.showSig=Wyświetl podpis
certSign.reason=Organizacja certSign.reason=Organizacja
certSign.location=Lokalizacja certSign.location=Lokalizacja
certSign.name=Nazwa certSign.name=Nazwa
certSign.showLogo=Show Logo
certSign.submit=Podpisz PDF certSign.submit=Podpisz PDF
@@ -781,14 +778,11 @@ removeAnnotations.submit=Usuń
#compare #compare
compare.title=Porównaj compare.title=Porównaj
compare.header=Porównaj PDF(y) compare.header=Porównaj PDF(y)
compare.highlightColor.1=Kolor Podświetlenia 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=Kolor Podświetlenia 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=Dokument 1 compare.document.1=Dokument 1
compare.document.2=Dokument 2 compare.document.2=Dokument 2
compare.submit=Porównaj compare.submit=Porównaj
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.
#BookToPDF #BookToPDF
BookToPDF.title=eBooki do PDF BookToPDF.title=eBooki do PDF
@@ -811,11 +805,6 @@ sign.draw=Narysuj podpis
sign.text=Wprowadź tekst sign.text=Wprowadź tekst
sign.clear=Wyczyść sign.clear=Wyczyść
sign.add=Dodaj sign.add=Dodaj
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=Minimalny obszar konturu:
ScannerImageSplit.selectText.8=Ustawia próg minimalnego obszaru konturu dla zdjęcia ScannerImageSplit.selectText.8=Ustawia próg minimalnego obszaru konturu dla zdjęcia
ScannerImageSplit.selectText.9=Rozmiar obramowania: ScannerImageSplit.selectText.9=Rozmiar obramowania:
ScannerImageSplit.selectText.10=Ustawia rozmiar dodawanego i usuwanego obramowania, aby uniknąć białych obramowań na wyjściu (domyślnie: 1). ScannerImageSplit.selectText.10=Ustawia rozmiar dodawanego i usuwanego obramowania, aby uniknąć białych obramowań na wyjściu (domyślnie: 1).
ScannerImageSplit.info=Python nie został zainstalowany. Jest on wymagany do uruchomienia. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=Przetwarzaj PDF za pomocą OCR
extractImages.title=Wyodrębnij obrazy extractImages.title=Wyodrębnij obrazy
extractImages.header=Wyodrębnij obrazy extractImages.header=Wyodrębnij obrazy
extractImages.selectText=Wybierz format obrazu, na który chcesz przekonwertować wyodrębniony obraz. extractImages.selectText=Wybierz format obrazu, na który chcesz przekonwertować wyodrębniony obraz.
extractImages.allowDuplicates=Zapisz zduplikowane obrazy extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Wyodrębnij extractImages.submit=Wyodrębnij
@@ -930,8 +919,8 @@ pdfOrganiser.placeholder=(przykład 1,3,2 lub 4-8,2,10-12 lub 2n-1)
#multiTool #multiTool
multiTool.title=Narzędzie Wielofunkcyjne PDF multiTool.title=Multi narzędzie PDF
multiTool.header=Narzędzie Wielofunkcyjne PDF multiTool.header=Multi narzędzie PDF
multiTool.uploadPrompts=Nazwa pliku multiTool.uploadPrompts=Nazwa pliku
#view pdf #view pdf
@@ -994,7 +983,7 @@ pdfToImage.color=Kolor
pdfToImage.grey=Odcień szarości pdfToImage.grey=Odcień szarości
pdfToImage.blackwhite=Czarno-biały (może spowodować utratę danych!) pdfToImage.blackwhite=Czarno-biały (może spowodować utratę danych!)
pdfToImage.submit=Konwertuj pdfToImage.submit=Konwertuj
pdfToImage.info=Python nie został zainstalowany. Jest wymagany do konwersji WebP. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1031,7 +1020,7 @@ watermark.selectText.6=Odstęp w pionie (odstęp między każdym znakiem wodnym
watermark.selectText.7=Nieprzezroczystość (0% - 100%): watermark.selectText.7=Nieprzezroczystość (0% - 100%):
watermark.selectText.8=Typ znaku wodnego: watermark.selectText.8=Typ znaku wodnego:
watermark.selectText.9=Obraz znaku wodnego: watermark.selectText.9=Obraz znaku wodnego:
watermark.selectText.10=Konwertuj PDF do PDF-Image watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=Dodaj znak wodny watermark.submit=Dodaj znak wodny
watermark.type.1=Tekst watermark.type.1=Tekst
watermark.type.2=Obraz watermark.type.2=Obraz
@@ -1131,7 +1120,7 @@ PDFToXML.submit=Konwertuj
#PDFToCSV #PDFToCSV
PDFToCSV.title=PDF na CSV PDFToCSV.title=PDF na CSV
PDFToCSV.header=PDF na CSV PDFToCSV.header=PDF na CSV
PDFToCSV.prompt=Wybierz stronę do wyodrębnienia tabeli PDFToCSV.prompt=Choose page to extract table
PDFToCSV.submit=Zatwierdź PDFToCSV.submit=Zatwierdź
#split-by-size-or-count #split-by-size-or-count
@@ -1193,8 +1182,8 @@ licenses.license=Licencja
survey.nav=Ankieta survey.nav=Ankieta
survey.title=Ankieta Stirling-PDF survey.title=Ankieta Stirling-PDF
survey.description=Stirling-PDF nie śledzi swoich użytkowników, więc chciałby poznać opinie swoich użytkowników! survey.description=Stirling-PDF nie śledzi swoich użytkowników, więc chciałby poznać opinie swoich użytkowników!
survey.changes=Stirling-PDF zmieniło się od czasu ostatniej ankiety! Aby dowiedzieć się więcej, sprawdź nasz wpis na blogu tutaj: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=Dzięki tym zmianom otrzymujemy płatne wsparcie biznesowe i finansowanie survey.changes2=With these changes we are getting paid business support and funding
survey.please=Wypełnij proszę ankietę dla nas! survey.please=Wypełnij proszę ankietę dla nas!
survey.disabled=(Blokada wyskakującego okienka z ankieta zostanie dodane w następnych aktualizacjach, ale będzie dostępna na dole strony) survey.disabled=(Blokada wyskakującego okienka z ankieta zostanie dodane w następnych aktualizacjach, ale będzie dostępna na dole strony)
survey.button=Wypełnij ankietę survey.button=Wypełnij ankietę
@@ -1216,19 +1205,21 @@ error.discordSubmit=Discord - wyślij posta z prośbą o pomoc
#remove-image #remove-image
removeImage.title=Usuń obraz removeImage.title=Remove image
removeImage.header=Usuń obraz removeImage.header=Remove image
removeImage.removeImage=Usuń obraz removeImage.removeImage=Remove image
removeImage.submit=Usuń obraz removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=Podziel PDF według Rozdziałów
splitByChapters.header=Podziel PDF według Rozdziałów
splitByChapters.bookmarkLevel=Poziom Zakładek
splitByChapters.includeMetadata=Dołącz Metadane
splitByChapters.allowDuplicates=Zezwalaj na Duplikaty
splitByChapters.desc.1=Narzędzie to dzieli plik PDF na wiele plików PDF w oparciu o strukturę rozdziałów.
splitByChapters.desc.2=Poziom Zakładek: Wybierz poziom zakładek, który ma zostać użyty do podziału (0 dla najwyższego poziomu, 1 dla drugiego poziomu itd.).
splitByChapters.desc.3=Dołącz Metadane: Jeśli opcja ta jest zaznaczona, metadane oryginalnego pliku PDF zostaną uwzględnione w każdym rozdzielonych plików PDF.
splitByChapters.desc.4=Zezwól na Duplikaty: Jeśli ta opcja jest zaznaczona, pozwala na tworzenie oddzielnych plików PDF przez wiele zakładek na tej samej stronie.
splitByChapters.submit=Podziel PDF

View File

@@ -76,11 +76,9 @@ donate=Doar
color=Cor color=Cor
sponsor=Patrocinador sponsor=Patrocinador
info=Informações info=Informações
pro=Profissional pro=Pro
page=Página page=Página
pages=Páginas pages=Páginas
loading=Carregando...
addToDoc=Adicionar ao Documento
legal.privacy=Política de Privacidade legal.privacy=Política de Privacidade
legal.terms=Termos e Condições legal.terms=Termos e Condições
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=Converter de PDF
navbar.sections.security=Assinatura & Segurança navbar.sections.security=Assinatura & Segurança
navbar.sections.advance=Avançado navbar.sections.advance=Avançado
navbar.sections.edit=Visualizar & editar navbar.sections.edit=Visualizar & editar
navbar.sections.popular=Populares navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=O arquivo não pode estar nulo ou vazio
database.failedImportFile=Falha ao importar arquivo database.failedImportFile=Falha ao importar arquivo
session.expired=Sua sessão expirou. Por gentileza atualize a página e tente novamente. session.expired=Sua sessão expirou. Por gentileza atualize a página e tente novamente.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=O usuário está desativado, o login está atualmente bloqu
login.alreadyLoggedIn=Você já está conectado login.alreadyLoggedIn=Você já está conectado
login.alreadyLoggedIn2=aparelhos. Por favor saia dos aparelhos e tente novamente. login.alreadyLoggedIn2=aparelhos. Por favor saia dos aparelhos e tente novamente.
login.toManySessions=Você tem muitas sessões ativas login.toManySessions=Você tem muitas sessões ativas
login.toManySessions2=Por favor saida dos aparelhos e tente novamente. Alternativamente você pode adquirir Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Redação Automática de Dados autoRedact.title=Redação Automática de Dados
@@ -751,7 +749,6 @@ certSign.showSig=Mostrar Assinatura
certSign.reason=Razão certSign.reason=Razão
certSign.location=Localização certSign.location=Localização
certSign.name=Nome certSign.name=Nome
certSign.showLogo=Mostrar Logotipo
certSign.submit=Assinar PDF certSign.submit=Assinar PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Cor de destaque 2:
compare.document.1=Documento 1 compare.document.1=Documento 1
compare.document.2=Documento 2 compare.document.2=Documento 2
compare.submit=Comparar compare.submit=Comparar
compare.complex.message=Um ou ambos os documentos fornecidos são arquivos grandes, a precisão da comparação pode ser reduzida
compare.large.file.message=Um ou ambos os documentos fornecidos são muito grandes para processar
compare.no.text.message=Um ou ambos os PDFs selecionados não possuem conteúdo de texto. Por favor, escolha PDFs com texto para comparação.
#BookToPDF #BookToPDF
BookToPDF.title=Livros e Quadrinhos para PDF BookToPDF.title=Livros e Quadrinhos para PDF
@@ -811,11 +805,6 @@ sign.draw=Desenhar Assinatura
sign.text=Inserir texto sign.text=Inserir texto
sign.clear=Limpar sign.clear=Limpar
sign.add=Adicionar sign.add=Adicionar
sign.saved=Assinaturas Salvas
sign.save=Salvar Assinatura
sign.personalSigs=Assinaturas Pessoais
sign.sharedSigs=Assinaturas Compartilhadas
sign.noSavedSigs=Nenhuma assinatura salva encontrada
#repair #repair
@@ -1075,7 +1064,7 @@ changeMetadata.keywords=Palavras-chave:
changeMetadata.modDate=Data de modificação (aaaa/MM/dd HH:mm:ss): changeMetadata.modDate=Data de modificação (aaaa/MM/dd HH:mm:ss):
changeMetadata.producer=Produtor: changeMetadata.producer=Produtor:
changeMetadata.subject=Assunto: changeMetadata.subject=Assunto:
changeMetadata.trapped=Atrapado: changeMetadata.trapped=Trapped:
changeMetadata.selectText.4=Outros metadados: changeMetadata.selectText.4=Outros metadados:
changeMetadata.selectText.5=Adicionar entrada de metadados personalizada changeMetadata.selectText.5=Adicionar entrada de metadados personalizada
changeMetadata.submit=Alterar changeMetadata.submit=Alterar
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Nível de Marcador: Escolha o nível de marcador a ser us
splitByChapters.desc.3=Incluir Metadados: Se marcado, os metadados do PDF original serão incluidos em cada divisão do PDF. splitByChapters.desc.3=Incluir Metadados: Se marcado, os metadados do PDF original serão incluidos em cada divisão do PDF.
splitByChapters.desc.4=Permitir Cópias: Se marcado, habilita vários marcadores na mesma página para criar PDFs separados. splitByChapters.desc.4=Permitir Cópias: Se marcado, habilita vários marcadores na mesma página para criar PDFs separados.
splitByChapters.submit=Dividir PDF splitByChapters.submit=Dividir PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Tamanho da Fonte addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Nome da Fonte addPageNumbers.fontName=Font Name
pdfPrompt=Selecione PDF(s) pdfPrompt=Selecione PDF(s)
multiPdfPrompt=Selecione PDFs (2+) multiPdfPrompt=Selecione PDFs (2+)
multiPdfDropPrompt=Selecione (ou arraste e solte) todos os PDFs necessários multiPdfDropPrompt=Selecione (ou arraste e solte) todos os PDFs necessários
@@ -18,11 +18,11 @@ true=Verdadeiro
false=Falso false=Falso
unknown=Desconhecido unknown=Desconhecido
save=Salvar save=Salvar
saveToBrowser=Guardar no Navegador saveToBrowser=Save to Browser
close=Fechar close=Fechar
filesSelected=Ficheiros Selecionados filesSelected=Ficheiros Selecionados
noFavourites=Nenhum favorito adicionado noFavourites=Nenhum favorito adicionado
downloadComplete=Download Completo downloadComplete=Download Complete
bored=Entediado esperando? bored=Entediado esperando?
alphabet=Alfabeto alphabet=Alfabeto
downloadPdf=Descarregar PDF downloadPdf=Descarregar PDF
@@ -55,38 +55,36 @@ notAuthenticatedMessage=Utilizador não autenticado.
userNotFoundMessage=Utilizador inexistente. userNotFoundMessage=Utilizador inexistente.
incorrectPasswordMessage=Senha incorreta. incorrectPasswordMessage=Senha incorreta.
usernameExistsMessage=Esse utilizador já existe. usernameExistsMessage=Esse utilizador já existe.
invalidUsernameMessage=Nome de utilizador inválido, o nome de utilizador pode conter apenas letras, números e os seguintes caracteres especiais @._+- ou deve ser um endereço de email válido. invalidUsernameMessage=Invalid username, username can only contain letters, numbers and the following special characters @._+- or must be a valid email address.
invalidPasswordMessage=A senha não pode estar vazia e não deve ter espaços no início ou final. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=Nova Senha e Confirmação de Nova Senha devem corresponder. confirmPasswordErrorMessage=New Password and Confirm New Password must match.
deleteCurrentUserMessage=Não pode apagar o utilizador atualmente logado. deleteCurrentUserMessage=Cannot delete currently logged in user.
deleteUsernameExistsMessage=O nome de utilizador não existe e não pode ser apagado. deleteUsernameExistsMessage=The username does not exist and cannot be deleted.
downgradeCurrentUserMessage=Não é possível fazer downgrade da função do utilizador atual downgradeCurrentUserMessage=Não é possível fazer downgrade da função do utilizador atual
disabledCurrentUserMessage=O utilizador actual não pode ser desactivado disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=Não é possível fazer downgrade da função do utilizador atual. Portanto, o utilizador atual não será mostrado. downgradeCurrentUserLongMessage=Não é possível fazer downgrade da função do utilizador atual. Portanto, o utilizador atual não será mostrado.
userAlreadyExistsOAuthMessage=O utilizador já existe como um utilizador OAuth2. userAlreadyExistsOAuthMessage=The user already exists as an OAuth2 user.
userAlreadyExistsWebMessage=O utilizador já existe como um utilizador da web. userAlreadyExistsWebMessage=The user already exists as an web user.
error=Erro error=Error
oops=Oops! oops=Oops!
help=Ajuda help=Help
goHomepage=Ir para a Página Inicial goHomepage=Go to Homepage
joinDiscord=Junte-se ao nosso servidor Discord joinDiscord=Join our Discord server
seeDockerHub=Ver o Docker Hub seeDockerHub=See Docker Hub
visitGithub=Visitar Repositório do Github visitGithub=Visit Github Repository
donate=Doar donate=Donate
color=Cor color=Color
sponsor=Patrocinar sponsor=Sponsor
info=Informação info=Info
pro=Pro pro=Pro
page=Página page=Page
pages=Páginas pages=Pages
loading=A carregar...
addToDoc=Adicionar ao Documento
legal.privacy=Política de Privacidade legal.privacy=Privacy Policy
legal.terms=Termos e Condições legal.terms=Terms and Conditions
legal.accessibility=Acessibilidade legal.accessibility=Accessibility
legal.cookie=Política de Cookies legal.cookie=Cookie Policy
legal.impressum=Impressão legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -97,8 +95,8 @@ pipeline.configureButton=Configurar
pipeline.defaultOption=Personalizar pipeline.defaultOption=Personalizar
pipeline.submitButton=Submeter pipeline.submitButton=Submeter
pipeline.help=Pipeline Help pipeline.help=Pipeline Help
pipeline.scanHelp= Ajuda ao Escaneamento de Pastas pipeline.scanHelp=Folder Scanning Help
pipeline.deletePrompt=Tem a certeza que quer eliminar o pipeline? pipeline.deletePrompt=Are you sure you want to delete pipeline
###################### ######################
# Pipeline Options # # Pipeline Options #
@@ -116,45 +114,45 @@ pipelineOptions.validateButton=Validar
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Atualizar para Pro enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Esta funcionalidade está disponível apenas para os utilizadores Pro. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro suporta ficheiros de configuração YAML e outras funcionalidades SSO. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Procuras mais funcionalidades de gestão de utilizadores? Verifica Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Queres tornar o Stirling PDF melhor? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=O Stirling PDF tem análises de entrada voluntária para nos ajudar a melhorar o produto. Não registamos qualquer informação pessoal ou conteúdo dos ficheiros. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Considera ativar as análises para nos auxiliar no crescimento do Stirling-PDF e na compreensão dos nossos utilizadores melhor. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Ativar analítico analytics.enable=Enable analytics
analytics.disable=Desativar analítico analytics.disable=Disable analytics
analytics.settings=Podes mudar as configurações de análises no ficheiro config/settings.yml analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
############# #############
navbar.favorite=Favoritos navbar.favorite=Favorites
navbar.darkmode=Modo Escuro navbar.darkmode=Modo Escuro
navbar.language=Idiomas navbar.language=Languages
navbar.settings=Configurações navbar.settings=Configurações
navbar.allTools=Ferramentas navbar.allTools=Tools
navbar.multiTool=Multi Tools navbar.multiTool=Multi Tools
navbar.sections.organize=Organizar navbar.sections.organize=Organize
navbar.sections.convertTo=Converter para PDF navbar.sections.convertTo=Convert to PDF
navbar.sections.convertFrom=Converter de PDF navbar.sections.convertFrom=Convert from PDF
navbar.sections.security=Assinar & Segurança navbar.sections.security=Sign & Security
navbar.sections.advance=Avançado navbar.sections.advance=Advanced
navbar.sections.edit=Visualizar & Editar navbar.sections.edit=View & Edit
navbar.sections.popular=Populares navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
############# #############
settings.title=Configurações settings.title=Configurações
settings.update=Atualização disponível settings.update=Atualização disponível
settings.updateAvailable={0} é a versão atual instalada. Uma nova versão ({1}) está disponível. settings.updateAvailable={0} is the current installed version. A new version ({1}) is available.
settings.appVersion=Versão da aplicação: settings.appVersion=Versão da aplicação:
settings.downloadOption.title=Escolha a opção de download (para downloads não compactados de ficheiro único): settings.downloadOption.title=Escolha a opção de download (para downloads não compactados de ficheiro único):
settings.downloadOption.1=Abrir na mesma janela settings.downloadOption.1=Abrir na mesma janela
@@ -163,13 +161,13 @@ settings.downloadOption.3=⇬ Fazer download do ficheiro
settings.zipThreshold=Compactar ficheiros quando o número de ficheiros baixados exceder settings.zipThreshold=Compactar ficheiros quando o número de ficheiros baixados exceder
settings.signOut=Terminar Sessão settings.signOut=Terminar Sessão
settings.accountSettings=Configuração de Conta settings.accountSettings=Configuração de Conta
settings.bored.help=Ativa o jogo da páscoa settings.bored.help=Enables easter egg game
settings.cacheInputs.name=Guardar entradas do formulário settings.cacheInputs.name=Save form inputs
settings.cacheInputs.help=Ativar para armazenar entradas anteriores do formulário para futuras sessões settings.cacheInputs.help=Enable to store previously used inputs for future runs
changeCreds.title=Alterar senha changeCreds.title=Alterar senha
changeCreds.header=Alterar dados da sua conta changeCreds.header=Alterar dados da sua conta
changeCreds.changePassword=Está a usar as credenciais de login predefinidas. Por favor, introduza uma nova senha changeCreds.changePassword=You are using default login credentials. Please enter a new password
changeCreds.newUsername=Novo Utilizador changeCreds.newUsername=Novo Utilizador
changeCreds.oldPassword=Senha Atual changeCreds.oldPassword=Senha Atual
changeCreds.newPassword=Nova Senha changeCreds.newPassword=Nova Senha
@@ -178,75 +176,74 @@ changeCreds.submit=Submeter Alterações
account.title=Definições da Conta account.title=Account Settings
account.accountSettings=Definições da Conta account.accountSettings=Account Settings
account.adminSettings=Definições de Administrador - Visualizar e Adicionar Utilizadores account.adminSettings=Admin Settings - View and Add Users
account.userControlSettings=Definições de Controlo do Utilizador account.userControlSettings=User Control Settings
account.changeUsername=Alterar Nome de Utilizador account.changeUsername=Change Username
account.newUsername=Novo Nome de Utilizador account.newUsername=New Username
account.password=Confirmação da Senha account.password=Confirmation Password
account.oldPassword=Antiga senha account.oldPassword=Old password
account.newPassword=Nova senha account.newPassword=New Password
account.changePassword=Alterar a Senha account.changePassword=Change Password
account.confirmNewPassword=Confirmar Nova Senha account.confirmNewPassword=Confirm New Password
account.signOut=Sair do Sistema account.signOut=Sign Out
account.yourApiKey=Sua Chave API account.yourApiKey=Your API Key
account.syncTitle= sincronizar definições do navegador com a conta account.syncTitle=Sync browser settings with Account
account.settingsCompare=Comparação das Definições: account.settingsCompare=Settings Comparison:
account.property=Propriedade account.property=Property
account.webBrowserSettings=Configurações do Navegador Web account.webBrowserSettings=Web Browser Setting
account.syncToBrowser=Sincronizar Conta -> Navegador account.syncToBrowser=Sync Account -> Browser
account.syncToAccount=Sincronizar Conta <- Navegador account.syncToAccount=Sync Account <- Browser
adminUserSettings.title=Definições de Controlo do Utilizador adminUserSettings.title=User Control Settings
adminUserSettings.header=Definições de Controlo do Utilizador (Admin) adminUserSettings.header=Admin User Control Settings
adminUserSettings.admin=Administrador adminUserSettings.admin=Admin
adminUserSettings.user=Utilizador adminUserSettings.user=User
adminUserSettings.addUser=Adicionar Novo Utilizador adminUserSettings.addUser=Add New User
adminUserSettings.deleteUser=Apagar Utilizador adminUserSettings.deleteUser=Delete User
adminUserSettings.confirmDeleteUser=Deverá o utilizador ser apagado? adminUserSettings.confirmDeleteUser=Should the user be deleted?
adminUserSettings.confirmChangeUserStatus=Deverá a situação do utilizador ser alterada (desativar/ativar)? adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=O nome de utilizador só pode conter letras, números e os seguintes caracteres especiais @._+- ou deve ser um endereço de email válido. adminUserSettings.usernameInfo=Username can only contain letters, numbers and the following special characters @._+- or must be a valid email address.
adminUserSettings.roles=Papeis adminUserSettings.roles=Roles
adminUserSettings.role=Papel adminUserSettings.role=Role
adminUserSettings.actions=Ações adminUserSettings.actions=Actions
adminUserSettings.apiUser=Utilizador API Limitado adminUserSettings.apiUser=Limited API User
adminUserSettings.extraApiUser=Utilizador ADicional API Limitado adminUserSettings.extraApiUser=Additional Limited API User
adminUserSettings.webOnlyUser=Utilizador Apenas Web adminUserSettings.webOnlyUser=Web Only User
adminUserSettings.demoUser=Utilizador Demo (Sem Configurações Personalizadas) adminUserSettings.demoUser=Demo User (No custom settings)
adminUserSettings.internalApiUser=Utilizador API Interno adminUserSettings.internalApiUser=Internal API User
adminUserSettings.forceChange=Forçar utilizador a mudar a senha ao fazer login adminUserSettings.forceChange=Force user to change password on login
adminUserSettings.submit=Guardar Utilizador adminUserSettings.submit=Save User
adminUserSettings.changeUserRole=Alterar usuário adminUserSettings.changeUserRole=Alterar usuário
adminUserSettings.authenticated=Autenticado adminUserSettings.authenticated=Authenticated
adminUserSettings.editOwnProfil=Editar perfil próprio adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=utilizador habilitado adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=utilizador desabilitado adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Utilizadores Activos: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Utilizadores Desactivados: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Total de Utilizadores: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=Última Requisição adminUserSettings.lastRequest=Last Request
database.title=Importação/Exportação de Base de Dados database.title=Database Import/Export
database.header=Importação/Exportação de Base de Dados database.header=Database Import/Export
database.fileName=Nome do Ficheiro database.fileName=File Name
database.creationDate=Data de Criação database.creationDate=Creation Date
database.fileSize=Tamanho do Ficheiro database.fileSize=File Size
database.deleteBackupFile=Apagar Ficheiro de Backup database.deleteBackupFile=Delete Backup File
database.importBackupFile=Importar Ficheiro de Backup database.importBackupFile=Import Backup File
database.downloadBackupFile=Baixar Ficheiro de Backup database.downloadBackupFile=Download Backup File
database.info_1=Ao importar dados, é crucial assegurar a estrutura correta. Se não estiver seguro do que está a fazer, busque conselhos e apoio de um profissional. Um erro na estrutura pode causar mal funcionamento da aplicação, até mesmo o impossibilitar de executá-la. database.info_1=When importing data, it is crucial to ensure the correct structure. If you are unsure of what you are doing, seek advice and support from a professional. An error in the structure can cause application malfunctions, up to and including the complete inability to run the application.
database.info_2=O nome do ficheiro não importa ao carregar. Será renomeado posteriormente para seguir o formato backup_user_yyyyMMddHHmm.sql, garantindo uma convenção de nomenclatura consistente. database.info_2=The file name does not matter when uploading. It will be renamed afterward to follow the format backup_user_yyyyMMddHHmm.sql, ensuring a consistent naming convention.
database.submit=Importar Backup database.submit=Import Backup
database.importIntoDatabaseSuccessed=Importação no banco de dados concluída com sucesso database.importIntoDatabaseSuccessed=Import into database successed
database.fileNotFound=File not Found database.fileNotFound=File not Found
database.fileNullOrEmpty=O ficheiro não pode ser nulo ou vazio database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=A sessão expirou. Por favor, recarregue a página e tente novamente. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -383,7 +380,7 @@ removeBlanks.tags=limpeza,otimização,sem-conteúdo,organizar
home.removeAnnotations.title=Removee Notas home.removeAnnotations.title=Removee Notas
home.removeAnnotations.desc=Remove todas as notas ou comentário de um PDF. home.removeAnnotations.desc=Remove todas as notas ou comentário de um PDF.
removeAnnotations.tags=comentários,destaque,notas,marcação,remover removeAnnotations.tags=comments,highlight,notes,markup,remove
home.compare.title=Comparar home.compare.title=Comparar
home.compare.desc=Comparar e mostrar as diferenças entre 2 documentos PDF home.compare.desc=Comparar e mostrar as diferenças entre 2 documentos PDF
@@ -393,9 +390,9 @@ home.certSign.title=Assinar com Certificado
home.certSign.desc=Assinar um PDF com um Certificado/Chave (PEM/P12) home.certSign.desc=Assinar um PDF com um Certificado/Chave (PEM/P12)
certSign.tags=autenticar,PEM,P12,oficial,criptografar certSign.tags=autenticar,PEM,P12,oficial,criptografar
home.removeCertSign.title=Remover Assinatura Certificado home.removeCertSign.title=Remove Certificate Sign
home.removeCertSign.desc=Remova a assinatura do certificado do PDF home.removeCertSign.desc=Remove certificate signature from PDF
removeCertSign.tags=autenticar,PEM,P12,oficial,desencriptar removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=Layout de Múltiplas Páginas home.pageLayout.title=Layout de Múltiplas Páginas
home.pageLayout.desc=Juntar várias páginas de um documento PDF em uma única página home.pageLayout.desc=Juntar várias páginas de um documento PDF em uma única página
@@ -468,7 +465,7 @@ showJS.tags=JavaScript
home.autoRedact.title=Edição automática home.autoRedact.title=Edição automática
home.autoRedact.desc=Edição automática (marca a preto) baseada numa expressão indicada de um PDF. home.autoRedact.desc=Edição automática (marca a preto) baseada numa expressão indicada de um PDF.
autoRedact.tags=Esconder,censurar,marcador,tampado,máscara,oculto autoRedact.tags=Redact,Hide,black out,black,marker,hidden
home.tableExtraxt.title=PDF para CSV home.tableExtraxt.title=PDF para CSV
home.tableExtraxt.desc=Extrai tabelas de um PDF convertendo em um CSV home.tableExtraxt.desc=Extrai tabelas de um PDF convertendo em um CSV
@@ -493,41 +490,41 @@ home.AddStampRequest.desc=Adicionar um carimbo de texto ou imagem
AddStampRequest.tags=Carimbo, Adicionar imagem, imagem central, Marca d'água, PDF, Embebido, Personalizado AddStampRequest.tags=Carimbo, Adicionar imagem, imagem central, Marca d'água, PDF, Embebido, Personalizado
home.PDFToBook.title=PDF para Livro home.PDFToBook.title=PDF to Book
home.PDFToBook.desc=Converte PDF em formatos de livro/comic utilizando o Calibre home.PDFToBook.desc=Converts PDF to Book/Comic formats using calibre
PDFToBook.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle PDFToBook.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.BookToPDF.title=Livro para PDF home.BookToPDF.title=Book to PDF
home.BookToPDF.desc=Converte formatos de livros/comics em PDF utilizando o Calibre home.BookToPDF.desc=Converts Books/Comics formats to PDF using calibre
BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.removeImagePdf.title=Remover imagem home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=Remova imagem do PDF para reduzir o tamanho do ficheiro home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Remover Imagem,operações de página,lado de servidor removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=Dividir PDF por Capítulos home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Divida um PDF em vários arquivos com base na estrutura dos capítulos. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=dividir,capítulos,marcadores,organizar splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=Substituir-Inverter Cor do PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Substituir cor pelo texto e fundo em PDF e inverter toda a cor do PDF para reduzir o tamanho do ficheiro home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Substituição de Cor, Operações de Página, Back End, lado do servidor replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Opções de Substituição ou Inversão de Cor replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Padrão (Cor de contraste alto padrão) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Personalizado ( cores personalizadas) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Inversão Total (inverter todas as cores) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Opções de cor de contraste alto replace-color.selectText.5=High contrast color options
replace-color.selectText.6=Texto branco sobre fundo preto replace-color.selectText.6=white text on black background
replace-color.selectText.7=Texto preto sobre fundo branco replace-color.selectText.7=Black text on white background
replace-color.selectText.8=Texto amarelo sobre fundo preto replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=Texto verde sobre fundo preto replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Escolher cor do texto replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Escolher cor de fundo replace-color.selectText.11=Choose background Color
replace-color.submit=Substituir replace-color.submit=Replace
@@ -546,17 +543,18 @@ login.locked=A sua conta foi bloqueada.
login.signinTitle=Introduza os seus dados de acesso login.signinTitle=Introduza os seus dados de acesso
login.ssoSignIn=Iniciar sessão através de início de sessão único login.ssoSignIn=Iniciar sessão através de início de sessão único
login.oauth2AutoCreateDisabled=OAUTH2 Criação Automática de Utilizador Desativada login.oauth2AutoCreateDisabled=OAUTH2 Criação Automática de Utilizador Desativada
login.oauth2AdminBlockedUser=A registo ou login de utilizadores não-registados está atualmente bloqueado. Por favor, contacte o administrador. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Solicitação de autorização não encontrada login.oauth2RequestNotFound=Authorization request not found
login.oauth2InvalidUserInfoResponse=Resposta de informações do utilizador inválida login.oauth2InvalidUserInfoResponse=Invalid User Info Response
login.oauth2invalidRequest=Requisito inválido login.oauth2invalidRequest=Invalid Request
login.oauth2AccessDenied=Acesso negado login.oauth2AccessDenied=Access Denied
login.oauth2InvalidTokenResponse=Resposta de token inválida login.oauth2InvalidTokenResponse=Invalid Token Response
login.oauth2InvalidIdToken=Token de identificação inválido login.oauth2InvalidIdToken=Invalid Id Token
login.userIsDisabled=O utilizador foi desativado, o login está atualmente bloqueado com esta conta. Por favor, contacte o administrador. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=Já está logado em login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=dispositivos. Por favor, faça logout nos dispositivos e tente novamente. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Tem sessões ativas demais login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Edição Automática autoRedact.title=Edição Automática
@@ -588,7 +586,7 @@ pdfToSinglePage.submit=Converter para Página Única
pageExtracter.title=Extrair Páginas pageExtracter.title=Extrair Páginas
pageExtracter.header=Extrair Páginas pageExtracter.header=Extrair Páginas
pageExtracter.submit=Extrair pageExtracter.submit=Extrair
pageExtracter.placeholder=(ex: 1,2,8 ou 4,7,12-16 ou 2n-1) pageExtracter.placeholder=(e.g. 1,2,8 or 4,7,12-16 or 2n-1)
#getPdfInfo #getPdfInfo
@@ -731,7 +729,7 @@ pageLayout.submit=Enviar
scalePages.title=Ajustar Tamanho/Escala da Página scalePages.title=Ajustar Tamanho/Escala da Página
scalePages.header=Ajustar Tamanho/Escala da Página scalePages.header=Ajustar Tamanho/Escala da Página
scalePages.pageSize=Tamanho de uma página do documento. scalePages.pageSize=Tamanho de uma página do documento.
scalePages.keepPageSize=Tamanho original scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Fator de zoom (corte) de uma página. scalePages.scaleFactor=Fator de zoom (corte) de uma página.
scalePages.submit=Enviar scalePages.submit=Enviar
@@ -744,22 +742,21 @@ certSign.jksNote=Nota: Se o seu tipo de certificado não estiver listado abaixo,
certSign.selectKey=Selecione o seu ficheiro de chave privada (formato PKCS#8, pode ser .pem ou .der): certSign.selectKey=Selecione o seu ficheiro de chave privada (formato PKCS#8, pode ser .pem ou .der):
certSign.selectCert=Selecione o seu ficheiro de certificado (formato X.509, pode ser .pem ou .der): certSign.selectCert=Selecione o seu ficheiro de certificado (formato X.509, pode ser .pem ou .der):
certSign.selectP12=Selecione o seu ficheiro de armazenamento de chave PKCS#12 (.p12 ou .pfx) (opcional, se fornecido, deve conter a sua chave privada e certificado): certSign.selectP12=Selecione o seu ficheiro de armazenamento de chave PKCS#12 (.p12 ou .pfx) (opcional, se fornecido, deve conter a sua chave privada e certificado):
certSign.selectJKS=Selecione o seu Arquivo de Java Keystore (.jks ou .keystore): certSign.selectJKS=Select Your Java Keystore File (.jks or .keystore):
certSign.certType=Tipo de Certificado certSign.certType=Tipo de Certificado
certSign.password=Digite a senha do seu armazenamento de chave ou chave privada (se aplicável): certSign.password=Digite a senha do seu armazenamento de chave ou chave privada (se aplicável):
certSign.showSig=Mostrar Assinatura certSign.showSig=Mostrar Assinatura
certSign.reason=Razão certSign.reason=Razão
certSign.location=Localização certSign.location=Localização
certSign.name=Nome certSign.name=Nome
certSign.showLogo=Mostrar Logotipo
certSign.submit=Assinar PDF certSign.submit=Assinar PDF
#removeCertSign #removeCertSign
removeCertSign.title=Remover Assinatura Digital removeCertSign.title=Remove Certificate Signature
removeCertSign.header=Remova a assinatura digital do PDF removeCertSign.header=Remove the digital certificate from the PDF
removeCertSign.selectPDF=Selecione um ficheiro PDF: removeCertSign.selectPDF=Select a PDF file:
removeCertSign.submit=Remover Assinatura removeCertSign.submit=Remove Signature
#removeBlanks #removeBlanks
@@ -781,27 +778,24 @@ removeAnnotations.submit=Remover
#compare #compare
compare.title=Comparar compare.title=Comparar
compare.header=Comparar PDFs compare.header=Comparar PDFs
compare.highlightColor.1=Cor de Destaque 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=Cor de Destaque 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=Documento 1 compare.document.1=Documento 1
compare.document.2=Documento 2 compare.document.2=Documento 2
compare.submit=Comparar compare.submit=Comparar
compare.complex.message=Um ou ambos os documentos fornecidos são arquivos grandes, a precisão da comparação pode ser reduzida
compare.large.file.message=Um ou ambos os documentos fornecidos são muito grandes para processar
compare.no.text.message=Um ou ambos os PDFs seleccionados não têm conteúdo textual. Por favor, seleccione PDFs com texto para comparação.
#BookToPDF #BookToPDF
BookToPDF.title=Livros e Quadrinhos para PDF BookToPDF.title=Books and Comics to PDF
BookToPDF.header=Livro para PDF BookToPDF.header=Book to PDF
BookToPDF.credit=Utiliza Calibre BookToPDF.credit=Uses Calibre
BookToPDF.submit=Converter BookToPDF.submit=Convert
#PDFToBook #PDFToBook
PDFToBook.title=PDF para Livro PDFToBook.title=PDF to Book
PDFToBook.header=PDF para Livro PDFToBook.header=PDF to Book
PDFToBook.selectText.1=Formatação PDFToBook.selectText.1=Format
PDFToBook.credit=Utiliza Calibre PDFToBook.credit=Uses Calibre
PDFToBook.submit=Converter PDFToBook.submit=Convert
#sign #sign
sign.title=Assinar sign.title=Assinar
@@ -811,11 +805,6 @@ sign.draw=Desenhar Assinatura
sign.text=Inserir Texto sign.text=Inserir Texto
sign.clear=Limpar sign.clear=Limpar
sign.add=Adicionar sign.add=Adicionar
sign.saved=Assinaturas Guardadas
sign.save=Guardar Assinatura
sign.personalSigs=Assinaturas Pessoais
sign.sharedSigs=Assinaturas Compartilhadas
sign.noSavedSigs=Nenhuma assinatura guardada encontrada
#repair #repair
@@ -827,7 +816,7 @@ repair.submit=Reparar
#flatten #flatten
flatten.title=Achatar flatten.title=Achatar
flatten.header=Achatar PDFs flatten.header=Achatar PDFs
flatten.flattenOnlyForms=Apenas formularios aplanados flatten.flattenOnlyForms=Flatten only forms
flatten.submit=Achatar flatten.submit=Achatar
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=Área mínima de contorno:
ScannerImageSplit.selectText.8=Define o limite mínimo da área de contorno para uma foto ScannerImageSplit.selectText.8=Define o limite mínimo da área de contorno para uma foto
ScannerImageSplit.selectText.9=Tamanho do contorno: ScannerImageSplit.selectText.9=Tamanho do contorno:
ScannerImageSplit.selectText.10=Define o tamanho do contorno adicionado e removido para evitar contornos brancos na saída (padrão: 1). ScannerImageSplit.selectText.10=Define o tamanho do contorno adicionado e removido para evitar contornos brancos na saída (padrão: 1).
ScannerImageSplit.info=O Python não está instalado. É necessário para execução. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=Processar PDF com OCR
extractImages.title=Extrair Imagens extractImages.title=Extrair Imagens
extractImages.header=Extrair Imagens extractImages.header=Extrair Imagens
extractImages.selectText=Selecione o formato de imagem para converter as imagens extraídas extractImages.selectText=Selecione o formato de imagem para converter as imagens extraídas
extractImages.allowDuplicates=Guardar imagens duplicadas extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Extrair extractImages.submit=Extrair
@@ -877,7 +866,7 @@ extractImages.submit=Extrair
fileToPDF.title=Ficheiro para PDF fileToPDF.title=Ficheiro para PDF
fileToPDF.header=Converter Qualquer ficheiro para PDF fileToPDF.header=Converter Qualquer ficheiro para PDF
fileToPDF.credit=Este serviço usa o LibreOffice e o Unoconv para conversão de ficheiros. fileToPDF.credit=Este serviço usa o LibreOffice e o Unoconv para conversão de ficheiros.
fileToPDF.supportedFileTypesInfo=Tipos de ficheiros suportados fileToPDF.supportedFileTypesInfo=Supported File types
fileToPDF.supportedFileTypes=Os tipos de ficheiro suportados devem incluir os listados abaixo. No entanto, para obter uma lista atualizada completa dos formatos suportados, consulte a documentação do LibreOffice. fileToPDF.supportedFileTypes=Os tipos de ficheiro suportados devem incluir os listados abaixo. No entanto, para obter uma lista atualizada completa dos formatos suportados, consulte a documentação do LibreOffice.
fileToPDF.submit=Converter para PDF fileToPDF.submit=Converter para PDF
@@ -907,7 +896,7 @@ merge.title=Juntar
merge.header=Juntar Vários PDFs (2+) merge.header=Juntar Vários PDFs (2+)
merge.sortByName=Ordenar por nome merge.sortByName=Ordenar por nome
merge.sortByDate=Ordenar por data merge.sortByDate=Ordenar por data
merge.removeCertSign=Remover assinatura digital no ficheiro combinado? merge.removeCertSign=Remove digital signature in the merged file?
merge.submit=Juntar merge.submit=Juntar
@@ -915,35 +904,35 @@ merge.submit=Juntar
pdfOrganiser.title=Organizador de Páginas pdfOrganiser.title=Organizador de Páginas
pdfOrganiser.header=Organizador de Páginas PDF pdfOrganiser.header=Organizador de Páginas PDF
pdfOrganiser.submit=Reorganizar Páginas pdfOrganiser.submit=Reorganizar Páginas
pdfOrganiser.mode=Modo pdfOrganiser.mode=Mode
pdfOrganiser.mode.1=Ordenação Personalizada de Páginas pdfOrganiser.mode.1=Custom Page Order
pdfOrganiser.mode.2=Ordem Inversa pdfOrganiser.mode.2=Reverse Order
pdfOrganiser.mode.3=Ordenação Duplex pdfOrganiser.mode.3=Duplex Sort
pdfOrganiser.mode.4=Ordernação em Panfleto pdfOrganiser.mode.4=Booklet Sort
pdfOrganiser.mode.5=Ordenação em Panfleto com Costura de Lateral pdfOrganiser.mode.5=Side Stitch Booklet Sort
pdfOrganiser.mode.6=Divisão Ímpar-Par pdfOrganiser.mode.6=Odd-Even Split
pdfOrganiser.mode.7=Remover Primeira Página pdfOrganiser.mode.7=Remove First
pdfOrganiser.mode.8=Remover última Página pdfOrganiser.mode.8=Remove Last
pdfOrganiser.mode.9=Remover Primeira e Última Página pdfOrganiser.mode.9=Remove First and Last
pdfOrganiser.mode.10=Mergulho Ímpar-Par pdfOrganiser.mode.10=Odd-Even Merge
pdfOrganiser.placeholder=(ex: 1,3,2 ou 4-8,2,10-12 ou 2n-1) pdfOrganiser.placeholder=(e.g. 1,3,2 or 4-8,2,10-12 or 2n-1)
#multiTool #multiTool
multiTool.title=Multiferramenta de PDF multiTool.title=Multiferramenta de PDF
multiTool.header=Multiferramenta de PDF multiTool.header=Multiferramenta de PDF
multiTool.uploadPrompts=Nome do Arquivo multiTool.uploadPrompts=File Name
#view pdf #view pdf
viewPdf.title=Visualizar PDF viewPdf.title=View PDF
viewPdf.header=Visualizar PDF viewPdf.header=View PDF
#pageRemover #pageRemover
pageRemover.title=Remover Página pageRemover.title=Remover Página
pageRemover.header=Remover Páginas do PDF pageRemover.header=Remover Páginas do PDF
pageRemover.pagesToDelete=Páginas a serem excluídas (insira uma lista separada por vírgulas de números de página): pageRemover.pagesToDelete=Páginas a serem excluídas (insira uma lista separada por vírgulas de números de página):
pageRemover.submit=Excluir Páginas pageRemover.submit=Excluir Páginas
pageRemover.placeholder=(ex: 1,2,6 ou 1-10,15-30) pageRemover.placeholder=(e.g. 1,2,6 or 1-10,15-30)
#rotate #rotate
@@ -994,7 +983,7 @@ pdfToImage.color=Colorida
pdfToImage.grey=Escala de Cinza pdfToImage.grey=Escala de Cinza
pdfToImage.blackwhite=Preto e Branco (pode resultar em perda de dados!) pdfToImage.blackwhite=Preto e Branco (pode resultar em perda de dados!)
pdfToImage.submit=Converter pdfToImage.submit=Converter
pdfToImage.info=O Python não está instalado. Necessário para a conversão de WebP. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1031,10 +1020,10 @@ watermark.selectText.6=Espaçamento Vertical (heightSpacer)
watermark.selectText.7=Opacidade (0% - 100%) watermark.selectText.7=Opacidade (0% - 100%)
watermark.selectText.8=Tipo de Marca d'Água watermark.selectText.8=Tipo de Marca d'Água
watermark.selectText.9=Imagem da Marca d'Água watermark.selectText.9=Imagem da Marca d'Água
watermark.selectText.10=Converter PDF em Imagem watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=Adicionar Marca d'Água watermark.submit=Adicionar Marca d'Água
watermark.type.1=Texto watermark.type.1=Text
watermark.type.2=Imagem watermark.type.2=Image
#Change permissions #Change permissions
@@ -1075,7 +1064,7 @@ changeMetadata.keywords=Palavras-chave:
changeMetadata.modDate=Data de Modificação (aaaa/MM/dd HH:mm:ss): changeMetadata.modDate=Data de Modificação (aaaa/MM/dd HH:mm:ss):
changeMetadata.producer=Produtor: changeMetadata.producer=Produtor:
changeMetadata.subject=Assunto: changeMetadata.subject=Assunto:
changeMetadata.trapped=Encalhado: changeMetadata.trapped=Trapped:
changeMetadata.selectText.4=Outros Metadados changeMetadata.selectText.4=Outros Metadados
changeMetadata.selectText.5=Adicionar Entrada de Metadados Personalizados changeMetadata.selectText.5=Adicionar Entrada de Metadados Personalizados
changeMetadata.submit=Mudar changeMetadata.submit=Mudar
@@ -1086,9 +1075,9 @@ pdfToPDFA.title=PDF para PDF/A
pdfToPDFA.header=PDF para PDF/A pdfToPDFA.header=PDF para PDF/A
pdfToPDFA.credit=Este serviço usa ghostscript para Conversão de PDF/A pdfToPDFA.credit=Este serviço usa ghostscript para Conversão de PDF/A
pdfToPDFA.submit=Converter pdfToPDFA.submit=Converter
pdfToPDFA.tip=Actualmente não funciona para múltiplos inputs de uma só vez pdfToPDFA.tip=Currently does not work for multiple inputs at once
pdfToPDFA.outputFormat=Formato de saída pdfToPDFA.outputFormat=Output format
pdfToPDFA.pdfWithDigitalSignature=O PDF contém um selo digital. Isto será removido no próximo passo. pdfToPDFA.pdfWithDigitalSignature=The PDF contains a digital signature. This will be removed in the next step.
#PDFToWord #PDFToWord
@@ -1170,15 +1159,15 @@ split-by-sections.vertical.label=Divisões Verticais
split-by-sections.horizontal.placeholder=Introduza o número de divisões horizontais split-by-sections.horizontal.placeholder=Introduza o número de divisões horizontais
split-by-sections.vertical.placeholder=Introduza o número de divisões verticais split-by-sections.vertical.placeholder=Introduza o número de divisões verticais
split-by-sections.submit=Dividir PDF split-by-sections.submit=Dividir PDF
split-by-sections.merge=Fundir em Um único PDF split-by-sections.merge=Merge Into One PDF
#printFile #printFile
printFile.title=Imprimir Ficheiro printFile.title=Print File
printFile.header=Imprimir ficheiro na impressora printFile.header=Print File to Printer
printFile.selectText.1=Selecione o ficheiro a imprimir printFile.selectText.1=Select File to Print
printFile.selectText.2=Introduza o nome da impressora printFile.selectText.2=Enter Printer Name
printFile.submit=Imprimir printFile.submit=Print
#licenses #licenses
@@ -1190,45 +1179,47 @@ licenses.version=Versão
licenses.license=Licença licenses.license=Licença
#survey #survey
survey.nav=Inquérito survey.nav=Survey
survey.title=Inquérito ao Stirling-PDF survey.title=Stirling-PDF Survey
survey.description=O Stirling-PDF não tem rastreio, por isso queremos ouvir os nossos utilizadores para melhorar o Stirling-PDF! survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF!
survey.changes=O Stirling-PDF mudou desde a última avaliação! Para mais informações, verifique o nosso post no blog aqui: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=Com estas mudanças estamos a obter suporte comercial pago e financiamento survey.changes2=With these changes we are getting paid business support and funding
survey.please=Please consider taking our survey! survey.please=Please consider taking our survey!
survey.disabled=(A caixa de inquérito será desativada nas próximas actualizações mas estará disponível na parte inferior da página) survey.disabled=(Survey popup will be disabled in following updates but available at foot of page)
survey.button=Levar o Inquérito survey.button=Take Survey
survey.dontShowAgain=Não mostrar novamente survey.dontShowAgain=Don't show again
#error #error
error.sorry=Desculpe pelo inconveniente! error.sorry=Sorry for the issue!
error.needHelp=Precisa de ajuda / Encontrou um problema? error.needHelp=Need help / Found an issue?
error.contactTip=Se ainda estiver a ter problemas, não hesite em entrar em contacto connosco para obter ajuda. Pode submeter um ticket na nossa página do GitHub ou contactar-nos através do Discord: error.contactTip=If you're still having trouble, don't hesitate to reach out to us for help. You can submit a ticket on our GitHub page or contact us through Discord:
error.404.head=404 - Página Não Encontrada | Oops, tropeçámos no código! error.404.head=404 - Page Not Found | Oops, we tripped in the code!
error.404.1=Não podemos parecer encontrar a página que está a procurar. error.404.1=We can't seem to find the page you're looking for.
error.404.2=Ocorreu um erro error.404.2=Something went wrong
error.github=Submeta um ticket na GitHub error.github=Submit a ticket on GitHub
error.showStack=Mostrar Stack Trace error.showStack=Show Stack Trace
error.copyStack=Copiar Stack Trace error.copyStack=Copy Stack Trace
error.githubSubmit=GitHub - Submeter um Ticket error.githubSubmit=GitHub - Submit a ticket
error.discordSubmit=Discord - Submeter um Post de Suporte error.discordSubmit=Discord - Submit Support post
#remove-image #remove-image
removeImage.title=Remover imagem removeImage.title=Remove image
removeImage.header=Remover imagem removeImage.header=Remove image
removeImage.removeImage=Remover imagem removeImage.removeImage=Remove image
removeImage.submit=Remover imagem removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=Dividir o PDF por Capítulos
splitByChapters.header=Dividir o PDF por Capítulos
splitByChapters.bookmarkLevel=Nível de Anotações
splitByChapters.includeMetadata=Incluir Metadados
splitByChapters.allowDuplicates=Permitir Duplicações
splitByChapters.desc.1=Esta ferramenta divide um ficheiro PDF em vários PDFs com base na estrutura dos seus capítulos.
splitByChapters.desc.2=Nível de Anotações: Escolha o nível das anotações a usar para a divisão (0 para topo, 1 para segundo nível, etc.).
splitByChapters.desc.3=Inclua Metadados: Se marcado, os metadados originais do PDF serão incluídos em cada PDF dividido.
splitByChapters.desc.4=Permitir Duplicatas: Se marcado, permite a criação de vários bookmarks na mesma página para criar separadamente vários PDFs.
splitByChapters.submit=Dividir o PDF

View File

@@ -79,8 +79,6 @@ info=Informații
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=Fișierul nu trebuie să fie nul sau gol
database.failedImportFile=Importul Fișierului a Eșuat database.failedImportFile=Importul Fișierului a Eșuat
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=Utilizatorul este dezactivat, conectarea este în prezent b
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Redactare Automată autoRedact.title=Redactare Automată
@@ -751,7 +749,6 @@ certSign.showSig=Afișează semnătura
certSign.reason=Motivul certSign.reason=Motivul
certSign.location=Locația certSign.location=Locația
certSign.name=Numele certSign.name=Numele
certSign.showLogo=Show Logo
certSign.submit=Semnează PDF certSign.submit=Semnează PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Culoare Evidențiere 2:
compare.document.1=Documentul 1 compare.document.1=Documentul 1
compare.document.2=Documentul 2 compare.document.2=Documentul 2
compare.submit=Compară compare.submit=Compară
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.
#BookToPDF #BookToPDF
BookToPDF.title=Cărți și Benzi Desenate în PDF BookToPDF.title=Cărți și Benzi Desenate în PDF
@@ -811,11 +805,6 @@ sign.draw=Desenează Semnătura
sign.text=Introdu Textul sign.text=Introdu Textul
sign.clear=Curăță sign.clear=Curăță
sign.add=Adaugă sign.add=Adaugă
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=Размер шрифта addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=Название шрифта addPageNumbers.fontName=Font Name
pdfPrompt=Выберите PDF(ы) pdfPrompt=Выберите PDF(ы)
multiPdfPrompt=Выберите PDFы (2+) multiPdfPrompt=Выберите PDFы (2+)
multiPdfDropPrompt=Выберите (или перетащите) все необходимые PDFы multiPdfDropPrompt=Выберите (или перетащите) все необходимые PDFы
@@ -47,7 +47,7 @@ green=Зеленый
blue=Синий blue=Синий
custom=Обычай... custom=Обычай...
WorkInProgess=Работа продолжается, может не работать или глючить, пожалуйста, сообщайте о любых проблемах! WorkInProgess=Работа продолжается, может не работать или глючить, пожалуйста, сообщайте о любых проблемах!
poweredBy=Поддерживается... poweredBy=Powered by
yes=Да yes=Да
no=Нет no=Нет
changedCredsMessage=Учетные данные изменены! changedCredsMessage=Учетные данные изменены!
@@ -56,15 +56,15 @@ userNotFoundMessage=Пользователь не найден.
incorrectPasswordMessage=Текущий пароль неверен. incorrectPasswordMessage=Текущий пароль неверен.
usernameExistsMessage=Новое имя пользователя уже существует. usernameExistsMessage=Новое имя пользователя уже существует.
invalidUsernameMessage=Неверное имя пользователя. Имя пользователя может содержать только буквы, цифры и следующие специальные символы @._+- или должно быть действительным адресом электронной почты. invalidUsernameMessage=Неверное имя пользователя. Имя пользователя может содержать только буквы, цифры и следующие специальные символы @._+- или должно быть действительным адресом электронной почты.
invalidPasswordMessage=Пароль не должен быть пустым и не должен содержать пробелов в начале или конце. invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=Новый пароль и подтверждение нового пароля должны совпадать. confirmPasswordErrorMessage=New Password and Confirm New Password must match.
deleteCurrentUserMessage=Невозможно удалить пользователя, вошедшего в систему. deleteCurrentUserMessage=Невозможно удалить пользователя, вошедшего в систему.
deleteUsernameExistsMessage=Имя пользователя не существует и не может быть удалено. deleteUsernameExistsMessage=Имя пользователя не существует и не может быть удалено.
downgradeCurrentUserMessage=Невозможно понизить роль текущего пользователя downgradeCurrentUserMessage=Невозможно понизить роль текущего пользователя
disabledCurrentUserMessage=Текущий пользователь не может быть отключен disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=Невозможно понизить роль текущего пользователя. Следовательно, текущий пользователь не будет отображаться. downgradeCurrentUserLongMessage=Невозможно понизить роль текущего пользователя. Следовательно, текущий пользователь не будет отображаться.
userAlreadyExistsOAuthMessage=Пользователь уже существует как OAuth2 пользователь. userAlreadyExistsOAuthMessage=The user already exists as an OAuth2 user.
userAlreadyExistsWebMessage=Пользователь уже существует как веб-пользователь. userAlreadyExistsWebMessage=The user already exists as an web user.
error=Ошибка error=Ошибка
oops=Ой! oops=Ой!
help=Помощь help=Помощь
@@ -75,18 +75,16 @@ visitGithub=Посетить репозиторий на GitHub
donate=Пожертвовать donate=Пожертвовать
color=Цвет color=Цвет
sponsor=Спонсор sponsor=Спонсор
info=Информация info=Info
pro=Про pro=Pro
page=Страница page=Page
pages=Страницы pages=Pages
loading=Загрузка...
addToDoc=Добавить в документ
legal.privacy=Политика конфиденциальности legal.privacy=Privacy Policy
legal.terms=Условия использования legal.terms=Terms and Conditions
legal.accessibility=Доступность legal.accessibility=Accessibility
legal.cookie=Политика кукисов legal.cookie=Cookie Policy
legal.impressum=Организация legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -98,7 +96,7 @@ pipeline.defaultOption=Пользовательский
pipeline.submitButton=Отправить pipeline.submitButton=Отправить
pipeline.help=Справка по конвейерной обработке pipeline.help=Справка по конвейерной обработке
pipeline.scanHelp=Справка по сканированию папок pipeline.scanHelp=Справка по сканированию папок
pipeline.deletePrompt=Вы уверены, что хотите удалить пайплайн pipeline.deletePrompt=Are you sure you want to delete pipeline
###################### ######################
# Pipeline Options # # Pipeline Options #
@@ -116,45 +114,45 @@ pipelineOptions.validateButton=Проверить
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Переход к Pro enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Этот функционал доступен только пользователям Pro. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro поддерживает файлы конфигурации YAML и другие функции единой системы аутентификации (SSO). enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Ищете больше возможностей управления пользователями? Проверьте Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Хотите улучшить Stirling PDF? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF использует опциональные данные аналитики для улучшения продукта. Мы не отслеживаем никакую личную информацию или содержимое файлов. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Пожалуйста, рассмотрите возможность включения аналитики, чтобы помочь Stirling-PDF расти и дать нам возможность лучше понять наших пользователей. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Включить аналитику analytics.enable=Enable analytics
analytics.disable=Отключить аналитику analytics.disable=Disable analytics
analytics.settings=Вы можете изменить настройки аналитики в файле config/settings.yml analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
############# #############
navbar.favorite=Избранное navbar.favorite=Favorites
navbar.darkmode=Темный режим navbar.darkmode=Темный режим
navbar.language=Языки navbar.language=Languages
navbar.settings=Настройки navbar.settings=Настройки
navbar.allTools=Конвейеры navbar.allTools=Tools
navbar.multiTool=Multi Tools navbar.multiTool=Multi Tools
navbar.sections.organize=Организация navbar.sections.organize=Organize
navbar.sections.convertTo=Перевести в PDF navbar.sections.convertTo=Convert to PDF
navbar.sections.convertFrom=Перевести из PDF navbar.sections.convertFrom=Convert from PDF
navbar.sections.security=Подписи и Безопасность navbar.sections.security=Sign & Security
navbar.sections.advance=Продвинутые navbar.sections.advance=Advanced
navbar.sections.edit=Просмотр и Редактирование navbar.sections.edit=View & Edit
navbar.sections.popular=Популярное navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
############# #############
settings.title=Настройки settings.title=Настройки
settings.update=Доступно обновление settings.update=Доступно обновление
settings.updateAvailable={0} - текущая установленная версия. Доступна новая версия ({1}). settings.updateAvailable={0} is the current installed version. A new version ({1}) is available.
settings.appVersion=Версия приложения: settings.appVersion=Версия приложения:
settings.downloadOption.title=Выберите вариант загрузки (для загрузки одного файла без zip): settings.downloadOption.title=Выберите вариант загрузки (для загрузки одного файла без zip):
settings.downloadOption.1=Открыть в том же окне settings.downloadOption.1=Открыть в том же окне
@@ -163,9 +161,9 @@ settings.downloadOption.3=Загрузить файл
settings.zipThreshold=Zip-файлы, когда количество загруженных файлов превышает settings.zipThreshold=Zip-файлы, когда количество загруженных файлов превышает
settings.signOut=Выйти settings.signOut=Выйти
settings.accountSettings=Настройки аккаунта settings.accountSettings=Настройки аккаунта
settings.bored.help=Включает игру на яйцо settings.bored.help=Enables easter egg game
settings.cacheInputs.name=Сохранение введенных данных формы settings.cacheInputs.name=Save form inputs
settings.cacheInputs.help=Включить для хранения ранее использованных значений для будущих запусков settings.cacheInputs.help=Enable to store previously used inputs for future runs
changeCreds.title=Изменить учетные данные changeCreds.title=Изменить учетные данные
changeCreds.header=Обновите данные вашей учетной записи changeCreds.header=Обновите данные вашей учетной записи
@@ -204,9 +202,9 @@ adminUserSettings.header=Настройки контроля пользоват
adminUserSettings.admin=Администратор adminUserSettings.admin=Администратор
adminUserSettings.user=Пользователь adminUserSettings.user=Пользователь
adminUserSettings.addUser=Добавить нового пользователя adminUserSettings.addUser=Добавить нового пользователя
adminUserSettings.deleteUser=Удалить пользователя adminUserSettings.deleteUser=Delete User
adminUserSettings.confirmDeleteUser=Должен быть удален этот пользователь? adminUserSettings.confirmDeleteUser=Should the user be deleted?
adminUserSettings.confirmChangeUserStatus=Должен быть отключен/включен этот пользователь? adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=Имя пользователя может содержать только буквы, цифры и следующие специальные символы @._+- или должно быть действительным адресом электронной почты. adminUserSettings.usernameInfo=Имя пользователя может содержать только буквы, цифры и следующие специальные символы @._+- или должно быть действительным адресом электронной почты.
adminUserSettings.roles=Роли adminUserSettings.roles=Роли
adminUserSettings.role=Роль adminUserSettings.role=Роль
@@ -219,34 +217,33 @@ adminUserSettings.internalApiUser=Внутренний пользователь
adminUserSettings.forceChange=Просить пользователя изменить пароль при входе в систему adminUserSettings.forceChange=Просить пользователя изменить пароль при входе в систему
adminUserSettings.submit=Сохранить пользователя adminUserSettings.submit=Сохранить пользователя
adminUserSettings.changeUserRole=Изменить роль пользователя adminUserSettings.changeUserRole=Изменить роль пользователя
adminUserSettings.authenticated=Авторизованный adminUserSettings.authenticated=Authenticated
adminUserSettings.editOwnProfil=Изменить свой профиль adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=активный пользователь adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=отключенный пользователь adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=Активные пользователи: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=Отключенные пользователи: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=Общее количество пользователей: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=Последний запрос adminUserSettings.lastRequest=Last Request
database.title=Импорт/экспорт базы данных database.title=Database Import/Export
database.header=Импорт/экспорт базы данных database.header=Database Import/Export
database.fileName=Название файла database.fileName=File Name
database.creationDate=Дата создания database.creationDate=Creation Date
database.fileSize=Размер файла database.fileSize=File Size
database.deleteBackupFile=Удалить резервную копию файла database.deleteBackupFile=Delete Backup File
database.importBackupFile=Импортировать резервную копию файла database.importBackupFile=Import Backup File
database.downloadBackupFile=Скачать резервную копию файла database.downloadBackupFile=Download Backup File
database.info_1=При импорте данных важно убедиться в правильной структуре. Если вы не уверены, что делаете, обратитесь за профессиональной помощью и поддержкой. Ошибка в структуре может привести к сбоям приложений, вплоть до полного их отказа от работы. database.info_1=When importing data, it is crucial to ensure the correct structure. If you are unsure of what you are doing, seek advice and support from a professional. An error in the structure can cause application malfunctions, up to and including the complete inability to run the application.
database.info_2=Имя файла не имеет значения при загрузке. Оно будет переименовано позже в формат backup_user_yyyyMMddHHmm.sql для обеспечения единообразия названий. database.info_2=The file name does not matter when uploading. It will be renamed afterward to follow the format backup_user_yyyyMMddHHmm.sql, ensuring a consistent naming convention.
database.submit=Импортировать резервную копию database.submit=Import Backup
database.importIntoDatabaseSuccessed=Импорт в базу данных выполнен успешно database.importIntoDatabaseSuccessed=Import into database successed
database.fileNotFound=File not Found database.fileNotFound=File not Found
database.fileNullOrEmpty=Файл не должен быть пустым или NULL database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Ваша сессия истекла. Пожалуйста, обновите страницу и попробуйте снова. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -257,7 +254,7 @@ home.searchBar=Поиск функций...
home.viewPdf.title=Просмотр PDF home.viewPdf.title=Просмотр PDF
home.viewPdf.desc=Просмотр, аннотация, добавление текста или изображений home.viewPdf.desc=Просмотр, аннотация, добавление текста или изображений
viewPdf.tags=просмотр, чтение, аннотирование, текст, изображение viewPdf.tags=view,read,annotate,text,image
home.multiTool.title=Мультиинструмент PDF home.multiTool.title=Мультиинструмент PDF
home.multiTool.desc=Объединение, поворот, изменение порядка и удаление страниц home.multiTool.desc=Объединение, поворот, изменение порядка и удаление страниц
@@ -265,15 +262,15 @@ multiTool.tags=Multi Tool,Multi operation,UI,click drag,front end,client side
home.merge.title=Объединить home.merge.title=Объединить
home.merge.desc=Легко объединяйте несколько PDF-файлов в один. home.merge.desc=Легко объединяйте несколько PDF-файлов в один.
merge.tags=слияние, операции со страницами, backend, серверная сторона merge.tags=merge,Page operations,Back end,server side
home.split.title=Разделить home.split.title=Разделить
home.split.desc=Разделить PDF-файлы на несколько документов home.split.desc=Разделить PDF-файлы на несколько документов
split.tags=операции со страницами, разделение, многостраничный, вырезание, серверная сторона split.tags=Page operations,divide,Multi Page,cut,server side
home.rotate.title=Повернуть home.rotate.title=Повернуть
home.rotate.desc=Легко поворачивайте свои PDF-файлы. home.rotate.desc=Легко поворачивайте свои PDF-файлы.
rotate.tags=серверная сторона rotate.tags=server side
home.imageToPdf.title=Изображение в PDF home.imageToPdf.title=Изображение в PDF
@@ -286,7 +283,7 @@ pdfToImage.tags=conversion,img,jpg,picture,photo
home.pdfOrganiser.title=Реорганизация home.pdfOrganiser.title=Реорганизация
home.pdfOrganiser.desc=Удалить/переставить страницы в любом порядке home.pdfOrganiser.desc=Удалить/переставить страницы в любом порядке
pdfOrganiser.tags=дуплексный режим, чётные страницы, нечётные страницы, сортировка, перемещение pdfOrganiser.tags=duplex,even,odd,sort,move
home.addImage.title=Добавить изображение home.addImage.title=Добавить изображение
@@ -295,33 +292,33 @@ addImage.tags=img,jpg,picture,photo
home.watermark.title=Добавить водяной знак home.watermark.title=Добавить водяной знак
home.watermark.desc=Добавьте собственный водяной знак в документ PDF. home.watermark.desc=Добавьте собственный водяной знак в документ PDF.
watermark.tags=текст, повторяющийся, метка, собственное право, товарный знак, img, jpg, picture, фото watermark.tags=Text,repeating,label,own,copyright,trademark,img,jpg,picture,photo
home.permissions.title=Изменить разрешения home.permissions.title=Изменить разрешения
home.permissions.desc=Измените разрешения вашего PDF-документа home.permissions.desc=Измените разрешения вашего PDF-документа
permissions.tags=просмотр, запись, редактирование, печать permissions.tags=read,write,edit,print
home.removePages.title=Удаление home.removePages.title=Удаление
home.removePages.desc=Удалите ненужные страницы из документа PDF. home.removePages.desc=Удалите ненужные страницы из документа PDF.
removePages.tags=Удалить страницы,удаление страниц removePages.tags=Remove pages,delete pages
home.addPassword.title=Добавить пароль home.addPassword.title=Добавить пароль
home.addPassword.desc=Зашифруйте PDF-документ паролем. home.addPassword.desc=Зашифруйте PDF-документ паролем.
addPassword.tags=безопасность,защита addPassword.tags=secure,security
home.removePassword.title=Удалить пароль home.removePassword.title=Удалить пароль
home.removePassword.desc=Снимите защиту паролем с вашего PDF-документа. home.removePassword.desc=Снимите защиту паролем с вашего PDF-документа.
removePassword.tags=безопасность,дешифровать,удаление пароля removePassword.tags=secure,Decrypt,security,unpassword,delete password
home.compressPdfs.title=Сжать home.compressPdfs.title=Сжать
home.compressPdfs.desc=Сжимайте PDF-файлы, чтобы уменьшить их размер. home.compressPdfs.desc=Сжимайте PDF-файлы, чтобы уменьшить их размер.
compressPdfs.tags=сжатие,компрессия,узкое compressPdfs.tags=squish,small,tiny
home.changeMetadata.title=Изменить метаданные home.changeMetadata.title=Изменить метаданные
home.changeMetadata.desc=Изменить/удалить/добавить метаданные из документа PDF home.changeMetadata.desc=Изменить/удалить/добавить метаданные из документа PDF
changeMetadata.tags=заголовок,автор,дата,время создания,время,издатель,производитель,статистика changeMetadata.tags=Title,author,date,creation,time,publisher,producer,stats
home.fileToPDF.title=Конвертировать файл в PDF home.fileToPDF.title=Конвертировать файл в PDF
home.fileToPDF.desc=Конвертируйте практически любой файл в PDF (DOCX, PNG, XLS, PPT, TXT и другие) home.fileToPDF.desc=Конвертируйте практически любой файл в PDF (DOCX, PNG, XLS, PPT, TXT и другие)
@@ -329,12 +326,12 @@ fileToPDF.tags=transformation,format,document,picture,slide,text,conversion,offi
home.ocr.title=OCR / Очистка сканирования home.ocr.title=OCR / Очистка сканирования
home.ocr.desc=Очистка сканирования и обнаружение текста на изображениях в PDF-файле и повторно добавляет его как текст. home.ocr.desc=Очистка сканирования и обнаружение текста на изображениях в PDF-файле и повторно добавляет его как текст.
ocr.tags=распознавание,текст,изображение,сканирование,читаемость,идентификация, detektsiya,редактируемое ocr.tags=recognition,text,image,scan,read,identify,detection,editable
home.extractImages.title=Извлечь изображения home.extractImages.title=Извлечь изображения
home.extractImages.desc=Извлекает все изображения из PDF и сохраняет их в zip home.extractImages.desc=Извлекает все изображения из PDF и сохраняет их в zip
extractImages.tags=картинка,фото,сохранение,архивация,zip,захват,вытаскивание extractImages.tags=picture,photo,save,archive,zip,capture,grab
home.pdfToPDFA.title=PDF в PDF/A home.pdfToPDFA.title=PDF в PDF/A
home.pdfToPDFA.desc=Преобразование PDF в PDF/A для длительного хранения home.pdfToPDFA.desc=Преобразование PDF в PDF/A для длительного хранения
@@ -359,55 +356,55 @@ PDFToHTML.tags=web content,browser friendly
home.PDFToXML.title=PDF в XML home.PDFToXML.title=PDF в XML
home.PDFToXML.desc=Преобразование PDF в формат XML home.PDFToXML.desc=Преобразование PDF в формат XML
PDFToXML.tags= extraksi data,структурированный контент,interop,преобразование,конвертация PDFToXML.tags=data-extraction,structured-content,interop,transformation,convert
home.ScannerImageSplit.title=Обнаружение/разделение отсканированных фотографий home.ScannerImageSplit.title=Обнаружение/разделение отсканированных фотографий
home.ScannerImageSplit.desc=Разделяет несколько фотографий из фото/PDF home.ScannerImageSplit.desc=Разделяет несколько фотографий из фото/PDF
ScannerImageSplit.tags=разделение,автоматическое обнаружение,сканы,многофотографии,организация ScannerImageSplit.tags=separate,auto-detect,scans,multi-photo,organize
home.sign.title=Подпись home.sign.title=Подпись
home.sign.desc=Добавляет подпись в PDF с помощью рисунка, текста или изображения home.sign.desc=Добавляет подпись в PDF с помощью рисунка, текста или изображения
sign.tags=авторизация,широкополье,подпись,текстовая подпись,изображенная подпись sign.tags=authorize,initials,drawn-signature,text-sign,image-signature
home.flatten.title=Сглаживание home.flatten.title=Сглаживание
home.flatten.desc=Удалить все интерактивные элементы и формы из PDF home.flatten.desc=Удалить все интерактивные элементы и формы из PDF
flatten.tags=статичная,деактивировать,непривязанное к интерактиву,простота flatten.tags=static,deactivate,non-interactive,streamline
home.repair.title=Ремонт home.repair.title=Ремонт
home.repair.desc=Пытается восстановить поврежденный/сломанный PDF home.repair.desc=Пытается восстановить поврежденный/сломанный PDF
repair.tags=исправление,восстановление,корректировка,восстановление repair.tags=fix,restore,correction,recover
home.removeBlanks.title=Удалить пустые страницы home.removeBlanks.title=Удалить пустые страницы
home.removeBlanks.desc=Обнаруживает и удаляет пустые страницы из документа home.removeBlanks.desc=Обнаруживает и удаляет пустые страницы из документа
removeBlanks.tags=очистка,простота,без содержания,организация removeBlanks.tags=cleanup,streamline,non-content,organize
home.removeAnnotations.title=Удалить аннотации home.removeAnnotations.title=Remove Annotations
home.removeAnnotations.desc=Удаляет все комментарии/аннотации из PDF home.removeAnnotations.desc=Removes all comments/annotations from a PDF
removeAnnotations.tags=комментарии, выделение, заметки, обозначения, удаление removeAnnotations.tags=comments,highlight,notes,markup,remove
home.compare.title=Сравнение home.compare.title=Сравнение
home.compare.desc=Сравнивает и показывает различия между двумя PDF-документами home.compare.desc=Сравнивает и показывает различия между двумя PDF-документами
compare.tags=дифференцировать, контрастировать, изменения, анализ compare.tags=differentiate,contrast,changes,analysis
home.certSign.title=Подписать сертификатом home.certSign.title=Подписать сертификатом
home.certSign.desc=Подписать PDF сертификатом/ключом (PEM/P12) home.certSign.desc=Подписать PDF сертификатом/ключом (PEM/P12)
certSign.tags=авторизация, PEM, P12, официальное, шифрование certSign.tags=authenticate,PEM,P12,official,encrypt
home.removeCertSign.title=Remove Certificate Sign home.removeCertSign.title=Remove Certificate Sign
home.removeCertSign.desc=Удаляет цифровую подпись из PDF home.removeCertSign.desc=Remove certificate signature from PDF
removeCertSign.tags=авторизация, PEM, P12, официальное, дешифрование removeCertSign.tags=authenticate,PEM,P12,official,decrypt
home.pageLayout.title=Объединить страницы home.pageLayout.title=Объединить страницы
home.pageLayout.desc=Объединение нескольких страниц документа PDF в одну страницу home.pageLayout.desc=Объединение нескольких страниц документа PDF в одну страницу
pageLayout.tags=слияние, составление, просмотр, организация pageLayout.tags=merge,composite,single-view,organize
home.scalePages.title=Изменить размер/масштаб страницы home.scalePages.title=Изменить размер/масштаб страницы
home.scalePages.desc=Изменить размер/масштаб страницы и/или ее содержимого. home.scalePages.desc=Изменить размер/масштаб страницы и/или ее содержимого.
scalePages.tags=изменение размера, редактирование, размеры, адаптация scalePages.tags=resize,modify,dimension,adapt
home.pipeline.title=Конвейер (расширенный) home.pipeline.title=Конвейер (расширенный)
home.pipeline.desc=Выполняйте несколько действий с PDF-файлами, определяя конвейерные сценарии. home.pipeline.desc=Выполняйте несколько действий с PDF-файлами, определяя конвейерные сценарии.
pipeline.tags=автоматизация, последовательность, скриптовый процесс, линейный обработчик pipeline.tags=automate,sequence,scripted,batch-process
home.add-page-numbers.title=Добавить номера страниц home.add-page-numbers.title=Добавить номера страниц
home.add-page-numbers.desc=Добавляйте номера страниц по всему документу в заданном месте home.add-page-numbers.desc=Добавляйте номера страниц по всему документу в заданном месте
@@ -415,51 +412,51 @@ add-page-numbers.tags=paginate,label,organize,index
home.auto-rename.title=Автоматическое переименование PDF-файла home.auto-rename.title=Автоматическое переименование PDF-файла
home.auto-rename.desc=Автоматическое переименование файла PDF на основе его обнаруженного заголовка home.auto-rename.desc=Автоматическое переименование файла PDF на основе его обнаруженного заголовка
auto-rename.tags=автоматическое определение, основанные на заголовках, организация, переименование auto-rename.tags=auto-detect,header-based,organize,relabel
home.adjust-contrast.title=Настройка цветов/контрастности home.adjust-contrast.title=Настройка цветов/контрастности
home.adjust-contrast.desc=Настройка контрастность, насыщенность и яркость PDF-файла home.adjust-contrast.desc=Настройка контрастность, насыщенность и яркость PDF-файла
adjust-contrast.tags=коррекция цвета, настройка, редактирование, улучшение adjust-contrast.tags=color-correction,tune,modify,enhance
home.crop.title=Обрезать PDF-файл home.crop.title=Обрезать PDF-файл
home.crop.desc=Обрезать PDF-файл, чтобы уменьшить его размер (текст сохраняется!) home.crop.desc=Обрезать PDF-файл, чтобы уменьшить его размер (текст сохраняется!)
crop.tags=обрезать, сократить, редактировать, форму crop.tags=trim,shrink,edit,shape
home.autoSplitPDF.title=Автоматическое разделение страниц home.autoSplitPDF.title=Автоматическое разделение страниц
home.autoSplitPDF.desc=Автоматическое разделение отсканированного PDF-файла с помощью физического разделителя отсканированных страниц QR-кода home.autoSplitPDF.desc=Автоматическое разделение отсканированного PDF-файла с помощью физического разделителя отсканированных страниц QR-кода
autoSplitPDF.tags=QR-коды, разделение, сканирование, обработка autoSplitPDF.tags=QR-based,separate,scan-segment,organize
home.sanitizePdf.title=Дезинфицировать home.sanitizePdf.title=Дезинфицировать
home.sanitizePdf.desc=Удаление скриптов и других элементов из PDF-файлов home.sanitizePdf.desc=Удаление скриптов и других элементов из PDF-файлов
sanitizePdf.tags=очистка, безопасность, безопасный, удаление угроз sanitizePdf.tags=clean,secure,safe,remove-threats
home.URLToPDF.title=URL/сайт в PDF home.URLToPDF.title=URL/сайт в PDF
home.URLToPDF.desc=Конвертирует любой http(s)URL в PDF home.URLToPDF.desc=Конвертирует любой http(s)URL в PDF
URLToPDF.tags=веб-съёмка, сохранение страницы, веб к документу, архивация URLToPDF.tags=web-capture,save-page,web-to-doc,archive
home.HTMLToPDF.title=HTML в PDF home.HTMLToPDF.title=HTML в PDF
home.HTMLToPDF.desc=Конвертирует любой HTML-файл или zip-файл в PDF. home.HTMLToPDF.desc=Конвертирует любой HTML-файл или zip-файл в PDF.
HTMLToPDF.tags=макетирование, веб-контент, трансформация, конвертация HTMLToPDF.tags=markup,web-content,transformation,convert
home.MarkdownToPDF.title=Markdown в PDF home.MarkdownToPDF.title=Markdown в PDF
home.MarkdownToPDF.desc=Конвертирует любой файл Markdown в PDF home.MarkdownToPDF.desc=Конвертирует любой файл Markdown в PDF
MarkdownToPDF.tags=макетирование, веб-контент, трансформация, конвертация MarkdownToPDF.tags=markup,web-content,transformation,convert
home.getPdfInfo.title=Получите ВСЮ информацию в формате PDF home.getPdfInfo.title=Получите ВСЮ информацию в формате PDF
home.getPdfInfo.desc=Собирает любую возможную информацию в PDF-файлах. home.getPdfInfo.desc=Собирает любую возможную информацию в PDF-файлах.
getPdfInfo.tags=информация, данные, статистика, статистика getPdfInfo.tags=infomation,data,stats,statistics
home.extractPage.title=Извлечь страницу(ы) home.extractPage.title=Извлечь страницу(ы)
home.extractPage.desc=Извлекает выбранные страницы из PDF home.extractPage.desc=Извлекает выбранные страницы из PDF
extractPage.tags=вытащить extractPage.tags=extract
home.PdfToSinglePage.title=PDF в одну большую страницу home.PdfToSinglePage.title=PDF в одну большую страницу
home.PdfToSinglePage.desc=Объединяет все страницы PDF в одну большую страницу. home.PdfToSinglePage.desc=Объединяет все страницы PDF в одну большую страницу.
PdfToSinglePage.tags=одна страница PdfToSinglePage.tags=single page
home.showJS.title=Показать Javascript home.showJS.title=Показать Javascript
@@ -468,29 +465,29 @@ showJS.tags=JS
home.autoRedact.title=Автоматическое редактирование home.autoRedact.title=Автоматическое редактирование
home.autoRedact.desc=Автоматическое затемнение (чернение) текста в PDF на основе входного текста home.autoRedact.desc=Автоматическое затемнение (чернение) текста в PDF на основе входного текста
autoRedact.tags=Скрыть, Закрыть, закрасить, блокировать, маркер, скрыто autoRedact.tags=Redact,Hide,black out,black,marker,hidden
home.tableExtraxt.title=PDF в CSV home.tableExtraxt.title=PDF в CSV
home.tableExtraxt.desc=Извлекает таблицы из PDF и преобразует их в CSV home.tableExtraxt.desc=Извлекает таблицы из PDF и преобразует их в CSV
tableExtraxt.tags=CSV, извлечение таблицы, вытащить, конвертировать tableExtraxt.tags=CSV,Table Extraction,extract,convert
home.autoSizeSplitPDF.title=Автоматическое разделение по размеру/количеству home.autoSizeSplitPDF.title=Автоматическое разделение по размеру/количеству
home.autoSizeSplitPDF.desc=Разделяет один PDF на несколько документов на основе размера, количества страниц или количества документов home.autoSizeSplitPDF.desc=Разделяет один PDF на несколько документов на основе размера, количества страниц или количества документов
autoSizeSplitPDF.tags=pdf, разделение, документ, организация autoSizeSplitPDF.tags=pdf,split,document,organization
home.overlay-pdfs.title=Наложение PDF home.overlay-pdfs.title=Наложение PDF
home.overlay-pdfs.desc=Наложение одного PDF поверх другого PDF home.overlay-pdfs.desc=Наложение одного PDF поверх другого PDF
overlay-pdfs.tags=Перекрытие overlay-pdfs.tags=Overlay
home.split-by-sections.title=Разделение PDF по секциям home.split-by-sections.title=Разделение PDF по секциям
home.split-by-sections.desc=Разделение каждой страницы PDF на более мелкие горизонтальные и вертикальные секции home.split-by-sections.desc=Разделение каждой страницы PDF на более мелкие горизонтальные и вертикальные секции
split-by-sections.tags=Разделение на разделы, Разделить, Настроить split-by-sections.tags=Section Split, Divide, Customize
home.AddStampRequest.title=Добавить печать на PDF home.AddStampRequest.title=Добавить печать на PDF
home.AddStampRequest.desc=Добавление текстовой или изображенческой печати в заданные места home.AddStampRequest.desc=Добавление текстовой или изображенческой печати в заданные места
AddStampRequest.tags=Штамп, добавить изображение, центрировать изображение, Водяной знак, PDF, вставить, Настроить AddStampRequest.tags=Stamp, Add image, center image, Watermark, PDF, Embed, Customize
home.PDFToBook.title=PDF в книгу/комикс home.PDFToBook.title=PDF в книгу/комикс
@@ -501,33 +498,33 @@ home.BookToPDF.title=Книга в PDF
home.BookToPDF.desc=Конвертирует форматы книги/комикса в PDF с помощью calibre home.BookToPDF.desc=Конвертирует форматы книги/комикса в PDF с помощью calibre
BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle
home.removeImagePdf.title=Удалить изображение home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=Удалите изображение из PDF для сокращения размера файла home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Удалить изображение, операции со страницами, Back end, серверная сторона removeImagePdf.tags=Remove Image,Page operations,Back end,server side
home.splitPdfByChapters.title=Разделить PDF по разделам home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Разделите PDF на несколько файлов на основе структуры его разделов home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=разделение, разделы, закладки, организация splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=Заменить-Обратное изменение цвета PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Замените цвет текста и фона в PDF и инвертируйте весь цвет PDF для сокращения размера файла home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Заменить цвет, операции со страницами, Back end, серверная сторона replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Опции замены или обратного изменения цвета replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=По умолчанию (высокий контрастный цвет) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Пользовательский выбор (персонализированные цвета) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Цветная инверсия (инвертировать все цвета) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Высококонтрастные цвета replace-color.selectText.5=High contrast color options
replace-color.selectText.6=белый текст на черном фоне replace-color.selectText.6=white text on black background
replace-color.selectText.7=черный текст на белом фоне replace-color.selectText.7=Black text on white background
replace-color.selectText.8=желтый текст на черном фоне replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=зеленый текст на черном фоне replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Выбрать цвет текста replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Выбрать цвет фона replace-color.selectText.11=Choose background Color
replace-color.submit=Заменить replace-color.submit=Replace
@@ -546,17 +543,18 @@ login.locked=Ваша учетная запись заблокирована.
login.signinTitle=Пожалуйста, войдите login.signinTitle=Пожалуйста, войдите
login.ssoSignIn=Вход через единый вход login.ssoSignIn=Вход через единый вход
login.oauth2AutoCreateDisabled=OAUTH2 Автоматическое создание пользователя отключено login.oauth2AutoCreateDisabled=OAUTH2 Автоматическое создание пользователя отключено
login.oauth2AdminBlockedUser=Регистрация или вход нерегистрированных пользователей временно заблокированы. Пожалуйста, обратитесь к администратору. login.oauth2AdminBlockedUser=Registration or logging in of non-registered users is currently blocked. Please contact the administrator.
login.oauth2RequestNotFound=Запрос на авторизацию не найден login.oauth2RequestNotFound=Authorization request not found
login.oauth2InvalidUserInfoResponse=Недействительный ответ с информацией о пользователе login.oauth2InvalidUserInfoResponse=Invalid User Info Response
login.oauth2invalidRequest=Неверный запрос login.oauth2invalidRequest=Invalid Request
login.oauth2AccessDenied=Доступ запрещен login.oauth2AccessDenied=Access Denied
login.oauth2InvalidTokenResponse=Недействительный ответ токена login.oauth2InvalidTokenResponse=Invalid Token Response
login.oauth2InvalidIdToken=Недействительный идентификационный токен login.oauth2InvalidIdToken=Invalid Id Token
login.userIsDisabled=Пользователь деактивирован, вход с данным именем пользователя заблокирован. Пожалуйста, обратитесь к администратору. login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=Вы уже вошли в login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=устройства. Выполните выход из устройств и попробуйте снова. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=У вас слишком много активных сессий login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Автоматическое редактирование autoRedact.title=Автоматическое редактирование
@@ -731,7 +729,7 @@ pageLayout.submit=Отправить
scalePages.title=Отрегулировать масштаб страницы scalePages.title=Отрегулировать масштаб страницы
scalePages.header=Отрегулировать масштаб страницы scalePages.header=Отрегулировать масштаб страницы
scalePages.pageSize=Размер страницы документа. scalePages.pageSize=Размер страницы документа.
scalePages.keepPageSize=Исходный размер scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Уровень масштабирования (обрезки) страницы. scalePages.scaleFactor=Уровень масштабирования (обрезки) страницы.
scalePages.submit=Отправить scalePages.submit=Отправить
@@ -751,15 +749,14 @@ certSign.showSig=Показать подпись
certSign.reason=Причина certSign.reason=Причина
certSign.location=Местоположение certSign.location=Местоположение
certSign.name=Имя certSign.name=Имя
certSign.showLogo=Показать логотип
certSign.submit=Подписать PDF certSign.submit=Подписать PDF
#removeCertSign #removeCertSign
removeCertSign.title=Удалить цифровую подпись сертификата removeCertSign.title=Remove Certificate Signature
removeCertSign.header=Удалите цифровой сертификат из PDF removeCertSign.header=Remove the digital certificate from the PDF
removeCertSign.selectPDF=Выберите файл PDF: removeCertSign.selectPDF=Select a PDF file:
removeCertSign.submit=Удалить подпись removeCertSign.submit=Remove Signature
#removeBlanks #removeBlanks
@@ -781,14 +778,11 @@ removeAnnotations.submit=Удалить
#compare #compare
compare.title=Сравнение compare.title=Сравнение
compare.header=Сравнение PDFы compare.header=Сравнение PDFы
compare.highlightColor.1=Цвет подсветки 1: compare.highlightColor.1=Highlight Color 1:
compare.highlightColor.2=Цвет подсветки 2: compare.highlightColor.2=Highlight Color 2:
compare.document.1=Документ 1 compare.document.1=Документ 1
compare.document.2=Документ 2 compare.document.2=Документ 2
compare.submit=Сравнить compare.submit=Сравнить
compare.complex.message=Один или оба предоставленных документа являются большими файлами, что может снизить точность сравнения
compare.large.file.message=Один или оба предоставленных документа слишком большие для обработки
compare.no.text.message=Выбранные PDF файлы не содержат текстовую информацию. Пожалуйста, выберите PDF файлы с текстом для сравнения.
#BookToPDF #BookToPDF
BookToPDF.title=Книги и комиксы в PDF BookToPDF.title=Книги и комиксы в PDF
@@ -811,11 +805,6 @@ sign.draw=Нарисовать подпись
sign.text=Ввод текста sign.text=Ввод текста
sign.clear=Очистить sign.clear=Очистить
sign.add=Добавить sign.add=Добавить
sign.saved=Сохраненные подписи
sign.save=Сохранить подпись
sign.personalSigs=Личные подписи
sign.sharedSigs=Общие подписи
sign.noSavedSigs=Найдено ни одной сохраненной подписи
#repair #repair
@@ -827,7 +816,7 @@ repair.submit=Ремонт
#flatten #flatten
flatten.title=Сглаживание flatten.title=Сглаживание
flatten.header=Сглаживание PDF ов flatten.header=Сглаживание PDF ов
flatten.flattenOnlyForms=Плоское представление только форм flatten.flattenOnlyForms=Flatten only forms
flatten.submit=Сгладить flatten.submit=Сгладить
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=Минимальная площадь конту
ScannerImageSplit.selectText.8=Устанавливает минимальный порог области контура для фотографии ScannerImageSplit.selectText.8=Устанавливает минимальный порог области контура для фотографии
ScannerImageSplit.selectText.9=Размер границы: ScannerImageSplit.selectText.9=Размер границы:
ScannerImageSplit.selectText.10=Устанавливает размер добавляемой и удаляемой границы, чтобы предотвратить появление белых границ на выходе (по умолчанию: 1). ScannerImageSplit.selectText.10=Устанавливает размер добавляемой и удаляемой границы, чтобы предотвратить появление белых границ на выходе (по умолчанию: 1).
ScannerImageSplit.info=Установка Python необходима для выполнения. ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=Обработка PDF с OCR
extractImages.title=Извлечь изображения extractImages.title=Извлечь изображения
extractImages.header=Извлечь изображения extractImages.header=Извлечь изображения
extractImages.selectText=Выберите формат изображения для преобразования извлеченных изображений в extractImages.selectText=Выберите формат изображения для преобразования извлеченных изображений в
extractImages.allowDuplicates=Сохранить дублирующиеся изображения extractImages.allowDuplicates=Save duplicate images
extractImages.submit=Извлечь extractImages.submit=Извлечь
@@ -877,7 +866,7 @@ extractImages.submit=Извлечь
fileToPDF.title=Файл в PDF fileToPDF.title=Файл в PDF
fileToPDF.header=Конвертировать любой файл в PDF fileToPDF.header=Конвертировать любой файл в PDF
fileToPDF.credit=Этот сервис использует LibreOffice и Unoconv для преобразования файлов. fileToPDF.credit=Этот сервис использует LibreOffice и Unoconv для преобразования файлов.
fileToPDF.supportedFileTypesInfo=Поддерживаемые файловые типы fileToPDF.supportedFileTypesInfo=Supported File types
fileToPDF.supportedFileTypes=Поддерживаемые типы файлов должны включать приведенные ниже, однако полный обновленный список поддерживаемых форматов см. в документации LibreOffice. fileToPDF.supportedFileTypes=Поддерживаемые типы файлов должны включать приведенные ниже, однако полный обновленный список поддерживаемых форматов см. в документации LibreOffice.
fileToPDF.submit=Преобразовать в PDF fileToPDF.submit=Преобразовать в PDF
@@ -907,7 +896,7 @@ merge.title=Объединить
merge.header=Объединение нескольких PDF-файлов (2+) merge.header=Объединение нескольких PDF-файлов (2+)
merge.sortByName=Сортировка по имени merge.sortByName=Сортировка по имени
merge.sortByDate=Сортировка по дате merge.sortByDate=Сортировка по дате
merge.removeCertSign=Удалить цифровую подпись в объединенном файле? merge.removeCertSign=Remove digital signature in the merged file?
merge.submit=Объединить merge.submit=Объединить
@@ -925,14 +914,14 @@ pdfOrganiser.mode.6=Разделение на чётные и нечётные
pdfOrganiser.mode.7=Удалить первую pdfOrganiser.mode.7=Удалить первую
pdfOrganiser.mode.8=Удалить последнюю pdfOrganiser.mode.8=Удалить последнюю
pdfOrganiser.mode.9=Удалить первую и последнюю pdfOrganiser.mode.9=Удалить первую и последнюю
pdfOrganiser.mode.10=Нечетное-четное объединение pdfOrganiser.mode.10=Odd-Even Merge
pdfOrganiser.placeholder=(например, 1,3,2 или 4-8,2,10-12 или 2n-1) pdfOrganiser.placeholder=(например, 1,3,2 или 4-8,2,10-12 или 2n-1)
#multiTool #multiTool
multiTool.title=Мультиинструмент PDF multiTool.title=Мультиинструмент PDF
multiTool.header=Мультиинструмент PDF multiTool.header=Мультиинструмент PDF
multiTool.uploadPrompts=Имя файла multiTool.uploadPrompts=File Name
#view pdf #view pdf
viewPdf.title=Просмотреть PDF viewPdf.title=Просмотреть PDF
@@ -994,7 +983,7 @@ pdfToImage.color=Цвет
pdfToImage.grey=Оттенки серого pdfToImage.grey=Оттенки серого
pdfToImage.blackwhite=Черно-белый (может потерять данные!) pdfToImage.blackwhite=Черно-белый (может потерять данные!)
pdfToImage.submit=Конвертировать pdfToImage.submit=Конвертировать
pdfToImage.info=Питон не установлен. Необходим для конвертации в WebP. pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1031,7 +1020,7 @@ watermark.selectText.6=heightSpacer (пробел между каждым вод
watermark.selectText.7=Непрозрачность (0% - 100%): watermark.selectText.7=Непрозрачность (0% - 100%):
watermark.selectText.8=Тип водяного знака: watermark.selectText.8=Тип водяного знака:
watermark.selectText.9=Изображение водяного знака: watermark.selectText.9=Изображение водяного знака:
watermark.selectText.10=Конвертировать PDF в PDF-изображение watermark.selectText.10=Convert PDF to PDF-Image
watermark.submit=Добавить водяной знак watermark.submit=Добавить водяной знак
watermark.type.1=Текст watermark.type.1=Текст
watermark.type.2=Изображение watermark.type.2=Изображение
@@ -1075,7 +1064,7 @@ changeMetadata.keywords=Ключевые слова:
changeMetadata.modDate=Дата изменения (yyyy/MM/dd HH:mm:ss): changeMetadata.modDate=Дата изменения (yyyy/MM/dd HH:mm:ss):
changeMetadata.producer=Изготовитель: changeMetadata.producer=Изготовитель:
changeMetadata.subject=Тема: changeMetadata.subject=Тема:
changeMetadata.trapped=Закреплено: changeMetadata.trapped=Trapped:
changeMetadata.selectText.4=Другие метаданные: changeMetadata.selectText.4=Другие метаданные:
changeMetadata.selectText.5=Добавить пользовательскую запись метаданных changeMetadata.selectText.5=Добавить пользовательскую запись метаданных
changeMetadata.submit=Изменить changeMetadata.submit=Изменить
@@ -1086,9 +1075,9 @@ pdfToPDFA.title=PDF в PDF/A
pdfToPDFA.header=PDF в PDF/A pdfToPDFA.header=PDF в PDF/A
pdfToPDFA.credit=Этот сервис использует ghostscript для преобразования PDF/A pdfToPDFA.credit=Этот сервис использует ghostscript для преобразования PDF/A
pdfToPDFA.submit=Конвертировать pdfToPDFA.submit=Конвертировать
pdfToPDFA.tip=В настоящее время не поддерживается при нескольких входных данных одновременно pdfToPDFA.tip=Currently does not work for multiple inputs at once
pdfToPDFA.outputFormat=Формат вывода pdfToPDFA.outputFormat=Output format
pdfToPDFA.pdfWithDigitalSignature=Этот PDF содержит цифровую подпись. Она будет удалена в следующем шаге. pdfToPDFA.pdfWithDigitalSignature=The PDF contains a digital signature. This will be removed in the next step.
#PDFToWord #PDFToWord
@@ -1174,11 +1163,11 @@ split-by-sections.merge=Объединить в один PDF
#printFile #printFile
printFile.title=Печать файла printFile.title=Print File
printFile.header=Печать файла на принтер printFile.header=Print File to Printer
printFile.selectText.1=Выберите файл для печати printFile.selectText.1=Select File to Print
printFile.selectText.2=Введите имя принтера printFile.selectText.2=Enter Printer Name
printFile.submit=Печать printFile.submit=Print
#licenses #licenses
@@ -1190,15 +1179,15 @@ licenses.version=Версия
licenses.license=Лицензия licenses.license=Лицензия
#survey #survey
survey.nav=Опрос survey.nav=Survey
survey.title=Опрос Stirling-PDF survey.title=Stirling-PDF Survey
survey.description=Stirling-PDF не имеет трекинга, поэтому мы хотим услышать от пользователей для улучшения Stirling-PDF! survey.description=Stirling-PDF has no tracking so we want to hear from our users to improve Stirling-PDF!
survey.changes=Stirling-PDF изменился с прошлого опроса! Чтобы узнать больше, пожалуйста, проверьте наш пост на блоге здесь: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=С этими изменениями мы получили коммерческую поддержку и финансирование survey.changes2=With these changes we are getting paid business support and funding
survey.please=Please consider taking our survey! survey.please=Please consider taking our survey!
survey.disabled=(Попап опроса будет отключен в следующих обновлениях, но останется доступен внизу страницы) survey.disabled=(Survey popup will be disabled in following updates but available at foot of page)
survey.button=Пройти опрос survey.button=Take Survey
survey.dontShowAgain=Не показывать снова survey.dontShowAgain=Don't show again
#error #error
@@ -1216,19 +1205,21 @@ error.discordSubmit=Discord - Отправить запрос в поддерж
#remove-image #remove-image
removeImage.title=Удалить изображение removeImage.title=Remove image
removeImage.header=Удалить изображение removeImage.header=Remove image
removeImage.removeImage=Удалить изображение removeImage.removeImage=Remove image
removeImage.submit=Удалить removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=Разделить PDF по главам
splitByChapters.header=Разделить PDF по главам
splitByChapters.bookmarkLevel=Уровень закладки
splitByChapters.includeMetadata=Включить метаданные
splitByChapters.allowDuplicates=Позволять дубликаты
splitByChapters.desc.1=Этот инструмент разбивает файл PDF на несколько PDF-файлов на основе структуры его глав.
splitByChapters.desc.2=Уровень закладки: выберите уровень закладок, который следует использовать для разделения (0 — самый верхний уровень, 1 — второй уровень и т. д.).
splitByChapters.desc.3=Включить метаданные: если эта опция отмечена, метаданные исходного PDF будут включены в каждый разбитый PDF.
splitByChapters.desc.4=Позволять дубликаты: если эта опция отмечена, на одной странице могут быть созданы несколько PDF из-за нескольких одинаковых закладок.
splitByChapters.submit=Разделить PDF

View File

@@ -79,8 +79,6 @@ info=Info
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=User is deactivated, login is currently blocked with this u
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Automatické redigovanie autoRedact.title=Automatické redigovanie
@@ -751,7 +749,6 @@ certSign.showSig=Zobraziť podpis
certSign.reason=Dôvod certSign.reason=Dôvod
certSign.location=Miesto certSign.location=Miesto
certSign.name=Meno certSign.name=Meno
certSign.showLogo=Show Logo
certSign.submit=Podpísať PDF certSign.submit=Podpísať PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Highlight Color 2:
compare.document.1=Dokument 1 compare.document.1=Dokument 1
compare.document.2=Dokument 2 compare.document.2=Dokument 2
compare.submit=Porovnať compare.submit=Porovnať
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.
#BookToPDF #BookToPDF
BookToPDF.title=Knihy a komiksy do PDF BookToPDF.title=Knihy a komiksy do PDF
@@ -811,11 +805,6 @@ sign.draw=Kresliť podpis
sign.text=Textový vstup sign.text=Textový vstup
sign.clear=Vymazať sign.clear=Vymazať
sign.add=Pridať sign.add=Pridať
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -79,8 +79,6 @@ info=Info
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=User is deactivated, login is currently blocked with this u
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Auto Cenzura autoRedact.title=Auto Cenzura
@@ -751,7 +749,6 @@ certSign.showSig=Prikaži potpis
certSign.reason=Razlog certSign.reason=Razlog
certSign.location=Lokacija certSign.location=Lokacija
certSign.name=Ime certSign.name=Ime
certSign.showLogo=Show Logo
certSign.submit=Potpiši PDF certSign.submit=Potpiši PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Highlight Color 2:
compare.document.1=Dokument 1 compare.document.1=Dokument 1
compare.document.2=Dokument 2 compare.document.2=Dokument 2
compare.submit=Uporedi compare.submit=Uporedi
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.
#BookToPDF #BookToPDF
BookToPDF.title=Books and Comics to PDF BookToPDF.title=Books and Comics to PDF
@@ -811,11 +805,6 @@ sign.draw=Nacrtaj potpis
sign.text=Tekstualni unos sign.text=Tekstualni unos
sign.clear=Obriši sign.clear=Obriši
sign.add=Dodaj sign.add=Dodaj
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -31,7 +31,7 @@ font=Teckensnitt
selectFillter=-- Välj -- selectFillter=-- Välj --
pageNum=Sidnummer pageNum=Sidnummer
sizes.small=Liten sizes.small=Liten
sizes.medium=Mellanvärd sizes.medium=Medium
sizes.large=Stor sizes.large=Stor
sizes.x-large=Extra stor sizes.x-large=Extra stor
error.pdfPassword=PDF-dokumentet är lösenordsskyddat och antingen har lösenordet inte angetts eller är felaktigt error.pdfPassword=PDF-dokumentet är lösenordsskyddat och antingen har lösenordet inte angetts eller är felaktigt
@@ -74,19 +74,17 @@ seeDockerHub=Se Docker Hub
visitGithub=Besök GitHub-repositoriet visitGithub=Besök GitHub-repositoriet
donate=Donera donate=Donera
color=Färg color=Färg
sponsor=Sponsör sponsor=Sponsor
info=Info info=Info
pro=Pro pro=Pro
page=Sidan page=Page
pages=Sidor pages=Pages
loading=Laddar...
addToDoc=Lägg till i dokument
legal.privacy=Dataprotektionspolicy legal.privacy=Privacy Policy
legal.terms=Villkor och betingelser legal.terms=Terms and Conditions
legal.accessibility=Gängeshållbarhet legal.accessibility=Accessibility
legal.cookie=Cockiropfer legal.cookie=Cookie Policy
legal.impressum=Riksdagens utskott för teknikfrihet legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -116,21 +114,21 @@ pipelineOptions.validateButton=Validera
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=Uppgradera till Pro enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=Den här funktionen är endast tillgänglig för Pro-användare. enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro stöder YAML-konfigurationsfiler och andra SSO funktioner. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Söker du fler funktioner för användarhantering? Spana in Stirling PDF Pro. enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=Vill du göra Stirling PDF bättre? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF har inaktiverad analys för att hjälpa oss förbättra produkten. Vi spårar ingen personlig information eller filinnehåll. analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=Var god aktivera analyser för att hjälpa Stirling-PDF att växa och tillåta oss att förstå våra användare bättre. analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=Aktivera analys analytics.enable=Enable analytics
analytics.disable=Avaktivera analys analytics.disable=Disable analytics
analytics.settings=Du kan ändra analysinställningarna i config/settings.yml-filen analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=Konvertera från PDF
navbar.sections.security=Signera & Säkerhet navbar.sections.security=Signera & Säkerhet
navbar.sections.advance=Avancerat navbar.sections.advance=Avancerat
navbar.sections.edit=Visa & Redigera navbar.sections.edit=Visa & Redigera
navbar.sections.popular=Populära navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -245,8 +243,7 @@ database.fileNotFound=Filen hittades inte
database.fileNullOrEmpty=Filen får inte vara null eller tom database.fileNullOrEmpty=Filen får inte vara null eller tom
database.failedImportFile=Misslyckades med att importera fil database.failedImportFile=Misslyckades med att importera fil
session.expired=Din session har löpt ut. Uppdatera sidan och försök igen. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -506,28 +503,28 @@ home.removeImagePdf.desc=Ta bort bild från PDF för att minska filstorlek
removeImagePdf.tags=Ta bort bild,Sidoperationer,Backend,serversida removeImagePdf.tags=Ta bort bild,Sidoperationer,Backend,serversida
home.splitPdfByChapters.title=Dela upp PDF efter kapitel home.splitPdfByChapters.title=Split PDF by Chapters
home.splitPdfByChapters.desc=Dela upp en PDF till flera filer baserat på dess kapitelstruktur. home.splitPdfByChapters.desc=Split a PDF into multiple files based on its chapter structure.
splitPdfByChapters.tags=dela,kapitel,bokmärken,organisera splitPdfByChapters.tags=split,chapters,bookmarks,organize
#replace-invert-color #replace-invert-color
replace-color.title=Replace-Invert-Color replace-color.title=Replace-Invert-Color
replace-color.header=Ersätt-Invertera färg på PDF replace-color.header=Replace-Invert Color PDF
home.replaceColorPdf.title=Replace and Invert Color home.replaceColorPdf.title=Replace and Invert Color
home.replaceColorPdf.desc=Ersätt färg för text och bakgrund i PDF och invertera hela färgen på PDF för att minska filstorlek home.replaceColorPdf.desc=Replace color for text and background in PDF and invert full color of pdf to reduce file size
replaceColorPdf.tags=Ersätt Färg, Sidåtgärder, Bakomliggande, Serversid replaceColorPdf.tags=Replace Color,Page operations,Back end,server side
replace-color.selectText.1=Ersätt eller Invertera färgalternativ replace-color.selectText.1=Replace or Invert color Options
replace-color.selectText.2=Standard (standard höghastighetsfärg) replace-color.selectText.2=Default(Default high contrast colors)
replace-color.selectText.3=Anpassad (anpassade färger) replace-color.selectText.3=Custom(Customized colors)
replace-color.selectText.4=Full-Invertera (invertera alla färger) replace-color.selectText.4=Full-Invert(Invert all colors)
replace-color.selectText.5=Höghastighetsfärgalternativ replace-color.selectText.5=High contrast color options
replace-color.selectText.6=Vit text på svart bakgrund replace-color.selectText.6=white text on black background
replace-color.selectText.7=Svart text på vit bakgrund replace-color.selectText.7=Black text on white background
replace-color.selectText.8=Gul text på svart bakgrund replace-color.selectText.8=Yellow text on black background
replace-color.selectText.9=Grön text på svart bakgrund replace-color.selectText.9=Green text on black background
replace-color.selectText.10=Välj textfärg replace-color.selectText.10=Choose text Color
replace-color.selectText.11=Välj bakgrundsfärg replace-color.selectText.11=Choose background Color
replace-color.submit=Ersätt replace-color.submit=Replace
@@ -554,9 +551,10 @@ login.oauth2AccessDenied=Åtkomst nekad
login.oauth2InvalidTokenResponse=Ogiltigt token-svar login.oauth2InvalidTokenResponse=Ogiltigt token-svar
login.oauth2InvalidIdToken=Ogiltigt Id-token login.oauth2InvalidIdToken=Ogiltigt Id-token
login.userIsDisabled=Användaren är inaktiverad, inloggning är för närvarande blockerad med detta användarnamn. Kontakta administratören. login.userIsDisabled=Användaren är inaktiverad, inloggning är för närvarande blockerad med detta användarnamn. Kontakta administratören.
login.alreadyLoggedIn=Du är redan inloggad login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=enheter. Logga ut från enheterna och försök igen. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=Du har för många aktiva sessioner login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Auto-redigera autoRedact.title=Auto-redigera
@@ -731,7 +729,7 @@ pageLayout.submit=Skicka
scalePages.title=Justera sidskala scalePages.title=Justera sidskala
scalePages.header=Justera sidskala scalePages.header=Justera sidskala
scalePages.pageSize=Storlek på en sida i dokumentet. scalePages.pageSize=Storlek på en sida i dokumentet.
scalePages.keepPageSize=Originalstorlek scalePages.keepPageSize=Original Size
scalePages.scaleFactor=Zoomnivå (beskärning) för en sida. scalePages.scaleFactor=Zoomnivå (beskärning) för en sida.
scalePages.submit=Skicka scalePages.submit=Skicka
@@ -751,7 +749,6 @@ certSign.showSig=Visa signatur
certSign.reason=Anledning certSign.reason=Anledning
certSign.location=Plats certSign.location=Plats
certSign.name=Namn certSign.name=Namn
certSign.showLogo=Visa logo
certSign.submit=Signera PDF certSign.submit=Signera PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Markeringsfärg 2:
compare.document.1=Dokument 1 compare.document.1=Dokument 1
compare.document.2=Dokument 2 compare.document.2=Dokument 2
compare.submit=Jämför compare.submit=Jämför
compare.complex.message=En eller båda de angivna dokumenten är stora filer, jämförelsepräzissen kan minska.
compare.large.file.message=En eller båda de angivna dokumenten är för stora att bearbeta
compare.no.text.message=En eller båda de valda PDF:erna innehåller ingen textinnehåll. Välj PDF:er med text för jämförelse.
#BookToPDF #BookToPDF
BookToPDF.title=Böcker och serier till PDF BookToPDF.title=Böcker och serier till PDF
@@ -811,11 +805,6 @@ sign.draw=Rita signatur
sign.text=Textinmatning sign.text=Textinmatning
sign.clear=Rensa sign.clear=Rensa
sign.add=Lägg till sign.add=Lägg till
sign.saved=Sparade signaturer
sign.save=Spara signatur
sign.personalSigs=Personliga signaturer
sign.sharedSigs=Delade signaturer
sign.noSavedSigs=Inga sparade signaturer hittades
#repair #repair
@@ -1025,7 +1014,7 @@ watermark.header=Lägg till vattenstämpel
watermark.selectText.1=Välj PDF för att lägga till vattenstämpel till: watermark.selectText.1=Välj PDF för att lägga till vattenstämpel till:
watermark.selectText.2=Vattenmärkestext: watermark.selectText.2=Vattenmärkestext:
watermark.selectText.3=Teckenstorlek: watermark.selectText.3=Teckenstorlek:
watermark.selectText.4=Vändning (0-360): watermark.selectText.4=Rotation (0-360):
watermark.selectText.5=widthSpacer (mellanrum mellan varje vattenstämpel horisontellt): watermark.selectText.5=widthSpacer (mellanrum mellan varje vattenstämpel horisontellt):
watermark.selectText.6=heightSpacer (mellanrum mellan varje vattenstämpel vertikalt): watermark.selectText.6=heightSpacer (mellanrum mellan varje vattenstämpel vertikalt):
watermark.selectText.7=Opacitet (0% - 100%): watermark.selectText.7=Opacitet (0% - 100%):
@@ -1193,8 +1182,8 @@ licenses.license=Licens
survey.nav=Undersökning survey.nav=Undersökning
survey.title=Stirling-PDF-undersökning survey.title=Stirling-PDF-undersökning
survey.description=Stirling-PDF har ingen spårning så vi vill höra från våra användare för att förbättra Stirling-PDF! survey.description=Stirling-PDF har ingen spårning så vi vill höra från våra användare för att förbättra Stirling-PDF!
survey.changes=Stirling-PDF har ändrats sedan den senaste undersökningen. Lär dig mer på vår blogg här: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=Med dessa ändringar fås betalat företagsstöd och finansiering survey.changes2=With these changes we are getting paid business support and funding
survey.please=Vänligen överväg att delta i vår undersökning! survey.please=Vänligen överväg att delta i vår undersökning!
survey.disabled=(Undersökningspopup kommer att inaktiveras i kommande uppdateringar men finns tillgänglig längst ner på sidan) survey.disabled=(Undersökningspopup kommer att inaktiveras i kommande uppdateringar men finns tillgänglig längst ner på sidan)
survey.button=Delta i undersökningen survey.button=Delta i undersökningen
@@ -1222,13 +1211,15 @@ removeImage.removeImage=Ta bort bild
removeImage.submit=Ta bort bild removeImage.submit=Ta bort bild
splitByChapters.title=Dela upp PDF efter kapitel splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Dela upp PDF efter kapitel splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bokmärkesnivå splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Inkludera Metadata splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Tillåt Dubletter splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=Detta verktyg delar upp en PDF till flera PDFer baserat på dess kapitelstruktur. splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bokmärkesnivå: Välj nivån av bokmärken att använda för delning (0 för toppnivå, 1 för andra nivå, m.m.). splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Tillåt duplicieringar: Om kryssrutan är markerad tillåts flera bokmärken på samma sida skapa individuella PDF:er. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Dela upp PDF splitByChapters.submit=Split PDF

View File

@@ -3,8 +3,8 @@
########### ###########
# the direction that the language is written (ltr = left to right, rtl = right to left) # the direction that the language is written (ltr = left to right, rtl = right to left)
language.direction=ltr language.direction=ltr
addPageNumbers.fontSize=ขนาดตัวอักษร addPageNumbers.fontSize=Font Size
addPageNumbers.fontName=ชื่อฟอนต์ addPageNumbers.fontName=Font Name
pdfPrompt=เลือก PDF pdfPrompt=เลือก PDF
multiPdfPrompt=เลือก PDF หลายไฟล์ (2 ขึ้นไป) multiPdfPrompt=เลือก PDF หลายไฟล์ (2 ขึ้นไป)
multiPdfDropPrompt=เลือก (หรือลากและวาง) PDF ทั้งหมดที่คุณต้องการ multiPdfDropPrompt=เลือก (หรือลากและวาง) PDF ทั้งหมดที่คุณต้องการ
@@ -56,12 +56,12 @@ userNotFoundMessage=ไม่พบผู้ใช้
incorrectPasswordMessage=รหัสผ่านปัจจุบันไม่ถูกต้อง incorrectPasswordMessage=รหัสผ่านปัจจุบันไม่ถูกต้อง
usernameExistsMessage=ชื่อผู้ใช้ใหม่มีอยู่แล้ว usernameExistsMessage=ชื่อผู้ใช้ใหม่มีอยู่แล้ว
invalidUsernameMessage=ชื่อผู้ใช้ไม่ถูกต้อง ชื่อผู้ใช้สามารถประกอบด้วยตัวอักษร ตัวเลข และอักขระพิเศษต่อไปนี้ @._+- หรือจะต้องเป็นที่อยู่อีเมลที่ถูกต้อง invalidUsernameMessage=ชื่อผู้ใช้ไม่ถูกต้อง ชื่อผู้ใช้สามารถประกอบด้วยตัวอักษร ตัวเลข และอักขระพิเศษต่อไปนี้ @._+- หรือจะต้องเป็นที่อยู่อีเมลที่ถูกต้อง
invalidPasswordMessage=รหัสผ่านไม่ควรว่าง และไม่ควรมีพื้นที่ว่างที่ขอบของข้อความ invalidPasswordMessage=The password must not be empty and must not have spaces at the beginning or end.
confirmPasswordErrorMessage=รหัสผ่านใหม่และยืนยันรหัสผ่านใหม่ต้องตรงกัน confirmPasswordErrorMessage=รหัสผ่านใหม่และยืนยันรหัสผ่านใหม่ต้องตรงกัน
deleteCurrentUserMessage=ไม่สามารถลบผู้ใช้ที่เข้าสู่ระบบในปัจจุบันได้ deleteCurrentUserMessage=ไม่สามารถลบผู้ใช้ที่เข้าสู่ระบบในปัจจุบันได้
deleteUsernameExistsMessage=ชื่อผู้ใช้ไม่ปรากฏและไม่สามารถลบได้ deleteUsernameExistsMessage=ชื่อผู้ใช้ไม่ปรากฏและไม่สามารถลบได้
downgradeCurrentUserMessage=ไม่สามารถลดระดับบทบาทของผู้ใช้ปัจจุบันได้ downgradeCurrentUserMessage=ไม่สามารถลดระดับบทบาทของผู้ใช้ปัจจุบันได้
disabledCurrentUserMessage=ผู้ใช้งานปัจจุบันไม่สามารถปิดการใช้งานได้ disabledCurrentUserMessage=The current user cannot be disabled
downgradeCurrentUserLongMessage=ไม่สามารถลดระดับบทบาทของผู้ใช้ปัจจุบันได้ ดังนั้นผู้ใช้ปัจจุบันจะไม่ปรากฏ downgradeCurrentUserLongMessage=ไม่สามารถลดระดับบทบาทของผู้ใช้ปัจจุบันได้ ดังนั้นผู้ใช้ปัจจุบันจะไม่ปรากฏ
userAlreadyExistsOAuthMessage=ผู้ใช้มีอยู่แล้วในฐานะผู้ใช้ OAuth2 userAlreadyExistsOAuthMessage=ผู้ใช้มีอยู่แล้วในฐานะผู้ใช้ OAuth2
userAlreadyExistsWebMessage=ผู้ใช้มีอยู่แล้วในฐานะผู้ใช้เว็บ userAlreadyExistsWebMessage=ผู้ใช้มีอยู่แล้วในฐานะผู้ใช้เว็บ
@@ -76,17 +76,15 @@ donate=บริจาค
color=สี color=สี
sponsor=ผู้สนับสนุน sponsor=ผู้สนับสนุน
info=ข้อมูล info=ข้อมูล
pro=โปร pro=Pro
page=หน้า page=Page
pages=หน้า pages=Pages
loading=กำลังโหลด...
addToDoc=เพิ่มเข้าสู่เอกสาร
legal.privacy=นโยบายความเป็นส่วนตัว legal.privacy=Privacy Policy
legal.terms=ข้อกำหนดการใช้งาน legal.terms=Terms and Conditions
legal.accessibility=ความเข้าถึง legal.accessibility=Accessibility
legal.cookie=นโยบายคุกกี้ legal.cookie=Cookie Policy
legal.impressum=ปฏิญญา legal.impressum=Impressum
############### ###############
# Pipeline # # Pipeline #
@@ -116,8 +114,8 @@ pipelineOptions.validateButton=ตรวจสอบความถูกต้
######################## ########################
# ENTERPRISE EDITION # # ENTERPRISE EDITION #
######################## ########################
enterpriseEdition.button=อัปเกรดเป็นโปร enterpriseEdition.button=Upgrade to Pro
enterpriseEdition.warning=ฟีเจอร์นี้มีให้ใช้งานเฉพาะผู้ใช้ที่เป็นโปรเท่านั้น enterpriseEdition.warning=This feature is only available to Pro users.
enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features. enterpriseEdition.yamlAdvert=Stirling PDF Pro supports YAML configuration files and other SSO features.
enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro enterpriseEdition.ssoAdvert=Looking for more user management features? Check out Stirling PDF Pro
@@ -125,12 +123,12 @@ enterpriseEdition.ssoAdvert=Looking for more user management features? Check out
################# #################
# Analytics # # Analytics #
################# #################
analytics.title=คุณต้องการที่จะทำให้ Stirling PDF ดียิ่งขึ้นไหม? analytics.title=Do you want make Stirling PDF better?
analytics.paragraph1=Stirling PDF มีการวิเคราะห์แบบสมัครใจเพื่อช่วยเราปรับปรุงผลิตภัณฑ์ เราไม่นำทางความเป็นส่วนตัวหรือเนื้อหาของไฟล์ไปเก็บข้อมูลใด ๆ analytics.paragraph1=Stirling PDF has opt in analytics to help us improve the product. We do not track any personal information or file contents.
analytics.paragraph2=โปรดพิจารณาการเปิดใช้งานการวิเคราะห์เพื่อช่วยให้ Stirling-PDF เจริญเติบโตและทำให้เราเข้าใจผู้ใช้งานมากขึ้น analytics.paragraph2=Please consider enabling analytics to help Stirling-PDF grow and to allow us to understand our users better.
analytics.enable=เปิดการวิเคราะห์ analytics.enable=Enable analytics
analytics.disable=ปิดการวิเคราะห์ analytics.disable=Disable analytics
analytics.settings=คุณสามารถเปลี่ยนแปลงการตั้งค่าการวิเคราะห์ในไฟล์ config/settings.yml analytics.settings=You can change the settings for analytics in the config/settings.yml file
############# #############
# NAVBAR # # NAVBAR #
@@ -147,7 +145,7 @@ navbar.sections.convertFrom=แปลงจาก PDF
navbar.sections.security=ลงนามและความปลอดภัย navbar.sections.security=ลงนามและความปลอดภัย
navbar.sections.advance=ขั้นสูง navbar.sections.advance=ขั้นสูง
navbar.sections.edit=ดูและแก้ไข navbar.sections.edit=ดูและแก้ไข
navbar.sections.popular=ยอดนิยม navbar.sections.popular=Popular
############# #############
# SETTINGS # # SETTINGS #
@@ -206,7 +204,7 @@ adminUserSettings.user=ผู้ใช้
adminUserSettings.addUser=เพิ่มผู้ใช้ใหม่ adminUserSettings.addUser=เพิ่มผู้ใช้ใหม่
adminUserSettings.deleteUser=ลบผู้ใช้ adminUserSettings.deleteUser=ลบผู้ใช้
adminUserSettings.confirmDeleteUser=ควรลบผู้ใช้นี้หรือไม่? adminUserSettings.confirmDeleteUser=ควรลบผู้ใช้นี้หรือไม่?
adminUserSettings.confirmChangeUserStatus=ผู้ใช้นี้ควรถูกปิด/เปิดใช้งานหรือไม่? adminUserSettings.confirmChangeUserStatus=Should the user be disabled/enabled?
adminUserSettings.usernameInfo=ชื่อผู้ใช้สามารถประกอบด้วยตัวอักษร ตัวเลข และอักขระพิเศษต่อไปนี้ @._+- หรือจะต้องเป็นที่อยู่อีเมลที่ถูกต้อง adminUserSettings.usernameInfo=ชื่อผู้ใช้สามารถประกอบด้วยตัวอักษร ตัวเลข และอักขระพิเศษต่อไปนี้ @._+- หรือจะต้องเป็นที่อยู่อีเมลที่ถูกต้อง
adminUserSettings.roles=บทบาท adminUserSettings.roles=บทบาท
adminUserSettings.role=บทบาท adminUserSettings.role=บทบาท
@@ -220,13 +218,13 @@ adminUserSettings.forceChange=บังคับให้ผู้ใช้เ
adminUserSettings.submit=บันทึกผู้ใช้ adminUserSettings.submit=บันทึกผู้ใช้
adminUserSettings.changeUserRole=เปลี่ยนบทบาทของผู้ใช้ adminUserSettings.changeUserRole=เปลี่ยนบทบาทของผู้ใช้
adminUserSettings.authenticated=ได้รับการยืนยันแล้ว adminUserSettings.authenticated=ได้รับการยืนยันแล้ว
adminUserSettings.editOwnProfil=แก้ไขโปรไฟล์ของตัวเอง adminUserSettings.editOwnProfil=Edit own profile
adminUserSettings.enabledUser=ผู้ใช้ที่เปิดใช้งาน adminUserSettings.enabledUser=enabled user
adminUserSettings.disabledUser=ผู้ใช้ที่ปิดใช้งาน adminUserSettings.disabledUser=disabled user
adminUserSettings.activeUsers=ผู้ใช้ที่มีการใช้งาน: adminUserSettings.activeUsers=Active Users:
adminUserSettings.disabledUsers=ผู้ใช้ที่ถูกระงับการใช้งาน: adminUserSettings.disabledUsers=Disabled Users:
adminUserSettings.totalUsers=ผู้ใช้รวมทั้งหมด: adminUserSettings.totalUsers=Total Users:
adminUserSettings.lastRequest=การขอข้อมูลล่าสุด adminUserSettings.lastRequest=Last Request
database.title=การนำเข้า/ส่งออกฐานข้อมูล database.title=การนำเข้า/ส่งออกฐานข้อมูล
@@ -245,8 +243,7 @@ database.fileNotFound=ไม่พบไฟล์
database.fileNullOrEmpty=ไฟล์ต้องไม่ว่างเปล่าหรือไม่มีข้อมูล database.fileNullOrEmpty=ไฟล์ต้องไม่ว่างเปล่าหรือไม่มีข้อมูล
database.failedImportFile=การนำเข้าไฟล์ล้มเหลว database.failedImportFile=การนำเข้าไฟล์ล้มเหลว
session.expired=สถานะของคุณในระบบหมดอายุ กรุณารีเฟรชหน้าและลองใหม่อีกครั้ง session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -405,7 +402,7 @@ home.scalePages.title=ปรับขนาด/สเกลหน้า
home.scalePages.desc=เปลี่ยนขนาด/สเกลของหน้าและ/หรือเนื้อหาของมัน home.scalePages.desc=เปลี่ยนขนาด/สเกลของหน้าและ/หรือเนื้อหาของมัน
scalePages.tags=ปรับขนาด, แก้ไข, มิติ, ปรับ scalePages.tags=ปรับขนาด, แก้ไข, มิติ, ปรับ
home.pipeline.title=ทิศทางงาน home.pipeline.title=Pipeline
home.pipeline.desc=เรียกใช้งานหลายการกระทำใน PDF โดยกำหนดสคริปต์ pipeline home.pipeline.desc=เรียกใช้งานหลายการกระทำใน PDF โดยกำหนดสคริปต์ pipeline
pipeline.tags=อัตโนมัติ, ลำดับ, สคริปต์, ประมวลผลแบทช์ pipeline.tags=อัตโนมัติ, ลำดับ, สคริปต์, ประมวลผลแบทช์
@@ -501,8 +498,8 @@ home.BookToPDF.title=หนังสือเป็น PDF
home.BookToPDF.desc=แปลงรูปแบบหนังสือ/การ์ตูนเป็น PDF โดยใช้ Calibre home.BookToPDF.desc=แปลงรูปแบบหนังสือ/การ์ตูนเป็น PDF โดยใช้ Calibre
BookToPDF.tags=หนังสือ, การ์ตูน, Calibre, แปลง, มังงะ, amazon, kindle BookToPDF.tags=หนังสือ, การ์ตูน, Calibre, แปลง, มังงะ, amazon, kindle
home.removeImagePdf.title=ลบภาพออกจาก PDF home.removeImagePdf.title=Remove image
home.removeImagePdf.desc=ลบภาพออกจาก PDF เพื่อลดขนาดไฟล์ home.removeImagePdf.desc=Remove image from PDF to reduce file size
removeImagePdf.tags=Remove Image,Page operations,Back end,server side removeImagePdf.tags=Remove Image,Page operations,Back end,server side
@@ -553,10 +550,11 @@ login.oauth2invalidRequest=คำขอไม่ถูกต้อง
login.oauth2AccessDenied=การเข้าถึงถูกปฏิเสธ login.oauth2AccessDenied=การเข้าถึงถูกปฏิเสธ
login.oauth2InvalidTokenResponse=การตอบกลับโทเค็นไม่ถูกต้อง login.oauth2InvalidTokenResponse=การตอบกลับโทเค็นไม่ถูกต้อง
login.oauth2InvalidIdToken=โทเค็น Id ไม่ถูกต้อง login.oauth2InvalidIdToken=โทเค็น Id ไม่ถูกต้อง
login.userIsDisabled=ผู้ใช้งานถูกระงับการใช้งาน ไม่สามารถเข้าสู่ระบบด้วยชื่อผู้ใช้นี้ได้ กรุณาติดต่อผู้ดูแลระบบ login.userIsDisabled=User is deactivated, login is currently blocked with this username. Please contact the administrator.
login.alreadyLoggedIn=คุณได้เข้าสู่ระบบใน login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=อุปกรณ์แล้ว กรุณาออกจากระบบจากอุปกรณ์ที่ใช้งานอยู่แล้ว จากนั้นลองใหม่อีกครั้ง login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=คุณมีการเข้าสู่ระบบพร้อมกันเกินกว่ากำหนด login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=ซ่อนข้อมูลอัตโนมัติ autoRedact.title=ซ่อนข้อมูลอัตโนมัติ
@@ -716,7 +714,7 @@ autoSplitPDF.submit=ส่ง
#pipeline #pipeline
pipeline.title=พิ้พลne pipeline.title=Pipeline
#pageLayout #pageLayout
@@ -731,7 +729,7 @@ pageLayout.submit=ส่ง
scalePages.title=ปรับสเกลหน้า scalePages.title=ปรับสเกลหน้า
scalePages.header=ปรับสเกลหน้า scalePages.header=ปรับสเกลหน้า
scalePages.pageSize=ขนาดหน้าของเอกสาร scalePages.pageSize=ขนาดหน้าของเอกสาร
scalePages.keepPageSize=ขนาดต้นฉบับ scalePages.keepPageSize=Original Size
scalePages.scaleFactor=ระดับการซูม (ครอบตัด) ของหน้า scalePages.scaleFactor=ระดับการซูม (ครอบตัด) ของหน้า
scalePages.submit=ส่ง scalePages.submit=ส่ง
@@ -751,7 +749,6 @@ certSign.showSig=แสดงลายเซ็น
certSign.reason=เหตุผล certSign.reason=เหตุผล
certSign.location=ตำแหน่ง certSign.location=ตำแหน่ง
certSign.name=ชื่อ certSign.name=ชื่อ
certSign.showLogo=แสดงโลโก้
certSign.submit=เซ็นชื่อ PDF certSign.submit=เซ็นชื่อ PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=สีเน้น 2:
compare.document.1=เอกสาร 1 compare.document.1=เอกสาร 1
compare.document.2=เอกสาร 2 compare.document.2=เอกสาร 2
compare.submit=เปรียบเทียบ compare.submit=เปรียบเทียบ
compare.complex.message=หนึ่งหรือทั้งสองเอกสารที่ให้มายอมเป็นไฟล์ใหญ่ ความถูกต้องของการเปรียบเทียบอาจลดลง
compare.large.file.message=หนึ่งหรือทั้งสองเอกสารที่ให้มามีขนาดใหญ่มาก ไม่สามารถประมวลผลได้
compare.no.text.message=หนึ่งหรือทั้งสองเอกสาร PDF ที่เลือกไม่มีเนื้อหาข้อความ กรุณาเลือกเอกสาร PDF ที่มีข้อความสำหรับการเปรียบเทียบ
#BookToPDF #BookToPDF
BookToPDF.title=หนังสือและการ์ตูนเป็น PDF BookToPDF.title=หนังสือและการ์ตูนเป็น PDF
@@ -811,11 +805,6 @@ sign.draw=วาดลายเซ็น
sign.text=ป้อนข้อความ sign.text=ป้อนข้อความ
sign.clear=ล้าง sign.clear=ล้าง
sign.add=เพิ่ม sign.add=เพิ่ม
sign.saved=ลายเซ็นที่บันทึกไว้
sign.save=บันทึกลายเซ็น
sign.personalSigs=ลายเซ็นส่วนตัว
sign.sharedSigs=ลายเซ็นร่วม
sign.noSavedSigs=ไม่พบลายเซ็นที่บันทึกไว้
#repair #repair
@@ -842,7 +831,7 @@ ScannerImageSplit.selectText.7=พื้นที่เค้าโครงข
ScannerImageSplit.selectText.8=ตั้งค่าเกณฑ์พื้นที่เค้าโครงขั้นต่ำสำหรับรูปภาพ ScannerImageSplit.selectText.8=ตั้งค่าเกณฑ์พื้นที่เค้าโครงขั้นต่ำสำหรับรูปภาพ
ScannerImageSplit.selectText.9=ขนาดขอบ: ScannerImageSplit.selectText.9=ขนาดขอบ:
ScannerImageSplit.selectText.10=ตั้งค่าขนาดขอบที่เพิ่มและลบเพื่อป้องกันขอบขาวในผลลัพธ์ (ค่าเริ่มต้น: 1) ScannerImageSplit.selectText.10=ตั้งค่าขนาดขอบที่เพิ่มและลบเพื่อป้องกันขอบขาวในผลลัพธ์ (ค่าเริ่มต้น: 1)
ScannerImageSplit.info=Python ไม่มีการติดตั้ง กรุณาติดตั้งเพื่อใช้งาน ScannerImageSplit.info=Python is not installed. It is required to run.
#OCR #OCR
@@ -869,7 +858,7 @@ ocr.submit=ประมวลผล PDF ด้วย OCR
extractImages.title=แยกรูปภาพ extractImages.title=แยกรูปภาพ
extractImages.header=แยกรูปภาพ extractImages.header=แยกรูปภาพ
extractImages.selectText=เลือกรูปแบบภาพที่จะใช้ในการแปลงรูปภาพที่แยกได้ extractImages.selectText=เลือกรูปแบบภาพที่จะใช้ในการแปลงรูปภาพที่แยกได้
extractImages.allowDuplicates=บันทึกลายซ้ำ extractImages.allowDuplicates=Save duplicate images
extractImages.submit=แยก extractImages.submit=แยก
@@ -994,7 +983,7 @@ pdfToImage.color=สี
pdfToImage.grey=ระดับสีเทา pdfToImage.grey=ระดับสีเทา
pdfToImage.blackwhite=ขาวดำ (อาจสูญเสียข้อมูล!) pdfToImage.blackwhite=ขาวดำ (อาจสูญเสียข้อมูล!)
pdfToImage.submit=แปลง pdfToImage.submit=แปลง
pdfToImage.info=Python ไม่มีการติดตั้ง จำเป็นสำหรับการแปลง WebP pdfToImage.info=Python is not installed. Required for WebP conversion.
#addPassword #addPassword
@@ -1193,8 +1182,8 @@ licenses.license=ใบอนุญาต
survey.nav=สำรวจ survey.nav=สำรวจ
survey.title=สำรวจ Stirling-PDF survey.title=สำรวจ Stirling-PDF
survey.description=Stirling-PDF ไม่มีการติดตาม ดังนั้นเราต้องการฟังความคิดเห็นจากผู้ใช้เพื่อปรับปรุง Stirling-PDF! survey.description=Stirling-PDF ไม่มีการติดตาม ดังนั้นเราต้องการฟังความคิดเห็นจากผู้ใช้เพื่อปรับปรุง Stirling-PDF!
survey.changes=Stirling-PDF ได้มีการเปลี่ยนแปลงตั้งแต่การสำรวจครั้งล่าสุด! กรุณาตรวจสอบบล็อกของเราที่นี้เพื่อรับข้อมูลเพิ่มเติม: survey.changes=Stirling-PDF has changed since the last survey! To find out more please check our blog post here:
survey.changes2=ด้วยการเปลี่ยนแปลงเหล่านี้เราได้รับการสนับสนุนทางธุรกิจและการเงินจากผู้ประกอบการ survey.changes2=With these changes we are getting paid business support and funding
survey.please=กรุณาพิจารณาการสำรวจของเรา! survey.please=กรุณาพิจารณาการสำรวจของเรา!
survey.disabled=(ป๊อปอัปการสำรวจจะถูกปิดใช้งานในการอัปเดตต่อไปนี้ แต่สามารถใช้ได้ที่ส่วนท้ายของหน้า) survey.disabled=(ป๊อปอัปการสำรวจจะถูกปิดใช้งานในการอัปเดตต่อไปนี้ แต่สามารถใช้ได้ที่ส่วนท้ายของหน้า)
survey.button=เริ่มสำรวจ survey.button=เริ่มสำรวจ
@@ -1216,19 +1205,21 @@ error.discordSubmit=Discord - ส่งโพสต์การสนับส
#remove-image #remove-image
removeImage.title=ลบภาพ removeImage.title=Remove image
removeImage.header=ลบภาพ removeImage.header=Remove image
removeImage.removeImage=ลบภาพ removeImage.removeImage=Remove image
removeImage.submit=ยืนยันการลบภาพ removeImage.submit=Remove image
splitByChapters.title=Split PDF by Chapters
splitByChapters.header=Split PDF by Chapters
splitByChapters.bookmarkLevel=Bookmark Level
splitByChapters.includeMetadata=Include Metadata
splitByChapters.allowDuplicates=Allow Duplicates
splitByChapters.desc.1=This tool splits a PDF file into multiple PDFs based on its chapter structure.
splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for splitting (0 for top-level, 1 for second-level, etc.).
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF
splitByChapters.title=แบ่งไฟล์ PDF ตามหมวดหมู่
splitByChapters.header=แบ่งไฟล์ PDF ตามหมวดหมู่
splitByChapters.bookmarkLevel=ระดับบุคคลที่ได้รับเลือก
splitByChapters.includeMetadata=รวมข้อมูลเสริม
splitByChapters.allowDuplicates=อนุญาตให้มีการซ้ำ
splitByChapters.desc.1=เครื่องมือนี้จะแบ่งไฟล์ PDF ออกเป็นหลายไฟล์ PDF ตามโครงสร้างหมวดหมู่ของไฟล์นั้นๆ
splitByChapters.desc.2=ระดับบุคคลที่ได้รับเลือก: เลือกระดับบุคคลที่ได้รับเลือกที่จะใช้ในการแบ่ง (0 สำหรับระดับต้น, 1 สำหรับระดับที่สอง เป็นต้น)
splitByChapters.desc.3=รวมข้อมูลเสริม: หากถูกเลือก ข้อมูลเสริมของไฟล์ PDF ที่เดิมจะถูกรวมอยู่ในแต่ละไฟล์ที่แบ่งออก
splitByChapters.desc.4=อนุญาตให้มีการซ้ำ: หากถูกเลือก จะทำให้สามารถสร้างไฟล์ PDF แยกออกมาจากหน้าเดียวกันได้หลายรายการ
splitByChapters.submit=แบ่งไฟล์ PDF

View File

@@ -79,8 +79,6 @@ info=Bilgi
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Gizlilik Politikası legal.privacy=Gizlilik Politikası
legal.terms=Şartlar ve koşullar legal.terms=Şartlar ve koşullar
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=Dosya yok veya boş olmamalıdır
database.failedImportFile=Dosya İçe Aktarılamadı database.failedImportFile=Dosya İçe Aktarılamadı
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=Kullanıcı devre dışı bırakıldı, şu anda bu kullan
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Otomatik Karartma autoRedact.title=Otomatik Karartma
@@ -751,7 +749,6 @@ certSign.showSig=İmzayı Göster
certSign.reason=Neden certSign.reason=Neden
certSign.location=Konum certSign.location=Konum
certSign.name=İsim certSign.name=İsim
certSign.showLogo=Show Logo
certSign.submit=PDF'i İmzala certSign.submit=PDF'i İmzala
@@ -786,9 +783,6 @@ compare.highlightColor.2=Vurgu Rengi 2:
compare.document.1=Belge 1 compare.document.1=Belge 1
compare.document.2=Belge 2 compare.document.2=Belge 2
compare.submit=Karşılaştır compare.submit=Karşılaştır
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.
#BookToPDF #BookToPDF
BookToPDF.title=Kitapları ve Çizgi Romanları PDF'e Dönüştürme BookToPDF.title=Kitapları ve Çizgi Romanları PDF'e Dönüştürme
@@ -811,11 +805,6 @@ sign.draw=İmza Çiz
sign.text=Metin Girişi sign.text=Metin Girişi
sign.clear=Temizle sign.clear=Temizle
sign.add=Ekle sign.add=Ekle
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -79,8 +79,6 @@ info=Інформація
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=File must not be null or empty
database.failedImportFile=Failed Import File database.failedImportFile=Failed Import File
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=User is deactivated, login is currently blocked with this u
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Автоматичне редагування autoRedact.title=Автоматичне редагування
@@ -751,7 +749,6 @@ certSign.showSig=Показати підпис
certSign.reason=Причина certSign.reason=Причина
certSign.location=Місцезнаходження certSign.location=Місцезнаходження
certSign.name=Ім'я certSign.name=Ім'я
certSign.showLogo=Show Logo
certSign.submit=Підписати PDF certSign.submit=Підписати PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Highlight Color 2:
compare.document.1=Документ 1 compare.document.1=Документ 1
compare.document.2=Документ 2 compare.document.2=Документ 2
compare.submit=Порівняти 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.
#BookToPDF #BookToPDF
BookToPDF.title=Книги та комікси в PDF BookToPDF.title=Книги та комікси в PDF
@@ -811,11 +805,6 @@ sign.draw=Намалювати підпис
sign.text=Ввід тексту sign.text=Ввід тексту
sign.clear=Очистити sign.clear=Очистити
sign.add=Додати sign.add=Додати
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -79,8 +79,6 @@ info=Thông tin
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=Tệp không được để trống hoặc rỗng
database.failedImportFile=Không thể nhập tệp database.failedImportFile=Không thể nhập tệp
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=User is deactivated, login is currently blocked with this u
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=Tự động biên tập autoRedact.title=Tự động biên tập
@@ -751,7 +749,6 @@ certSign.showSig=Hiển thị chữ ký
certSign.reason=Lý do certSign.reason=Lý do
certSign.location=Vị trí certSign.location=Vị trí
certSign.name=Tên certSign.name=Tên
certSign.showLogo=Show Logo
certSign.submit=Ký PDF certSign.submit=Ký PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=Màu đánh dấu 2:
compare.document.1=Tài liệu 1 compare.document.1=Tài liệu 1
compare.document.2=Tài liệu 2 compare.document.2=Tài liệu 2
compare.submit=So sánh compare.submit=So sánh
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.
#BookToPDF #BookToPDF
BookToPDF.title=Sách và truyện tranh sang PDF BookToPDF.title=Sách và truyện tranh sang PDF
@@ -811,11 +805,6 @@ sign.draw=Vẽ chữ ký
sign.text=Nhập văn bản sign.text=Nhập văn bản
sign.clear=Xóa sign.clear=Xóa
sign.add=Thêm sign.add=Thêm
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -79,8 +79,6 @@ info=信息
pro=Pro pro=Pro
page=Page page=Page
pages=Pages pages=Pages
loading=Loading...
addToDoc=Add to Document
legal.privacy=Privacy Policy legal.privacy=Privacy Policy
legal.terms=Terms and Conditions legal.terms=Terms and Conditions
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=文件不能为空
database.failedImportFile=导入文件失败 database.failedImportFile=导入文件失败
session.expired=Your session has expired. Please refresh the page and try again. session.expired=Your session has expired. Please refresh the page and try again.
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -557,6 +554,7 @@ login.userIsDisabled=用户被禁用,登录已被阻止。请联系管理员
login.alreadyLoggedIn=You are already logged in to login.alreadyLoggedIn=You are already logged in to
login.alreadyLoggedIn2=devices. Please log out of the devices and try again. login.alreadyLoggedIn2=devices. Please log out of the devices and try again.
login.toManySessions=You have too many active sessions login.toManySessions=You have too many active sessions
login.toManySessions2=Please log out of the devices and try again. Alternatively, you can upgrade to Stirling PDF Pro.
#auto-redact #auto-redact
autoRedact.title=自动删除 autoRedact.title=自动删除
@@ -751,7 +749,6 @@ certSign.showSig=显示签名
certSign.reason=原因 certSign.reason=原因
certSign.location=位置 certSign.location=位置
certSign.name=名称 certSign.name=名称
certSign.showLogo=Show Logo
certSign.submit=给PDF签名 certSign.submit=给PDF签名
@@ -786,9 +783,6 @@ compare.highlightColor.2=高亮颜色 2:
compare.document.1=文档 1 compare.document.1=文档 1
compare.document.2=文档 2 compare.document.2=文档 2
compare.submit=比较 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.
#BookToPDF #BookToPDF
BookToPDF.title=电子书和漫画转换成PDF BookToPDF.title=电子书和漫画转换成PDF
@@ -811,11 +805,6 @@ sign.draw=绘制签名
sign.text=文本输入 sign.text=文本输入
sign.clear=清除 sign.clear=清除
sign.add=添加 sign.add=添加
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=Bookmark Level: Choose the level of bookmarks to use for
splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF. splitByChapters.desc.3=Include Metadata: If checked, the original PDF's metadata will be included in each split PDF.
splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs. splitByChapters.desc.4=Allow Duplicates: If checked, allows multiple bookmarks on the same page to create separate PDFs.
splitByChapters.submit=Split PDF splitByChapters.submit=Split PDF

View File

@@ -21,7 +21,7 @@ save=儲存
saveToBrowser=儲存到瀏覽器 saveToBrowser=儲存到瀏覽器
close=關閉 close=關閉
filesSelected=已選擇的檔案 filesSelected=已選擇的檔案
noFavourites=還沒有功能被收藏 noFavourites=未新增收藏
downloadComplete=下載完成 downloadComplete=下載完成
bored=等待時覺得無聊? bored=等待時覺得無聊?
alphabet=字母表 alphabet=字母表
@@ -79,8 +79,6 @@ info=資訊
pro=專業版 pro=專業版
page=頁面 page=頁面
pages=頁面 pages=頁面
loading=Loading...
addToDoc=Add to Document
legal.privacy=隱私權政策 legal.privacy=隱私權政策
legal.terms=使用條款 legal.terms=使用條款
@@ -92,7 +90,7 @@ legal.impressum=版本說明
# Pipeline # # Pipeline #
############### ###############
pipeline.header=管道功能選單(測試版) pipeline.header=管道功能選單(測試版)
pipeline.uploadButton=上傳自訂設定 pipeline.uploadButton=上傳自訂
pipeline.configureButton=設定 pipeline.configureButton=設定
pipeline.defaultOption=自訂 pipeline.defaultOption=自訂
pipeline.submitButton=送出 pipeline.submitButton=送出
@@ -246,7 +244,6 @@ database.fileNullOrEmpty=檔案不得為空或空白
database.failedImportFile=匯入檔案失敗 database.failedImportFile=匯入檔案失敗
session.expired=您的工作階段已過期。請重新整理頁面並再試一次。 session.expired=您的工作階段已過期。請重新整理頁面並再試一次。
session.refreshPage=Refresh Page
############# #############
# HOME-PAGE # # HOME-PAGE #
@@ -259,9 +256,9 @@ home.viewPdf.title=檢視 PDF
home.viewPdf.desc=檢視、註釋、新增文字或圖片 home.viewPdf.desc=檢視、註釋、新增文字或圖片
viewPdf.tags=檢視,閱讀,註釋,文字,圖片 viewPdf.tags=檢視,閱讀,註釋,文字,圖片
home.multiTool.title=PDF 複合工具 home.multiTool.title=PDF 工具
home.multiTool.desc=合併、旋轉、重新排列和移除頁面 home.multiTool.desc=合併、旋轉、重新排列和移除頁面
multiTool.tags=複合工具,多功能,UI,點選拖,前端,客戶端,互動,互動,移動 multiTool.tags=工具,多操作,UI,點選拖,前端,客戶端,互動,互動,移動
home.merge.title=合併 home.merge.title=合併
home.merge.desc=輕鬆將多個 PDF 合併為一個。 home.merge.desc=輕鬆將多個 PDF 合併為一個。
@@ -557,6 +554,7 @@ login.userIsDisabled=使用者已停用,目前此使用者無法登入。請
login.alreadyLoggedIn=您已經登入了 login.alreadyLoggedIn=您已經登入了
login.alreadyLoggedIn2=個裝置。請登出其他裝置後再試一次。 login.alreadyLoggedIn2=個裝置。請登出其他裝置後再試一次。
login.toManySessions=您有太多使用中的工作階段 login.toManySessions=您有太多使用中的工作階段
login.toManySessions2=請登出其他裝置後再試一次。或者,您可以升級至 Stirling PDF 專業版。
#auto-redact #auto-redact
autoRedact.title=自動塗黑 autoRedact.title=自動塗黑
@@ -751,7 +749,6 @@ certSign.showSig=顯示簽章
certSign.reason=原因 certSign.reason=原因
certSign.location=位置 certSign.location=位置
certSign.name=名稱 certSign.name=名稱
certSign.showLogo=Show Logo
certSign.submit=簽章 PDF certSign.submit=簽章 PDF
@@ -786,9 +783,6 @@ compare.highlightColor.2=標示顏色 2
compare.document.1=文件 1 compare.document.1=文件 1
compare.document.2=文件 2 compare.document.2=文件 2
compare.submit=比較 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.
#BookToPDF #BookToPDF
BookToPDF.title=電子書和漫畫轉 PDF BookToPDF.title=電子書和漫畫轉 PDF
@@ -811,11 +805,6 @@ sign.draw=繪製簽章
sign.text=文字輸入 sign.text=文字輸入
sign.clear=清除 sign.clear=清除
sign.add=新增 sign.add=新增
sign.saved=Saved Signatures
sign.save=Save Signature
sign.personalSigs=Personal Signatures
sign.sharedSigs=Shared Signatures
sign.noSavedSigs=No saved signatures found
#repair #repair
@@ -851,8 +840,8 @@ ocr.header=清理掃描 / OCR光學字元識別
ocr.selectText.1=選擇要在 PDF 中偵測的語言(列出的是目前可以偵測的語言): ocr.selectText.1=選擇要在 PDF 中偵測的語言(列出的是目前可以偵測的語言):
ocr.selectText.2=產生包含 OCR 文字的文字文件,並與 OCR 的 PDF 一起 ocr.selectText.2=產生包含 OCR 文字的文字文件,並與 OCR 的 PDF 一起
ocr.selectText.3=修正掃描的頁面傾斜角度,將它們旋轉回原位 ocr.selectText.3=修正掃描的頁面傾斜角度,將它們旋轉回原位
ocr.selectText.4=清理頁面以降低 OCR 在背景雜訊中識別文字的機率。(無輸出變化) ocr.selectText.4=清理頁面,使 OCR 不太可能在背景噪音中找到文字。(無輸出變化)
ocr.selectText.5=清理頁面以降低 OCR 在背景雜訊中識別文字的機率,保持乾淨的輸出。 ocr.selectText.5=清理頁面,使 OCR 不太可能在背景噪音中找到文字,保持清理的輸出。
ocr.selectText.6=忽略具有互動文字的頁面,只對影像頁面進行 OCR ocr.selectText.6=忽略具有互動文字的頁面,只對影像頁面進行 OCR
ocr.selectText.7=強制 OCR將對每一頁進行 OCR移除所有原始文字元素 ocr.selectText.7=強制 OCR將對每一頁進行 OCR移除所有原始文字元素
ocr.selectText.8=正常(如果 PDF 包含文字將出錯) ocr.selectText.8=正常(如果 PDF 包含文字將出錯)
@@ -869,7 +858,7 @@ ocr.submit=使用 OCR 處理 PDF
extractImages.title=提取圖片 extractImages.title=提取圖片
extractImages.header=提取圖片 extractImages.header=提取圖片
extractImages.selectText=選擇要轉換提取影像的影像格式 extractImages.selectText=選擇要轉換提取影像的影像格式
extractImages.allowDuplicates=儲存重複的圖片 extractImages.allowDuplicates=Save duplicate images
extractImages.submit=提取 extractImages.submit=提取
@@ -887,10 +876,10 @@ compress.title=壓縮
compress.header=壓縮 PDF compress.header=壓縮 PDF
compress.credit=此服務使用 Ghostscript 進行 PDF 壓縮/最佳化。 compress.credit=此服務使用 Ghostscript 進行 PDF 壓縮/最佳化。
compress.selectText.1=手動模式 - 從 1 到 4 compress.selectText.1=手動模式 - 從 1 到 4
compress.selectText.2=最佳化級: compress.selectText.2=最佳化級
compress.selectText.3=4對於含有文字影像來說結果很糟 compress.selectText.3=4對於文字影像非常糟糕
compress.selectText.4=自動模式 - 自動調整品質使 PDF 達到指定的檔案大小 compress.selectText.4=自動模式 - 自動調整品質使 PDF 達到確定大小
compress.selectText.5=指定的 PDF 檔案大小(例如 25MB, 10.8MB, 25KB compress.selectText.5=預期的 PDF 大小(例如 25MB, 10.8MB, 25KB
compress.submit=壓縮 compress.submit=壓縮
@@ -930,8 +919,8 @@ pdfOrganiser.placeholder=(例如 1,3,2 或 4-8,2,10-12 或 2n-1
#multiTool #multiTool
multiTool.title=PDF 複合工具 multiTool.title=PDF 工具
multiTool.header=PDF 複合工具 multiTool.header=PDF 工具
multiTool.uploadPrompts=檔名 multiTool.uploadPrompts=檔名
#view pdf #view pdf
@@ -1232,3 +1221,5 @@ splitByChapters.desc.2=書籤層級選擇用於分割的書籤層級0 表
splitByChapters.desc.3=包含中繼資料:如果勾選,原始 PDF 的中繼資料將包含在每個分割後的 PDF 中。 splitByChapters.desc.3=包含中繼資料:如果勾選,原始 PDF 的中繼資料將包含在每個分割後的 PDF 中。
splitByChapters.desc.4=允許重複:如果勾選,允許同一頁面上的多個書籤建立獨立的 PDF。 splitByChapters.desc.4=允許重複:如果勾選,允許同一頁面上的多個書籤建立獨立的 PDF。
splitByChapters.submit=分割 PDF splitByChapters.submit=分割 PDF

View File

@@ -13,42 +13,42 @@
security: security:
enableLogin: false # set to 'true' to enable login enableLogin: false # set to 'true' to enable login
csrfDisabled: true # set to 'true' to disable CSRF protection (not recommended for production) csrfDisabled: true # Set to 'true' to disable CSRF protection (not recommended for production)
loginAttemptCount: 5 # lock user account after 5 tries; when using e.g. Fail2Ban you can deactivate the function with -1 loginAttemptCount: 5 # lock user account after 5 tries; when using e.g. Fail2Ban you can deactivate the function with -1
loginResetTimeMinutes: 120 # lock account for 2 hours after x attempts loginResetTimeMinutes: 120 # lock account for 2 hours after x attempts
loginMethod: all # 'all' (Login Username/Password and OAuth2[must be enabled and configured]), 'normal'(only Login with Username/Password) or 'oauth2'(only Login with OAuth2) loginMethod: all # 'all' (Login Username/Password and OAuth2[must be enabled and configured]), 'normal'(only Login with Username/Password) or 'oauth2'(only Login with OAuth2)
initialLogin: initialLogin:
username: '' # initial username for the first login username: '' # Initial username for the first login
password: '' # initial password for the first login password: '' # Initial password for the first login
oauth2: oauth2:
enabled: false # set to 'true' to enable login (Note: enableLogin must also be 'true' for this to work) enabled: false # set to 'true' to enable login (Note: enableLogin must also be 'true' for this to work)
client: client:
keycloak: keycloak:
issuer: '' # URL of the Keycloak realm's OpenID Connect Discovery endpoint issuer: '' # URL of the Keycloak realm's OpenID Connect Discovery endpoint
clientId: '' # client ID for Keycloak OAuth2 clientId: '' # Client ID for Keycloak OAuth2
clientSecret: '' # client secret for Keycloak OAuth2 clientSecret: '' # Client Secret for Keycloak OAuth2
scopes: openid, profile, email # scopes for Keycloak OAuth2 scopes: openid, profile, email # Scopes for Keycloak OAuth2
useAsUsername: preferred_username # field to use as the username for Keycloak OAuth2 useAsUsername: preferred_username # Field to use as the username for Keycloak OAuth2
google: google:
clientId: '' # client ID for Google OAuth2 clientId: '' # Client ID for Google OAuth2
clientSecret: '' # client secret for Google OAuth2 clientSecret: '' # Client Secret for Google OAuth2
scopes: https://www.googleapis.com/auth/userinfo.email, https://www.googleapis.com/auth/userinfo.profile # scopes for Google OAuth2 scopes: https://www.googleapis.com/auth/userinfo.email, https://www.googleapis.com/auth/userinfo.profile # Scopes for Google OAuth2
useAsUsername: email # field to use as the username for Google OAuth2 useAsUsername: email # Field to use as the username for Google OAuth2
github: github:
clientId: '' # client ID for GitHub OAuth2 clientId: '' # Client ID for GitHub OAuth2
clientSecret: '' # client secret for GitHub OAuth2 clientSecret: '' # Client Secret for GitHub OAuth2
scopes: read:user # scope for GitHub OAuth2 scopes: read:user # Scope for GitHub OAuth2
useAsUsername: login # field to use as the username for GitHub OAuth2 useAsUsername: login # Field to use as the username for GitHub OAuth2
issuer: '' # set to any provider that supports OpenID Connect Discovery (/.well-known/openid-configuration) endpoint issuer: '' # set to any provider that supports OpenID Connect Discovery (/.well-known/openid-configuration) end-point
clientId: '' # client ID from your provider clientId: '' # Client ID from your provider
clientSecret: '' # client secret from your provider clientSecret: '' # Client Secret from your provider
autoCreateUser: false # set to 'true' to allow auto-creation of non-existing users autoCreateUser: false # set to 'true' to allow auto-creation of non-existing users
blockRegistration: false # set to 'true' to deny login with SSO without prior registration by an admin blockRegistration: false # set to 'true' to deny login with SSO without prior registration by an admin
useAsUsername: email # default is 'email'; custom fields can be used as the username useAsUsername: email # Default is 'email'; custom fields can be used as the username
scopes: openid, profile, email # specify the scopes for which the application will request permissions scopes: openid, profile, email # Specify the scopes for which the application will request permissions
provider: google # set this to your OAuth provider's name, e.g., 'google' or 'keycloak' provider: google # Set this to your OAuth provider's name, e.g., 'google' or 'keycloak'
saml2: saml2:
enabled: false # currently in alpha, not recommended for use yet, enableAlphaFunctionality must be set to true enabled: false
autoCreateUser: false # set to 'true' to allow auto-creation of non-existing users autoCreateUser: false # set to 'true' to allow auto-creation of non-existing users
blockRegistration: false # set to 'true' to deny login with SSO without prior registration by an admin blockRegistration: false # set to 'true' to deny login with SSO without prior registration by an admin
registrationId: stirling registrationId: stirling
@@ -56,44 +56,45 @@ security:
idpSingleLogoutUrl: https://dev-XXXXXXXX.okta.com/app/dev-XXXXXXXX_stirlingpdf_1/externalKey/slo/saml idpSingleLogoutUrl: https://dev-XXXXXXXX.okta.com/app/dev-XXXXXXXX_stirlingpdf_1/externalKey/slo/saml
idpSingleLoginUrl: https://dev-XXXXXXXX.okta.com/app/dev-XXXXXXXX_stirlingpdf_1/externalKey/sso/saml idpSingleLoginUrl: https://dev-XXXXXXXX.okta.com/app/dev-XXXXXXXX_stirlingpdf_1/externalKey/sso/saml
idpIssuer: http://www.okta.com/externalKey idpIssuer: http://www.okta.com/externalKey
idpCert: classpath:okta.crt idpCert: classpath:octa.crt
privateKey: classpath:saml-private-key.key privateKey: classpath:saml-private-key.key
spCert: classpath:saml-public-cert.crt spCert: classpath:saml-public-cert.crt
# Enterprise edition settings unused for now please ignore!
enterpriseEdition: enterpriseEdition:
enabled: false # set to 'true' to enable enterprise edition enabled: false # set to 'true' to enable enterprise edition
key: 00000000-0000-0000-0000-000000000000 key: 00000000-0000-0000-0000-000000000000
CustomMetadata: CustomMetadata:
autoUpdateMetadata: false # set to 'true' to automatically update metadata with below values autoUpdateMetadata: true # set to 'true' to automatically update metadata with below values
author: username # supports text such as 'John Doe' or types such as username to autopopulate with user's username author: username # Supports text such as 'John Doe' or types such as username
creator: Stirling-PDF # supports text such as 'Company-PDF' creator: Stirling-PDF # Supports text such as 'Company-PDF'
producer: Stirling-PDF # supports text such as 'Company-PDF' producer: Stirling-PDF # Supports text such as 'Company-PDF'
legal: legal:
termsAndConditions: https://www.stirlingpdf.com/terms-and-conditions # URL to the terms and conditions of your application (e.g. https://example.com/terms). Empty string to disable or filename to load from local file in static folder termsAndConditions: '' # URL to the terms and conditions of your application (e.g. https://example.com/terms) Empty string to disable or filename to load from local file in static folder
privacyPolicy: https://www.stirlingpdf.com/privacy-policy # URL to the privacy policy of your application (e.g. https://example.com/privacy). Empty string to disable or filename to load from local file in static folder privacyPolicy: '' # URL to the privacy policy of your application (e.g. https://example.com/privacy) Empty string to disable or filename to load from local file in static folder
accessibilityStatement: '' # URL to the accessibility statement of your application (e.g. https://example.com/accessibility). Empty string to disable or filename to load from local file in static folder accessibilityStatement: '' # URL to the accessibility statement of your application (e.g. https://example.com/accessibility) Empty string to disable or filename to load from local file in static folder
cookiePolicy: '' # URL to the cookie policy of your application (e.g. https://example.com/cookie). Empty string to disable or filename to load from local file in static folder cookiePolicy: '' # URL to the cookie policy of your application (e.g. https://example.com/cookie) Empty string to disable or filename to load from local file in static folder
impressum: '' # URL to the impressum of your application (e.g. https://example.com/impressum). Empty string to disable or filename to load from local file in static folder impressum: '' # URL to the impressum of your application (e.g. https://example.com/impressum) Empty string to disable or filename to load from local file in static folder
system: system:
defaultLocale: en-US # set the default language (e.g. 'de-DE', 'fr-FR', etc) defaultLocale: en-US # Set the default language (e.g. 'de-DE', 'fr-FR', etc)
googlevisibility: false # 'true' to allow Google visibility (via robots.txt), 'false' to disallow googlevisibility: false # 'true' to allow Google visibility (via robots.txt), 'false' to disallow
enableAlphaFunctionality: false # set to enable functionality which might need more testing before it fully goes live (this feature might make no changes) enableAlphaFunctionality: false # Set to enable functionality which might need more testing before it fully goes live (This feature might make no changes)
showUpdate: false # see when a new update is available showUpdate: false # see when a new update is available
showUpdateOnlyAdmin: false # only admins can see when a new update is available, depending on showUpdate it must be set to 'true' showUpdateOnlyAdmin: false # Only admins can see when a new update is available, depending on showUpdate it must be set to 'true'
customHTMLFiles: false # enable to have files placed in /customFiles/templates override the existing template HTML files customHTMLFiles: false # enable to have files placed in /customFiles/templates override the existing template html files
tessdataDir: /usr/share/tessdata # path to the directory containing the Tessdata files. This setting is relevant for Windows systems. For Windows users, this path should be adjusted to point to the appropriate directory where the Tessdata files are stored. tessdataDir: /usr/share/tessdata # Path to the directory containing the Tessdata files. This setting is relevant for Windows systems. For Windows users, this path should be adjusted to point to the appropriate directory where the Tessdata files are stored.
enableAnalytics: undefined # set to 'true' to enable analytics, set to 'false' to disable analytics; for enterprise users, this is set to true enableAnalytics: undefined # Set to 'true' to enable analytics, set to 'false' to disable analytics, for enterprise users this is set to true
ui: ui:
appName: '' # application's visible name appName: '' # Application's visible name
homeDescription: '' # short description or tagline shown on the homepage homeDescription: '' # Short description or tagline shown on homepage.
appNameNavbar: '' # name displayed on the navigation bar appNameNavbar: '' # Name displayed on the navigation bar
endpoints: endpoints:
toRemove: [] # list endpoints to disable (e.g. ['img-to-pdf', 'remove-pages']) toRemove: [] # List endpoints to disable (e.g. ['img-to-pdf', 'remove-pages'])
groupsToRemove: [] # list groups to disable (e.g. ['LibreOffice']) groupsToRemove: [] # List groups to disable (e.g. ['LibreOffice'])
metrics: metrics:
enabled: true # 'true' to enable Info APIs (`/api/*`) endpoints, 'false' to disable enabled: true # 'true' to enable Info APIs (`/api/*`) endpoints, 'false' to disable

View File

@@ -3,24 +3,17 @@
{ {
"moduleName": "ch.qos.logback:logback-classic", "moduleName": "ch.qos.logback:logback-classic",
"moduleUrl": "http://www.qos.ch", "moduleUrl": "http://www.qos.ch",
"moduleVersion": "1.5.11", "moduleVersion": "1.5.8",
"moduleLicense": "GNU Lesser General Public License", "moduleLicense": "GNU Lesser General Public License",
"moduleLicenseUrl": "http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html" "moduleLicenseUrl": "http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html"
}, },
{ {
"moduleName": "ch.qos.logback:logback-core", "moduleName": "ch.qos.logback:logback-core",
"moduleUrl": "http://www.qos.ch", "moduleUrl": "http://www.qos.ch",
"moduleVersion": "1.5.11", "moduleVersion": "1.5.8",
"moduleLicense": "GNU Lesser General Public License", "moduleLicense": "GNU Lesser General Public License",
"moduleLicenseUrl": "http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html" "moduleLicenseUrl": "http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html"
}, },
{
"moduleName": "com.adobe.xmp:xmpcore",
"moduleUrl": "https://www.adobe.com/devnet/xmp/library/eula-xmp-library-java.html",
"moduleVersion": "6.1.11",
"moduleLicense": "The BSD 3-Clause License (BSD3)",
"moduleLicenseUrl": "https://opensource.org/licenses/BSD-3-Clause"
},
{ {
"moduleName": "com.bucket4j:bucket4j_jdk17-core", "moduleName": "com.bucket4j:bucket4j_jdk17-core",
"moduleUrl": "http://github.com/bucket4j/bucket4j/bucket4j_jdk17-core", "moduleUrl": "http://github.com/bucket4j/bucket4j/bucket4j_jdk17-core",
@@ -28,20 +21,6 @@
"moduleLicense": "The Apache Software License, Version 2.0", "moduleLicense": "The Apache Software License, Version 2.0",
"moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0"
}, },
{
"moduleName": "com.coveo:saml-client",
"moduleUrl": "https://github.com/coveo/saml-client",
"moduleVersion": "5.0.0",
"moduleLicense": "MIT",
"moduleLicenseUrl": "https://opensource.org/licenses/MIT"
},
{
"moduleName": "com.drewnoakes:metadata-extractor",
"moduleUrl": "https://drewnoakes.com/code/exif/",
"moduleVersion": "2.19.0",
"moduleLicense": "The Apache Software License, Version 2.0",
"moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0.txt"
},
{ {
"moduleName": "com.fasterxml.jackson.core:jackson-annotations", "moduleName": "com.fasterxml.jackson.core:jackson-annotations",
"moduleUrl": "https://github.com/FasterXML/jackson", "moduleUrl": "https://github.com/FasterXML/jackson",
@@ -414,7 +393,7 @@
{ {
"moduleName": "io.micrometer:micrometer-commons", "moduleName": "io.micrometer:micrometer-commons",
"moduleUrl": "https://github.com/micrometer-metrics/micrometer", "moduleUrl": "https://github.com/micrometer-metrics/micrometer",
"moduleVersion": "1.13.6", "moduleVersion": "1.13.4",
"moduleLicense": "The Apache Software License, Version 2.0", "moduleLicense": "The Apache Software License, Version 2.0",
"moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0.txt" "moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0.txt"
}, },
@@ -428,14 +407,14 @@
{ {
"moduleName": "io.micrometer:micrometer-jakarta9", "moduleName": "io.micrometer:micrometer-jakarta9",
"moduleUrl": "https://github.com/micrometer-metrics/micrometer", "moduleUrl": "https://github.com/micrometer-metrics/micrometer",
"moduleVersion": "1.13.6", "moduleVersion": "1.13.4",
"moduleLicense": "The Apache Software License, Version 2.0", "moduleLicense": "The Apache Software License, Version 2.0",
"moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0.txt" "moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0.txt"
}, },
{ {
"moduleName": "io.micrometer:micrometer-observation", "moduleName": "io.micrometer:micrometer-observation",
"moduleUrl": "https://github.com/micrometer-metrics/micrometer", "moduleUrl": "https://github.com/micrometer-metrics/micrometer",
"moduleVersion": "1.13.6", "moduleVersion": "1.13.4",
"moduleLicense": "The Apache Software License, Version 2.0", "moduleLicense": "The Apache Software License, Version 2.0",
"moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0.txt" "moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0.txt"
}, },
@@ -695,7 +674,7 @@
{ {
"moduleName": "org.apache.tomcat.embed:tomcat-embed-el", "moduleName": "org.apache.tomcat.embed:tomcat-embed-el",
"moduleUrl": "https://tomcat.apache.org/", "moduleUrl": "https://tomcat.apache.org/",
"moduleVersion": "10.1.31", "moduleVersion": "10.1.30",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0.txt" "moduleLicenseUrl": "http://www.apache.org/licenses/LICENSE-2.0.txt"
}, },
@@ -763,14 +742,14 @@
}, },
{ {
"moduleName": "org.commonmark:commonmark", "moduleName": "org.commonmark:commonmark",
"moduleVersion": "0.24.0", "moduleVersion": "0.23.0",
"moduleLicense": "BSD-2-Clause", "moduleLicense": "BSD 2-Clause License",
"moduleLicenseUrl": "https://opensource.org/licenses/BSD-2-Clause" "moduleLicenseUrl": "https://opensource.org/licenses/BSD-2-Clause"
}, },
{ {
"moduleName": "org.commonmark:commonmark-ext-gfm-tables", "moduleName": "org.commonmark:commonmark-ext-gfm-tables",
"moduleVersion": "0.24.0", "moduleVersion": "0.23.0",
"moduleLicense": "BSD-2-Clause", "moduleLicense": "BSD 2-Clause License",
"moduleLicenseUrl": "https://opensource.org/licenses/BSD-2-Clause" "moduleLicenseUrl": "https://opensource.org/licenses/BSD-2-Clause"
}, },
{ {
@@ -790,182 +769,182 @@
{ {
"moduleName": "org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-jakarta-client", "moduleName": "org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-jakarta-client",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-jakarta-common", "moduleName": "org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-jakarta-common",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-jakarta-server", "moduleName": "org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-jakarta-server",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-jetty-server", "moduleName": "org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-jetty-server",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-servlet", "moduleName": "org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-servlet",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.ee10:jetty-ee10-annotations", "moduleName": "org.eclipse.jetty.ee10:jetty-ee10-annotations",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.ee10:jetty-ee10-plus", "moduleName": "org.eclipse.jetty.ee10:jetty-ee10-plus",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.ee10:jetty-ee10-servlet", "moduleName": "org.eclipse.jetty.ee10:jetty-ee10-servlet",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.ee10:jetty-ee10-servlets", "moduleName": "org.eclipse.jetty.ee10:jetty-ee10-servlets",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.ee10:jetty-ee10-webapp", "moduleName": "org.eclipse.jetty.ee10:jetty-ee10-webapp",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.websocket:jetty-websocket-core-client", "moduleName": "org.eclipse.jetty.websocket:jetty-websocket-core-client",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.websocket:jetty-websocket-core-common", "moduleName": "org.eclipse.jetty.websocket:jetty-websocket-core-common",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.websocket:jetty-websocket-core-server", "moduleName": "org.eclipse.jetty.websocket:jetty-websocket-core-server",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.websocket:jetty-websocket-jetty-api", "moduleName": "org.eclipse.jetty.websocket:jetty-websocket-jetty-api",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty.websocket:jetty-websocket-jetty-common", "moduleName": "org.eclipse.jetty.websocket:jetty-websocket-jetty-common",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty:jetty-alpn-client", "moduleName": "org.eclipse.jetty:jetty-alpn-client",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty:jetty-client", "moduleName": "org.eclipse.jetty:jetty-client",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty:jetty-ee", "moduleName": "org.eclipse.jetty:jetty-ee",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty:jetty-http", "moduleName": "org.eclipse.jetty:jetty-http",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty:jetty-io", "moduleName": "org.eclipse.jetty:jetty-io",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty:jetty-plus", "moduleName": "org.eclipse.jetty:jetty-plus",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty:jetty-security", "moduleName": "org.eclipse.jetty:jetty-security",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty:jetty-server", "moduleName": "org.eclipse.jetty:jetty-server",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty:jetty-session", "moduleName": "org.eclipse.jetty:jetty-session",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty:jetty-util", "moduleName": "org.eclipse.jetty:jetty-util",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
{ {
"moduleName": "org.eclipse.jetty:jetty-xml", "moduleName": "org.eclipse.jetty:jetty-xml",
"moduleUrl": "https://jetty.org/", "moduleUrl": "https://jetty.org/",
"moduleVersion": "12.0.14", "moduleVersion": "12.0.13",
"moduleLicense": "Eclipse Public License - Version 2.0", "moduleLicense": "Eclipse Public License - Version 2.0",
"moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/" "moduleLicenseUrl": "https://www.eclipse.org/legal/epl-2.0/"
}, },
@@ -1153,273 +1132,273 @@
{ {
"moduleName": "org.springframework.boot:spring-boot", "moduleName": "org.springframework.boot:spring-boot",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-actuator", "moduleName": "org.springframework.boot:spring-boot-actuator",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-actuator-autoconfigure", "moduleName": "org.springframework.boot:spring-boot-actuator-autoconfigure",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-autoconfigure", "moduleName": "org.springframework.boot:spring-boot-autoconfigure",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-devtools", "moduleName": "org.springframework.boot:spring-boot-devtools",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter", "moduleName": "org.springframework.boot:spring-boot-starter",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter-actuator", "moduleName": "org.springframework.boot:spring-boot-starter-actuator",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter-aop", "moduleName": "org.springframework.boot:spring-boot-starter-aop",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter-data-jpa", "moduleName": "org.springframework.boot:spring-boot-starter-data-jpa",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter-jdbc", "moduleName": "org.springframework.boot:spring-boot-starter-jdbc",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter-jetty", "moduleName": "org.springframework.boot:spring-boot-starter-jetty",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter-json", "moduleName": "org.springframework.boot:spring-boot-starter-json",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter-logging", "moduleName": "org.springframework.boot:spring-boot-starter-logging",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter-oauth2-client", "moduleName": "org.springframework.boot:spring-boot-starter-oauth2-client",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter-security", "moduleName": "org.springframework.boot:spring-boot-starter-security",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter-thymeleaf", "moduleName": "org.springframework.boot:spring-boot-starter-thymeleaf",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.boot:spring-boot-starter-web", "moduleName": "org.springframework.boot:spring-boot-starter-web",
"moduleUrl": "https://spring.io/projects/spring-boot", "moduleUrl": "https://spring.io/projects/spring-boot",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.data:spring-data-commons", "moduleName": "org.springframework.data:spring-data-commons",
"moduleUrl": "https://spring.io/projects/spring-data", "moduleUrl": "https://spring.io/projects/spring-data",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.data:spring-data-jpa", "moduleName": "org.springframework.data:spring-data-jpa",
"moduleUrl": "https://projects.spring.io/spring-data-jpa", "moduleUrl": "https://projects.spring.io/spring-data-jpa",
"moduleVersion": "3.3.5", "moduleVersion": "3.3.4",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.security:spring-security-config", "moduleName": "org.springframework.security:spring-security-config",
"moduleUrl": "https://spring.io/projects/spring-security", "moduleUrl": "https://spring.io/projects/spring-security",
"moduleVersion": "6.3.4", "moduleVersion": "6.3.3",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.security:spring-security-core", "moduleName": "org.springframework.security:spring-security-core",
"moduleUrl": "https://spring.io/projects/spring-security", "moduleUrl": "https://spring.io/projects/spring-security",
"moduleVersion": "6.3.4", "moduleVersion": "6.3.3",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.security:spring-security-crypto", "moduleName": "org.springframework.security:spring-security-crypto",
"moduleUrl": "https://spring.io/projects/spring-security", "moduleUrl": "https://spring.io/projects/spring-security",
"moduleVersion": "6.3.4", "moduleVersion": "6.3.3",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.security:spring-security-oauth2-client", "moduleName": "org.springframework.security:spring-security-oauth2-client",
"moduleUrl": "https://spring.io/projects/spring-security", "moduleUrl": "https://spring.io/projects/spring-security",
"moduleVersion": "6.3.4", "moduleVersion": "6.3.3",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.security:spring-security-oauth2-core", "moduleName": "org.springframework.security:spring-security-oauth2-core",
"moduleUrl": "https://spring.io/projects/spring-security", "moduleUrl": "https://spring.io/projects/spring-security",
"moduleVersion": "6.3.4", "moduleVersion": "6.3.3",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.security:spring-security-oauth2-jose", "moduleName": "org.springframework.security:spring-security-oauth2-jose",
"moduleUrl": "https://spring.io/projects/spring-security", "moduleUrl": "https://spring.io/projects/spring-security",
"moduleVersion": "6.3.4", "moduleVersion": "6.3.3",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.security:spring-security-saml2-service-provider", "moduleName": "org.springframework.security:spring-security-saml2-service-provider",
"moduleUrl": "https://spring.io/projects/spring-security", "moduleUrl": "https://spring.io/projects/spring-security",
"moduleVersion": "6.3.4", "moduleVersion": "6.3.3",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework.security:spring-security-web", "moduleName": "org.springframework.security:spring-security-web",
"moduleUrl": "https://spring.io/projects/spring-security", "moduleUrl": "https://spring.io/projects/spring-security",
"moduleVersion": "6.3.4", "moduleVersion": "6.3.3",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-aop", "moduleName": "org.springframework:spring-aop",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-aspects", "moduleName": "org.springframework:spring-aspects",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-beans", "moduleName": "org.springframework:spring-beans",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-context", "moduleName": "org.springframework:spring-context",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-core", "moduleName": "org.springframework:spring-core",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-expression", "moduleName": "org.springframework:spring-expression",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-jcl", "moduleName": "org.springframework:spring-jcl",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-jdbc", "moduleName": "org.springframework:spring-jdbc",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-orm", "moduleName": "org.springframework:spring-orm",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-tx", "moduleName": "org.springframework:spring-tx",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-web", "moduleName": "org.springframework:spring-web",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },
{ {
"moduleName": "org.springframework:spring-webmvc", "moduleName": "org.springframework:spring-webmvc",
"moduleUrl": "https://github.com/spring-projects/spring-framework", "moduleUrl": "https://github.com/spring-projects/spring-framework",
"moduleVersion": "6.1.14", "moduleVersion": "6.1.13",
"moduleLicense": "Apache License, Version 2.0", "moduleLicense": "Apache License, Version 2.0",
"moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0" "moduleLicenseUrl": "https://www.apache.org/licenses/LICENSE-2.0"
}, },

File diff suppressed because one or more lines are too long

View File

@@ -329,14 +329,11 @@ span.icon-text::after {
} }
} }
.go-pro-link { .go-pro-link {
position: relative; position: relative;
padding: 0.5rem 1rem; padding: 0.5rem 1rem;
transition: all 0.3s ease; transition: all 0.3s ease;
z-index: 1; }
display: inline-block;
width: auto;
}
.go-pro-badge { .go-pro-badge {
display: inline-block; display: inline-block;
@@ -353,4 +350,4 @@ span.icon-text::after {
.go-pro-link:hover .go-pro-badge { .go-pro-link:hover .go-pro-badge {
background-color: #0056b3; background-color: #0056b3;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
} }

View File

@@ -1,9 +1,7 @@
select#font-select, select#font-select,
select#font-select option { select#font-select option {
height: 60px; height: 60px; /* Adjust as needed */
/* Adjust as needed */ font-size: 30px; /* Adjust as needed */
font-size: 30px;
/* Adjust as needed */
} }
.drawing-pad-container { .drawing-pad-container {
@@ -15,12 +13,10 @@ select#font-select option {
width: 100%; width: 100%;
height: 300px; height: 300px;
} }
#box-drag-container { #box-drag-container {
position: relative; position: relative;
margin: 20px 0; margin: 20px 0;
} }
.draggable-buttons-box { .draggable-buttons-box {
position: absolute; position: absolute;
top: 0; top: 0;
@@ -28,87 +24,16 @@ select#font-select option {
width: 100%; width: 100%;
display: flex; display: flex;
gap: 5px; gap: 5px;
z-index: 5;
} }
.draggable-buttons-box > button {
.draggable-buttons-box>button { z-index: 10;
z-index: 4;
background-color: rgba(13, 110, 253, 0.1); background-color: rgba(13, 110, 253, 0.1);
} }
.draggable-canvas { .draggable-canvas {
border: 2px solid #3498db; border: 1px solid red;
position: absolute; position: absolute;
touch-action: none; touch-action: none;
user-select: none; user-select: none;
top: 0px; top: 0px;
left: 0; left: 0;
z-index: 100;
cursor: grab;
transition: transform 0.1s ease-out;
background-color: rgba(52, 152, 219, 0.1);
/* Light blue background */
} }
.draggable-canvas:active {
cursor: grabbing;
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
/* Shadow on active drag */
}
.draggable-canvas:hover {
border: 2px solid #2980b9;
/* Darker border on hover */
background-color: rgba(52, 152, 219, 0.2);
/* Darken background on hover */
}
.signature-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
gap: 1rem;
padding: 1rem;
max-height: 400px;
overflow-y: auto;
}
.signature-list {
max-height: 400px;
overflow-y: auto;
}
.signature-list-item {
padding: 0.75rem;
border: 1px solid #dee2e6;
border-radius: 4px;
margin-bottom: 0.5rem;
cursor: pointer;
transition: background-color 0.2s;
}
.signature-list-item:hover {
background-color: #f8f9fa;
}
.signature-list-info {
display: flex;
justify-content: space-between;
align-items: center;
}
.signature-list-name {
font-weight: 500;
}
.signature-list-details {
color: #6c757d;
font-size: 0.875rem;
}
.signature-list-details small:not(:last-child) {
margin-right: 1rem;
}
.view-toggle {
text-align: right;
padding: 0.5rem 1rem;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -1,145 +0,0 @@
importScripts('./diff.js');
self.onmessage = async function (e) {
const { text1, text2, color1, color2 } = e.data;
console.log('Received text for comparison:', { text1, text2 });
const startTime = performance.now();
if (text1.trim() === "" || text2.trim() === "") {
self.postMessage({ status: 'error', message: 'One or both of the texts are empty.' });
return;
}
const words1 = text1.split(' ');
const words2 = text2.split(' ');
const MAX_WORD_COUNT = 150000;
const COMPLEX_WORD_COUNT = 50000;
const BATCH_SIZE = 5000; // Define a suitable batch size for processing
const OVERLAP_SIZE = 200; // Number of words to overlap - bigger increases accuracy but affects performance
const isComplex = words1.length > COMPLEX_WORD_COUNT || words2.length > COMPLEX_WORD_COUNT;
const isTooLarge = words1.length > MAX_WORD_COUNT || words2.length > MAX_WORD_COUNT;
let complexMessage = 'One or both of the provided documents are large files, accuracy of comparison may be reduced';
let tooLargeMessage = 'One or Both of the provided documents are too large to process';
// Listen for messages from the main thread
self.addEventListener('message', (event) => {
if (event.data.type === 'SET_TOO_LARGE_MESSAGE') {
tooLargeMessage = event.data.message;
}
if (event.data.type === 'SET_COMPLEX_MESSAGE') {
complexMessage = event.data.message;
}
});
if (isTooLarge) {
self.postMessage({
status: 'warning',
message: tooLargeMessage,
});
return;
} else {
if (isComplex) {
self.postMessage({
status: 'warning',
message: complexMessage,
});
}
// Perform diff operation depending on document size
const differences = isComplex
? await staggeredBatchDiff(words1, words2, color1, color2, BATCH_SIZE, OVERLAP_SIZE)
: diff(words1, words2, color1, color2);
console.log(`Diff operation took ${performance.now() - startTime} milliseconds`);
self.postMessage({ status: 'success', differences });
}
};
//Splits text into smaller batches to run through diff checking algorithms. overlaps the batches to help ensure
async function staggeredBatchDiff(words1, words2, color1, color2, batchSize, overlapSize) {
const differences = [];
const totalWords1 = words1.length;
const totalWords2 = words2.length;
let previousEnd1 = 0; // Track where the last batch ended in words1
let previousEnd2 = 0; // Track where the last batch ended in words2
// Function to determine if differences are large, differences that are too large indicate potential error in batching
const isLargeDifference = (differences) => {
return differences.length > 50;
};
while (previousEnd1 < totalWords1 || previousEnd2 < totalWords2) {
// Define the next chunk boundaries
const start1 = previousEnd1;
const end1 = Math.min(start1 + batchSize, totalWords1);
const start2 = previousEnd2;
const end2 = Math.min(start2 + batchSize, totalWords2);
//If difference is too high decrease batch size for more granular check
const dynamicBatchSize = isLargeDifference(differences) ? batchSize / 2 : batchSize;
// Adjust the size of the current chunk using dynamic batch size
const batchWords1 = words1.slice(start1, end1 + dynamicBatchSize);
const batchWords2 = words2.slice(start2, end2 + dynamicBatchSize);
// Include overlap from the previous chunk
const overlapWords1 = previousEnd1 > 0 ? words1.slice(Math.max(0, previousEnd1 - overlapSize), previousEnd1) : [];
const overlapWords2 = previousEnd2 > 0 ? words2.slice(Math.max(0, previousEnd2 - overlapSize), previousEnd2) : [];
// Combine overlaps and current batches for comparison
const combinedWords1 = overlapWords1.concat(batchWords1);
const combinedWords2 = overlapWords2.concat(batchWords2);
// Perform the diff on the combined words
const batchDifferences = diff(combinedWords1, combinedWords2, color1, color2);
differences.push(...batchDifferences);
// Update the previous end indices based on the results of this batch
previousEnd1 = end1;
previousEnd2 = end2;
}
return differences;
}
// Standard diff function for small text comparisons
function diff(words1, words2, color1, color2) {
console.log(`Starting diff between ${words1.length} words and ${words2.length} words`);
const matrix = Array.from({ length: words1.length + 1 }, () => Array(words2.length + 1).fill(0));
for (let i = 1; i <= words1.length; i++) {
for (let j = 1; j <= words2.length; j++) {
matrix[i][j] = words1[i - 1] === words2[j - 1]
? matrix[i - 1][j - 1] + 1
: Math.max(matrix[i][j - 1], matrix[i - 1][j]);
}
}
return backtrack(matrix, words1, words2, color1, color2);
}
// Backtrack function to find differences
function backtrack(matrix, words1, words2, color1, color2) {
let i = words1.length, j = words2.length;
const differences = [];
while (i > 0 || j > 0) {
if (i > 0 && j > 0 && words1[i - 1] === words2[j - 1]) {
differences.unshift(['black', words1[i - 1]]);
i--; j--;
} else if (j > 0 && (i === 0 || matrix[i][j] === matrix[i][j - 1])) {
differences.unshift([color2, words2[j - 1]]);
j--;
} else {
differences.unshift([color1, words1[i - 1]]);
i--;
}
}
return differences;
}

View File

@@ -1,294 +1,288 @@
(function() { function showErrorBanner(message, stackTrace) {
const errorContainer = document.getElementById("errorContainer");
errorContainer.style.display = "block"; // Display the banner
document.querySelector("#errorContainer .alert-heading").textContent = "Error";
document.querySelector("#errorContainer p").textContent = message;
document.querySelector("#traceContent").textContent = stackTrace;
}
const { pdfPasswordPrompt, multipleInputsForSingleRequest, disableMultipleFiles, remoteCall, sessionExpired, refreshPage, error } = window.stirlingPDF; function showSessionExpiredPrompt() {
const errorContainer = document.getElementById("errorContainer");
errorContainer.style.display = "block";
document.querySelector("#errorContainer .alert-heading").textContent = sessionExpired;
document.querySelector("#errorContainer p").textContent = sessionExpired;
document.querySelector("#traceContent").textContent = "";
function showErrorBanner(message, stackTrace) { // Optional: Add a refresh button
const errorContainer = document.getElementById("errorContainer"); const refreshButton = document.createElement("button");
errorContainer.style.display = "block"; // Display the banner refreshButton.textContent = "Refresh Page";
errorContainer.querySelector(".alert-heading").textContent = error; refreshButton.className = "btn btn-primary mt-3";
errorContainer.querySelector("p").textContent = message; refreshButton.onclick = () => location.reload();
document.querySelector("#traceContent").textContent = stackTrace; errorContainer.appendChild(refreshButton);
} }
function showSessionExpiredPrompt() { let firstErrorOccurred = false;
const errorContainer = document.getElementById("errorContainer");
errorContainer.style.display = "block";
errorContainer.querySelector(".alert-heading").textContent = sessionExpired;
errorContainer.querySelector("p").textContent = sessionExpired;
document.querySelector("#traceContent").textContent = "";
// Optional: Add a refresh button $(document).ready(function () {
const refreshButton = document.createElement("button"); $("form").submit(async function (event) {
refreshButton.textContent = refreshPage; event.preventDefault();
refreshButton.className = "btn btn-primary mt-3"; firstErrorOccurred = false;
refreshButton.onclick = () => location.reload(); const url = this.action;
errorContainer.appendChild(refreshButton); const files = $("#fileInput-input")[0].files;
} const formData = new FormData(this);
let firstErrorOccurred = false;
$(document).ready(function () {
$("form").submit(async function (event) {
event.preventDefault();
firstErrorOccurred = false;
const url = this.action;
const files = $("#fileInput-input")[0].files;
const formData = new FormData(this);
// Remove empty file entries
for (let [key, value] of formData.entries()) {
if (value instanceof File && !value.name) {
formData.delete(key);
}
}
const override = $("#override").val() || "";
const originalButtonText = $("#submitBtn").text();
$("#submitBtn").text("Processing...");
console.log(override);
// Set a timeout to show the game button if operation takes more than 5 seconds
const timeoutId = setTimeout(() => {
var boredWaiting = localStorage.getItem("boredWaiting") || "disabled";
const showGameBtn = document.getElementById("show-game-btn");
if (boredWaiting === "enabled" && showGameBtn) {
showGameBtn.style.display = "block";
showGameBtn.parentNode.insertBefore(document.createElement('br'), showGameBtn.nextSibling);
}
}, 5000);
try {
if (remoteCall === true) {
if (override === "multi" || (!multipleInputsForSingleRequest && files.length > 1 && override !== "single")) {
await submitMultiPdfForm(url, files);
} else {
await handleSingleDownload(url, formData);
}
}
clearTimeout(timeoutId);
$("#submitBtn").text(originalButtonText);
// After process finishes, check for boredWaiting and gameDialog open status
const boredWaiting = localStorage.getItem("boredWaiting") || "disabled";
const gameDialog = document.getElementById('game-container-wrapper');
if (boredWaiting === "enabled" && gameDialog && gameDialog.open) {
// Display a green banner at the bottom of the screen saying "Download complete"
let downloadCompleteText = "Download Complete";
if(window.downloadCompleteText){
downloadCompleteText = window.downloadCompleteText;
}
$("body").append('<div id="download-complete-banner" style="position:fixed;bottom:0;left:0;width:100%;background-color:green;color:white;text-align:center;padding:10px;font-size:16px;z-index:1000;">'+ downloadCompleteText + '</div>');
setTimeout(function() {
$("#download-complete-banner").fadeOut("slow", function() {
$(this).remove(); // Remove the banner after fading out
});
}, 5000); // Banner will fade out after 5 seconds
}
} catch (error) {
clearTimeout(timeoutId);
handleDownloadError(error);
$("#submitBtn").text(originalButtonText);
console.error(error);
}
});
});
async function handleSingleDownload(url, formData, isMulti = false, isZip = false) {
try {
const response = await fetch(url, { method: "POST", body: formData });
const contentType = response.headers.get("content-type");
if (!response.ok) {
if (response.status === 401) {
// Handle 401 Unauthorized error
showSessionExpiredPrompt();
return;
}
if (contentType && contentType.includes("application/json")) {
console.error("Throwing error banner, response was not okay");
return handleJsonResponse(response);
}
throw new Error(`HTTP error! status: ${response.status}`);
}
const contentDisposition = response.headers.get("Content-Disposition");
let filename = getFilenameFromContentDisposition(contentDisposition);
const blob = await response.blob();
if (contentType.includes("application/pdf") || contentType.includes("image/")) {
return handleResponse(blob, filename, !isMulti, isZip);
} else {
return handleResponse(blob, filename, false, isZip);
}
} catch (error) {
console.error("Error in handleSingleDownload:", error);
throw error;
}
}
function getFilenameFromContentDisposition(contentDisposition) {
let filename;
if (contentDisposition && contentDisposition.indexOf("attachment") !== -1) {
filename = decodeURIComponent(contentDisposition.split("filename=")[1].replace(/"/g, "")).trim();
} else {
// If the Content-Disposition header is not present or does not contain the filename, use a default filename
filename = "download";
}
return filename;
}
async function handleJsonResponse(response) {
const json = await response.json();
const errorMessage = JSON.stringify(json, null, 2);
if (
errorMessage.toLowerCase().includes("the password is incorrect") ||
errorMessage.toLowerCase().includes("Password is not provided") ||
errorMessage.toLowerCase().includes("PDF contains an encryption dictionary")
) {
if (!firstErrorOccurred) {
firstErrorOccurred = true;
alert(pdfPasswordPrompt);
}
} else {
showErrorBanner(json.error + ":" + json.message, json.trace);
}
}
async function handleResponse(blob, filename, considerViewOptions = false, isZip = false) {
if (!blob) return;
const downloadOption = localStorage.getItem("downloadOption");
if (considerViewOptions) {
if (downloadOption === "sameWindow") {
const url = URL.createObjectURL(blob);
window.location.href = url;
return;
} else if (downloadOption === "newWindow") {
const url = URL.createObjectURL(blob);
window.open(url, "_blank");
return;
}
}
if (!isZip) {
downloadFile(blob, filename);
}
return { filename, blob };
}
function handleDownloadError(error) {
const errorMessage = error.message;
showErrorBanner(errorMessage);
}
let urls = []; // An array to hold all the URLs
function downloadFile(blob, filename) {
if (!(blob instanceof Blob)) {
console.error("Invalid blob passed to downloadFile function");
return;
}
const url = URL.createObjectURL(blob);
const a = document.createElement("a");
a.href = url;
a.download = filename;
a.click();
urls.push(url); // Store the URL so it doesn't get garbage collected too soon
return { filename, blob };
}
async function submitMultiPdfForm(url, files) {
const zipThreshold = parseInt(localStorage.getItem("zipThreshold"), 10) || 4;
const zipFiles = files.length > zipThreshold;
let jszip = null;
// Add Space below Progress Bar before Showing
$('.progressBarContainer').after($('<br>'));
$(".progressBarContainer").show();
// Initialize the progress bar
let progressBar = $(".progressBar");
progressBar.css("width", "0%");
progressBar.attr("aria-valuenow", 0);
progressBar.attr("aria-valuemax", files.length);
if (zipFiles) {
jszip = new JSZip();
}
// Get the form with the method attribute set to POST
let postForm = document.querySelector('form[method="POST"]');
// Get existing form data
let formData;
if (postForm) {
formData = new FormData($(postForm)[0]); // Convert the form to a jQuery object and get the raw DOM element
} else {
console.log("No form with POST method found.");
}
//Remove file to reuse parameters for other runs
formData.delete("fileInput");
// Remove empty file entries // Remove empty file entries
for (let [key, value] of formData.entries()) { for (let [key, value] of formData.entries()) {
if (value instanceof File && !value.name) { if (value instanceof File && !value.name) {
formData.delete(key); formData.delete(key);
} }
} }
const CONCURRENCY_LIMIT = 8; const override = $("#override").val() || "";
const chunks = []; const originalButtonText = $("#submitBtn").text();
for (let i = 0; i < Array.from(files).length; i += CONCURRENCY_LIMIT) { $("#submitBtn").text("Processing...");
chunks.push(Array.from(files).slice(i, i + CONCURRENCY_LIMIT)); console.log(override);
}
for (const chunk of chunks) { // Set a timeout to show the game button if operation takes more than 5 seconds
const promises = chunk.map(async (file) => { const timeoutId = setTimeout(() => {
let fileFormData = new FormData(); var boredWaiting = localStorage.getItem("boredWaiting") || "disabled";
fileFormData.append("fileInput", file); const showGameBtn = document.getElementById("show-game-btn");
console.log(fileFormData); if (boredWaiting === "enabled" && showGameBtn) {
// Add other form data showGameBtn.style.display = "block";
for (let pair of formData.entries()) { showGameBtn.parentNode.insertBefore(document.createElement('br'), showGameBtn.nextSibling);
fileFormData.append(pair[0], pair[1]);
console.log(pair[0] + ", " + pair[1]);
}
try {
const downloadDetails = await handleSingleDownload(url, fileFormData, true, zipFiles);
console.log(downloadDetails);
if (zipFiles) {
jszip.file(downloadDetails.filename, downloadDetails.blob);
} else {
//downloadFile(downloadDetails.blob, downloadDetails.filename);
}
updateProgressBar(progressBar, Array.from(files).length);
} catch (error) {
handleDownloadError(error);
console.error(error);
}
});
await Promise.all(promises);
}
if (zipFiles) {
try {
const content = await jszip.generateAsync({ type: "blob" });
downloadFile(content, "files.zip");
} catch (error) {
console.error("Error generating ZIP file: " + error);
} }
} }, 5000);
progressBar.css("width", "100%");
progressBar.attr("aria-valuenow", Array.from(files).length);
}
function updateProgressBar(progressBar, files) { try {
let progress = (progressBar.attr("aria-valuenow") / files.length) * 100 + 100 / files.length; if (remoteCall === true) {
progressBar.css("width", progress + "%"); if (override === "multi" || (!multipleInputsForSingleRequest && files.length > 1 && override !== "single")) {
progressBar.attr("aria-valuenow", parseInt(progressBar.attr("aria-valuenow")) + 1); await submitMultiPdfForm(url, files);
} } else {
window.addEventListener("unload", () => { await handleSingleDownload(url, formData);
for (const url of urls) { }
URL.revokeObjectURL(url); }
clearTimeout(timeoutId);
$("#submitBtn").text(originalButtonText);
// After process finishes, check for boredWaiting and gameDialog open status
const boredWaiting = localStorage.getItem("boredWaiting") || "disabled";
const gameDialog = document.getElementById('game-container-wrapper');
if (boredWaiting === "enabled" && gameDialog && gameDialog.open) {
// Display a green banner at the bottom of the screen saying "Download complete"
let downloadCompleteText = "Download Complete";
if(window.downloadCompleteText){
downloadCompleteText = window.downloadCompleteText;
}
$("body").append('<div id="download-complete-banner" style="position:fixed;bottom:0;left:0;width:100%;background-color:green;color:white;text-align:center;padding:10px;font-size:16px;z-index:1000;">'+ downloadCompleteText + '</div>');
setTimeout(function() {
$("#download-complete-banner").fadeOut("slow", function() {
$(this).remove(); // Remove the banner after fading out
});
}, 5000); // Banner will fade out after 5 seconds
}
} catch (error) {
clearTimeout(timeoutId);
handleDownloadError(error);
$("#submitBtn").text(originalButtonText);
console.error(error);
} }
}); });
});
})(); async function handleSingleDownload(url, formData, isMulti = false, isZip = false) {
try {
const response = await fetch(url, { method: "POST", body: formData });
const contentType = response.headers.get("content-type");
if (!response.ok) {
if (response.status === 401) {
// Handle 401 Unauthorized error
showSessionExpiredPrompt();
return;
}
if (contentType && contentType.includes("application/json")) {
console.error("Throwing error banner, response was not okay");
return handleJsonResponse(response);
}
throw new Error(`HTTP error! status: ${response.status}`);
}
const contentDisposition = response.headers.get("Content-Disposition");
let filename = getFilenameFromContentDisposition(contentDisposition);
const blob = await response.blob();
if (contentType.includes("application/pdf") || contentType.includes("image/")) {
return handleResponse(blob, filename, !isMulti, isZip);
} else {
return handleResponse(blob, filename, false, isZip);
}
} catch (error) {
console.error("Error in handleSingleDownload:", error);
throw error;
}
}
function getFilenameFromContentDisposition(contentDisposition) {
let filename;
if (contentDisposition && contentDisposition.indexOf("attachment") !== -1) {
filename = decodeURIComponent(contentDisposition.split("filename=")[1].replace(/"/g, "")).trim();
} else {
// If the Content-Disposition header is not present or does not contain the filename, use a default filename
filename = "download";
}
return filename;
}
async function handleJsonResponse(response) {
const json = await response.json();
const errorMessage = JSON.stringify(json, null, 2);
if (
errorMessage.toLowerCase().includes("the password is incorrect") ||
errorMessage.toLowerCase().includes("Password is not provided") ||
errorMessage.toLowerCase().includes("PDF contains an encryption dictionary")
) {
if (!firstErrorOccurred) {
firstErrorOccurred = true;
alert(pdfPasswordPrompt);
}
} else {
showErrorBanner(json.error + ":" + json.message, json.trace);
}
}
async function handleResponse(blob, filename, considerViewOptions = false, isZip = false) {
if (!blob) return;
const downloadOption = localStorage.getItem("downloadOption");
if (considerViewOptions) {
if (downloadOption === "sameWindow") {
const url = URL.createObjectURL(blob);
window.location.href = url;
return;
} else if (downloadOption === "newWindow") {
const url = URL.createObjectURL(blob);
window.open(url, "_blank");
return;
}
}
if (!isZip) {
downloadFile(blob, filename);
}
return { filename, blob };
}
function handleDownloadError(error) {
const errorMessage = error.message;
showErrorBanner(errorMessage);
}
let urls = []; // An array to hold all the URLs
function downloadFile(blob, filename) {
if (!(blob instanceof Blob)) {
console.error("Invalid blob passed to downloadFile function");
return;
}
const url = URL.createObjectURL(blob);
const a = document.createElement("a");
a.href = url;
a.download = filename;
a.click();
urls.push(url); // Store the URL so it doesn't get garbage collected too soon
return { filename, blob };
}
async function submitMultiPdfForm(url, files) {
const zipThreshold = parseInt(localStorage.getItem("zipThreshold"), 10) || 4;
const zipFiles = files.length > zipThreshold;
let jszip = null;
// Add Space below Progress Bar before Showing
$('.progressBarContainer').after($('<br>'));
$(".progressBarContainer").show();
// Initialize the progress bar
let progressBar = $(".progressBar");
progressBar.css("width", "0%");
progressBar.attr("aria-valuenow", 0);
progressBar.attr("aria-valuemax", files.length);
if (zipFiles) {
jszip = new JSZip();
}
// Get the form with the method attribute set to POST
let postForm = document.querySelector('form[method="POST"]');
// Get existing form data
let formData;
if (postForm) {
formData = new FormData($(postForm)[0]); // Convert the form to a jQuery object and get the raw DOM element
} else {
console.log("No form with POST method found.");
}
//Remove file to reuse parameters for other runs
formData.delete("fileInput");
// Remove empty file entries
for (let [key, value] of formData.entries()) {
if (value instanceof File && !value.name) {
formData.delete(key);
}
}
const CONCURRENCY_LIMIT = 8;
const chunks = [];
for (let i = 0; i < Array.from(files).length; i += CONCURRENCY_LIMIT) {
chunks.push(Array.from(files).slice(i, i + CONCURRENCY_LIMIT));
}
for (const chunk of chunks) {
const promises = chunk.map(async (file) => {
let fileFormData = new FormData();
fileFormData.append("fileInput", file);
console.log(fileFormData);
// Add other form data
for (let pair of formData.entries()) {
fileFormData.append(pair[0], pair[1]);
console.log(pair[0] + ", " + pair[1]);
}
try {
const downloadDetails = await handleSingleDownload(url, fileFormData, true, zipFiles);
console.log(downloadDetails);
if (zipFiles) {
jszip.file(downloadDetails.filename, downloadDetails.blob);
} else {
//downloadFile(downloadDetails.blob, downloadDetails.filename);
}
updateProgressBar(progressBar, Array.from(files).length);
} catch (error) {
handleDownloadError(error);
console.error(error);
}
});
await Promise.all(promises);
}
if (zipFiles) {
try {
const content = await jszip.generateAsync({ type: "blob" });
downloadFile(content, "files.zip");
} catch (error) {
console.error("Error generating ZIP file: " + error);
}
}
progressBar.css("width", "100%");
progressBar.attr("aria-valuenow", Array.from(files).length);
}
function updateProgressBar(progressBar, files) {
let progress = (progressBar.attr("aria-valuenow") / files.length) * 100 + 100 / files.length;
progressBar.css("width", progress + "%");
progressBar.attr("aria-valuenow", parseInt(progressBar.attr("aria-valuenow")) + 1);
}
window.addEventListener("unload", () => {
for (const url of urls) {
URL.revokeObjectURL(url);
}
});

View File

@@ -1,36 +0,0 @@
const draggableElement = document.querySelector('.draggable-canvas');
// Variables to store the current position of the draggable element
let offsetX, offsetY, isDragging = false;
draggableElement.addEventListener('mousedown', (e) => {
// Get the offset when the mouse is clicked inside the element
offsetX = e.clientX - draggableElement.getBoundingClientRect().left;
offsetY = e.clientY - draggableElement.getBoundingClientRect().top;
// Set isDragging to true
isDragging = true;
// Add event listeners for mouse movement and release
document.addEventListener('mousemove', onMouseMove);
document.addEventListener('mouseup', onMouseUp);
});
function onMouseMove(e) {
if (isDragging) {
// Calculate the new position of the element
const left = e.clientX - offsetX;
const top = e.clientY - offsetY;
// Move the element by setting its style
draggableElement.style.left = `${left}px`;
draggableElement.style.top = `${top}px`;
}
}
function onMouseUp() {
// Stop dragging and remove event listeners
isDragging = false;
document.removeEventListener('mousemove', onMouseMove);
document.removeEventListener('mouseup', onMouseUp);
}

View File

@@ -1,29 +0,0 @@
window.fetchWithCsrf = async function(url, options = {}) {
function getCsrfToken() {
const cookieValue = document.cookie
.split('; ')
.find(row => row.startsWith('XSRF-TOKEN='))
?.split('=')[1];
if (cookieValue) {
return cookieValue;
}
const csrfElement = document.querySelector('input[name="_csrf"]');
return csrfElement ? csrfElement.value : null;
}
// Create a new options object to avoid modifying the passed object
const fetchOptions = { ...options };
// Ensure headers object exists
fetchOptions.headers = { ...options.headers };
// Add CSRF token if available
const csrfToken = getCsrfToken();
if (csrfToken) {
fetchOptions.headers['X-XSRF-TOKEN'] = csrfToken;
}
return fetch(url, fetchOptions);
}

View File

@@ -1,86 +1,89 @@
function getStoredOrDefaultLocale() { document.addEventListener("DOMContentLoaded", function () {
const storedLocale = localStorage.getItem("languageCode"); setLanguageForDropdown(".lang_dropdown-item");
return storedLocale || getDetailedLanguageCode();
} // Detect the browser's preferred language
let browserLang = navigator.language || navigator.userLanguage;
// Convert to a format consistent with your language codes (e.g., en-GB, fr-FR)
browserLang = browserLang.replace("-", "_");
// Check if the dropdown contains the browser's language
const dropdownLangExists = document.querySelector(`.lang_dropdown-item[data-language-code="${browserLang}"]`);
// Set the default language to browser's language or 'en_GB' if not found in the dropdown
const defaultLocale = dropdownLangExists ? browserLang : "en_GB";
const storedLocale = localStorage.getItem("languageCode") || defaultLocale;
const dropdownItems = document.querySelectorAll(".lang_dropdown-item");
for (let i = 0; i < dropdownItems.length; i++) {
const item = dropdownItems[i];
item.classList.remove("active");
if (item.dataset.languageCode === storedLocale) {
item.classList.add("active");
}
item.addEventListener("click", handleDropdownItemClick);
}
});
function setLanguageForDropdown(dropdownClass) { function setLanguageForDropdown(dropdownClass) {
const storedLocale = getStoredOrDefaultLocale(); const defaultLocale = document.documentElement.getAttribute("data-language") || "en_GB";
const storedLocale = localStorage.getItem("languageCode") || defaultLocale;
const dropdownItems = document.querySelectorAll(dropdownClass); const dropdownItems = document.querySelectorAll(dropdownClass);
dropdownItems.forEach(item => { for (let i = 0; i < dropdownItems.length; i++) {
item.classList.toggle("active", item.dataset.bsLanguageCode === storedLocale); const item = dropdownItems[i];
item.removeEventListener("click", handleDropdownItemClick); item.classList.remove("active");
item.addEventListener("click", handleDropdownItemClick); if (item.dataset.languageCode === storedLocale) {
}); item.classList.add("active");
} }
item.addEventListener("click", handleDropdownItemClick);
function updateUrlWithLanguage(languageCode) { }
const currentURL = new URL(window.location.href);
currentURL.searchParams.set('lang', languageCode);
window.location.href = currentURL.toString();
} }
function handleDropdownItemClick(event) { function handleDropdownItemClick(event) {
event.preventDefault(); event.preventDefault();
const languageCode = event.currentTarget.dataset.bsLanguageCode; const languageCode = event.currentTarget.dataset.bsLanguageCode; // change this to event.currentTarget
if (languageCode) { if (languageCode) {
localStorage.setItem("languageCode", languageCode); localStorage.setItem("languageCode", languageCode);
updateUrlWithLanguage(languageCode);
const currentUrl = window.location.href;
if (currentUrl.indexOf("?lang=") === -1 && currentUrl.indexOf("&lang=") === -1) {
window.location.href = currentUrl + "?lang=" + languageCode;
} else if (currentUrl.indexOf("&lang=") !== -1 && currentUrl.indexOf("?lang=") === -1) {
window.location.href = currentUrl.replace(/&lang=\w{2,}/, "&lang=" + languageCode);
} else {
window.location.href = currentUrl.replace(/\?lang=\w{2,}/, "?lang=" + languageCode);
}
} else { } else {
console.error("Language code is not set for this item."); console.error("Language code is not set for this item."); // for debugging
} }
} }
function checkUserLanguage(defaultLocale) { document.addEventListener("DOMContentLoaded", function () {
if (!localStorage.getItem("languageCode") || document.documentElement.getAttribute("data-language") != defaultLocale) {
localStorage.setItem("languageCode", defaultLocale);
updateUrlWithLanguage(defaultLocale);
}
}
function initLanguageSettings() { document.querySelectorAll(".col-lg-2.col-sm-6").forEach((element) => {
document.addEventListener("DOMContentLoaded", function () { const dropdownItems = element.querySelectorAll(".dropdown-item");
setLanguageForDropdown(".lang_dropdown-item"); const items = Array.from(dropdownItems).filter(item => !item.querySelector("hr.dropdown-divider"));
const defaultLocale = getStoredOrDefaultLocale(); if (items.length <= 2) {
checkUserLanguage(defaultLocale); if (
element.previousElementSibling &&
const dropdownItems = document.querySelectorAll(".lang_dropdown-item"); element.previousElementSibling.classList.contains("col-lg-2") &&
dropdownItems.forEach(item => { element.previousElementSibling.classList.contains("nav-item-separator")
item.classList.toggle("active", item.dataset.bsLanguageCode === defaultLocale); ) {
}); element.previousElementSibling.remove();
});
}
function removeElements() {
document.addEventListener("DOMContentLoaded", function () {
document.querySelectorAll(".navbar-item").forEach((element) => {
const dropdownItems = element.querySelectorAll(".dropdown-item");
const items = Array.from(dropdownItems).filter(item => !item.querySelector("hr.dropdown-divider"));
if (items.length <= 2) {
if (
element.previousElementSibling &&
element.previousElementSibling.classList.contains("navbar-item") &&
element.previousElementSibling.classList.contains("nav-item-separator")
) {
element.previousElementSibling.remove();
}
element.remove();
} }
}); element.remove();
});
}
function sortLanguageDropdown() {
document.addEventListener("DOMContentLoaded", function () {
const dropdownMenu = document.querySelector('.dropdown-menu .dropdown-item.lang_dropdown-item').parentElement;
if (dropdownMenu) {
const items = Array.from(dropdownMenu.children).filter(child => child.matches('a'));
items.sort((a, b) => a.dataset.bsLanguageCode.localeCompare(b.dataset.bsLanguageCode))
.forEach(node => dropdownMenu.appendChild(node));
} }
}); });
}
sortLanguageDropdown(); //Sort languages by alphabet
const list = Array.from(document.querySelector('.dropdown-menu[aria-labelledby="languageDropdown"]').children).filter(
(child) => child.matches("a"),
);
list
.sort(function (a, b) {
return a.textContent.toUpperCase().localeCompare(b.textContent.toUpperCase());
})
.forEach((node) => document.querySelector('.dropdown-menu[aria-labelledby="languageDropdown"]').appendChild(node));
});

View File

@@ -0,0 +1,39 @@
const scrollDivHorizontally = (id) => {
var scrollDeltaX = 0; // variable to store the accumulated horizontal scroll delta
var scrollDeltaY = 0; // variable to store the accumulated vertical scroll delta
var isScrolling = false; // variable to track if scroll is already in progress
const divToScroll = document.getElementById(id);
function scrollLoop() {
// Scroll the div horizontally and vertically by a fraction of the accumulated scroll delta
divToScroll.scrollLeft += scrollDeltaX * 0.1;
divToScroll.scrollTop += scrollDeltaY * 0.1;
// Reduce the accumulated scroll delta by a fraction
scrollDeltaX *= 0.9;
scrollDeltaY *= 0.9;
// If scroll delta is still significant, continue the scroll loop
if (Math.abs(scrollDeltaX) > 0.1 || Math.abs(scrollDeltaY) > 0.1) {
requestAnimationFrame(scrollLoop);
} else {
isScrolling = false; // Reset scroll in progress flag
}
}
divToScroll.addEventListener("wheel", function (e) {
e.preventDefault(); // prevent default mousewheel behavior
// Accumulate the horizontal and vertical scroll delta
scrollDeltaX -= e.deltaX || e.wheelDeltaX || -e.deltaY || -e.wheelDeltaY;
scrollDeltaY -= e.deltaY || e.wheelDeltaY || -e.deltaX || -e.wheelDeltaX;
// If scroll is not already in progress, start the scroll loop
if (!isScrolling) {
isScrolling = true;
requestAnimationFrame(scrollLoop);
}
});
};
export default scrollDivHorizontally;

Some files were not shown because too many files have changed in this diff Show More