diff --git a/.github/ISSUE_TEMPLATE/bug_feature_question.md b/.github/ISSUE_TEMPLATE/bug_feature_question.md deleted file mode 100644 index 23d24e36d..000000000 --- a/.github/ISSUE_TEMPLATE/bug_feature_question.md +++ /dev/null @@ -1,80 +0,0 @@ ---- -name: '๐Ÿ› Bug / ๐Ÿ’ก Feature / โ“ Question' -about: 'Report a bug, request a feature, or ask a question about BentoPDF' -title: '(Bug) , (Feature) , or (Question) ' -labels: ['needs triage'] -assignees: [] ---- - -## Type of Issue - -Please check one: - -- [ ] ๐Ÿ› Bug Report -- [ ] ๐Ÿ’ก Feature Request -- [ ] โ“ Question / Help - ---- - -## Description - -Provide a clear and concise description of the issue, feature request, or question. - ---- - -## Steps to Reproduce (for Bugs) - -1. Go to '...' -2. Run '...' -3. Observe error: '...' - -**Expected Behavior:** -Describe what you expected BentoPDF to do. - -**Actual Behavior:** -Describe what actually happened, including error messages. - ---- - -## Feature Request Details (if applicable) - -- What functionality are you requesting? -- Why is this useful? -- Any example or context to illustrate it? - ---- - -## Question Details (if applicable) - -- What is your question? -- What have you tried so far? -- Any relevant code snippet or scenario? - ---- - -## Screenshots / Logs (if applicable) - -Attach any screenshots, logs, or stack traces that help explain the problem or question. - ---- - -## Environment - -- **OS:** (e.g., macOS 14.0 / Ubuntu 22.04 / Windows 11) -- **Dependencies / setup details (if any):** - ---- - -## ๐Ÿ’ญ Additional Context - -Any other information, suggestions, or references that might help maintainers. - ---- - -โœ… **Title Format Reminder:** - -- `(Bug) Text alignment incorrect on multi-line paragraphs` -- `(Feature) Add support for custom PDF metadata` -- `(Question) How to embed custom fonts?` - ---- diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 000000000..b638cfd6e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,122 @@ +name: ๐Ÿ› Bug Report +description: Report a bug in BentoPDF +title: "(Bug) " +labels: ["bug", "needs triage"] +body: + - type: markdown + attributes: + value: | + ## โš ๏ธ Important Notice + **Bug reports without logs or a sample file demonstrating the issue will not be investigated.** + Please help us help you by providing the information needed to reproduce and fix the problem. + + - type: textarea + id: description + attributes: + label: Description + description: Provide a clear and concise description of the bug. + placeholder: What happened? What did you expect to happen? + validations: + required: true + + - type: textarea + id: steps + attributes: + label: Steps to Reproduce + description: How can we reproduce this issue? + placeholder: | + 1. Go to '...' + 2. Click on '...' + 3. Upload file '...' + 4. See error + validations: + required: true + + - type: textarea + id: console-logs + attributes: + label: Console Logs + description: Open browser DevTools (F12 โ†’ Console tab) and paste any errors here. + placeholder: Paste console logs here... + render: shell + validations: + required: true + + - type: textarea + id: sample-file + attributes: + label: Sample PDF or File + description: | + Attach a sample PDF that reproduces the issue, or describe how to create one. + If you cannot share the original, create a minimal example that shows the problem. + placeholder: Drag and drop your file here, or describe how to reproduce with any PDF... + validations: + required: true + + - type: dropdown + id: browser + attributes: + label: Browser + description: Which browser are you using? + options: + - Chrome + - Firefox + - Safari + - Edge + - Brave + - Other + validations: + required: true + + - type: input + id: browser-version + attributes: + label: Browser Version + description: e.g., Chrome 120, Firefox 121 + placeholder: "120" + validations: + required: true + + - type: dropdown + id: os + attributes: + label: Operating System + options: + - macOS + - Windows + - Linux + - iOS + - Android + - Other + validations: + required: true + + - type: input + id: bentopdf-version + attributes: + label: BentoPDF Version + description: Check the footer or package.json + placeholder: "1.15.4" + validations: + required: false + + - type: textarea + id: additional + attributes: + label: Additional Context + description: Any other information that might help us debug this issue. + placeholder: Screenshots, network errors, stack traces, etc. + validations: + required: false + + - type: checkboxes + id: checklist + attributes: + label: Pre-submission Checklist + options: + - label: I have included console logs from the browser DevTools + required: true + - label: I have attached a sample file or described how to reproduce the issue + required: true + - label: I have searched existing issues to ensure this is not a duplicate + required: true diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 000000000..3c041abfb --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: false +contact_links: + - name: ๐Ÿ’ฌ Discord Community + url: https://discord.gg/Bgq3Ay3f2w + about: Join our Discord for quick questions and community support + - name: ๐Ÿ“– Documentation + url: https://github.com/nicholaschen09/BentoPDF#readme + about: Check the README for setup and usage instructions diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 000000000..9797c6aa6 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,39 @@ +name: ๐Ÿ’ก Feature Request +description: Suggest a new feature for BentoPDF +title: "(Feature) " +labels: ["enhancement", "needs triage"] +body: + - type: textarea + id: description + attributes: + label: Feature Description + description: What functionality are you requesting? + placeholder: Describe the feature you'd like to see... + validations: + required: true + + - type: textarea + id: use-case + attributes: + label: Use Case + description: Why is this feature useful? What problem does it solve? + placeholder: Explain why you need this feature... + validations: + required: true + + - type: textarea + id: examples + attributes: + label: Examples + description: Any examples, mockups, or references to illustrate the feature? + placeholder: Links to similar features, screenshots, etc. + validations: + required: false + + - type: textarea + id: additional + attributes: + label: Additional Context + description: Any other information about the feature request. + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/question.yml b/.github/ISSUE_TEMPLATE/question.yml new file mode 100644 index 000000000..ac5e90507 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/question.yml @@ -0,0 +1,30 @@ +name: โ“ Question +description: Ask a question about BentoPDF +title: "(Question) " +labels: ["question"] +body: + - type: textarea + id: question + attributes: + label: Question + description: What would you like to know? + placeholder: Your question here... + validations: + required: true + + - type: textarea + id: tried + attributes: + label: What have you tried? + description: What solutions have you already attempted? + placeholder: Describe what you've tried so far... + validations: + required: false + + - type: textarea + id: context + attributes: + label: Additional Context + description: Any relevant code snippets, screenshots, or scenarios. + validations: + required: false diff --git a/.github/workflows/build-and-publish.yml b/.github/workflows/build-and-publish.yml index c0fa14716..7d9012d43 100644 --- a/.github/workflows/build-and-publish.yml +++ b/.github/workflows/build-and-publish.yml @@ -51,10 +51,11 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - docker-build-and-push: + # Build each platform natively in parallel, then merge manifests + build-amd64: runs-on: ubuntu-latest permissions: - contents: write + contents: read packages: write strategy: matrix: @@ -69,8 +70,82 @@ jobs: - name: Checkout code uses: actions/checkout@v4 - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to DockerHub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_TOKEN }} + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Extract version + id: version + run: | + if [[ $GITHUB_REF == refs/tags/v* ]]; then + VERSION=${GITHUB_REF#refs/tags/} + echo "version=${VERSION}" >> $GITHUB_OUTPUT + echo "version_without_v=${VERSION#v}" >> $GITHUB_OUTPUT + echo "is_release=true" >> $GITHUB_OUTPUT + else + SHORT_SHA=${GITHUB_SHA::7} + echo "version=edge" >> $GITHUB_OUTPUT + echo "short_sha=${SHORT_SHA}" >> $GITHUB_OUTPUT + echo "is_release=false" >> $GITHUB_OUTPUT + fi + + - name: Build and push amd64 ${{ matrix.mode.name }} (release) + if: steps.version.outputs.is_release == 'true' + uses: docker/build-push-action@v6 + with: + push: true + build-args: | + SIMPLE_MODE=${{ matrix.mode.simple_mode }} + tags: | + bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-amd64 + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-amd64 + platforms: linux/amd64 + cache-from: type=gha,scope=amd64-${{ matrix.mode.name }} + cache-to: type=gha,mode=max,scope=amd64-${{ matrix.mode.name }} + + - name: Build and push amd64 ${{ matrix.mode.name }} (edge) + if: steps.version.outputs.is_release == 'false' + uses: docker/build-push-action@v6 + with: + push: true + build-args: | + SIMPLE_MODE=${{ matrix.mode.simple_mode }} + tags: | + bentopdf/bentopdf${{ matrix.mode.suffix }}:edge-amd64 + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:edge-amd64 + platforms: linux/amd64 + cache-from: type=gha,scope=amd64-${{ matrix.mode.name }} + cache-to: type=gha,mode=max,scope=amd64-${{ matrix.mode.name }} + + build-arm64: + runs-on: ubuntu-24.04-arm # Native ARM64 runner + permissions: + contents: read + packages: write + strategy: + matrix: + mode: + - name: default + simple_mode: false + suffix: "" + - name: simple + simple_mode: true + suffix: "-simple" + steps: + - name: Checkout code + uses: actions/checkout@v4 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 @@ -88,7 +163,7 @@ jobs: username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - - name: Extract version and determine release type + - name: Extract version id: version run: | if [[ $GITHUB_REF == refs/tags/v* ]]; then @@ -103,8 +178,7 @@ jobs: echo "is_release=false" >> $GITHUB_OUTPUT fi - # Build and push for releases (with 'latest' tag) - - name: Build and push ${{ matrix.mode.name }} image (release) + - name: Build and push arm64 ${{ matrix.mode.name }} (release) if: steps.version.outputs.is_release == 'true' uses: docker/build-push-action@v6 with: @@ -112,18 +186,13 @@ jobs: build-args: | SIMPLE_MODE=${{ matrix.mode.simple_mode }} tags: | - bentopdf/bentopdf${{ matrix.mode.suffix }}:latest - bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version_without_v }} - bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }} - ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:latest - ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version_without_v }} - ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }} - platforms: linux/amd64,linux/arm64 - cache-from: type=gha - cache-to: type=gha,mode=max - - # Build and push for main branch (with 'edge' tag) - - name: Build and push ${{ matrix.mode.name }} image (edge) + bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-arm64 + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-arm64 + platforms: linux/arm64 + cache-from: type=gha,scope=arm64-${{ matrix.mode.name }} + cache-to: type=gha,mode=max,scope=arm64-${{ matrix.mode.name }} + + - name: Build and push arm64 ${{ matrix.mode.name }} (edge) if: steps.version.outputs.is_release == 'false' uses: docker/build-push-action@v6 with: @@ -131,10 +200,101 @@ jobs: build-args: | SIMPLE_MODE=${{ matrix.mode.simple_mode }} tags: | - bentopdf/bentopdf${{ matrix.mode.suffix }}:edge - bentopdf/bentopdf${{ matrix.mode.suffix }}:sha-${{ steps.version.outputs.short_sha }} - ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:edge - ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:sha-${{ steps.version.outputs.short_sha }} - platforms: linux/amd64,linux/arm64 - cache-from: type=gha - cache-to: type=gha,mode=max + bentopdf/bentopdf${{ matrix.mode.suffix }}:edge-arm64 + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:edge-arm64 + platforms: linux/arm64 + cache-from: type=gha,scope=arm64-${{ matrix.mode.name }} + cache-to: type=gha,mode=max,scope=arm64-${{ matrix.mode.name }} + + # Merge manifests after both platforms are built + merge-manifests: + runs-on: ubuntu-latest + needs: [build-amd64, build-arm64] + permissions: + contents: write + packages: write + strategy: + matrix: + mode: + - name: default + suffix: "" + - name: simple + suffix: "-simple" + steps: + - name: Login to DockerHub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_TOKEN }} + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Extract version + id: version + run: | + if [[ $GITHUB_REF == refs/tags/v* ]]; then + VERSION=${GITHUB_REF#refs/tags/} + echo "version=${VERSION}" >> $GITHUB_OUTPUT + echo "version_without_v=${VERSION#v}" >> $GITHUB_OUTPUT + echo "is_release=true" >> $GITHUB_OUTPUT + else + SHORT_SHA=${GITHUB_SHA::7} + echo "version=edge" >> $GITHUB_OUTPUT + echo "short_sha=${SHORT_SHA}" >> $GITHUB_OUTPUT + echo "is_release=false" >> $GITHUB_OUTPUT + fi + + - name: Create and push manifest (release) + if: steps.version.outputs.is_release == 'true' + run: | + # DockerHub manifests + docker buildx imagetools create -t bentopdf/bentopdf${{ matrix.mode.suffix }}:latest \ + bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-amd64 \ + bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-arm64 + + docker buildx imagetools create -t bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }} \ + bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-amd64 \ + bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-arm64 + + docker buildx imagetools create -t bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version_without_v }} \ + bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-amd64 \ + bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-arm64 + + # GHCR manifests + docker buildx imagetools create -t ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:latest \ + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-amd64 \ + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-arm64 + + docker buildx imagetools create -t ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }} \ + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-amd64 \ + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-arm64 + + docker buildx imagetools create -t ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version_without_v }} \ + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-amd64 \ + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}-arm64 + + - name: Create and push manifest (edge) + if: steps.version.outputs.is_release == 'false' + run: | + # DockerHub manifests + docker buildx imagetools create -t bentopdf/bentopdf${{ matrix.mode.suffix }}:edge \ + bentopdf/bentopdf${{ matrix.mode.suffix }}:edge-amd64 \ + bentopdf/bentopdf${{ matrix.mode.suffix }}:edge-arm64 + + docker buildx imagetools create -t bentopdf/bentopdf${{ matrix.mode.suffix }}:sha-${{ steps.version.outputs.short_sha }} \ + bentopdf/bentopdf${{ matrix.mode.suffix }}:edge-amd64 \ + bentopdf/bentopdf${{ matrix.mode.suffix }}:edge-arm64 + + # GHCR manifests + docker buildx imagetools create -t ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:edge \ + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:edge-amd64 \ + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:edge-arm64 + + docker buildx imagetools create -t ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:sha-${{ steps.version.outputs.short_sha }} \ + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:edge-amd64 \ + ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:edge-arm64 diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml index c81d7236d..52ecbd17d 100644 --- a/.github/workflows/static.yml +++ b/.github/workflows/static.yml @@ -58,6 +58,9 @@ jobs: with: # Upload entire repository path: dist + name: github-pages-deployment - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v4 + with: + artifact_name: github-pages-deployment diff --git a/.github/workflows/sync-upstream.yml b/.github/workflows/sync-upstream.yml index 26b4cf040..575658ced 100644 --- a/.github/workflows/sync-upstream.yml +++ b/.github/workflows/sync-upstream.yml @@ -2,37 +2,38 @@ name: Sync Fork with Upstream on: schedule: - # Runs daily at 2 AM UTC - - cron: '0 2 * * *' - workflow_dispatch: # Allows manual trigger from Actions tab + # Runs daily at 2 AM UTC + - cron: '0 2 * * *' + workflow_dispatch: # Allows manual trigger from Actions tab - jobs: - sync: - runs-on: ubuntu-latest +jobs: + sync: + runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - with: - fetch-depth: 0 # Fetch all history for all branches and tags + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 # Fetch all history for all branches and tags + token: ${{ secrets.GITHUB_TOKEN }} - - name: Configure Git - run: | - git config user.name "github-actions[bot]" - git config user.email "github-actions[bot]@users.noreply.github.com" - - - name: Add upstream remote - run: | - git remote add upstream https://github.com/alam00000/bentopdf.git || true - git fetch upstream - - - name: Sync with upstream - run: | - git checkout main - git merge upstream/main --no-edit - - - name: Push changes - run: | - git push origin main - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Configure Git + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + + - name: Add upstream remote + run: | + git remote add upstream https://github.com/alam00000/bentopdf.git || true + git fetch upstream + + - name: Sync with upstream + run: | + git checkout main + git merge upstream/main --no-edit --allow-unrelated-histories || echo "No changes to merge or merge conflict occurred" + + - name: Push changes + run: | + git push origin main + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.htaccess b/.htaccess new file mode 100644 index 000000000..1a21bcc3f --- /dev/null +++ b/.htaccess @@ -0,0 +1,139 @@ +RewriteEngine On +RewriteBase / + +# ============================================ +# 1. SECURITY HEADERS (UPDATED FOR CDN COMPATIBILITY) +# ============================================ + +Header always set X-Frame-Options "SAMEORIGIN" +Header always set X-Content-Type-Options "nosniff" +Header always set X-XSS-Protection "1; mode=block" +Header always set Referrer-Policy "strict-origin-when-cross-origin" +Header always set Permissions-Policy "geolocation=(), microphone=(), camera=()" +Header always set Cross-Origin-Opener-Policy "same-origin" +Header always set Cross-Origin-Embedder-Policy "require-corp" + + +# ============================================ +# 2. BROWSER CACHING +# ============================================ + +ExpiresActive On +ExpiresByType image/jpeg "access plus 1 year" +ExpiresByType image/png "access plus 1 year" +ExpiresByType image/gif "access plus 1 year" +ExpiresByType image/webp "access plus 1 year" +ExpiresByType image/svg+xml "access plus 1 year" +ExpiresByType image/x-icon "access plus 1 year" +ExpiresByType font/woff2 "access plus 1 year" +ExpiresByType font/woff "access plus 1 year" +ExpiresByType font/ttf "access plus 1 year" +ExpiresByType text/css "access plus 1 month" +ExpiresByType application/javascript "access plus 1 month" +ExpiresByType application/wasm "access plus 1 year" +ExpiresByType application/gzip "access plus 1 year" +ExpiresByType text/html "access plus 0 seconds" + + +# ============================================ +# 3. COMPRESSION (STANDARD) +# ============================================ +SetEnvIfNoCase Request_URI "\.gz$" no-gzip +SetEnvIfNoCase Request_URI "\.br$" no-gzip +SetEnvIfNoCase Request_URI "\.wasm$" no-gzip + + +AddOutputFilterByType DEFLATE text/plain +AddOutputFilterByType DEFLATE text/html +AddOutputFilterByType DEFLATE text/xml +AddOutputFilterByType DEFLATE text/css +AddOutputFilterByType DEFLATE application/xml +AddOutputFilterByType DEFLATE application/xhtml+xml +AddOutputFilterByType DEFLATE application/rss+xml +AddOutputFilterByType DEFLATE application/javascript +AddOutputFilterByType DEFLATE application/x-javascript +AddOutputFilterByType DEFLATE application/json +AddOutputFilterByType DEFLATE image/svg+xml +AddOutputFilterByType DEFLATE font/woff +AddOutputFilterByType DEFLATE font/ttf + + +# ============================================ +# 4. MIME TYPES & SPECIAL FILE HANDLING +# ============================================ +AddType application/javascript .js .mjs +AddType application/wasm .wasm +AddType font/woff2 .woff2 +AddType font/woff .woff +AddType image/webp .webp + + +ForceType application/wasm +Header set Content-Encoding "gzip" +Header set Cross-Origin-Resource-Policy "cross-origin" +Header append Vary Accept-Encoding + + + +ForceType application/octet-stream +Header set Content-Encoding "gzip" +Header append Vary Accept-Encoding + + +# ============================================ +# 5. REDIRECTS & ROUTING +# ============================================ +# Canonical WWW +RewriteCond %{HTTP_HOST} ^bentopdf\.com [NC] +RewriteRule ^(.*)$ https://www.bentopdf.com/$1 [L,R=301] + +# Force HTTPS +RewriteCond %{HTTPS} off +RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] + +# Remove trailing slash (except for language root directories) +RewriteCond %{REQUEST_FILENAME} !-d +RewriteCond %{REQUEST_URI} !^/(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/$ +RewriteCond %{REQUEST_URI} (.+)/$ +RewriteRule ^ %1 [R=301,L] + +# Existing files/dirs - serve directly +RewriteCond %{REQUEST_FILENAME} -f [OR] +RewriteCond %{REQUEST_FILENAME} -d +RewriteRule ^ - [L] + +# ============================================ +# 5.1. LANGUAGE ROUTES (MUST BE BEFORE .html extension rule) +# ============================================ +# English prefix redirects to root +RewriteRule ^en/?$ / [R=301,L] +RewriteRule ^en/(.+)$ /$1 [R=301,L] + +# Language prefix root (e.g., /de/ -> /de/index.html) +RewriteCond %{DOCUMENT_ROOT}/$1/index.html -f +RewriteRule ^(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/?$ /$1/index.html [L] + +# Language prefix with path (e.g., /de/merge-pdf -> /de/merge-pdf.html) +RewriteCond %{DOCUMENT_ROOT}/$1/$2.html -f +RewriteRule ^(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/([^/]+)/?$ /$1/$2.html [L] + +# ============================================ +# 5.5. DOCS ROUTING (VitePress) +# ============================================ +RewriteCond %{REQUEST_URI} ^/docs +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME}\.html -f +RewriteRule ^(.*)$ $1.html [L] + +# ============================================ +# 6. ADD .HTML EXTENSION IF FILE EXISTS (ROOT LEVEL ONLY) +# ============================================ +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME} !-d +RewriteCond %{REQUEST_FILENAME}.html -f +RewriteRule ^([^/]+)$ $1.html [L] + +# ============================================ +# 7. ERROR PAGES +# ============================================ +ErrorDocument 404 /404.html diff --git a/404.html b/404.html index cf1ed3e38..b1a8fbcae 100644 --- a/404.html +++ b/404.html @@ -62,125 +62,7 @@ - + {{> navbar }}
@@ -210,7 +92,7 @@

class="flex flex-col sm:flex-row gap-4 justify-center items-center" > Back to Home @@ -274,171 +156,7 @@

- + {{> footer }} diff --git a/Dockerfile b/Dockerfile index defc4d963..7dcd0d5ff 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,7 +8,11 @@ WORKDIR /app COPY package*.json ./ COPY vendor ./vendor ENV HUSKY=0 -RUN npm ci +RUN npm config set fetch-retries 5 && \ + npm config set fetch-retry-mintimeout 60000 && \ + npm config set fetch-retry-maxtimeout 300000 && \ + npm config set fetch-timeout 600000 && \ + npm ci COPY . . # Build without type checking (vite build only) diff --git a/README.md b/README.md index 379c25f3c..ec8dd7def 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,7 @@ Have questions, feature requests, or want to chat with the community? Join our D [![Documentation](https://img.shields.io/badge/Docs-VitePress-646cff?style=for-the-badge&logo=vite&logoColor=white)](https://bentopdf.com/docs/) Visit our [Documentation](https://bentopdf.com/docs/) for: + - **Getting Started** guide - **Tools Reference** (50+ tools) - **Self-Hosting** guides (Docker, Vercel, Netlify, Cloudflare, AWS, Hostinger, Nginx, Apache) @@ -33,12 +34,22 @@ Visit our [Documentation](https://bentopdf.com/docs/) for: ## ๐Ÿ“œ Licensing -BentoPDF is dual-licensed: +BentoPDF is **dual-licensed** to fit your needs: + +| License | Best For | Price | +| -------------- | -------------------------------------------- | ------------------ | +| **AGPL-3.0** | Open-source projects with public source code | **Free** | +| **Commercial** | Proprietary / closed-source applications | **$49** (lifetime) | + +

+ + Get Commercial License + +

-- **AGPL-3.0** for open-source projects where you share your full source code publicly -- **Commercial License** for proprietary/closed-source applications - **[Get Lifetime License for $49](https://ko-fi.com/s/f32ca4cb75)** (a one-time lifetime purchase, includes all feature updates forever) +> **One-time purchase** ยท **Unlimited devices & users** ยท **Lifetime updates** ยท **No AGPL obligations** -For more details, see our [Licensing Page](https://bentopdf.com/licensing.html) +๐Ÿ“– For more details, see our [Licensing Page](https://bentopdf.com/licensing.html)
@@ -75,68 +86,93 @@ BentoPDF offers a comprehensive suite of tools to handle all your PDF needs. ### Organize & Manage PDFs -| Tool Name | Description | -| :------------------------ | :------------------------------------------------------------------------- | -| **Merge PDFs** | Combine multiple PDF files into one. | -| **Split PDFs** | Extract specific pages or divide a document into smaller files. | -| **Organize Pages** | Reorder, duplicate, or delete pages with a simple drag-and-drop interface. | -| **Extract Pages** | Save a specific range of pages as a new PDF. | -| **Delete Pages** | Remove unwanted pages from your document. | -| **Rotate PDF** | Rotate individual or all pages in a document. | -| **N-Up PDF** | Combine multiple pages onto a single page. | -| **View PDF** | A powerful, integrated PDF viewer. | -| **Alternate & Mix pages** | Merge pages by alternating pages from each PDF. | -| **Posterize PDF** | Split a PDF into multiple smaller pages for print. | -| **PDF Multi Tool** | Merge, Split, Organize, Delete, Rotate, Add Blank Pages, Extract and Duplicate in an unified interface. | -| **Add Attachments** | Embed one or more files into your PDF. | -| **Extract Attachments** | Extract all embedded files from PDF(s) as a ZIP. | -| **Edit Attachments** | View or remove attachments in your PDF. | -| **Divide Pages** | Divide pages horizontally or vertically. | -| **Combine to Single Page**| Stitch all pages into one continuous scroll. | -| **Add Blank Page** | Insert an empty page anywhere in your PDF. | -| **Reverse Pages** | Flip the order of all pages in your document. | -| **View Metadata** | Inspect the hidden properties of your PDF. | -| **PDFs to ZIP** | Package multiple PDF files into a ZIP archive. | -| **Compare PDFs** | Compare two PDFs side by side. | +| Tool Name | Description | +| :--------------------------- | :------------------------------------------------------------------------------------------------------ | +| **Merge PDFs** | Combine multiple PDF files into one. Preserves Bookmarks. | +| **Split PDFs** | Extract specific pages or divide a document into smaller files. | +| **Organize Pages** | Reorder, duplicate, or delete pages with a simple drag-and-drop interface. | +| **Extract Pages** | Save a specific range of pages as a new PDF. | +| **Delete Pages** | Remove unwanted pages from your document. | +| **Rotate PDF** | Rotate individual or all pages in a document. | +| **Rotate by Custom Degrees** | Rotate pages by any custom angle. | +| **N-Up PDF** | Combine multiple pages onto a single page. | +| **View PDF** | A powerful, integrated PDF viewer. | +| **Alternate & Mix Pages** | Merge pages by alternating pages from each PDF. Preserves Bookmarks. | +| **Posterize PDF** | Split a PDF into multiple smaller pages for print. | +| **PDF Multi Tool** | Merge, Split, Organize, Delete, Rotate, Add Blank Pages, Extract and Duplicate in an unified interface. | +| **PDF Booklet** | Rearrange pages for double-sided booklet printing. Fold and staple to create a booklet. | +| **Add Attachments** | Embed one or more files into your PDF. | +| **Extract Attachments** | Extract all embedded files from PDF(s) as a ZIP. | +| **Edit Attachments** | View or remove attachments in your PDF. | +| **Divide Pages** | Divide pages horizontally or vertically. | +| **Combine to Single Page** | Stitch all pages into one continuous scroll. | +| **Add Blank Page** | Insert an empty page anywhere in your PDF. | +| **Reverse Pages** | Flip the order of all pages in your document. | +| **View Metadata** | Inspect the hidden properties of your PDF. | +| **PDFs to ZIP** | Package multiple PDF files into a ZIP archive. | +| **Compare PDFs** | Compare two PDFs side by side. | ### Edit & Modify PDFs -| Tool Name | Description | -| :--------------------- | :---------------------------------------------------------- | -| **PDF Editor** | A comprehensive editor to modify your PDFs. | +| Tool Name | Description | +| :------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **PDF Editor** | Annotate, highlight, redact, comment, add shapes/images, search, and view PDFs. | | **Create Fillable Forms** | Create professional fillable PDF forms with text fields, checkboxes, dropdowns, radio buttons, signatures, and more. Fully compliant with PDF standards for compatibility with all PDF viewers. | -| **Add Page Numbers** | Easily add page numbers with customizable formatting. | -| **Add Watermark** | Add text or image watermarks to protect your documents. | -| **Header & Footer** | Add customizable headers and footers. | -| **Crop PDF** | Crop specific pages or the entire document. | -| **Invert Colors** | Invert the colors of your PDF pages for better readability. | -| **Change Background** | Modify the background color of your PDF. | -| **Change Text Color** | Change the color of text content within the PDF. | -| **Fill Forms** | Fill out PDF forms directly in your browser. | -| **Flatten PDF** | Flatten form fields and annotations into static content. | -| **Remove Annotations** | Remove comments, highlights, and other annotations. | -| **Remove Blank Pages** | Auto detect and remove blank pages in a PDF. | -| **Edit Bookmarks** | Add, Edit, Create, Import and Export PDF Bookmarks. | -| **Add Stamps** | Add image stamps to your PDF using the annotation toolbar. | -| **Table of Contents** | Generate a table of contents page from PDF bookmarks. | -| **Redact Content** | Permanently remove sensitive content from your PDFs. | +| **PDF Form Filler** | Fill in forms directly in the browser. Also supports XFA forms. | +| **Add Page Numbers** | Easily add page numbers with customizable formatting. | +| **Add Watermark** | Add text or image watermarks to protect your documents. | +| **Header & Footer** | Add customizable headers and footers. | +| **Crop PDF** | Crop specific pages or the entire document. | +| **Deskew PDF** | Automatically straighten tilted scanned pages using OpenCV. | +| **Font to Outline** | Convert all fonts to vector outlines for consistent rendering across all devices. | +| **Invert Colors** | Invert the colors of your PDF pages for better readability. | +| **Change Background** | Modify the background color of your PDF. | +| **Change Text Color** | Change the color of text content within the PDF. | +| **Flatten PDF** | Flatten form fields and annotations into static content. | +| **Remove Annotations** | Remove comments, highlights, and other annotations. | +| **Remove Blank Pages** | Auto detect and remove blank pages in a PDF. | +| **Edit Bookmarks** | Add, Edit, Create, Import and Export PDF Bookmarks. | +| **Add Stamps** | Add image stamps to your PDF using the annotation toolbar. | +| **Table of Contents** | Generate a table of contents page from PDF bookmarks. | +| **Redact Content** | Permanently remove sensitive content from your PDFs. | ### Convert to PDF -| Tool Name | Description | -| :------------------ | :-------------------------------------------------------------- | -| **Image to PDF** | Convert JPG, PNG, WebP, SVG, BMP, HEIC, and TIFF images to PDF. | -| **JPG to PDF** | Convert JPG images to PDF. | -| **PNG to PDF** | Convert PNG images to PDF. | -| **WebP to PDF** | Convert WebP images to PDF. | -| **SVG to PDF** | Convert SVG images to PDF. | -| **BMP to PDF** | Convert BMP images to PDF. | -| **HEIC to PDF** | Convert HEIC images to PDF. | -| **TIFF to PDF** | Convert TIFF images to PDF. | -| **Markdown to PDF** | Convert `.md` files into professional PDF documents. | -| **Text to PDF** | Convert plain text files into a PDF. | -| **EPUB to PDF** | Convert EPUB e-books to PDF format. | -| **JSON to PDF** | Convert JSON to PDF. | +| Tool Name | Description | +| :-------------------- | :----------------------------------------------------------------------------------------------------- | +| **Image to PDF** | Convert JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP to PDF. | +| **JPG to PDF** | Convert JPG, JPEG, and JPEG2000 (JP2/JPX) images to PDF. | +| **PNG to PDF** | Convert PNG images to PDF. | +| **WebP to PDF** | Convert WebP images to PDF. | +| **SVG to PDF** | Convert SVG images to PDF. | +| **BMP to PDF** | Convert BMP images to PDF. | +| **HEIC to PDF** | Convert HEIC images to PDF. | +| **TIFF to PDF** | Convert TIFF images to PDF. | +| **PSD to PDF** | Convert Adobe Photoshop (PSD) files to PDF. | +| **Word to PDF** | Convert Word documents (DOCX, DOC, ODT, RTF) to PDF. | +| **Excel to PDF** | Convert Excel spreadsheets (XLSX, XLS, ODS, CSV) to PDF. | +| **PowerPoint to PDF** | Convert PowerPoint presentations (PPTX, PPT, ODP) to PDF. | +| **ODT to PDF** | Convert OpenDocument Text files to PDF. | +| **ODS to PDF** | Convert OpenDocument Spreadsheet (ODS) files to PDF. | +| **ODP to PDF** | Convert OpenDocument Presentation (ODP) files to PDF. | +| **ODG to PDF** | Convert OpenDocument Graphics (ODG) files to PDF. | +| **RTF to PDF** | Convert Rich Text Format documents to PDF. | +| **CSV to PDF** | Convert CSV spreadsheet files to PDF. | +| **Markdown to PDF** | Write or paste Markdown and export it as a beautifully formatted PDF. | +| **Text to PDF** | Convert plain text files into a PDF. | +| **JSON to PDF** | Convert JSON files to PDF. | +| **XML to PDF** | Convert XML documents to PDF. | +| **EPUB to PDF** | Convert EPUB e-books to PDF. | +| **MOBI to PDF** | Convert MOBI e-books to PDF. | +| **FB2 to PDF** | Convert FictionBook (FB2) e-books to PDF. | +| **CBZ to PDF** | Convert comic book archives (CBZ/CBR) to PDF. | +| **XPS to PDF** | Convert XPS/OXPS documents to PDF. | +| **Email to PDF** | Convert email files (EML, MSG) to PDF. Supports Outlook exports. | +| **Pages to PDF** | Convert Apple Pages documents to PDF. | +| **WPD to PDF** | Convert WordPerfect documents (WPD) to PDF. | +| **WPS to PDF** | Convert WPS Office documents to PDF. | +| **PUB to PDF** | Convert Microsoft Publisher (PUB) files to PDF. | +| **VSD to PDF** | Convert Microsoft Visio (VSD, VSDX) files to PDF. | ### Convert from PDF @@ -148,30 +184,35 @@ BentoPDF offers a comprehensive suite of tools to handle all your PDF needs. | **PDF to WebP** | Convert each PDF page into a WebP image. | | **PDF to BMP** | Convert each PDF page into a BMP image. | | **PDF to TIFF** | Convert each PDF page into a TIFF image. | +| **PDF to SVG** | Convert each page into a scalable vector graphic (SVG) for perfect quality. | | **PDF to Greyscale** | Convert a color PDF into a black-and-white version. | -| **OCR PDF** | Make scanned PDFs searchable and copyable using Optical Character Recognition. | +| **PDF to Text** | Extract text from PDF files and save as plain text (.txt). | | **PDF to JSON** | Convert PDF files to JSON format. | +| **PDF to CSV** | Extract tables from PDF and convert to CSV format. | +| **PDF to Excel** | Extract tables from PDF and convert to Excel (XLSX) format. | +| **Extract Tables** | Extract tables from PDF files and export as CSV, JSON, or Markdown. | +| **OCR PDF** | Make scanned PDFs searchable and copyable using Optical Character Recognition. | ### Secure & Optimize PDFs -| Tool Name | Description | -| :--------------------- | :----------------------------------------------------------------- | -| **Compress PDF** | Reduce file size while maintaining quality. | -| **Repair PDF** | Attempt to repair and recover data from a corrupted PDF. | -| **Encrypt PDF** | Add a password to protect your PDF from unauthorized access. | -| **Decrypt PDF** | Remove password protection from a PDF (password required). | -| **Change Permissions** | Set or modify user permissions for printing, copying, and editing. | -| **Sign PDF** | Add your digital signature to a document. | -| **Digital Signature** | Add cryptographic digital signatures using X.509 certificates (PFX/PEM). | -| **Validate Signature** | Verify digital signatures and view certificate details. | -| **Redact Content** | Permanently remove sensitive content from your PDFs. | -| **Edit Metadata** | View and modify PDF metadata (author, title, keywords, etc.). | -| **Remove Metadata** | Strip all metadata from your PDF for privacy. | -| **Linearize PDF** | Optimize PDF for fast web view. | -| **Sanitize PDF** | Remove potentially unwanted or malicous files from PDF. | -| **Fix Page Size** | Standardize all pages to a uniform size. | -| **Page Dimensions** | Analyze page size, orientation, and units. | -| **Remove Restrictions**| Remove password protection and security restrictions associated with digitally signed PDF files. | +| Tool Name | Description | +| :---------------------- | :--------------------------------------------------------------------------------------------------------- | +| **Compress PDF** | Reduce file size while maintaining quality. | +| **Repair PDF** | Attempt to repair and recover data from a corrupted PDF. | +| **Encrypt PDF** | Add a password to protect your PDF from unauthorized access. | +| **Decrypt PDF** | Remove password protection from a PDF (password required). | +| **Change Permissions** | Set or modify user permissions for printing, copying, and editing. | +| **Sign PDF** | Draw, type, or upload your signature. | +| **Digital Signature** | Add cryptographic digital signatures using X.509 certificates (PFX/PEM). Private key never leaves browser. | +| **Validate Signature** | Verify digital signatures, check certificate validity, and confirm document integrity. | +| **Redact Content** | Permanently remove sensitive content from your PDFs. | +| **Edit Metadata** | View and modify PDF metadata (author, title, keywords, etc.). | +| **Remove Metadata** | Strip all metadata from your PDF for privacy. | +| **Linearize PDF** | Optimize PDF for fast web viewing. | +| **Sanitize PDF** | Remove metadata, annotations, scripts, and more. | +| **Fix Page Size** | Standardize all pages to a uniform size. | +| **Page Dimensions** | Analyze page size, orientation, and units. | +| **Remove Restrictions** | Remove password protection and security restrictions associated with digitally signed PDF files. | --- @@ -179,12 +220,18 @@ BentoPDF offers a comprehensive suite of tools to handle all your PDF needs. BentoPDF is available in multiple languages: -| Language | Status | -|------------|--------| -| English | [![English](https://img.shields.io/badge/Complete-green?style=flat-square)](public/locales/en/common.json) | -| German | [![German](https://img.shields.io/badge/In_Progress-yellow?style=flat-square)](public/locales/de/common.json) | -| Vietnamese | [![Vietnamese](https://img.shields.io/badge/In_Progress-yellow?style=flat-square)](public/locales/vi/common.json) | -| Chinese | [![Chinese](https://img.shields.io/badge/In_Progress-yellow?style=flat-square)](public/locales/zh/common.json) | +| Language | Status | +| ------------------- | ------------------------------------------------------------------------------------------------------------------------- | +| English | [![English](https://img.shields.io/badge/Complete-green?style=flat-square)](public/locales/en/common.json) | +| Chinese | [![Chinese](https://img.shields.io/badge/Complete-green?style=flat-square)](public/locales/zh/common.json) | +| Traditional Chinese | [![Traditional Chinese](https://img.shields.io/badge/Complete-green?style=flat-square)](public/locales/zh-TW/common.json) | +| French | [![French](https://img.shields.io/badge/Complete-green?style=flat-square)](public/locales/fr/common.json) | +| German | [![German](https://img.shields.io/badge/Complete-green?style=flat-square)](public/locales/de/common.json) | +| Indonesian | [![Indonesian](https://img.shields.io/badge/Complete-green?style=flat-square)](public/locales/id/common.json) | +| Italian | [![Italian](https://img.shields.io/badge/Complete-green?style=flat-square)](public/locales/it/common.json) | +| Portuguese | [![Portuguese](https://img.shields.io/badge/Complete-green?style=flat-square)](public/locales/pt/common.json) | +| Turkish | [![Turkish](https://img.shields.io/badge/Complete-green?style=flat-square)](public/locales/tr/common.json) | +| Vietnamese | [![Vietnamese](https://img.shields.io/badge/Complete-green?style=flat-square)](public/locales/vi/common.json) | Want to help translate BentoPDF into your language? Check out our [Translation Guide](TRANSLATION.md)! @@ -227,7 +274,7 @@ This is the fastest way to try BentoPDF without setting up a development environ ### Static Hosting using Netlify, Vercel, and GitHub Pages -It is very straightforward to host your own instance of BentoPDF using a static web page hosting service. Plus, services such as Netlify, Vercel, and GitHub Pages all offer a free tier for getting started. See [Static Hosting](https://github.com/alam00000/bentopdf/blob/main/STATIC-HOSTING.md)) for details. +It is very straightforward to host your own instance of BentoPDF using a static web page hosting service. Plus, services such as Netlify, Vercel, and GitHub Pages all offer a free tier for getting started. See [Static Hosting](https://github.com/alam00000/bentopdf/blob/main/STATIC-HOSTING.md)) for details. ### ๐Ÿ  Self-Hosting Locally @@ -241,7 +288,7 @@ The easiest way to self-host is to download the pre-built distribution file from 2. Download the latest `dist-{version}.zip` file 3. Extract the zip file 4. Serve the extracted folder with your preferred web server - + **Serve the extracted folder (requires Node.js):** ```bash @@ -303,12 +350,12 @@ npm run build:all docker build --build-arg COMPRESSION_MODE=all -t bentopdf:all . ``` -| Mode | Files Kept | Use Case | -|------|------------|----------| -| `g` | `.gz` only | Standard nginx or minimal size | -| `b` | `.br` only | Modern CDN with Brotli support | -| `o` | originals | Development or custom compression | -| `all` | all formats | Maximum compatibility (default) | +| Mode | Files Kept | Use Case | +| ----- | ----------- | --------------------------------- | +| `g` | `.gz` only | Standard nginx or minimal size | +| `b` | `.br` only | Modern CDN with Brotli support | +| `o` | originals | Development or custom compression | +| `all` | all formats | Maximum compatibility (default) | **CDN Optimization:** @@ -323,6 +370,7 @@ npm run build ``` **How it works:** + - When `VITE_USE_CDN=true`: Browser loads WASM files from jsDelivr CDN (fast, global delivery) - Local files are **always included** as automatic fallback - If CDN fails then it falls back to local files @@ -348,7 +396,7 @@ cp -r dist/* serve-test/tools/bentopdf/ npx serve serve-test ``` -The website can be accessible at: ```http://localhost:3000/tools/bentopdf/``` +The website can be accessible at: `http://localhost:3000/tools/bentopdf/` The `npm run package` command creates a `dist-{version}.zip` file that you can use for self-hosting. @@ -378,7 +426,8 @@ docker build \ docker run -p 3000:8080 bentopdf-simple ``` -> **Important**: +> **Important**: +> > - Always include trailing slashes in `BASE_URL` (e.g., `/bentopdf/` not `/bentopdf`) > - The default value is `/` for root deployment @@ -441,6 +490,7 @@ For detailed security configuration, see [SECURITY.md](SECURITY.md). The **Digital Signature** tool uses a signing library that may need to fetch certificate chain data from certificate authority provider. Since many certificate servers don't include CORS headers, a proxy is required for this feature to work in the browser. **When is the proxy needed?** + - Only when using the Digital Signature tool - Only if your certificate requires fetching issuer certificates from external URLs - Self-signed certificates typically don't need this @@ -448,16 +498,19 @@ The **Digital Signature** tool uses a signing library that may need to fetch cer **Deploying the CORS Proxy (Cloudflare Workers):** 1. **Navigate to the cloudflare directory:** + ```bash cd cloudflare ``` 2. **Login to Cloudflare (if not already):** + ```bash npx wrangler login ``` 3. **Deploy the worker:** + ```bash npx wrangler deploy ``` @@ -473,13 +526,13 @@ The **Digital Signature** tool uses a signing library that may need to fetch cer The CORS proxy includes several security measures: -| Feature | Description | -|---------|-------------| -| **URL Restrictions** | Only allows certificate URLs (`.crt`, `.cer`, `.pem`, `/certs/`, `/ocsp`) | -| **Private IP Blocking** | Blocks requests to localhost, 10.x, 192.168.x, 172.16-31.x | -| **File Size Limit** | Rejects files larger than 10MB | -| **Rate Limiting** | 60 requests per IP per minute (requires KV) | -| **HMAC Signatures** | Optional client-side signing (limited protection) | +| Feature | Description | +| ----------------------- | ------------------------------------------------------------------------- | +| **URL Restrictions** | Only allows certificate URLs (`.crt`, `.cer`, `.pem`, `/certs/`, `/ocsp`) | +| **Private IP Blocking** | Blocks requests to localhost, 10.x, 192.168.x, 172.16-31.x | +| **File Size Limit** | Rejects files larger than 10MB | +| **Rate Limiting** | 60 requests per IP per minute (requires KV) | +| **HMAC Signatures** | Optional client-side signing (limited protection) | #### Enabling Rate Limiting (Recommended) @@ -657,6 +710,7 @@ npm run docs:preview ``` Documentation files are in the `docs/` folder: + - `docs/index.md` - Home page - `docs/getting-started.md` - Getting started guide - `docs/tools/` - Tools reference diff --git a/TRANSLATION.md b/TRANSLATION.md index 00354a5da..bfb3d461a 100644 --- a/TRANSLATION.md +++ b/TRANSLATION.md @@ -21,12 +21,30 @@ BentoPDF uses **i18next** for internationalization (i18n). Currently supported l - **English** (`en`) - Default - **German** (`de`) +- **Spanish** (`es`) +- **French** (`fr`) +- **Italian** (`it`) +- **Portuguese** (`pt`) +- **Turkish** (`tr`) - **Vietnamese** (`vi`) +- **Indonesian** (`id`) +- **Chinese** (`zh`) +- **Traditional Chinese (Taiwan)** (`zh-TW`) The app automatically detects the language from the URL path: -- `/en/` โ†’ English + +- `/` or `/en/` โ†’ English (default) - `/de/` โ†’ German -- `/vi/` โ†’ Vietnamese +- `/fr/` โ†’ French +- etc. + +### Architecture + +BentoPDF uses a **static pre-rendering** approach for SEO-optimized i18n: + +1. **Build time**: `scripts/generate-i18n-pages.mjs` generates localized HTML files in `dist/{lang}/` +2. **Dev/Preview**: `languageRouterPlugin` in `vite.config.ts` handles URL rewriting +3. **Production**: Nginx serves static files directly from language directories --- @@ -34,50 +52,52 @@ The app automatically detects the language from the URL path: **To improve existing translations:** -1. Navigate to `public/locales/{language}/common.json` +1. Navigate to `public/locales/{language}/common.json` and `public/locales/{language}/tools.json` 2. Find the key you want to update 3. Change the translation value 4. Save and test -**To add a new language (e.g., Spanish):** +**To add a new language (e.g., Japanese `ja`):** -1. Copy `public/locales/en/common.json` to `public/locales/es/common.json` -2. Translate all values in `es/common.json` -3. Add Spanish to `supportedLanguages` in `src/js/i18n/i18n.ts` -4. Add Spanish name to `languageNames` in `src/js/i18n/i18n.ts` -5. Test thoroughly +1. Copy `public/locales/en/` to `public/locales/ja/` +2. Translate all values in both `ja/common.json` and `ja/tools.json` +3. Add Japanese to `supportedLanguages` and `languageNames` in `src/js/i18n/i18n.ts` +4. Add `'ja'` to `SUPPORTED_LANGUAGES` in `vite.config.ts` +5. Restart the dev server +6. Run `npm run build` to generate static language pages +7. Test thoroughly --- ## Adding a New Language -Let's add **French** as an example: +Let's add **Spanish** as an example: -### Step 1: Create Translation File +### Step 1: Create Translation Files ```bash # Create the directory -mkdir -p public/locales/fr +mkdir -p public/locales/es # Copy the English template -cp public/locales/en/common.json public/locales/fr/common.json +cp public/locales/en/common.json public/locales/es/common.json ``` -### Step 2: Translate the JSON File +### Step 2: Translate the JSON Files -Open `public/locales/fr/common.json` and translate all the values: +Open `public/locales/es/common.json` and translate all the values: ```json { "nav": { - "home": "Accueil", - "about": "ร€ propos", - "contact": "Contact", - "allTools": "Tous les outils" + "home": "Inicio", + "about": "Acerca de", + "contact": "Contacto", + "allTools": "Todas las herramientas" }, "hero": { - "title": "Votre boรฎte ร  outils PDF gratuite et sรฉcurisรฉe", - "subtitle": "Fusionnez, divisez, compressez et modifiez des PDF directement dans votre navigateur." + "title": "Tu conjunto de herramientas PDF gratuito y seguro", + "subtitle": "Combina, divide, comprime y edita archivos PDF directamente en tu navegador." } // ... continue translating all keys } @@ -86,40 +106,78 @@ Open `public/locales/fr/common.json` and translate all the values: โš ๏ธ **Important**: Only translate the **values**, NOT the keys! โœ… **Correct:** + ```json -"home": "Accueil" +"home": "Inicio" ``` โŒ **Wrong:** + ```json -"accueil": "Accueil" +"inicio": "Inicio" ``` +Then do the same for `public/locales/fr/tools.json` to translate all tool names and descriptions. + ### Step 3: Register the Language Edit `src/js/i18n/i18n.ts`: ```typescript // Add 'fr' to supported languages -export const supportedLanguages = ['en', 'de', 'fr'] as const; +export const supportedLanguages = ['en', 'de', 'es', 'fr', 'zh', 'vi'] as const; export type SupportedLanguage = (typeof supportedLanguages)[number]; // Add French display name export const languageNames: Record = { - en: 'English', - de: 'Deutsch', - fr: 'Franรงais', // โ† Add this + en: 'English', + de: 'Deutsch', + fr: 'Franรงais', // โ† Add this }; ``` -### Step 4: Test Your Translation +### Step 4: Update Vite Configuration + +In `vite.config.ts`, add your language to the `SUPPORTED_LANGUAGES` array: + +```typescript +const SUPPORTED_LANGUAGES = [ + 'en', + 'de', + 'es', + 'zh', + 'zh-TW', + 'vi', + 'it', + 'id', + 'tr', + 'fr', + 'pt', + 'ja', +] as const; +``` + +> **Important**: This is required for both dev server routing and the build-time i18n generation. + +### Step 5: Test Your Translation ```bash -# Start the dev server +# Restart the dev server npm run dev -# Visit the French version -# http://localhost:5173/fr/ +# Visit the Japanese version +# http://localhost:5173/ja/ +``` + +### Step 6: Build and Verify Static Files + +```bash +# Run build (includes i18n page generation) +npm run build + +# Verify files were created +ls dist/ja/ +# Should show: index.html, merge-pdf.html, etc. ``` --- @@ -207,6 +265,7 @@ Tool names and descriptions are defined in `src/js/config/tools.ts` and use a sp ``` In translations: + ```json { "tools": { @@ -234,14 +293,15 @@ console.log(message); // "Error" or "Fehler" depending on language For input placeholders: ```html - ``` In `common.json`: + ```json { "tools": { @@ -257,6 +317,7 @@ In `common.json`: ### Manual Testing 1. **Start development server:** + ```bash npm run dev ``` @@ -265,7 +326,11 @@ In `common.json`: - English: `http://localhost:5173/en/` - German: `http://localhost:5173/de/` - Vietnamese: `http://localhost:5173/vi/` - - Your new language: `http://localhost:5173/fr/` + - Indonesian: `http://localhost:5173/id/` + - Chinese: `http://localhost:5173/zh/` + - Traditional Chinese (Taiwan): `http://localhost:5173/zh-TW/` + - French: `http://localhost:5173/fr/` + - Your new language: `http://localhost:5173/es/` 3. **Check these pages:** - Homepage (`/`) @@ -289,11 +354,12 @@ Check for missing translations: node scripts/check-translations.js ``` -*(If this script doesn't exist, you may need to create it or manually compare JSON files)* +_(If this script doesn't exist, you may need to create it or manually compare JSON files)_ ### Browser Testing Test in different browsers: + - Chrome/Edge - Firefox - Safari @@ -307,11 +373,13 @@ Test in different browsers: BentoPDF is **friendly, clear, and professional**. Match this tone in your translations. โœ… **Good:** + ```json "hero.title": "Ihr kostenloses und sicheres PDF-Toolkit" ``` โŒ **Too formal:** + ```json "hero.title": "Ihr gebรผhrenfreies und gesichertes Werkzeug fรผr PDF-Dokumente" ``` @@ -339,6 +407,7 @@ When translating, **keep the HTML tags intact**: If your language has complex plural rules or gender distinctions, consult the [i18next pluralization guide](https://www.i18next.com/translation-function/plurals). Example: + ```json { "pages": "page", @@ -349,6 +418,7 @@ Example: ### 4. Don't Translate Brand Names or Legal Terms Keep these as-is: + - BentoPDF - PDF - GitHub @@ -361,6 +431,7 @@ Keep these as-is: ### 5. Technical Terms For technical terms, use commonly accepted translations in your language: + - "Merge" โ†’ "Fusionner" (French), "Zusammenfรผhren" (German) - "Split" โ†’ "Diviser" (French), "Teilen" (German) - "Compress" โ†’ "Compresser" (French), "Komprimieren" (German) @@ -380,6 +451,7 @@ If a translation is much longer, test it visually to ensure it doesn't break the ### Issue: Translations Not Showing Up **Solution:** + 1. Clear your browser cache 2. Hard refresh (Ctrl+F5 or Cmd+Shift+R) 3. Check browser console for errors @@ -388,22 +460,26 @@ If a translation is much longer, test it visually to ensure it doesn't break the ### Issue: Some Text Still in English **Possible causes:** + 1. Missing translation key in your language file 2. Missing `data-i18n` attribute in HTML 3. Hardcoded text in JavaScript **Solution:** + - Compare your language file with `en/common.json` to find missing keys - Search the codebase for hardcoded strings ### Issue: JSON Syntax Error **Symptoms:** + ``` SyntaxError: Unexpected token } in JSON at position 1234 ``` **Solution:** + - Use a JSON validator: https://jsonlint.com/ - Common mistakes: - Trailing comma after last item @@ -414,15 +490,50 @@ SyntaxError: Unexpected token } in JSON at position 1234 **Solution:** Make sure you added the language to both arrays in `i18n.ts`: + ```typescript -export const supportedLanguages = ['en', 'de', 'fr']; // โ† Add here +export const supportedLanguages = ['en', 'de', 'es', 'fr', 'zh', 'vi']; // โ† Add here export const languageNames = { - en: 'English', - de: 'Deutsch', - fr: 'Franรงais', // โ† And here + en: 'English', + de: 'Deutsch', + es: 'Espaรฑol', + fr: 'Franรงais', // โ† And here + zh: 'ไธญๆ–‡', + vi: 'Tiแบฟng Viแป‡t', }; ``` +### Issue: 404 Error When Accessing Language Pages + +**Symptoms:** +Visiting `http://localhost:5173/ja/about.html` shows a 404 error page. + +**Solution:** +You need to add your language code to `SUPPORTED_LANGUAGES` in `vite.config.ts`: + +```typescript +const SUPPORTED_LANGUAGES = [ + 'en', + 'de', + 'es', + 'zh', + 'zh-TW', + 'vi', + 'it', + 'id', + 'tr', + 'fr', + 'pt', + 'ja', +] as const; +``` + +After updating, restart the dev server: + +```bash +npm run dev +``` + --- ## File Checklist @@ -430,11 +541,15 @@ export const languageNames = { When adding a new language, make sure these files are updated: - [ ] `public/locales/{lang}/common.json` - Main translation file +- [ ] `public/locales/{lang}/tools.json` - Tools translation file - [ ] `src/js/i18n/i18n.ts` - Add to `supportedLanguages` and `languageNames` +- [ ] `vite.config.ts` - Add to `SUPPORTED_LANGUAGES` array - [ ] Test all pages: homepage, about, contact, FAQ, tool pages - [ ] Test settings modal and shortcuts - [ ] Test language switcher in footer - [ ] Verify URL routing works (`/{lang}/`) +- [ ] Run `npm run build` and verify `dist/{lang}/` folder is created +- [ ] Test that all tools load correctly --- @@ -470,13 +585,21 @@ Thank you for contributing to BentoPDF! ๐ŸŽ‰ Current translation coverage: -| Language | Code | Status | Maintainer | -|----------|------|--------|------------| -| English | `en` | โœ… Complete | Core team | -| German | `de` | ๐Ÿšง In Progress | Core team | -| Vietnamese | `vi` | โœ… Complete | Community | -| Your Language | `??` | ๐Ÿšง In Progress | You? | +| Language | Code | Status | Maintainer | +| ------------------- | ------- | -------------- | ---------- | +| English | `en` | โœ… Complete | Core team | +| German | `de` | โœ… Complete | Community | +| Spanish | `es` | โœ… Complete | Community | +| French | `fr` | โœ… Complete | Community | +| Italian | `it` | โœ… Complete | Community | +| Portuguese | `pt` | โœ… Complete | Community | +| Turkish | `tr` | โœ… Complete | Community | +| Vietnamese | `vi` | โœ… Complete | Community | +| Indonesian | `id` | โœ… Complete | Community | +| Chinese | `zh` | โœ… Complete | Community | +| Traditional Chinese | `zh-TW` | โœ… Complete | Community | +| Your Language | `??` | ๐Ÿšง In Progress | You? | --- -**Last Updated**: December 2025 +**Last Updated**: January 2026 diff --git a/about.html b/about.html index 5a2ecbe85..76dd16b6e 100644 --- a/about.html +++ b/about.html @@ -78,125 +78,7 @@ - + {{> navbar }}
@@ -412,171 +294,7 @@

- + {{> footer }} diff --git a/contact.html b/contact.html index 6de7636b6..1e9c01228 100644 --- a/contact.html +++ b/contact.html @@ -78,125 +78,7 @@ - + {{> navbar }}
@@ -229,171 +111,7 @@
- + {{> footer }} diff --git a/docs/self-hosting/apache.md b/docs/self-hosting/apache.md index 0264acfd5..4b80551e5 100644 --- a/docs/self-hosting/apache.md +++ b/docs/self-hosting/apache.md @@ -73,22 +73,46 @@ Create `/etc/apache2/sites-available/bentopdf.conf`: ``` -## Step 4: .htaccess for SPA Routing +## Step 4: .htaccess for Routing Create `/var/www/bentopdf/.htaccess`: ```apache - - RewriteEngine On - RewriteBase / - - # Don't rewrite files or directories - RewriteCond %{REQUEST_FILENAME} !-f - RewriteCond %{REQUEST_FILENAME} !-d - - # Rewrite everything else to index.html - RewriteRule ^ index.html [L] - +RewriteEngine On +RewriteBase / + +# Existing files/dirs - serve directly +RewriteCond %{REQUEST_FILENAME} -f [OR] +RewriteCond %{REQUEST_FILENAME} -d +RewriteRule ^ - [L] + +# ============================================ +# LANGUAGE ROUTES +# ============================================ +# Supported languages: de, es, zh, zh-TW, vi, it, id, tr, fr, pt +# English has no prefix - served from root + +# English prefix redirects to root +RewriteRule ^en/?$ / [R=301,L] +RewriteRule ^en/(.+)$ /$1 [R=301,L] + +# Language prefix root (e.g., /de/ -> /de/index.html) +RewriteCond %{DOCUMENT_ROOT}/$1/index.html -f +RewriteRule ^(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/?$ /$1/index.html [L] + +# Language prefix with path (e.g., /de/merge-pdf -> /de/merge-pdf.html) +RewriteCond %{DOCUMENT_ROOT}/$1/$2.html -f +RewriteRule ^(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/([^/]+)/?$ /$1/$2.html [L] + +# ============================================ +# ADD .HTML EXTENSION (ROOT LEVEL) +# ============================================ +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME} !-d +RewriteCond %{REQUEST_FILENAME}.html -f +RewriteRule ^([^/]+)$ $1.html [L] + +ErrorDocument 404 /404.html ``` ## Step 5: Enable Required Modules @@ -122,14 +146,31 @@ BASE_URL=/pdf/ npm run build 2. Update `.htaccess`: ```apache - - RewriteEngine On - RewriteBase /pdf/ - - RewriteCond %{REQUEST_FILENAME} !-f - RewriteCond %{REQUEST_FILENAME} !-d - RewriteRule ^ index.html [L] - +RewriteEngine On +RewriteBase /pdf/ + +# Existing files/dirs - serve directly +RewriteCond %{REQUEST_FILENAME} -f [OR] +RewriteCond %{REQUEST_FILENAME} -d +RewriteRule ^ - [L] + +# Language routes +RewriteRule ^en/?$ /pdf/ [R=301,L] +RewriteRule ^en/(.+)$ /pdf/$1 [R=301,L] + +RewriteCond %{DOCUMENT_ROOT}/pdf/$1/index.html -f +RewriteRule ^(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/?$ /pdf/$1/index.html [L] + +RewriteCond %{DOCUMENT_ROOT}/pdf/$1/$2.html -f +RewriteRule ^(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/([^/]+)/?$ /pdf/$1/$2.html [L] + +# Root level .html extension +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME} !-d +RewriteCond %{REQUEST_FILENAME}.html -f +RewriteRule ^([^/]+)$ $1.html [L] + +ErrorDocument 404 /pdf/404.html ``` ## Troubleshooting diff --git a/docs/self-hosting/hostinger.md b/docs/self-hosting/hostinger.md index ea8ac5526..ae0ca99ef 100644 --- a/docs/self-hosting/hostinger.md +++ b/docs/self-hosting/hostinger.md @@ -40,7 +40,6 @@ BASE_URL=/pdf-tools/ npm run build 2. Create the folder in Hostinger: - Go to **File Manager** โ†’ **public_html** - Create a new folder: `pdf-tools` - 3. Upload all contents of `dist` to `public_html/pdf-tools/` ## Step 3: Create .htaccess File @@ -64,7 +63,7 @@ RewriteBase / Header always set X-XSS-Protection "1; mode=block" Header always set Referrer-Policy "strict-origin-when-cross-origin" Header always set Permissions-Policy "geolocation=(), microphone=(), camera=()" - + # REQUIRED for soffice.js (SharedArrayBuffer) Header always set Cross-Origin-Opener-Policy "same-origin" Header always set Cross-Origin-Embedder-Policy "require-corp" @@ -142,7 +141,7 @@ AddType image/webp .webp # ============================================ # 5. REDIRECTS & ROUTING # ============================================ -# Canonical WWW +# Canonical WWW (update domain as needed) RewriteCond %{HTTP_HOST} ^bentopdf\.com [NC] RewriteRule ^(.*)$ https://www.bentopdf.com/$1 [L,R=301] @@ -150,19 +149,34 @@ RewriteRule ^(.*)$ https://www.bentopdf.com/$1 [L,R=301] RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] -# Remove trailing slash +# Remove trailing slash (except for language root directories) RewriteCond %{REQUEST_FILENAME} !-d +RewriteCond %{REQUEST_URI} !^/(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/$ RewriteCond %{REQUEST_URI} (.+)/$ RewriteRule ^ %1 [R=301,L] -# Existing files/dirs +# Existing files/dirs - serve directly RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L] -# Language routes -RewriteRule ^(de|en|zh|vi)/(.*)$ /$2 [L] -RewriteRule ^(de|en|zh|vi)/?$ / [L] +# ============================================ +# 5.1. LANGUAGE ROUTES +# ============================================ +# Supported languages: de, es, zh, zh-TW, vi, it, id, tr, fr, pt +# English has no prefix - served from root + +# English prefix redirects to root (for SEO consistency) +RewriteRule ^en/?$ / [R=301,L] +RewriteRule ^en/(.+)$ /$1 [R=301,L] + +# Language prefix root (e.g., /de/ -> /de/index.html) +RewriteCond %{DOCUMENT_ROOT}/$1/index.html -f +RewriteRule ^(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/?$ /$1/index.html [L] + +# Language prefix with path (e.g., /de/merge-pdf -> /de/merge-pdf.html) +RewriteCond %{DOCUMENT_ROOT}/$1/$2.html -f +RewriteRule ^(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/([^/]+)/?$ /$1/$2.html [L] # ============================================ # 5.5. DOCS ROUTING (VitePress) @@ -173,15 +187,17 @@ RewriteCond %{REQUEST_FILENAME}\.html -f RewriteRule ^(.*)$ $1.html [L] # ============================================ -# 6. SPA FALLBACK +# 6. ADD .HTML EXTENSION IF FILE EXISTS (ROOT LEVEL ONLY) # ============================================ -# SPA Fallback (exclude /docs) -RewriteCond %{REQUEST_URI} !^/docs RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d -RewriteRule ^ /index.html [L] +RewriteCond %{REQUEST_FILENAME}.html -f +RewriteRule ^([^/]+)$ $1.html [L] -ErrorDocument 404 /index.html +# ============================================ +# 7. ERROR PAGES +# ============================================ +ErrorDocument 404 /404.html ``` ## Subdirectory .htaccess Example @@ -191,12 +207,23 @@ For `yourdomain.com/pdf-tools/`, update these lines: ```apache RewriteBase /pdf-tools/ -# ... (same content) ... +# ... (same content as above, but update paths) ... -# SPA Fallback - update path -RewriteRule ^ /pdf-tools/index.html [L] +# Language prefix root +RewriteCond %{DOCUMENT_ROOT}/pdf-tools/$1/index.html -f +RewriteRule ^(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/?$ /pdf-tools/$1/index.html [L] -ErrorDocument 404 /pdf-tools/index.html +# Language prefix with path +RewriteCond %{DOCUMENT_ROOT}/pdf-tools/$1/$2.html -f +RewriteRule ^(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/([^/]+)/?$ /pdf-tools/$1/$2.html [L] + +# Root level .html extension +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME} !-d +RewriteCond %{REQUEST_FILENAME}.html -f +RewriteRule ^([^/]+)$ $1.html [L] + +ErrorDocument 404 /pdf-tools/404.html ``` ## Troubleshooting @@ -222,12 +249,16 @@ If headers aren't being applied, contact Hostinger support to enable `mod_header ### 404 Errors on Page Refresh -Make sure the SPA fallback rule is at the end of your `.htaccess`: +Make sure the `.html` extension rule and language routes are correctly configured. BentoPDF uses static HTML files, not SPA routing: ```apache -RewriteCond %{REQUEST_FILENAME} !-f -RewriteCond %{REQUEST_FILENAME} !-d -RewriteRule ^ /index.html [L] +# Language routes serve actual files from language directories +RewriteCond %{DOCUMENT_ROOT}/$1/$2.html -f +RewriteRule ^(de|es|zh|zh-TW|vi|it|id|tr|fr|pt)/([^/]+)/?$ /$1/$2.html [L] + +# Root level pages +RewriteCond %{REQUEST_FILENAME}.html -f +RewriteRule ^([^/]+)$ $1.html [L] ``` ### File Upload Limits diff --git a/faq.html b/faq.html index 34190bd9c..770521ac9 100644 --- a/faq.html +++ b/faq.html @@ -77,97 +77,7 @@ - + {{> navbar }}
@@ -378,142 +288,7 @@

- + {{> footer }} diff --git a/index.html b/index.html index 6f2959f1e..b2c6ddc35 100644 --- a/index.html +++ b/index.html @@ -95,173 +95,11 @@ /> - - - + {{> navbar }}
- + {{> footer }} diff --git a/licensing.html b/licensing.html index 5ac6d62eb..222db72c5 100644 --- a/licensing.html +++ b/licensing.html @@ -78,138 +78,145 @@ - - -
-
-

- Licensing for - BentoPDF -

-

- Choose the license that fits your needs. -

@@ -360,75 +367,34 @@

Flexible Terms

- - -

+ Get Commercial License + + + + + +

๐Ÿ’ก Custom requests and development are available for separate charges. - Contact us for details. @@ -586,10 +552,33 @@

+ + Get Commercial License - $49 + + + + +

Still not sure? Contact us @@ -909,13 +898,15 @@

BentoPDF is available under a lifetime, one-time purchase commercial license. You can purchase it directly here: Buy Commercial License.

If you have specific requirements or want a custom licensing arrangement, feel free to - contact us with details about your use case, company size, and deployment @@ -1074,10 +1065,17 @@

  • - Ko-fi does not automatically issue invoices. + We use Polar for + payments, which + automatically sends invoices + via email after purchase.
  • class="w-5 h-5 text-green-400 flex-shrink-0 mt-0.5" > An official invoice will be provided immediately upon - request.Polar handles + VAT invoices for + businesses in applicable regions. +
  • +
  • + + For VAT invoices, select + "I'm purchasing as a business" + during checkout and enter your billing address and Tax/VAT + number.
-

- Contact us: - contact@bentopdf.com - with your purchase details. -

@@ -1113,7 +1117,7 @@

We're here to help. Reach out to discuss your licensing needs.

Contact Us @@ -1121,171 +1125,7 @@

- + {{> footer }} diff --git a/nginx.conf b/nginx.conf index eb1c1bfe0..d832721fe 100644 --- a/nginx.conf +++ b/nginx.conf @@ -26,7 +26,6 @@ http { root /usr/share/nginx/html; index index.html; - rewrite ^/(en|de|zh|vi|it)/(.*)$ /$2 last; location ~* \.html$ { expires 1h; @@ -84,6 +83,22 @@ http { add_header Cache-Control "public, immutable"; } + location ~ ^/(en|de|es|zh|zh-TW|vi|it|id|tr|fr|pt)(/.*)?$ { + try_files $uri $uri/ $uri.html /$1/index.html /index.html; + expires 5m; + add_header Cache-Control "public, must-revalidate"; + add_header Cross-Origin-Embedder-Policy "require-corp" always; + add_header Cross-Origin-Opener-Policy "same-origin" always; + } + + location ~ ^/(.+?)/(en|de|es|zh|zh-TW|vi|it|id|tr|fr|pt)(/.*)?$ { + try_files $uri $uri/ $uri.html /$1/$2/index.html /$1/index.html /index.html; + expires 5m; + add_header Cache-Control "public, must-revalidate"; + add_header Cross-Origin-Embedder-Policy "require-corp" always; + add_header Cross-Origin-Opener-Policy "same-origin" always; + } + location / { try_files $uri $uri/ $uri.html /index.html; expires 5m; diff --git a/package-lock.json b/package-lock.json index 85740f5b8..80dae042f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "license": "AGPL-3.0-only", "dependencies": { "@bentopdf/gs-wasm": "^0.1.0", - "@bentopdf/pymupdf-wasm": "^0.1.10", + "@bentopdf/pymupdf-wasm": "^0.11.12", "@fontsource/cedarville-cursive": "^5.2.7", "@fontsource/dancing-script": "^5.2.8", "@fontsource/dm-sans": "^5.2.8", @@ -18,6 +18,7 @@ "@fontsource/kalam": "^5.2.8", "@fontsource/lato": "^5.2.7", "@fontsource/merriweather": "^5.2.11", + "@kenjiuno/msgreader": "^1.27.1-alpha.1", "@matbee/libreoffice-converter": "^2.3.1", "@neslinesli93/qpdf-wasm": "^0.3.0", "@pdf-lib/fontkit": "^1.1.1", @@ -36,7 +37,7 @@ "i18next": "^25.7.2", "i18next-browser-languagedetector": "^8.2.0", "i18next-http-backend": "^3.0.2", - "jspdf": "^3.0.3", + "jspdf": "^4.0.0", "jspdf-autotable": "^5.0.2", "jszip": "^3.10.1", "lucide": "^0.546.0", @@ -58,6 +59,7 @@ "pdf-lib": "^1.17.1", "pdfjs-dist": "^5.4.296", "pdfkit": "^0.17.2", + "postal-mime": "^2.7.1", "sortablejs": "^1.15.6", "tailwindcss": "^4.1.14", "terser": "^5.44.0", @@ -89,6 +91,7 @@ "typescript-eslint": "^8.51.0", "vite": "^7.1.11", "vite-plugin-compression": "^0.5.1", + "vite-plugin-handlebars": "^2.0.0", "vite-plugin-node-polyfills": "^0.24.0", "vitepress": "^1.6.4", "vitest": "^3.2.4", @@ -514,9 +517,9 @@ } }, "node_modules/@bentopdf/pymupdf-wasm": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/@bentopdf/pymupdf-wasm/-/pymupdf-wasm-0.1.10.tgz", - "integrity": "sha512-gej9ItnAswVZhJin8gb0D7rYKqEWvBtO72M4d0eRKP4oARS67eOQERLaKBE4wulIst1x3r3PtHi7673PCmIv+A==", + "version": "0.11.12", + "resolved": "https://registry.npmjs.org/@bentopdf/pymupdf-wasm/-/pymupdf-wasm-0.11.12.tgz", + "integrity": "sha512-AcSg7v7pVhYcH23qLDEj3yTABlGIkZULPmrvWHRtEyD5QMS0TWOLUq/c0ATO371PKVlI4jEUpCBUj+iBsFJwVQ==", "license": "AGPL-3.0", "peerDependencies": { "@bentopdf/gs-wasm": "*" @@ -2055,6 +2058,25 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, + "node_modules/@kenjiuno/decompressrtf": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@kenjiuno/decompressrtf/-/decompressrtf-0.1.4.tgz", + "integrity": "sha512-v9c/iFz17jRWyd2cRnrvJg4VOg/4I/VCk+bG8JnoX2gJ9sAesPzo3uTqcmlVXdpasTI8hChpBVw00pghKe3qTQ==", + "license": "BSD-2-Clause" + }, + "node_modules/@kenjiuno/msgreader": { + "version": "1.27.1-alpha.1", + "resolved": "https://registry.npmjs.org/@kenjiuno/msgreader/-/msgreader-1.27.1-alpha.1.tgz", + "integrity": "sha512-r/Fc6cW+68YpYfA8K0uRI31AV484QzcFzJWZkVz5HHBUf1TrzznvSZ9rRwCRqdO2uTLoMtMf7FovZ+MNfa379g==", + "license": "Apache-2.0", + "dependencies": { + "@kenjiuno/decompressrtf": "^0.1.3", + "iconv-lite": "^0.6.3" + }, + "engines": { + "node": ">= 10" + } + }, "node_modules/@matbee/libreoffice-converter": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/@matbee/libreoffice-converter/-/libreoffice-converter-2.3.1.tgz", @@ -3110,6 +3132,60 @@ "node": ">=14.0.0" } }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/core": { + "version": "1.7.1", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.1.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/runtime": { + "version": "1.7.1", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@emnapi/wasi-threads": { + "version": "1.1.0", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@napi-rs/wasm-runtime": { + "version": "1.1.0", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "^1.7.1", + "@emnapi/runtime": "^1.7.1", + "@tybys/wasm-util": "^0.10.1" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tailwindcss/oxide-wasm32-wasi/node_modules/tslib": { + "version": "2.8.1", + "inBundle": true, + "license": "0BSD", + "optional": true + }, "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { "version": "4.1.18", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.18.tgz", @@ -7206,6 +7282,28 @@ "node": ">=0.8.0" } }, + "node_modules/handlebars": { + "version": "4.7.8", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", + "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.5", + "neo-async": "^2.6.2", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" + } + }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -8039,9 +8137,9 @@ } }, "node_modules/jspdf": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-3.0.4.tgz", - "integrity": "sha512-dc6oQ8y37rRcHn316s4ngz/nOjayLF/FFxBF4V9zamQKRqXxyiH1zagkCdktdWhtoQId5K20xt1lB90XzkB+hQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-4.0.0.tgz", + "integrity": "sha512-w12U97Z6edKd2tXDn3LzTLg7C7QLJlx0BPfM3ecjK2BckUl9/81vZ+r5gK4/3KQdhAcEZhENUxRhtgYBj75MqQ==", "license": "MIT", "peer": true, "dependencies": { @@ -9182,6 +9280,16 @@ "node": "*" } }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/minipass": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", @@ -9272,6 +9380,13 @@ "dev": true, "license": "MIT" }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true, + "license": "MIT" + }, "node_modules/node-fetch": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", @@ -9906,6 +10021,12 @@ "node": ">= 0.4" } }, + "node_modules/postal-mime": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/postal-mime/-/postal-mime-2.7.1.tgz", + "integrity": "sha512-0VslL0CLSV7PBmglwWR8eCGC5fgsdVictjOG4PEA+vvA0+QJF5SC0tV018CbvAcW4XbpbMIJNd91Dt8vTa9kbA==", + "license": "MIT-0" + }, "node_modules/postcss": { "version": "8.5.6", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", @@ -9935,9 +10056,9 @@ } }, "node_modules/preact": { - "version": "10.28.1", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.28.1.tgz", - "integrity": "sha512-u1/ixq/lVQI0CakKNvLDEcW5zfCjUQfZdK9qqWuIJtsezuyG6pk9TWj75GMuI/EzRSZB/VAE43sNWWZfiy8psw==", + "version": "10.28.2", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.28.2.tgz", + "integrity": "sha512-lbteaWGzGHdlIuiJ0l2Jq454m6kcpI1zNje6d8MlGAFlYvP2GO4ibnat7P74Esfz4sPTdM6UxtTwh/d3pwM9JA==", "license": "MIT", "peer": true, "funding": { @@ -11673,6 +11794,20 @@ "integrity": "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==", "license": "MIT" }, + "node_modules/uglify-js": { + "version": "3.19.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz", + "integrity": "sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==", + "dev": true, + "license": "BSD-2-Clause", + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/undici-types": { "version": "7.16.0", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", @@ -12013,114 +12148,18 @@ "vite": ">=2.0.0" } }, - "node_modules/vite-plugin-node-polyfills": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/vite-plugin-node-polyfills/-/vite-plugin-node-polyfills-0.24.0.tgz", - "integrity": "sha512-GA9QKLH+vIM8NPaGA+o2t8PDfFUl32J8rUp1zQfMKVJQiNkOX4unE51tR6ppl6iKw5yOrDAdSH7r/UIFLCVhLw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rollup/plugin-inject": "^5.0.5", - "node-stdlib-browser": "^1.2.0" - }, - "funding": { - "url": "https://github.com/sponsors/davidmyersdev" - }, - "peerDependencies": { - "vite": "^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" - } - }, - "node_modules/vite-plugin-static-copy": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/vite-plugin-static-copy/-/vite-plugin-static-copy-3.1.4.tgz", - "integrity": "sha512-iCmr4GSw4eSnaB+G8zc2f4dxSuDjbkjwpuBLLGvQYR9IW7rnDzftnUjOH5p4RYR+d4GsiBqXRvzuFhs5bnzVyw==", - "license": "MIT", - "dependencies": { - "chokidar": "^3.6.0", - "p-map": "^7.0.3", - "picocolors": "^1.1.1", - "tinyglobby": "^0.2.15" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "peerDependencies": { - "vite": "^5.0.0 || ^6.0.0 || ^7.0.0" - } - }, - "node_modules/vite/node_modules/fdir": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", - "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", - "license": "MIT", - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, - "node_modules/vite/node_modules/picomatch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", - "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/vitepress": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.6.4.tgz", - "integrity": "sha512-+2ym1/+0VVrbhNyRoFFesVvBvHAVMZMK0rw60E3X/5349M1GuVdKeazuksqopEdvkKwKGs21Q729jX81/bkBJg==", + "node_modules/vite-plugin-handlebars": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/vite-plugin-handlebars/-/vite-plugin-handlebars-2.0.0.tgz", + "integrity": "sha512-+J3It0nyhPzx4nT1I+fnWH+jShTEXzm6X0Tgsggdm9IYFD7/eJ6a3ROI13HTe0CVoyaxm/fPxH5HDAKyfz7T0g==", "dev": true, "license": "MIT", "dependencies": { - "@docsearch/css": "3.8.2", - "@docsearch/js": "3.8.2", - "@iconify-json/simple-icons": "^1.2.21", - "@shikijs/core": "^2.1.0", - "@shikijs/transformers": "^2.1.0", - "@shikijs/types": "^2.1.0", - "@types/markdown-it": "^14.1.2", - "@vitejs/plugin-vue": "^5.2.1", - "@vue/devtools-api": "^7.7.0", - "@vue/shared": "^3.5.13", - "@vueuse/core": "^12.4.0", - "@vueuse/integrations": "^12.4.0", - "focus-trap": "^7.6.4", - "mark.js": "8.11.1", - "minisearch": "^7.1.1", - "shiki": "^2.1.0", - "vite": "^5.4.14", - "vue": "^3.5.13" - }, - "bin": { - "vitepress": "bin/vitepress.js" - }, - "peerDependencies": { - "markdown-it-mathjax3": "^4", - "postcss": "^8" - }, - "peerDependenciesMeta": { - "markdown-it-mathjax3": { - "optional": true - }, - "postcss": { - "optional": true - } + "handlebars": "^4.7.6", + "vite": "^5.0.0" } }, - "node_modules/vitepress/node_modules/@esbuild/aix-ppc64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/aix-ppc64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", @@ -12137,7 +12176,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/android-arm": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/android-arm": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", @@ -12154,7 +12193,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/android-arm64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/android-arm64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", @@ -12171,7 +12210,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/android-x64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/android-x64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", @@ -12188,7 +12227,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/darwin-arm64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/darwin-arm64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", @@ -12205,7 +12244,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/darwin-x64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/darwin-x64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", @@ -12222,7 +12261,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/freebsd-arm64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/freebsd-arm64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", @@ -12239,7 +12278,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/freebsd-x64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/freebsd-x64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", @@ -12256,7 +12295,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/linux-arm": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/linux-arm": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", @@ -12273,7 +12312,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/linux-arm64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/linux-arm64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", @@ -12290,7 +12329,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/linux-ia32": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/linux-ia32": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", @@ -12307,7 +12346,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/linux-loong64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/linux-loong64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", @@ -12324,7 +12363,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/linux-mips64el": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/linux-mips64el": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", @@ -12341,7 +12380,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/linux-ppc64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/linux-ppc64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", @@ -12358,7 +12397,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/linux-riscv64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/linux-riscv64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", @@ -12375,7 +12414,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/linux-s390x": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/linux-s390x": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", @@ -12392,7 +12431,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/linux-x64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/linux-x64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", @@ -12409,7 +12448,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/netbsd-x64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/netbsd-x64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", @@ -12426,7 +12465,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/openbsd-x64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/openbsd-x64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", @@ -12443,7 +12482,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/sunos-x64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/sunos-x64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", @@ -12460,7 +12499,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/win32-arm64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/win32-arm64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", @@ -12477,7 +12516,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/win32-ia32": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/win32-ia32": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", @@ -12494,7 +12533,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@esbuild/win32-x64": { + "node_modules/vite-plugin-handlebars/node_modules/@esbuild/win32-x64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", @@ -12511,21 +12550,7 @@ "node": ">=12" } }, - "node_modules/vitepress/node_modules/@vitejs/plugin-vue": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.4.tgz", - "integrity": "sha512-7Yx/SXSOcQq5HiiV3orevHUFn+pmMB4cgbEkDYgnkUWb0WfeQ/wa2yFv6D5ICiCQOVpjA7vYDXrC7AGO8yjDHA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "peerDependencies": { - "vite": "^5.0.0 || ^6.0.0", - "vue": "^3.2.25" - } - }, - "node_modules/vitepress/node_modules/esbuild": { + "node_modules/vite-plugin-handlebars/node_modules/esbuild": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", @@ -12564,13 +12589,12 @@ "@esbuild/win32-x64": "0.21.5" } }, - "node_modules/vitepress/node_modules/vite": { + "node_modules/vite-plugin-handlebars/node_modules/vite": { "version": "5.4.21", "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "esbuild": "^0.21.3", "postcss": "^8.4.43", @@ -12625,39 +12649,651 @@ } } }, - "node_modules/vitest": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.2.4.tgz", - "integrity": "sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==", + "node_modules/vite-plugin-node-polyfills": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/vite-plugin-node-polyfills/-/vite-plugin-node-polyfills-0.24.0.tgz", + "integrity": "sha512-GA9QKLH+vIM8NPaGA+o2t8PDfFUl32J8rUp1zQfMKVJQiNkOX4unE51tR6ppl6iKw5yOrDAdSH7r/UIFLCVhLw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@types/chai": "^5.2.2", - "@vitest/expect": "3.2.4", - "@vitest/mocker": "3.2.4", - "@vitest/pretty-format": "^3.2.4", - "@vitest/runner": "3.2.4", - "@vitest/snapshot": "3.2.4", - "@vitest/spy": "3.2.4", - "@vitest/utils": "3.2.4", - "chai": "^5.2.0", - "debug": "^4.4.1", - "expect-type": "^1.2.1", - "magic-string": "^0.30.17", - "pathe": "^2.0.3", - "picomatch": "^4.0.2", - "std-env": "^3.9.0", - "tinybench": "^2.9.0", - "tinyexec": "^0.3.2", - "tinyglobby": "^0.2.14", - "tinypool": "^1.1.1", - "tinyrainbow": "^2.0.0", - "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0", - "vite-node": "3.2.4", - "why-is-node-running": "^2.3.0" + "@rollup/plugin-inject": "^5.0.5", + "node-stdlib-browser": "^1.2.0" }, - "bin": { + "funding": { + "url": "https://github.com/sponsors/davidmyersdev" + }, + "peerDependencies": { + "vite": "^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/vite-plugin-static-copy": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vite-plugin-static-copy/-/vite-plugin-static-copy-3.1.4.tgz", + "integrity": "sha512-iCmr4GSw4eSnaB+G8zc2f4dxSuDjbkjwpuBLLGvQYR9IW7rnDzftnUjOH5p4RYR+d4GsiBqXRvzuFhs5bnzVyw==", + "license": "MIT", + "dependencies": { + "chokidar": "^3.6.0", + "p-map": "^7.0.3", + "picocolors": "^1.1.1", + "tinyglobby": "^0.2.15" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/vite/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/vite/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/vitepress": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.6.4.tgz", + "integrity": "sha512-+2ym1/+0VVrbhNyRoFFesVvBvHAVMZMK0rw60E3X/5349M1GuVdKeazuksqopEdvkKwKGs21Q729jX81/bkBJg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@docsearch/css": "3.8.2", + "@docsearch/js": "3.8.2", + "@iconify-json/simple-icons": "^1.2.21", + "@shikijs/core": "^2.1.0", + "@shikijs/transformers": "^2.1.0", + "@shikijs/types": "^2.1.0", + "@types/markdown-it": "^14.1.2", + "@vitejs/plugin-vue": "^5.2.1", + "@vue/devtools-api": "^7.7.0", + "@vue/shared": "^3.5.13", + "@vueuse/core": "^12.4.0", + "@vueuse/integrations": "^12.4.0", + "focus-trap": "^7.6.4", + "mark.js": "8.11.1", + "minisearch": "^7.1.1", + "shiki": "^2.1.0", + "vite": "^5.4.14", + "vue": "^3.5.13" + }, + "bin": { + "vitepress": "bin/vitepress.js" + }, + "peerDependencies": { + "markdown-it-mathjax3": "^4", + "postcss": "^8" + }, + "peerDependenciesMeta": { + "markdown-it-mathjax3": { + "optional": true + }, + "postcss": { + "optional": true + } + } + }, + "node_modules/vitepress/node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vitepress/node_modules/@vitejs/plugin-vue": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.4.tgz", + "integrity": "sha512-7Yx/SXSOcQq5HiiV3orevHUFn+pmMB4cgbEkDYgnkUWb0WfeQ/wa2yFv6D5ICiCQOVpjA7vYDXrC7AGO8yjDHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/vitepress/node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/vitepress/node_modules/vite": { + "version": "5.4.21", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", + "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vitest": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.2.4.tgz", + "integrity": "sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/chai": "^5.2.2", + "@vitest/expect": "3.2.4", + "@vitest/mocker": "3.2.4", + "@vitest/pretty-format": "^3.2.4", + "@vitest/runner": "3.2.4", + "@vitest/snapshot": "3.2.4", + "@vitest/spy": "3.2.4", + "@vitest/utils": "3.2.4", + "chai": "^5.2.0", + "debug": "^4.4.1", + "expect-type": "^1.2.1", + "magic-string": "^0.30.17", + "pathe": "^2.0.3", + "picomatch": "^4.0.2", + "std-env": "^3.9.0", + "tinybench": "^2.9.0", + "tinyexec": "^0.3.2", + "tinyglobby": "^0.2.14", + "tinypool": "^1.1.1", + "tinyrainbow": "^2.0.0", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0", + "vite-node": "3.2.4", + "why-is-node-running": "^2.3.0" + }, + "bin": { "vitest": "vitest.mjs" }, "engines": { @@ -12914,6 +13550,13 @@ "node": ">=0.10.0" } }, + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", + "dev": true, + "license": "MIT" + }, "node_modules/wrap-ansi": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", diff --git a/package.json b/package.json index 3b9ae0a9c..30c10ae4a 100644 --- a/package.json +++ b/package.json @@ -1,12 +1,12 @@ { "name": "bento-pdf", "private": true, - "version": "1.15.4", + "version": "1.16.0", "license": "AGPL-3.0-only", "type": "module", "scripts": { "dev": "vite", - "build": "tsc && vite build", + "build": "tsc && vite build && NODE_OPTIONS='--max-old-space-size=4096' node scripts/generate-i18n-pages.mjs && node scripts/generate-sitemap.mjs", "build:with-docs": "npm run build && npm run docs:build && node scripts/include-docs-in-dist.js", "build:gzip": "COMPRESSION_MODE=g npm run build", "build:brotli": "COMPRESSION_MODE=b npm run build", @@ -57,6 +57,7 @@ "typescript-eslint": "^8.51.0", "vite": "^7.1.11", "vite-plugin-compression": "^0.5.1", + "vite-plugin-handlebars": "^2.0.0", "vite-plugin-node-polyfills": "^0.24.0", "vitepress": "^1.6.4", "vitest": "^3.2.4", @@ -64,7 +65,7 @@ }, "dependencies": { "@bentopdf/gs-wasm": "^0.1.0", - "@bentopdf/pymupdf-wasm": "^0.1.10", + "@bentopdf/pymupdf-wasm": "^0.11.12", "@fontsource/cedarville-cursive": "^5.2.7", "@fontsource/dancing-script": "^5.2.8", "@fontsource/dm-sans": "^5.2.8", @@ -72,6 +73,7 @@ "@fontsource/kalam": "^5.2.8", "@fontsource/lato": "^5.2.7", "@fontsource/merriweather": "^5.2.11", + "@kenjiuno/msgreader": "^1.27.1-alpha.1", "@matbee/libreoffice-converter": "^2.3.1", "@neslinesli93/qpdf-wasm": "^0.3.0", "@pdf-lib/fontkit": "^1.1.1", @@ -90,7 +92,7 @@ "i18next": "^25.7.2", "i18next-browser-languagedetector": "^8.2.0", "i18next-http-backend": "^3.0.2", - "jspdf": "^3.0.3", + "jspdf": "^4.0.0", "jspdf-autotable": "^5.0.2", "jszip": "^3.10.1", "lucide": "^0.546.0", @@ -112,6 +114,7 @@ "pdf-lib": "^1.17.1", "pdfjs-dist": "^5.4.296", "pdfkit": "^0.17.2", + "postal-mime": "^2.7.1", "sortablejs": "^1.15.6", "tailwindcss": "^4.1.14", "terser": "^5.44.0", diff --git a/pdf-converter.html b/pdf-converter.html index e09f67117..eb02e3d98 100644 --- a/pdf-converter.html +++ b/pdf-converter.html @@ -84,64 +84,7 @@ - + {{> navbar }}
@@ -539,116 +482,7 @@

- + {{> footer }} diff --git a/pdf-editor.html b/pdf-editor.html index 13a9f3c64..0e1a0ada9 100644 --- a/pdf-editor.html +++ b/pdf-editor.html @@ -84,64 +84,7 @@ - + {{> navbar }}
@@ -408,116 +351,7 @@

- + {{> footer }} diff --git a/pdf-merge-split.html b/pdf-merge-split.html index 6cbeef38a..a250c1158 100644 --- a/pdf-merge-split.html +++ b/pdf-merge-split.html @@ -95,64 +95,7 @@ - + {{> navbar }}
@@ -366,116 +309,7 @@

- + {{> footer }} diff --git a/pdf-security.html b/pdf-security.html index 6208ef06e..58db29aff 100644 --- a/pdf-security.html +++ b/pdf-security.html @@ -84,64 +84,7 @@ - + {{> navbar }}
@@ -343,116 +286,7 @@

- + {{> footer }} diff --git a/privacy.html b/privacy.html index 8d1dd2d1a..78de50c2f 100644 --- a/privacy.html +++ b/privacy.html @@ -77,97 +77,7 @@ - + {{> navbar }}
@@ -303,142 +213,7 @@

8. Contact Us

- + {{> footer }} diff --git a/public/locales/de/common.json b/public/locales/de/common.json index 750777db1..b128ae3fc 100644 --- a/public/locales/de/common.json +++ b/public/locales/de/common.json @@ -1,319 +1,323 @@ { - "nav": { - "home": "Startseite", - "about": "รœber uns", - "contact": "Kontakt", - "licensing": "Lizenzierung", - "allTools": "Alle Werkzeuge", - "openMainMenu": "Hauptmenรผ รถffnen", - "language": "Sprache" + "nav": { + "home": "Startseite", + "about": "รœber uns", + "contact": "Kontakt", + "licensing": "Lizenzierung", + "allTools": "Alle Werkzeuge", + "openMainMenu": "Hauptmenรผ รถffnen", + "language": "Sprache" + }, + "donation": { + "message": "Lieben Sie BentoPDF? Helfen Sie uns, es kostenlos und Open Source zu halten!", + "button": "Spenden" + }, + "hero": { + "title": "Das", + "pdfToolkit": "PDF-Toolkit", + "builtForPrivacy": "fรผr maximale Privatsphรคre", + "noSignups": "Keine Anmeldung", + "unlimitedUse": "Unbegrenzte Nutzung", + "worksOffline": "Funktioniert offline", + "startUsing": "Jetzt starten" + }, + "usedBy": { + "title": "Verwendet von Unternehmen und Mitarbeitern bei" + }, + "features": { + "title": "Warum", + "bentoPdf": "BentoPDF wรคhlen?", + "noSignup": { + "title": "Keine Anmeldung", + "description": "Sofort starten, keine Konten oder E-Mails erforderlich." }, - "hero": { - "title": "Das", - "pdfToolkit": "PDF-Toolkit", - "builtForPrivacy": "fรผr maximale Privatsphรคre", - "noSignups": "Keine Anmeldung", - "unlimitedUse": "Unbegrenzte Nutzung", - "worksOffline": "Funktioniert offline", - "startUsing": "Jetzt starten" - }, - "usedBy": { - "title": "Verwendet von Unternehmen und Mitarbeitern bei" - }, - "features": { - "title": "Warum", - "bentoPdf": "BentoPDF wรคhlen?", - "noSignup": { - "title": "Keine Anmeldung", - "description": "Sofort starten, keine Konten oder E-Mails erforderlich." - }, - "noUploads": { - "title": "Kein Upload", - "description": "100% clientseitig, Ihre Dateien verlassen nie Ihr Gerรคt." - }, - "foreverFree": { - "title": "Fรผr immer kostenlos", - "description": "Alle Werkzeuge, keine Testversionen, keine Bezahlschranken." - }, - "noLimits": { - "title": "Keine Limits", - "description": "Nutzen Sie so viel Sie wollen, ohne versteckte Grenzen." - }, - "batchProcessing": { - "title": "Stapelverarbeitung", - "description": "Verarbeiten Sie unbegrenzt viele PDFs auf einmal." - }, - "lightningFast": { - "title": "Blitzschnell", - "description": "PDFs sofort verarbeiten, ohne Wartezeiten." - } + "noUploads": { + "title": "Kein Upload", + "description": "100% clientseitig, Ihre Dateien verlassen nie Ihr Gerรคt." }, - "tools": { - "title": "Starten Sie mit", - "toolsLabel": "Werkzeugen", - "subtitle": "Klicken Sie auf ein Werkzeug, um den Datei-Uploader zu รถffnen", - "searchPlaceholder": "Werkzeug suchen (z.B. 'teilen', 'organisieren'...)", - "backToTools": "Zurรผck zu den Werkzeugen", - "firstLoadNotice": "Der erste Ladevorgang dauert einen Moment, da wir unsere Konvertierungs-Engine herunterladen. Danach erfolgt jedes Laden sofort." + "foreverFree": { + "title": "Fรผr immer kostenlos", + "description": "Alle Werkzeuge, keine Testversionen, keine Bezahlschranken." }, - "upload": { - "clickToSelect": "Klicken Sie, um eine Datei auszuwรคhlen", - "orDragAndDrop": "oder per Drag & Drop", - "pdfOrImages": "PDFs oder Bilder", - "filesNeverLeave": "Ihre Dateien verlassen nie Ihr Gerรคt.", - "addMore": "Weitere Dateien hinzufรผgen", - "clearAll": "Alle lรถschen" + "noLimits": { + "title": "Keine Limits", + "description": "Nutzen Sie so viel Sie wollen, ohne versteckte Grenzen." }, - "loader": { - "processing": "Verarbeitung..." + "batchProcessing": { + "title": "Stapelverarbeitung", + "description": "Verarbeiten Sie unbegrenzt viele PDFs auf einmal." }, - "alert": { - "title": "Hinweis", - "ok": "OK" - }, - "preview": { - "title": "Dokumentvorschau", - "downloadAsPdf": "Als PDF herunterladen", - "close": "SchlieรŸen" + "lightningFast": { + "title": "Blitzschnell", + "description": "PDFs sofort verarbeiten, ohne Wartezeiten." + } + }, + "tools": { + "title": "Starten Sie mit", + "toolsLabel": "Werkzeugen", + "subtitle": "Klicken Sie auf ein Werkzeug, um den Datei-Uploader zu รถffnen", + "searchPlaceholder": "Werkzeug suchen (z.B. 'teilen', 'organisieren'...)", + "backToTools": "Zurรผck zu den Werkzeugen", + "firstLoadNotice": "Der erste Ladevorgang dauert einen Moment, da wir unsere Konvertierungs-Engine herunterladen. Danach erfolgt jedes Laden sofort." + }, + "upload": { + "clickToSelect": "Klicken Sie, um eine Datei auszuwรคhlen", + "orDragAndDrop": "oder per Drag & Drop", + "pdfOrImages": "PDFs oder Bilder", + "filesNeverLeave": "Ihre Dateien verlassen nie Ihr Gerรคt.", + "addMore": "Weitere Dateien hinzufรผgen", + "clearAll": "Alle lรถschen" + }, + "loader": { + "processing": "Verarbeitung..." + }, + "alert": { + "title": "Hinweis", + "ok": "OK" + }, + "preview": { + "title": "Dokumentvorschau", + "downloadAsPdf": "Als PDF herunterladen", + "close": "SchlieรŸen" + }, + "settings": { + "title": "Einstellungen", + "shortcuts": "Tastenkรผrzel", + "preferences": "Voreinstellungen", + "displayPreferences": "Anzeige-Einstellungen", + "searchShortcuts": "Tastenkรผrzel suchen...", + "shortcutsInfo": "Halten Sie Tasten gedrรผckt, um ein Kรผrzel festzulegen. ร„nderungen werden automatisch gespeichert.", + "shortcutsWarning": "โš ๏ธ Vermeiden Sie gรคngige Browser-Tastenkรผrzel (Strg+W, Strg+T, Strg+N usw.), da diese mรถglicherweise nicht zuverlรคssig funktionieren.", + "import": "Importieren", + "export": "Exportieren", + "resetToDefaults": "Auf Standard zurรผcksetzen", + "fullWidthMode": "Vollbreite-Modus", + "fullWidthDescription": "Verwenden Sie die volle Bildschirmbreite fรผr alle Werkzeuge anstelle eines zentrierten Containers", + "settingsAutoSaved": "Einstellungen werden automatisch gespeichert", + "clickToSet": "Klicken zum Festlegen", + "pressKeys": "Tasten drรผcken...", + "warnings": { + "alreadyInUse": "Tastenkombination bereits vergeben", + "assignedTo": "ist bereits zugewiesen an:", + "chooseDifferent": "Bitte wรคhlen Sie eine andere Tastenkombination.", + "reserved": "Warnung: Reservierte Tastenkombination", + "commonlyUsed": "wird hรคufig verwendet fรผr:", + "unreliable": "Diese Tastenkombination funktioniert mรถglicherweise nicht zuverlรคssig oder kรถnnte mit Browser-/Systemfunktionen in Konflikt geraten.", + "useAnyway": "Mรถchten Sie sie trotzdem verwenden?", + "resetTitle": "Tastenkombinationen zurรผcksetzen", + "resetMessage": "Sind Sie sicher, dass Sie alle Tastenkombinationen auf die Standardwerte zurรผcksetzen mรถchten?

Diese Aktion kann nicht rรผckgรคngig gemacht werden.", + "importSuccessTitle": "Import erfolgreich", + "importSuccessMessage": "Tastenkombinationen erfolgreich importiert!", + "importFailTitle": "Import fehlgeschlagen", + "importFailMessage": "Fehler beim Importieren der Tastenkombinationen. Ungรผltiges Dateiformat." + } + }, + "warning": { + "title": "Warnung", + "cancel": "Abbrechen", + "proceed": "Fortfahren" + }, + "compliance": { + "title": "Ihre Daten verlassen nie Ihr Gerรคt", + "weKeep": "Wir schรผtzen", + "yourInfoSafe": "Ihre Informationen", + "byFollowingStandards": "nach globalen Sicherheitsstandards.", + "processingLocal": "Die gesamte Verarbeitung erfolgt lokal auf Ihrem Gerรคt.", + "gdpr": { + "title": "DSGVO-konform", + "description": "Schรผtzt die personenbezogenen Daten und die Privatsphรคre von Personen innerhalb der Europรคischen Union." }, - "settings": { - "title": "Einstellungen", - "shortcuts": "Tastenkรผrzel", - "preferences": "Voreinstellungen", - "displayPreferences": "Anzeige-Einstellungen", - "searchShortcuts": "Tastenkรผrzel suchen...", - "shortcutsInfo": "Halten Sie Tasten gedrรผckt, um ein Kรผrzel festzulegen. ร„nderungen werden automatisch gespeichert.", - "shortcutsWarning": "โš ๏ธ Vermeiden Sie gรคngige Browser-Tastenkรผrzel (Strg+W, Strg+T, Strg+N usw.), da diese mรถglicherweise nicht zuverlรคssig funktionieren.", - "import": "Importieren", - "export": "Exportieren", - "resetToDefaults": "Auf Standard zurรผcksetzen", - "fullWidthMode": "Vollbreite-Modus", - "fullWidthDescription": "Verwenden Sie die volle Bildschirmbreite fรผr alle Werkzeuge anstelle eines zentrierten Containers", - "settingsAutoSaved": "Einstellungen werden automatisch gespeichert", - "clickToSet": "Klicken zum Festlegen", - "pressKeys": "Tasten drรผcken...", - "warnings": { - "alreadyInUse": "Tastenkombination bereits vergeben", - "assignedTo": "ist bereits zugewiesen an:", - "chooseDifferent": "Bitte wรคhlen Sie eine andere Tastenkombination.", - "reserved": "Warnung: Reservierte Tastenkombination", - "commonlyUsed": "wird hรคufig verwendet fรผr:", - "unreliable": "Diese Tastenkombination funktioniert mรถglicherweise nicht zuverlรคssig oder kรถnnte mit Browser-/Systemfunktionen in Konflikt geraten.", - "useAnyway": "Mรถchten Sie sie trotzdem verwenden?", - "resetTitle": "Tastenkombinationen zurรผcksetzen", - "resetMessage": "Sind Sie sicher, dass Sie alle Tastenkombinationen auf die Standardwerte zurรผcksetzen mรถchten?

Diese Aktion kann nicht rรผckgรคngig gemacht werden.", - "importSuccessTitle": "Import erfolgreich", - "importSuccessMessage": "Tastenkombinationen erfolgreich importiert!", - "importFailTitle": "Import fehlgeschlagen", - "importFailMessage": "Fehler beim Importieren der Tastenkombinationen. Ungรผltiges Dateiformat." - } + "ccpa": { + "title": "CCPA-konform", + "description": "Gibt Einwohnern Kaliforniens Rechte darรผber, wie ihre persรถnlichen Daten gesammelt, verwendet und weitergegeben werden." }, - "warning": { - "title": "Warnung", - "cancel": "Abbrechen", - "proceed": "Fortfahren" + "hipaa": { + "title": "HIPAA-konform", + "description": "Legt SchutzmaรŸnahmen fรผr den Umgang mit sensiblen Gesundheitsinformationen im US-Gesundheitssystem fest." + } + }, + "faq": { + "title": "Hรคufig gestellte", + "questions": "Fragen", + "isFree": { + "question": "Ist BentoPDF wirklich kostenlos?", + "answer": "Ja, absolut. Alle Werkzeuge auf BentoPDF sind zu 100% kostenlos nutzbar, ohne Dateilimits, ohne Anmeldung und ohne Wasserzeichen. Wir glauben, dass jeder Zugang zu einfachen, leistungsstarken PDF-Werkzeugen verdient, ohne Bezahlschranke." }, - "compliance": { - "title": "Ihre Daten verlassen nie Ihr Gerรคt", - "weKeep": "Wir schรผtzen", - "yourInfoSafe": "Ihre Informationen", - "byFollowingStandards": "nach globalen Sicherheitsstandards.", - "processingLocal": "Die gesamte Verarbeitung erfolgt lokal auf Ihrem Gerรคt.", - "gdpr": { - "title": "DSGVO-konform", - "description": "Schรผtzt die personenbezogenen Daten und die Privatsphรคre von Personen innerhalb der Europรคischen Union." - }, - "ccpa": { - "title": "CCPA-konform", - "description": "Gibt Einwohnern Kaliforniens Rechte darรผber, wie ihre persรถnlichen Daten gesammelt, verwendet und weitergegeben werden." - }, - "hipaa": { - "title": "HIPAA-konform", - "description": "Legt SchutzmaรŸnahmen fรผr den Umgang mit sensiblen Gesundheitsinformationen im US-Gesundheitssystem fest." - } + "areFilesSecure": { + "question": "Sind meine Dateien sicher? Wo werden sie verarbeitet?", + "answer": "Ihre Dateien sind so sicher wie mรถglich, da sie nie Ihren Computer verlassen. Die gesamte Verarbeitung erfolgt direkt in Ihrem Webbrowser (clientseitig). Wir laden Ihre Dateien nie auf einen Server hoch, sodass Sie die vollstรคndige Privatsphรคre und Kontrolle รผber Ihre Dokumente behalten." }, - "faq": { - "title": "Hรคufig gestellte", - "questions": "Fragen", - "isFree": { - "question": "Ist BentoPDF wirklich kostenlos?", - "answer": "Ja, absolut. Alle Werkzeuge auf BentoPDF sind zu 100% kostenlos nutzbar, ohne Dateilimits, ohne Anmeldung und ohne Wasserzeichen. Wir glauben, dass jeder Zugang zu einfachen, leistungsstarken PDF-Werkzeugen verdient, ohne Bezahlschranke." - }, - "areFilesSecure": { - "question": "Sind meine Dateien sicher? Wo werden sie verarbeitet?", - "answer": "Ihre Dateien sind so sicher wie mรถglich, da sie nie Ihren Computer verlassen. Die gesamte Verarbeitung erfolgt direkt in Ihrem Webbrowser (clientseitig). Wir laden Ihre Dateien nie auf einen Server hoch, sodass Sie die vollstรคndige Privatsphรคre und Kontrolle รผber Ihre Dokumente behalten." - }, - "platforms": { - "question": "Funktioniert es auf Mac, Windows und Mobilgerรคten?", - "answer": "Ja! Da BentoPDF vollstรคndig in Ihrem Browser lรคuft, funktioniert es auf jedem Betriebssystem mit einem modernen Webbrowser, einschlieรŸlich Windows, macOS, Linux, iOS und Android." - }, - "gdprCompliant": { - "question": "Ist BentoPDF DSGVO-konform?", - "answer": "Ja. BentoPDF ist vollstรคndig DSGVO-konform. Da die gesamte Dateiverarbeitung lokal in Ihrem Browser erfolgt und wir Ihre Dateien nie sammeln oder รผbertragen, haben wir keinen Zugang zu Ihren Daten. Dies stellt sicher, dass Sie immer die Kontrolle รผber Ihre Dokumente haben." - }, - "dataStorage": { - "question": "Speichern oder verfolgen Sie meine Dateien?", - "answer": "Nein. Wir speichern, verfolgen oder protokollieren Ihre Dateien niemals. Alles, was Sie auf BentoPDF tun, geschieht im Speicher Ihres Browsers und verschwindet, sobald Sie die Seite schlieรŸen. Es gibt keine Uploads, keine Verlaufsprotokolle und keine Server." - }, - "different": { - "question": "Was unterscheidet BentoPDF von anderen PDF-Werkzeugen?", - "answer": "Die meisten PDF-Werkzeuge laden Ihre Dateien zur Verarbeitung auf einen Server hoch. BentoPDF tut das nie. Wir verwenden sichere, moderne Webtechnologie, um Ihre Dateien direkt in Ihrem Browser zu verarbeiten. Das bedeutet schnellere Leistung, stรคrkere Privatsphรคre und vollstรคndige Sicherheit." - }, - "browserBased": { - "question": "Wie schรผtzt mich die browserbasierte Verarbeitung?", - "answer": "Durch die vollstรคndige Ausfรผhrung in Ihrem Browser stellt BentoPDF sicher, dass Ihre Dateien nie Ihr Gerรคt verlassen. Dies eliminiert die Risiken von Server-Hacks, Datenschutzverletzungen oder unbefugtem Zugriff. Ihre Dateien bleiben Ihre โ€” immer." - }, - "analytics": { - "question": "Verwenden Sie Cookies oder Analysen, um mich zu verfolgen?", - "answer": "Uns liegt Ihre Privatsphรคre am Herzen. BentoPDF verfolgt keine persรถnlichen Informationen. Wir verwenden Simple Analytics ausschlieรŸlich, um anonyme Besucherzahlen zu sehen. Das bedeutet, wir kรถnnen wissen, wie viele Benutzer unsere Seite besuchen, aber wir wissen nie, wer Sie sind. Simple Analytics ist vollstรคndig DSGVO-konform und respektiert Ihre Privatsphรคre." - } + "platforms": { + "question": "Funktioniert es auf Mac, Windows und Mobilgerรคten?", + "answer": "Ja! Da BentoPDF vollstรคndig in Ihrem Browser lรคuft, funktioniert es auf jedem Betriebssystem mit einem modernen Webbrowser, einschlieรŸlich Windows, macOS, Linux, iOS und Android." }, - "testimonials": { - "title": "Was unsere", - "users": "Nutzer", - "say": "sagen" + "gdprCompliant": { + "question": "Ist BentoPDF DSGVO-konform?", + "answer": "Ja. BentoPDF ist vollstรคndig DSGVO-konform. Da die gesamte Dateiverarbeitung lokal in Ihrem Browser erfolgt und wir Ihre Dateien nie sammeln oder รผbertragen, haben wir keinen Zugang zu Ihren Daten. Dies stellt sicher, dass Sie immer die Kontrolle รผber Ihre Dokumente haben." }, - "support": { - "title": "Gefรคllt Ihnen meine Arbeit?", - "description": "BentoPDF ist ein Leidenschaftsprojekt, entwickelt um ein kostenloses, privates und leistungsstarkes PDF-Toolkit fรผr alle bereitzustellen. Wenn Sie es nรผtzlich finden, erwรคgen Sie, die Entwicklung zu unterstรผtzen. Jeder Kaffee hilft!", - "buyMeCoffee": "Kauf mir einen Kaffee" + "dataStorage": { + "question": "Speichern oder verfolgen Sie meine Dateien?", + "answer": "Nein. Wir speichern, verfolgen oder protokollieren Ihre Dateien niemals. Alles, was Sie auf BentoPDF tun, geschieht im Speicher Ihres Browsers und verschwindet, sobald Sie die Seite schlieรŸen. Es gibt keine Uploads, keine Verlaufsprotokolle und keine Server." }, - "footer": { - "copyright": "ยฉ 2025 BentoPDF. Alle Rechte vorbehalten.", - "version": "Version", - "company": "Unternehmen", - "aboutUs": "รœber uns", - "faqLink": "FAQ", - "contactUs": "Kontakt", - "legal": "Rechtliches", - "termsAndConditions": "Nutzungsbedingungen", - "privacyPolicy": "Datenschutzrichtlinie", - "followUs": "Folgen Sie uns" + "different": { + "question": "Was unterscheidet BentoPDF von anderen PDF-Werkzeugen?", + "answer": "Die meisten PDF-Werkzeuge laden Ihre Dateien zur Verarbeitung auf einen Server hoch. BentoPDF tut das nie. Wir verwenden sichere, moderne Webtechnologie, um Ihre Dateien direkt in Ihrem Browser zu verarbeiten. Das bedeutet schnellere Leistung, stรคrkere Privatsphรคre und vollstรคndige Sicherheit." }, - "merge": { - "title": "PDFs zusammenfรผhren", - "description": "Kombinieren Sie ganze Dateien oder wรคhlen Sie bestimmte Seiten zum Zusammenfรผhren in ein neues Dokument.", - "fileMode": "Datei-Modus", - "pageMode": "Seiten-Modus", - "howItWorks": "So funktioniert es:", - "fileModeInstructions": [ - "Klicken und ziehen Sie das Symbol, um die Reihenfolge der Dateien zu รคndern.", - "Im Feld \"Seiten\" fรผr jede Datei kรถnnen Sie Bereiche angeben (z.B. \"1-3, 5\"), um nur diese Seiten zusammenzufรผhren.", - "Lassen Sie das Feld \"Seiten\" leer, um alle Seiten dieser Datei einzuschlieรŸen." - ], - "pageModeInstructions": [ - "Alle Seiten Ihrer hochgeladenen PDFs werden unten angezeigt.", - "Ziehen Sie einfach die einzelnen Seitenvorschauen per Drag & Drop, um die gewรผnschte Reihenfolge fรผr Ihre neue Datei zu erstellen." - ], - "mergePdfs": "PDFs zusammenfรผhren" + "browserBased": { + "question": "Wie schรผtzt mich die browserbasierte Verarbeitung?", + "answer": "Durch die vollstรคndige Ausfรผhrung in Ihrem Browser stellt BentoPDF sicher, dass Ihre Dateien nie Ihr Gerรคt verlassen. Dies eliminiert die Risiken von Server-Hacks, Datenschutzverletzungen oder unbefugtem Zugriff. Ihre Dateien bleiben Ihre โ€” immer." }, - "common": { - "page": "Seite", - "pages": "Seiten", - "of": "von", - "download": "Herunterladen", - "cancel": "Abbrechen", - "save": "Speichern", - "delete": "Lรถschen", - "edit": "Bearbeiten", - "add": "Hinzufรผgen", - "remove": "Entfernen", - "loading": "Laden...", - "error": "Fehler", - "success": "Erfolg", - "file": "Datei", - "files": "Dateien" + "analytics": { + "question": "Verwenden Sie Cookies oder Analysen, um mich zu verfolgen?", + "answer": "Uns liegt Ihre Privatsphรคre am Herzen. BentoPDF verfolgt keine persรถnlichen Informationen. Wir verwenden Simple Analytics ausschlieรŸlich, um anonyme Besucherzahlen zu sehen. Das bedeutet, wir kรถnnen wissen, wie viele Benutzer unsere Seite besuchen, aber wir wissen nie, wer Sie sind. Simple Analytics ist vollstรคndig DSGVO-konform und respektiert Ihre Privatsphรคre." + } + }, + "testimonials": { + "title": "Was unsere", + "users": "Nutzer", + "say": "sagen" + }, + "support": { + "title": "Gefรคllt Ihnen meine Arbeit?", + "description": "BentoPDF ist ein Leidenschaftsprojekt, entwickelt um ein kostenloses, privates und leistungsstarkes PDF-Toolkit fรผr alle bereitzustellen. Wenn Sie es nรผtzlich finden, erwรคgen Sie, die Entwicklung zu unterstรผtzen. Jeder Kaffee hilft!", + "buyMeCoffee": "Kauf mir einen Kaffee" + }, + "footer": { + "copyright": "ยฉ 2026 BentoPDF. Alle Rechte vorbehalten.", + "version": "Version", + "company": "Unternehmen", + "aboutUs": "รœber uns", + "faqLink": "FAQ", + "contactUs": "Kontakt", + "legal": "Rechtliches", + "termsAndConditions": "Nutzungsbedingungen", + "privacyPolicy": "Datenschutzrichtlinie", + "followUs": "Folgen Sie uns" + }, + "merge": { + "title": "PDFs zusammenfรผhren", + "description": "Kombinieren Sie ganze Dateien oder wรคhlen Sie bestimmte Seiten zum Zusammenfรผhren in ein neues Dokument.", + "fileMode": "Datei-Modus", + "pageMode": "Seiten-Modus", + "howItWorks": "So funktioniert es:", + "fileModeInstructions": [ + "Klicken und ziehen Sie das Symbol, um die Reihenfolge der Dateien zu รคndern.", + "Im Feld \"Seiten\" fรผr jede Datei kรถnnen Sie Bereiche angeben (z.B. \"1-3, 5\"), um nur diese Seiten zusammenzufรผhren.", + "Lassen Sie das Feld \"Seiten\" leer, um alle Seiten dieser Datei einzuschlieรŸen." + ], + "pageModeInstructions": [ + "Alle Seiten Ihrer hochgeladenen PDFs werden unten angezeigt.", + "Ziehen Sie einfach die einzelnen Seitenvorschauen per Drag & Drop, um die gewรผnschte Reihenfolge fรผr Ihre neue Datei zu erstellen." + ], + "mergePdfs": "PDFs zusammenfรผhren" + }, + "common": { + "page": "Seite", + "pages": "Seiten", + "of": "von", + "download": "Herunterladen", + "cancel": "Abbrechen", + "save": "Speichern", + "delete": "Lรถschen", + "edit": "Bearbeiten", + "add": "Hinzufรผgen", + "remove": "Entfernen", + "loading": "Laden...", + "error": "Fehler", + "success": "Erfolg", + "file": "Datei", + "files": "Dateien" + }, + "about": { + "hero": { + "title": "Wir glauben PDF-Werkzeuge sollten", + "subtitle": "schnell, privat und kostenlos sein.", + "noCompromises": "Ohne Kompromisse." }, - "about": { - "hero": { - "title": "Wir glauben PDF-Werkzeuge sollten", - "subtitle": "schnell, privat und kostenlos sein.", - "noCompromises": "Ohne Kompromisse." - }, - "mission": { - "title": "Unsere Mission", - "description": "Die umfassendste PDF-Toolbox bereitzustellen, die Ihre Privatsphรคre respektiert und niemals eine Bezahlung verlangt. Wir glauben, dass wichtige Dokumentenwerkzeuge fรผr jeden, รผberall und ohne Barrieren zugรคnglich sein sollten." - }, - "philosophy": { - "label": "Unsere Kernphilosophie", - "title": "Privatsphรคre zuerst. Immer.", - "description": "In einer Zeit, in der Daten eine Ware sind, gehen wir einen anderen Weg. Die gesamte Verarbeitung fรผr Bentopdf-Werkzeuge erfolgt lokal in Ihrem Browser. Das bedeutet, Ihre Dateien berรผhren niemals unsere Server, wir sehen Ihre Dokumente nie und verfolgen nicht, was Sie tun. Ihre Dokumente bleiben vollstรคndig und unmissverstรคndlich privat. Es ist nicht nur eine Funktion; es ist unser Fundament." - }, - "whyBentopdf": { - "title": "Warum", - "speed": { - "title": "Fรผr Geschwindigkeit gebaut", - "description": "Kein Warten auf Uploads oder Downloads zu einem Server. Durch die Verarbeitung von Dateien direkt in Ihrem Browser mit modernen Webtechnologien wie WebAssembly bieten wir unvergleichliche Geschwindigkeit fรผr alle unsere Werkzeuge." - }, - "free": { - "title": "Komplett kostenlos", - "description": "Keine Testversionen, keine Abonnements, keine versteckten Gebรผhren und keine \"Premium\"-Funktionen als Geiseln. Wir glauben, leistungsstarke PDF-Werkzeuge sollten ein รถffentliches Gut sein, kein Profitcenter." - }, - "noAccount": { - "title": "Kein Konto erforderlich", - "description": "Beginnen Sie sofort mit der Nutzung eines beliebigen Werkzeugs. Wir brauchen weder Ihre E-Mail noch ein Passwort oder persรถnliche Informationen. Ihr Workflow sollte reibungslos und anonym sein." - }, - "openSource": { - "title": "Open-Source-Geist", - "description": "Mit Transparenz im Blick entwickelt. Wir nutzen groรŸartige Open-Source-Bibliotheken wie PDF-lib und PDF.js und glauben an die gemeinschaftsgetriebene Bemรผhung, leistungsstarke Werkzeuge fรผr alle zugรคnglich zu machen." - } - }, - "cta": { - "title": "Bereit loszulegen?", - "description": "SchlieรŸen Sie sich Tausenden von Benutzern an, die Bentopdf fรผr ihre tรคglichen Dokumentenbedรผrfnisse vertrauen. Erleben Sie den Unterschied, den Privatsphรคre und Leistung machen kรถnnen.", - "button": "Alle Werkzeuge erkunden" - } + "mission": { + "title": "Unsere Mission", + "description": "Die umfassendste PDF-Toolbox bereitzustellen, die Ihre Privatsphรคre respektiert und niemals eine Bezahlung verlangt. Wir glauben, dass wichtige Dokumentenwerkzeuge fรผr jeden, รผberall und ohne Barrieren zugรคnglich sein sollten." }, - "contact": { - "title": "Kontakt aufnehmen", - "subtitle": "Wir freuen uns, von Ihnen zu hรถren. Ob Sie eine Frage, Feedback oder eine Funktionsanfrage haben, zรถgern Sie nicht, uns zu kontaktieren.", - "email": "Sie kรถnnen uns direkt per E-Mail erreichen unter:" + "philosophy": { + "label": "Unsere Kernphilosophie", + "title": "Privatsphรคre zuerst. Immer.", + "description": "In einer Zeit, in der Daten eine Ware sind, gehen wir einen anderen Weg. Die gesamte Verarbeitung fรผr Bentopdf-Werkzeuge erfolgt lokal in Ihrem Browser. Das bedeutet, Ihre Dateien berรผhren niemals unsere Server, wir sehen Ihre Dokumente nie und verfolgen nicht, was Sie tun. Ihre Dokumente bleiben vollstรคndig und unmissverstรคndlich privat. Es ist nicht nur eine Funktion; es ist unser Fundament." }, - "licensing": { - "title": "Lizenzierung fรผr", - "subtitle": "Wรคhlen Sie die Lizenz, die Ihren Anforderungen entspricht." + "whyBentopdf": { + "title": "Warum", + "speed": { + "title": "Fรผr Geschwindigkeit gebaut", + "description": "Kein Warten auf Uploads oder Downloads zu einem Server. Durch die Verarbeitung von Dateien direkt in Ihrem Browser mit modernen Webtechnologien wie WebAssembly bieten wir unvergleichliche Geschwindigkeit fรผr alle unsere Werkzeuge." + }, + "free": { + "title": "Komplett kostenlos", + "description": "Keine Testversionen, keine Abonnements, keine versteckten Gebรผhren und keine \"Premium\"-Funktionen als Geiseln. Wir glauben, leistungsstarke PDF-Werkzeuge sollten ein รถffentliches Gut sein, kein Profitcenter." + }, + "noAccount": { + "title": "Kein Konto erforderlich", + "description": "Beginnen Sie sofort mit der Nutzung eines beliebigen Werkzeugs. Wir brauchen weder Ihre E-Mail noch ein Passwort oder persรถnliche Informationen. Ihr Workflow sollte reibungslos und anonym sein." + }, + "openSource": { + "title": "Open-Source-Geist", + "description": "Mit Transparenz im Blick entwickelt. Wir nutzen groรŸartige Open-Source-Bibliotheken wie PDF-lib und PDF.js und glauben an die gemeinschaftsgetriebene Bemรผhung, leistungsstarke Werkzeuge fรผr alle zugรคnglich zu machen." + } }, - "multiTool": { - "uploadPdfs": "PDFs hochladen", - "upload": "Hochladen", - "addBlankPage": "Leere Seite hinzufรผgen", - "edit": "Bearbeiten:", - "undo": "Rรผckgรคngig", - "redo": "Wiederholen", - "reset": "Zurรผcksetzen", - "selection": "Auswahl:", - "selectAll": "Alles auswรคhlen", - "deselectAll": "Auswahl aufheben", - "rotate": "Drehen:", - "rotateLeft": "Links", - "rotateRight": "Rechts", - "transform": "Transformieren:", - "duplicate": "Duplizieren", - "split": "Teilen", - "clear": "Lรถschen:", - "delete": "Entfernen", - "download": "Download:", - "downloadSelected": "Auswahl herunterladen", - "exportPdf": "PDF exportieren", - "uploadPdfFiles": "PDF-Dateien auswรคhlen", - "dragAndDrop": "PDF-Dateien hierhin ziehen oder klicken zum Auswรคhlen", - "selectFiles": "Dateien auswรคhlen", - "renderingPages": "Seiten werden gerendert...", - "actions": { - "duplicatePage": "Diese Seite duplizieren", - "deletePage": "Diese Seite lรถschen", - "insertPdf": "PDF nach dieser Seite einfรผgen", - "toggleSplit": "Trennung nach dieser Seite umschalten" - }, - "pleaseWait": "Bitte warten", - "pagesRendering": "Seiten werden noch gerendert. Bitte warten...", - "noPagesSelected": "Keine Seiten ausgewรคhlt", - "selectOnePage": "Bitte wรคhlen Sie mindestens eine Seite zum Herunterladen aus.", - "noPages": "Keine Seiten", - "noPagesToExport": "Keine Seiten zum Exportieren vorhanden.", - "renderingTitle": "Seiten-Vorschau wird gerendert", - "errorRendering": "Fehler beim Rendern der Seitenvorschau", - "error": "Fehler", - "failedToLoad": "Laden fehlgeschlagen" + "cta": { + "title": "Bereit loszulegen?", + "description": "SchlieรŸen Sie sich Tausenden von Benutzern an, die Bentopdf fรผr ihre tรคglichen Dokumentenbedรผrfnisse vertrauen. Erleben Sie den Unterschied, den Privatsphรคre und Leistung machen kรถnnen.", + "button": "Alle Werkzeuge erkunden" } -} \ No newline at end of file + }, + "contact": { + "title": "Kontakt aufnehmen", + "subtitle": "Wir freuen uns, von Ihnen zu hรถren. Ob Sie eine Frage, Feedback oder eine Funktionsanfrage haben, zรถgern Sie nicht, uns zu kontaktieren.", + "email": "Sie kรถnnen uns direkt per E-Mail erreichen unter:" + }, + "licensing": { + "title": "Lizenzierung fรผr", + "subtitle": "Wรคhlen Sie die Lizenz, die Ihren Anforderungen entspricht." + }, + "multiTool": { + "uploadPdfs": "PDFs hochladen", + "upload": "Hochladen", + "addBlankPage": "Leere Seite hinzufรผgen", + "edit": "Bearbeiten:", + "undo": "Rรผckgรคngig", + "redo": "Wiederholen", + "reset": "Zurรผcksetzen", + "selection": "Auswahl:", + "selectAll": "Alles auswรคhlen", + "deselectAll": "Auswahl aufheben", + "rotate": "Drehen:", + "rotateLeft": "Links", + "rotateRight": "Rechts", + "transform": "Transformieren:", + "duplicate": "Duplizieren", + "split": "Teilen", + "clear": "Lรถschen:", + "delete": "Entfernen", + "download": "Download:", + "downloadSelected": "Auswahl herunterladen", + "exportPdf": "PDF exportieren", + "uploadPdfFiles": "PDF-Dateien auswรคhlen", + "dragAndDrop": "PDF-Dateien hierhin ziehen oder klicken zum Auswรคhlen", + "selectFiles": "Dateien auswรคhlen", + "renderingPages": "Seiten werden gerendert...", + "actions": { + "duplicatePage": "Diese Seite duplizieren", + "deletePage": "Diese Seite lรถschen", + "insertPdf": "PDF nach dieser Seite einfรผgen", + "toggleSplit": "Trennung nach dieser Seite umschalten" + }, + "pleaseWait": "Bitte warten", + "pagesRendering": "Seiten werden noch gerendert. Bitte warten...", + "noPagesSelected": "Keine Seiten ausgewรคhlt", + "selectOnePage": "Bitte wรคhlen Sie mindestens eine Seite zum Herunterladen aus.", + "noPages": "Keine Seiten", + "noPagesToExport": "Keine Seiten zum Exportieren vorhanden.", + "renderingTitle": "Seiten-Vorschau wird gerendert", + "errorRendering": "Fehler beim Rendern der Seitenvorschau", + "error": "Fehler", + "failedToLoad": "Laden fehlgeschlagen" + } +} diff --git a/public/locales/de/tools.json b/public/locales/de/tools.json index 11f9630d8..769e59194 100644 --- a/public/locales/de/tools.json +++ b/public/locales/de/tools.json @@ -1,519 +1,533 @@ { - "categories": { - "popularTools": "Beliebte Werkzeuge", - "editAnnotate": "Bearbeiten & Annotieren", - "convertToPdf": "In PDF konvertieren", - "convertFromPdf": "Aus PDF konvertieren", - "organizeManage": "Organisieren & Verwalten", - "optimizeRepair": "Optimieren & Reparieren", - "securePdf": "PDF sichern" - }, - "pdfMultiTool": { - "name": "PDF Multi-Werkzeug", - "subtitle": "Zusammenfรผhren, Teilen, Organisieren, Lรถschen, Drehen, Leere Seiten hinzufรผgen, Extrahieren und Duplizieren in einer einheitlichen Oberflรคche." - }, - "mergePdf": { - "name": "PDF zusammenfรผhren", - "subtitle": "Mehrere PDFs zu einer Datei kombinieren. Lesezeichen werden beibehalten." - }, - "splitPdf": { - "name": "PDF teilen", - "subtitle": "Einen Seitenbereich in eine neue PDF extrahieren." - }, - "compressPdf": { - "name": "PDF komprimieren", - "subtitle": "Die DateigrรถรŸe Ihrer PDF reduzieren.", - "algorithmLabel": "Komprimierungsalgorithmus", - "condense": "Condense (Empfohlen)", - "photon": "Photon (Fรผr bildlastige PDFs)", - "condenseInfo": "Condense nutzt fortschrittliche Komprimierung: entfernt unnรถtige Daten, optimiert Bilder, reduziert Schriftarten. Optimal fรผr die meisten PDFs.", - "photonInfo": "Photon wandelt Seiten in Bilder um. Fรผr bildlastige/gescannte PDFs.", - "photonWarning": "Warnung: Text wird nicht mehr auswรคhlbar und Links funktionieren nicht mehr.", - "levelLabel": "Komprimierungsstufe", - "light": "Leicht (Qualitรคt erhalten)", - "balanced": "Ausgewogen (Empfohlen)", - "aggressive": "Aggressiv (Kleinere Dateien)", - "extreme": "Extrem (Maximale Komprimierung)", - "grayscale": "In Graustufen umwandeln", - "grayscaleHint": "Reduziert DateigrรถรŸe durch Entfernen von Farbinformationen", - "customSettings": "Erweiterte Einstellungen", - "customSettingsHint": "Komprimierungsparameter anpassen:", - "outputQuality": "Ausgabequalitรคt", - "resizeImagesTo": "Bilder anpassen auf", - "onlyProcessAbove": "Nur verarbeiten รผber", - "removeMetadata": "Metadaten entfernen", - "subsetFonts": "Schriftarten optimieren (ungenutzte Zeichen entfernen)", - "removeThumbnails": "Eingebettete Miniaturansichten entfernen", - "compressButton": "PDF komprimieren" - }, - "pdfEditor": { - "name": "PDF-Editor", - "subtitle": "Annotieren, hervorheben, schwรคrzen, kommentieren, Formen/Bilder hinzufรผgen, suchen und PDFs anzeigen." - }, - "jpgToPdf": { - "name": "JPG zu PDF", - "subtitle": "Eine PDF aus JPG, JPEG und JPEG2000 (JP2/JPX) Bildern erstellen." - }, - "signPdf": { - "name": "PDF unterschreiben", - "subtitle": "Zeichnen, tippen oder laden Sie Ihre Unterschrift hoch." - }, - "cropPdf": { - "name": "PDF zuschneiden", - "subtitle": "Die Rรคnder jeder Seite in Ihrer PDF beschneiden." - }, - "extractPages": { - "name": "Seiten extrahieren", - "subtitle": "Eine Auswahl von Seiten als neue Dateien speichern." - }, - "duplicateOrganize": { - "name": "Duplizieren & Organisieren", - "subtitle": "Seiten duplizieren, neu anordnen und lรถschen." - }, - "deletePages": { - "name": "Seiten lรถschen", - "subtitle": "Bestimmte Seiten aus Ihrem Dokument entfernen." - }, - "editBookmarks": { - "name": "Lesezeichen bearbeiten", - "subtitle": "PDF-Lesezeichen hinzufรผgen, bearbeiten, importieren, lรถschen und extrahieren." - }, - "tableOfContents": { - "name": "Inhaltsverzeichnis", - "subtitle": "Ein Inhaltsverzeichnis aus PDF-Lesezeichen generieren." - }, - "pageNumbers": { - "name": "Seitenzahlen", - "subtitle": "Seitenzahlen in Ihr Dokument einfรผgen." - }, - "addWatermark": { - "name": "Wasserzeichen hinzufรผgen", - "subtitle": "Text oder ein Bild รผber Ihre PDF-Seiten stempeln." - }, - "headerFooter": { - "name": "Kopf- & FuรŸzeile", - "subtitle": "Text oben und unten auf Seiten hinzufรผgen." - }, - "invertColors": { - "name": "Farben invertieren", - "subtitle": "Eine \"Dunkelmodus\"-Version Ihrer PDF erstellen." - }, - "backgroundColor": { - "name": "Hintergrundfarbe", - "subtitle": "Die Hintergrundfarbe Ihrer PDF รคndern." - }, - "changeTextColor": { - "name": "Textfarbe รคndern", - "subtitle": "Die Farbe des Textes in Ihrer PDF รคndern." - }, - "addStamps": { - "name": "Stempel hinzufรผgen", - "subtitle": "Bildstempel zu Ihrer PDF รผber die Annotations-Symbolleiste hinzufรผgen.", - "usernameLabel": "Stempel-Benutzername", - "usernamePlaceholder": "Geben Sie Ihren Namen ein (fรผr Stempel)", - "usernameHint": "Dieser Name erscheint auf von Ihnen erstellten Stempeln." - }, - "removeAnnotations": { - "name": "Annotationen entfernen", - "subtitle": "Kommentare, Hervorhebungen und Links entfernen." - }, - "pdfFormFiller": { - "name": "PDF-Formular ausfรผllen", - "subtitle": "Formulare direkt im Browser ausfรผllen. Unterstรผtzt auch XFA-Formulare." - }, - "createPdfForm": { - "name": "PDF-Formular erstellen", - "subtitle": "Ausfรผllbare PDF-Formulare mit Drag-and-Drop-Textfeldern erstellen." - }, - "removeBlankPages": { - "name": "Leere Seiten entfernen", - "subtitle": "Leere Seiten automatisch erkennen und lรถschen." - }, - "imageToPdf": { - "name": "Bilder zu PDF", - "subtitle": "JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP in PDF konvertieren." - }, - "pngToPdf": { - "name": "PNG zu PDF", - "subtitle": "Eine PDF aus einem oder mehreren PNG-Bildern erstellen." - }, - "webpToPdf": { - "name": "WebP zu PDF", - "subtitle": "Eine PDF aus einem oder mehreren WebP-Bildern erstellen." - }, - "svgToPdf": { - "name": "SVG zu PDF", - "subtitle": "Eine PDF aus einem oder mehreren SVG-Bildern erstellen." - }, - "bmpToPdf": { - "name": "BMP zu PDF", - "subtitle": "Eine PDF aus einem oder mehreren BMP-Bildern erstellen." - }, - "heicToPdf": { - "name": "HEIC zu PDF", - "subtitle": "Eine PDF aus einem oder mehreren HEIC-Bildern erstellen." - }, - "tiffToPdf": { - "name": "TIFF zu PDF", - "subtitle": "Eine PDF aus einem oder mehreren TIFF-Bildern erstellen." - }, - "textToPdf": { - "name": "Text zu PDF", - "subtitle": "Eine Textdatei in eine PDF konvertieren." - }, - "jsonToPdf": { - "name": "JSON zu PDF", - "subtitle": "JSON-Dateien in PDF-Format konvertieren." - }, - "pdfToJpg": { - "name": "PDF zu JPG", - "subtitle": "Jede PDF-Seite in ein JPG-Bild konvertieren." - }, - "pdfToPng": { - "name": "PDF zu PNG", - "subtitle": "Jede PDF-Seite in ein PNG-Bild konvertieren." - }, - "pdfToWebp": { - "name": "PDF zu WebP", - "subtitle": "Jede PDF-Seite in ein WebP-Bild konvertieren." - }, - "pdfToBmp": { - "name": "PDF zu BMP", - "subtitle": "Jede PDF-Seite in ein BMP-Bild konvertieren." - }, - "pdfToTiff": { - "name": "PDF zu TIFF", - "subtitle": "Jede PDF-Seite in ein TIFF-Bild konvertieren." - }, - "pdfToGreyscale": { - "name": "PDF zu Graustufen", - "subtitle": "Alle Farben in Schwarz-WeiรŸ konvertieren." - }, - "pdfToJson": { - "name": "PDF zu JSON", - "subtitle": "PDF-Dateien in JSON-Format konvertieren." - }, - "ocrPdf": { - "name": "OCR PDF", - "subtitle": "Eine PDF durchsuchbar und kopierbar machen." - }, - "alternateMix": { - "name": "Seiten abwechselnd mischen", - "subtitle": "PDFs durch abwechselnde Seiten aus jedem PDF zusammenfรผhren. Lesezeichen werden beibehalten." - }, - "addAttachments": { - "name": "Anhรคnge hinzufรผgen", - "subtitle": "Eine oder mehrere Dateien in Ihre PDF einbetten." - }, - "extractAttachments": { - "name": "Anhรคnge extrahieren", - "subtitle": "Alle eingebetteten Dateien aus PDF(s) als ZIP extrahieren." - }, - "editAttachments": { - "name": "Anhรคnge bearbeiten", - "subtitle": "Anhรคnge in Ihrer PDF anzeigen oder entfernen." - }, - "dividePages": { - "name": "Seiten teilen", - "subtitle": "Seiten horizontal oder vertikal teilen." - }, - "addBlankPage": { - "name": "Leere Seite hinzufรผgen", - "subtitle": "Eine leere Seite an beliebiger Stelle in Ihre PDF einfรผgen." - }, - "reversePages": { - "name": "Seiten umkehren", - "subtitle": "Die Reihenfolge aller Seiten in Ihrem Dokument umkehren." - }, - "rotatePdf": { - "name": "PDF drehen", - "subtitle": "Seiten in 90-Grad-Schritten drehen." - }, - "rotateCustom": { - "name": "Um benutzerdefinierte Grad drehen", - "subtitle": "Seiten um einen beliebigen Winkel drehen." - }, - "nUpPdf": { - "name": "N-Up PDF", - "subtitle": "Mehrere Seiten auf einem einzigen Blatt anordnen." - }, - "combineToSinglePage": { - "name": "Zu einer Seite kombinieren", - "subtitle": "Alle Seiten zu einem fortlaufenden Dokument zusammenfรผgen." - }, - "viewMetadata": { - "name": "Metadaten anzeigen", - "subtitle": "Die versteckten Eigenschaften Ihrer PDF inspizieren." - }, - "editMetadata": { - "name": "Metadaten bearbeiten", - "subtitle": "Autor, Titel und andere Eigenschaften รคndern." - }, - "pdfsToZip": { - "name": "PDFs zu ZIP", - "subtitle": "Mehrere PDF-Dateien in ein ZIP-Archiv packen." - }, - "comparePdfs": { - "name": "PDFs vergleichen", - "subtitle": "Zwei PDFs nebeneinander vergleichen." - }, - "posterizePdf": { - "name": "PDF posterisieren", - "subtitle": "Eine groรŸe Seite in mehrere kleinere Seiten aufteilen." - }, - "fixPageSize": { - "name": "SeitengrรถรŸe reparieren", - "subtitle": "Alle Seiten auf eine einheitliche GrรถรŸe standardisieren." - }, - "linearizePdf": { - "name": "PDF linearisieren", - "subtitle": "PDF fรผr schnelle Web-Anzeige optimieren." - }, - "pageDimensions": { - "name": "SeitenmaรŸe", - "subtitle": "SeitengrรถรŸe, Ausrichtung und Einheiten analysieren." - }, - "removeRestrictions": { - "name": "Beschrรคnkungen entfernen", - "subtitle": "Passwortschutz und Sicherheitsbeschrรคnkungen von digital signierten PDF-Dateien entfernen." - }, - "repairPdf": { - "name": "PDF reparieren", - "subtitle": "Daten aus beschรคdigten PDF-Dateien wiederherstellen." - }, - "encryptPdf": { - "name": "PDF verschlรผsseln", - "subtitle": "Ihre PDF durch Hinzufรผgen eines Passworts sperren." - }, - "sanitizePdf": { - "name": "PDF bereinigen", - "subtitle": "Metadaten, Annotationen, Skripte und mehr entfernen." - }, - "decryptPdf": { - "name": "PDF entschlรผsseln", - "subtitle": "PDF durch Entfernen des Passwortschutzes entsperren." - }, - "flattenPdf": { - "name": "PDF reduzieren", - "subtitle": "Formularfelder und Annotationen nicht editierbar machen." - }, - "removeMetadata": { - "name": "Metadaten entfernen", - "subtitle": "Versteckte Daten aus Ihrer PDF entfernen." - }, - "changePermissions": { - "name": "Berechtigungen รคndern", - "subtitle": "Benutzerberechtigungen fรผr eine PDF festlegen oder รคndern." - }, - "odtToPdf": { - "name": "ODT zu PDF", - "subtitle": "OpenDocument Text-Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "ODT-Dateien", - "convertButton": "In PDF konvertieren" - }, - "csvToPdf": { - "name": "CSV zu PDF", - "subtitle": "CSV-Tabellendateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "CSV-Dateien", - "convertButton": "In PDF konvertieren" - }, - "rtfToPdf": { - "name": "RTF zu PDF", - "subtitle": "Rich Text Format-Dokumente in PDF konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "RTF-Dateien", - "convertButton": "In PDF konvertieren" - }, - "wordToPdf": { - "name": "Word zu PDF", - "subtitle": "Word-Dokumente (DOCX, DOC, ODT, RTF) in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "DOCX, DOC, ODT, RTF-Dateien", - "convertButton": "In PDF konvertieren" - }, - "excelToPdf": { - "name": "Excel zu PDF", - "subtitle": "Excel-Tabellen (XLSX, XLS, ODS, CSV) in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "XLSX, XLS, ODS, CSV-Dateien", - "convertButton": "In PDF konvertieren" - }, - "powerpointToPdf": { - "name": "PowerPoint zu PDF", - "subtitle": "PowerPoint-Prรคsentationen (PPTX, PPT, ODP) in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "PPTX, PPT, ODP-Dateien", - "convertButton": "In PDF konvertieren" - }, - "markdownToPdf": { - "name": "Markdown zu PDF", - "subtitle": "Schreiben oder fรผgen Sie Markdown ein und exportieren Sie es als schรถn formatiertes PDF.", - "paneMarkdown": "Markdown", - "panePreview": "Vorschau", - "btnUpload": "Hochladen", - "btnSyncScroll": "Sync-Scrollen", - "btnSettings": "Einstellungen", - "btnExportPdf": "PDF exportieren", - "settingsTitle": "Markdown-Einstellungen", - "settingsPreset": "Voreinstellung", - "presetDefault": "Standard (GFM-รคhnlich)", - "presetCommonmark": "CommonMark (strikt)", - "presetZero": "Minimal (keine Funktionen)", - "settingsOptions": "Markdown-Optionen", - "optAllowHtml": "HTML-Tags erlauben", - "optBreaks": "Zeilenumbrรผche in
umwandeln", - "optLinkify": "URLs automatisch in Links umwandeln", - "optTypographer": "Typograf (intelligente Anfรผhrungszeichen usw.)" - }, - "pdfBooklet": { - "name": "PDF-Broschรผre", - "subtitle": "Seiten fรผr beidseitigen Broschรผrendruck neu anordnen. Falten und heften zum Erstellen einer Broschรผre.", - "howItWorks": "So funktioniert es:", - "step1": "Eine PDF-Datei hochladen.", - "step2": "Die Seiten werden in Broschรผrenreihenfolge neu angeordnet.", - "step3": "Beidseitig drucken, an der kurzen Kante wenden, falten und heften.", - "paperSize": "PapiergrรถรŸe", - "orientation": "Ausrichtung", - "portrait": "Hochformat", - "landscape": "Querformat", - "pagesPerSheet": "Seiten pro Blatt", - "createBooklet": "Broschรผre erstellen", - "processing": "Verarbeitung...", - "pageCount": "Die Seitenzahl wird bei Bedarf auf ein Vielfaches von 4 aufgerundet." - }, - "xpsToPdf": { - "name": "XPS zu PDF", - "subtitle": "XPS/OXPS-Dokumente in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "XPS, OXPS-Dateien", - "convertButton": "In PDF konvertieren" - }, - "mobiToPdf": { - "name": "MOBI zu PDF", - "subtitle": "MOBI-E-Books in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "MOBI-Dateien", - "convertButton": "In PDF konvertieren" - }, - "epubToPdf": { - "name": "EPUB zu PDF", - "subtitle": "EPUB-E-Books in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "EPUB-Dateien", - "convertButton": "In PDF konvertieren" - }, - "fb2ToPdf": { - "name": "FB2 zu PDF", - "subtitle": "FictionBook (FB2) E-Books in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "FB2-Dateien", - "convertButton": "In PDF konvertieren" - }, - "cbzToPdf": { - "name": "CBZ zu PDF", - "subtitle": "Comic-Archive (CBZ/CBR) in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "CBZ, CBR-Dateien", - "convertButton": "In PDF konvertieren" - }, - "wpdToPdf": { - "name": "WPD zu PDF", - "subtitle": "WordPerfect-Dokumente (WPD) in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "WPD-Dateien", - "convertButton": "In PDF konvertieren" - }, - "wpsToPdf": { - "name": "WPS zu PDF", - "subtitle": "WPS Office-Dokumente in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "WPS-Dateien", - "convertButton": "In PDF konvertieren" - }, - "xmlToPdf": { - "name": "XML zu PDF", - "subtitle": "XML-Dokumente in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "XML-Dateien", - "convertButton": "In PDF konvertieren" - }, - "pagesToPdf": { - "name": "Pages zu PDF", - "subtitle": "Apple Pages-Dokumente in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "Pages-Dateien", - "convertButton": "In PDF konvertieren" - }, - "odgToPdf": { - "name": "ODG zu PDF", - "subtitle": "OpenDocument Graphics (ODG) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "ODG-Dateien", - "convertButton": "In PDF konvertieren" - }, - "odsToPdf": { - "name": "ODS zu PDF", - "subtitle": "OpenDocument Spreadsheet (ODS) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "ODS-Dateien", - "convertButton": "In PDF konvertieren" - }, - "odpToPdf": { - "name": "ODP zu PDF", - "subtitle": "OpenDocument Presentation (ODP) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "ODP-Dateien", - "convertButton": "In PDF konvertieren" - }, - "pubToPdf": { - "name": "PUB zu PDF", - "subtitle": "Microsoft Publisher (PUB) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "PUB-Dateien", - "convertButton": "In PDF konvertieren" - }, - "vsdToPdf": { - "name": "VSD zu PDF", - "subtitle": "Microsoft Visio (VSD, VSDX) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "VSD, VSDX-Dateien", - "convertButton": "In PDF konvertieren" - }, - "psdToPdf": { - "name": "PSD zu PDF", - "subtitle": "Adobe Photoshop (PSD) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", - "acceptedFormats": "PSD-Dateien", - "convertButton": "In PDF konvertieren" - }, - "pdfToSvg": { - "name": "PDF zu SVG", - "subtitle": "Jede Seite einer PDF-Datei in eine skalierbare Vektorgrafik (SVG) konvertieren fรผr perfekte Qualitรคt in jeder GrรถรŸe." - }, - "extractTables": { - "name": "PDF-Tabellen extrahieren", - "subtitle": "Tabellen aus PDF-Dateien extrahieren und als CSV, JSON oder Markdown exportieren." - }, - "pdfToCsv": { - "name": "PDF zu CSV", - "subtitle": "Tabellen aus PDF extrahieren und in CSV-Format konvertieren." - }, - "pdfToExcel": { - "name": "PDF zu Excel", - "subtitle": "Tabellen aus PDF extrahieren und in Excel (XLSX) Format konvertieren." - }, - "pdfToText": { - "name": "PDF zu Text", - "subtitle": "Text aus PDF-Dateien extrahieren und als Textdatei (.txt) speichern. Unterstรผtzt mehrere Dateien.", - "note": "Dieses Tool funktioniert NUR mit digital erstellten PDFs. Fรผr gescannte Dokumente oder bildbasierte PDFs verwenden Sie stattdessen unser OCR PDF-Tool.", - "convertButton": "Text extrahieren" - }, - "digitalSignPdf": { - "name": "Digitale PDF-Signatur", - "pageTitle": "Digitale PDF-Signatur - Kryptografische Signatur hinzufรผgen | BentoPDF", - "subtitle": "Fรผgen Sie eine kryptografische digitale Signatur mit X.509-Zertifikaten zu Ihrer PDF hinzu. Unterstรผtzt PKCS#12 (.pfx, .p12) und PEM-Formate. Ihr privater Schlรผssel verlรคsst niemals Ihren Browser.", - "certificateSection": "Zertifikat", - "uploadCert": "Zertifikat hochladen (.pfx, .p12)", - "certPassword": "Zertifikat-Passwort", - "certPasswordPlaceholder": "Zertifikat-Passwort eingeben", - "certInfo": "Zertifikat-Informationen", - "certSubject": "Betreff", - "certIssuer": "Aussteller", - "certValidity": "Gรผltig", - "signatureDetails": "Signatur-Details (Optional)", - "reason": "Grund", - "reasonPlaceholder": "z.B. Ich genehmige dieses Dokument", - "location": "Ort", - "locationPlaceholder": "z.B. Berlin, Deutschland", - "contactInfo": "Kontaktdaten", - "contactPlaceholder": "z.B. email@beispiel.de", - "applySignature": "Digitale Signatur anwenden", - "successMessage": "PDF erfolgreich signiert! Die Signatur kann in jedem PDF-Reader รผberprรผft werden." - }, - "validateSignaturePdf": { - "name": "PDF-Signatur รผberprรผfen", - "pageTitle": "PDF-Signatur รผberprรผfen - Digitale Signaturen verifizieren | BentoPDF", - "subtitle": "รœberprรผfen Sie digitale Signaturen in Ihren PDF-Dateien. Prรผfen Sie die Zertifikatsgรผltigkeit, sehen Sie Unterzeichnerdetails und bestรคtigen Sie die Dokumentenintegritรคt. Die gesamte Verarbeitung erfolgt in Ihrem Browser." - } -} \ No newline at end of file + "categories": { + "popularTools": "Beliebte Werkzeuge", + "editAnnotate": "Bearbeiten & Annotieren", + "convertToPdf": "In PDF konvertieren", + "convertFromPdf": "Aus PDF konvertieren", + "organizeManage": "Organisieren & Verwalten", + "optimizeRepair": "Optimieren & Reparieren", + "securePdf": "PDF sichern" + }, + "pdfMultiTool": { + "name": "PDF Multi-Werkzeug", + "subtitle": "Zusammenfรผhren, Teilen, Organisieren, Lรถschen, Drehen, Leere Seiten hinzufรผgen, Extrahieren und Duplizieren in einer einheitlichen Oberflรคche." + }, + "mergePdf": { + "name": "PDF zusammenfรผhren", + "subtitle": "Mehrere PDFs zu einer Datei kombinieren. Lesezeichen werden beibehalten." + }, + "splitPdf": { + "name": "PDF teilen", + "subtitle": "Einen Seitenbereich in eine neue PDF extrahieren." + }, + "compressPdf": { + "name": "PDF komprimieren", + "subtitle": "Die DateigrรถรŸe Ihrer PDF reduzieren.", + "algorithmLabel": "Komprimierungsalgorithmus", + "condense": "Condense (Empfohlen)", + "photon": "Photon (Fรผr bildlastige PDFs)", + "condenseInfo": "Condense nutzt fortschrittliche Komprimierung: entfernt unnรถtige Daten, optimiert Bilder, reduziert Schriftarten. Optimal fรผr die meisten PDFs.", + "photonInfo": "Photon wandelt Seiten in Bilder um. Fรผr bildlastige/gescannte PDFs.", + "photonWarning": "Warnung: Text wird nicht mehr auswรคhlbar und Links funktionieren nicht mehr.", + "levelLabel": "Komprimierungsstufe", + "light": "Leicht (Qualitรคt erhalten)", + "balanced": "Ausgewogen (Empfohlen)", + "aggressive": "Aggressiv (Kleinere Dateien)", + "extreme": "Extrem (Maximale Komprimierung)", + "grayscale": "In Graustufen umwandeln", + "grayscaleHint": "Reduziert DateigrรถรŸe durch Entfernen von Farbinformationen", + "customSettings": "Erweiterte Einstellungen", + "customSettingsHint": "Komprimierungsparameter anpassen:", + "outputQuality": "Ausgabequalitรคt", + "resizeImagesTo": "Bilder anpassen auf", + "onlyProcessAbove": "Nur verarbeiten รผber", + "removeMetadata": "Metadaten entfernen", + "subsetFonts": "Schriftarten optimieren (ungenutzte Zeichen entfernen)", + "removeThumbnails": "Eingebettete Miniaturansichten entfernen", + "compressButton": "PDF komprimieren" + }, + "pdfEditor": { + "name": "PDF-Editor", + "subtitle": "Annotieren, hervorheben, schwรคrzen, kommentieren, Formen/Bilder hinzufรผgen, suchen und PDFs anzeigen." + }, + "jpgToPdf": { + "name": "JPG zu PDF", + "subtitle": "Eine PDF aus JPG, JPEG und JPEG2000 (JP2/JPX) Bildern erstellen." + }, + "signPdf": { + "name": "PDF unterschreiben", + "subtitle": "Zeichnen, tippen oder laden Sie Ihre Unterschrift hoch." + }, + "cropPdf": { + "name": "PDF zuschneiden", + "subtitle": "Die Rรคnder jeder Seite in Ihrer PDF beschneiden." + }, + "extractPages": { + "name": "Seiten extrahieren", + "subtitle": "Eine Auswahl von Seiten als neue Dateien speichern." + }, + "duplicateOrganize": { + "name": "Duplizieren & Organisieren", + "subtitle": "Seiten duplizieren, neu anordnen und lรถschen." + }, + "deletePages": { + "name": "Seiten lรถschen", + "subtitle": "Bestimmte Seiten aus Ihrem Dokument entfernen." + }, + "editBookmarks": { + "name": "Lesezeichen bearbeiten", + "subtitle": "PDF-Lesezeichen hinzufรผgen, bearbeiten, importieren, lรถschen und extrahieren." + }, + "tableOfContents": { + "name": "Inhaltsverzeichnis", + "subtitle": "Ein Inhaltsverzeichnis aus PDF-Lesezeichen generieren." + }, + "pageNumbers": { + "name": "Seitenzahlen", + "subtitle": "Seitenzahlen in Ihr Dokument einfรผgen." + }, + "addWatermark": { + "name": "Wasserzeichen hinzufรผgen", + "subtitle": "Text oder ein Bild รผber Ihre PDF-Seiten stempeln." + }, + "headerFooter": { + "name": "Kopf- & FuรŸzeile", + "subtitle": "Text oben und unten auf Seiten hinzufรผgen." + }, + "invertColors": { + "name": "Farben invertieren", + "subtitle": "Eine \"Dunkelmodus\"-Version Ihrer PDF erstellen." + }, + "backgroundColor": { + "name": "Hintergrundfarbe", + "subtitle": "Die Hintergrundfarbe Ihrer PDF รคndern." + }, + "changeTextColor": { + "name": "Textfarbe รคndern", + "subtitle": "Die Farbe des Textes in Ihrer PDF รคndern." + }, + "addStamps": { + "name": "Stempel hinzufรผgen", + "subtitle": "Bildstempel zu Ihrer PDF รผber die Annotations-Symbolleiste hinzufรผgen.", + "usernameLabel": "Stempel-Benutzername", + "usernamePlaceholder": "Geben Sie Ihren Namen ein (fรผr Stempel)", + "usernameHint": "Dieser Name erscheint auf von Ihnen erstellten Stempeln." + }, + "removeAnnotations": { + "name": "Annotationen entfernen", + "subtitle": "Kommentare, Hervorhebungen und Links entfernen." + }, + "pdfFormFiller": { + "name": "PDF-Formular ausfรผllen", + "subtitle": "Formulare direkt im Browser ausfรผllen. Unterstรผtzt auch XFA-Formulare." + }, + "createPdfForm": { + "name": "PDF-Formular erstellen", + "subtitle": "Ausfรผllbare PDF-Formulare mit Drag-and-Drop-Textfeldern erstellen." + }, + "removeBlankPages": { + "name": "Leere Seiten entfernen", + "subtitle": "Leere Seiten automatisch erkennen und lรถschen." + }, + "imageToPdf": { + "name": "Bilder zu PDF", + "subtitle": "JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP in PDF konvertieren." + }, + "pngToPdf": { + "name": "PNG zu PDF", + "subtitle": "Eine PDF aus einem oder mehreren PNG-Bildern erstellen." + }, + "webpToPdf": { + "name": "WebP zu PDF", + "subtitle": "Eine PDF aus einem oder mehreren WebP-Bildern erstellen." + }, + "svgToPdf": { + "name": "SVG zu PDF", + "subtitle": "Eine PDF aus einem oder mehreren SVG-Bildern erstellen." + }, + "bmpToPdf": { + "name": "BMP zu PDF", + "subtitle": "Eine PDF aus einem oder mehreren BMP-Bildern erstellen." + }, + "heicToPdf": { + "name": "HEIC zu PDF", + "subtitle": "Eine PDF aus einem oder mehreren HEIC-Bildern erstellen." + }, + "tiffToPdf": { + "name": "TIFF zu PDF", + "subtitle": "Eine PDF aus einem oder mehreren TIFF-Bildern erstellen." + }, + "textToPdf": { + "name": "Text zu PDF", + "subtitle": "Eine Textdatei in eine PDF konvertieren." + }, + "jsonToPdf": { + "name": "JSON zu PDF", + "subtitle": "JSON-Dateien in PDF-Format konvertieren." + }, + "pdfToJpg": { + "name": "PDF zu JPG", + "subtitle": "Jede PDF-Seite in ein JPG-Bild konvertieren." + }, + "pdfToPng": { + "name": "PDF zu PNG", + "subtitle": "Jede PDF-Seite in ein PNG-Bild konvertieren." + }, + "pdfToWebp": { + "name": "PDF zu WebP", + "subtitle": "Jede PDF-Seite in ein WebP-Bild konvertieren." + }, + "pdfToBmp": { + "name": "PDF zu BMP", + "subtitle": "Jede PDF-Seite in ein BMP-Bild konvertieren." + }, + "pdfToTiff": { + "name": "PDF zu TIFF", + "subtitle": "Jede PDF-Seite in ein TIFF-Bild konvertieren." + }, + "pdfToGreyscale": { + "name": "PDF zu Graustufen", + "subtitle": "Alle Farben in Schwarz-WeiรŸ konvertieren." + }, + "pdfToJson": { + "name": "PDF zu JSON", + "subtitle": "PDF-Dateien in JSON-Format konvertieren." + }, + "ocrPdf": { + "name": "OCR PDF", + "subtitle": "Eine PDF durchsuchbar und kopierbar machen." + }, + "alternateMix": { + "name": "Seiten abwechselnd mischen", + "subtitle": "PDFs durch abwechselnde Seiten aus jedem PDF zusammenfรผhren. Lesezeichen werden beibehalten." + }, + "addAttachments": { + "name": "Anhรคnge hinzufรผgen", + "subtitle": "Eine oder mehrere Dateien in Ihre PDF einbetten." + }, + "extractAttachments": { + "name": "Anhรคnge extrahieren", + "subtitle": "Alle eingebetteten Dateien aus PDF(s) als ZIP extrahieren." + }, + "editAttachments": { + "name": "Anhรคnge bearbeiten", + "subtitle": "Anhรคnge in Ihrer PDF anzeigen oder entfernen." + }, + "dividePages": { + "name": "Seiten teilen", + "subtitle": "Seiten horizontal oder vertikal teilen." + }, + "addBlankPage": { + "name": "Leere Seite hinzufรผgen", + "subtitle": "Eine leere Seite an beliebiger Stelle in Ihre PDF einfรผgen." + }, + "reversePages": { + "name": "Seiten umkehren", + "subtitle": "Die Reihenfolge aller Seiten in Ihrem Dokument umkehren." + }, + "rotatePdf": { + "name": "PDF drehen", + "subtitle": "Seiten in 90-Grad-Schritten drehen." + }, + "rotateCustom": { + "name": "Um benutzerdefinierte Grad drehen", + "subtitle": "Seiten um einen beliebigen Winkel drehen." + }, + "nUpPdf": { + "name": "N-Up PDF", + "subtitle": "Mehrere Seiten auf einem einzigen Blatt anordnen." + }, + "combineToSinglePage": { + "name": "Zu einer Seite kombinieren", + "subtitle": "Alle Seiten zu einem fortlaufenden Dokument zusammenfรผgen." + }, + "viewMetadata": { + "name": "Metadaten anzeigen", + "subtitle": "Die versteckten Eigenschaften Ihrer PDF inspizieren." + }, + "editMetadata": { + "name": "Metadaten bearbeiten", + "subtitle": "Autor, Titel und andere Eigenschaften รคndern." + }, + "pdfsToZip": { + "name": "PDFs zu ZIP", + "subtitle": "Mehrere PDF-Dateien in ein ZIP-Archiv packen." + }, + "comparePdfs": { + "name": "PDFs vergleichen", + "subtitle": "Zwei PDFs nebeneinander vergleichen." + }, + "posterizePdf": { + "name": "PDF posterisieren", + "subtitle": "Eine groรŸe Seite in mehrere kleinere Seiten aufteilen." + }, + "fixPageSize": { + "name": "SeitengrรถรŸe reparieren", + "subtitle": "Alle Seiten auf eine einheitliche GrรถรŸe standardisieren." + }, + "linearizePdf": { + "name": "PDF linearisieren", + "subtitle": "PDF fรผr schnelle Web-Anzeige optimieren." + }, + "pageDimensions": { + "name": "SeitenmaรŸe", + "subtitle": "SeitengrรถรŸe, Ausrichtung und Einheiten analysieren." + }, + "removeRestrictions": { + "name": "Beschrรคnkungen entfernen", + "subtitle": "Passwortschutz und Sicherheitsbeschrรคnkungen von digital signierten PDF-Dateien entfernen." + }, + "repairPdf": { + "name": "PDF reparieren", + "subtitle": "Daten aus beschรคdigten PDF-Dateien wiederherstellen." + }, + "encryptPdf": { + "name": "PDF verschlรผsseln", + "subtitle": "Ihre PDF durch Hinzufรผgen eines Passworts sperren." + }, + "sanitizePdf": { + "name": "PDF bereinigen", + "subtitle": "Metadaten, Annotationen, Skripte und mehr entfernen." + }, + "decryptPdf": { + "name": "PDF entschlรผsseln", + "subtitle": "PDF durch Entfernen des Passwortschutzes entsperren." + }, + "flattenPdf": { + "name": "PDF reduzieren", + "subtitle": "Formularfelder und Annotationen nicht editierbar machen." + }, + "removeMetadata": { + "name": "Metadaten entfernen", + "subtitle": "Versteckte Daten aus Ihrer PDF entfernen." + }, + "changePermissions": { + "name": "Berechtigungen รคndern", + "subtitle": "Benutzerberechtigungen fรผr eine PDF festlegen oder รคndern." + }, + "odtToPdf": { + "name": "ODT zu PDF", + "subtitle": "OpenDocument Text-Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "ODT-Dateien", + "convertButton": "In PDF konvertieren" + }, + "csvToPdf": { + "name": "CSV zu PDF", + "subtitle": "CSV-Tabellendateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "CSV-Dateien", + "convertButton": "In PDF konvertieren" + }, + "rtfToPdf": { + "name": "RTF zu PDF", + "subtitle": "Rich Text Format-Dokumente in PDF konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "RTF-Dateien", + "convertButton": "In PDF konvertieren" + }, + "wordToPdf": { + "name": "Word zu PDF", + "subtitle": "Word-Dokumente (DOCX, DOC, ODT, RTF) in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "DOCX, DOC, ODT, RTF-Dateien", + "convertButton": "In PDF konvertieren" + }, + "excelToPdf": { + "name": "Excel zu PDF", + "subtitle": "Excel-Tabellen (XLSX, XLS, ODS, CSV) in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "XLSX, XLS, ODS, CSV-Dateien", + "convertButton": "In PDF konvertieren" + }, + "powerpointToPdf": { + "name": "PowerPoint zu PDF", + "subtitle": "PowerPoint-Prรคsentationen (PPTX, PPT, ODP) in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "PPTX, PPT, ODP-Dateien", + "convertButton": "In PDF konvertieren" + }, + "markdownToPdf": { + "name": "Markdown zu PDF", + "subtitle": "Schreiben oder fรผgen Sie Markdown ein und exportieren Sie es als schรถn formatiertes PDF.", + "paneMarkdown": "Markdown", + "panePreview": "Vorschau", + "btnUpload": "Hochladen", + "btnSyncScroll": "Sync-Scrollen", + "btnSettings": "Einstellungen", + "btnExportPdf": "PDF exportieren", + "settingsTitle": "Markdown-Einstellungen", + "settingsPreset": "Voreinstellung", + "presetDefault": "Standard (GFM-รคhnlich)", + "presetCommonmark": "CommonMark (strikt)", + "presetZero": "Minimal (keine Funktionen)", + "settingsOptions": "Markdown-Optionen", + "optAllowHtml": "HTML-Tags erlauben", + "optBreaks": "Zeilenumbrรผche in
umwandeln", + "optLinkify": "URLs automatisch in Links umwandeln", + "optTypographer": "Typograf (intelligente Anfรผhrungszeichen usw.)" + }, + "pdfBooklet": { + "name": "PDF-Broschรผre", + "subtitle": "Seiten fรผr beidseitigen Broschรผrendruck neu anordnen. Falten und heften zum Erstellen einer Broschรผre.", + "howItWorks": "So funktioniert es:", + "step1": "Eine PDF-Datei hochladen.", + "step2": "Die Seiten werden in Broschรผrenreihenfolge neu angeordnet.", + "step3": "Beidseitig drucken, an der kurzen Kante wenden, falten und heften.", + "paperSize": "PapiergrรถรŸe", + "orientation": "Ausrichtung", + "portrait": "Hochformat", + "landscape": "Querformat", + "pagesPerSheet": "Seiten pro Blatt", + "createBooklet": "Broschรผre erstellen", + "processing": "Verarbeitung...", + "pageCount": "Die Seitenzahl wird bei Bedarf auf ein Vielfaches von 4 aufgerundet." + }, + "xpsToPdf": { + "name": "XPS zu PDF", + "subtitle": "XPS/OXPS-Dokumente in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "XPS, OXPS-Dateien", + "convertButton": "In PDF konvertieren" + }, + "mobiToPdf": { + "name": "MOBI zu PDF", + "subtitle": "MOBI-E-Books in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "MOBI-Dateien", + "convertButton": "In PDF konvertieren" + }, + "epubToPdf": { + "name": "EPUB zu PDF", + "subtitle": "EPUB-E-Books in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "EPUB-Dateien", + "convertButton": "In PDF konvertieren" + }, + "fb2ToPdf": { + "name": "FB2 zu PDF", + "subtitle": "FictionBook (FB2) E-Books in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "FB2-Dateien", + "convertButton": "In PDF konvertieren" + }, + "cbzToPdf": { + "name": "CBZ zu PDF", + "subtitle": "Comic-Archive (CBZ/CBR) in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "CBZ, CBR-Dateien", + "convertButton": "In PDF konvertieren" + }, + "wpdToPdf": { + "name": "WPD zu PDF", + "subtitle": "WordPerfect-Dokumente (WPD) in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "WPD-Dateien", + "convertButton": "In PDF konvertieren" + }, + "wpsToPdf": { + "name": "WPS zu PDF", + "subtitle": "WPS Office-Dokumente in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "WPS-Dateien", + "convertButton": "In PDF konvertieren" + }, + "xmlToPdf": { + "name": "XML zu PDF", + "subtitle": "XML-Dokumente in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "XML-Dateien", + "convertButton": "In PDF konvertieren" + }, + "pagesToPdf": { + "name": "Pages zu PDF", + "subtitle": "Apple Pages-Dokumente in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "Pages-Dateien", + "convertButton": "In PDF konvertieren" + }, + "odgToPdf": { + "name": "ODG zu PDF", + "subtitle": "OpenDocument Graphics (ODG) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "ODG-Dateien", + "convertButton": "In PDF konvertieren" + }, + "odsToPdf": { + "name": "ODS zu PDF", + "subtitle": "OpenDocument Spreadsheet (ODS) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "ODS-Dateien", + "convertButton": "In PDF konvertieren" + }, + "odpToPdf": { + "name": "ODP zu PDF", + "subtitle": "OpenDocument Presentation (ODP) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "ODP-Dateien", + "convertButton": "In PDF konvertieren" + }, + "pubToPdf": { + "name": "PUB zu PDF", + "subtitle": "Microsoft Publisher (PUB) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "PUB-Dateien", + "convertButton": "In PDF konvertieren" + }, + "vsdToPdf": { + "name": "VSD zu PDF", + "subtitle": "Microsoft Visio (VSD, VSDX) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "VSD, VSDX-Dateien", + "convertButton": "In PDF konvertieren" + }, + "psdToPdf": { + "name": "PSD zu PDF", + "subtitle": "Adobe Photoshop (PSD) Dateien in PDF-Format konvertieren. Unterstรผtzt mehrere Dateien.", + "acceptedFormats": "PSD-Dateien", + "convertButton": "In PDF konvertieren" + }, + "pdfToSvg": { + "name": "PDF zu SVG", + "subtitle": "Jede Seite einer PDF-Datei in eine skalierbare Vektorgrafik (SVG) konvertieren fรผr perfekte Qualitรคt in jeder GrรถรŸe." + }, + "extractTables": { + "name": "PDF-Tabellen extrahieren", + "subtitle": "Tabellen aus PDF-Dateien extrahieren und als CSV, JSON oder Markdown exportieren." + }, + "pdfToCsv": { + "name": "PDF zu CSV", + "subtitle": "Tabellen aus PDF extrahieren und in CSV-Format konvertieren." + }, + "pdfToExcel": { + "name": "PDF zu Excel", + "subtitle": "Tabellen aus PDF extrahieren und in Excel (XLSX) Format konvertieren." + }, + "pdfToText": { + "name": "PDF zu Text", + "subtitle": "Text aus PDF-Dateien extrahieren und als Textdatei (.txt) speichern. Unterstรผtzt mehrere Dateien.", + "note": "Dieses Tool funktioniert NUR mit digital erstellten PDFs. Fรผr gescannte Dokumente oder bildbasierte PDFs verwenden Sie stattdessen unser OCR PDF-Tool.", + "convertButton": "Text extrahieren" + }, + "digitalSignPdf": { + "name": "Digitale PDF-Signatur", + "pageTitle": "Digitale PDF-Signatur - Kryptografische Signatur hinzufรผgen | BentoPDF", + "subtitle": "Fรผgen Sie eine kryptografische digitale Signatur mit X.509-Zertifikaten zu Ihrer PDF hinzu. Unterstรผtzt PKCS#12 (.pfx, .p12) und PEM-Formate. Ihr privater Schlรผssel verlรคsst niemals Ihren Browser.", + "certificateSection": "Zertifikat", + "uploadCert": "Zertifikat hochladen (.pfx, .p12)", + "certPassword": "Zertifikat-Passwort", + "certPasswordPlaceholder": "Zertifikat-Passwort eingeben", + "certInfo": "Zertifikat-Informationen", + "certSubject": "Betreff", + "certIssuer": "Aussteller", + "certValidity": "Gรผltig", + "signatureDetails": "Signatur-Details (Optional)", + "reason": "Grund", + "reasonPlaceholder": "z.B. Ich genehmige dieses Dokument", + "location": "Ort", + "locationPlaceholder": "z.B. Berlin, Deutschland", + "contactInfo": "Kontaktdaten", + "contactPlaceholder": "z.B. email@beispiel.de", + "applySignature": "Digitale Signatur anwenden", + "successMessage": "PDF erfolgreich signiert! Die Signatur kann in jedem PDF-Reader รผberprรผft werden." + }, + "validateSignaturePdf": { + "name": "PDF-Signatur รผberprรผfen", + "pageTitle": "PDF-Signatur รผberprรผfen - Digitale Signaturen verifizieren | BentoPDF", + "subtitle": "รœberprรผfen Sie digitale Signaturen in Ihren PDF-Dateien. Prรผfen Sie die Zertifikatsgรผltigkeit, sehen Sie Unterzeichnerdetails und bestรคtigen Sie die Dokumentenintegritรคt. Die gesamte Verarbeitung erfolgt in Ihrem Browser." + }, + "emailToPdf": { + "name": "E-Mail zu PDF", + "subtitle": "E-Mail-Dateien (EML, MSG) in PDF-Format konvertieren. Unterstรผtzt Outlook-Exporte und Standard-E-Mail-Formate.", + "acceptedFormats": "EML, MSG-Dateien", + "convertButton": "In PDF konvertieren" + }, + "fontToOutline": { + "name": "Schriftart zu Umriss", + "subtitle": "Alle Schriftarten in Vektorumrisse fรผr konsistente Darstellung auf allen Gerรคten konvertieren." + }, + "deskewPdf": { + "name": "PDF entzerren", + "subtitle": "Automatisch schiefe gescannte Seiten mit OpenCV begradigen." + } +} diff --git a/public/locales/en/common.json b/public/locales/en/common.json index 754ae6433..f1307791d 100644 --- a/public/locales/en/common.json +++ b/public/locales/en/common.json @@ -1,323 +1,323 @@ { - "nav": { - "home": "Home", - "about": "About", - "contact": "Contact", - "licensing": "Licensing", - "allTools": "All Tools", - "openMainMenu": "Open main menu", - "language": "Language" + "nav": { + "home": "Home", + "about": "About", + "contact": "Contact", + "licensing": "Licensing", + "allTools": "All Tools", + "openMainMenu": "Open main menu", + "language": "Language" + }, + "donation": { + "message": "Love BentoPDF? Help us keep it free and open source!", + "button": "Donate" + }, + "hero": { + "title": "The", + "pdfToolkit": "PDF Toolkit", + "builtForPrivacy": "built for privacy", + "noSignups": "No Signups", + "unlimitedUse": "Unlimited Use", + "worksOffline": "Works Offline", + "startUsing": "Start Using Now" + }, + "usedBy": { + "title": "Used by companies and people working at" + }, + "features": { + "title": "Why choose", + "bentoPdf": "BentoPDF?", + "noSignup": { + "title": "No Signup", + "description": "Start instantly, no accounts or emails." }, - "donation": { - "message": "Love BentoPDF? Help us keep it free and open source!", - "button": "Donate" + "noUploads": { + "title": "No Uploads", + "description": "100% client-side, your files never leave your device." }, - "hero": { - "title": "The", - "pdfToolkit": "PDF Toolkit", - "builtForPrivacy": "built for privacy", - "noSignups": "No Signups", - "unlimitedUse": "Unlimited Use", - "worksOffline": "Works Offline", - "startUsing": "Start Using Now" - }, - "usedBy": { - "title": "Used by companies and people working at" - }, - "features": { - "title": "Why choose", - "bentoPdf": "BentoPDF?", - "noSignup": { - "title": "No Signup", - "description": "Start instantly, no accounts or emails." - }, - "noUploads": { - "title": "No Uploads", - "description": "100% client-side, your files never leave your device." - }, - "foreverFree": { - "title": "Forever Free", - "description": "All tools, no trials, no paywalls." - }, - "noLimits": { - "title": "No Limits", - "description": "Use as much as you want, no hidden caps." - }, - "batchProcessing": { - "title": "Batch Processing", - "description": "Handle unlimited PDFs in one go." - }, - "lightningFast": { - "title": "Lightning Fast", - "description": "Process PDFs instantly, without waiting or delays." - } + "foreverFree": { + "title": "Forever Free", + "description": "All tools, no trials, no paywalls." }, - "tools": { - "title": "Get Started with", - "toolsLabel": "Tools", - "subtitle": "Click a tool to open the file uploader", - "searchPlaceholder": "Search for a tool (e.g., 'split', 'organize'...)", - "backToTools": "Back to Tools", - "firstLoadNotice": "First load takes a moment as we download our conversion engine. After that, all loads will be instant." + "noLimits": { + "title": "No Limits", + "description": "Use as much as you want, no hidden caps." }, - "upload": { - "clickToSelect": "Click to select a file", - "orDragAndDrop": "or drag and drop", - "pdfOrImages": "PDFs or Images", - "filesNeverLeave": "Your files never leave your device.", - "addMore": "Add More Files", - "clearAll": "Clear All" + "batchProcessing": { + "title": "Batch Processing", + "description": "Handle unlimited PDFs in one go." }, - "loader": { - "processing": "Processing..." - }, - "alert": { - "title": "Alert", - "ok": "OK" - }, - "preview": { - "title": "Document Preview", - "downloadAsPdf": "Download as PDF", - "close": "Close" + "lightningFast": { + "title": "Lightning Fast", + "description": "Process PDFs instantly, without waiting or delays." + } + }, + "tools": { + "title": "Get Started with", + "toolsLabel": "Tools", + "subtitle": "Click a tool to open the file uploader", + "searchPlaceholder": "Search for a tool (e.g., 'split', 'organize'...)", + "backToTools": "Back to Tools", + "firstLoadNotice": "First load takes a moment as we download our conversion engine. After that, all loads will be instant." + }, + "upload": { + "clickToSelect": "Click to select a file", + "orDragAndDrop": "or drag and drop", + "pdfOrImages": "PDFs or Images", + "filesNeverLeave": "Your files never leave your device.", + "addMore": "Add More Files", + "clearAll": "Clear All" + }, + "loader": { + "processing": "Processing..." + }, + "alert": { + "title": "Alert", + "ok": "OK" + }, + "preview": { + "title": "Document Preview", + "downloadAsPdf": "Download as PDF", + "close": "Close" + }, + "settings": { + "title": "Settings", + "shortcuts": "Shortcuts", + "preferences": "Preferences", + "displayPreferences": "Display Preferences", + "searchShortcuts": "Search shortcuts...", + "shortcutsInfo": "Press and hold keys to set a shortcut. Changes are auto-saved.", + "shortcutsWarning": "โš ๏ธ Avoid common browser shortcuts (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N etc.) as they may not work reliably.", + "import": "Import", + "export": "Export", + "resetToDefaults": "Reset to Defaults", + "fullWidthMode": "Full Width Mode", + "fullWidthDescription": "Use the full screen width for all tools instead of a centered container", + "settingsAutoSaved": "Settings are automatically saved", + "clickToSet": "Click to set", + "pressKeys": "Press keys...", + "warnings": { + "alreadyInUse": "Shortcut Already in Use", + "assignedTo": "is already assigned to:", + "chooseDifferent": "Please choose a different shortcut.", + "reserved": "Reserved Shortcut Warning", + "commonlyUsed": "is commonly used for:", + "unreliable": "This shortcut may not work reliably or might conflict with browser/system behavior.", + "useAnyway": "Do you want to use it anyway?", + "resetTitle": "Reset Shortcuts", + "resetMessage": "Are you sure you want to reset all shortcuts to default?

This action cannot be undone.", + "importSuccessTitle": "Import Successful", + "importSuccessMessage": "Shortcuts imported successfully!", + "importFailTitle": "Import Failed", + "importFailMessage": "Failed to import shortcuts. Invalid file format." + } + }, + "warning": { + "title": "Warning", + "cancel": "Cancel", + "proceed": "Proceed" + }, + "compliance": { + "title": "Your data never leaves your device", + "weKeep": "We keep", + "yourInfoSafe": "your information safe", + "byFollowingStandards": "by following global security standards.", + "processingLocal": "All the processing happens locally on your device.", + "gdpr": { + "title": "GDPR compliance", + "description": "Protects the personal data and privacy of individuals within the European Union." }, - "settings": { - "title": "Settings", - "shortcuts": "Shortcuts", - "preferences": "Preferences", - "displayPreferences": "Display Preferences", - "searchShortcuts": "Search shortcuts...", - "shortcutsInfo": "Press and hold keys to set a shortcut. Changes are auto-saved.", - "shortcutsWarning": "โš ๏ธ Avoid common browser shortcuts (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N etc.) as they may not work reliably.", - "import": "Import", - "export": "Export", - "resetToDefaults": "Reset to Defaults", - "fullWidthMode": "Full Width Mode", - "fullWidthDescription": "Use the full screen width for all tools instead of a centered container", - "settingsAutoSaved": "Settings are automatically saved", - "clickToSet": "Click to set", - "pressKeys": "Press keys...", - "warnings": { - "alreadyInUse": "Shortcut Already in Use", - "assignedTo": "is already assigned to:", - "chooseDifferent": "Please choose a different shortcut.", - "reserved": "Reserved Shortcut Warning", - "commonlyUsed": "is commonly used for:", - "unreliable": "This shortcut may not work reliably or might conflict with browser/system behavior.", - "useAnyway": "Do you want to use it anyway?", - "resetTitle": "Reset Shortcuts", - "resetMessage": "Are you sure you want to reset all shortcuts to default?

This action cannot be undone.", - "importSuccessTitle": "Import Successful", - "importSuccessMessage": "Shortcuts imported successfully!", - "importFailTitle": "Import Failed", - "importFailMessage": "Failed to import shortcuts. Invalid file format." - } + "ccpa": { + "title": "CCPA compliance", + "description": "Gives California residents rights over how their personal information is collected, used, and shared." }, - "warning": { - "title": "Warning", - "cancel": "Cancel", - "proceed": "Proceed" + "hipaa": { + "title": "HIPAA compliance", + "description": "Sets safeguards for handling sensitive health information in the United States healthcare system." + } + }, + "faq": { + "title": "Frequently Asked", + "questions": "Questions", + "isFree": { + "question": "Is BentoPDF really free?", + "answer": "Yes, absolutely. All tools on BentoPDF are 100% free to use, with no file limits, no sign-ups, and no watermarks. We believe everyone deserves access to simple, powerful PDF tools without a paywall." }, - "compliance": { - "title": "Your data never leaves your device", - "weKeep": "We keep", - "yourInfoSafe": "your information safe", - "byFollowingStandards": "by following global security standards.", - "processingLocal": "All the processing happens locally on your device.", - "gdpr": { - "title": "GDPR compliance", - "description": "Protects the personal data and privacy of individuals within the European Union." - }, - "ccpa": { - "title": "CCPA compliance", - "description": "Gives California residents rights over how their personal information is collected, used, and shared." - }, - "hipaa": { - "title": "HIPAA compliance", - "description": "Sets safeguards for handling sensitive health information in the United States healthcare system." - } + "areFilesSecure": { + "question": "Are my files secure? Where are they processed?", + "answer": "Your files are as secure as possible because they never leave your computer. All processing happens directly in your web browser (client-side). We never upload your files to a server, so you maintain complete privacy and control over your documents." }, - "faq": { - "title": "Frequently Asked", - "questions": "Questions", - "isFree": { - "question": "Is BentoPDF really free?", - "answer": "Yes, absolutely. All tools on BentoPDF are 100% free to use, with no file limits, no sign-ups, and no watermarks. We believe everyone deserves access to simple, powerful PDF tools without a paywall." - }, - "areFilesSecure": { - "question": "Are my files secure? Where are they processed?", - "answer": "Your files are as secure as possible because they never leave your computer. All processing happens directly in your web browser (client-side). We never upload your files to a server, so you maintain complete privacy and control over your documents." - }, - "platforms": { - "question": "Does it work on Mac, Windows, and Mobile?", - "answer": "Yes! Since BentoPDF runs entirely in your browser, it works on any operating system with a modern web browser, including Windows, macOS, Linux, iOS, and Android." - }, - "gdprCompliant": { - "question": "Is BentoPDF GDPR compliant?", - "answer": "Yes. BentoPDF is fully GDPR compliant. Since all file processing happens locally in your browser and we never collect or transmit your files to any server, we have no access to your data. This ensures you are always in control of your documents." - }, - "dataStorage": { - "question": "Do you store or track any of my files?", - "answer": "No. We never store, track, or log your files. Everything you do on BentoPDF happens in your browser memory and disappears once you close the page. There are no uploads, no history logs, and no servers involved." - }, - "different": { - "question": "What makes BentoPDF different from other PDF tools?", - "answer": "Most PDF tools upload your files to a server for processing. BentoPDF never does that. We use secure, modern web technology to process your files directly in your browser. This means faster performance, stronger privacy, and complete peace of mind." - }, - "browserBased": { - "question": "How does browser-based processing keep me safe?", - "answer": "By running entirely inside your browser, BentoPDF ensures that your files never leave your device. This eliminates the risks of server hacks, data breaches, or unauthorized access. Your files remain yoursโ€”always." - }, - "analytics": { - "question": "Do you use cookies or analytics to track me?", - "answer": "We care about your privacy. BentoPDF does not track personal information. We use Simple Analytics solely to see anonymous visit counts. This means we can know how many users visit our site, but we never know who you are. Simple Analytics is fully GDPR-compliant and respects your privacy." - } + "platforms": { + "question": "Does it work on Mac, Windows, and Mobile?", + "answer": "Yes! Since BentoPDF runs entirely in your browser, it works on any operating system with a modern web browser, including Windows, macOS, Linux, iOS, and Android." }, - "testimonials": { - "title": "What Our", - "users": "Users", - "say": "Say" + "gdprCompliant": { + "question": "Is BentoPDF GDPR compliant?", + "answer": "Yes. BentoPDF is fully GDPR compliant. Since all file processing happens locally in your browser and we never collect or transmit your files to any server, we have no access to your data. This ensures you are always in control of your documents." }, - "support": { - "title": "Like My Work?", - "description": "BentoPDF is a passion project, built to provide a free, private, and powerful PDF toolkit for everyone. If you find it useful, consider supporting its development. Every coffee helps!", - "buyMeCoffee": "Buy Me a Coffee" + "dataStorage": { + "question": "Do you store or track any of my files?", + "answer": "No. We never store, track, or log your files. Everything you do on BentoPDF happens in your browser memory and disappears once you close the page. There are no uploads, no history logs, and no servers involved." }, - "footer": { - "copyright": "ยฉ 2025 BentoPDF. All rights reserved.", - "version": "Version", - "company": "Company", - "aboutUs": "About Us", - "faqLink": "FAQ", - "contactUs": "Contact Us", - "legal": "Legal", - "termsAndConditions": "Terms and Conditions", - "privacyPolicy": "Privacy Policy", - "followUs": "Follow Us" + "different": { + "question": "What makes BentoPDF different from other PDF tools?", + "answer": "Most PDF tools upload your files to a server for processing. BentoPDF never does that. We use secure, modern web technology to process your files directly in your browser. This means faster performance, stronger privacy, and complete peace of mind." }, - "merge": { - "title": "Merge PDFs", - "description": "Combine whole files, or select specific pages to merge into a new document.", - "fileMode": "File Mode", - "pageMode": "Page Mode", - "howItWorks": "How it works:", - "fileModeInstructions": [ - "Click and drag the icon to change the order of the files.", - "In the \"Pages\" box for each file, you can specify ranges (e.g., \"1-3, 5\") to merge only those pages.", - "Leave the \"Pages\" box blank to include all pages from that file." - ], - "pageModeInstructions": [ - "All pages from your uploaded PDFs are shown below.", - "Simply drag and drop the individual page thumbnails to create the exact order you want for your new file." - ], - "mergePdfs": "Merge PDFs" + "browserBased": { + "question": "How does browser-based processing keep me safe?", + "answer": "By running entirely inside your browser, BentoPDF ensures that your files never leave your device. This eliminates the risks of server hacks, data breaches, or unauthorized access. Your files remain yoursโ€”always." }, - "common": { - "page": "Page", - "pages": "Pages", - "of": "of", - "download": "Download", - "cancel": "Cancel", - "save": "Save", - "delete": "Delete", - "edit": "Edit", - "add": "Add", - "remove": "Remove", - "loading": "Loading...", - "error": "Error", - "success": "Success", - "file": "File", - "files": "Files" + "analytics": { + "question": "Do you use cookies or analytics to track me?", + "answer": "We care about your privacy. BentoPDF does not track personal information. We use Simple Analytics solely to see anonymous visit counts. This means we can know how many users visit our site, but we never know who you are. Simple Analytics is fully GDPR-compliant and respects your privacy." + } + }, + "testimonials": { + "title": "What Our", + "users": "Users", + "say": "Say" + }, + "support": { + "title": "Like My Work?", + "description": "BentoPDF is a passion project, built to provide a free, private, and powerful PDF toolkit for everyone. If you find it useful, consider supporting its development. Every coffee helps!", + "buyMeCoffee": "Buy Me a Coffee" + }, + "footer": { + "copyright": "ยฉ 2026 BentoPDF. All rights reserved.", + "version": "Version", + "company": "Company", + "aboutUs": "About Us", + "faqLink": "FAQ", + "contactUs": "Contact Us", + "legal": "Legal", + "termsAndConditions": "Terms and Conditions", + "privacyPolicy": "Privacy Policy", + "followUs": "Follow Us" + }, + "merge": { + "title": "Merge PDFs", + "description": "Combine whole files, or select specific pages to merge into a new document.", + "fileMode": "File Mode", + "pageMode": "Page Mode", + "howItWorks": "How it works:", + "fileModeInstructions": [ + "Click and drag the icon to change the order of the files.", + "In the \"Pages\" box for each file, you can specify ranges (e.g., \"1-3, 5\") to merge only those pages.", + "Leave the \"Pages\" box blank to include all pages from that file." + ], + "pageModeInstructions": [ + "All pages from your uploaded PDFs are shown below.", + "Simply drag and drop the individual page thumbnails to create the exact order you want for your new file." + ], + "mergePdfs": "Merge PDFs" + }, + "common": { + "page": "Page", + "pages": "Pages", + "of": "of", + "download": "Download", + "cancel": "Cancel", + "save": "Save", + "delete": "Delete", + "edit": "Edit", + "add": "Add", + "remove": "Remove", + "loading": "Loading...", + "error": "Error", + "success": "Success", + "file": "File", + "files": "Files" + }, + "about": { + "hero": { + "title": "We believe PDF tools should be", + "subtitle": "fast, private, and free.", + "noCompromises": "No compromises." }, - "about": { - "hero": { - "title": "We believe PDF tools should be", - "subtitle": "fast, private, and free.", - "noCompromises": "No compromises." - }, - "mission": { - "title": "Our Mission", - "description": "To provide the most comprehensive PDF toolbox that respects your privacy and never asks for payment. We believe essential document tools should be accessible to everyone, everywhere, without barriers." - }, - "philosophy": { - "label": "Our Core Philosophy", - "title": "Privacy First. Always.", - "description": "In an era where data is a commodity, we take a different approach. All processing for Bentopdf tools happens locally in your browser. This means your files never touch our servers, we never see your documents, and we don't track what you do. Your documents remain completely and unequivocally private. It's not just a feature; it's our foundation." - }, - "whyBentopdf": { - "title": "Why", - "speed": { - "title": "Built for Speed", - "description": "No waiting for uploads or downloads to a server. By processing files directly in your browser using modern web technologies like WebAssembly, we offer unparalleled speed for all our tools." - }, - "free": { - "title": "Completely Free", - "description": "No trials, no subscriptions, no hidden fees, and no \"premium\" features held hostage. We believe powerful PDF tools should be a public utility, not a profit center." - }, - "noAccount": { - "title": "No Account Required", - "description": "Start using any tool immediately. We don't need your email, a password, or any personal information. Your workflow should be frictionless and anonymous." - }, - "openSource": { - "title": "Open Source Spirit", - "description": "Built with transparency in mind. We leverage incredible open-source libraries like PDF-lib and PDF.js, and believe in the community-driven effort to make powerful tools accessible to everyone." - } - }, - "cta": { - "title": "Ready to get started?", - "description": "Join thousands of users who trust Bentopdf for their daily document needs. Experience the difference that privacy and performance can make.", - "button": "Explore All Tools" - } + "mission": { + "title": "Our Mission", + "description": "To provide the most comprehensive PDF toolbox that respects your privacy and never asks for payment. We believe essential document tools should be accessible to everyone, everywhere, without barriers." }, - "contact": { - "title": "Get in Touch", - "subtitle": "We'd love to hear from you. Whether you have a question, feedback, or a feature request, please don't hesitate to reach out.", - "email": "You can reach us directly by email at:" + "philosophy": { + "label": "Our Core Philosophy", + "title": "Privacy First. Always.", + "description": "In an era where data is a commodity, we take a different approach. All processing for Bentopdf tools happens locally in your browser. This means your files never touch our servers, we never see your documents, and we don't track what you do. Your documents remain completely and unequivocally private. It's not just a feature; it's our foundation." }, - "licensing": { - "title": "Licensing for", - "subtitle": "Choose the license that fits your needs." + "whyBentopdf": { + "title": "Why", + "speed": { + "title": "Built for Speed", + "description": "No waiting for uploads or downloads to a server. By processing files directly in your browser using modern web technologies like WebAssembly, we offer unparalleled speed for all our tools." + }, + "free": { + "title": "Completely Free", + "description": "No trials, no subscriptions, no hidden fees, and no \"premium\" features held hostage. We believe powerful PDF tools should be a public utility, not a profit center." + }, + "noAccount": { + "title": "No Account Required", + "description": "Start using any tool immediately. We don't need your email, a password, or any personal information. Your workflow should be frictionless and anonymous." + }, + "openSource": { + "title": "Open Source Spirit", + "description": "Built with transparency in mind. We leverage incredible open-source libraries like PDF-lib and PDF.js, and believe in the community-driven effort to make powerful tools accessible to everyone." + } }, - "multiTool": { - "uploadPdfs": "Upload PDFs", - "upload": "Upload", - "addBlankPage": "Add Blank Page", - "edit": "Edit:", - "undo": "Undo", - "redo": "Redo", - "reset": "Reset", - "selection": "Selection:", - "selectAll": "Select All", - "deselectAll": "Deselect All", - "rotate": "Rotate:", - "rotateLeft": "Left", - "rotateRight": "Right", - "transform": "Transform:", - "duplicate": "Duplicate", - "split": "Split", - "clear": "Clear:", - "delete": "Delete", - "download": "Download:", - "downloadSelected": "Download Selected", - "exportPdf": "Export PDF", - "uploadPdfFiles": "Select PDF Files", - "dragAndDrop": "Drag and drop PDF files here, or click to select", - "selectFiles": "Select Files", - "renderingPages": "Rendering pages...", - "actions": { - "duplicatePage": "Duplicate this page", - "deletePage": "Delete this page", - "insertPdf": "Insert PDF after this page", - "toggleSplit": "Toggle split after this page" - }, - "pleaseWait": "Please Wait", - "pagesRendering": "Pages are still being rendered. Please wait...", - "noPagesSelected": "No Pages Selected", - "selectOnePage": "Please select at least one page to download.", - "noPages": "No Pages", - "noPagesToExport": "There are no pages to export.", - "renderingTitle": "Rendering page previews", - "errorRendering": "Failed to render page thumbnails", - "error": "Error", - "failedToLoad": "Failed to load" + "cta": { + "title": "Ready to get started?", + "description": "Join thousands of users who trust Bentopdf for their daily document needs. Experience the difference that privacy and performance can make.", + "button": "Explore All Tools" } -} \ No newline at end of file + }, + "contact": { + "title": "Get in Touch", + "subtitle": "We'd love to hear from you. Whether you have a question, feedback, or a feature request, please don't hesitate to reach out.", + "email": "You can reach us directly by email at:" + }, + "licensing": { + "title": "Licensing for", + "subtitle": "Choose the license that fits your needs." + }, + "multiTool": { + "uploadPdfs": "Upload PDFs", + "upload": "Upload", + "addBlankPage": "Add Blank Page", + "edit": "Edit:", + "undo": "Undo", + "redo": "Redo", + "reset": "Reset", + "selection": "Selection:", + "selectAll": "Select All", + "deselectAll": "Deselect All", + "rotate": "Rotate:", + "rotateLeft": "Left", + "rotateRight": "Right", + "transform": "Transform:", + "duplicate": "Duplicate", + "split": "Split", + "clear": "Clear:", + "delete": "Delete", + "download": "Download:", + "downloadSelected": "Download Selected", + "exportPdf": "Export PDF", + "uploadPdfFiles": "Select PDF Files", + "dragAndDrop": "Drag and drop PDF files here, or click to select", + "selectFiles": "Select Files", + "renderingPages": "Rendering pages...", + "actions": { + "duplicatePage": "Duplicate this page", + "deletePage": "Delete this page", + "insertPdf": "Insert PDF after this page", + "toggleSplit": "Toggle split after this page" + }, + "pleaseWait": "Please Wait", + "pagesRendering": "Pages are still being rendered. Please wait...", + "noPagesSelected": "No Pages Selected", + "selectOnePage": "Please select at least one page to download.", + "noPages": "No Pages", + "noPagesToExport": "There are no pages to export.", + "renderingTitle": "Rendering page previews", + "errorRendering": "Failed to render page thumbnails", + "error": "Error", + "failedToLoad": "Failed to load" + } +} diff --git a/public/locales/en/tools.json b/public/locales/en/tools.json index c481e60bf..e09348062 100644 --- a/public/locales/en/tools.json +++ b/public/locales/en/tools.json @@ -1,519 +1,533 @@ { - "categories": { - "popularTools": "Popular Tools", - "editAnnotate": "Edit & Annotate", - "convertToPdf": "Convert to PDF", - "convertFromPdf": "Convert from PDF", - "organizeManage": "Organize & Manage", - "optimizeRepair": "Optimize & Repair", - "securePdf": "Secure PDF" - }, - "pdfMultiTool": { - "name": "PDF Multi Tool", - "subtitle": "Merge, Split, Organize, Delete, Rotate, Add Blank Pages, Extract and Duplicate in an unified interface." - }, - "mergePdf": { - "name": "Merge PDF", - "subtitle": "Combine multiple PDFs into one file. Preserves Bookmarks." - }, - "splitPdf": { - "name": "Split PDF", - "subtitle": "Extract a range of pages into a new PDF." - }, - "compressPdf": { - "name": "Compress PDF", - "subtitle": "Reduce the file size of your PDF.", - "algorithmLabel": "Compression Algorithm", - "condense": "Condense (Recommended)", - "photon": "Photon (For Photo-Heavy PDFs)", - "condenseInfo": "Condense uses advanced compression: removes dead-weight, optimizes images, subsets fonts. Best for most PDFs.", - "photonInfo": "Photon converts pages to images. Use for photo-heavy/scanned PDFs.", - "photonWarning": "Warning: Text will become non-selectable and links will stop working.", - "levelLabel": "Compression Level", - "light": "Light (Preserve Quality)", - "balanced": "Balanced (Recommended)", - "aggressive": "Aggressive (Smaller Files)", - "extreme": "Extreme (Maximum Compression)", - "grayscale": "Convert to Grayscale", - "grayscaleHint": "Reduces file size by removing color information", - "customSettings": "Custom Settings", - "customSettingsHint": "Fine-tune compression parameters:", - "outputQuality": "Output Quality", - "resizeImagesTo": "Resize Images To", - "onlyProcessAbove": "Only Process Above", - "removeMetadata": "Remove metadata", - "subsetFonts": "Subset fonts (remove unused glyphs)", - "removeThumbnails": "Remove embedded thumbnails", - "compressButton": "Compress PDF" - }, - "pdfEditor": { - "name": "PDF Editor", - "subtitle": "Annotate, highlight, redact, comment, add shapes/images, search, and view PDFs." - }, - "jpgToPdf": { - "name": "JPG to PDF", - "subtitle": "Create a PDF from JPG, JPEG, and JPEG2000 (JP2/JPX) images." - }, - "signPdf": { - "name": "Sign PDF", - "subtitle": "Draw, type, or upload your signature." - }, - "cropPdf": { - "name": "Crop PDF", - "subtitle": "Trim the margins of every page in your PDF." - }, - "extractPages": { - "name": "Extract Pages", - "subtitle": "Save a selection of pages as new files." - }, - "duplicateOrganize": { - "name": "Duplicate & Organize", - "subtitle": "Duplicate, reorder, and delete pages." - }, - "deletePages": { - "name": "Delete Pages", - "subtitle": "Remove specific pages from your document." - }, - "editBookmarks": { - "name": "Edit Bookmarks", - "subtitle": "Add, edit, import, delete and extract PDF bookmarks." - }, - "tableOfContents": { - "name": "Table of Contents", - "subtitle": "Generate a table of contents page from PDF bookmarks." - }, - "pageNumbers": { - "name": "Page Numbers", - "subtitle": "Insert page numbers into your document." - }, - "addWatermark": { - "name": "Add Watermark", - "subtitle": "Stamp text or an image over your PDF pages." - }, - "headerFooter": { - "name": "Header & Footer", - "subtitle": "Add text to the top and bottom of pages." - }, - "invertColors": { - "name": "Invert Colors", - "subtitle": "Create a \"dark mode\" version of your PDF." - }, - "backgroundColor": { - "name": "Background Color", - "subtitle": "Change the background color of your PDF." - }, - "changeTextColor": { - "name": "Change Text Color", - "subtitle": "Change the color of text in your PDF." - }, - "addStamps": { - "name": "Add Stamps", - "subtitle": "Add image stamps to your PDF using the annotation toolbar.", - "usernameLabel": "Stamp Username", - "usernamePlaceholder": "Enter your name (for stamps)", - "usernameHint": "This name will appear on stamps you create." - }, - "removeAnnotations": { - "name": "Remove Annotations", - "subtitle": "Strip comments, highlights, and links." - }, - "pdfFormFiller": { - "name": "PDF Form Filler", - "subtitle": "Fill in forms directly in the browser. Also supports XFA forms." - }, - "createPdfForm": { - "name": "Create PDF Form", - "subtitle": "Create fillable PDF forms with drag-and-drop text fields." - }, - "removeBlankPages": { - "name": "Remove Blank Pages", - "subtitle": "Automatically detect and delete blank pages." - }, - "imageToPdf": { - "name": "Images to PDF", - "subtitle": "Convert JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP to PDF." - }, - "pngToPdf": { - "name": "PNG to PDF", - "subtitle": "Create a PDF from one or more PNG images." - }, - "webpToPdf": { - "name": "WebP to PDF", - "subtitle": "Create a PDF from one or more WebP images." - }, - "svgToPdf": { - "name": "SVG to PDF", - "subtitle": "Create a PDF from one or more SVG images." - }, - "bmpToPdf": { - "name": "BMP to PDF", - "subtitle": "Create a PDF from one or more BMP images." - }, - "heicToPdf": { - "name": "HEIC to PDF", - "subtitle": "Create a PDF from one or more HEIC images." - }, - "tiffToPdf": { - "name": "TIFF to PDF", - "subtitle": "Create a PDF from one or more TIFF images." - }, - "textToPdf": { - "name": "Text to PDF", - "subtitle": "Convert a plain text file into a PDF." - }, - "jsonToPdf": { - "name": "JSON to PDF", - "subtitle": "Convert JSON files to PDF format." - }, - "pdfToJpg": { - "name": "PDF to JPG", - "subtitle": "Convert each PDF page into a JPG image." - }, - "pdfToPng": { - "name": "PDF to PNG", - "subtitle": "Convert each PDF page into a PNG image." - }, - "pdfToWebp": { - "name": "PDF to WebP", - "subtitle": "Convert each PDF page into a WebP image." - }, - "pdfToBmp": { - "name": "PDF to BMP", - "subtitle": "Convert each PDF page into a BMP image." - }, - "pdfToTiff": { - "name": "PDF to TIFF", - "subtitle": "Convert each PDF page into a TIFF image." - }, - "pdfToGreyscale": { - "name": "PDF to Greyscale", - "subtitle": "Convert all colors to black and white." - }, - "pdfToJson": { - "name": "PDF to JSON", - "subtitle": "Convert PDF files to JSON format." - }, - "ocrPdf": { - "name": "OCR PDF", - "subtitle": "Make a PDF searchable and copyable." - }, - "alternateMix": { - "name": "Alternate & Mix Pages", - "subtitle": "Merge PDFs by alternating pages from each PDF. Preserves Bookmarks." - }, - "addAttachments": { - "name": "Add Attachments", - "subtitle": "Embed one or more files into your PDF." - }, - "extractAttachments": { - "name": "Extract Attachments", - "subtitle": "Extract all embedded files from PDF(s) as a ZIP." - }, - "editAttachments": { - "name": "Edit Attachments", - "subtitle": "View or remove attachments in your PDF." - }, - "dividePages": { - "name": "Divide Pages", - "subtitle": "Divide pages horizontally or vertically." - }, - "addBlankPage": { - "name": "Add Blank Page", - "subtitle": "Insert an empty page anywhere in your PDF." - }, - "reversePages": { - "name": "Reverse Pages", - "subtitle": "Flip the order of all pages in your document." - }, - "rotatePdf": { - "name": "Rotate PDF", - "subtitle": "Turn pages in 90-degree increments." - }, - "rotateCustom": { - "name": "Rotate by Custom Degrees", - "subtitle": "Rotate pages by any custom angle." - }, - "nUpPdf": { - "name": "N-Up PDF", - "subtitle": "Arrange multiple pages onto a single sheet." - }, - "combineToSinglePage": { - "name": "Combine to Single Page", - "subtitle": "Stitch all pages into one continuous scroll." - }, - "viewMetadata": { - "name": "View Metadata", - "subtitle": "Inspect the hidden properties of your PDF." - }, - "editMetadata": { - "name": "Edit Metadata", - "subtitle": "Change the author, title, and other properties." - }, - "pdfsToZip": { - "name": "PDFs to ZIP", - "subtitle": "Package multiple PDF files into a ZIP archive." - }, - "comparePdfs": { - "name": "Compare PDFs", - "subtitle": "Compare two PDFs side by side." - }, - "posterizePdf": { - "name": "Posterize PDF", - "subtitle": "Split a large page into multiple smaller pages." - }, - "fixPageSize": { - "name": "Fix Page Size", - "subtitle": "Standardize all pages to a uniform size." - }, - "linearizePdf": { - "name": "Linearize PDF", - "subtitle": "Optimize PDF for fast web viewing." - }, - "pageDimensions": { - "name": "Page Dimensions", - "subtitle": "Analyze page size, orientation, and units." - }, - "removeRestrictions": { - "name": "Remove Restrictions", - "subtitle": "Remove password protection and security restrictions associated with digitally signed PDF files." - }, - "repairPdf": { - "name": "Repair PDF", - "subtitle": "Recover data from corrupted or damaged PDF files." - }, - "encryptPdf": { - "name": "Encrypt PDF", - "subtitle": "Lock your PDF by adding a password." - }, - "sanitizePdf": { - "name": "Sanitize PDF", - "subtitle": "Remove metadata, annotations, scripts, and more." - }, - "decryptPdf": { - "name": "Decrypt PDF", - "subtitle": "Unlock PDF by removing password protection." - }, - "flattenPdf": { - "name": "Flatten PDF", - "subtitle": "Make form fields and annotations non-editable." - }, - "removeMetadata": { - "name": "Remove Metadata", - "subtitle": "Strip hidden data from your PDF." - }, - "changePermissions": { - "name": "Change Permissions", - "subtitle": "Set or change user permissions on a PDF." - }, - "odtToPdf": { - "name": "ODT to PDF", - "subtitle": "Convert OpenDocument Text files to PDF format. Supports multiple files.", - "acceptedFormats": "ODT files", - "convertButton": "Convert to PDF" - }, - "csvToPdf": { - "name": "CSV to PDF", - "subtitle": "Convert CSV spreadsheet files to PDF format. Supports multiple files.", - "acceptedFormats": "CSV files", - "convertButton": "Convert to PDF" - }, - "rtfToPdf": { - "name": "RTF to PDF", - "subtitle": "Convert Rich Text Format documents to PDF. Supports multiple files.", - "acceptedFormats": "RTF files", - "convertButton": "Convert to PDF" - }, - "wordToPdf": { - "name": "Word to PDF", - "subtitle": "Convert Word documents (DOCX, DOC, ODT, RTF) to PDF format. Supports multiple files.", - "acceptedFormats": "DOCX, DOC, ODT, RTF files", - "convertButton": "Convert to PDF" - }, - "excelToPdf": { - "name": "Excel to PDF", - "subtitle": "Convert Excel spreadsheets (XLSX, XLS, ODS, CSV) to PDF format. Supports multiple files.", - "acceptedFormats": "XLSX, XLS, ODS, CSV files", - "convertButton": "Convert to PDF" - }, - "powerpointToPdf": { - "name": "PowerPoint to PDF", - "subtitle": "Convert PowerPoint presentations (PPTX, PPT, ODP) to PDF format. Supports multiple files.", - "acceptedFormats": "PPTX, PPT, ODP files", - "convertButton": "Convert to PDF" - }, - "markdownToPdf": { - "name": "Markdown to PDF", - "subtitle": "Write or paste Markdown and export it as a beautifully formatted PDF.", - "paneMarkdown": "Markdown", - "panePreview": "Preview", - "btnUpload": "Upload", - "btnSyncScroll": "Sync Scroll", - "btnSettings": "Settings", - "btnExportPdf": "Export PDF", - "settingsTitle": "Markdown Settings", - "settingsPreset": "Preset", - "presetDefault": "Default (GFM-like)", - "presetCommonmark": "CommonMark (strict)", - "presetZero": "Minimal (no features)", - "settingsOptions": "Markdown Options", - "optAllowHtml": "Allow HTML tags", - "optBreaks": "Convert newlines to
", - "optLinkify": "Auto-convert URLs to links", - "optTypographer": "Typographer (smart quotes, etc.)" - }, - "pdfBooklet": { - "name": "PDF Booklet", - "subtitle": "Rearrange pages for double-sided booklet printing. Fold and staple to create a booklet.", - "howItWorks": "How it works:", - "step1": "Upload a PDF file.", - "step2": "Pages will be rearranged in booklet order.", - "step3": "Print double-sided, flip on short edge, fold and staple.", - "paperSize": "Paper Size", - "orientation": "Orientation", - "portrait": "Portrait", - "landscape": "Landscape", - "pagesPerSheet": "Pages per Sheet", - "createBooklet": "Create Booklet", - "processing": "Processing...", - "pageCount": "Page count will be padded to multiple of 4 if needed." - }, - "xpsToPdf": { - "name": "XPS to PDF", - "subtitle": "Convert XPS/OXPS documents to PDF format. Supports multiple files.", - "acceptedFormats": "XPS, OXPS files", - "convertButton": "Convert to PDF" - }, - "mobiToPdf": { - "name": "MOBI to PDF", - "subtitle": "Convert MOBI e-books to PDF format. Supports multiple files.", - "acceptedFormats": "MOBI files", - "convertButton": "Convert to PDF" - }, - "epubToPdf": { - "name": "EPUB to PDF", - "subtitle": "Convert EPUB e-books to PDF format. Supports multiple files.", - "acceptedFormats": "EPUB files", - "convertButton": "Convert to PDF" - }, - "fb2ToPdf": { - "name": "FB2 to PDF", - "subtitle": "Convert FictionBook (FB2) e-books to PDF format. Supports multiple files.", - "acceptedFormats": "FB2 files", - "convertButton": "Convert to PDF" - }, - "cbzToPdf": { - "name": "CBZ to PDF", - "subtitle": "Convert comic book archives (CBZ/CBR) to PDF format. Supports multiple files.", - "acceptedFormats": "CBZ, CBR files", - "convertButton": "Convert to PDF" - }, - "wpdToPdf": { - "name": "WPD to PDF", - "subtitle": "Convert WordPerfect documents (WPD) to PDF format. Supports multiple files.", - "acceptedFormats": "WPD files", - "convertButton": "Convert to PDF" - }, - "wpsToPdf": { - "name": "WPS to PDF", - "subtitle": "Convert WPS Office documents to PDF format. Supports multiple files.", - "acceptedFormats": "WPS files", - "convertButton": "Convert to PDF" - }, - "xmlToPdf": { - "name": "XML to PDF", - "subtitle": "Convert XML documents to PDF format. Supports multiple files.", - "acceptedFormats": "XML files", - "convertButton": "Convert to PDF" - }, - "pagesToPdf": { - "name": "Pages to PDF", - "subtitle": "Convert Apple Pages documents to PDF format. Supports multiple files.", - "acceptedFormats": "Pages files", - "convertButton": "Convert to PDF" - }, - "odgToPdf": { - "name": "ODG to PDF", - "subtitle": "Convert OpenDocument Graphics (ODG) files to PDF format. Supports multiple files.", - "acceptedFormats": "ODG files", - "convertButton": "Convert to PDF" - }, - "odsToPdf": { - "name": "ODS to PDF", - "subtitle": "Convert OpenDocument Spreadsheet (ODS) files to PDF format. Supports multiple files.", - "acceptedFormats": "ODS files", - "convertButton": "Convert to PDF" - }, - "odpToPdf": { - "name": "ODP to PDF", - "subtitle": "Convert OpenDocument Presentation (ODP) files to PDF format. Supports multiple files.", - "acceptedFormats": "ODP files", - "convertButton": "Convert to PDF" - }, - "pubToPdf": { - "name": "PUB to PDF", - "subtitle": "Convert Microsoft Publisher (PUB) files to PDF format. Supports multiple files.", - "acceptedFormats": "PUB files", - "convertButton": "Convert to PDF" - }, - "vsdToPdf": { - "name": "VSD to PDF", - "subtitle": "Convert Microsoft Visio (VSD, VSDX) files to PDF format. Supports multiple files.", - "acceptedFormats": "VSD, VSDX files", - "convertButton": "Convert to PDF" - }, - "psdToPdf": { - "name": "PSD to PDF", - "subtitle": "Convert Adobe Photoshop (PSD) files to PDF format. Supports multiple files.", - "acceptedFormats": "PSD files", - "convertButton": "Convert to PDF" - }, - "pdfToSvg": { - "name": "PDF to SVG", - "subtitle": "Convert each page of a PDF file into a scalable vector graphic (SVG) for perfect quality at any size." - }, - "extractTables": { - "name": "Extract PDF Tables", - "subtitle": "Extract tables from PDF files and export as CSV, JSON, or Markdown." - }, - "pdfToCsv": { - "name": "PDF to CSV", - "subtitle": "Extract tables from PDF and convert to CSV format." - }, - "pdfToExcel": { - "name": "PDF to Excel", - "subtitle": "Extract tables from PDF and convert to Excel (XLSX) format." - }, - "pdfToText": { - "name": "PDF to Text", - "subtitle": "Extract text from PDF files and save as plain text (.txt). Supports multiple files.", - "note": "This tool works ONLY with digitally created PDFs. For scanned documents or image-based PDFs, use our OCR PDF tool instead.", - "convertButton": "Extract Text" - }, - "digitalSignPdf": { - "name": "Digital Signature PDF", - "pageTitle": "Digital Signature PDF - Add Cryptographic Signature | BentoPDF", - "subtitle": "Add a cryptographic digital signature to your PDF using X.509 certificates. Supports PKCS#12 (.pfx, .p12) and PEM formats. Your private key never leaves your browser.", - "certificateSection": "Certificate", - "uploadCert": "Upload certificate (.pfx, .p12)", - "certPassword": "Certificate Password", - "certPasswordPlaceholder": "Enter certificate password", - "certInfo": "Certificate Information", - "certSubject": "Subject", - "certIssuer": "Issuer", - "certValidity": "Valid", - "signatureDetails": "Signature Details (Optional)", - "reason": "Reason", - "reasonPlaceholder": "e.g., I approve this document", - "location": "Location", - "locationPlaceholder": "e.g., New York, USA", - "contactInfo": "Contact Info", - "contactPlaceholder": "e.g., email@example.com", - "applySignature": "Apply Digital Signature", - "successMessage": "PDF signed successfully! The signature can be verified in any PDF reader." - }, - "validateSignaturePdf": { - "name": "Validate PDF Signature", - "pageTitle": "Validate PDF Signature - Verify Digital Signatures | BentoPDF", - "subtitle": "Verify digital signatures in your PDF files. Check certificate validity, view signer details, and confirm document integrity. All processing happens in your browser." - } -} \ No newline at end of file + "categories": { + "popularTools": "Popular Tools", + "editAnnotate": "Edit & Annotate", + "convertToPdf": "Convert to PDF", + "convertFromPdf": "Convert from PDF", + "organizeManage": "Organize & Manage", + "optimizeRepair": "Optimize & Repair", + "securePdf": "Secure PDF" + }, + "pdfMultiTool": { + "name": "PDF Multi Tool", + "subtitle": "Merge, Split, Organize, Delete, Rotate, Add Blank Pages, Extract and Duplicate in an unified interface." + }, + "mergePdf": { + "name": "Merge PDF", + "subtitle": "Combine multiple PDFs into one file. Preserves Bookmarks." + }, + "splitPdf": { + "name": "Split PDF", + "subtitle": "Extract a range of pages into a new PDF." + }, + "compressPdf": { + "name": "Compress PDF", + "subtitle": "Reduce the file size of your PDF.", + "algorithmLabel": "Compression Algorithm", + "condense": "Condense (Recommended)", + "photon": "Photon (For Photo-Heavy PDFs)", + "condenseInfo": "Condense uses advanced compression: removes dead-weight, optimizes images, subsets fonts. Best for most PDFs.", + "photonInfo": "Photon converts pages to images. Use for photo-heavy/scanned PDFs.", + "photonWarning": "Warning: Text will become non-selectable and links will stop working.", + "levelLabel": "Compression Level", + "light": "Light (Preserve Quality)", + "balanced": "Balanced (Recommended)", + "aggressive": "Aggressive (Smaller Files)", + "extreme": "Extreme (Maximum Compression)", + "grayscale": "Convert to Grayscale", + "grayscaleHint": "Reduces file size by removing color information", + "customSettings": "Custom Settings", + "customSettingsHint": "Fine-tune compression parameters:", + "outputQuality": "Output Quality", + "resizeImagesTo": "Resize Images To", + "onlyProcessAbove": "Only Process Above", + "removeMetadata": "Remove metadata", + "subsetFonts": "Subset fonts (remove unused glyphs)", + "removeThumbnails": "Remove embedded thumbnails", + "compressButton": "Compress PDF" + }, + "pdfEditor": { + "name": "PDF Editor", + "subtitle": "Annotate, highlight, redact, comment, add shapes/images, search, and view PDFs." + }, + "jpgToPdf": { + "name": "JPG to PDF", + "subtitle": "Create a PDF from JPG, JPEG, and JPEG2000 (JP2/JPX) images." + }, + "signPdf": { + "name": "Sign PDF", + "subtitle": "Draw, type, or upload your signature." + }, + "cropPdf": { + "name": "Crop PDF", + "subtitle": "Trim the margins of every page in your PDF." + }, + "extractPages": { + "name": "Extract Pages", + "subtitle": "Save a selection of pages as new files." + }, + "duplicateOrganize": { + "name": "Duplicate & Organize", + "subtitle": "Duplicate, reorder, and delete pages." + }, + "deletePages": { + "name": "Delete Pages", + "subtitle": "Remove specific pages from your document." + }, + "editBookmarks": { + "name": "Edit Bookmarks", + "subtitle": "Add, edit, import, delete and extract PDF bookmarks." + }, + "tableOfContents": { + "name": "Table of Contents", + "subtitle": "Generate a table of contents page from PDF bookmarks." + }, + "pageNumbers": { + "name": "Page Numbers", + "subtitle": "Insert page numbers into your document." + }, + "addWatermark": { + "name": "Add Watermark", + "subtitle": "Stamp text or an image over your PDF pages." + }, + "headerFooter": { + "name": "Header & Footer", + "subtitle": "Add text to the top and bottom of pages." + }, + "invertColors": { + "name": "Invert Colors", + "subtitle": "Create a \"dark mode\" version of your PDF." + }, + "backgroundColor": { + "name": "Background Color", + "subtitle": "Change the background color of your PDF." + }, + "changeTextColor": { + "name": "Change Text Color", + "subtitle": "Change the color of text in your PDF." + }, + "addStamps": { + "name": "Add Stamps", + "subtitle": "Add image stamps to your PDF using the annotation toolbar.", + "usernameLabel": "Stamp Username", + "usernamePlaceholder": "Enter your name (for stamps)", + "usernameHint": "This name will appear on stamps you create." + }, + "removeAnnotations": { + "name": "Remove Annotations", + "subtitle": "Strip comments, highlights, and links." + }, + "pdfFormFiller": { + "name": "PDF Form Filler", + "subtitle": "Fill in forms directly in the browser. Also supports XFA forms." + }, + "createPdfForm": { + "name": "Create PDF Form", + "subtitle": "Create fillable PDF forms with drag-and-drop text fields." + }, + "removeBlankPages": { + "name": "Remove Blank Pages", + "subtitle": "Automatically detect and delete blank pages." + }, + "imageToPdf": { + "name": "Images to PDF", + "subtitle": "Convert JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP to PDF." + }, + "pngToPdf": { + "name": "PNG to PDF", + "subtitle": "Create a PDF from one or more PNG images." + }, + "webpToPdf": { + "name": "WebP to PDF", + "subtitle": "Create a PDF from one or more WebP images." + }, + "svgToPdf": { + "name": "SVG to PDF", + "subtitle": "Create a PDF from one or more SVG images." + }, + "bmpToPdf": { + "name": "BMP to PDF", + "subtitle": "Create a PDF from one or more BMP images." + }, + "heicToPdf": { + "name": "HEIC to PDF", + "subtitle": "Create a PDF from one or more HEIC images." + }, + "tiffToPdf": { + "name": "TIFF to PDF", + "subtitle": "Create a PDF from one or more TIFF images." + }, + "textToPdf": { + "name": "Text to PDF", + "subtitle": "Convert a plain text file into a PDF." + }, + "jsonToPdf": { + "name": "JSON to PDF", + "subtitle": "Convert JSON files to PDF format." + }, + "pdfToJpg": { + "name": "PDF to JPG", + "subtitle": "Convert each PDF page into a JPG image." + }, + "pdfToPng": { + "name": "PDF to PNG", + "subtitle": "Convert each PDF page into a PNG image." + }, + "pdfToWebp": { + "name": "PDF to WebP", + "subtitle": "Convert each PDF page into a WebP image." + }, + "pdfToBmp": { + "name": "PDF to BMP", + "subtitle": "Convert each PDF page into a BMP image." + }, + "pdfToTiff": { + "name": "PDF to TIFF", + "subtitle": "Convert each PDF page into a TIFF image." + }, + "pdfToGreyscale": { + "name": "PDF to Greyscale", + "subtitle": "Convert all colors to black and white." + }, + "pdfToJson": { + "name": "PDF to JSON", + "subtitle": "Convert PDF files to JSON format." + }, + "ocrPdf": { + "name": "OCR PDF", + "subtitle": "Make a PDF searchable and copyable." + }, + "alternateMix": { + "name": "Alternate & Mix Pages", + "subtitle": "Merge PDFs by alternating pages from each PDF. Preserves Bookmarks." + }, + "addAttachments": { + "name": "Add Attachments", + "subtitle": "Embed one or more files into your PDF." + }, + "extractAttachments": { + "name": "Extract Attachments", + "subtitle": "Extract all embedded files from PDF(s) as a ZIP." + }, + "editAttachments": { + "name": "Edit Attachments", + "subtitle": "View or remove attachments in your PDF." + }, + "dividePages": { + "name": "Divide Pages", + "subtitle": "Divide pages horizontally or vertically." + }, + "addBlankPage": { + "name": "Add Blank Page", + "subtitle": "Insert an empty page anywhere in your PDF." + }, + "reversePages": { + "name": "Reverse Pages", + "subtitle": "Flip the order of all pages in your document." + }, + "rotatePdf": { + "name": "Rotate PDF", + "subtitle": "Turn pages in 90-degree increments." + }, + "rotateCustom": { + "name": "Rotate by Custom Degrees", + "subtitle": "Rotate pages by any custom angle." + }, + "nUpPdf": { + "name": "N-Up PDF", + "subtitle": "Arrange multiple pages onto a single sheet." + }, + "combineToSinglePage": { + "name": "Combine to Single Page", + "subtitle": "Stitch all pages into one continuous scroll." + }, + "viewMetadata": { + "name": "View Metadata", + "subtitle": "Inspect the hidden properties of your PDF." + }, + "editMetadata": { + "name": "Edit Metadata", + "subtitle": "Change the author, title, and other properties." + }, + "pdfsToZip": { + "name": "PDFs to ZIP", + "subtitle": "Package multiple PDF files into a ZIP archive." + }, + "comparePdfs": { + "name": "Compare PDFs", + "subtitle": "Compare two PDFs side by side." + }, + "posterizePdf": { + "name": "Posterize PDF", + "subtitle": "Split a large page into multiple smaller pages." + }, + "fixPageSize": { + "name": "Fix Page Size", + "subtitle": "Standardize all pages to a uniform size." + }, + "linearizePdf": { + "name": "Linearize PDF", + "subtitle": "Optimize PDF for fast web viewing." + }, + "pageDimensions": { + "name": "Page Dimensions", + "subtitle": "Analyze page size, orientation, and units." + }, + "removeRestrictions": { + "name": "Remove Restrictions", + "subtitle": "Remove password protection and security restrictions associated with digitally signed PDF files." + }, + "repairPdf": { + "name": "Repair PDF", + "subtitle": "Recover data from corrupted or damaged PDF files." + }, + "encryptPdf": { + "name": "Encrypt PDF", + "subtitle": "Lock your PDF by adding a password." + }, + "sanitizePdf": { + "name": "Sanitize PDF", + "subtitle": "Remove metadata, annotations, scripts, and more." + }, + "decryptPdf": { + "name": "Decrypt PDF", + "subtitle": "Unlock PDF by removing password protection." + }, + "flattenPdf": { + "name": "Flatten PDF", + "subtitle": "Make form fields and annotations non-editable." + }, + "removeMetadata": { + "name": "Remove Metadata", + "subtitle": "Strip hidden data from your PDF." + }, + "changePermissions": { + "name": "Change Permissions", + "subtitle": "Set or change user permissions on a PDF." + }, + "odtToPdf": { + "name": "ODT to PDF", + "subtitle": "Convert OpenDocument Text files to PDF format. Supports multiple files.", + "acceptedFormats": "ODT files", + "convertButton": "Convert to PDF" + }, + "csvToPdf": { + "name": "CSV to PDF", + "subtitle": "Convert CSV spreadsheet files to PDF format. Supports multiple files.", + "acceptedFormats": "CSV files", + "convertButton": "Convert to PDF" + }, + "rtfToPdf": { + "name": "RTF to PDF", + "subtitle": "Convert Rich Text Format documents to PDF. Supports multiple files.", + "acceptedFormats": "RTF files", + "convertButton": "Convert to PDF" + }, + "wordToPdf": { + "name": "Word to PDF", + "subtitle": "Convert Word documents (DOCX, DOC, ODT, RTF) to PDF format. Supports multiple files.", + "acceptedFormats": "DOCX, DOC, ODT, RTF files", + "convertButton": "Convert to PDF" + }, + "excelToPdf": { + "name": "Excel to PDF", + "subtitle": "Convert Excel spreadsheets (XLSX, XLS, ODS, CSV) to PDF format. Supports multiple files.", + "acceptedFormats": "XLSX, XLS, ODS, CSV files", + "convertButton": "Convert to PDF" + }, + "powerpointToPdf": { + "name": "PowerPoint to PDF", + "subtitle": "Convert PowerPoint presentations (PPTX, PPT, ODP) to PDF format. Supports multiple files.", + "acceptedFormats": "PPTX, PPT, ODP files", + "convertButton": "Convert to PDF" + }, + "markdownToPdf": { + "name": "Markdown to PDF", + "subtitle": "Write or paste Markdown and export it as a beautifully formatted PDF.", + "paneMarkdown": "Markdown", + "panePreview": "Preview", + "btnUpload": "Upload", + "btnSyncScroll": "Sync Scroll", + "btnSettings": "Settings", + "btnExportPdf": "Export PDF", + "settingsTitle": "Markdown Settings", + "settingsPreset": "Preset", + "presetDefault": "Default (GFM-like)", + "presetCommonmark": "CommonMark (strict)", + "presetZero": "Minimal (no features)", + "settingsOptions": "Markdown Options", + "optAllowHtml": "Allow HTML tags", + "optBreaks": "Convert newlines to
", + "optLinkify": "Auto-convert URLs to links", + "optTypographer": "Typographer (smart quotes, etc.)" + }, + "pdfBooklet": { + "name": "PDF Booklet", + "subtitle": "Rearrange pages for double-sided booklet printing. Fold and staple to create a booklet.", + "howItWorks": "How it works:", + "step1": "Upload a PDF file.", + "step2": "Pages will be rearranged in booklet order.", + "step3": "Print double-sided, flip on short edge, fold and staple.", + "paperSize": "Paper Size", + "orientation": "Orientation", + "portrait": "Portrait", + "landscape": "Landscape", + "pagesPerSheet": "Pages per Sheet", + "createBooklet": "Create Booklet", + "processing": "Processing...", + "pageCount": "Page count will be padded to multiple of 4 if needed." + }, + "xpsToPdf": { + "name": "XPS to PDF", + "subtitle": "Convert XPS/OXPS documents to PDF format. Supports multiple files.", + "acceptedFormats": "XPS, OXPS files", + "convertButton": "Convert to PDF" + }, + "mobiToPdf": { + "name": "MOBI to PDF", + "subtitle": "Convert MOBI e-books to PDF format. Supports multiple files.", + "acceptedFormats": "MOBI files", + "convertButton": "Convert to PDF" + }, + "epubToPdf": { + "name": "EPUB to PDF", + "subtitle": "Convert EPUB e-books to PDF format. Supports multiple files.", + "acceptedFormats": "EPUB files", + "convertButton": "Convert to PDF" + }, + "fb2ToPdf": { + "name": "FB2 to PDF", + "subtitle": "Convert FictionBook (FB2) e-books to PDF format. Supports multiple files.", + "acceptedFormats": "FB2 files", + "convertButton": "Convert to PDF" + }, + "cbzToPdf": { + "name": "CBZ to PDF", + "subtitle": "Convert comic book archives (CBZ/CBR) to PDF format. Supports multiple files.", + "acceptedFormats": "CBZ, CBR files", + "convertButton": "Convert to PDF" + }, + "wpdToPdf": { + "name": "WPD to PDF", + "subtitle": "Convert WordPerfect documents (WPD) to PDF format. Supports multiple files.", + "acceptedFormats": "WPD files", + "convertButton": "Convert to PDF" + }, + "wpsToPdf": { + "name": "WPS to PDF", + "subtitle": "Convert WPS Office documents to PDF format. Supports multiple files.", + "acceptedFormats": "WPS files", + "convertButton": "Convert to PDF" + }, + "xmlToPdf": { + "name": "XML to PDF", + "subtitle": "Convert XML documents to PDF format. Supports multiple files.", + "acceptedFormats": "XML files", + "convertButton": "Convert to PDF" + }, + "pagesToPdf": { + "name": "Pages to PDF", + "subtitle": "Convert Apple Pages documents to PDF format. Supports multiple files.", + "acceptedFormats": "Pages files", + "convertButton": "Convert to PDF" + }, + "odgToPdf": { + "name": "ODG to PDF", + "subtitle": "Convert OpenDocument Graphics (ODG) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODG files", + "convertButton": "Convert to PDF" + }, + "odsToPdf": { + "name": "ODS to PDF", + "subtitle": "Convert OpenDocument Spreadsheet (ODS) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODS files", + "convertButton": "Convert to PDF" + }, + "odpToPdf": { + "name": "ODP to PDF", + "subtitle": "Convert OpenDocument Presentation (ODP) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODP files", + "convertButton": "Convert to PDF" + }, + "pubToPdf": { + "name": "PUB to PDF", + "subtitle": "Convert Microsoft Publisher (PUB) files to PDF format. Supports multiple files.", + "acceptedFormats": "PUB files", + "convertButton": "Convert to PDF" + }, + "vsdToPdf": { + "name": "VSD to PDF", + "subtitle": "Convert Microsoft Visio (VSD, VSDX) files to PDF format. Supports multiple files.", + "acceptedFormats": "VSD, VSDX files", + "convertButton": "Convert to PDF" + }, + "psdToPdf": { + "name": "PSD to PDF", + "subtitle": "Convert Adobe Photoshop (PSD) files to PDF format. Supports multiple files.", + "acceptedFormats": "PSD files", + "convertButton": "Convert to PDF" + }, + "pdfToSvg": { + "name": "PDF to SVG", + "subtitle": "Convert each page of a PDF file into a scalable vector graphic (SVG) for perfect quality at any size." + }, + "extractTables": { + "name": "Extract PDF Tables", + "subtitle": "Extract tables from PDF files and export as CSV, JSON, or Markdown." + }, + "pdfToCsv": { + "name": "PDF to CSV", + "subtitle": "Extract tables from PDF and convert to CSV format." + }, + "pdfToExcel": { + "name": "PDF to Excel", + "subtitle": "Extract tables from PDF and convert to Excel (XLSX) format." + }, + "pdfToText": { + "name": "PDF to Text", + "subtitle": "Extract text from PDF files and save as plain text (.txt). Supports multiple files.", + "note": "This tool works ONLY with digitally created PDFs. For scanned documents or image-based PDFs, use our OCR PDF tool instead.", + "convertButton": "Extract Text" + }, + "digitalSignPdf": { + "name": "Digital Signature PDF", + "pageTitle": "Digital Signature PDF - Add Cryptographic Signature | BentoPDF", + "subtitle": "Add a cryptographic digital signature to your PDF using X.509 certificates. Supports PKCS#12 (.pfx, .p12) and PEM formats. Your private key never leaves your browser.", + "certificateSection": "Certificate", + "uploadCert": "Upload certificate (.pfx, .p12)", + "certPassword": "Certificate Password", + "certPasswordPlaceholder": "Enter certificate password", + "certInfo": "Certificate Information", + "certSubject": "Subject", + "certIssuer": "Issuer", + "certValidity": "Valid", + "signatureDetails": "Signature Details (Optional)", + "reason": "Reason", + "reasonPlaceholder": "e.g., I approve this document", + "location": "Location", + "locationPlaceholder": "e.g., New York, USA", + "contactInfo": "Contact Info", + "contactPlaceholder": "e.g., email@example.com", + "applySignature": "Apply Digital Signature", + "successMessage": "PDF signed successfully! The signature can be verified in any PDF reader." + }, + "validateSignaturePdf": { + "name": "Validate PDF Signature", + "pageTitle": "Validate PDF Signature - Verify Digital Signatures | BentoPDF", + "subtitle": "Verify digital signatures in your PDF files. Check certificate validity, view signer details, and confirm document integrity. All processing happens in your browser." + }, + "emailToPdf": { + "name": "Email to PDF", + "subtitle": "Convert email files (EML, MSG) to PDF format. Supports Outlook exports and standard email formats.", + "acceptedFormats": "EML, MSG files", + "convertButton": "Convert to PDF" + }, + "fontToOutline": { + "name": "Font to Outline", + "subtitle": "Convert all fonts to vector outlines for consistent rendering across all devices." + }, + "deskewPdf": { + "name": "Deskew PDF", + "subtitle": "Automatically straighten tilted scanned pages using OpenCV." + } +} diff --git a/public/locales/es/common.json b/public/locales/es/common.json new file mode 100644 index 000000000..a5028553d --- /dev/null +++ b/public/locales/es/common.json @@ -0,0 +1,323 @@ +{ + "nav": { + "home": "Inicio", + "about": "Acerca de", + "contact": "Contacto", + "licensing": "Licencias", + "allTools": "Todas las Herramientas", + "openMainMenu": "Abrir menรบ principal", + "language": "Idioma" + }, + "donation": { + "message": "ยฟTe encanta BentoPDF? ยกAyรบdanos a mantenerlo gratis y de cรณdigo abierto!", + "button": "Donar" + }, + "hero": { + "title": "El", + "pdfToolkit": "Kit de Herramientas PDF", + "builtForPrivacy": "diseรฑado para la privacidad", + "noSignups": "Sin Registro", + "unlimitedUse": "Uso Ilimitado", + "worksOffline": "Funciona Sin Conexiรณn", + "startUsing": "Comenzar a Usar Ahora" + }, + "usedBy": { + "title": "Usado por empresas y personas que trabajan en" + }, + "features": { + "title": "ยฟPor quรฉ elegir", + "bentoPdf": "BentoPDF?", + "noSignup": { + "title": "Sin Registro", + "description": "Comienza al instante, sin cuentas ni correos electrรณnicos." + }, + "noUploads": { + "title": "Sin Cargas", + "description": "100% del lado del cliente, tus archivos nunca salen de tu dispositivo." + }, + "foreverFree": { + "title": "Gratis para Siempre", + "description": "Todas las herramientas, sin pruebas, sin restricciones de pago." + }, + "noLimits": { + "title": "Sin Lรญmites", + "description": "Usa tanto como quieras, sin lรญmites ocultos." + }, + "batchProcessing": { + "title": "Procesamiento por Lotes", + "description": "Maneja PDFs ilimitados de una sola vez." + }, + "lightningFast": { + "title": "Ultrarrรกpido", + "description": "Procesa PDFs al instante, sin esperas ni retrasos." + } + }, + "tools": { + "title": "Comienza con", + "toolsLabel": "Herramientas", + "subtitle": "Haz clic en una herramienta para abrir el cargador de archivos", + "searchPlaceholder": "Buscar una herramienta (ej., 'dividir', 'organizar'...)", + "backToTools": "Volver a Herramientas", + "firstLoadNotice": "La primera carga toma un momento mientras descargamos nuestro motor de conversiรณn. Despuรฉs de eso, todas las cargas serรกn instantรกneas." + }, + "upload": { + "clickToSelect": "Haz clic para seleccionar un archivo", + "orDragAndDrop": "o arrastra y suelta", + "pdfOrImages": "PDFs o Imรกgenes", + "filesNeverLeave": "Tus archivos nunca salen de tu dispositivo.", + "addMore": "Agregar Mรกs Archivos", + "clearAll": "Limpiar Todo" + }, + "loader": { + "processing": "Procesando..." + }, + "alert": { + "title": "Alerta", + "ok": "OK" + }, + "preview": { + "title": "Vista Previa del Documento", + "downloadAsPdf": "Descargar como PDF", + "close": "Cerrar" + }, + "settings": { + "title": "Configuraciรณn", + "shortcuts": "Atajos", + "preferences": "Preferencias", + "displayPreferences": "Preferencias de Visualizaciรณn", + "searchShortcuts": "Buscar atajos...", + "shortcutsInfo": "Mantรฉn presionadas las teclas para establecer un atajo. Los cambios se guardan automรกticamente.", + "shortcutsWarning": "โš ๏ธ Evita los atajos comunes del navegador (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N, etc.) ya que pueden no funcionar de manera confiable.", + "import": "Importar", + "export": "Exportar", + "resetToDefaults": "Restaurar Valores Predeterminados", + "fullWidthMode": "Modo de Ancho Completo", + "fullWidthDescription": "Usa el ancho completo de la pantalla para todas las herramientas en lugar de un contenedor centrado", + "settingsAutoSaved": "La configuraciรณn se guarda automรกticamente", + "clickToSet": "Haz clic para establecer", + "pressKeys": "Presiona teclas...", + "warnings": { + "alreadyInUse": "Atajo Ya en Uso", + "assignedTo": "ya estรก asignado a:", + "chooseDifferent": "Por favor elige un atajo diferente.", + "reserved": "Advertencia de Atajo Reservado", + "commonlyUsed": "se usa comรบnmente para:", + "unreliable": "Este atajo puede no funcionar de manera confiable o puede entrar en conflicto con el comportamiento del navegador/sistema.", + "useAnyway": "ยฟQuieres usarlo de todos modos?", + "resetTitle": "Restablecer Atajos", + "resetMessage": "ยฟEstรกs seguro de que quieres restablecer todos los atajos a los valores predeterminados?

Esta acciรณn no se puede deshacer.", + "importSuccessTitle": "Importaciรณn Exitosa", + "importSuccessMessage": "ยกAtajos importados exitosamente!", + "importFailTitle": "Importaciรณn Fallida", + "importFailMessage": "Error al importar atajos. Formato de archivo invรกlido." + } + }, + "warning": { + "title": "Advertencia", + "cancel": "Cancelar", + "proceed": "Continuar" + }, + "compliance": { + "title": "Tus datos nunca salen de tu dispositivo", + "weKeep": "Mantenemos", + "yourInfoSafe": "tu informaciรณn segura", + "byFollowingStandards": "siguiendo estรกndares de seguridad globales.", + "processingLocal": "Todo el procesamiento ocurre localmente en tu dispositivo.", + "gdpr": { + "title": "Cumplimiento GDPR", + "description": "Protege los datos personales y la privacidad de las personas dentro de la Uniรณn Europea." + }, + "ccpa": { + "title": "Cumplimiento CCPA", + "description": "Otorga a los residentes de California derechos sobre cรณmo se recopila, usa y comparte su informaciรณn personal." + }, + "hipaa": { + "title": "Cumplimiento HIPAA", + "description": "Establece salvaguardas para el manejo de informaciรณn de salud sensible en el sistema de atenciรณn mรฉdica de Estados Unidos." + } + }, + "faq": { + "title": "Preguntas", + "questions": "Frecuentes", + "isFree": { + "question": "ยฟBentoPDF es realmente gratis?", + "answer": "Sรญ, absolutamente. Todas las herramientas en BentoPDF son 100% gratuitas, sin lรญmites de archivos, sin registro y sin marcas de agua. Creemos que todos merecen acceso a herramientas PDF simples y potentes sin un muro de pago." + }, + "areFilesSecure": { + "question": "ยฟMis archivos estรกn seguros? ยฟDรณnde se procesan?", + "answer": "Tus archivos estรกn lo mรกs seguros posible porque nunca salen de tu computadora. Todo el procesamiento ocurre directamente en tu navegador web (del lado del cliente). Nunca cargamos tus archivos a un servidor, por lo que mantienes total privacidad y control sobre tus documentos." + }, + "platforms": { + "question": "ยฟFunciona en Mac, Windows y Mรณvil?", + "answer": "ยกSรญ! Dado que BentoPDF se ejecuta completamente en tu navegador, funciona en cualquier sistema operativo con un navegador web moderno, incluyendo Windows, macOS, Linux, iOS y Android." + }, + "gdprCompliant": { + "question": "ยฟBentoPDF cumple con GDPR?", + "answer": "Sรญ. BentoPDF cumple completamente con GDPR. Dado que todo el procesamiento de archivos ocurre localmente en tu navegador y nunca recopilamos ni transmitimos tus archivos a ningรบn servidor, no tenemos acceso a tus datos. Esto garantiza que siempre tengas el control de tus documentos." + }, + "dataStorage": { + "question": "ยฟAlmacenan o rastrean alguno de mis archivos?", + "answer": "No. Nunca almacenamos, rastreamos ni registramos tus archivos. Todo lo que haces en BentoPDF ocurre en la memoria de tu navegador y desaparece una vez que cierras la pรกgina. No hay cargas, no hay registros de historial y no hay servidores involucrados." + }, + "different": { + "question": "ยฟQuรฉ hace que BentoPDF sea diferente de otras herramientas PDF?", + "answer": "La mayorรญa de las herramientas PDF cargan tus archivos a un servidor para procesarlos. BentoPDF nunca hace eso. Utilizamos tecnologรญa web moderna y segura para procesar tus archivos directamente en tu navegador. Esto significa un rendimiento mรกs rรกpido, mayor privacidad y total tranquilidad." + }, + "browserBased": { + "question": "ยฟCรณmo me mantiene seguro el procesamiento basado en navegador?", + "answer": "Al ejecutarse completamente dentro de tu navegador, BentoPDF garantiza que tus archivos nunca salgan de tu dispositivo. Esto elimina los riesgos de hackeos de servidores, violaciones de datos o accesos no autorizados. Tus archivos siguen siendo tuyos, siempre." + }, + "analytics": { + "question": "ยฟUsan cookies o anรกlisis para rastrearme?", + "answer": "Nos preocupamos por tu privacidad. BentoPDF no rastrea informaciรณn personal. Usamos Simple Analytics รบnicamente para ver recuentos de visitas anรณnimas. Esto significa que podemos saber cuรกntos usuarios visitan nuestro sitio, pero nunca sabemos quiรฉn eres. Simple Analytics cumple completamente con GDPR y respeta tu privacidad." + } + }, + "testimonials": { + "title": "Lo que Nuestros", + "users": "Usuarios", + "say": "Dicen" + }, + "support": { + "title": "ยฟTe Gusta Mi Trabajo?", + "description": "BentoPDF es un proyecto de pasiรณn, creado para proporcionar un kit de herramientas PDF gratuito, privado y potente para todos. Si te resulta รบtil, considera apoyar su desarrollo. ยกCada cafรฉ ayuda!", + "buyMeCoffee": "Cรณmprame un Cafรฉ" + }, + "footer": { + "copyright": "ยฉ 2025 BentoPDF. Todos los derechos reservados.", + "version": "Versiรณn", + "company": "Empresa", + "aboutUs": "Acerca de Nosotros", + "faqLink": "Preguntas Frecuentes", + "contactUs": "Contรกctanos", + "legal": "Legal", + "termsAndConditions": "Tรฉrminos y Condiciones", + "privacyPolicy": "Polรญtica de Privacidad", + "followUs": "Sรญguenos" + }, + "merge": { + "title": "Fusionar PDFs", + "description": "Combina archivos completos o selecciona pรกginas especรญficas para fusionar en un nuevo documento.", + "fileMode": "Modo Archivo", + "pageMode": "Modo Pรกgina", + "howItWorks": "Cรณmo funciona:", + "fileModeInstructions": [ + "Haz clic y arrastra el รญcono para cambiar el orden de los archivos.", + "En el cuadro \"Pรกginas\" para cada archivo, puedes especificar rangos (ej., \"1-3, 5\") para fusionar solo esas pรกginas.", + "Deja el cuadro \"Pรกginas\" en blanco para incluir todas las pรกginas de ese archivo." + ], + "pageModeInstructions": [ + "Todas las pรกginas de tus PDFs cargados se muestran a continuaciรณn.", + "Simplemente arrastra y suelta las miniaturas de pรกginas individuales para crear el orden exacto que deseas para tu nuevo archivo." + ], + "mergePdfs": "Fusionar PDFs" + }, + "common": { + "page": "Pรกgina", + "pages": "Pรกginas", + "of": "de", + "download": "Descargar", + "cancel": "Cancelar", + "save": "Guardar", + "delete": "Eliminar", + "edit": "Editar", + "add": "Agregar", + "remove": "Remover", + "loading": "Cargando...", + "error": "Error", + "success": "ร‰xito", + "file": "Archivo", + "files": "Archivos" + }, + "about": { + "hero": { + "title": "Creemos que las herramientas PDF deben ser", + "subtitle": "rรกpidas, privadas y gratuitas.", + "noCompromises": "Sin compromisos." + }, + "mission": { + "title": "Nuestra Misiรณn", + "description": "Proporcionar la caja de herramientas PDF mรกs completa que respete tu privacidad y nunca pida pago. Creemos que las herramientas de documentos esenciales deben ser accesibles para todos, en todas partes, sin barreras." + }, + "philosophy": { + "label": "Nuestra Filosofรญa Central", + "title": "Privacidad Primero. Siempre.", + "description": "En una era donde los datos son una mercancรญa, adoptamos un enfoque diferente. Todo el procesamiento de las herramientas de Bentopdf ocurre localmente en tu navegador. Esto significa que tus archivos nunca tocan nuestros servidores, nunca vemos tus documentos y no rastreamos lo que haces. Tus documentos permanecen completa e inequรญvocamente privados. No es solo una caracterรญstica; es nuestra base." + }, + "whyBentopdf": { + "title": "Por quรฉ", + "speed": { + "title": "Diseรฑado para la Velocidad", + "description": "Sin esperar cargas o descargas a un servidor. Al procesar archivos directamente en tu navegador usando tecnologรญas web modernas como WebAssembly, ofrecemos una velocidad incomparable para todas nuestras herramientas." + }, + "free": { + "title": "Completamente Gratis", + "description": "Sin pruebas, sin suscripciones, sin tarifas ocultas y sin funciones \"premium\" retenidas como rehenes. Creemos que las herramientas PDF potentes deben ser una utilidad pรบblica, no un centro de ganancias." + }, + "noAccount": { + "title": "No Requiere Cuenta", + "description": "Comienza a usar cualquier herramienta de inmediato. No necesitamos tu correo electrรณnico, una contraseรฑa o cualquier informaciรณn personal. Tu flujo de trabajo debe ser sin fricciones y anรณnimo." + }, + "openSource": { + "title": "Espรญritu de Cรณdigo Abierto", + "description": "Construido con transparencia en mente. Aprovechamos increรญbles bibliotecas de cรณdigo abierto como PDF-lib y PDF.js, y creemos en el esfuerzo impulsado por la comunidad para hacer que las herramientas potentes sean accesibles para todos." + } + }, + "cta": { + "title": "ยฟListo para comenzar?", + "description": "รšnete a miles de usuarios que confรญan en Bentopdf para sus necesidades diarias de documentos. Experimenta la diferencia que la privacidad y el rendimiento pueden hacer.", + "button": "Explorar Todas las Herramientas" + } + }, + "contact": { + "title": "Ponte en Contacto", + "subtitle": "Nos encantarรญa saber de ti. Ya sea que tengas una pregunta, comentario o solicitud de funciรณn, no dudes en comunicarte.", + "email": "Puedes contactarnos directamente por correo electrรณnico en:" + }, + "licensing": { + "title": "Licencias para", + "subtitle": "Elige la licencia que se ajuste a tus necesidades." + }, + "multiTool": { + "uploadPdfs": "Cargar PDFs", + "upload": "Cargar", + "addBlankPage": "Agregar Pรกgina en Blanco", + "edit": "Editar:", + "undo": "Deshacer", + "redo": "Rehacer", + "reset": "Restablecer", + "selection": "Selecciรณn:", + "selectAll": "Seleccionar Todo", + "deselectAll": "Deseleccionar Todo", + "rotate": "Rotar:", + "rotateLeft": "Izquierda", + "rotateRight": "Derecha", + "transform": "Transformar:", + "duplicate": "Duplicar", + "split": "Dividir", + "clear": "Limpiar:", + "delete": "Eliminar", + "download": "Descargar:", + "downloadSelected": "Descargar Seleccionados", + "exportPdf": "Exportar PDF", + "uploadPdfFiles": "Seleccionar Archivos PDF", + "dragAndDrop": "Arrastra y suelta archivos PDF aquรญ, o haz clic para seleccionar", + "selectFiles": "Seleccionar Archivos", + "renderingPages": "Renderizando pรกginas...", + "actions": { + "duplicatePage": "Duplicar esta pรกgina", + "deletePage": "Eliminar esta pรกgina", + "insertPdf": "Insertar PDF despuรฉs de esta pรกgina", + "toggleSplit": "Alternar divisiรณn despuรฉs de esta pรกgina" + }, + "pleaseWait": "Por Favor Espera", + "pagesRendering": "Las pรกginas aรบn se estรกn renderizando. Por favor espera...", + "noPagesSelected": "No Se Seleccionaron Pรกginas", + "selectOnePage": "Por favor selecciona al menos una pรกgina para descargar.", + "noPages": "Sin Pรกginas", + "noPagesToExport": "No hay pรกginas para exportar.", + "renderingTitle": "Renderizando vistas previas de pรกginas", + "errorRendering": "Error al renderizar miniaturas de pรกginas", + "error": "Error", + "failedToLoad": "Error al cargar" + } +} diff --git a/public/locales/es/tools.json b/public/locales/es/tools.json new file mode 100644 index 000000000..920aa574c --- /dev/null +++ b/public/locales/es/tools.json @@ -0,0 +1,533 @@ +{ + "categories": { + "popularTools": "Herramientas Populares", + "editAnnotate": "Editar y Anotar", + "convertToPdf": "Convertir a PDF", + "convertFromPdf": "Convertir desde PDF", + "organizeManage": "Organizar y Gestionar", + "optimizeRepair": "Optimizar y Reparar", + "securePdf": "Asegurar PDF" + }, + "pdfMultiTool": { + "name": "Multiherramienta PDF", + "subtitle": "Fusionar, Dividir, Organizar, Eliminar, Rotar, Agregar Pรกginas en Blanco, Extraer y Duplicar en una interfaz unificada." + }, + "mergePdf": { + "name": "Fusionar PDF", + "subtitle": "Combina mรบltiples PDFs en un solo archivo. Preserva Marcadores." + }, + "splitPdf": { + "name": "Dividir PDF", + "subtitle": "Extrae un rango de pรกginas en un nuevo PDF." + }, + "compressPdf": { + "name": "Comprimir PDF", + "subtitle": "Reduce el tamaรฑo de archivo de tu PDF.", + "algorithmLabel": "Algoritmo de Compresiรณn", + "condense": "Condensar (Recomendado)", + "photon": "Photon (Para PDFs con Muchas Fotos)", + "condenseInfo": "Condensar usa compresiรณn avanzada: elimina peso muerto, optimiza imรกgenes, reduce fuentes. Mejor para la mayorรญa de PDFs.", + "photonInfo": "Photon convierte pรกginas en imรกgenes. รšsalo para PDFs con muchas fotos/escaneados.", + "photonWarning": "Advertencia: El texto dejarรก de ser seleccionable y los enlaces dejarรกn de funcionar.", + "levelLabel": "Nivel de Compresiรณn", + "light": "Ligero (Preservar Calidad)", + "balanced": "Equilibrado (Recomendado)", + "aggressive": "Agresivo (Archivos Mรกs Pequeรฑos)", + "extreme": "Extremo (Compresiรณn Mรกxima)", + "grayscale": "Convertir a Escala de Grises", + "grayscaleHint": "Reduce el tamaรฑo del archivo eliminando informaciรณn de color", + "customSettings": "Configuraciรณn Personalizada", + "customSettingsHint": "Ajusta los parรกmetros de compresiรณn:", + "outputQuality": "Calidad de Salida", + "resizeImagesTo": "Redimensionar Imรกgenes a", + "onlyProcessAbove": "Solo Procesar Arriba de", + "removeMetadata": "Eliminar metadatos", + "subsetFonts": "Reducir fuentes (eliminar glifos no usados)", + "removeThumbnails": "Eliminar miniaturas incrustadas", + "compressButton": "Comprimir PDF" + }, + "pdfEditor": { + "name": "Editor PDF", + "subtitle": "Anotar, resaltar, redactar, comentar, agregar formas/imรกgenes, buscar y ver PDFs." + }, + "jpgToPdf": { + "name": "JPG a PDF", + "subtitle": "Crea un PDF desde imรกgenes JPG, JPEG y JPEG2000 (JP2/JPX)." + }, + "signPdf": { + "name": "Firmar PDF", + "subtitle": "Dibuja, escribe o carga tu firma." + }, + "cropPdf": { + "name": "Recortar PDF", + "subtitle": "Recorta los mรกrgenes de cada pรกgina en tu PDF." + }, + "extractPages": { + "name": "Extraer Pรกginas", + "subtitle": "Guarda una selecciรณn de pรกginas como nuevos archivos." + }, + "duplicateOrganize": { + "name": "Duplicar y Organizar", + "subtitle": "Duplica, reordena y elimina pรกginas." + }, + "deletePages": { + "name": "Eliminar Pรกginas", + "subtitle": "Elimina pรกginas especรญficas de tu documento." + }, + "editBookmarks": { + "name": "Editar Marcadores", + "subtitle": "Agrega, edita, importa, elimina y extrae marcadores PDF." + }, + "tableOfContents": { + "name": "Tabla de Contenidos", + "subtitle": "Genera una pรกgina de tabla de contenidos desde los marcadores PDF." + }, + "pageNumbers": { + "name": "Nรบmeros de Pรกgina", + "subtitle": "Inserta nรบmeros de pรกgina en tu documento." + }, + "addWatermark": { + "name": "Agregar Marca de Agua", + "subtitle": "Estampa texto o una imagen sobre tus pรกginas PDF." + }, + "headerFooter": { + "name": "Encabezado y Pie de Pรกgina", + "subtitle": "Agrega texto en la parte superior e inferior de las pรกginas." + }, + "invertColors": { + "name": "Invertir Colores", + "subtitle": "Crea una versiรณn en \"modo oscuro\" de tu PDF." + }, + "backgroundColor": { + "name": "Color de Fondo", + "subtitle": "Cambia el color de fondo de tu PDF." + }, + "changeTextColor": { + "name": "Cambiar Color de Texto", + "subtitle": "Cambia el color del texto en tu PDF." + }, + "addStamps": { + "name": "Agregar Sellos", + "subtitle": "Agrega sellos de imagen a tu PDF usando la barra de herramientas de anotaciรณn.", + "usernameLabel": "Nombre de Usuario del Sello", + "usernamePlaceholder": "Ingresa tu nombre (para sellos)", + "usernameHint": "Este nombre aparecerรก en los sellos que crees." + }, + "removeAnnotations": { + "name": "Eliminar Anotaciones", + "subtitle": "Elimina comentarios, resaltados y enlaces." + }, + "pdfFormFiller": { + "name": "Rellenar Formularios PDF", + "subtitle": "Rellena formularios directamente en el navegador. Tambiรฉn soporta formularios XFA." + }, + "createPdfForm": { + "name": "Crear Formulario PDF", + "subtitle": "Crea formularios PDF rellenables con campos de texto arrastrables." + }, + "removeBlankPages": { + "name": "Eliminar Pรกginas en Blanco", + "subtitle": "Detecta y elimina automรกticamente pรกginas en blanco." + }, + "imageToPdf": { + "name": "Imรกgenes a PDF", + "subtitle": "Convierte JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP a PDF." + }, + "pngToPdf": { + "name": "PNG a PDF", + "subtitle": "Crea un PDF desde una o mรกs imรกgenes PNG." + }, + "webpToPdf": { + "name": "WebP a PDF", + "subtitle": "Crea un PDF desde una o mรกs imรกgenes WebP." + }, + "svgToPdf": { + "name": "SVG a PDF", + "subtitle": "Crea un PDF desde una o mรกs imรกgenes SVG." + }, + "bmpToPdf": { + "name": "BMP a PDF", + "subtitle": "Crea un PDF desde una o mรกs imรกgenes BMP." + }, + "heicToPdf": { + "name": "HEIC a PDF", + "subtitle": "Crea un PDF desde una o mรกs imรกgenes HEIC." + }, + "tiffToPdf": { + "name": "TIFF a PDF", + "subtitle": "Crea un PDF desde una o mรกs imรกgenes TIFF." + }, + "textToPdf": { + "name": "Texto a PDF", + "subtitle": "Convierte un archivo de texto plano en un PDF." + }, + "jsonToPdf": { + "name": "JSON a PDF", + "subtitle": "Convierte archivos JSON a formato PDF." + }, + "pdfToJpg": { + "name": "PDF a JPG", + "subtitle": "Convierte cada pรกgina PDF en una imagen JPG." + }, + "pdfToPng": { + "name": "PDF a PNG", + "subtitle": "Convierte cada pรกgina PDF en una imagen PNG." + }, + "pdfToWebp": { + "name": "PDF a WebP", + "subtitle": "Convierte cada pรกgina PDF en una imagen WebP." + }, + "pdfToBmp": { + "name": "PDF a BMP", + "subtitle": "Convierte cada pรกgina PDF en una imagen BMP." + }, + "pdfToTiff": { + "name": "PDF a TIFF", + "subtitle": "Convierte cada pรกgina PDF en una imagen TIFF." + }, + "pdfToGreyscale": { + "name": "PDF a Escala de Grises", + "subtitle": "Convierte todos los colores a blanco y negro." + }, + "pdfToJson": { + "name": "PDF a JSON", + "subtitle": "Convierte archivos PDF a formato JSON." + }, + "ocrPdf": { + "name": "OCR PDF", + "subtitle": "Hace que un PDF sea buscable y copiable." + }, + "alternateMix": { + "name": "Alternar y Mezclar Pรกginas", + "subtitle": "Fusiona PDFs alternando pรกginas de cada PDF. Preserva Marcadores." + }, + "addAttachments": { + "name": "Agregar Adjuntos", + "subtitle": "Incrusta uno o mรกs archivos en tu PDF." + }, + "extractAttachments": { + "name": "Extraer Adjuntos", + "subtitle": "Extrae todos los archivos incrustados de PDF(s) como un ZIP." + }, + "editAttachments": { + "name": "Editar Adjuntos", + "subtitle": "Ve o elimina adjuntos en tu PDF." + }, + "dividePages": { + "name": "Dividir Pรกginas", + "subtitle": "Divide pรกginas horizontal o verticalmente." + }, + "addBlankPage": { + "name": "Agregar Pรกgina en Blanco", + "subtitle": "Inserta una pรกgina vacรญa en cualquier lugar de tu PDF." + }, + "reversePages": { + "name": "Invertir Pรกginas", + "subtitle": "Invierte el orden de todas las pรกginas en tu documento." + }, + "rotatePdf": { + "name": "Rotar PDF", + "subtitle": "Gira pรกginas en incrementos de 90 grados." + }, + "rotateCustom": { + "name": "Rotar por Grados Personalizados", + "subtitle": "Rota pรกginas por cualquier รกngulo personalizado." + }, + "nUpPdf": { + "name": "N-Up PDF", + "subtitle": "Organiza mรบltiples pรกginas en una sola hoja." + }, + "combineToSinglePage": { + "name": "Combinar en Una Sola Pรกgina", + "subtitle": "Une todas las pรกginas en un desplazamiento continuo." + }, + "viewMetadata": { + "name": "Ver Metadatos", + "subtitle": "Inspecciona las propiedades ocultas de tu PDF." + }, + "editMetadata": { + "name": "Editar Metadatos", + "subtitle": "Cambia el autor, tรญtulo y otras propiedades." + }, + "pdfsToZip": { + "name": "PDFs a ZIP", + "subtitle": "Empaqueta mรบltiples archivos PDF en un archivo ZIP." + }, + "comparePdfs": { + "name": "Comparar PDFs", + "subtitle": "Compara dos PDFs lado a lado." + }, + "posterizePdf": { + "name": "Posterizar PDF", + "subtitle": "Divide una pรกgina grande en mรบltiples pรกginas mรกs pequeรฑas." + }, + "fixPageSize": { + "name": "Fijar Tamaรฑo de Pรกgina", + "subtitle": "Estandariza todas las pรกginas a un tamaรฑo uniforme." + }, + "linearizePdf": { + "name": "Linealizar PDF", + "subtitle": "Optimiza el PDF para visualizaciรณn web rรกpida." + }, + "pageDimensions": { + "name": "Dimensiones de Pรกgina", + "subtitle": "Analiza el tamaรฑo, orientaciรณn y unidades de pรกgina." + }, + "removeRestrictions": { + "name": "Eliminar Restricciones", + "subtitle": "Elimina la protecciรณn por contraseรฑa y las restricciones de seguridad asociadas con archivos PDF firmados digitalmente." + }, + "repairPdf": { + "name": "Reparar PDF", + "subtitle": "Recupera datos de archivos PDF corruptos o daรฑados." + }, + "encryptPdf": { + "name": "Cifrar PDF", + "subtitle": "Bloquea tu PDF agregando una contraseรฑa." + }, + "sanitizePdf": { + "name": "Sanear PDF", + "subtitle": "Elimina metadatos, anotaciones, scripts y mรกs." + }, + "decryptPdf": { + "name": "Descifrar PDF", + "subtitle": "Desbloquea PDF eliminando la protecciรณn por contraseรฑa." + }, + "flattenPdf": { + "name": "Aplanar PDF", + "subtitle": "Hace que los campos de formulario y las anotaciones no sean editables." + }, + "removeMetadata": { + "name": "Eliminar Metadatos", + "subtitle": "Elimina datos ocultos de tu PDF." + }, + "changePermissions": { + "name": "Cambiar Permisos", + "subtitle": "Establece o cambia los permisos de usuario en un PDF." + }, + "odtToPdf": { + "name": "ODT a PDF", + "subtitle": "Convierte archivos OpenDocument Text a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos ODT", + "convertButton": "Convertir a PDF" + }, + "csvToPdf": { + "name": "CSV a PDF", + "subtitle": "Convierte archivos de hoja de cรกlculo CSV a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos CSV", + "convertButton": "Convertir a PDF" + }, + "rtfToPdf": { + "name": "RTF a PDF", + "subtitle": "Convierte documentos Rich Text Format a PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos RTF", + "convertButton": "Convertir a PDF" + }, + "wordToPdf": { + "name": "Word a PDF", + "subtitle": "Convierte documentos Word (DOCX, DOC, ODT, RTF) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos DOCX, DOC, ODT, RTF", + "convertButton": "Convertir a PDF" + }, + "excelToPdf": { + "name": "Excel a PDF", + "subtitle": "Convierte hojas de cรกlculo Excel (XLSX, XLS, ODS, CSV) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos XLSX, XLS, ODS, CSV", + "convertButton": "Convertir a PDF" + }, + "powerpointToPdf": { + "name": "PowerPoint a PDF", + "subtitle": "Convierte presentaciones PowerPoint (PPTX, PPT, ODP) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos PPTX, PPT, ODP", + "convertButton": "Convertir a PDF" + }, + "markdownToPdf": { + "name": "Markdown a PDF", + "subtitle": "Escribe o pega Markdown y expรณrtalo como un PDF bellamente formateado.", + "paneMarkdown": "Markdown", + "panePreview": "Vista Previa", + "btnUpload": "Cargar", + "btnSyncScroll": "Sincronizar Desplazamiento", + "btnSettings": "Configuraciรณn", + "btnExportPdf": "Exportar PDF", + "settingsTitle": "Configuraciรณn de Markdown", + "settingsPreset": "Predefinido", + "presetDefault": "Predeterminado (similar a GFM)", + "presetCommonmark": "CommonMark (estricto)", + "presetZero": "Mรญnimo (sin funciones)", + "settingsOptions": "Opciones de Markdown", + "optAllowHtml": "Permitir etiquetas HTML", + "optBreaks": "Convertir saltos de lรญnea a
", + "optLinkify": "Auto-convertir URLs a enlaces", + "optTypographer": "Tipรณgrafo (comillas inteligentes, etc.)" + }, + "pdfBooklet": { + "name": "Folleto PDF", + "subtitle": "Reorganiza pรกginas para impresiรณn de folleto a doble cara. Dobla y engrapa para crear un folleto.", + "howItWorks": "Cรณmo funciona:", + "step1": "Carga un archivo PDF.", + "step2": "Las pรกginas se reorganizarรกn en orden de folleto.", + "step3": "Imprime a doble cara, voltea por el borde corto, dobla y engrapa.", + "paperSize": "Tamaรฑo de Papel", + "orientation": "Orientaciรณn", + "portrait": "Vertical", + "landscape": "Horizontal", + "pagesPerSheet": "Pรกginas por Hoja", + "createBooklet": "Crear Folleto", + "processing": "Procesando...", + "pageCount": "El recuento de pรกginas se rellenarรก a mรบltiplo de 4 si es necesario." + }, + "xpsToPdf": { + "name": "XPS a PDF", + "subtitle": "Convierte documentos XPS/OXPS a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos XPS, OXPS", + "convertButton": "Convertir a PDF" + }, + "mobiToPdf": { + "name": "MOBI a PDF", + "subtitle": "Convierte e-books MOBI a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos MOBI", + "convertButton": "Convertir a PDF" + }, + "epubToPdf": { + "name": "EPUB a PDF", + "subtitle": "Convierte e-books EPUB a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos EPUB", + "convertButton": "Convertir a PDF" + }, + "fb2ToPdf": { + "name": "FB2 a PDF", + "subtitle": "Convierte e-books FictionBook (FB2) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos FB2", + "convertButton": "Convertir a PDF" + }, + "cbzToPdf": { + "name": "CBZ a PDF", + "subtitle": "Convierte archivos de cรณmics (CBZ/CBR) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos CBZ, CBR", + "convertButton": "Convertir a PDF" + }, + "wpdToPdf": { + "name": "WPD a PDF", + "subtitle": "Convierte documentos WordPerfect (WPD) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos WPD", + "convertButton": "Convertir a PDF" + }, + "wpsToPdf": { + "name": "WPS a PDF", + "subtitle": "Convierte documentos WPS Office a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos WPS", + "convertButton": "Convertir a PDF" + }, + "xmlToPdf": { + "name": "XML a PDF", + "subtitle": "Convierte documentos XML a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos XML", + "convertButton": "Convertir a PDF" + }, + "pagesToPdf": { + "name": "Pages a PDF", + "subtitle": "Convierte documentos Apple Pages a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos Pages", + "convertButton": "Convertir a PDF" + }, + "odgToPdf": { + "name": "ODG a PDF", + "subtitle": "Convierte archivos OpenDocument Graphics (ODG) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos ODG", + "convertButton": "Convertir a PDF" + }, + "odsToPdf": { + "name": "ODS a PDF", + "subtitle": "Convierte archivos OpenDocument Spreadsheet (ODS) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos ODS", + "convertButton": "Convertir a PDF" + }, + "odpToPdf": { + "name": "ODP a PDF", + "subtitle": "Convierte archivos OpenDocument Presentation (ODP) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos ODP", + "convertButton": "Convertir a PDF" + }, + "pubToPdf": { + "name": "PUB a PDF", + "subtitle": "Convierte archivos Microsoft Publisher (PUB) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos PUB", + "convertButton": "Convertir a PDF" + }, + "vsdToPdf": { + "name": "VSD a PDF", + "subtitle": "Convierte archivos Microsoft Visio (VSD, VSDX) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos VSD, VSDX", + "convertButton": "Convertir a PDF" + }, + "psdToPdf": { + "name": "PSD a PDF", + "subtitle": "Convierte archivos Adobe Photoshop (PSD) a formato PDF. Soporta mรบltiples archivos.", + "acceptedFormats": "Archivos PSD", + "convertButton": "Convertir a PDF" + }, + "pdfToSvg": { + "name": "PDF a SVG", + "subtitle": "Convierte cada pรกgina de un archivo PDF en un grรกfico vectorial escalable (SVG) para calidad perfecta a cualquier tamaรฑo." + }, + "extractTables": { + "name": "Extraer Tablas de PDF", + "subtitle": "Extrae tablas de archivos PDF y exporta como CSV, JSON o Markdown." + }, + "pdfToCsv": { + "name": "PDF a CSV", + "subtitle": "Extrae tablas de PDF y convierte a formato CSV." + }, + "pdfToExcel": { + "name": "PDF a Excel", + "subtitle": "Extrae tablas de PDF y convierte a formato Excel (XLSX)." + }, + "pdfToText": { + "name": "PDF a Texto", + "subtitle": "Extrae texto de archivos PDF y guarda como texto plano (.txt). Soporta mรบltiples archivos.", + "note": "Esta herramienta funciona SOLO con PDFs creados digitalmente. Para documentos escaneados o PDFs basados en imรกgenes, usa nuestra herramienta OCR PDF en su lugar.", + "convertButton": "Extraer Texto" + }, + "digitalSignPdf": { + "name": "Firma Digital PDF", + "pageTitle": "Firma Digital PDF - Agregar Firma Criptogrรกfica | BentoPDF", + "subtitle": "Agrega una firma digital criptogrรกfica a tu PDF usando certificados X.509. Soporta formatos PKCS#12 (.pfx, .p12) y PEM. Tu clave privada nunca sale de tu navegador.", + "certificateSection": "Certificado", + "uploadCert": "Cargar certificado (.pfx, .p12)", + "certPassword": "Contraseรฑa del Certificado", + "certPasswordPlaceholder": "Ingresa la contraseรฑa del certificado", + "certInfo": "Informaciรณn del Certificado", + "certSubject": "Sujeto", + "certIssuer": "Emisor", + "certValidity": "Vรกlido", + "signatureDetails": "Detalles de la Firma (Opcional)", + "reason": "Razรณn", + "reasonPlaceholder": "ej., Apruebo este documento", + "location": "Ubicaciรณn", + "locationPlaceholder": "ej., Madrid, Espaรฑa", + "contactInfo": "Informaciรณn de Contacto", + "contactPlaceholder": "ej., email@ejemplo.com", + "applySignature": "Aplicar Firma Digital", + "successMessage": "ยกPDF firmado exitosamente! La firma se puede verificar en cualquier lector de PDF." + }, + "validateSignaturePdf": { + "name": "Validar Firma PDF", + "pageTitle": "Validar Firma PDF - Verificar Firmas Digitales | BentoPDF", + "subtitle": "Verifica firmas digitales en tus archivos PDF. Comprueba la validez del certificado, ve los detalles del firmante y confirma la integridad del documento." + }, + "emailToPdf": { + "name": "Email a PDF", + "subtitle": "Convierte archivos de correo (EML, MSG) a formato PDF. Soporta exportaciones de Outlook y formatos de correo estรกndar.", + "acceptedFormats": "Archivos EML, MSG", + "convertButton": "Convertir a PDF" + }, + "fontToOutline": { + "name": "Fuente a Contorno", + "subtitle": "Convierte todas las fuentes a contornos vectoriales para una renderizaciรณn consistente en todos los dispositivos." + }, + "deskewPdf": { + "name": "Enderezar PDF", + "subtitle": "Endereza automรกticamente pรกginas escaneadas inclinadas usando OpenCV." + } +} diff --git a/public/locales/fr/common.json b/public/locales/fr/common.json new file mode 100644 index 000000000..fa7aec24d --- /dev/null +++ b/public/locales/fr/common.json @@ -0,0 +1,323 @@ +{ + "nav": { + "home": "Accueil", + "about": "ร€ propos", + "contact": "Contact", + "licensing": "Licence", + "allTools": "Tous les outils", + "openMainMenu": "Ouvrir le menu principal", + "language": "Langue" + }, + "donation": { + "message": "Vous aimez BentoPDF ? Aidez-nous ร  le garder open source !", + "button": "Soutenir" + }, + "hero": { + "title": "La", + "pdfToolkit": "palette dโ€™outils PDF", + "builtForPrivacy": "conรงue pour la confidentialitรฉ", + "noSignups": "Sans inscription", + "unlimitedUse": "Utilisation illimitรฉe", + "worksOffline": "Fonctionne hors ligne", + "startUsing": "Commencer maintenant" + }, + "usedBy": { + "title": "Utilisรฉ par des entreprises et des professionnels de" + }, + "features": { + "title": "Pourquoi choisir", + "bentoPdf": "BentoPDF ?", + "noSignup": { + "title": "Sans inscription", + "description": "Utilisation immรฉdiate, sans compte ni email." + }, + "noUploads": { + "title": "Aucun envoi de fichiers", + "description": "100 % cรดtรฉ navigateur, vos fichiers ne quittent jamais votre appareil." + }, + "foreverFree": { + "title": "Gratuit pour toujours", + "description": "Tous les outils, sans essai, sans paiement, sans restrictions." + }, + "noLimits": { + "title": "Sans limites", + "description": "Utilisez autant que vous voulez, sans plafonds cachรฉs." + }, + "batchProcessing": { + "title": "Traitement par lots", + "description": "Gรฉrez un nombre illimitรฉ de PDF en une seule fois." + }, + "lightningFast": { + "title": "Ultra rapide", + "description": "Traitez vos PDF instantanรฉment, sans attente." + } + }, + "tools": { + "title": "Commencer avec", + "toolsLabel": "Les outils", + "subtitle": "Cliquez sur un outil pour importer vos fichiers", + "searchPlaceholder": "Rechercher un outil (ex. ยซ scinder ยป, ยซ organiser ยป...)", + "backToTools": "Retour aux outils", + "firstLoadNotice": "Le premier chargement peut prendre quelques instants, le temps de charger notre moteur de conversion. Les prochaines fois, tout se chargera instantanรฉment." + }, + "upload": { + "clickToSelect": "Cliquez pour sรฉlectionner un fichier", + "orDragAndDrop": "ou glissez-dรฉposez", + "pdfOrImages": "PDF ou images", + "filesNeverLeave": "Vos fichiers restent sur votre appareil.", + "addMore": "Ajouter dโ€™autres fichiers", + "clearAll": "Tout effacer" + }, + "loader": { + "processing": "Traitement en cours..." + }, + "alert": { + "title": "Alerte", + "ok": "OK" + }, + "preview": { + "title": "Aperรงu du document", + "downloadAsPdf": "Tรฉlรฉcharger en PDF", + "close": "Fermer" + }, + "settings": { + "title": "Paramรจtres", + "shortcuts": "Raccourcis", + "preferences": "Prรฉfรฉrences", + "displayPreferences": "Prรฉfรฉrences dโ€™affichage", + "searchShortcuts": "Rechercher un raccourci...", + "shortcutsInfo": "Maintenez les touches pour dรฉfinir un raccourci. Les changements sont enregistrรฉs automatiquement.", + "shortcutsWarning": "โš ๏ธ ร‰vitez les raccourcis courants du navigateur (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N, etc.), ils peuvent ne pas fonctionner correctement.", + "import": "Importer", + "export": "Exporter", + "resetToDefaults": "Rรฉtablir les paramรจtres par dรฉfaut", + "fullWidthMode": "Mode pleine largeur", + "fullWidthDescription": "Utiliser toute la largeur de lโ€™รฉcran au lieu dโ€™un affichage centrรฉ", + "settingsAutoSaved": "Les paramรจtres sont enregistrรฉs automatiquement", + "clickToSet": "Cliquez pour dรฉfinir", + "pressKeys": "Appuyez sur les touches...", + "warnings": { + "alreadyInUse": "Raccourci dรฉjร  utilisรฉ", + "assignedTo": "est dรฉjร  attribuรฉ ร  :", + "chooseDifferent": "Veuillez choisir un autre raccourci.", + "reserved": "Avertissement de raccourci rรฉservรฉ", + "commonlyUsed": "est couramment utilisรฉ pour :", + "unreliable": "Ce raccourci peut ne pas fonctionner correctement ou entrer en conflit avec le navigateur ou le systรจme.", + "useAnyway": "Souhaitez-vous lโ€™utiliser quand mรชme ?", + "resetTitle": "Rรฉinitialiser les raccourcis", + "resetMessage": "รŠtes-vous sรปr de vouloir rรฉinitialiser tous les raccourcis par dรฉfaut ?

Cette action est irrรฉversible.", + "importSuccessTitle": "Importation rรฉussie", + "importSuccessMessage": "Les raccourcis ont รฉtรฉ importรฉs avec succรจs !", + "importFailTitle": "ร‰chec de lโ€™importation", + "importFailMessage": "Impossible dโ€™importer les raccourcis. Format de fichier invalide." + } + }, + "warning": { + "title": "Attention", + "cancel": "Annuler", + "proceed": "Continuer" + }, + "compliance": { + "title": "Vos donnรฉes ne quittent jamais votre appareil", + "weKeep": "Nous protรฉgeons", + "yourInfoSafe": "vos informations", + "byFollowingStandards": "en respectant les normes de sรฉcuritรฉ internationales.", + "processingLocal": "Tous les traitements sont effectuรฉs localement sur votre appareil.", + "gdpr": { + "title": "Conformitรฉ RGPD", + "description": "Protรจge les donnรฉes personnelles et la vie privรฉe des citoyens de lโ€™Union europรฉenne." + }, + "ccpa": { + "title": "Conformitรฉ CCPA", + "description": "Accorde aux rรฉsidents de Californie des droits sur lโ€™utilisation de leurs donnรฉes personnelles." + }, + "hipaa": { + "title": "Conformitรฉ HIPAA", + "description": "Dรฉfinit des rรจgles strictes pour la gestion des donnรฉes de santรฉ aux ร‰tats-Unis." + } + }, + "faq": { + "title": "Questions", + "questions": "frรฉquentes", + "isFree": { + "question": "BentoPDF est-il vraiment gratuit ?", + "answer": "Oui, totalement. Tous les outils BentoPDF sont 100 % gratuits, sans limite de fichiers, sans inscription et sans filigrane. Nous pensons que chacun doit avoir accรจs ร  des outils PDF simples et puissants, sans barriรจre payante." + }, + "areFilesSecure": { + "question": "Mes fichiers sont-ils en sรฉcuritรฉ ? Oรน sont-ils traitรฉs ?", + "answer": "Vos fichiers sont parfaitement sรฉcurisรฉs car ils ne quittent jamais votre ordinateur. Tous les traitements se font directement dans votre navigateur. Aucun fichier nโ€™est envoyรฉ sur un serveur." + }, + "platforms": { + "question": "Est-ce compatible avec Mac, Windows et mobile ?", + "answer": "Oui ! BentoPDF fonctionne entiรจrement dans le navigateur et est compatible avec Windows, macOS, Linux, iOS et Android." + }, + "gdprCompliant": { + "question": "BentoPDF est-il conforme au RGPD ?", + "answer": "Oui. Comme tous les traitements sont locaux et quโ€™aucune donnรฉe nโ€™est collectรฉe ou transmise, vous restez entiรจrement maรฎtre de vos documents." + }, + "dataStorage": { + "question": "Stockez-vous ou suivez-vous mes fichiers ?", + "answer": "Non. Aucun stockage, aucun suivi, aucun historique. Tout disparaรฎt dรจs que vous fermez la page." + }, + "different": { + "question": "Quโ€™est-ce qui diffรฉrencie BentoPDF des autres outils PDF ?", + "answer": "La plupart des outils envoient vos fichiers sur un serveur. BentoPDF traite tout localement dans votre navigateur, pour plus de rapiditรฉ, de confidentialitรฉ et de tranquillitรฉ dโ€™esprit." + }, + "browserBased": { + "question": "Pourquoi le traitement dans le navigateur est-il plus sรปr ?", + "answer": "Parce que vos fichiers restent sur votre appareil. Aucun risque de fuite, de piratage ou dโ€™accรจs non autorisรฉ." + }, + "analytics": { + "question": "Utilisez-vous des cookies ou des outils de suivi ?", + "answer": "Nous respectons votre vie privรฉe. BentoPDF utilise uniquement des statistiques anonymes pour connaรฎtre le nombre de visites, sans jamais identifier les utilisateurs." + } + }, + "testimonials": { + "title": "Ce que disent", + "users": "nos utilisateurs", + "say": "" + }, + "support": { + "title": "Vous aimez ce projet ?", + "description": "BentoPDF est un projet passion, crรฉรฉ pour offrir une palette dโ€™outils PDF gratuite, privรฉe et puissante. Si cela vous aide, vous pouvez soutenir son dรฉveloppement. Chaque cafรฉ compte !", + "buyMeCoffee": "Mโ€™offrir un cafรฉ" + }, + "footer": { + "copyright": "ยฉ 2026 BentoPDF. Tous droits rรฉservรฉs.", + "version": "Version", + "company": "Entreprise", + "aboutUs": "ร€ propos", + "faqLink": "FAQ", + "contactUs": "Nous contacter", + "legal": "Mentions lรฉgales", + "termsAndConditions": "Conditions gรฉnรฉrales", + "privacyPolicy": "Politique de confidentialitรฉ", + "followUs": "Nous suivre" + }, + "merge": { + "title": "Fusionner des PDF", + "description": "Combinez des fichiers entiers ou sรฉlectionnez des pages spรฉcifiques pour crรฉer un nouveau document.", + "fileMode": "Mode fichiers", + "pageMode": "Mode pages", + "howItWorks": "Fonctionnement :", + "fileModeInstructions": [ + "Cliquez-glissez lโ€™icรดne pour modifier lโ€™ordre des fichiers.", + "Dans le champ ยซ Pages ยป de chaque fichier, vous pouvez dรฉfinir des plages (ex. ยซ 1-3, 5 ยป) pour ne fusionner que certaines pages.", + "Laissez le champ ยซ Pages ยป vide pour inclure toutes les pages du fichier." + ], + "pageModeInstructions": [ + "Toutes les pages de vos PDF importรฉs sโ€™affichent ci-dessous.", + "Glissez-dรฉposez simplement les miniatures pour dรฉfinir lโ€™ordre exact de votre nouveau document." + ], + "mergePdfs": "Fusionner les PDF" + }, + "common": { + "page": "Page", + "pages": "Pages", + "of": "sur", + "download": "Tรฉlรฉcharger", + "cancel": "Annuler", + "save": "Enregistrer", + "delete": "Supprimer", + "edit": "Modifier", + "add": "Ajouter", + "remove": "Retirer", + "loading": "Chargement...", + "error": "Erreur", + "success": "Succรจs", + "file": "Fichier", + "files": "Fichiers" + }, + "about": { + "hero": { + "title": "Nous pensons que les outils PDF doivent รชtre", + "subtitle": "rapides, privรฉs et gratuits.", + "noCompromises": "Sans compromis." + }, + "mission": { + "title": "Notre mission", + "description": "Proposer la palette dโ€™outils PDF la plus complรจte, tout en respectant votre vie privรฉe et sans jamais demander de paiement. Les outils essentiels doivent รชtre accessibles ร  tous, partout, sans barriรจres." + }, + "philosophy": { + "label": "Notre philosophie", + "title": "La confidentialitรฉ avant tout. Toujours.", + "description": "ร€ une รฉpoque oรน les donnรฉes sont devenues une monnaie, nous faisons un choix diffรฉrent. Tous les traitements des outils BentoPDF sont effectuรฉs localement dans votre navigateur. Vos fichiers ne passent jamais par nos serveurs, nous ne voyons jamais vos documents et nous ne suivons pas votre activitรฉ. Ce nโ€™est pas une option, cโ€™est notre fondation." + }, + "whyBentopdf": { + "title": "Pourquoi", + "speed": { + "title": "Pensรฉ pour la vitesse", + "description": "Aucune attente liรฉe aux envois ou tรฉlรฉchargements serveur. Grรขce au traitement local et aux technologies web modernes comme WebAssembly, nos outils sont extrรชmement rapides." + }, + "free": { + "title": "Entiรจrement gratuit", + "description": "Aucun essai, aucun abonnement, aucun coรปt cachรฉ, aucune fonctionnalitรฉ ยซ premium ยป bloquรฉe. Les outils PDF doivent รชtre un service public, pas un produit de luxe." + }, + "noAccount": { + "title": "Aucun compte requis", + "description": "Utilisez nโ€™importe quel outil immรฉdiatement. Pas dโ€™email, pas de mot de passe, aucune donnรฉe personnelle. Votre flux de travail reste fluide et anonyme." + }, + "openSource": { + "title": "Esprit open source", + "description": "Conรงu dans un esprit de transparence. Nous utilisons des bibliothรจques open source reconnues comme PDF-lib et PDF.js, et croyons en la force de la communautรฉ." + } + }, + "cta": { + "title": "Prรชt ร  commencer ?", + "description": "Rejoignez des milliers dโ€™utilisateurs qui font confiance ร  BentoPDF au quotidien. Dรฉcouvrez la diffรฉrence quโ€™apportent la confidentialitรฉ et la performance.", + "button": "Explorer tous les outils" + } + }, + "contact": { + "title": "Nous contacter", + "subtitle": "Nous serions ravis dโ€™รฉchanger avec vous. Question, retour ou suggestion de fonctionnalitรฉ, nโ€™hรฉsitez pas ร  nous รฉcrire.", + "email": "Vous pouvez nous contacter directement par email ร  :" + }, + "licensing": { + "title": "Licences pour", + "subtitle": "Choisissez la licence adaptรฉe ร  vos besoins." + }, + "multiTool": { + "uploadPdfs": "Importer des PDF", + "upload": "Importer", + "addBlankPage": "Ajouter une page vierge", + "edit": "Modifier :", + "undo": "Annuler", + "redo": "Rรฉtablir", + "reset": "Rรฉinitialiser", + "selection": "Sรฉlection :", + "selectAll": "Tout sรฉlectionner", + "deselectAll": "Tout dรฉsรฉlectionner", + "rotate": "Rotation :", + "rotateLeft": "Gauche", + "rotateRight": "Droite", + "transform": "Transformer :", + "duplicate": "Dupliquer", + "split": "Scinder", + "clear": "Effacer :", + "delete": "Supprimer", + "download": "Tรฉlรฉchargement :", + "downloadSelected": "Tรฉlรฉcharger la sรฉlection", + "exportPdf": "Exporter en PDF", + "uploadPdfFiles": "Sรฉlectionner des fichiers PDF", + "dragAndDrop": "Glissez-dรฉposez vos fichiers PDF ici ou cliquez pour sรฉlectionner", + "selectFiles": "Sรฉlectionner des fichiers", + "renderingPages": "Rendu des pages...", + "actions": { + "duplicatePage": "Dupliquer cette page", + "deletePage": "Supprimer cette page", + "insertPdf": "Insรฉrer un PDF aprรจs cette page", + "toggleSplit": "Activer/dรฉsactiver la sรฉparation aprรจs cette page" + }, + "pleaseWait": "Veuillez patienter", + "pagesRendering": "Les pages sont en cours de rendu. Veuillez patienter...", + "noPagesSelected": "Aucune page sรฉlectionnรฉe", + "selectOnePage": "Veuillez sรฉlectionner au moins une page ร  tรฉlรฉcharger.", + "noPages": "Aucune page", + "noPagesToExport": "Aucune page ร  exporter.", + "renderingTitle": "Gรฉnรฉration des aperรงus", + "errorRendering": "ร‰chec du rendu des miniatures", + "error": "Erreur", + "failedToLoad": "ร‰chec du chargement" + } +} diff --git a/public/locales/fr/tools.json b/public/locales/fr/tools.json new file mode 100644 index 000000000..8f36e7c77 --- /dev/null +++ b/public/locales/fr/tools.json @@ -0,0 +1,533 @@ +{ + "categories": { + "popularTools": "Outils populaires", + "editAnnotate": "ร‰diter et annoter", + "convertToPdf": "Convertir en PDF", + "convertFromPdf": "Convertir depuis le PDF", + "organizeManage": "Organiser et gรฉrer", + "optimizeRepair": "Optimiser et rรฉparer", + "securePdf": "Sรฉcuriser les PDF" + }, + "pdfMultiTool": { + "name": "Outil PDF tout-en-un", + "subtitle": "Fusionner, scinder, organiser, supprimer, faire pivoter, ajouter des pages vierges, extraire et dupliquer dans une interface unifiรฉe." + }, + "mergePdf": { + "name": "Fusionner des PDF", + "subtitle": "Assembler plusieurs PDF en un seul fichier, tout en conservant les signets." + }, + "splitPdf": { + "name": "Scinder un PDF", + "subtitle": "Extraire une plage de pages dans un nouveau PDF." + }, + "compressPdf": { + "name": "Compresser un PDF", + "subtitle": "Rรฉduire la taille du fichier PDF.", + "algorithmLabel": "Algorithme de compression", + "condense": "Condensรฉ (recommandรฉ)", + "photon": "Photon (pour les PDF riches en photos)", + "condenseInfo": "Condensรฉ utilise une compression avancรฉe : suppression du superflu, optimisation des images, sous-ensemble des polices. Idรฉal pour la plupart des PDF.", + "photonInfo": "Photon convertit les pages en images. ร€ utiliser pour les PDF contenant beaucoup de photos ou scannรฉs.", + "photonWarning": "Attention : le texte ne sera plus sรฉlectionnable et les liens ne fonctionneront plus.", + "levelLabel": "Niveau de compression", + "light": "Lรฉger (prรฉserver la qualitรฉ)", + "balanced": "ร‰quilibrรฉ (recommandรฉ)", + "aggressive": "Agressif (fichiers plus petits)", + "extreme": "Extrรชme (compression maximale)", + "grayscale": "Convertir en niveaux de gris", + "grayscaleHint": "Rรฉduit la taille du fichier en supprimant les informations de couleur", + "customSettings": "Paramรจtres personnalisรฉs", + "customSettingsHint": "Affiner les paramรจtres de compression :", + "outputQuality": "Qualitรฉ de sortie", + "resizeImagesTo": "Redimensionner les images ร ", + "onlyProcessAbove": "Traiter uniquement au-dessus de", + "removeMetadata": "Supprimer les mรฉtadonnรฉes", + "subsetFonts": "Sous-ensemble des polices (supprimer les glyphes inutilisรฉs)", + "removeThumbnails": "Supprimer les vignettes intรฉgrรฉes", + "compressButton": "Compresser le PDF" + }, + "pdfEditor": { + "name": "ร‰diteur PDF", + "subtitle": "Annoter, surligner, masquer, commenter, ajouter des formes ou images, rechercher et afficher des PDF." + }, + "jpgToPdf": { + "name": "JPG vers PDF", + "subtitle": "Crรฉer un PDF ร  partir dโ€™une ou plusieurs images JPG." + }, + "signPdf": { + "name": "Signer un PDF", + "subtitle": "Dessiner, saisir ou importer votre signature." + }, + "cropPdf": { + "name": "Rogner un PDF", + "subtitle": "Ajuster les marges de chaque page du PDF." + }, + "extractPages": { + "name": "Extraire des pages", + "subtitle": "Enregistrer une sรฉlection de pages dans de nouveaux fichiers." + }, + "duplicateOrganize": { + "name": "Dupliquer et organiser", + "subtitle": "Dupliquer, rรฉorganiser et supprimer des pages." + }, + "deletePages": { + "name": "Supprimer des pages", + "subtitle": "Retirer des pages spรฉcifiques du document." + }, + "editBookmarks": { + "name": "Modifier les signets", + "subtitle": "Ajouter, modifier, importer, supprimer et extraire des signets PDF." + }, + "tableOfContents": { + "name": "Table des matiรจres", + "subtitle": "Gรฉnรฉrer une table des matiรจres ร  partir des signets du PDF." + }, + "pageNumbers": { + "name": "Numรฉros de page", + "subtitle": "Insรฉrer une numรฉrotation dans le document." + }, + "addWatermark": { + "name": "Ajouter un filigrane", + "subtitle": "Apposer un texte ou une image sur les pages du PDF." + }, + "headerFooter": { + "name": "En-tรชte et pied de page", + "subtitle": "Ajouter du texte en haut et en bas des pages." + }, + "invertColors": { + "name": "Inverser les couleurs", + "subtitle": "Crรฉer une version ยซ mode sombre ยป du PDF." + }, + "backgroundColor": { + "name": "Couleur de fond", + "subtitle": "Modifier la couleur de fond du PDF." + }, + "changeTextColor": { + "name": "Changer la couleur du texte", + "subtitle": "Modifier la couleur du texte dans le PDF." + }, + "addStamps": { + "name": "Ajouter des tampons", + "subtitle": "Ajouter des tampons image via la barre dโ€™annotations.", + "usernameLabel": "Nom du tampon", + "usernamePlaceholder": "Entrez votre nom (pour les tampons)", + "usernameHint": "Ce nom apparaรฎtra sur les tampons que vous crรฉez." + }, + "removeAnnotations": { + "name": "Supprimer les annotations", + "subtitle": "Retirer les commentaires, surlignages et liens." + }, + "pdfFormFiller": { + "name": "Remplir un formulaire PDF", + "subtitle": "Remplir des formulaires directement dans le navigateur, y compris les formulaires XFA." + }, + "createPdfForm": { + "name": "Crรฉer un formulaire PDF", + "subtitle": "Crรฉer des formulaires PDF interactifs avec des champs glisser-dรฉposer." + }, + "removeBlankPages": { + "name": "Supprimer les pages blanches", + "subtitle": "Dรฉtecter et supprimer automatiquement les pages vides." + }, + "imageToPdf": { + "name": "Images vers PDF", + "subtitle": "Convertir un JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP en PDF." + }, + "pngToPdf": { + "name": "PNG vers PDF", + "subtitle": "Crรฉer un PDF ร  partir dโ€™une ou plusieurs images PNG." + }, + "webpToPdf": { + "name": "WebP vers PDF", + "subtitle": "Crรฉer un PDF ร  partir dโ€™une ou plusieurs images WebP." + }, + "svgToPdf": { + "name": "SVG vers PDF", + "subtitle": "Crรฉer un PDF ร  partir dโ€™une ou plusieurs images SVG." + }, + "bmpToPdf": { + "name": "BMP vers PDF", + "subtitle": "Crรฉer un PDF ร  partir dโ€™une ou plusieurs images BMP." + }, + "heicToPdf": { + "name": "HEIC vers PDF", + "subtitle": "Crรฉer un PDF ร  partir dโ€™une ou plusieurs images HEIC." + }, + "tiffToPdf": { + "name": "TIFF vers PDF", + "subtitle": "Crรฉer un PDF ร  partir dโ€™une ou plusieurs images TIFF." + }, + "textToPdf": { + "name": "Texte vers PDF", + "subtitle": "Convertir un fichier texte en PDF." + }, + "jsonToPdf": { + "name": "JSON vers PDF", + "subtitle": "Convertir des fichiers JSON en PDF." + }, + "pdfToJpg": { + "name": "PDF vers JPG", + "subtitle": "Convertir chaque page du PDF en image JPG." + }, + "pdfToPng": { + "name": "PDF vers PNG", + "subtitle": "Convertir chaque page du PDF en image PNG." + }, + "pdfToWebp": { + "name": "PDF vers WebP", + "subtitle": "Convertir chaque page du PDF en image WebP." + }, + "pdfToBmp": { + "name": "PDF vers BMP", + "subtitle": "Convertir chaque page du PDF en image BMP." + }, + "pdfToTiff": { + "name": "PDF vers TIFF", + "subtitle": "Convertir chaque page du PDF en image TIFF." + }, + "pdfToGreyscale": { + "name": "PDF en niveaux de gris", + "subtitle": "Convertir toutes les couleurs en noir et blanc." + }, + "pdfToJson": { + "name": "PDF vers JSON", + "subtitle": "Convertir des fichiers PDF en JSON." + }, + "ocrPdf": { + "name": "OCR PDF", + "subtitle": "Rendre un PDF consultable et copiable." + }, + "alternateMix": { + "name": "Alterner et mรฉlanger les pages", + "subtitle": "Fusionner des PDF en alternant les pages de chaque fichier, tout en conservant les signets." + }, + "addAttachments": { + "name": "Ajouter des piรจces jointes", + "subtitle": "Intรฉgrer un ou plusieurs fichiers dans le PDF." + }, + "extractAttachments": { + "name": "Extraire les piรจces jointes", + "subtitle": "Extraire tous les fichiers intรฉgrรฉs des PDF dans une archive ZIP." + }, + "editAttachments": { + "name": "Gรฉrer les piรจces jointes", + "subtitle": "Afficher ou supprimer les piรจces jointes du PDF." + }, + "dividePages": { + "name": "Diviser les pages", + "subtitle": "Diviser les pages horizontalement ou verticalement." + }, + "addBlankPage": { + "name": "Ajouter une page vierge", + "subtitle": "Insรฉrer une page vide ร  nโ€™importe quel endroit du PDF." + }, + "reversePages": { + "name": "Inverser lโ€™ordre des pages", + "subtitle": "Renverser lโ€™ordre de toutes les pages du document." + }, + "rotatePdf": { + "name": "Faire pivoter un PDF", + "subtitle": "Tourner les pages par incrรฉments de 90ยฐ." + }, + "rotateCustom": { + "name": "Rotation par angle personnalisรฉ", + "subtitle": "Faire pivoter les pages selon un angle personnalisรฉ." + }, + "nUpPdf": { + "name": "PDF N-up", + "subtitle": "Afficher plusieurs pages sur une seule feuille." + }, + "combineToSinglePage": { + "name": "Combiner en une seule page", + "subtitle": "Assembler toutes les pages en un dรฉfilement continu." + }, + "viewMetadata": { + "name": "Afficher les mรฉtadonnรฉes", + "subtitle": "Consulter les propriรฉtรฉs internes du PDF." + }, + "editMetadata": { + "name": "Modifier les mรฉtadonnรฉes", + "subtitle": "Changer lโ€™auteur, le titre et autres propriรฉtรฉs." + }, + "pdfsToZip": { + "name": "PDF vers ZIP", + "subtitle": "Regrouper plusieurs fichiers PDF dans une archive ZIP." + }, + "comparePdfs": { + "name": "Comparer des PDF", + "subtitle": "Comparer deux PDF cรดte ร  cรดte." + }, + "posterizePdf": { + "name": "Posteriser un PDF", + "subtitle": "Dรฉcouper une grande page en plusieurs pages plus petites." + }, + "fixPageSize": { + "name": "Uniformiser la taille des pages", + "subtitle": "Standardiser toutes les pages ร  un format identique." + }, + "linearizePdf": { + "name": "Optimiser pour le web", + "subtitle": "Optimiser le PDF pour un affichage rapide en ligne." + }, + "pageDimensions": { + "name": "Dimensions des pages", + "subtitle": "Analyser la taille, lโ€™orientation et les unitรฉs des pages." + }, + "removeRestrictions": { + "name": "Supprimer les restrictions", + "subtitle": "Supprimer les protections par mot de passe et restrictions de sรฉcuritรฉ des PDF signรฉs." + }, + "repairPdf": { + "name": "Rรฉparer un PDF", + "subtitle": "Rรฉcupรฉrer les donnรฉes de fichiers PDF corrompus ou endommagรฉs." + }, + "encryptPdf": { + "name": "Chiffrer un PDF", + "subtitle": "Protรฉger le PDF en ajoutant un mot de passe." + }, + "sanitizePdf": { + "name": "Nettoyer un PDF", + "subtitle": "Supprimer les mรฉtadonnรฉes, annotations, scripts et autres รฉlรฉments sensibles." + }, + "decryptPdf": { + "name": "Dรฉverrouiller un PDF", + "subtitle": "Supprimer la protection par mot de passe." + }, + "flattenPdf": { + "name": "Aplatir le PDF", + "subtitle": "Rendre les champs de formulaire et annotations non modifiables." + }, + "removeMetadata": { + "name": "Supprimer les mรฉtadonnรฉes", + "subtitle": "Effacer les donnรฉes cachรฉes du PDF." + }, + "changePermissions": { + "name": "Modifier les autorisations", + "subtitle": "Dรฉfinir ou modifier les permissions utilisateur du PDF." + }, + "odtToPdf": { + "name": "ODT vers PDF", + "subtitle": "Convertir des fichiers OpenDocument Text au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers ODT", + "convertButton": "Convertir en PDF" + }, + "csvToPdf": { + "name": "CSV vers PDF", + "subtitle": "Convertir des fichiers tableur CSV au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers CSV", + "convertButton": "Convertir en PDF" + }, + "rtfToPdf": { + "name": "RTF vers PDF", + "subtitle": "Convertir des documents Rich Text Format en PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers RTF", + "convertButton": "Convertir en PDF" + }, + "wordToPdf": { + "name": "Word vers PDF", + "subtitle": "Convertir des documents Word (DOCX, DOC, ODT, RTF) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers DOCX, DOC, ODT, RTF", + "convertButton": "Convertir en PDF" + }, + "excelToPdf": { + "name": "Excel vers PDF", + "subtitle": "Convertir des feuilles de calcul Excel (XLSX, XLS, ODS, CSV) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers XLSX, XLS, ODS, CSV", + "convertButton": "Convertir en PDF" + }, + "powerpointToPdf": { + "name": "PowerPoint vers PDF", + "subtitle": "Convertir des prรฉsentations PowerPoint (PPTX, PPT, ODP) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers PPTX, PPT, ODP", + "convertButton": "Convertir en PDF" + }, + "markdownToPdf": { + "name": "Markdown vers PDF", + "subtitle": "ร‰crire ou coller du Markdown et lโ€™exporter en PDF avec une mise en forme soignรฉe.", + "paneMarkdown": "Markdown", + "panePreview": "Aperรงu", + "btnUpload": "Tรฉlรฉverser", + "btnSyncScroll": "Synchroniser le dรฉfilement", + "btnSettings": "Paramรจtres", + "btnExportPdf": "Exporter en PDF", + "settingsTitle": "Paramรจtres Markdown", + "settingsPreset": "Prรฉrรฉglage", + "presetDefault": "Par dรฉfaut (type GFM)", + "presetCommonmark": "CommonMark (strict)", + "presetZero": "Minimal (aucune fonctionnalitรฉ)", + "settingsOptions": "Options Markdown", + "optAllowHtml": "Autoriser les balises HTML", + "optBreaks": "Convertir les retours ร  la ligne en
", + "optLinkify": "Convertir automatiquement les URL en liens", + "optTypographer": "Typographie (guillemets intelligents, etc.)" + }, + "pdfBooklet": { + "name": "Livret PDF", + "subtitle": "Rรฉorganiser les pages pour lโ€™impression recto verso en livret. Pliez et agrafez pour crรฉer un livret.", + "howItWorks": "Fonctionnement :", + "step1": "Tรฉlรฉversez un fichier PDF.", + "step2": "Les pages seront rรฉorganisรฉes dans lโ€™ordre du livret.", + "step3": "Imprimez en recto verso, retournement sur le bord court, pliez et agrafez.", + "paperSize": "Format du papier", + "orientation": "Orientation", + "portrait": "Portrait", + "landscape": "Paysage", + "pagesPerSheet": "Pages par feuille", + "createBooklet": "Crรฉer le livret", + "processing": "Traitement...", + "pageCount": "Le nombre de pages sera complรฉtรฉ au multiple de 4 si nรฉcessaire." + }, + "xpsToPdf": { + "name": "XPS vers PDF", + "subtitle": "Convertir des documents XPS/OXPS au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers XPS, OXPS", + "convertButton": "Convertir en PDF" + }, + "mobiToPdf": { + "name": "MOBI vers PDF", + "subtitle": "Convertir des livres numรฉriques MOBI au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers MOBI", + "convertButton": "Convertir en PDF" + }, + "epubToPdf": { + "name": "EPUB vers PDF", + "subtitle": "Convertir des livres numรฉriques EPUB au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers EPUB", + "convertButton": "Convertir en PDF" + }, + "fb2ToPdf": { + "name": "FB2 vers PDF", + "subtitle": "Convertir des livres numรฉriques FictionBook (FB2) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers FB2", + "convertButton": "Convertir en PDF" + }, + "cbzToPdf": { + "name": "CBZ vers PDF", + "subtitle": "Convertir des archives de bandes dessinรฉes (CBZ/CBR) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers CBZ, CBR", + "convertButton": "Convertir en PDF" + }, + "wpdToPdf": { + "name": "WPD vers PDF", + "subtitle": "Convertir des documents WordPerfect (WPD) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers WPD", + "convertButton": "Convertir en PDF" + }, + "wpsToPdf": { + "name": "WPS vers PDF", + "subtitle": "Convertir des documents WPS Office au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers WPS", + "convertButton": "Convertir en PDF" + }, + "xmlToPdf": { + "name": "XML vers PDF", + "subtitle": "Convertir des documents XML au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers XML", + "convertButton": "Convertir en PDF" + }, + "pagesToPdf": { + "name": "Pages vers PDF", + "subtitle": "Convertir des documents Apple Pages au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers Pages", + "convertButton": "Convertir en PDF" + }, + "odgToPdf": { + "name": "ODG vers PDF", + "subtitle": "Convertir des fichiers OpenDocument Graphics (ODG) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers ODG", + "convertButton": "Convertir en PDF" + }, + "odsToPdf": { + "name": "ODS vers PDF", + "subtitle": "Convertir des fichiers OpenDocument Spreadsheet (ODS) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers ODS", + "convertButton": "Convertir en PDF" + }, + "odpToPdf": { + "name": "ODP vers PDF", + "subtitle": "Convertir des fichiers OpenDocument Presentation (ODP) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers ODP", + "convertButton": "Convertir en PDF" + }, + "pubToPdf": { + "name": "PUB vers PDF", + "subtitle": "Convertir des fichiers Microsoft Publisher (PUB) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers PUB", + "convertButton": "Convertir en PDF" + }, + "vsdToPdf": { + "name": "VSD vers PDF", + "subtitle": "Convertir des fichiers Microsoft Visio (VSD, VSDX) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers VSD, VSDX", + "convertButton": "Convertir en PDF" + }, + "psdToPdf": { + "name": "PSD vers PDF", + "subtitle": "Convertir des fichiers Adobe Photoshop (PSD) au format PDF. Prend en charge plusieurs fichiers.", + "acceptedFormats": "Fichiers PSD", + "convertButton": "Convertir en PDF" + }, + "pdfToSvg": { + "name": "PDF vers SVG", + "subtitle": "Convertir chaque page dโ€™un fichier PDF en graphique vectoriel รฉvolutif (SVG) pour une qualitรฉ parfaite ร  toutes les tailles." + }, + "extractTables": { + "name": "Extraire les tableaux PDF", + "subtitle": "Extraire les tableaux des fichiers PDF et les exporter en CSV, JSON ou Markdown." + }, + "pdfToCsv": { + "name": "PDF vers CSV", + "subtitle": "Extraire les tableaux dโ€™un PDF et les convertir au format CSV." + }, + "pdfToExcel": { + "name": "PDF vers Excel", + "subtitle": "Extraire les tableaux dโ€™un PDF et les convertir au format Excel (XLSX)." + }, + "pdfToText": { + "name": "PDF vers texte", + "subtitle": "Extraire le texte des fichiers PDF et lโ€™enregistrer en texte brut (.txt). Prend en charge plusieurs fichiers.", + "note": "Cet outil fonctionne UNIQUEMENT avec des PDF crรฉรฉs numรฉriquement. Pour les documents scannรฉs ou les PDF basรฉs sur des images, utilisez plutรดt notre outil OCR PDF.", + "convertButton": "Extraire le texte" + }, + "digitalSignPdf": { + "name": "Signature numรฉrique PDF", + "pageTitle": "Signature numรฉrique PDF - Ajouter une signature cryptographique | BentoPDF", + "subtitle": "Ajouter une signature numรฉrique cryptographique ร  votre PDF ร  lโ€™aide de certificats X.509. Prend en charge les formats PKCS#12 (.pfx, .p12) et PEM. Votre clรฉ privรฉe ne quitte jamais votre navigateur.", + "certificateSection": "Certificat", + "uploadCert": "Tรฉlรฉverser un certificat (.pfx, .p12)", + "certPassword": "Mot de passe du certificat", + "certPasswordPlaceholder": "Saisissez le mot de passe du certificat", + "certInfo": "Informations du certificat", + "certSubject": "Sujet", + "certIssuer": "ร‰metteur", + "certValidity": "Validitรฉ", + "signatureDetails": "Dรฉtails de la signature (facultatif)", + "reason": "Motif", + "reasonPlaceholder": "ex. : Jโ€™approuve ce document", + "location": "Lieu", + "locationPlaceholder": "ex. : Paris, France", + "contactInfo": "Coordonnรฉes", + "contactPlaceholder": "ex. : email@exemple.com", + "applySignature": "Appliquer la signature numรฉrique", + "successMessage": "PDF signรฉ avec succรจs ! La signature peut รชtre vรฉrifiรฉe dans nโ€™importe quel lecteur PDF." + }, + "validateSignaturePdf": { + "name": "Valider la signature PDF", + "pageTitle": "Valider la signature PDF - Vรฉrifier les signatures numรฉriques | BentoPDF", + "subtitle": "Vรฉrifier les signatures numรฉriques de vos fichiers PDF. Contrรดlez la validitรฉ du certificat, consultez les informations du signataire et confirmez lโ€™intรฉgritรฉ du document. Tout le traitement sโ€™effectue dans votre navigateur." + }, + "emailToPdf": { + "name": "Email vers PDF", + "subtitle": "Convertir des fichiers email (EML, MSG) au format PDF. Prend en charge les exports Outlook et les formats email standards.", + "acceptedFormats": "Fichiers EML, MSG", + "convertButton": "Convertir en PDF" + }, + "fontToOutline": { + "name": "Polices en contours", + "subtitle": "Convertir toutes les polices en contours vectoriels pour un rendu cohรฉrent sur tous les appareils." + }, + "deskewPdf": { + "name": "Redresser un PDF", + "subtitle": "Redresser automatiquement les pages scannรฉes inclinรฉes ร  lโ€™aide dโ€™OpenCV." + } +} diff --git a/public/locales/id/common.json b/public/locales/id/common.json new file mode 100644 index 000000000..a07d616a4 --- /dev/null +++ b/public/locales/id/common.json @@ -0,0 +1,323 @@ +{ + "nav": { + "home": "Beranda", + "about": "Tentang", + "contact": "Kontak", + "licensing": "Lisensi", + "allTools": "Semua Alat", + "openMainMenu": "Buka menu utama", + "language": "Bahasa" + }, + "donation": { + "message": "Suka BentoPDF? Bantu kami menjaganya tetap gratis dan sumber terbuka!", + "button": "Donasi" + }, + "hero": { + "title": " ", + "pdfToolkit": "Toolkit PDF", + "builtForPrivacy": "yang dibuat untuk privasi", + "noSignups": "Tidak Ada Pendaftaran", + "unlimitedUse": "Penggunaan Tak Terbatas", + "worksOffline": "Bekerja Offline ", + "startUsing": "Mulai Menggunakan Sekarang" + }, + "usedBy": { + "title": "Digunakan oleh perusahaan dan orang yang bekerja di" + }, + "features": { + "title": "Mengapa memilih", + "bentoPdf": "BentoPDF?", + "noSignup": { + "title": "Tidak Ada Pendaftaran", + "description": "Mulai seketika, tanpa akun atau email." + }, + "noUploads": { + "title": "Tidak Ada Unggahan", + "description": "100% di sisi klien, file Anda tidak pernah meninggalkan perangkat Anda." + }, + "foreverFree": { + "title": "Gratis Selamanya", + "description": "Semua alat, tidak ada uji coba, tidak ada biaya berlangganan." + }, + "noLimits": { + "title": "Tanpa Batas", + "description": "Gunakan sebanyak yang Anda inginkan, tanpa batas tersembunyi." + }, + "batchProcessing": { + "title": "Pemrosesan Kelompok", + "description": "Tangani PDF tak terbatas dalam satu kali jalan." + }, + "lightningFast": { + "title": "Sangat Cepat", + "description": "Proses PDF secara instan, tanpa menunggu atau penundaan." + } + }, + "tools": { + "title": "Mulai dengan", + "toolsLabel": "Alat", + "subtitle": "Klik alat untuk membuka pengunggah file", + "searchPlaceholder": "Cari alat (contoh, 'pisah', 'organisir'...)", + "backToTools": "Kembali ke Alat", + "firstLoadNotice": "Pemuatan pertama memerlukan waktu sebentar karena kami mengunduh mesin konversi kami. Setelah itu, semua pemuatan akan instan." + }, + "upload": { + "clickToSelect": "Klik untuk memilih file", + "orDragAndDrop": "atau seret dan jatuhkan", + "pdfOrImages": "PDF atau Gambar", + "filesNeverLeave": "File Anda tidak pernah meninggalkan perangkat Anda.", + "addMore": "Tambah Lebih Banyak File", + "clearAll": "Hapus Semua" + }, + "loader": { + "processing": "Memproses..." + }, + "alert": { + "title": "Peringatan", + "ok": "OK" + }, + "preview": { + "title": "Pratinjau Dokumen", + "downloadAsPdf": "Unduh sebagai PDF", + "close": "Tutup" + }, + "settings": { + "title": "Pengaturan", + "shortcuts": "Pintasan", + "preferences": "Preferensi", + "displayPreferences": "Preferensi Tampilan", + "searchShortcuts": "Cari pintasan...", + "shortcutsInfo": "Tekan dan tahan tombol untuk mengatur pintasan. Perubahan disimpan otomatis.", + "shortcutsWarning": "โš ๏ธ Hindari pintasan browser umum (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N dll.) karena mungkin tidak bekerja dengan baik.", + "import": "Impor", + "export": "Ekspor", + "resetToDefaults": "Atur Ulang ke Default", + "fullWidthMode": "Mode Lebar Penuh", + "fullWidthDescription": "Gunakan lebar layar penuh untuk semua alat, bukan wadah yang dipusatkan", + "settingsAutoSaved": "Pengaturan disimpan secara otomatis", + "clickToSet": "Klik untuk mengatur", + "pressKeys": "Tekan tombol...", + "warnings": { + "alreadyInUse": "Pintasan Sudah Digunakan", + "assignedTo": "sudah ditugaskan ke:", + "chooseDifferent": "Silakan pilih pintasan yang berbeda.", + "reserved": "Peringatan Pintasan Cadangan", + "commonlyUsed": "biasanya digunakan untuk:", + "unreliable": "Pintasan ini mungkin tidak berfungsi dengan andal atau mungkin bertentangan dengan perilaku browser/sistem.", + "useAnyway": "Apakah Anda ingin menggunakannya saja?", + "resetTitle": "Atur Ulang Pintasan", + "resetMessage": "Apakah Anda yakin ingin mengatur ulang semua pintasan ke default?

Tindakan ini tidak dapat dibatalkan.", + "importSuccessTitle": "Impor Berhasil", + "importSuccessMessage": "Pintasan berhasil diimpor!", + "importFailTitle": "Impor Gagal", + "importFailMessage": "Gagal mengimpor pintasan. Format file tidak valid." + } + }, + "warning": { + "title": "Peringatan", + "cancel": "Batal", + "proceed": "Lanjutkan" + }, + "compliance": { + "title": "Data Anda tidak pernah meninggalkan perangkat Anda", + "weKeep": "Kami menjaga", + "yourInfoSafe": "informasi Anda aman", + "byFollowingStandards": "dengan mengikuti standar keamanan global.", + "processingLocal": "Semua pemrosesan terjadi secara lokal di perangkat Anda.", + "gdpr": { + "title": "Kepatuhan GDPR", + "description": "Melindungi data pribadi dan privasi individu dalam Uni Eropa." + }, + "ccpa": { + "title": "Kepatuhan CCPA", + "description": "Memberikan hak kepada penduduk California atas bagaimana informasi pribadi mereka dikumpulkan, digunakan, dan dibagikan." + }, + "hipaa": { + "title": "Kepatuhan HIPAA", + "description": "Menetapkan perlindungan untuk menangani informasi kesehatan sensitif dalam sistem perawatan kesehatan Amerika Serikat." + } + }, + "faq": { + "title": "Pertanyaan yang Sering Diajukan", + "questions": "Pertanyaan", + "isFree": { + "question": "Apakah BentoPDF benar-benar gratis?", + "answer": "Ya, tentu saja. Semua alat di BentoPDF 100% gratis digunakan, tanpa batas file, tanpa pendaftaran, dan tanpa watermark. Kami percaya semua orang berhak mendapatkan akses ke alat PDF sederhana dan kuat tanpa paywall." + }, + "areFilesSecure": { + "question": "Apakah file saya aman? Di mana file diproses?", + "answer": "File Anda sangat aman karena tidak pernah meninggalkan komputer Anda. Semua pemrosesan terjadi langsung di browser web Anda (sisi klien). Kami tidak pernah mengunggah file Anda ke server, sehingga Anda mempertahankan privasi dan kontrol lengkap atas dokumen Anda." + }, + "platforms": { + "question": "Apakah ini bekerja di Mac, Windows, dan Mobile?", + "answer": "Ya! Karena BentoPDF berjalan sepenuhnya di browser Anda, ini bekerja di sistem operasi apa pun dengan browser web modern, termasuk Windows, macOS, Linux, iOS, dan Android." + }, + "gdprCompliant": { + "question": "Apakah BentoPDF patuh GDPR?", + "answer": "Ya. BentoPDF sepenuhnya patuh GDPR. Karena semua pemrosesan file terjadi secara lokal di browser Anda dan kami tidak pernah mengumpulkan atau mentransmisikan file Anda ke server mana pun, kami tidak memiliki akses ke data Anda. Ini memastikan Anda selalu mengontrol dokumen Anda." + }, + "dataStorage": { + "question": "Apakah Anda menyimpan atau melacak file saya?", + "answer": "Tidak. Kami tidak pernah menyimpan, melacak, atau mencatat file Anda. Semua yang Anda lakukan di BentoPDF terjadi di memori browser Anda dan hilang setelah Anda menutup halaman. Tidak ada unggahan, tidak ada log riwayat, dan tidak ada server yang terlibat." + }, + "different": { + "question": "Apa yang membuat BentoPDF berbeda dari alat PDF lainnya?", + "answer": "Kebanyakan alat PDF mengunggah file Anda ke server untuk diproses. BentoPDF nggak pernah begitu. Kami pakai teknologi web modern dan aman buat memproses file Anda langsung di browser Anda. Ini berarti performa lebih cepat, privasi lebih kuat, dan ketenangan pikiran." + }, + "browserBased": { + "question": "Bagaimana pemrosesan berbasis browser menjaga keamanan saya?", + "answer": "Dengan berjalan sepenuhnya di dalam browser Anda, BentoPDF memastikan file Anda tidak pernah meninggalkan perangkat Anda. Ini menghilangkan risiko peretasan server, pelanggaran data, atau akses tidak sah. File Anda tetap milik Andaโ€”selalu." + }, + "analytics": { + "question": "Apakah Anda menggunakan cookie atau analitik untuk melacak saya?", + "answer": "Kami peduli dengan privasi Anda. BentoPDF tidak melacak informasi pribadi. Kami menggunakan Simple Analytics hanya untuk melihat jumlah kunjungan anonim. Ini berarti kami dapat mengetahui berapa banyak pengguna yang mengunjungi situs kami, tetapi kami tidak pernah tahu siapa Anda. Simple Analytics sepenuhnya patuh GDPR dan menghormati privasi Anda." + } + }, + "testimonials": { + "title": "Apa Kata", + "users": "Pengguna", + "say": "Kami" + }, + "support": { + "title": "Suka Karya Saya?", + "description": "BentoPDF adalah proyek yang dibuat dengan sepenuh hati, untuk menyediakan toolkit PDF gratis, pribadi, dan kuat untuk semua orang. Kalau kamu merasa ini berguna, pertimbangkan untuk mendukung pengembangannya. Setiap secangkir kopi membantu!", + "buyMeCoffee": "Beli Kopi untuk Saya" + }, + "footer": { + "copyright": "ยฉ 2026 BentoPDF. Hak cipta dilindungi.", + "version": "Versi", + "company": "Perusahaan", + "aboutUs": "Tentang Kami", + "faqLink": "FAQ", + "contactUs": "Hubungi Kami", + "legal": "Hukum", + "termsAndConditions": "Syarat dan Ketentuan", + "privacyPolicy": "Kebijakan Privasi", + "followUs": "Ikuti Kami" + }, + "merge": { + "title": "Gabung PDF", + "description": "Gabungkan file utuh, atau pilih halaman tertentu untuk digabungkan ke dalam dokumen baru.", + "fileMode": "Mode File", + "pageMode": "Mode Halaman", + "howItWorks": "Cara kerjanya:", + "fileModeInstructions": [ + "Klik dan seret ikon untuk mengubah urutan file.", + "Di kotak \"Halaman\" untuk setiap file, Anda dapat menentukan rentang (misalnya, \"1-3, 5\") untuk menggabungkan hanya halaman tersebut.", + "Biarkan kotak \"Halaman\" kosong untuk menyertakan semua halaman dari file tersebut." + ], + "pageModeInstructions": [ + "Semua halaman dari PDF yang Anda unggah ditampilkan di bawah.", + "Cukup seret dan jatuhkan thumbnail halaman satu per satu untuk membuat urutan yang tepat sesuai keinginan kamu untuk file baru." + ], + "mergePdfs": "Gabung PDF" + }, + "common": { + "page": "Halaman", + "pages": "Halaman", + "of": "dari", + "download": "Unduh", + "cancel": "Batal", + "save": "Simpan", + "delete": "Hapus", + "edit": "Edit", + "add": "Tambah", + "remove": "Hapus", + "loading": "Memuat...", + "error": "Kesalahan", + "success": "Berhasil", + "file": "File", + "files": "File" + }, + "about": { + "hero": { + "title": "Kami percaya alat PDF harus", + "subtitle": "cepat, pribadi, dan gratis.", + "noCompromises": "Tidak ada kompromi." + }, + "mission": { + "title": "Misi Kami", + "description": "Untuk menyediakan toolbox PDF paling komprehensif yang menghormati privasi Anda dan tidak pernah meminta pembayaran. Kami percaya alat dokumen penting harus dapat diakses oleh semua orang, di mana saja, tanpa hambatan." + }, + "philosophy": { + "label": "Filosofi Inti Kami", + "title": "Privasi Yang Utama. Selalu.", + "description": "Di era di mana data adalah komoditas, kami mengambil pendekatan berbeda. Semua pemrosesan untuk alat Bentopdf terjadi secara lokal di browser Anda. Ini berarti file Anda tidak pernah menyentuh server kami, kami tidak pernah melihat dokumen Anda, dan kami tidak melacak apa yang Anda lakukan. Dokumen Anda tetap utuh dan privat secara tegas. Ini bukan hanya fitur; ini adalah fondasi kami." + }, + "whyBentopdf": { + "title": "Mengapa", + "speed": { + "title": "Dibuat untuk Kecepatan", + "description": "Tidak ada menunggu unggahan atau unduhan ke server. Dengan memproses file langsung di browser Anda menggunakan teknologi web modern seperti WebAssembly, kami menawarkan kecepatan yang tak tertandingi untuk semua alat kami." + }, + "free": { + "title": "Sepenuhnya Gratis", + "description": "Tidak ada uji coba, tidak ada langganan, tidak ada biaya tersembunyi, dan tidak ada fitur \"premium\" yang ditahan sebagai sandera. Kami percaya alat PDF yang kuat harus menjadi utilitas publik, bukan pusat keuntungan." + }, + "noAccount": { + "title": "Tidak Perlu Akun", + "description": "Langsung mulai pakai alat apa saja. Kami tidak perlu email Anda, kata sandi, atau informasi pribadi apa pun. Alur kerja Anda harus lancar dan anonim." + }, + "openSource": { + "title": "Semangat Sumber Terbuka", + "description": "Dibangun dengan transparansi sebagai prioritas. Kami manfaatkan pustaka open-source yang luar biasa seperti PDF-lib dan PDF.js, dan percaya pada upaya yang didorong komunitas untuk membuat alat-alat kuat bisa diakses semua orang." + } + }, + "cta": { + "title": "Siap untuk memulai?", + "description": "Bergabunglah dengan ribuan pengguna yang percaya Bentopdf untuk kebutuhan dokumen harian mereka. Rasakan bedanya privasi dan performa yang ditawarkan.", + "button": "Jelajahi Semua Alat" + } + }, + "contact": { + "title": "Hubungi Kami", + "subtitle": "Kami senang mendengar dari Anda. Apakah Anda memiliki pertanyaan, umpan balik, atau permintaan fitur, jangan ragu untuk menghubungi kami.", + "email": "Anda dapat menghubungi kami secara langsung melalui email di:" + }, + "licensing": { + "title": "Lisensi untuk", + "subtitle": "Pilih lisensi yang sesuai dengan kebutuhan Anda." + }, + "multiTool": { + "uploadPdfs": "Unggah PDF", + "upload": "Unggah", + "addBlankPage": "Tambah Halaman Kosong", + "edit": "Edit:", + "undo": "Undo", + "redo": "Redo", + "reset": "Atur Ulang", + "selection": "Pilihan:", + "selectAll": "Pilih Semua", + "deselectAll": "Batalkan Pilih Semua", + "rotate": "Putar:", + "rotateLeft": "Kiri", + "rotateRight": "Kanan", + "transform": "Transform:", + "duplicate": "Duplikat", + "split": "Pisah", + "clear": "Hapus:", + "delete": "Hapus", + "download": "Unduh:", + "downloadSelected": "Unduh yang Dipilih", + "exportPdf": "Ekspor PDF", + "uploadPdfFiles": "Pilih File PDF", + "dragAndDrop": "Seret dan jatuhkan file PDF di sini, atau klik untuk memilih", + "selectFiles": "Pilih File", + "renderingPages": "Merender halaman...", + "actions": { + "duplicatePage": "Duplikat halaman ini", + "deletePage": "Hapus halaman ini", + "insertPdf": "Sisipkan PDF setelah halaman ini", + "toggleSplit": "Alihkan pisah setelah halaman ini" + }, + "pleaseWait": "Harap Tunggu", + "pagesRendering": "Halaman masih dirender. Harap tunggu...", + "noPagesSelected": "Tidak Ada Halaman yang Dipilih", + "selectOnePage": "Silakan pilih setidaknya satu halaman untuk diunduh.", + "noPages": "Tidak Ada Halaman", + "noPagesToExport": "Tidak ada halaman untuk diekspor.", + "renderingTitle": "Merender pratinjau halaman", + "errorRendering": "Gagal merender thumbnail halaman", + "error": "Kesalahan", + "failedToLoad": "Gagal memuat" + } +} diff --git a/public/locales/id/tools.json b/public/locales/id/tools.json new file mode 100644 index 000000000..95e9bb6bb --- /dev/null +++ b/public/locales/id/tools.json @@ -0,0 +1,533 @@ +{ + "categories": { + "popularTools": "Alat Populer", + "editAnnotate": "Edit & Anotasi", + "convertToPdf": "Konversi ke PDF", + "convertFromPdf": "Konversi dari PDF", + "organizeManage": "Atur & Kelola", + "optimizeRepair": "Optimalkan & Perbaiki", + "securePdf": "Amankan PDF" + }, + "pdfMultiTool": { + "name": "Alat Multi PDF", + "subtitle": "Gabung, Pisah, Atur, Hapus, Putar, Tambah Halaman Kosong, Ekstrak dan Duplikat dalam antarmuka terpadu." + }, + "mergePdf": { + "name": "Gabung PDF", + "subtitle": "Gabungkan beberapa PDF menjadi satu file. Mempertahankan Bookmark." + }, + "splitPdf": { + "name": "Pisah PDF", + "subtitle": "Ekstrak rentang halaman ke PDF baru." + }, + "compressPdf": { + "name": "Kompres PDF", + "subtitle": "Kurangi ukuran file PDF Anda.", + "algorithmLabel": "Algoritma Kompresi", + "condense": "Kondensasi (Direkomendasikan)", + "photon": "Photon (Untuk PDF yang penuh Foto)", + "condenseInfo": "Kondensasi menggunakan kompresi lanjutan: menghapus bobot mati, mengoptimalkan gambar, subset font. Terbaik untuk sebagian besar PDF.", + "photonInfo": "Photon mengkonversi halaman ke gambar. Gunakan untuk PDF penuh foto/terpindai.", + "photonWarning": "Peringatan: Teks akan menjadi tidak dapat dipilih dan tautan akan berhenti berfungsi.", + "levelLabel": "Tingkat Kompresi", + "light": "Ringan (Pertahankan Kualitas)", + "balanced": "Seimbang (Direkomendasikan)", + "aggressive": "Agresif (File Lebih Kecil)", + "extreme": "Ekstrem (Kompresi Maksimum)", + "grayscale": "Konversi ke Grayscale", + "grayscaleHint": "Mengurangi ukuran file dengan menghapus informasi warna", + "customSettings": "Pengaturan Kustom", + "customSettingsHint": "Sesuaikan parameter kompresi:", + "outputQuality": "Kualitas Output", + "resizeImagesTo": "Ubah Ukuran Gambar Ke", + "onlyProcessAbove": "Hanya Proses Di Atas", + "removeMetadata": "Hapus metadata", + "subsetFonts": "Subset font (hapus glyph yang tidak digunakan)", + "removeThumbnails": "Hapus thumbnail tersemat", + "compressButton": "Kompres PDF" + }, + "pdfEditor": { + "name": "Editor PDF", + "subtitle": "Anotasi, sorot, redaksi, komentar, tambah bentuk/gambar, cari, dan lihat PDF." + }, + "jpgToPdf": { + "name": "JPG ke PDF", + "subtitle": "Buat PDF dari gambar JPG, JPEG, dan JPEG2000 (JP2/JPX)." + }, + "signPdf": { + "name": "Tanda Tangan PDF", + "subtitle": "Gambar, ketik, atau unggah tanda tangan Anda." + }, + "cropPdf": { + "name": "Potong PDF", + "subtitle": "Potong margin setiap halaman di PDF Anda." + }, + "extractPages": { + "name": "Ekstrak Halaman", + "subtitle": "Simpan pilihan halaman sebagai file baru." + }, + "duplicateOrganize": { + "name": "Duplikat & Atur", + "subtitle": "Duplikat, susun ulang, dan hapus halaman." + }, + "deletePages": { + "name": "Hapus Halaman", + "subtitle": "Hapus halaman tertentu dari dokumen Anda." + }, + "editBookmarks": { + "name": "Edit Bookmark", + "subtitle": "Tambah, edit, impor, hapus dan ekstrak bookmark PDF." + }, + "tableOfContents": { + "name": "Daftar Isi", + "subtitle": "Hasilkan halaman daftar isi dari bookmark PDF." + }, + "pageNumbers": { + "name": "Nomor Halaman", + "subtitle": "Sisipkan nomor halaman ke dokumen Anda." + }, + "addWatermark": { + "name": "Tambah Watermark", + "subtitle": "Cap teks atau gambar di atas halaman PDF Anda." + }, + "headerFooter": { + "name": "Header & Footer", + "subtitle": "Tambah teks ke bagian atas dan bawah halaman." + }, + "invertColors": { + "name": "Balik Warna", + "subtitle": "Buat versi \"mode gelap\" dari PDF Anda." + }, + "backgroundColor": { + "name": "Warna Latar Belakang", + "subtitle": "Ubah warna latar belakang PDF Anda." + }, + "changeTextColor": { + "name": "Ubah Warna Teks", + "subtitle": "Ubah warna teks di PDF Anda." + }, + "addStamps": { + "name": "Tambah Stempel", + "subtitle": "Tambah stempel gambar ke PDF Anda menggunakan toolbar anotasi.", + "usernameLabel": "Nama Pengguna Stempel", + "usernamePlaceholder": "Masukkan nama Anda (untuk stempel)", + "usernameHint": "Nama ini akan muncul pada stempel yang Anda buat." + }, + "removeAnnotations": { + "name": "Hapus Anotasi", + "subtitle": "Hapus komentar, sorotan, dan tautan." + }, + "pdfFormFiller": { + "name": "Pengisi Formulir PDF", + "subtitle": "Isi formulir langsung di browser. Juga mendukung formulir XFA." + }, + "createPdfForm": { + "name": "Buat Formulir PDF", + "subtitle": "Buat formulir PDF yang dapat diisi dengan bidang teks drag-and-drop." + }, + "removeBlankPages": { + "name": "Hapus Halaman Kosong", + "subtitle": "Deteksi dan hapus halaman kosong secara otomatis." + }, + "imageToPdf": { + "name": "Gambar ke PDF", + "subtitle": "Konversi JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP ke PDF." + }, + "pngToPdf": { + "name": "PNG ke PDF", + "subtitle": "Buat PDF dari satu atau lebih gambar PNG." + }, + "webpToPdf": { + "name": "WebP ke PDF", + "subtitle": "Buat PDF dari satu atau lebih gambar WebP." + }, + "svgToPdf": { + "name": "SVG ke PDF", + "subtitle": "Buat PDF dari satu atau lebih gambar SVG." + }, + "bmpToPdf": { + "name": "BMP ke PDF", + "subtitle": "Buat PDF dari satu atau lebih gambar BMP." + }, + "heicToPdf": { + "name": "HEIC ke PDF", + "subtitle": "Buat PDF dari satu atau lebih gambar HEIC." + }, + "tiffToPdf": { + "name": "TIFF ke PDF", + "subtitle": "Buat PDF dari satu atau lebih gambar TIFF." + }, + "textToPdf": { + "name": "Teks ke PDF", + "subtitle": "Konversi file teks biasa menjadi PDF." + }, + "jsonToPdf": { + "name": "JSON ke PDF", + "subtitle": "Konversi file JSON ke format PDF." + }, + "pdfToJpg": { + "name": "PDF ke JPG", + "subtitle": "Konversi setiap halaman PDF menjadi gambar JPG." + }, + "pdfToPng": { + "name": "PDF ke PNG", + "subtitle": "Konversi setiap halaman PDF menjadi gambar PNG." + }, + "pdfToWebp": { + "name": "PDF ke WebP", + "subtitle": "Konversi setiap halaman PDF menjadi gambar WebP." + }, + "pdfToBmp": { + "name": "PDF ke BMP", + "subtitle": "Konversi setiap halaman PDF menjadi gambar BMP." + }, + "pdfToTiff": { + "name": "PDF ke TIFF", + "subtitle": "Konversi setiap halaman PDF menjadi gambar TIFF." + }, + "pdfToGreyscale": { + "name": "PDF ke Skala Abu-abu", + "subtitle": "Konversi semua warna ke hitam dan putih." + }, + "pdfToJson": { + "name": "PDF ke JSON", + "subtitle": "Konversi file PDF ke format JSON." + }, + "ocrPdf": { + "name": "OCR PDF", + "subtitle": "Buat PDF dapat dicari dan disalin." + }, + "alternateMix": { + "name": "Alternatif & Campur Halaman", + "subtitle": "Gabung PDF dengan menggantikan halaman dari setiap PDF. Mempertahankan Bookmark." + }, + "addAttachments": { + "name": "Tambah Lampiran", + "subtitle": "Sematkan satu atau lebih file ke PDF Anda." + }, + "extractAttachments": { + "name": "Ekstrak Lampiran", + "subtitle": "Ekstrak semua file tersemat dari PDF sebagai ZIP." + }, + "editAttachments": { + "name": "Edit Lampiran", + "subtitle": "Lihat atau hapus lampiran di PDF Anda." + }, + "dividePages": { + "name": "Bagi Halaman", + "subtitle": "Bagi halaman secara horizontal atau vertikal." + }, + "addBlankPage": { + "name": "Tambah Halaman Kosong", + "subtitle": "Sisipkan halaman kosong di mana saja di PDF Anda." + }, + "reversePages": { + "name": "Balik Halaman", + "subtitle": "Balik urutan semua halaman di dokumen Anda." + }, + "rotatePdf": { + "name": "Putar PDF", + "subtitle": "Putar halaman dalam kenaikan 90 derajat." + }, + "rotateCustom": { + "name": "Putar dengan Derajat Kustom", + "subtitle": "Putar halaman dengan sudut kustom apa pun." + }, + "nUpPdf": { + "name": "N-Up PDF", + "subtitle": "Susun beberapa halaman ke satu lembar." + }, + "combineToSinglePage": { + "name": "Gabung ke Halaman Tunggal", + "subtitle": "Jahit semua halaman menjadi satu gulungan berkelanjutan." + }, + "viewMetadata": { + "name": "Lihat Metadata", + "subtitle": "Periksa properti tersembunyi PDF Anda." + }, + "editMetadata": { + "name": "Edit Metadata", + "subtitle": "Ubah penulis, judul, dan properti lainnya." + }, + "pdfsToZip": { + "name": "PDF ke ZIP", + "subtitle": "Paket beberapa file PDF ke arsip ZIP." + }, + "comparePdfs": { + "name": "Bandingkan PDF", + "subtitle": "Bandingkan dua PDF berdampingan." + }, + "posterizePdf": { + "name": "Posterisasi PDF", + "subtitle": "Pisah halaman besar menjadi beberapa halaman lebih kecil." + }, + "fixPageSize": { + "name": "Perbaiki Ukuran Halaman", + "subtitle": "Standarkan semua halaman ke ukuran seragam." + }, + "linearizePdf": { + "name": "Linierisasi PDF", + "subtitle": "Optimalkan PDF untuk tampilan web cepat." + }, + "pageDimensions": { + "name": "Dimensi Halaman", + "subtitle": "Analisis ukuran halaman, orientasi, dan unit." + }, + "removeRestrictions": { + "name": "Hapus Pembatasan", + "subtitle": "Hapus perlindungan kata sandi dan pembatasan keamanan yang terkait dengan file PDF yang ditandatangani secara digital." + }, + "repairPdf": { + "name": "Perbaiki PDF", + "subtitle": "Pulihkan data dari file PDF yang rusak atau rusak." + }, + "encryptPdf": { + "name": "Enkripsi PDF", + "subtitle": "Kunci PDF Anda dengan menambahkan kata sandi." + }, + "sanitizePdf": { + "name": "Sanitasi PDF", + "subtitle": "Hapus metadata, anotasi, skrip, dan lainnya." + }, + "decryptPdf": { + "name": "Dekripsi PDF", + "subtitle": "Buka kunci PDF dengan menghapus perlindungan kata sandi." + }, + "flattenPdf": { + "name": "Ratakan PDF", + "subtitle": "Buat bidang formulir dan anotasi tidak dapat diedit." + }, + "removeMetadata": { + "name": "Hapus Metadata", + "subtitle": "Hapus data tersembunyi dari PDF Anda." + }, + "changePermissions": { + "name": "Ubah Izin", + "subtitle": "Atur atau ubah izin pengguna pada PDF." + }, + "odtToPdf": { + "name": "ODT ke PDF", + "subtitle": "Konversi file OpenDocument Text ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File ODT", + "convertButton": "Konversi ke PDF" + }, + "csvToPdf": { + "name": "CSV ke PDF", + "subtitle": "Konversi file spreadsheet CSV ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File CSV", + "convertButton": "Konversi ke PDF" + }, + "rtfToPdf": { + "name": "RTF ke PDF", + "subtitle": "Konversi dokumen Rich Text Format ke PDF. Mendukung beberapa file.", + "acceptedFormats": "File RTF", + "convertButton": "Konversi ke PDF" + }, + "wordToPdf": { + "name": "Word ke PDF", + "subtitle": "Konversi dokumen Word (DOCX, DOC, ODT, RTF) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File DOCX, DOC, ODT, RTF", + "convertButton": "Konversi ke PDF" + }, + "excelToPdf": { + "name": "Excel ke PDF", + "subtitle": "Konversi spreadsheet Excel (XLSX, XLS, ODS, CSV) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File XLSX, XLS, ODS, CSV", + "convertButton": "Konversi ke PDF" + }, + "powerpointToPdf": { + "name": "PowerPoint ke PDF", + "subtitle": "Konversi presentasi PowerPoint (PPTX, PPT, ODP) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File PPTX, PPT, ODP", + "convertButton": "Konversi ke PDF" + }, + "markdownToPdf": { + "name": "Markdown ke PDF", + "subtitle": "Tulis atau tempel Markdown dan ekspor sebagai PDF yang diformat dengan indah.", + "paneMarkdown": "Markdown", + "panePreview": "Pratinjau", + "btnUpload": "Unggah", + "btnSyncScroll": "Sinkron Gulir", + "btnSettings": "Pengaturan", + "btnExportPdf": "Ekspor PDF", + "settingsTitle": "Pengaturan Markdown", + "settingsPreset": "Preset", + "presetDefault": "Default (seperti GFM)", + "presetCommonmark": "CommonMark (ketat)", + "presetZero": "Minimal (tanpa fitur)", + "settingsOptions": "Opsi Markdown", + "optAllowHtml": "Izinkan tag HTML", + "optBreaks": "Konversi baris baru ke
", + "optLinkify": "Konversi otomatis URL ke tautan", + "optTypographer": "Typographer (kutipan cerdas, dll.)" + }, + "pdfBooklet": { + "name": "Buku Kecil PDF", + "subtitle": "Susun ulang halaman untuk pencetakan buku kecil dua sisi. Lipat dan jahit untuk membuat buku kecil.", + "howItWorks": "Cara kerjanya:", + "step1": "Unggah file PDF.", + "step2": "Halaman akan disusun ulang dalam urutan buku kecil.", + "step3": "Cetak dua sisi, balik di tepi pendek, lipat dan jahit.", + "paperSize": "Ukuran Kertas", + "orientation": "Orientasi", + "portrait": "Potret", + "landscape": "Lanskap", + "pagesPerSheet": "Halaman per Lembar", + "createBooklet": "Buat Buku Kecil", + "processing": "Memproses...", + "pageCount": "Jumlah halaman akan diisi ke kelipatan 4 jika diperlukan." + }, + "xpsToPdf": { + "name": "XPS ke PDF", + "subtitle": "Konversi dokumen XPS/OXPS ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File XPS, OXPS", + "convertButton": "Konversi ke PDF" + }, + "mobiToPdf": { + "name": "MOBI ke PDF", + "subtitle": "Konversi e-book MOBI ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File MOBI", + "convertButton": "Konversi ke PDF" + }, + "epubToPdf": { + "name": "EPUB ke PDF", + "subtitle": "Konversi e-book EPUB ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File EPUB", + "convertButton": "Konversi ke PDF" + }, + "fb2ToPdf": { + "name": "FB2 ke PDF", + "subtitle": "Konversi e-book FictionBook (FB2) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File FB2", + "convertButton": "Konversi ke PDF" + }, + "cbzToPdf": { + "name": "CBZ ke PDF", + "subtitle": "Konversi arsip buku komik (CBZ/CBR) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File CBZ, CBR", + "convertButton": "Konversi ke PDF" + }, + "wpdToPdf": { + "name": "WPD ke PDF", + "subtitle": "Konversi dokumen WordPerfect (WPD) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File WPD", + "convertButton": "Konversi ke PDF" + }, + "wpsToPdf": { + "name": "WPS ke PDF", + "subtitle": "Konversi dokumen WPS Office ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File WPS", + "convertButton": "Konversi ke PDF" + }, + "xmlToPdf": { + "name": "XML ke PDF", + "subtitle": "Konversi dokumen XML ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File XML", + "convertButton": "Konversi ke PDF" + }, + "pagesToPdf": { + "name": "Pages ke PDF", + "subtitle": "Konversi dokumen Apple Pages ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File Pages", + "convertButton": "Konversi ke PDF" + }, + "odgToPdf": { + "name": "ODG ke PDF", + "subtitle": "Konversi file OpenDocument Graphics (ODG) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File ODG", + "convertButton": "Konversi ke PDF" + }, + "odsToPdf": { + "name": "ODS ke PDF", + "subtitle": "Konversi file OpenDocument Spreadsheet (ODS) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File ODS", + "convertButton": "Konversi ke PDF" + }, + "odpToPdf": { + "name": "ODP ke PDF", + "subtitle": "Konversi file OpenDocument Presentation (ODP) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File ODP", + "convertButton": "Konversi ke PDF" + }, + "pubToPdf": { + "name": "PUB ke PDF", + "subtitle": "Konversi file Microsoft Publisher (PUB) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File PUB", + "convertButton": "Konversi ke PDF" + }, + "vsdToPdf": { + "name": "VSD ke PDF", + "subtitle": "Konversi file Microsoft Visio (VSD, VSDX) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File VSD, VSDX", + "convertButton": "Konversi ke PDF" + }, + "psdToPdf": { + "name": "PSD ke PDF", + "subtitle": "Konversi file Adobe Photoshop (PSD) ke format PDF. Mendukung beberapa file.", + "acceptedFormats": "File PSD", + "convertButton": "Konversi ke PDF" + }, + "pdfToSvg": { + "name": "PDF ke SVG", + "subtitle": "Konversi setiap halaman file PDF menjadi grafik vektor skalabel (SVG) untuk kualitas sempurna di ukuran apa pun." + }, + "extractTables": { + "name": "Ekstrak Tabel PDF", + "subtitle": "Ekstrak tabel dari file PDF dan ekspor sebagai CSV, JSON, atau Markdown." + }, + "pdfToCsv": { + "name": "PDF ke CSV", + "subtitle": "Ekstrak tabel dari PDF dan konversi ke format CSV." + }, + "pdfToExcel": { + "name": "PDF ke Excel", + "subtitle": "Ekstrak tabel dari PDF dan konversi ke format Excel (XLSX)." + }, + "pdfToText": { + "name": "PDF ke Teks", + "subtitle": "Ekstrak teks dari file PDF dan simpan sebagai teks biasa (.txt). Mendukung beberapa file.", + "note": "Alat ini bekerja HANYA dengan PDF yang dibuat secara digital. Untuk dokumen terpindai atau PDF berbasis gambar, gunakan alat OCR PDF kami sebagai gantinya.", + "convertButton": "Ekstrak Teks" + }, + "digitalSignPdf": { + "name": "Tanda Tangan Digital PDF", + "pageTitle": "Tanda Tangan Digital PDF - Tambah Tanda Tangan Kriptografi | BentoPDF", + "subtitle": "Tambah tanda tangan digital kriptografi ke PDF Anda menggunakan sertifikat X.509. Mendukung format PKCS#12 (.pfx, .p12) dan PEM. Kunci pribadi Anda tidak pernah meninggalkan browser Anda.", + "certificateSection": "Sertifikat", + "uploadCert": "Unggah sertifikat (.pfx, .p12)", + "certPassword": "Kata Sandi Sertifikat", + "certPasswordPlaceholder": "Masukkan kata sandi sertifikat", + "certInfo": "Informasi Sertifikat", + "certSubject": "Subjek", + "certIssuer": "Penerbit", + "certValidity": "Valid", + "signatureDetails": "Detail Tanda Tangan (Opsional)", + "reason": "Alasan", + "reasonPlaceholder": "misalnya, Saya menyetujui dokumen ini", + "location": "Lokasi", + "locationPlaceholder": "misalnya, Jakarta, Indonesia", + "contactInfo": "Info Kontak", + "contactPlaceholder": "misalnya, email@contoh.com", + "applySignature": "Terapkan Tanda Tangan Digital", + "successMessage": "PDF berhasil ditandatangani! Tanda tangan dapat diverifikasi di pembaca PDF apa pun." + }, + "validateSignaturePdf": { + "name": "Validasi Tanda Tangan PDF", + "pageTitle": "Validasi Tanda Tangan PDF - Verifikasi Tanda Tangan Digital | BentoPDF", + "subtitle": "Verifikasi tanda tangan digital di file PDF Anda. Periksa validitas sertifikat, lihat detail penandatangan, dan konfirmasi integritas dokumen. Semua pemrosesan terjadi di browser Anda." + }, + "emailToPdf": { + "name": "Email ke PDF", + "subtitle": "Konversi file email (EML, MSG) ke format PDF. Mendukung ekspor Outlook dan format email standar.", + "acceptedFormats": "File EML, MSG", + "convertButton": "Konversi ke PDF" + }, + "fontToOutline": { + "name": "Font ke Garis Tepi", + "subtitle": "Konversi semua font ke garis tepi vektor untuk tampilan konsisten di semua perangkat." + }, + "deskewPdf": { + "name": "Luruskan PDF", + "subtitle": "Otomatis meluruskan halaman hasil pindai yang miring menggunakan OpenCV." + } +} diff --git a/public/locales/it/common.json b/public/locales/it/common.json index c620102d8..c7d7b8156 100644 --- a/public/locales/it/common.json +++ b/public/locales/it/common.json @@ -1,50 +1,50 @@ { "nav": { "home": "Home", - "about": "Chi Siamo", + "about": "Chi siamo", "contact": "Contatti", "licensing": "Licenze", - "allTools": "Tutti gli Strumenti", - "openMainMenu": "Apri il Menu Principale", + "allTools": "Tutti gli strumenti", + "openMainMenu": "Apri il menu principale", "language": "Lingua" }, "donation": { - "message": "Love BentoPDF? Help us keep it free and open source!", - "button": "Donate" + "message": "Ti piace BentoPDF? Aiutaci a mantenerlo gratuito e open source!", + "button": "Dona" }, "hero": { - "title": "I", - "pdfToolkit": "tuoi attrezzi per i PDF", - "builtForPrivacy": "creati per la privacy", - "noSignups": "Nessun iscrizione", + "title": "Il", + "pdfToolkit": "kit di strumenti PDF", + "builtForPrivacy": "pensato per la privacy", + "noSignups": "Nessuna registrazione", "unlimitedUse": "Uso illimitato", "worksOffline": "Funziona offline", - "startUsing": "Inizia ad usarlo ora" + "startUsing": "Inizia a usarlo ora" }, "usedBy": { "title": "Usato da aziende e persone che lavorano in" }, "features": { - "title": "Perchรจ scegliere", + "title": "Perchรฉ scegliere", "bentoPdf": "BentoPDF?", "noSignup": { - "title": "Nessuna Registrazione", - "description": "Usa subito, senza account o email." + "title": "Nessuna registrazione", + "description": "Inizia subito, senza account nรฉ email." }, "noUploads": { "title": "Nessun caricamento", "description": "100% client-side, i tuoi file non lasciano mai il dispositivo." }, "foreverFree": { - "title": "Sempre Gratis", + "title": "Sempre gratis", "description": "Tutti gli strumenti, nessuna prova, nessun paywall." }, "noLimits": { - "title": "Senza Limiti", + "title": "Senza limiti", "description": "Usalo quanto vuoi, senza limiti nascosti." }, "batchProcessing": { - "title": "Elaborazione in Batch", + "title": "Elaborazione in batch", "description": "Gestisci un numero illimitato di PDF in un'unica operazione." }, "lightningFast": { @@ -55,15 +55,15 @@ "tools": { "title": "Inizia con", "toolsLabel": "Strumenti", - "subtitle": "Clicca uno strumento per aprire il caricatore di file", - "searchPlaceholder": "Cerca uno strumento (es. 'split', 'organize'...)", - "backToTools": "Torna agli Strumenti", - "firstLoadNotice": "Il primo caricamento richiede un momento mentre scarichiamo il nostro motore di conversione. Dopo di ciรฒ, tutti i caricamenti saranno immediati." + "subtitle": "Clicca su uno strumento per aprire il caricatore di file", + "searchPlaceholder": "Cerca uno strumento (es. \"split\", \"organizza\"...)", + "backToTools": "Torna agli strumenti", + "firstLoadNotice": "Il primo caricamento richiede qualche istante mentre scarichiamo il motore di conversione. Dopo di ciรฒ, tutti i caricamenti saranno immediati." }, "upload": { "clickToSelect": "Clicca per selezionare un file", - "orDragAndDrop": "o trascina e rilascia", - "pdfOrImages": "PDF o Immagini", + "orDragAndDrop": "oppure trascina e rilascia", + "pdfOrImages": "PDF o immagini", "filesNeverLeave": "I tuoi file non lasciano mai il tuo dispositivo.", "addMore": "Aggiungi altri file", "clearAll": "Svuota tutto" @@ -76,7 +76,7 @@ "ok": "OK" }, "preview": { - "title": "Anteprima Documento", + "title": "Anteprima documento", "downloadAsPdf": "Scarica come PDF", "close": "Chiudi" }, @@ -87,7 +87,7 @@ "displayPreferences": "Preferenze di visualizzazione", "searchShortcuts": "Cerca scorciatoie...", "shortcutsInfo": "Premi e tieni premuti i tasti per impostare una scorciatoia. Le modifiche vengono salvate automaticamente.", - "shortcutsWarning": "โš ๏ธ Evita scorciatoie comuni del browser (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N ecc.) poichรฉ potrebbero non funzionare in modo affidabile.", + "shortcutsWarning": "โš ๏ธ Evita le scorciatoie comuni del browser (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N ecc.) perchรฉ potrebbero non funzionare in modo affidabile.", "import": "Importa", "export": "Esporta", "resetToDefaults": "Reimposta ai valori predefiniti", @@ -95,7 +95,7 @@ "fullWidthDescription": "Usa l'intera larghezza dello schermo per tutti gli strumenti invece di un contenitore centrato", "settingsAutoSaved": "Le impostazioni vengono salvate automaticamente", "clickToSet": "Clicca per impostare", - "pressKeys": "Premi tasti...", + "pressKeys": "Premi i tasti...", "warnings": { "alreadyInUse": "Scorciatoia giร  in uso", "assignedTo": "รจ giร  assegnata a:", @@ -104,11 +104,11 @@ "commonlyUsed": "รจ comunemente usata per:", "unreliable": "Questa scorciatoia potrebbe non funzionare in modo affidabile o potrebbe avere conflitti con il comportamento del browser/sistema.", "useAnyway": "Vuoi usarla comunque?", - "resetTitle": "Reimposta Scorciatoie", + "resetTitle": "Reimposta scorciatoie", "resetMessage": "Sei sicuro di voler reimpostare tutte le scorciatoie ai valori predefiniti?

Questa azione non puรฒ essere annullata.", - "importSuccessTitle": "Importazione Riuscita", + "importSuccessTitle": "Importazione riuscita", "importSuccessMessage": "Scorciatoie importate con successo!", - "importFailTitle": "Importazione Fallita", + "importFailTitle": "Importazione fallita", "importFailMessage": "Impossibile importare le scorciatoie. Formato file non valido." } }, @@ -137,8 +137,8 @@ } }, "faq": { - "title": "Domande Frequenti", - "questions": "Domande", + "title": "Domande", + "questions": "Frequenti", "isFree": { "question": "BentoPDF รจ davvero gratuito?", "answer": "Sรฌ, assolutamente. Tutti gli strumenti su BentoPDF sono gratuiti al 100%, senza limiti di file, senza registrazioni e senza filigrane. Crediamo che tutti debbano poter accedere a strumenti PDF semplici e potenti senza barriere a pagamento." @@ -174,8 +174,8 @@ }, "testimonials": { "title": "Cosa", - "users": "i Nostri Utenti", - "say": "Dicono" + "users": "dicono i nostri", + "say": "utenti" }, "support": { "title": "Ti piace il mio lavoro?", @@ -183,22 +183,22 @@ "buyMeCoffee": "Offrimi un caffรจ" }, "footer": { - "copyright": "ยฉ 2025 BentoPDF. Tutti i diritti riservati.", + "copyright": "ยฉ 2026 BentoPDF. Tutti i diritti riservati.", "version": "Versione", "company": "Azienda", - "aboutUs": "Chi Siamo", + "aboutUs": "Chi siamo", "faqLink": "FAQ", "contactUs": "Contattaci", "legal": "Legale", - "termsAndConditions": "Termini e Condizioni", - "privacyPolicy": "Informativa sulla Privacy", + "termsAndConditions": "Termini e condizioni", + "privacyPolicy": "Informativa sulla privacy", "followUs": "Seguici" }, "merge": { "title": "Unisci PDF", "description": "Combina file interi, oppure seleziona pagine specifiche da unire in un nuovo documento.", - "fileMode": "Modalitร  File", - "pageMode": "Modalitร  Pagina", + "fileMode": "Modalitร  file", + "pageMode": "Modalitร  pagina", "howItWorks": "Come funziona:", "fileModeInstructions": [ "Clicca e trascina l'icona per cambiare l'ordine dei file.", @@ -247,7 +247,7 @@ "title": "Perchรฉ BentoPDF", "speed": { "title": "Progettato per la velocitร ", - "description": "Nessuna attesa per upload o download verso un server. Elaborando i file direttamente nel browser con tecnologie web moderne come WebAssembly, offriamo velocitร  impareggiabile per tutti i nostri strumenti." + "description": "Nessuna attesa per upload o download verso un server. Elaborando i file direttamente nel browser con tecnologie web moderne come WebAssembly, offriamo una velocitร  impareggiabile per tutti i nostri strumenti." }, "free": { "title": "Completamente gratuito", @@ -266,58 +266,58 @@ "title": "Pronto per iniziare?", "description": "Unisciti a migliaia di utenti che si affidano a BentoPDF per le loro esigenze quotidiane sui documenti. Sperimenta la differenza che privacy e prestazioni possono offrire.", "button": "Esplora tutti gli strumenti" - }, - "contact": { - "title": "Contattaci", - "subtitle": "Ci farebbe piacere sentirti. Che tu abbia una domanda, un feedback o una richiesta di funzionalitร , non esitare a contattarci.", - "email": "Puoi contattarci direttamente via email a:" - }, - "licensing": { - "title": "Licenze per", - "subtitle": "Scegli la licenza che si adatta alle tue esigenze." - }, - "multiTool": { - "uploadPdfs": "Carica PDF", - "upload": "Carica", - "addBlankPage": "Aggiungi pagina vuota", - "edit": "Modifica:", - "undo": "Annulla", - "redo": "Ripeti", - "reset": "Reimposta", - "selection": "Selezione:", - "selectAll": "Seleziona tutto", - "deselectAll": "Deseleziona tutto", - "rotate": "Ruota:", - "rotateLeft": "Sinistra", - "rotateRight": "Destra", - "transform": "Trasforma:", - "duplicate": "Duplica", - "split": "Dividi", - "clear": "Svuota:", - "delete": "Elimina", - "download": "Scarica:", - "downloadSelected": "Scarica selezionati", - "exportPdf": "Esporta PDF", - "uploadPdfFiles": "Seleziona file PDF", - "dragAndDrop": "Trascina e rilascia i file PDF qui, oppure clicca per selezionare", - "selectFiles": "Seleziona file", - "renderingPages": "Generazione anteprime pagine...", - "actions": { - "duplicatePage": "Duplica questa pagina", - "deletePage": "Elimina questa pagina", - "insertPdf": "Inserisci PDF dopo questa pagina", - "toggleSplit": "Attiva la divisione dopo questa pagina" - }, - "pleaseWait": "Attendere...", - "pagesRendering": "Le pagine sono ancora in fase di generazione. Attendere...", - "noPagesSelected": "Nessuna pagina selezionata", - "selectOnePage": "Seleziona almeno una pagina da scaricare.", - "noPages": "Nessuna pagina", - "noPagesToExport": "Non ci sono pagine da esportare.", - "renderingTitle": "Generazione anteprime delle pagine", - "errorRendering": "Impossibile generare le miniature delle pagine", - "error": "Errore", - "failedToLoad": "Caricamento fallito" } + }, + "contact": { + "title": "Contattaci", + "subtitle": "Ci farebbe piacere sentirti. Che tu abbia una domanda, un feedback o una richiesta di funzionalitร , non esitare a contattarci.", + "email": "Puoi contattarci direttamente via email a:" + }, + "licensing": { + "title": "Licenze per", + "subtitle": "Scegli la licenza che si adatta alle tue esigenze." + }, + "multiTool": { + "uploadPdfs": "Carica PDF", + "upload": "Carica", + "addBlankPage": "Aggiungi pagina vuota", + "edit": "Modifica:", + "undo": "Annulla", + "redo": "Ripeti", + "reset": "Reimposta", + "selection": "Selezione:", + "selectAll": "Seleziona tutto", + "deselectAll": "Deseleziona tutto", + "rotate": "Ruota:", + "rotateLeft": "Sinistra", + "rotateRight": "Destra", + "transform": "Trasforma:", + "duplicate": "Duplica", + "split": "Dividi", + "clear": "Svuota:", + "delete": "Elimina", + "download": "Scarica:", + "downloadSelected": "Scarica selezionati", + "exportPdf": "Esporta PDF", + "uploadPdfFiles": "Seleziona file PDF", + "dragAndDrop": "Trascina e rilascia i file PDF qui, oppure clicca per selezionare", + "selectFiles": "Seleziona file", + "renderingPages": "Generazione anteprime pagine...", + "actions": { + "duplicatePage": "Duplica questa pagina", + "deletePage": "Elimina questa pagina", + "insertPdf": "Inserisci PDF dopo questa pagina", + "toggleSplit": "Attiva la divisione dopo questa pagina" + }, + "pleaseWait": "Attendere...", + "pagesRendering": "Le pagine sono ancora in fase di generazione. Attendere...", + "noPagesSelected": "Nessuna pagina selezionata", + "selectOnePage": "Seleziona almeno una pagina da scaricare.", + "noPages": "Nessuna pagina", + "noPagesToExport": "Non ci sono pagine da esportare.", + "renderingTitle": "Generazione anteprime delle pagine", + "errorRendering": "Impossibile generare le miniature delle pagine", + "error": "Errore", + "failedToLoad": "Caricamento fallito" } } diff --git a/public/locales/it/tools.json b/public/locales/it/tools.json index 4835327f0..0caf98e36 100644 --- a/public/locales/it/tools.json +++ b/public/locales/it/tools.json @@ -1,492 +1,533 @@ { - "categories": { - "popularTools": "Strumenti popolari", - "editAnnotate": "Modifica e Annota", - "convertToPdf": "Converti in PDF", - "convertFromPdf": "Convert da PDF", - "organizeManage": "Organizza e Gestisci", - "optimizeRepair": "Ottimizza e Ripara", - "securePdf": "Proteggi PDF" - }, - "pdfMultiTool": { - "name": "PDF Multi Tool", - "subtitle": "Unisci, Dividi, Organizza, Elimina, Ruota, Aggiungi Pagine Vuote, Estrai e Duplica in un'interfaccia unificata." - }, - "mergePdf": { - "name": "Unisci PDF", - "subtitle": "Unisci piรน PDF in un unico file. Conserva i Segnalibri." - }, - "splitPdf": { - "name": "Dividi PDF", - "subtitle": "Estrai un insieme di pagine in un nuovo PDF." - }, - "compressPdf": { - "name": "Comprimi PDF", - "subtitle": "Riduci le dimensioni del tuo PDF.", - "algorithmLabel": "Algoritmo di compressione", - "condense": "Condensa (Consigliato)", - "photon": "Photon (Per PDF con molte foto)", - "condenseInfo": "Condensa usa la compressione avanzata: rimuove peso inutile, ottimizza le immagini, riduce i font. Migliore per la maggior parte dei PDF.", - "photonInfo": "Photon converte le pagine in immagini. Usalo per PDF con molte foto o scannerizzati.", - "photonWarning": "Attenzione: il testo non sarร  selezionabile e i link smetteranno di funzionare.", - "levelLabel": "Livello di compressione", - "light": "Leggero (Preserva qualitร )", - "balanced": "Bilanciato (Consigliato)", - "aggressive": "Aggressivo (File piรน piccoli)", - "extreme": "Estremo (Compressione massima)", - "grayscale": "Converti in scala di grigi", - "grayscaleHint": "Riduce le dimensioni rimuovendo le informazioni di colore", - "customSettings": "Impostazioni personalizzate", - "customSettingsHint": "Affina i parametri di compressione:", - "outputQuality": "Qualitร  di output", - "resizeImagesTo": "Ridimensiona le immagini a", - "onlyProcessAbove": "Elabora solo sopra", - "removeMetadata": "Rimuovi metadati", - "subsetFonts": "Riduci i font (rimuovi glifi non usati)", - "removeThumbnails": "Rimuovi miniature incorporate", - "compressButton": "Comprimi PDF" - }, - "pdfEditor": { - "name": "Editor PDF", - "subtitle": "Annota, evidenzia, redigi, commenta, aggiungi forme/immagini, cerca e visualizza PDF." - }, - "jpgToPdf": { - "name": "JPG in PDF", - "subtitle": "Crea un PDF da immagini JPG, JPEG e JPEG2000 (JP2/JPX)." - }, - "signPdf": { - "name": "Firma PDF", - "subtitle": "Disegna, digita o carica la tua firma." - }, - "cropPdf": { - "name": "Ritaglia PDF", - "subtitle": "Rimuovi i margini di ogni pagina del tuo PDF." - }, - "extractPages": { - "name": "Estrai Pagine", - "subtitle": "Salva una selezione di pagine come nuovi file." - }, - "duplicateOrganize": { - "name": "Duplica e Organizza", - "subtitle": "Duplica, riordina e elimina pagine." - }, - "deletePages": { - "name": "Elimina Pagine", - "subtitle": "Rimuovi pagine specifiche dal tuo documento." - }, - "editBookmarks": { - "name": "Modifica Segnalibri", - "subtitle": "Aggiungi, modifica, importa, elimina ed estrai segnalibri PDF." - }, - "tableOfContents": { - "name": "Indice", - "subtitle": "Genera una pagina di indice dai segnalibri del PDF." - }, - "pageNumbers": { - "name": "Numeri di Pagina", - "subtitle": "Inserisci i numeri di pagina nel tuo documento." - }, - "addWatermark": { - "name": "Aggiungi Filigrana", - "subtitle": "Applica testo o un'immagine sulle pagine del tuo PDF." - }, - "headerFooter": { - "name": "Intestazione e Piรจ di Pagina", - "subtitle": "Aggiungi testo nella parte superiore e inferiore delle pagine." - }, - "invertColors": { - "name": "Inverti Colori", - "subtitle": "Crea una versione \"modalitร  scura\" del tuo PDF." - }, - "backgroundColor": { - "name": "Colore di Sfondo", - "subtitle": "Cambia il colore di sfondo del tuo PDF." - }, - "changeTextColor": { - "name": "Cambia Colore Testo", - "subtitle": "Cambia il colore del testo nel tuo PDF." - }, - "addStamps": { - "name": "Aggiungi Timbri", - "subtitle": "Aggiungi timbri immagine al tuo PDF usando la barra degli strumenti di annotazione.", - "usernameLabel": "Nome sul timbro", - "usernamePlaceholder": "Inserisci il tuo nome (per i timbri)", - "usernameHint": "Questo nome apparirร  sui timbri che crei." - }, - "removeAnnotations": { - "name": "Rimuovi Annotazioni", - "subtitle": "Rimuovi commenti, evidenziazioni e link." - }, - "pdfFormFiller": { - "name": "Compilatore Moduli PDF", - "subtitle": "Compila i moduli direttamente nel browser. Supporta anche i moduli XFA." - }, - "createPdfForm": { - "name": "Crea Modulo PDF", - "subtitle": "Crea moduli PDF compilabili con campi di testo drag-and-drop." - }, - "removeBlankPages": { - "name": "Rimuovi Pagine Vuote", - "subtitle": "Rileva e elimina automaticamente le pagine vuote." - }, - "imageToPdf": { - "name": "Immagini in PDF", - "subtitle": "Converti JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP in PDF." - }, - "pngToPdf": { - "name": "PNG in PDF", - "subtitle": "Crea un PDF da una o piรน immagini PNG." - }, - "webpToPdf": { - "name": "WebP in PDF", - "subtitle": "Crea un PDF da una o piรน immagini WebP." - }, - "svgToPdf": { - "name": "SVG in PDF", - "subtitle": "Crea un PDF da una o piรน immagini SVG." - }, - "bmpToPdf": { - "name": "BMP in PDF", - "subtitle": "Crea un PDF da una o piรน immagini BMP." - }, - "heicToPdf": { - "name": "HEIC in PDF", - "subtitle": "Crea un PDF da una o piรน immagini HEIC." - }, - "tiffToPdf": { - "name": "TIFF in PDF", - "subtitle": "Crea un PDF da una o piรน immagini TIFF." - }, - "textToPdf": { - "name": "Testo in PDF", - "subtitle": "Converti un file di testo semplice in un PDF." - }, - "jsonToPdf": { - "name": "JSON in PDF", - "subtitle": "Converti file JSON in formato PDF." - }, - "pdfToJpg": { - "name": "PDF in JPG", - "subtitle": "Converti ogni pagina del PDF in un'immagine JPG." - }, - "pdfToPng": { - "name": "PDF in PNG", - "subtitle": "Converti ogni pagina del PDF in un'immagine PNG." - }, - "pdfToWebp": { - "name": "PDF in WebP", - "subtitle": "Converti ogni pagina del PDF in un'immagine WebP." - }, - "pdfToBmp": { - "name": "PDF in BMP", - "subtitle": "Converti ogni pagina del PDF in un'immagine BMP." - }, - "pdfToTiff": { - "name": "PDF in TIFF", - "subtitle": "Converti ogni pagina del PDF in un'immagine TIFF." - }, - "pdfToGreyscale": { - "name": "PDF in Scala di Grigi", - "subtitle": "Converti tutti i colori in scala di grigi." - }, - "pdfToJson": { - "name": "PDF in JSON", - "subtitle": "Converti file PDF in formato JSON." - }, - "ocrPdf": { - "name": "OCR PDF", - "subtitle": "Rendi un PDF ricercabile e copiabile." - }, - "alternateMix": { - "name": "Alterna e Riordina Pagine", - "subtitle": "Unisci PDF sostituendo le pagine di ogni file. Conserva i segnalibri." - }, - "addAttachments": { - "name": "Aggiungi Allegati", - "subtitle": "Incorpora uno o piรน file nel tuo PDF." - }, - "extractAttachments": { - "name": "Estrai Allegati", - "subtitle": "Estrai tutti i file incorporati dai PDF come archivio ZIP." - }, - "editAttachments": { - "name": "Modifica Allegati", - "subtitle": "Visualizza o rimuovi gli allegati nel tuo PDF." - }, - "dividePages": { - "name": "Dividi Pagine", - "subtitle": "Dividi le pagine orizzontalmente o verticalmente." - }, - "addBlankPage": { - "name": "Aggiungi Pagina Vuota", - "subtitle": "Inserisci una pagina vuota in qualsiasi punto del tuo PDF." - }, - "reversePages": { - "name": "Inverti Pagine", - "subtitle": "Inverti l'ordine di tutte le pagine del documento." - }, - "rotatePdf": { - "name": "Ruota PDF", - "subtitle": "Ruota le pagine per multipli di 90 gradi." - }, - "rotateCustom": { - "name": "Ruota di Gradi Personalizzati", - "subtitle": "Ruota le pagine di un angolo personalizzato." - }, - "nUpPdf": { - "name": "N-Up PDF", - "subtitle": "Disponi piรน pagine su un unico foglio." - }, - "combineToSinglePage": { - "name": "Combina in Una Pagina", - "subtitle": "Unisci tutte le pagine in un'unica pagina continua." - }, - "viewMetadata": { - "name": "Visualizza Metadati", - "subtitle": "Ispeziona le proprietร  nascoste del tuo PDF." - }, - "editMetadata": { - "name": "Modifica Metadati", - "subtitle": "Modifica autore, titolo e altre proprietร ." - }, - "pdfsToZip": { - "name": "PDF in ZIP", - "subtitle": "Raggruppa piรน file PDF in un archivio ZIP." - }, - "comparePdfs": { - "name": "Confronta PDF", - "subtitle": "Confronta due PDF fianco a fianco." - }, - "posterizePdf": { - "name": "Posterizza PDF", - "subtitle": "Dividi una pagina grande in piรน pagine piรน piccole." - }, - "fixPageSize": { - "name": "Correggi Dimensione Pagina", - "subtitle": "Uniforma tutte le pagine a una dimensione standard." - }, - "linearizePdf": { - "name": "Linearizza PDF", - "subtitle": "Ottimizza il PDF per una visualizzazione web piรน veloce." - }, - "pageDimensions": { - "name": "Dimensioni Pagina", - "subtitle": "Analizza dimensione, orientamento e unitร  delle pagine." - }, - "removeRestrictions": { - "name": "Rimuovi Restrizioni", - "subtitle": "Rimuovi la protezione tramite password e le restrizioni di sicurezza associate ai PDF firmati digitalmente." - }, - "repairPdf": { - "name": "Ripara PDF", - "subtitle": "Recupera i dati da file PDF corrotti o danneggiati." - }, - "encryptPdf": { - "name": "Cripta PDF", - "subtitle": "Proteggi il tuo PDF aggiungendo una password." - }, - "sanitizePdf": { - "name": "Sanitizza PDF", - "subtitle": "Rimuovi metadati, annotazioni, script e altro." - }, - "decryptPdf": { - "name": "Decrittografa PDF", - "subtitle": "Sblocca il PDF rimuovendo la protezione tramite password." - }, - "flattenPdf": { - "name": "Appiattisci PDF", - "subtitle": "Rendi i campi dei moduli e le annotazioni non modificabili." - }, - "removeMetadata": { - "name": "Rimuovi metadati", - "subtitle": "Rimuovi i dati nascosti dal tuo PDF." - }, - "changePermissions": { - "name": "Modifica permessi", - "subtitle": "Imposta o modifica i permessi utente su un PDF." - }, - "odtToPdf": { - "name": "ODT in PDF", - "subtitle": "Converti file OpenDocument Text in formato PDF. Supporta piรน file.", - "acceptedFormats": "File ODT", - "convertButton": "Converti in PDF" - }, - "csvToPdf": { - "name": "CSV in PDF", - "subtitle": "Converti file di foglio di calcolo CSV in formato PDF. Supporta piรน file.", - "acceptedFormats": "File CSV", - "convertButton": "Converti in PDF" - }, - "rtfToPdf": { - "name": "RTF in PDF", - "subtitle": "Converti documenti Rich Text Format in PDF. Supporta piรน file.", - "acceptedFormats": "File RTF", - "convertButton": "Converti in PDF" - }, - "wordToPdf": { - "name": "Word in PDF", - "subtitle": "Converti documenti Word (DOCX, DOC, ODT, RTF) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File DOCX, DOC, ODT, RTF", - "convertButton": "Converti in PDF" - }, - "excelToPdf": { - "name": "Excel in PDF", - "subtitle": "Converti fogli Excel (XLSX, XLS, ODS, CSV) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File XLSX, XLS, ODS, CSV", - "convertButton": "Converti in PDF" - }, - "powerpointToPdf": { - "name": "PowerPoint in PDF", - "subtitle": "Converti presentazioni PowerPoint (PPTX, PPT, ODP) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File PPTX, PPT, ODP", - "convertButton": "Converti in PDF" - }, - "markdownToPdf": { - "name": "Markdown in PDF", - "subtitle": "Scrivi o incolla Markdown ed esportalo come un PDF ben formattato.", - "paneMarkdown": "Markdown", - "panePreview": "Anteprima", - "btnUpload": "Carica", - "btnSyncScroll": "Sincronizza scorrimento", - "btnSettings": "Impostazioni", - "btnExportPdf": "Esporta PDF", - "settingsTitle": "Impostazioni Markdown", - "settingsPreset": "Preset", - "presetDefault": "Predefinito (simile a GFM)", - "presetCommonmark": "CommonMark (rigoroso)", - "presetZero": "Minimale (nessuna funzionalitร )", - "settingsOptions": "Opzioni Markdown", - "optAllowHtml": "Consenti tag HTML", - "optBreaks": "Converti nuove righe in
", - "optLinkify": "Converti automaticamente gli URL in link", - "optTypographer": "Tipografia (virgolette intelligenti, ecc.)" - }, - "pdfBooklet": { - "name": "Opuscolo PDF", - "subtitle": "Riorganizza le pagine per la stampa di opuscoli fronte-retro. Piega e pinza per creare un opuscolo.", - "howItWorks": "Come funziona:", - "step1": "Carica un file PDF.", - "step2": "Le pagine saranno riorganizzate in ordine per opuscolo.", - "step3": "Stampa fronte-retro, capovolgi sul lato corto, piega e pinza.", - "paperSize": "Formato carta", - "orientation": "Orientamento", - "portrait": "Ritratto", - "landscape": "Paesaggio", - "pagesPerSheet": "Pagine per foglio", - "createBooklet": "Crea opuscolo", - "processing": "Elaborazione...", - "pageCount": "Il conteggio delle pagine verrร  arrotondato ad un multiplo di 4 se necessario." - }, - "xpsToPdf": { - "name": "XPS in PDF", - "subtitle": "Converti documenti XPS/OXPS in formato PDF. Supporta piรน file.", - "acceptedFormats": "File XPS, OXPS", - "convertButton": "Converti in PDF" - }, - "mobiToPdf": { - "name": "MOBI in PDF", - "subtitle": "Converti e-book MOBI in formato PDF. Supporta piรน file.", - "acceptedFormats": "File MOBI", - "convertButton": "Converti in PDF" - }, - "epubToPdf": { - "name": "EPUB in PDF", - "subtitle": "Converti e-book EPUB in formato PDF. Supporta piรน file.", - "acceptedFormats": "File EPUB", - "convertButton": "Converti in PDF" - }, - "fb2ToPdf": { - "name": "FB2 in PDF", - "subtitle": "Converti e-book FictionBook (FB2) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File FB2", - "convertButton": "Converti in PDF" - }, - "cbzToPdf": { - "name": "CBZ in PDF", - "subtitle": "Converti archivi di fumetti (CBZ/CBR) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File CBZ, CBR", - "convertButton": "Converti in PDF" - }, - "wpdToPdf": { - "name": "WPD in PDF", - "subtitle": "Converti documenti WordPerfect (WPD) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File WPD", - "convertButton": "Converti in PDF" - }, - "wpsToPdf": { - "name": "WPS in PDF", - "subtitle": "Converti documenti WPS Office in formato PDF. Supporta piรน file.", - "acceptedFormats": "File WPS", - "convertButton": "Converti in PDF" - }, - "xmlToPdf": { - "name": "XML in PDF", - "subtitle": "Converti documenti XML in formato PDF. Supporta piรน file.", - "acceptedFormats": "File XML", - "convertButton": "Converti in PDF" - }, - "pagesToPdf": { - "name": "Pages in PDF", - "subtitle": "Converti documenti Apple Pages in formato PDF. Supporta piรน file.", - "acceptedFormats": "File Pages", - "convertButton": "Converti in PDF" - }, - "odgToPdf": { - "name": "ODG in PDF", - "subtitle": "Converti OpenDocument Graphics (ODG) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File ODG", - "convertButton": "Converti in PDF" - }, - "odsToPdf": { - "name": "ODS in PDF", - "subtitle": "Converti fogli OpenDocument (ODS) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File ODS", - "convertButton": "Converti in PDF" - }, - "odpToPdf": { - "name": "ODP in PDF", - "subtitle": "Converti presentazioni OpenDocument (ODP) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File ODP", - "convertButton": "Converti in PDF" - }, - "pubToPdf": { - "name": "PUB in PDF", - "subtitle": "Converti file Microsoft Publisher (PUB) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File PUB", - "convertButton": "Converti in PDF" - }, - "vsdToPdf": { - "name": "VSD in PDF", - "subtitle": "Converti file Microsoft Visio (VSD, VSDX) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File VSD, VSDX", - "convertButton": "Converti in PDF" - }, - "psdToPdf": { - "name": "PSD in PDF", - "subtitle": "Converti file Adobe Photoshop (PSD) in formato PDF. Supporta piรน file.", - "acceptedFormats": "File PSD", - "convertButton": "Converti in PDF" - }, - "pdfToSvg": { - "name": "PDF in SVG", - "subtitle": "Converti ogni pagina di un file PDF in un'immagine vettoriale scalabile (SVG) per qualitร  perfetta a qualsiasi dimensione." - }, - "extractTables": { - "name": "Estrai tabelle PDF", - "subtitle": "Estrai le tabelle dai file PDF ed esportale come CSV, JSON o Markdown." - }, - "pdfToCsv": { - "name": "PDF in CSV", - "subtitle": "Estrai tabelle dai PDF e convertili in formato CSV." - }, - "pdfToExcel": { - "name": "PDF in Excel", - "subtitle": "Estrai tabelle dai PDF e convertili in Excel (XLSX)." - }, - "pdfToText": { - "name": "PDF in Testo", - "subtitle": "Estrai il testo dai file PDF e salvalo come testo semplice (.txt). Supporta piรน file.", - "note": "Questo strumento funziona SOLO con PDF creati digitalmente. Per documenti scansionati o basati su immagini, usa invece il nostro strumento OCR PDF.", - "convertButton": "Estrai testo" - } -} \ No newline at end of file + "categories": { + "popularTools": "Strumenti popolari", + "editAnnotate": "Modifica e Annota", + "convertToPdf": "Converti in PDF", + "convertFromPdf": "Converti da PDF", + "organizeManage": "Organizza e Gestisci", + "optimizeRepair": "Ottimizza e Ripara", + "securePdf": "Proteggi PDF" + }, + "pdfMultiTool": { + "name": "Strumento PDF multifunzione", + "subtitle": "Unisci, dividi, organizza, elimina, ruota, aggiungi pagine vuote, estrai e duplica in un'interfaccia unificata." + }, + "mergePdf": { + "name": "Unisci PDF", + "subtitle": "Unisci piรน PDF in un unico file. Conserva i segnalibri." + }, + "splitPdf": { + "name": "Dividi PDF", + "subtitle": "Estrai un insieme di pagine in un nuovo PDF." + }, + "compressPdf": { + "name": "Comprimi PDF", + "subtitle": "Riduci le dimensioni del tuo PDF.", + "algorithmLabel": "Algoritmo di compressione", + "condense": "Condensa (Consigliato)", + "photon": "Photon (Per PDF con molte foto)", + "condenseInfo": "Condensa usa la compressione avanzata: rimuove peso inutile, ottimizza le immagini, riduce i font. Migliore per la maggior parte dei PDF.", + "photonInfo": "Photon converte le pagine in immagini. Usalo per PDF con molte foto o scannerizzati.", + "photonWarning": "Attenzione: il testo non sarร  selezionabile e i link smetteranno di funzionare.", + "levelLabel": "Livello di compressione", + "light": "Leggero (Preserva qualitร )", + "balanced": "Bilanciato (Consigliato)", + "aggressive": "Aggressivo (File piรน piccoli)", + "extreme": "Estremo (Compressione massima)", + "grayscale": "Converti in scala di grigi", + "grayscaleHint": "Riduce le dimensioni rimuovendo le informazioni di colore", + "customSettings": "Impostazioni personalizzate", + "customSettingsHint": "Affina i parametri di compressione:", + "outputQuality": "Qualitร  di output", + "resizeImagesTo": "Ridimensiona le immagini a", + "onlyProcessAbove": "Elabora solo sopra", + "removeMetadata": "Rimuovi metadati", + "subsetFonts": "Riduci i font (rimuovi glifi non usati)", + "removeThumbnails": "Rimuovi miniature incorporate", + "compressButton": "Comprimi PDF" + }, + "pdfEditor": { + "name": "Editor PDF", + "subtitle": "Annota, evidenzia, redigi, commenta, aggiungi forme/immagini, cerca e visualizza PDF." + }, + "jpgToPdf": { + "name": "JPG in PDF", + "subtitle": "Crea un PDF da immagini JPG, JPEG e JPEG2000 (JP2/JPX)." + }, + "signPdf": { + "name": "Firma PDF", + "subtitle": "Disegna, digita o carica la tua firma." + }, + "cropPdf": { + "name": "Ritaglia PDF", + "subtitle": "Rimuovi i margini di ogni pagina del tuo PDF." + }, + "extractPages": { + "name": "Estrai Pagine", + "subtitle": "Salva una selezione di pagine come nuovi file." + }, + "duplicateOrganize": { + "name": "Duplica e Organizza", + "subtitle": "Duplica, riordina ed elimina pagine." + }, + "deletePages": { + "name": "Elimina Pagine", + "subtitle": "Rimuovi pagine specifiche dal tuo documento." + }, + "editBookmarks": { + "name": "Modifica Segnalibri", + "subtitle": "Aggiungi, modifica, importa, elimina ed estrai segnalibri PDF." + }, + "tableOfContents": { + "name": "Indice", + "subtitle": "Genera una pagina di indice dai segnalibri del PDF." + }, + "pageNumbers": { + "name": "Numeri di Pagina", + "subtitle": "Inserisci i numeri di pagina nel tuo documento." + }, + "addWatermark": { + "name": "Aggiungi Filigrana", + "subtitle": "Applica testo o un'immagine sulle pagine del tuo PDF." + }, + "headerFooter": { + "name": "Intestazione e Piรจ di Pagina", + "subtitle": "Aggiungi testo nella parte superiore e inferiore delle pagine." + }, + "invertColors": { + "name": "Inverti Colori", + "subtitle": "Crea una versione \"modalitร  scura\" del tuo PDF." + }, + "backgroundColor": { + "name": "Colore di Sfondo", + "subtitle": "Cambia il colore di sfondo del tuo PDF." + }, + "changeTextColor": { + "name": "Cambia Colore Testo", + "subtitle": "Cambia il colore del testo nel tuo PDF." + }, + "addStamps": { + "name": "Aggiungi Timbri", + "subtitle": "Aggiungi timbri immagine al tuo PDF usando la barra degli strumenti di annotazione.", + "usernameLabel": "Nome sul timbro", + "usernamePlaceholder": "Inserisci il tuo nome (per i timbri)", + "usernameHint": "Questo nome apparirร  sui timbri che crei." + }, + "removeAnnotations": { + "name": "Rimuovi Annotazioni", + "subtitle": "Rimuovi commenti, evidenziazioni e link." + }, + "pdfFormFiller": { + "name": "Compilatore Moduli PDF", + "subtitle": "Compila i moduli direttamente nel browser. Supporta anche i moduli XFA." + }, + "createPdfForm": { + "name": "Crea Modulo PDF", + "subtitle": "Crea moduli PDF compilabili con campi di testo drag-and-drop." + }, + "removeBlankPages": { + "name": "Rimuovi Pagine Vuote", + "subtitle": "Rileva e elimina automaticamente le pagine vuote." + }, + "imageToPdf": { + "name": "Immagini in PDF", + "subtitle": "Converti JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP in PDF." + }, + "pngToPdf": { + "name": "PNG in PDF", + "subtitle": "Crea un PDF da una o piรน immagini PNG." + }, + "webpToPdf": { + "name": "WebP in PDF", + "subtitle": "Crea un PDF da una o piรน immagini WebP." + }, + "svgToPdf": { + "name": "SVG in PDF", + "subtitle": "Crea un PDF da una o piรน immagini SVG." + }, + "bmpToPdf": { + "name": "BMP in PDF", + "subtitle": "Crea un PDF da una o piรน immagini BMP." + }, + "heicToPdf": { + "name": "HEIC in PDF", + "subtitle": "Crea un PDF da una o piรน immagini HEIC." + }, + "tiffToPdf": { + "name": "TIFF in PDF", + "subtitle": "Crea un PDF da una o piรน immagini TIFF." + }, + "textToPdf": { + "name": "Testo in PDF", + "subtitle": "Converti un file di testo semplice in un PDF." + }, + "jsonToPdf": { + "name": "JSON in PDF", + "subtitle": "Converti file JSON in formato PDF." + }, + "pdfToJpg": { + "name": "PDF in JPG", + "subtitle": "Converti ogni pagina del PDF in un'immagine JPG." + }, + "pdfToPng": { + "name": "PDF in PNG", + "subtitle": "Converti ogni pagina del PDF in un'immagine PNG." + }, + "pdfToWebp": { + "name": "PDF in WebP", + "subtitle": "Converti ogni pagina del PDF in un'immagine WebP." + }, + "pdfToBmp": { + "name": "PDF in BMP", + "subtitle": "Converti ogni pagina del PDF in un'immagine BMP." + }, + "pdfToTiff": { + "name": "PDF in TIFF", + "subtitle": "Converti ogni pagina del PDF in un'immagine TIFF." + }, + "pdfToGreyscale": { + "name": "PDF in Scala di Grigi", + "subtitle": "Converti tutti i colori in scala di grigi." + }, + "pdfToJson": { + "name": "PDF in JSON", + "subtitle": "Converti file PDF in formato JSON." + }, + "ocrPdf": { + "name": "OCR PDF", + "subtitle": "Rendi un PDF ricercabile e copiabile." + }, + "alternateMix": { + "name": "Alterna e Riordina Pagine", + "subtitle": "Unisci i PDF alternando le pagine di ogni file. Conserva i segnalibri." + }, + "addAttachments": { + "name": "Aggiungi Allegati", + "subtitle": "Incorpora uno o piรน file nel tuo PDF." + }, + "extractAttachments": { + "name": "Estrai Allegati", + "subtitle": "Estrai tutti i file incorporati dai PDF come archivio ZIP." + }, + "editAttachments": { + "name": "Modifica Allegati", + "subtitle": "Visualizza o rimuovi gli allegati nel tuo PDF." + }, + "dividePages": { + "name": "Dividi Pagine", + "subtitle": "Dividi le pagine orizzontalmente o verticalmente." + }, + "addBlankPage": { + "name": "Aggiungi Pagina Vuota", + "subtitle": "Inserisci una pagina vuota in qualsiasi punto del tuo PDF." + }, + "reversePages": { + "name": "Inverti Pagine", + "subtitle": "Inverti l'ordine di tutte le pagine del documento." + }, + "rotatePdf": { + "name": "Ruota PDF", + "subtitle": "Ruota le pagine per multipli di 90 gradi." + }, + "rotateCustom": { + "name": "Ruota di Gradi Personalizzati", + "subtitle": "Ruota le pagine di un angolo personalizzato." + }, + "nUpPdf": { + "name": "N-Up PDF", + "subtitle": "Disponi piรน pagine su un unico foglio." + }, + "combineToSinglePage": { + "name": "Combina in Una Pagina", + "subtitle": "Unisci tutte le pagine in un'unica pagina continua." + }, + "viewMetadata": { + "name": "Visualizza Metadati", + "subtitle": "Ispeziona le proprietร  nascoste del tuo PDF." + }, + "editMetadata": { + "name": "Modifica Metadati", + "subtitle": "Modifica autore, titolo e altre proprietร ." + }, + "pdfsToZip": { + "name": "PDF in ZIP", + "subtitle": "Raggruppa piรน file PDF in un archivio ZIP." + }, + "comparePdfs": { + "name": "Confronta PDF", + "subtitle": "Confronta due PDF fianco a fianco." + }, + "posterizePdf": { + "name": "Posterizza PDF", + "subtitle": "Dividi una pagina grande in piรน pagine piรน piccole." + }, + "fixPageSize": { + "name": "Correggi Dimensione Pagina", + "subtitle": "Uniforma tutte le pagine a una dimensione standard." + }, + "linearizePdf": { + "name": "Linearizza PDF", + "subtitle": "Ottimizza il PDF per una visualizzazione web piรน veloce." + }, + "pageDimensions": { + "name": "Dimensioni Pagina", + "subtitle": "Analizza dimensione, orientamento e unitร  delle pagine." + }, + "removeRestrictions": { + "name": "Rimuovi Restrizioni", + "subtitle": "Rimuovi la protezione tramite password e le restrizioni di sicurezza associate ai PDF firmati digitalmente." + }, + "repairPdf": { + "name": "Ripara PDF", + "subtitle": "Recupera i dati da file PDF corrotti o danneggiati." + }, + "encryptPdf": { + "name": "Cripta PDF", + "subtitle": "Proteggi il tuo PDF aggiungendo una password." + }, + "sanitizePdf": { + "name": "Sanitizza PDF", + "subtitle": "Rimuovi metadati, annotazioni, script e altro." + }, + "decryptPdf": { + "name": "Decrittografa PDF", + "subtitle": "Sblocca il PDF rimuovendo la protezione tramite password." + }, + "flattenPdf": { + "name": "Appiattisci PDF", + "subtitle": "Rendi i campi dei moduli e le annotazioni non modificabili." + }, + "removeMetadata": { + "name": "Rimuovi metadati", + "subtitle": "Rimuovi i dati nascosti dal tuo PDF." + }, + "changePermissions": { + "name": "Modifica permessi", + "subtitle": "Imposta o modifica i permessi utente su un PDF." + }, + "odtToPdf": { + "name": "ODT in PDF", + "subtitle": "Converti file OpenDocument Text in formato PDF. Supporta piรน file.", + "acceptedFormats": "File ODT", + "convertButton": "Converti in PDF" + }, + "csvToPdf": { + "name": "CSV in PDF", + "subtitle": "Converti file di foglio di calcolo CSV in formato PDF. Supporta piรน file.", + "acceptedFormats": "File CSV", + "convertButton": "Converti in PDF" + }, + "rtfToPdf": { + "name": "RTF in PDF", + "subtitle": "Converti documenti Rich Text Format in PDF. Supporta piรน file.", + "acceptedFormats": "File RTF", + "convertButton": "Converti in PDF" + }, + "wordToPdf": { + "name": "Word in PDF", + "subtitle": "Converti documenti Word (DOCX, DOC, ODT, RTF) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File DOCX, DOC, ODT, RTF", + "convertButton": "Converti in PDF" + }, + "excelToPdf": { + "name": "Excel in PDF", + "subtitle": "Converti fogli Excel (XLSX, XLS, ODS, CSV) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File XLSX, XLS, ODS, CSV", + "convertButton": "Converti in PDF" + }, + "powerpointToPdf": { + "name": "PowerPoint in PDF", + "subtitle": "Converti presentazioni PowerPoint (PPTX, PPT, ODP) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File PPTX, PPT, ODP", + "convertButton": "Converti in PDF" + }, + "markdownToPdf": { + "name": "Markdown in PDF", + "subtitle": "Scrivi o incolla Markdown ed esportalo come un PDF ben formattato.", + "paneMarkdown": "Markdown", + "panePreview": "Anteprima", + "btnUpload": "Carica", + "btnSyncScroll": "Sincronizza scorrimento", + "btnSettings": "Impostazioni", + "btnExportPdf": "Esporta PDF", + "settingsTitle": "Impostazioni Markdown", + "settingsPreset": "Preset", + "presetDefault": "Predefinito (simile a GFM)", + "presetCommonmark": "CommonMark (rigoroso)", + "presetZero": "Minimale (nessuna funzionalitร )", + "settingsOptions": "Opzioni Markdown", + "optAllowHtml": "Consenti tag HTML", + "optBreaks": "Converti nuove righe in
", + "optLinkify": "Converti automaticamente gli URL in link", + "optTypographer": "Tipografia (virgolette intelligenti, ecc.)" + }, + "pdfBooklet": { + "name": "Opuscolo PDF", + "subtitle": "Riorganizza le pagine per la stampa di opuscoli fronte-retro. Piega e pinza per creare un opuscolo.", + "howItWorks": "Come funziona:", + "step1": "Carica un file PDF.", + "step2": "Le pagine saranno riorganizzate in ordine per opuscolo.", + "step3": "Stampa fronte-retro, capovolgi sul lato corto, piega e pinza.", + "paperSize": "Formato carta", + "orientation": "Orientamento", + "portrait": "Ritratto", + "landscape": "Paesaggio", + "pagesPerSheet": "Pagine per foglio", + "createBooklet": "Crea opuscolo", + "processing": "Elaborazione...", + "pageCount": "Il conteggio delle pagine verrร  arrotondato ad un multiplo di 4 se necessario." + }, + "xpsToPdf": { + "name": "XPS in PDF", + "subtitle": "Converti documenti XPS/OXPS in formato PDF. Supporta piรน file.", + "acceptedFormats": "File XPS, OXPS", + "convertButton": "Converti in PDF" + }, + "mobiToPdf": { + "name": "MOBI in PDF", + "subtitle": "Converti e-book MOBI in formato PDF. Supporta piรน file.", + "acceptedFormats": "File MOBI", + "convertButton": "Converti in PDF" + }, + "epubToPdf": { + "name": "EPUB in PDF", + "subtitle": "Converti e-book EPUB in formato PDF. Supporta piรน file.", + "acceptedFormats": "File EPUB", + "convertButton": "Converti in PDF" + }, + "fb2ToPdf": { + "name": "FB2 in PDF", + "subtitle": "Converti e-book FictionBook (FB2) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File FB2", + "convertButton": "Converti in PDF" + }, + "cbzToPdf": { + "name": "CBZ in PDF", + "subtitle": "Converti archivi di fumetti (CBZ/CBR) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File CBZ, CBR", + "convertButton": "Converti in PDF" + }, + "wpdToPdf": { + "name": "WPD in PDF", + "subtitle": "Converti documenti WordPerfect (WPD) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File WPD", + "convertButton": "Converti in PDF" + }, + "wpsToPdf": { + "name": "WPS in PDF", + "subtitle": "Converti documenti WPS Office in formato PDF. Supporta piรน file.", + "acceptedFormats": "File WPS", + "convertButton": "Converti in PDF" + }, + "xmlToPdf": { + "name": "XML in PDF", + "subtitle": "Converti documenti XML in formato PDF. Supporta piรน file.", + "acceptedFormats": "File XML", + "convertButton": "Converti in PDF" + }, + "pagesToPdf": { + "name": "Pages in PDF", + "subtitle": "Converti documenti Apple Pages in formato PDF. Supporta piรน file.", + "acceptedFormats": "File Pages", + "convertButton": "Converti in PDF" + }, + "odgToPdf": { + "name": "ODG in PDF", + "subtitle": "Converti OpenDocument Graphics (ODG) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File ODG", + "convertButton": "Converti in PDF" + }, + "odsToPdf": { + "name": "ODS in PDF", + "subtitle": "Converti fogli OpenDocument (ODS) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File ODS", + "convertButton": "Converti in PDF" + }, + "odpToPdf": { + "name": "ODP in PDF", + "subtitle": "Converti presentazioni OpenDocument (ODP) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File ODP", + "convertButton": "Converti in PDF" + }, + "pubToPdf": { + "name": "PUB in PDF", + "subtitle": "Converti file Microsoft Publisher (PUB) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File PUB", + "convertButton": "Converti in PDF" + }, + "vsdToPdf": { + "name": "VSD in PDF", + "subtitle": "Converti file Microsoft Visio (VSD, VSDX) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File VSD, VSDX", + "convertButton": "Converti in PDF" + }, + "psdToPdf": { + "name": "PSD in PDF", + "subtitle": "Converti file Adobe Photoshop (PSD) in formato PDF. Supporta piรน file.", + "acceptedFormats": "File PSD", + "convertButton": "Converti in PDF" + }, + "pdfToSvg": { + "name": "PDF in SVG", + "subtitle": "Converti ogni pagina di un file PDF in un'immagine vettoriale scalabile (SVG) per qualitร  perfetta a qualsiasi dimensione." + }, + "extractTables": { + "name": "Estrai tabelle PDF", + "subtitle": "Estrai le tabelle dai file PDF ed esportale come CSV, JSON o Markdown." + }, + "pdfToCsv": { + "name": "PDF in CSV", + "subtitle": "Estrai tabelle dai PDF e convertili in formato CSV." + }, + "pdfToExcel": { + "name": "PDF in Excel", + "subtitle": "Estrai tabelle dai PDF e convertili in Excel (XLSX)." + }, + "pdfToText": { + "name": "PDF in Testo", + "subtitle": "Estrai il testo dai file PDF e salvalo come testo semplice (.txt). Supporta piรน file.", + "note": "Questo strumento funziona SOLO con PDF creati digitalmente. Per documenti scansionati o basati su immagini, usa invece il nostro strumento OCR PDF.", + "convertButton": "Estrai testo" + }, + "digitalSignPdf": { + "name": "Firma digitale PDF", + "pageTitle": "Firma digitale PDF - Aggiungi firma crittografica | BentoPDF", + "subtitle": "Aggiungi una firma digitale crittografica al tuo PDF usando certificati X.509. Supporta i formati PKCS#12 (.pfx, .p12) e PEM. La tua chiave privata non lascia mai il browser.", + "certificateSection": "Certificato", + "uploadCert": "Carica certificato (.pfx, .p12)", + "certPassword": "Password del certificato", + "certPasswordPlaceholder": "Inserisci la password del certificato", + "certInfo": "Informazioni sul certificato", + "certSubject": "Soggetto", + "certIssuer": "Emittente", + "certValidity": "Valido", + "signatureDetails": "Dettagli della firma (opzionale)", + "reason": "Motivo", + "reasonPlaceholder": "es. Approvo questo documento", + "location": "Luogo", + "locationPlaceholder": "es. Roma, Italia", + "contactInfo": "Contatto", + "contactPlaceholder": "es. email@example.com", + "applySignature": "Applica firma digitale", + "successMessage": "PDF firmato con successo! La firma puรฒ essere verificata in qualsiasi lettore PDF." + }, + "validateSignaturePdf": { + "name": "Verifica firma PDF", + "pageTitle": "Verifica firma PDF - Controlla firme digitali | BentoPDF", + "subtitle": "Verifica le firme digitali nei tuoi PDF. Controlla la validitร  del certificato, visualizza i dati del firmatario e conferma l'integritร  del documento. Tutto avviene nel tuo browser." + }, + "emailToPdf": { + "name": "Email in PDF", + "subtitle": "Converti file email (EML, MSG) in formato PDF. Supporta esportazioni Outlook e formati email standard.", + "acceptedFormats": "File EML, MSG", + "convertButton": "Converti in PDF" + }, + "fontToOutline": { + "name": "Font in Contorni", + "subtitle": "Converti tutti i font in contorni vettoriali per una visualizzazione coerente su tutti i dispositivi." + }, + "deskewPdf": { + "name": "Raddrizza PDF", + "subtitle": "Raddrizza automaticamente le pagine scansionate inclinate usando OpenCV." + } +} diff --git a/public/locales/pt/common.json b/public/locales/pt/common.json new file mode 100644 index 000000000..e44608830 --- /dev/null +++ b/public/locales/pt/common.json @@ -0,0 +1,323 @@ +{ + "nav": { + "home": "Inรญcio", + "about": "Sobre", + "contact": "Contato", + "licensing": "Licenciamento", + "allTools": "Todas as Ferramentas", + "openMainMenu": "Abrir menu principal", + "language": "Idioma" + }, + "donation": { + "message": "Adora o BentoPDF? Ajude-nos a mantรช-lo gratuito e de cรณdigo aberto!", + "button": "Doar" + }, + "hero": { + "title": "O", + "pdfToolkit": "Kit de Ferramentas PDF", + "builtForPrivacy": "feito para sua privacidade", + "noSignups": "Sem Cadastros", + "unlimitedUse": "Uso Ilimitado", + "worksOffline": "Funciona Offline", + "startUsing": "Comece a Usar Agora" + }, + "usedBy": { + "title": "Usado por empresas e pessoas que trabalham em" + }, + "features": { + "title": "Por que escolher o", + "bentoPdf": "BentoPDF?", + "noSignup": { + "title": "Sem Cadastro", + "description": "Comece instantaneamente, sem contas ou e-mails." + }, + "noUploads": { + "title": "Sem Uploads", + "description": "100% no navegador, seus arquivos nunca saem do seu dispositivo." + }, + "foreverFree": { + "title": "Sempre Grรกtis", + "description": "Todas as ferramentas, sem testes ou assinaturas." + }, + "noLimits": { + "title": "Sem Limites", + "description": "Use o quanto quiser, sem taxas escondidas." + }, + "batchProcessing": { + "title": "Processamento em Lote", + "description": "Gerencie vรกrios PDFs de uma sรณ vez." + }, + "lightningFast": { + "title": "Super Rรกpido", + "description": "Processe PDFs instantaneamente, sem esperas ou atrasos." + } + }, + "tools": { + "title": "Comece com as", + "toolsLabel": "Ferramentas", + "subtitle": "Clique em uma ferramenta para abrir o seletor de arquivos", + "searchPlaceholder": "Buscar ferramenta (ex: 'dividir', 'organizar'...)", + "backToTools": "Voltar para Ferramentas", + "firstLoadNotice": "O primeiro carregamento demora um momento enquanto baixamos nosso mecanismo de conversรฃo. Depois disso, todos os carregamentos serรฃo instantรขneos." + }, + "upload": { + "clickToSelect": "Clique para selecionar um arquivo", + "orDragAndDrop": "ou arraste e solte", + "pdfOrImages": "PDFs ou Imagens", + "filesNeverLeave": "Seus arquivos nunca saem do seu dispositivo.", + "addMore": "Adicionar Mais Arquivos", + "clearAll": "Limpar Tudo" + }, + "loader": { + "processing": "Processando..." + }, + "alert": { + "title": "Alerta", + "ok": "OK" + }, + "preview": { + "title": "Visualizaรงรฃo do Documento", + "downloadAsPdf": "Baixar como PDF", + "close": "Fechar" + }, + "settings": { + "title": "Configuraรงรตes", + "shortcuts": "Atalhos", + "preferences": "Preferรชncias", + "displayPreferences": "Preferรชncias de Exibiรงรฃo", + "searchShortcuts": "Buscar atalhos...", + "shortcutsInfo": "Mantenha as teclas pressionadas para definir um atalho. As alteraรงรตes sรฃo salvas automaticamente.", + "shortcutsWarning": "โš ๏ธ Evite atalhos comuns do navegador (Cmd/Ctrl+W, T, N etc.), pois podem nรฃo funcionar corretamente.", + "import": "Importar", + "export": "Exportar", + "resetToDefaults": "Restaurar Padrรตes", + "fullWidthMode": "Modo Largura Total", + "fullWidthDescription": "Usa toda a largura da tela para as ferramentas em vez de um container centralizado", + "settingsAutoSaved": "As configuraรงรตes sรฃo salvas automaticamente", + "clickToSet": "Clique para definir", + "pressKeys": "Pressione as teclas...", + "warnings": { + "alreadyInUse": "Atalho Jรก em Uso", + "assignedTo": "jรก estรก atribuรญdo a:", + "chooseDifferent": "Por favor, escolha um atalho diferente.", + "reserved": "Aviso de Atalho Reservado", + "commonlyUsed": "รฉ comumente usado para:", + "unreliable": "Este atalho pode nรฃo funcionar bem ou conflitar com o navegador/sistema.", + "useAnyway": "Deseja usar mesmo assim?", + "resetTitle": "Redefinir Atalhos", + "resetMessage": "Tem certeza que deseja redefinir todos os atalhos?

Esta aรงรฃo nรฃo pode ser desfeita.", + "importSuccessTitle": "Importaรงรฃo Concluรญda", + "importSuccessMessage": "Atalhos importados com sucesso!", + "importFailTitle": "Falha na Importaรงรฃo", + "importFailMessage": "Falha ao importar atalhos. Formato de arquivo invรกlido." + } + }, + "warning": { + "title": "Aviso", + "cancel": "Cancelar", + "proceed": "Prosseguir" + }, + "compliance": { + "title": "Seus dados nunca saem do seu dispositivo", + "weKeep": "Mantemos", + "yourInfoSafe": "suas informaรงรตes seguras", + "byFollowingStandards": "seguindo padrรตes globais de seguranรงa.", + "processingLocal": "Todo o processamento acontece localmente no seu dispositivo.", + "gdpr": { + "title": "Conformidade GDPR", + "description": "Protege os dados pessoais e a privacidade de indivรญduos na Uniรฃo Europeia." + }, + "ccpa": { + "title": "Conformidade CCPA", + "description": "Dรก aos residentes da Califรณrnia direitos sobre como suas informaรงรตes pessoais sรฃo coletadas e usadas." + }, + "hipaa": { + "title": "Conformidade HIPAA", + "description": "Estabelece salvaguardas para o tratamento de informaรงรตes de saรบde sensรญveis nos Estados Unidos." + } + }, + "faq": { + "title": "Perguntas", + "questions": "Frequentes", + "isFree": { + "question": "O BentoPDF รฉ realmente grรกtis?", + "answer": "Sim, com certeza. Todas as ferramentas do BentoPDF sรฃo 100% gratuitas, sem limites de arquivos, sem cadastros e sem marcas d'รกgua. Acreditamos que todos merecem acesso a ferramentas PDF poderosas sem barreiras financeiras." + }, + "areFilesSecure": { + "question": "Meus arquivos estรฃo seguros? Onde sรฃo processados?", + "answer": "Seus arquivos estรฃo o mais seguros possรญvel porque nunca saem do seu computador. Todo o processamento ocorre diretamente no seu navegador (client-side). Nunca fazemos upload para um servidor, garantindo privacidade total." + }, + "platforms": { + "question": "Funciona no Mac, Windows e Celular?", + "answer": "Sim! Como o BentoPDF roda inteiramente no navegador, funciona em qualquer sistema operacional moderno, incluindo Windows, macOS, Linux, iOS e Android." + }, + "gdprCompliant": { + "question": "O BentoPDF estรก em conformidade com a GDPR?", + "answer": "Sim. Como o processamento รฉ local e nรฃo coletamos seus arquivos, nรฃo temos acesso aos seus dados. Isso garante total conformidade e controle por parte do usuรกrio." + }, + "dataStorage": { + "question": "Vocรชs armazenam ou rastreiam meus arquivos?", + "answer": "Nรฃo. Nunca armazenamos, rastreamos ou registramos seus arquivos. Tudo acontece na memรณria do navegador e desaparece ao fechar a pรกgina. Nรฃo hรก logs nem servidores envolvidos." + }, + "different": { + "question": "O que torna o BentoPDF diferente de outras ferramentas?", + "answer": "A maioria das ferramentas faz upload dos arquivos para um servidor. O BentoPDF usa tecnologia web moderna para processar tudo localmente no seu navegador, garantindo mais velocidade e privacidade." + }, + "browserBased": { + "question": "Como o processamento no navegador me mantรฉm seguro?", + "answer": "Ao rodar no seu dispositivo, eliminamos riscos de ataques a servidores ou vazamentos de dados de terceiros. Seus arquivos permanecem seus โ€” sempre." + }, + "analytics": { + "question": "Vocรชs usam cookies ou rastreamento?", + "answer": "Usamos apenas o Simple Analytics para contar visitas de forma anรดnima. Sabemos quantos usuรกrios nos visitam, mas nunca quem vocรช รฉ. O sistema respeita totalmente a GDPR." + } + }, + "testimonials": { + "title": "O que nossos", + "users": "Usuรกrios", + "say": "Dizem" + }, + "support": { + "title": "Gostou do Trabalho?", + "description": "O BentoPDF รฉ um projeto pessoal feito para fornecer ferramentas poderosas e privadas para todos. Se for รบtil para vocรช, considere apoiar o desenvolvimento!", + "buyMeCoffee": "Pague um Cafรฉ" + }, + "footer": { + "copyright": "ยฉ 2026 BentoPDF. Todos os direitos reservados.", + "version": "Versรฃo", + "company": "Empresa", + "aboutUs": "Sobre Nรณs", + "faqLink": "FAQ", + "contactUs": "Contato", + "legal": "Jurรญdico", + "termsAndConditions": "Termos e Condiรงรตes", + "privacyPolicy": "Polรญtica de Privacidade", + "followUs": "Siga-nos" + }, + "merge": { + "title": "Mesclar PDFs", + "description": "Combine arquivos inteiros ou selecione pรกginas especรญficas para criar um novo documento.", + "fileMode": "Modo Arquivo", + "pageMode": "Modo Pรกgina", + "howItWorks": "Como funciona:", + "fileModeInstructions": [ + "Clique e arraste o รญcone para alterar a ordem dos arquivos.", + "No campo \"Pรกginas\", vocรช pode definir intervalos (ex: \"1-3, 5\") para mesclar apenas essas pรกginas.", + "Deixe o campo em branco para incluir todas as pรกginas do arquivo." + ], + "pageModeInstructions": [ + "Todas as pรกginas dos PDFs enviados aparecem abaixo.", + "Arraste as miniaturas para criar a ordem exata que deseja no novo arquivo." + ], + "mergePdfs": "Mesclar PDFs" + }, + "common": { + "page": "Pรกgina", + "pages": "Pรกginas", + "of": "de", + "download": "Baixar", + "cancel": "Cancelar", + "save": "Salvar", + "delete": "Excluir", + "edit": "Editar", + "add": "Adicionar", + "remove": "Remover", + "loading": "Carregando...", + "error": "Erro", + "success": "Sucesso", + "file": "Arquivo", + "files": "Arquivos" + }, + "about": { + "hero": { + "title": "Acreditamos que ferramentas PDF devem ser", + "subtitle": "rรกpidas, privadas e gratuitas.", + "noCompromises": "Sem concessรตes." + }, + "mission": { + "title": "Nossa Missรฃo", + "description": "Fornecer o kit de ferramentas PDF mais completo, respeitando sua privacidade e sem cobrar por isso. Ferramentas essenciais devem ser acessรญveis a todos, sem barreiras." + }, + "philosophy": { + "label": "Nossa Filosofia", + "title": "Privacidade Primeiro. Sempre.", + "description": "Em uma era onde dados sรฃo mercadoria, seguimos outro caminho. Todo o processamento ocorre no seu navegador. Arquivos nรฃo tocam nossos servidores e nรฃo rastreamos vocรช. Privacidade nรฃo รฉ apenas um recurso; รฉ nossa base." + }, + "whyBentopdf": { + "title": "Por que o BentoPDF?", + "speed": { + "title": "Feito para Velocidade", + "description": "Sem esperas de upload. Usando tecnologias como WebAssembly, processamos tudo diretamente no navegador com velocidade inigualรกvel." + }, + "free": { + "title": "Totalmente Grรกtis", + "description": "Sem perรญodos de teste, assinaturas ou funรงรตes \"premium\" bloqueadas. Acreditamos em ferramentas como um serviรงo pรบblico." + }, + "noAccount": { + "title": "Sem Necessidade de Conta", + "description": "Use qualquer ferramenta imediatamente. Nรฃo pedimos e-mail, senha ou qualquer dado pessoal. Seu fluxo de trabalho deve ser anรดnimo." + }, + "openSource": { + "title": "Espรญrito Open Source", + "description": "Construรญdo com transparรชncia. Utilizamos bibliotecas incrรญveis como PDF-lib e PDF.js para democratizar o acesso a ferramentas poderosas." + } + }, + "cta": { + "title": "Pronto para comeรงar?", + "description": "Junte-se a milhares de usuรกrios que confiam no BentoPDF. Sinta a diferenรงa da privacidade e do desempenho.", + "button": "Explorar Ferramentas" + } + }, + "contact": { + "title": "Entre em Contato", + "subtitle": "Adorarรญamos ouvir vocรช. Se tiver dรบvidas, feedback ou sugestรตes de recursos, nรฃo hesite em nos contatar.", + "email": "Vocรช pode nos contatar diretamente por e-mail em:" + }, + "licensing": { + "title": "Licenciamento de", + "subtitle": "Escolha a licenรงa que melhor atende ร s suas necessidades." + }, + "multiTool": { + "uploadPdfs": "Enviar PDFs", + "upload": "Enviar", + "addBlankPage": "Adicionar Pรกgina em Branco", + "edit": "Editar:", + "undo": "Desfazer", + "redo": "Refazer", + "reset": "Redefinir", + "selection": "Seleรงรฃo:", + "selectAll": "Selecionar Tudo", + "deselectAll": "Desmarcar Tudo", + "rotate": "Girar:", + "rotateLeft": "Esquerda", + "rotateRight": "Direita", + "transform": "Transformar:", + "duplicate": "Duplicar", + "split": "Dividir", + "clear": "Limpar:", + "delete": "Excluir", + "download": "Baixar:", + "downloadSelected": "Baixar Selecionadas", + "exportPdf": "Exportar PDF", + "uploadPdfFiles": "Selecionar Arquivos PDF", + "dragAndDrop": "Arraste arquivos PDF aqui ou clique para selecionar", + "selectFiles": "Selecionar Arquivos", + "renderingPages": "Renderizando pรกginas...", + "actions": { + "duplicatePage": "Duplicar esta pรกgina", + "deletePage": "Excluir esta pรกgina", + "insertPdf": "Inserir PDF apรณs esta pรกgina", + "toggleSplit": "Alternar divisรฃo apรณs esta pรกgina" + }, + "pleaseWait": "Aguarde", + "pagesRendering": "As pรกginas ainda estรฃo sendo renderizadas. Por favor, aguarde...", + "noPagesSelected": "Nenhuma Pรกgina Selecionada", + "selectOnePage": "Selecione pelo menos uma pรกgina para baixar.", + "noPages": "Sem Pรกginas", + "noPagesToExport": "Nรฃo hรก pรกginas para exportar.", + "renderingTitle": "Renderizando visualizaรงรตes das pรกginas", + "errorRendering": "Falha ao renderizar miniaturas das pรกginas", + "error": "Erro", + "failedToLoad": "Falha ao carregar" + } +} diff --git a/public/locales/pt/tools.json b/public/locales/pt/tools.json new file mode 100644 index 000000000..eb4277008 --- /dev/null +++ b/public/locales/pt/tools.json @@ -0,0 +1,511 @@ +{ + "categories": { + "popularTools": "Ferramentas Populares", + "editAnnotate": "Editar e Anotar", + "convertToPdf": "Converter para PDF", + "convertFromPdf": "Converter de PDF", + "organizeManage": "Organizar e Gerenciar", + "optimizeRepair": "Otimizar e Reparar", + "securePdf": "Seguranรงa de PDF" + }, + "pdfMultiTool": { + "name": "Multiferramenta PDF", + "subtitle": "Mesclar, dividir, organizar, excluir, girar, adicionar pรกginas em branco, extrair e duplicar em uma รบnica interface." + }, + "mergePdf": { + "name": "Mesclar PDF", + "subtitle": "Combine vรกrios PDFs em um รบnico arquivo. Preserva os favoritos (bookmarks)." + }, + "splitPdf": { + "name": "Dividir PDF", + "subtitle": "Extraia um intervalo de pรกginas para um novo PDF." + }, + "compressPdf": { + "name": "Comprimir PDF", + "subtitle": "Reduza o tamanho do arquivo do seu PDF." + }, + "pdfEditor": { + "name": "Editor de PDF", + "subtitle": "Anotar, destacar, redigir, comentar, adicionar formas/imagens, pesquisar e visualizar PDFs." + }, + "jpgToPdf": { + "name": "JPG para PDF", + "subtitle": "Crie um PDF a partir de uma ou mais imagens JPG." + }, + "signPdf": { + "name": "Assinar PDF", + "subtitle": "Desenhe, digite ou faรงa upload da sua assinatura." + }, + "cropPdf": { + "name": "Cortar PDF", + "subtitle": "Corte as margens de cada pรกgina do seu PDF." + }, + "extractPages": { + "name": "Extrair Pรกginas", + "subtitle": "Salve uma seleรงรฃo de pรกginas como novos arquivos." + }, + "duplicateOrganize": { + "name": "Duplicar e Organizar", + "subtitle": "Duplique, reordene e exclua pรกginas." + }, + "deletePages": { + "name": "Excluir Pรกginas", + "subtitle": "Remova pรกginas especรญficas do seu documento." + }, + "editBookmarks": { + "name": "Editar Favoritos", + "subtitle": "Adicione, edite, importe, exclua e extraia favoritos de PDF." + }, + "tableOfContents": { + "name": "Sumรกrio", + "subtitle": "Gere uma pรกgina de sumรกrio a partir dos favoritos do PDF." + }, + "pageNumbers": { + "name": "Nรบmeros de Pรกgina", + "subtitle": "Insira nรบmeros de pรกgina no seu documento." + }, + "addWatermark": { + "name": "Adicionar Marca d'รgua", + "subtitle": "Carimbe texto ou uma imagem sobre as pรกginas do seu PDF." + }, + "headerFooter": { + "name": "Cabeรงalho e Rodapรฉ", + "subtitle": "Adicione texto no topo e no final das pรกginas." + }, + "invertColors": { + "name": "Inverter Cores", + "subtitle": "Crie uma versรฃo em \"modo escuro\" do seu PDF." + }, + "backgroundColor": { + "name": "Cor de Fundo", + "subtitle": "Altere a cor de fundo do seu PDF." + }, + "changeTextColor": { + "name": "Alterar Cor do Texto", + "subtitle": "Altere a cor do texto no seu PDF." + }, + "addStamps": { + "name": "Adicionar Carimbos", + "subtitle": "Adicione carimbos de imagem ao seu PDF usando a barra de ferramentas de anotaรงรฃo.", + "usernameLabel": "Nome do Usuรกrio no Carimbo", + "usernamePlaceholder": "Digite seu nome (para os carimbos)", + "usernameHint": "Este nome aparecerรก nos carimbos que vocรช criar." + }, + "removeAnnotations": { + "name": "Remover Anotaรงรตes", + "subtitle": "Remova comentรกrios, destaques e links." + }, + "pdfFormFiller": { + "name": "Preenchimento de Formulรกrio", + "subtitle": "Preencha formulรกrios diretamente no navegador. Tambรฉm suporta formulรกrios XFA." + }, + "createPdfForm": { + "name": "Criar Formulรกrio PDF", + "subtitle": "Crie formulรกrios PDF preenchรญveis com campos de texto de arrastar e soltar." + }, + "removeBlankPages": { + "name": "Remover Pรกginas em Branco", + "subtitle": "Detecte e exclua automaticamente pรกginas em branco." + }, + "imageToPdf": { + "name": "Imagem para PDF", + "subtitle": "Converta JPG, PNG, WebP, BMP, TIFF, SVG, HEIC para PDF." + }, + "pngToPdf": { + "name": "PNG para PDF", + "subtitle": "Crie um PDF a partir de uma ou mais imagens PNG." + }, + "webpToPdf": { + "name": "WebP para PDF", + "subtitle": "Crie um PDF a partir de uma ou mais imagens WebP." + }, + "svgToPdf": { + "name": "SVG para PDF", + "subtitle": "Crie um PDF a partir de uma ou mais imagens SVG." + }, + "bmpToPdf": { + "name": "BMP para PDF", + "subtitle": "Crie um PDF a partir de uma ou mais imagens BMP." + }, + "heicToPdf": { + "name": "HEIC para PDF", + "subtitle": "Crie um PDF a partir de uma ou mais imagens HEIC." + }, + "tiffToPdf": { + "name": "TIFF para PDF", + "subtitle": "Crie um PDF a partir de uma ou mais imagens TIFF." + }, + "textToPdf": { + "name": "Texto para PDF", + "subtitle": "Converta um arquivo de texto simples (.txt) em PDF." + }, + "jsonToPdf": { + "name": "JSON para PDF", + "subtitle": "Converta arquivos JSON para o formato PDF." + }, + "pdfToJpg": { + "name": "PDF para JPG", + "subtitle": "Converta cada pรกgina do PDF em uma imagem JPG." + }, + "pdfToPng": { + "name": "PDF para PNG", + "subtitle": "Converta cada pรกgina do PDF em uma imagem PNG." + }, + "pdfToWebp": { + "name": "PDF para WebP", + "subtitle": "Converta cada pรกgina do PDF em uma imagem WebP." + }, + "pdfToBmp": { + "name": "PDF para BMP", + "subtitle": "Converta cada pรกgina do PDF em uma imagem BMP." + }, + "pdfToTiff": { + "name": "PDF para TIFF", + "subtitle": "Converta cada pรกgina do PDF em uma imagem TIFF." + }, + "pdfToGreyscale": { + "name": "PDF para Tons de Cinza", + "subtitle": "Converta todas as cores para preto e branco." + }, + "pdfToJson": { + "name": "PDF para JSON", + "subtitle": "Converta arquivos PDF para o formato JSON." + }, + "ocrPdf": { + "name": "OCR PDF", + "subtitle": "Torne um PDF pesquisรกvel e copiรกvel (reconhecimento de texto)." + }, + "alternateMix": { + "name": "Alternar e Misturar Pรกginas", + "subtitle": "Mescle PDFs alternando as pรกginas de cada arquivo. Preserva os favoritos." + }, + "addAttachments": { + "name": "Adicionar Anexos", + "subtitle": "Incorpore um ou mais arquivos dentro do seu PDF." + }, + "extractAttachments": { + "name": "Extrair Anexos", + "subtitle": "Extraia todos os arquivos incorporados de PDF(s) como um ZIP." + }, + "editAttachments": { + "name": "Editar Anexos", + "subtitle": "Visualize ou remova anexos do seu PDF." + }, + "dividePages": { + "name": "Dividir Pรกginas", + "subtitle": "Divida as pรกginas horizontalmente ou verticalmente." + }, + "addBlankPage": { + "name": "Adicionar Pรกgina em Branco", + "subtitle": "Insira uma pรกgina vazia em qualquer lugar do seu PDF." + }, + "reversePages": { + "name": "Inverter Pรกginas", + "subtitle": "Inverta a ordem de todas as pรกginas do seu documento." + }, + "rotatePdf": { + "name": "Girar PDF", + "subtitle": "Gire as pรกginas em incrementos de 90 graus." + }, + "nUpPdf": { + "name": "PDF N-Up", + "subtitle": "Organize vรกrias pรกginas em uma รบnica folha de impressรฃo." + }, + "combineToSinglePage": { + "name": "Combinar em Pรกgina รšnica", + "subtitle": "Costure todas as pรกginas em um รบnico fluxo contรญnuo." + }, + "viewMetadata": { + "name": "Ver Metadados", + "subtitle": "Inspecione as propriedades ocultas do seu PDF." + }, + "editMetadata": { + "name": "Editar Metadados", + "subtitle": "Altere o autor, tรญtulo e outras propriedades." + }, + "pdfsToZip": { + "name": "PDFs para ZIP", + "subtitle": "Empacote vรกrios arquivos PDF em um arquivo compactado ZIP." + }, + "comparePdfs": { + "name": "Comparar PDFs", + "subtitle": "Compare dois PDFs lado a lado." + }, + "posterizePdf": { + "name": "Posterizar PDF", + "subtitle": "Divida uma pรกgina grande em vรกrias pรกginas menores." + }, + "fixPageSize": { + "name": "Ajustar Tamanho da Pรกgina", + "subtitle": "Padronize todas as pรกginas para um tamanho uniforme." + }, + "linearizePdf": { + "name": "Linearizar PDF", + "subtitle": "Otimize o PDF para visualizaรงรฃo rรกpida na web." + }, + "pageDimensions": { + "name": "Dimensรตes da Pรกgina", + "subtitle": "Analise o tamanho, orientaรงรฃo e unidades das pรกginas." + }, + "removeRestrictions": { + "name": "Remover Restriรงรตes", + "subtitle": "Remova proteรงรฃo por senha e restriรงรตes de seguranรงa de arquivos assinados digitalmente." + }, + "repairPdf": { + "name": "Reparar PDF", + "subtitle": "Recupere dados de arquivos PDF corrompidos ou danificados." + }, + "encryptPdf": { + "name": "Criptografar PDF", + "subtitle": "Bloqueie seu PDF adicionando uma senha." + }, + "sanitizePdf": { + "name": "Sanitizar PDF", + "subtitle": "Remova metadados, anotaรงรตes, scripts e outros dados ocultos." + }, + "decryptPdf": { + "name": "Descriptografar PDF", + "subtitle": "Desbloqueie o PDF removendo a proteรงรฃo por senha." + }, + "flattenPdf": { + "name": "Achatar PDF (Flatten)", + "subtitle": "Torne os campos de formulรกrio e anotaรงรตes nรฃo editรกveis." + }, + "removeMetadata": { + "name": "Remover Metadados", + "subtitle": "Limpe dados ocultos do seu PDF." + }, + "changePermissions": { + "name": "Alterar Permissรตes", + "subtitle": "Defina ou altere as permissรตes de usuรกrio em um PDF." + }, + "emailToPdf": { + "name": "Email para PDF", + "subtitle": "Converta arquivos de email (EML, MSG) para PDF. Suporta exportaรงรตes do Outlook e formatos de email padrรฃo.", + "acceptedFormats": "Arquivos EML, MSG", + "convertButton": "Converter para PDF" + }, + "fontToOutline": { + "name": "Fonte para Contorno", + "subtitle": "Converta todas as fontes em contornos vetoriais para renderizaรงรฃo consistente em todos os dispositivos." + }, + "deskewPdf": { + "name": "Desinclinar PDF", + "subtitle": "Endireite automaticamente pรกginas digitalizadas inclinadas usando OpenCV." + }, + "rotateCustom": { + "name": "Rotate by Custom Degrees", + "subtitle": "Rotate pages by any custom angle." + }, + "odtToPdf": { + "name": "ODT to PDF", + "subtitle": "Convert OpenDocument Text files to PDF format. Supports multiple files.", + "acceptedFormats": "ODT files", + "convertButton": "Convert to PDF" + }, + "csvToPdf": { + "name": "CSV to PDF", + "subtitle": "Convert CSV spreadsheet files to PDF format. Supports multiple files.", + "acceptedFormats": "CSV files", + "convertButton": "Convert to PDF" + }, + "rtfToPdf": { + "name": "RTF to PDF", + "subtitle": "Convert Rich Text Format documents to PDF. Supports multiple files.", + "acceptedFormats": "RTF files", + "convertButton": "Convert to PDF" + }, + "wordToPdf": { + "name": "Word to PDF", + "subtitle": "Convert Word documents (DOCX, DOC, ODT, RTF) to PDF format. Supports multiple files.", + "acceptedFormats": "DOCX, DOC, ODT, RTF files", + "convertButton": "Convert to PDF" + }, + "excelToPdf": { + "name": "Excel to PDF", + "subtitle": "Convert Excel spreadsheets (XLSX, XLS, ODS, CSV) to PDF format. Supports multiple files.", + "acceptedFormats": "XLSX, XLS, ODS, CSV files", + "convertButton": "Convert to PDF" + }, + "powerpointToPdf": { + "name": "PowerPoint to PDF", + "subtitle": "Convert PowerPoint presentations (PPTX, PPT, ODP) to PDF format. Supports multiple files.", + "acceptedFormats": "PPTX, PPT, ODP files", + "convertButton": "Convert to PDF" + }, + "markdownToPdf": { + "name": "Markdown to PDF", + "subtitle": "Write or paste Markdown and export it as a beautifully formatted PDF.", + "paneMarkdown": "Markdown", + "panePreview": "Preview", + "btnUpload": "Upload", + "btnSyncScroll": "Sync Scroll", + "btnSettings": "Settings", + "btnExportPdf": "Export PDF", + "settingsTitle": "Markdown Settings", + "settingsPreset": "Preset", + "presetDefault": "Default (GFM-like)", + "presetCommonmark": "CommonMark (strict)", + "presetZero": "Minimal (no features)", + "settingsOptions": "Markdown Options", + "optAllowHtml": "Allow HTML tags", + "optBreaks": "Convert newlines to
", + "optLinkify": "Auto-convert URLs to links", + "optTypographer": "Typographer (smart quotes, etc.)" + }, + "pdfBooklet": { + "name": "PDF Booklet", + "subtitle": "Rearrange pages for double-sided booklet printing. Fold and staple to create a booklet.", + "howItWorks": "How it works:", + "step1": "Upload a PDF file.", + "step2": "Pages will be rearranged in booklet order.", + "step3": "Print double-sided, flip on short edge, fold and staple.", + "paperSize": "Paper Size", + "orientation": "Orientation", + "portrait": "Portrait", + "landscape": "Landscape", + "pagesPerSheet": "Pages per Sheet", + "createBooklet": "Create Booklet", + "processing": "Processing...", + "pageCount": "Page count will be padded to multiple of 4 if needed." + }, + "xpsToPdf": { + "name": "XPS to PDF", + "subtitle": "Convert XPS/OXPS documents to PDF format. Supports multiple files.", + "acceptedFormats": "XPS, OXPS files", + "convertButton": "Convert to PDF" + }, + "mobiToPdf": { + "name": "MOBI to PDF", + "subtitle": "Convert MOBI e-books to PDF format. Supports multiple files.", + "acceptedFormats": "MOBI files", + "convertButton": "Convert to PDF" + }, + "epubToPdf": { + "name": "EPUB to PDF", + "subtitle": "Convert EPUB e-books to PDF format. Supports multiple files.", + "acceptedFormats": "EPUB files", + "convertButton": "Convert to PDF" + }, + "fb2ToPdf": { + "name": "FB2 to PDF", + "subtitle": "Convert FictionBook (FB2) e-books to PDF format. Supports multiple files.", + "acceptedFormats": "FB2 files", + "convertButton": "Convert to PDF" + }, + "cbzToPdf": { + "name": "CBZ to PDF", + "subtitle": "Convert comic book archives (CBZ/CBR) to PDF format. Supports multiple files.", + "acceptedFormats": "CBZ, CBR files", + "convertButton": "Convert to PDF" + }, + "wpdToPdf": { + "name": "WPD to PDF", + "subtitle": "Convert WordPerfect documents (WPD) to PDF format. Supports multiple files.", + "acceptedFormats": "WPD files", + "convertButton": "Convert to PDF" + }, + "wpsToPdf": { + "name": "WPS to PDF", + "subtitle": "Convert WPS Office documents to PDF format. Supports multiple files.", + "acceptedFormats": "WPS files", + "convertButton": "Convert to PDF" + }, + "xmlToPdf": { + "name": "XML to PDF", + "subtitle": "Convert XML documents to PDF format. Supports multiple files.", + "acceptedFormats": "XML files", + "convertButton": "Convert to PDF" + }, + "pagesToPdf": { + "name": "Pages to PDF", + "subtitle": "Convert Apple Pages documents to PDF format. Supports multiple files.", + "acceptedFormats": "Pages files", + "convertButton": "Convert to PDF" + }, + "odgToPdf": { + "name": "ODG to PDF", + "subtitle": "Convert OpenDocument Graphics (ODG) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODG files", + "convertButton": "Convert to PDF" + }, + "odsToPdf": { + "name": "ODS to PDF", + "subtitle": "Convert OpenDocument Spreadsheet (ODS) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODS files", + "convertButton": "Convert to PDF" + }, + "odpToPdf": { + "name": "ODP to PDF", + "subtitle": "Convert OpenDocument Presentation (ODP) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODP files", + "convertButton": "Convert to PDF" + }, + "pubToPdf": { + "name": "PUB to PDF", + "subtitle": "Convert Microsoft Publisher (PUB) files to PDF format. Supports multiple files.", + "acceptedFormats": "PUB files", + "convertButton": "Convert to PDF" + }, + "vsdToPdf": { + "name": "VSD to PDF", + "subtitle": "Convert Microsoft Visio (VSD, VSDX) files to PDF format. Supports multiple files.", + "acceptedFormats": "VSD, VSDX files", + "convertButton": "Convert to PDF" + }, + "psdToPdf": { + "name": "PSD to PDF", + "subtitle": "Convert Adobe Photoshop (PSD) files to PDF format. Supports multiple files.", + "acceptedFormats": "PSD files", + "convertButton": "Convert to PDF" + }, + "pdfToSvg": { + "name": "PDF to SVG", + "subtitle": "Convert each page of a PDF file into a scalable vector graphic (SVG) for perfect quality at any size." + }, + "extractTables": { + "name": "Extract PDF Tables", + "subtitle": "Extract tables from PDF files and export as CSV, JSON, or Markdown." + }, + "pdfToCsv": { + "name": "PDF to CSV", + "subtitle": "Extract tables from PDF and convert to CSV format." + }, + "pdfToExcel": { + "name": "PDF to Excel", + "subtitle": "Extract tables from PDF and convert to Excel (XLSX) format." + }, + "pdfToText": { + "name": "PDF to Text", + "subtitle": "Extract text from PDF files and save as plain text (.txt). Supports multiple files.", + "note": "This tool works ONLY with digitally created PDFs. For scanned documents or image-based PDFs, use our OCR PDF tool instead.", + "convertButton": "Extract Text" + }, + "digitalSignPdf": { + "name": "Assinatura Digital PDF", + "pageTitle": "Assinatura Digital PDF - Adicionar Assinatura Criptogrรกfica | BentoPDF", + "subtitle": "Adicione uma assinatura digital criptogrรกfica ao seu PDF usando certificados X.509. Suporta formatos PKCS#12 (.pfx, .p12) e PEM. Sua chave privada nunca sai do seu navegador.", + "certificateSection": "Certificado", + "uploadCert": "Carregar certificado (.pfx, .p12)", + "certPassword": "Senha do Certificado", + "certPasswordPlaceholder": "Digite a senha", + "certInfo": "Informaรงรตes do Certificado", + "certSubject": "Assunto", + "certIssuer": "Emissor", + "certValidity": "Vรกlido", + "signatureDetails": "Detalhes da Assinatura (Opcional)", + "reason": "Razรฃo", + "reasonPlaceholder": "ex: Eu aprovo este documento", + "location": "Localizaรงรฃo", + "locationPlaceholder": "ex: Lisboa, Portugal", + "contactInfo": "Contato", + "contactPlaceholder": "ex: email@exemplo.com", + "applySignature": "Aplicar Assinatura", + "successMessage": "PDF assinado com sucesso! A assinatura pode ser verificada em qualquer leitor de PDF." + }, + "validateSignaturePdf": { + "name": "Validar Assinatura PDF", + "pageTitle": "Validar Assinatura PDF - Verificar Assinaturas Digitais | BentoPDF", + "subtitle": "Verifique assinaturas digitais em seus arquivos PDF. Verifique a validade do certificado e a integridade do documento." + } +} diff --git a/public/locales/tr/common.json b/public/locales/tr/common.json new file mode 100644 index 000000000..1c874d46e --- /dev/null +++ b/public/locales/tr/common.json @@ -0,0 +1,323 @@ +{ + "nav": { + "home": "Ana Sayfa", + "about": "Hakkฤฑmฤฑzda", + "contact": "ฤฐletiลŸim", + "licensing": "Lisanslama", + "allTools": "Tรผm Araรงlar", + "openMainMenu": "Ana menรผyรผ aรง", + "language": "Dil" + }, + "donation": { + "message": "BentoPDF'i seviyor musunuz? รœcretsiz ve aรงฤฑk kaynaklฤฑ kalmasฤฑna yardฤฑmcฤฑ olun!", + "button": "BaฤŸฤฑลŸ Yap" + }, + "hero": { + "title": " ", + "pdfToolkit": "PDF Toolkit", + "builtForPrivacy": "gizlilik iรงin tasarlandฤฑ", + "noSignups": "Kayฤฑt Gerekmez", + "unlimitedUse": "Sฤฑnฤฑrsฤฑz Kullanฤฑm", + "worksOffline": "ร‡evrimdฤฑลŸฤฑ ร‡alฤฑลŸฤฑr", + "startUsing": "Hemen Kullanmaya BaลŸla" + }, + "usedBy": { + "title": "ลžu ลŸirketler ve รงalฤฑลŸanlarฤฑ tarafฤฑndan kullanฤฑlฤฑyor" + }, + "features": { + "title": "Neden", + "bentoPdf": "BentoPDF'yi seรงmelisiniz?", + "noSignup": { + "title": "Kayฤฑt Gerekmez", + "description": "Hemen baลŸlayฤฑn, hesap veya e-posta gerekmez." + }, + "noUploads": { + "title": "Yรผkleme Yok", + "description": "%100 istemci tarafฤฑnda รงalฤฑลŸฤฑr, dosyalarฤฑnฤฑz cihazฤฑnฤฑzฤฑ asla terk etmez." + }, + "foreverFree": { + "title": "Tamamen รœcretsiz", + "description": "Tรผm araรงlar, deneme sรผrรผmรผ yok, รถdeme duvarฤฑ yok." + }, + "noLimits": { + "title": "Sฤฑnฤฑrsฤฑz", + "description": "ฤฐstediฤŸiniz kadar kullanฤฑn, gizli sฤฑnฤฑrlar yok." + }, + "batchProcessing": { + "title": "Toplu ฤฐลŸlem", + "description": "Sฤฑnฤฑrsฤฑz sayฤฑda PDF'yi tek seferde iลŸleyin." + }, + "lightningFast": { + "title": "ลžimลŸek Hฤฑzฤฑnda", + "description": "PDF'leri anฤฑnda iลŸleyin, bekleme veya gecikme olmadan." + } + }, + "tools": { + "title": "Araรงlarla", + "toolsLabel": "BaลŸlayฤฑn", + "subtitle": "Dosya yรผkleyiciyi aรงmak iรงin bir araรง seรงin", + "searchPlaceholder": "Bir araรง arayฤฑn (รถrn. 'bรถl', 'dรผzenle'...)", + "backToTools": "Araรงlara Dรถn", + "firstLoadNotice": "DรถnรผลŸtรผrme motorumuzu indirirken ilk yรผkleme biraz zaman alฤฑr. Sonrasฤฑnda tรผm yรผklemeler anฤฑnda gerรงekleลŸir." + }, + "upload": { + "clickToSelect": "Dosya seรงmek iรงin tฤฑklayฤฑn", + "orDragAndDrop": "veya sรผrรผkleyip bฤฑrakฤฑn", + "pdfOrImages": "PDF veya Gรถrseller", + "filesNeverLeave": "Dosyalarฤฑnฤฑz cihazฤฑnฤฑzฤฑ asla terk etmez.", + "addMore": "Daha Fazla Dosya Ekle", + "clearAll": "Tรผmรผnรผ Temizle" + }, + "loader": { + "processing": "ฤฐลŸleniyor..." + }, + "alert": { + "title": "Uyarฤฑ", + "ok": "Tamam" + }, + "preview": { + "title": "Belge ร–nizleme", + "downloadAsPdf": "PDF Olarak ฤฐndir", + "close": "Kapat" + }, + "settings": { + "title": "Ayarlar", + "shortcuts": "Kฤฑsayollar", + "preferences": "Tercihler", + "displayPreferences": "Gรถrรผntรผ Tercihleri", + "searchShortcuts": "Kฤฑsayollarda ara...", + "shortcutsInfo": "Bir kฤฑsayol atamak iรงin tuลŸlara basฤฑlฤฑ tutun. DeฤŸiลŸiklikler otomatik olarak kaydedilir.", + "shortcutsWarning": "โš ๏ธ Gรผvenilir รงalฤฑลŸmayabileceฤŸinden yaygฤฑn tarayฤฑcฤฑ kฤฑsayollarฤฑndan (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N vb.) kaรงฤฑnฤฑn.", + "import": "ฤฐรงe Aktar", + "export": "DฤฑลŸa Aktar", + "resetToDefaults": "Varsayฤฑlanlara Sฤฑfฤฑrla", + "fullWidthMode": "Tam GeniลŸlik Modu", + "fullWidthDescription": "OrtalanmฤฑลŸ bir konteyner yerine tรผm ekran geniลŸliฤŸini kullan", + "settingsAutoSaved": "Ayarlar otomatik olarak kaydedildi", + "clickToSet": "Ayarlamak iรงin tฤฑklayฤฑn", + "pressKeys": "TuลŸlara basฤฑn...", + "warnings": { + "alreadyInUse": "Kฤฑsayol Zaten Kullanฤฑmda", + "assignedTo": "zaten ลŸurada kullanฤฑlฤฑyor:", + "chooseDifferent": "Lรผtfen farklฤฑ bir kฤฑsayol seรงin.", + "reserved": "AyrฤฑlmฤฑลŸ Kฤฑsayol Uyarฤฑsฤฑ", + "commonlyUsed": "genellikle ลŸunun iรงin kullanฤฑlฤฑr:", + "unreliable": "Bu kฤฑsayol gรผvenilir รงalฤฑลŸmayabilir veya tarayฤฑcฤฑ/sistem davranฤฑลŸฤฑyla รงakฤฑลŸabilir.", + "useAnyway": "Yine de kullanmak istiyor musunuz?", + "resetTitle": "Kฤฑsayollarฤฑ Sฤฑfฤฑrla", + "resetMessage": "Tรผm kฤฑsayollarฤฑ varsayฤฑlan ayarlara sฤฑfฤฑrlamak istediฤŸinizden emin misiniz?

Bu iลŸlem geri alฤฑnamaz.", + "importSuccessTitle": "ฤฐรงe Aktarma BaลŸarฤฑlฤฑ", + "importSuccessMessage": "Kฤฑsayollar baลŸarฤฑyla iรงe aktarฤฑldฤฑ!", + "importFailTitle": "ฤฐรงe Aktarma BaลŸarฤฑsฤฑz", + "importFailMessage": "Kฤฑsayollar iรงe aktarฤฑlamadฤฑ. Geรงersiz dosya biรงimi." + } + }, + "warning": { + "title": "Uyarฤฑ", + "cancel": "ฤฐptal", + "proceed": "Devam Et" + }, + "compliance": { + "title": "Verileriniz cihazฤฑnฤฑzฤฑ asla terk etmez", + "weKeep": "Bilgilerinizi", + "yourInfoSafe": "gรผvende tutuyoruz", + "byFollowingStandards": "kรผresel gรผvenlik standartlarฤฑnฤฑ takip ederek.", + "processingLocal": "Tรผm iลŸlemler cihazฤฑnฤฑzda yerel olarak gerรงekleลŸir.", + "gdpr": { + "title": "GDPR uyumluluฤŸu", + "description": "Avrupa BirliฤŸi'ndeki bireylerin kiลŸisel verilerini ve gizliliฤŸini korur." + }, + "ccpa": { + "title": "CCPA uyumluluฤŸu", + "description": "Kaliforniya sakinlerine kiลŸisel bilgilerinin nasฤฑl toplandฤฑฤŸฤฑ, kullanฤฑldฤฑฤŸฤฑ ve paylaลŸฤฑldฤฑฤŸฤฑ konusunda haklar tanฤฑr." + }, + "hipaa": { + "title": "HIPAA uyumluluฤŸu", + "description": "ABD saฤŸlฤฑk sisteminde hassas saฤŸlฤฑk bilgilerinin iลŸlenmesi iรงin gรผvenlik รถnlemleri belirler." + } + }, + "faq": { + "title": "Sฤฑkรงa Sorulan", + "questions": "Sorular", + "isFree": { + "question": "BentoPDF gerรงekten รผcretsiz mi?", + "answer": "Evet, kesinlikle. BentoPDF'deki tรผm araรงlar %100 รผcretsizdir, dosya sฤฑnฤฑrฤฑ yoktur, kayฤฑt gerekmez ve filigran eklenmez. Herkesin รถdeme duvarฤฑ olmadan basit, gรผรงlรผ PDF araรงlarฤฑna eriลŸimi hak ettiฤŸine inanฤฑyoruz." + }, + "areFilesSecure": { + "question": "Dosyalarฤฑm gรผvende mi? Nerede iลŸleniyorlar?", + "answer": "Dosyalarฤฑnฤฑz mรผmkรผn olan en gรผvenli ลŸekildedir รงรผnkรผ bilgisayarฤฑnฤฑzฤฑ asla terk etmezler. Tรผm iลŸlemler doฤŸrudan web tarayฤฑcฤฑnฤฑzda (istemci tarafฤฑnda) gerรงekleลŸir. Dosyalarฤฑnฤฑzฤฑ asla bir sunucuya yรผklemeyiz, bรถylece gizliliฤŸiniz ve belgeleriniz รผzerindeki kontrolรผnรผz tam olarak sizde kalฤฑr." + }, + "platforms": { + "question": "Mac, Windows ve Mobil'de รงalฤฑลŸฤฑyor mu?", + "answer": "Evet! BentoPDF tamamen tarayฤฑcฤฑnฤฑzda รงalฤฑลŸtฤฑฤŸฤฑ iรงin, Windows, macOS, Linux, iOS ve Android dahil modern bir web tarayฤฑcฤฑsฤฑ olan herhangi bir iลŸletim sisteminde รงalฤฑลŸฤฑr." + }, + "gdprCompliant": { + "question": "BentoPDF GDPR uyumlu mu?", + "answer": "Evet. BentoPDF tamamen GDPR uyumludur. Tรผm dosya iลŸlemleri tarayฤฑcฤฑnฤฑzda yerel olarak gerรงekleลŸtiฤŸi ve dosyalarฤฑnฤฑzฤฑ herhangi bir sunucuya asla iletmediฤŸimiz iรงin verilerinize eriลŸimimiz yoktur. Bu, belgeleriniz รผzerindeki kontrolรผn her zaman sizde olduฤŸundan emin olur." + }, + "dataStorage": { + "question": "Dosyalarฤฑmฤฑ saklฤฑyor veya takip ediyor musunuz?", + "answer": "Hayฤฑr. Dosyalarฤฑnฤฑzฤฑ asla saklamฤฑyor, takip etmiyor veya kaydetmiyoruz. BentoPDF'de yaptฤฑฤŸฤฑnฤฑz her ลŸey tarayฤฑcฤฑ belleฤŸinizde gerรงekleลŸir ve sayfayฤฑ kapattฤฑฤŸฤฑnฤฑzda silinir. Yรผkleme, geรงmiลŸ kaydฤฑ veya sunucu yoktur." + }, + "different": { + "question": "BentoPDF'yi diฤŸer PDF araรงlarฤฑndan farklฤฑ kฤฑlan nedir?", + "answer": "ร‡oฤŸu PDF aracฤฑ, iลŸlem iรงin dosyalarฤฑnฤฑzฤฑ bir sunucuya yรผkler. BentoPDF asla bรถyle yapmaz. Dosyalarฤฑnฤฑzฤฑ doฤŸrudan tarayฤฑcฤฑnฤฑzda iลŸlemek iรงin gรผvenli, modern web teknolojileri kullanฤฑrฤฑz. Bu, daha hฤฑzlฤฑ performans, daha gรผรงlรผ gizlilik ve tam bir gรถnรผl rahatlฤฑฤŸฤฑ anlamฤฑna gelir." + }, + "browserBased": { + "question": "Tarayฤฑcฤฑ tabanlฤฑ iลŸlem beni nasฤฑl korur?", + "answer": "Tamamen tarayฤฑcฤฑnฤฑzฤฑn iรงinde รงalฤฑลŸarak, BentoPDF dosyalarฤฑnฤฑzฤฑn cihazฤฑnฤฑzฤฑ asla terk etmemesini saฤŸlar. Bu, sunucu saldฤฑrฤฑlarฤฑ, veri ihlalleri veya yetkisiz eriลŸim risklerini ortadan kaldฤฑrฤฑr. Dosyalarฤฑnฤฑz her zaman sizin kalฤฑr." + }, + "analytics": { + "question": "Beni takip etmek iรงin รงerez veya analiz kullanฤฑyor musunuz?", + "answer": "GizliliฤŸinizi รถnemsiyoruz. BentoPDF kiลŸisel bilgileri takip etmez. Sadece anonim ziyaretรงi sayฤฑlarฤฑnฤฑ gรถrmek iรงin Simple Analytics kullanฤฑyoruz. Bu, sitemizi kaรง kiลŸinin ziyaret ettiฤŸini gรถrebileceฤŸimiz, ancak kim olduฤŸunuzu asla bilemeyeceฤŸimiz anlamฤฑna gelir. Simple Analytics tamamen GDPR uyumludur ve gizliliฤŸinize saygฤฑ gรถsterir." + } + }, + "testimonials": { + "title": "Kullanฤฑcฤฑlarฤฑmฤฑz", + "users": "Ne Diyor", + "say": "" + }, + "support": { + "title": "ร‡alฤฑลŸmamฤฑ BeฤŸendiniz mi?", + "description": "BentoPDF, herkes iรงin รผcretsiz, รถzel ve gรผรงlรผ bir PDF araรง seti saฤŸlamak amacฤฑyla oluลŸturulmuลŸ bir tutku projesidir. Faydalฤฑ bulduysanฤฑz, geliลŸtirilmesini desteklemeyi dรผลŸรผnebilirsiniz. Her kahve yardฤฑmcฤฑ olur!", + "buyMeCoffee": "Bana Kahve Ismarla" + }, + "footer": { + "copyright": "ยฉ 2026 BentoPDF. Tรผm haklarฤฑ saklฤฑdฤฑr.", + "version": "Sรผrรผm", + "company": "ลžirket", + "aboutUs": "Hakkฤฑmฤฑzda", + "faqLink": "SSS", + "contactUs": "ฤฐletiลŸim", + "legal": "Yasal", + "termsAndConditions": "Kullanฤฑm KoลŸullarฤฑ", + "privacyPolicy": "Gizlilik Politikasฤฑ", + "followUs": "Bizi Takip Edin" + }, + "merge": { + "title": "PDF BirleลŸtir", + "description": "Dosyalarฤฑn tamamฤฑnฤฑ birleลŸtirin veya yeni bir belge oluลŸturmak iรงin belirli sayfalarฤฑ seรงin.", + "fileMode": "Dosya Modu", + "pageMode": "Sayfa Modu", + "howItWorks": "Nasฤฑl ร‡alฤฑลŸฤฑr:", + "fileModeInstructions": [ + "Dosyalarฤฑn sฤฑrasฤฑnฤฑ deฤŸiลŸtirmek iรงin simgeyi tฤฑklayฤฑp sรผrรผkleyin.", + "Her dosya iรงin \"Sayfalar\" kutusuna, yalnฤฑzca o sayfalarฤฑ birleลŸtirmek iรงin aralฤฑklar belirtebilirsiniz (รถrn. \"1-3, 5\").", + "Tรผm sayfalarฤฑ dahil etmek iรงin \"Sayfalar\" kutusunu boลŸ bฤฑrakฤฑn." + ], + "pageModeInstructions": [ + "YรผklediฤŸiniz PDF'lerin tรผm sayfalarฤฑ aลŸaฤŸฤฑda gรถsterilmiลŸtir.", + "Yeni dosyanฤฑz iรงin istediฤŸiniz sฤฑrayฤฑ oluลŸturmak รผzere sayfa kรผรงรผk resimlerini sรผrรผkleyip bฤฑrakmanฤฑz yeterlidir." + ], + "mergePdfs": "PDF'leri BirleลŸtir" + }, + "common": { + "page": "Sayfa", + "pages": "Sayfa", + "of": "- ", + "download": "ฤฐndir", + "cancel": "ฤฐptal", + "save": "Kaydet", + "delete": "Sil", + "edit": "Dรผzenle", + "add": "Ekle", + "remove": "Kaldฤฑr", + "loading": "Yรผkleniyor...", + "error": "Hata", + "success": "BaลŸarฤฑlฤฑ", + "file": "Dosya", + "files": "Dosya" + }, + "about": { + "hero": { + "title": "PDF araรงlarฤฑnฤฑn", + "subtitle": "hฤฑzlฤฑ, รถzel ve รผcretsiz olmasฤฑ gerektiฤŸine inanฤฑyoruz.", + "noCompromises": "Taviz yok." + }, + "mission": { + "title": "Misyonumuz", + "description": "GizliliฤŸinize saygฤฑ duyan ve asla รถdeme talep etmeyen en kapsamlฤฑ PDF araรง setini saฤŸlamak. Temel belge araรงlarฤฑnฤฑn her yerde, herkes iรงin eriลŸilebilir olmasฤฑ gerektiฤŸine inanฤฑyoruz." + }, + "philosophy": { + "label": "Temel Felsefemiz", + "title": "ร–ncelik Her Zaman Gizlilik.", + "description": "Verinin bir meta olarak kabul edildiฤŸi bir รงaฤŸda, farklฤฑ bir yaklaลŸฤฑm benimsiyoruz. Bentopdf araรงlarฤฑ iรงin tรผm iลŸlemler tarayฤฑcฤฑnฤฑzda yerel olarak gerรงekleลŸir. Bu, dosyalarฤฑnฤฑzฤฑn sunucularฤฑmฤฑza asla dokunmadฤฑฤŸฤฑ, belgelerinizi asla gรถrmediฤŸimiz ve ne yaptฤฑฤŸฤฑnฤฑzฤฑ takip etmediฤŸimiz anlamฤฑna gelir. Belgeleriniz tamamen ve kesinlikle รถzel kalฤฑr. Bu sadece bir รถzellik deฤŸil, temelimizdir." + }, + "whyBentopdf": { + "title": "Neden", + "speed": { + "title": "Hฤฑz ฤฐรงin Tasarlandฤฑ", + "description": "Sunucuya yรผkleme veya indirme iรงin bekleme yok. WebAssembly gibi modern web teknolojilerini kullanarak dosyalarฤฑ doฤŸrudan tarayฤฑcฤฑnฤฑzda iลŸleyerek, tรผm araรงlarฤฑmฤฑz iรงin benzersiz bir hฤฑz sunuyoruz." + }, + "free": { + "title": "Tamamen รœcretsiz", + "description": "Deneme sรผrรผmรผ yok, abonelik yok, gizli รผcret yok ve \"premium\" รถzellikler rehin alฤฑnmamฤฑลŸ. Gรผรงlรผ PDF araรงlarฤฑnฤฑn bir kar merkezi deฤŸil, bir kamu hizmeti olmasฤฑ gerektiฤŸine inanฤฑyoruz." + }, + "noAccount": { + "title": "Hesap Gerekmez", + "description": "Hemen herhangi bir aracฤฑ kullanmaya baลŸlayฤฑn. E-postanฤฑza, ลŸifrenize veya herhangi bir kiลŸisel bilginize ihtiyacฤฑmฤฑz yok. ฤฐลŸ akฤฑลŸฤฑnฤฑz sรผrtรผnmesiz ve anonim olmalฤฑdฤฑr." + }, + "openSource": { + "title": "Aรงฤฑk Kaynak Ruhu", + "description": "ลžeffaflฤฑk dรผลŸรผnรผlerek oluลŸturuldu. PDF-lib ve PDF.js gibi inanฤฑlmaz aรงฤฑk kaynaklฤฑ kรผtรผphanelerden yararlanฤฑyoruz ve gรผรงlรผ araรงlarฤฑ herkes iรงin eriลŸilebilir kฤฑlmak iรงin topluluk odaklฤฑ รงabaya inanฤฑyoruz." + } + }, + "cta": { + "title": "BaลŸlamaya hazฤฑr mฤฑsฤฑnฤฑz?", + "description": "Gรผnlรผk belge ihtiyaรงlarฤฑ iรงin BentoPDF'ye gรผvenen binlerce kullanฤฑcฤฑya katฤฑlฤฑn. Gizlilik ve performansฤฑn yaratabileceฤŸi farkฤฑ deneyimleyin.", + "button": "Tรผm Araรงlarฤฑ KeลŸfet" + } + }, + "contact": { + "title": "ฤฐletiลŸime Geรงin", + "subtitle": "Sizden haber almak isteriz. Bir sorunuz, geri bildiriminiz veya bir รถzellik isteฤŸiniz varsa, lรผtfen bize ulaลŸmaktan รงekinmeyin.", + "email": "Bize doฤŸrudan ลŸu e-posta adresinden ulaลŸabilirsiniz:" + }, + "licensing": { + "title": "Lisanslama", + "subtitle": "ฤฐhtiyaรงlarฤฑnฤฑza uygun lisansฤฑ seรงin." + }, + "multiTool": { + "uploadPdfs": "PDF Yรผkle", + "upload": "Yรผkle", + "addBlankPage": "BoลŸ Sayfa Ekle", + "edit": "Dรผzenle:", + "undo": "Geri Al", + "redo": "Yinele", + "reset": "Sฤฑfฤฑrla", + "selection": "Seรงim:", + "selectAll": "Tรผmรผnรผ Seรง", + "deselectAll": "Seรงimi Kaldฤฑr", + "rotate": "Dรถndรผr:", + "rotateLeft": "Sola", + "rotateRight": "SaฤŸa", + "transform": "DรถnรผลŸtรผr:", + "duplicate": "ร‡oฤŸalt", + "split": "Bรถl", + "clear": "Temizle:", + "delete": "Sil", + "download": "ฤฐndir:", + "downloadSelected": "Seรงilenleri ฤฐndir", + "exportPdf": "PDF Olarak DฤฑลŸa Aktar", + "uploadPdfFiles": "PDF Dosyalarฤฑnฤฑ Seรงin", + "dragAndDrop": "PDF dosyalarฤฑnฤฑ buraya sรผrรผkleyip bฤฑrakฤฑn veya seรงmek iรงin tฤฑklayฤฑn", + "selectFiles": "Dosya Seรง", + "renderingPages": "Sayfalar oluลŸturuluyor...", + "actions": { + "duplicatePage": "Bu sayfayฤฑ รงoฤŸalt", + "deletePage": "Bu sayfayฤฑ sil", + "insertPdf": "Bu sayfadan sonra PDF ekle", + "toggleSplit": "Bu sayfadan sonra bรถlmeyi aรง/kapat" + }, + "pleaseWait": "Lรผtfen Bekleyin", + "pagesRendering": "Sayfalar hala oluลŸturuluyor. Lรผtfen bekleyin...", + "noPagesSelected": "Hiรงbir Sayfa Seรงilmedi", + "selectOnePage": "Lรผtfen indirmek iรงin en az bir sayfa seรงin.", + "noPages": "Sayfa Yok", + "noPagesToExport": "DฤฑลŸa aktarฤฑlacak sayfa yok.", + "renderingTitle": "Sayfa รถnizlemeleri oluลŸturuluyor", + "errorRendering": "Sayfa kรผรงรผk resimleri oluลŸturulamadฤฑ", + "error": "Hata", + "failedToLoad": "Yรผklenemedi" + } +} diff --git a/public/locales/tr/tools.json b/public/locales/tr/tools.json new file mode 100644 index 000000000..7f897ad58 --- /dev/null +++ b/public/locales/tr/tools.json @@ -0,0 +1,511 @@ +{ + "categories": { + "popularTools": "Popรผler Araรงlar", + "editAnnotate": "Dรผzenle & Aรงฤฑklama Ekle", + "convertToPdf": "PDF'ye DรถnรผลŸtรผr", + "convertFromPdf": "PDF'den DรถnรผลŸtรผr", + "organizeManage": "Dรผzenle & Yรถnet", + "optimizeRepair": "Optimize Et & Onar", + "securePdf": "PDF GรผvenliฤŸi" + }, + "pdfMultiTool": { + "name": "PDF ร‡oklu Araรง", + "subtitle": "BirleลŸtir, Bรถl, Dรผzenle, Sil, Dรถndรผr, BoลŸ Sayfa Ekle, ร‡ฤฑkar ve ร‡oฤŸalt iลŸlemlerini tek bir arayรผzde yapฤฑn." + }, + "mergePdf": { + "name": "PDF BirleลŸtir", + "subtitle": "Birden fazla PDF'yi tek bir dosyada birleลŸtirin. Yer imlerini korur." + }, + "splitPdf": { + "name": "PDF Bรถl", + "subtitle": "Sayfa aralฤฑฤŸฤฑnฤฑ yeni bir PDF olarak รงฤฑkarฤฑn." + }, + "compressPdf": { + "name": "PDF SฤฑkฤฑลŸtฤฑr", + "subtitle": "PDF dosya boyutunu kรผรงรผltรผn." + }, + "pdfEditor": { + "name": "PDF Dรผzenleyici", + "subtitle": "Aรงฤฑklama ekleyin, vurgulayฤฑn, dรผzenleyin, yorum yapฤฑn, ลŸekil/resim ekleyin, arama yapฤฑn ve PDF'leri gรถrรผntรผleyin." + }, + "jpgToPdf": { + "name": "JPG'den PDF'ye", + "subtitle": "Bir veya daha fazla JPG gรถrselinden PDF oluลŸturun." + }, + "signPdf": { + "name": "PDF ฤฐmzala", + "subtitle": "ฤฐmzanฤฑzฤฑ รงizin, yazฤฑn veya yรผkleyin." + }, + "cropPdf": { + "name": "PDF Kฤฑrp", + "subtitle": "PDF'nizdeki her sayfanฤฑn kenar boลŸluklarฤฑnฤฑ kฤฑrpฤฑn." + }, + "extractPages": { + "name": "Sayfalarฤฑ ร‡ฤฑkar", + "subtitle": "Seรงili sayfalarฤฑ yeni dosyalar olarak kaydedin." + }, + "duplicateOrganize": { + "name": "ร‡oฤŸalt & Dรผzenle", + "subtitle": "Sayfalarฤฑ รงoฤŸaltฤฑn, yeniden sฤฑralayฤฑn ve silin." + }, + "deletePages": { + "name": "Sayfalarฤฑ Sil", + "subtitle": "Belgenizden belirli sayfalarฤฑ kaldฤฑrฤฑn." + }, + "editBookmarks": { + "name": "Yer ฤฐลŸaretlerini Dรผzenle", + "subtitle": "PDF yer imlerini ekleyin, dรผzenleyin, iรงe aktarฤฑn, silin ve รงฤฑkarฤฑn." + }, + "tableOfContents": { + "name": "ฤฐรงindekiler", + "subtitle": "PDF yer imlerinden bir iรงindekiler sayfasฤฑ oluลŸturun." + }, + "pageNumbers": { + "name": "Sayfa Numaralarฤฑ", + "subtitle": "Belgenize sayfa numaralarฤฑ ekleyin." + }, + "addWatermark": { + "name": "Filigran Ekle", + "subtitle": "PDF sayfalarฤฑnฤฑzฤฑn รผzerine metin veya gรถrsel damgasฤฑ ekleyin." + }, + "headerFooter": { + "name": "รœst Bilgi & Alt Bilgi", + "subtitle": "Sayfalarฤฑn รผst ve alt kฤฑsmฤฑna metin ekleyin." + }, + "invertColors": { + "name": "Renkleri Ters ร‡evir", + "subtitle": "PDF'niz iรงin \"karanlฤฑk mod\" sรผrรผmรผ oluลŸturun." + }, + "backgroundColor": { + "name": "Arka Plan Rengi", + "subtitle": "PDF'nizin arka plan rengini deฤŸiลŸtirin." + }, + "changeTextColor": { + "name": "Metin Rengini DeฤŸiลŸtir", + "subtitle": "PDF'nizdeki metnin rengini deฤŸiลŸtirin." + }, + "addStamps": { + "name": "Damga Ekle", + "subtitle": "Aรงฤฑklama araรง รงubuฤŸunu kullanarak PDF'nize damga ekleyin.", + "usernameLabel": "Kullanฤฑcฤฑ Adฤฑ", + "usernamePlaceholder": "Adฤฑnฤฑzฤฑ girin (damgalar iรงin)", + "usernameHint": "Bu isim oluลŸturduฤŸunuz damgalarda gรถrรผnecektir." + }, + "removeAnnotations": { + "name": "Aรงฤฑklamalarฤฑ Kaldฤฑr", + "subtitle": "Yorumlarฤฑ, vurgularฤฑ ve baฤŸlantฤฑlarฤฑ kaldฤฑrฤฑn." + }, + "pdfFormFiller": { + "name": "PDF Form Doldurucu", + "subtitle": "Formlarฤฑ doฤŸrudan tarayฤฑcฤฑda doldurun. XFA formlarฤฑnฤฑ da destekler." + }, + "createPdfForm": { + "name": "PDF Formu OluลŸtur", + "subtitle": "Sรผrรผkle-bฤฑrak metin alanlarฤฑ ile doldurulabilir PDF formlarฤฑ oluลŸturun." + }, + "removeBlankPages": { + "name": "BoลŸ Sayfalarฤฑ Kaldฤฑr", + "subtitle": "BoลŸ sayfalarฤฑ otomatik olarak tespit edin ve silin." + }, + "imageToPdf": { + "name": "Gรถrselden PDF'ye", + "subtitle": "JPG, PNG, WebP, BMP, TIFF, SVG, HEIC formatlarฤฑnฤฑ PDF'ye dรถnรผลŸtรผrรผn." + }, + "pngToPdf": { + "name": "PNG'den PDF'ye", + "subtitle": "Bir veya daha fazla PNG gรถrselinden PDF oluลŸturun." + }, + "webpToPdf": { + "name": "WebP'den PDF'ye", + "subtitle": "Bir veya daha fazla WebP gรถrselinden PDF oluลŸturun." + }, + "svgToPdf": { + "name": "SVG'den PDF'ye", + "subtitle": "Bir veya daha fazla SVG gรถrselinden PDF oluลŸturun." + }, + "bmpToPdf": { + "name": "BMP'den PDF'ye", + "subtitle": "Bir veya daha fazla BMP gรถrselinden PDF oluลŸturun." + }, + "heicToPdf": { + "name": "HEIC'den PDF'ye", + "subtitle": "Bir veya daha fazla HEIC gรถrselinden PDF oluลŸturun." + }, + "tiffToPdf": { + "name": "TIFF'den PDF'ye", + "subtitle": "Bir veya daha fazla TIFF gรถrselinden PDF oluลŸturun." + }, + "textToPdf": { + "name": "Metinden PDF'ye", + "subtitle": "Dรผz metin dosyasฤฑnฤฑ PDF'ye dรถnรผลŸtรผrรผn." + }, + "jsonToPdf": { + "name": "JSON'dan PDF'ye", + "subtitle": "JSON dosyalarฤฑnฤฑ PDF formatฤฑna dรถnรผลŸtรผrรผn." + }, + "pdfToJpg": { + "name": "PDF'den JPG'ye", + "subtitle": "Her PDF sayfasฤฑnฤฑ JPG gรถrseline dรถnรผลŸtรผrรผn." + }, + "pdfToPng": { + "name": "PDF'den PNG'ye", + "subtitle": "Her PDF sayfasฤฑnฤฑ PNG gรถrseline dรถnรผลŸtรผrรผn." + }, + "pdfToWebp": { + "name": "PDF'den WebP'ye", + "subtitle": "Her PDF sayfasฤฑnฤฑ WebP gรถrseline dรถnรผลŸtรผrรผn." + }, + "pdfToBmp": { + "name": "PDF'den BMP'ye", + "subtitle": "Her PDF sayfasฤฑnฤฑ BMP gรถrseline dรถnรผลŸtรผrรผn." + }, + "pdfToTiff": { + "name": "PDF'den TIFF'e", + "subtitle": "Her PDF sayfasฤฑnฤฑ TIFF gรถrseline dรถnรผลŸtรผrรผn." + }, + "pdfToGreyscale": { + "name": "PDF'yi Gri Tonlamaya ร‡evir", + "subtitle": "Tรผm renkleri siyah beyaza รงevirin." + }, + "pdfToJson": { + "name": "PDF'den JSON'a", + "subtitle": "PDF dosyalarฤฑnฤฑ JSON formatฤฑna dรถnรผลŸtรผrรผn." + }, + "ocrPdf": { + "name": "PDF'de OCR", + "subtitle": "PDF'yi aranabilir ve kopyalanabilir hale getirin." + }, + "alternateMix": { + "name": "Sayfalarฤฑ KarฤฑลŸtฤฑr & BirleลŸtir", + "subtitle": "PDF'leri her birinden sayfalarฤฑ sฤฑrayla birleลŸtirin. Yer imlerini korur." + }, + "addAttachments": { + "name": "Ek Dosya Ekle", + "subtitle": "PDF'nize bir veya daha fazla dosya ekleyin." + }, + "extractAttachments": { + "name": "Ek Dosyalarฤฑ ร‡ฤฑkar", + "subtitle": "PDF'lerden tรผm gรถmรผlรผ dosyalarฤฑ ZIP olarak รงฤฑkarฤฑn." + }, + "editAttachments": { + "name": "Ek Dosyalarฤฑ Dรผzenle", + "subtitle": "PDF'nizdeki ek dosyalarฤฑ gรถrรผntรผleyin veya kaldฤฑrฤฑn." + }, + "dividePages": { + "name": "Sayfalarฤฑ Bรถl", + "subtitle": "Sayfalarฤฑ yatay veya dikey olarak bรถlรผn." + }, + "addBlankPage": { + "name": "BoลŸ Sayfa Ekle", + "subtitle": "PDF'nize herhangi bir yerine boลŸ sayfa ekleyin." + }, + "reversePages": { + "name": "Sayfalarฤฑ Ters ร‡evir", + "subtitle": "Belgenizdeki tรผm sayfalarฤฑn sฤฑrasฤฑnฤฑ tersine รงevirin." + }, + "rotatePdf": { + "name": "PDF'yi Dรถndรผr", + "subtitle": "Sayfalarฤฑ 90 derecelik artฤฑลŸlarla dรถndรผrรผn." + }, + "nUpPdf": { + "name": "N'li PDF", + "subtitle": "Birden fazla sayfayฤฑ tek bir sayfaya yerleลŸtirin." + }, + "combineToSinglePage": { + "name": "Tek Sayfada BirleลŸtir", + "subtitle": "Tรผm sayfalarฤฑ tek bir sรผrekli kaydฤฑrฤฑlabilir sayfada birleลŸtirin." + }, + "viewMetadata": { + "name": "รœst Veriyi Gรถrรผntรผle", + "subtitle": "PDF'nizin gizli รถzelliklerini inceleyin." + }, + "editMetadata": { + "name": "รœst Veriyi Dรผzenle", + "subtitle": "Yazar, baลŸlฤฑk ve diฤŸer รถzellikleri deฤŸiลŸtirin." + }, + "pdfsToZip": { + "name": "PDF'leri ZIP Yap", + "subtitle": "Birden fazla PDF dosyasฤฑnฤฑ bir ZIP arลŸivinde paketleyin." + }, + "comparePdfs": { + "name": "PDF'leri KarลŸฤฑlaลŸtฤฑr", + "subtitle": "ฤฐki PDF'yi yan yana karลŸฤฑlaลŸtฤฑrฤฑn." + }, + "posterizePdf": { + "name": "PDF'yi Posta Boyutuna Bรถl", + "subtitle": "Bรผyรผk bir sayfayฤฑ birden fazla kรผรงรผk sayfaya bรถlรผn." + }, + "fixPageSize": { + "name": "Sayfa Boyutunu Dรผzelt", + "subtitle": "Tรผm sayfalarฤฑ standart bir boyuta getirin." + }, + "linearizePdf": { + "name": "PDF'yi DoฤŸrusallaลŸtฤฑr", + "subtitle": "Hฤฑzlฤฑ web gรถrรผntรผleme iรงin PDF'yi optimize edin." + }, + "pageDimensions": { + "name": "Sayfa Boyutlarฤฑ", + "subtitle": "Sayfa boyutunu, yรถnlendirmeyi ve birimleri analiz edin." + }, + "removeRestrictions": { + "name": "Kฤฑsฤฑtlamalarฤฑ Kaldฤฑr", + "subtitle": "Dijital olarak imzalanmฤฑลŸ PDF dosyalarฤฑyla iliลŸkili ลŸifre korumasฤฑnฤฑ ve gรผvenlik kฤฑsฤฑtlamalarฤฑnฤฑ kaldฤฑrฤฑn." + }, + "repairPdf": { + "name": "PDF'yi Onar", + "subtitle": "BozulmuลŸ veya hasarlฤฑ PDF dosyalarฤฑndan veri kurtarฤฑn." + }, + "encryptPdf": { + "name": "PDF'yi ลžifrele", + "subtitle": "PDF'nizi ลŸifre ekleyerek koruyun." + }, + "sanitizePdf": { + "name": "PDF'yi Temizle", + "subtitle": "รœst verileri, aรงฤฑklamalarฤฑ, betikleri ve daha fazlasฤฑnฤฑ kaldฤฑrฤฑn." + }, + "decryptPdf": { + "name": "PDF'nin ลžifresini ร‡รถz", + "subtitle": "ลžifre korumasฤฑnฤฑ kaldฤฑrarak PDF'nin kilidini aรงฤฑn." + }, + "flattenPdf": { + "name": "PDF'yi DรผzleลŸtir", + "subtitle": "Form alanlarฤฑnฤฑ ve aรงฤฑklamalarฤฑ dรผzenlenemez hale getirin." + }, + "removeMetadata": { + "name": "รœst Veriyi Kaldฤฑr", + "subtitle": "PDF'nizdeki gizli verileri temizleyin." + }, + "changePermissions": { + "name": "ฤฐzinleri DeฤŸiลŸtir", + "subtitle": "Bir PDF รผzerindeki kullanฤฑcฤฑ izinlerini ayarlayฤฑn veya deฤŸiลŸtirin." + }, + "emailToPdf": { + "name": "E-posta'dan PDF'ye", + "subtitle": "E-posta dosyalarฤฑnฤฑ (EML, MSG) PDF formatฤฑna dรถnรผลŸtรผrรผn. Outlook dฤฑลŸa aktarmalarฤฑnฤฑ ve standart e-posta formatlarฤฑnฤฑ destekler.", + "acceptedFormats": "EML, MSG Dosyalarฤฑ", + "convertButton": "PDF'ye DรถnรผลŸtรผr" + }, + "fontToOutline": { + "name": "Yazฤฑ Tipi ร‡erรงeveye DรถnรผลŸtรผr", + "subtitle": "Tรผm yazฤฑ tiplerini vektรถr รงerรงevelere dรถnรผลŸtรผrรผn, tรผm cihazlarda tutarlฤฑ gรถrรผntรผ iรงin." + }, + "deskewPdf": { + "name": "PDF EฤŸriliฤŸini Dรผzelt", + "subtitle": "OpenCV kullanarak eฤŸik taranmฤฑลŸ sayfalarฤฑ otomatik olarak dรผzeltin." + }, + "rotateCustom": { + "name": "Rotate by Custom Degrees", + "subtitle": "Rotate pages by any custom angle." + }, + "odtToPdf": { + "name": "ODT to PDF", + "subtitle": "Convert OpenDocument Text files to PDF format. Supports multiple files.", + "acceptedFormats": "ODT files", + "convertButton": "Convert to PDF" + }, + "csvToPdf": { + "name": "CSV to PDF", + "subtitle": "Convert CSV spreadsheet files to PDF format. Supports multiple files.", + "acceptedFormats": "CSV files", + "convertButton": "Convert to PDF" + }, + "rtfToPdf": { + "name": "RTF to PDF", + "subtitle": "Convert Rich Text Format documents to PDF. Supports multiple files.", + "acceptedFormats": "RTF files", + "convertButton": "Convert to PDF" + }, + "wordToPdf": { + "name": "Word to PDF", + "subtitle": "Convert Word documents (DOCX, DOC, ODT, RTF) to PDF format. Supports multiple files.", + "acceptedFormats": "DOCX, DOC, ODT, RTF files", + "convertButton": "Convert to PDF" + }, + "excelToPdf": { + "name": "Excel to PDF", + "subtitle": "Convert Excel spreadsheets (XLSX, XLS, ODS, CSV) to PDF format. Supports multiple files.", + "acceptedFormats": "XLSX, XLS, ODS, CSV files", + "convertButton": "Convert to PDF" + }, + "powerpointToPdf": { + "name": "PowerPoint to PDF", + "subtitle": "Convert PowerPoint presentations (PPTX, PPT, ODP) to PDF format. Supports multiple files.", + "acceptedFormats": "PPTX, PPT, ODP files", + "convertButton": "Convert to PDF" + }, + "markdownToPdf": { + "name": "Markdown to PDF", + "subtitle": "Write or paste Markdown and export it as a beautifully formatted PDF.", + "paneMarkdown": "Markdown", + "panePreview": "Preview", + "btnUpload": "Upload", + "btnSyncScroll": "Sync Scroll", + "btnSettings": "Settings", + "btnExportPdf": "Export PDF", + "settingsTitle": "Markdown Settings", + "settingsPreset": "Preset", + "presetDefault": "Default (GFM-like)", + "presetCommonmark": "CommonMark (strict)", + "presetZero": "Minimal (no features)", + "settingsOptions": "Markdown Options", + "optAllowHtml": "Allow HTML tags", + "optBreaks": "Convert newlines to
", + "optLinkify": "Auto-convert URLs to links", + "optTypographer": "Typographer (smart quotes, etc.)" + }, + "pdfBooklet": { + "name": "PDF Booklet", + "subtitle": "Rearrange pages for double-sided booklet printing. Fold and staple to create a booklet.", + "howItWorks": "How it works:", + "step1": "Upload a PDF file.", + "step2": "Pages will be rearranged in booklet order.", + "step3": "Print double-sided, flip on short edge, fold and staple.", + "paperSize": "Paper Size", + "orientation": "Orientation", + "portrait": "Portrait", + "landscape": "Landscape", + "pagesPerSheet": "Pages per Sheet", + "createBooklet": "Create Booklet", + "processing": "Processing...", + "pageCount": "Page count will be padded to multiple of 4 if needed." + }, + "xpsToPdf": { + "name": "XPS to PDF", + "subtitle": "Convert XPS/OXPS documents to PDF format. Supports multiple files.", + "acceptedFormats": "XPS, OXPS files", + "convertButton": "Convert to PDF" + }, + "mobiToPdf": { + "name": "MOBI to PDF", + "subtitle": "Convert MOBI e-books to PDF format. Supports multiple files.", + "acceptedFormats": "MOBI files", + "convertButton": "Convert to PDF" + }, + "epubToPdf": { + "name": "EPUB to PDF", + "subtitle": "Convert EPUB e-books to PDF format. Supports multiple files.", + "acceptedFormats": "EPUB files", + "convertButton": "Convert to PDF" + }, + "fb2ToPdf": { + "name": "FB2 to PDF", + "subtitle": "Convert FictionBook (FB2) e-books to PDF format. Supports multiple files.", + "acceptedFormats": "FB2 files", + "convertButton": "Convert to PDF" + }, + "cbzToPdf": { + "name": "CBZ to PDF", + "subtitle": "Convert comic book archives (CBZ/CBR) to PDF format. Supports multiple files.", + "acceptedFormats": "CBZ, CBR files", + "convertButton": "Convert to PDF" + }, + "wpdToPdf": { + "name": "WPD to PDF", + "subtitle": "Convert WordPerfect documents (WPD) to PDF format. Supports multiple files.", + "acceptedFormats": "WPD files", + "convertButton": "Convert to PDF" + }, + "wpsToPdf": { + "name": "WPS to PDF", + "subtitle": "Convert WPS Office documents to PDF format. Supports multiple files.", + "acceptedFormats": "WPS files", + "convertButton": "Convert to PDF" + }, + "xmlToPdf": { + "name": "XML to PDF", + "subtitle": "Convert XML documents to PDF format. Supports multiple files.", + "acceptedFormats": "XML files", + "convertButton": "Convert to PDF" + }, + "pagesToPdf": { + "name": "Pages to PDF", + "subtitle": "Convert Apple Pages documents to PDF format. Supports multiple files.", + "acceptedFormats": "Pages files", + "convertButton": "Convert to PDF" + }, + "odgToPdf": { + "name": "ODG to PDF", + "subtitle": "Convert OpenDocument Graphics (ODG) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODG files", + "convertButton": "Convert to PDF" + }, + "odsToPdf": { + "name": "ODS to PDF", + "subtitle": "Convert OpenDocument Spreadsheet (ODS) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODS files", + "convertButton": "Convert to PDF" + }, + "odpToPdf": { + "name": "ODP to PDF", + "subtitle": "Convert OpenDocument Presentation (ODP) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODP files", + "convertButton": "Convert to PDF" + }, + "pubToPdf": { + "name": "PUB to PDF", + "subtitle": "Convert Microsoft Publisher (PUB) files to PDF format. Supports multiple files.", + "acceptedFormats": "PUB files", + "convertButton": "Convert to PDF" + }, + "vsdToPdf": { + "name": "VSD to PDF", + "subtitle": "Convert Microsoft Visio (VSD, VSDX) files to PDF format. Supports multiple files.", + "acceptedFormats": "VSD, VSDX files", + "convertButton": "Convert to PDF" + }, + "psdToPdf": { + "name": "PSD to PDF", + "subtitle": "Convert Adobe Photoshop (PSD) files to PDF format. Supports multiple files.", + "acceptedFormats": "PSD files", + "convertButton": "Convert to PDF" + }, + "pdfToSvg": { + "name": "PDF to SVG", + "subtitle": "Convert each page of a PDF file into a scalable vector graphic (SVG) for perfect quality at any size." + }, + "extractTables": { + "name": "Extract PDF Tables", + "subtitle": "Extract tables from PDF files and export as CSV, JSON, or Markdown." + }, + "pdfToCsv": { + "name": "PDF to CSV", + "subtitle": "Extract tables from PDF and convert to CSV format." + }, + "pdfToExcel": { + "name": "PDF to Excel", + "subtitle": "Extract tables from PDF and convert to Excel (XLSX) format." + }, + "pdfToText": { + "name": "PDF to Text", + "subtitle": "Extract text from PDF files and save as plain text (.txt). Supports multiple files.", + "note": "This tool works ONLY with digitally created PDFs. For scanned documents or image-based PDFs, use our OCR PDF tool instead.", + "convertButton": "Extract Text" + }, + "digitalSignPdf": { + "name": "Digital Signature PDF", + "pageTitle": "Digital Signature PDF - Add Cryptographic Signature | BentoPDF", + "subtitle": "Add a cryptographic digital signature to your PDF using X.509 certificates. Supports PKCS#12 (.pfx, .p12) and PEM formats. Your private key never leaves your browser.", + "certificateSection": "Certificate", + "uploadCert": "Upload certificate (.pfx, .p12)", + "certPassword": "Certificate Password", + "certPasswordPlaceholder": "Enter certificate password", + "certInfo": "Certificate Information", + "certSubject": "Subject", + "certIssuer": "Issuer", + "certValidity": "Valid", + "signatureDetails": "Signature Details (Optional)", + "reason": "Reason", + "reasonPlaceholder": "e.g., I approve this document", + "location": "Location", + "locationPlaceholder": "e.g., New York, USA", + "contactInfo": "Contact Info", + "contactPlaceholder": "e.g., email@example.com", + "applySignature": "Apply Digital Signature", + "successMessage": "PDF signed successfully! The signature can be verified in any PDF reader." + }, + "validateSignaturePdf": { + "name": "Validate PDF Signature", + "pageTitle": "Validate PDF Signature - Verify Digital Signatures | BentoPDF", + "subtitle": "Verify digital signatures in your PDF files. Check certificate validity, view signer details, and confirm document integrity. All processing happens in your browser." + } +} diff --git a/public/locales/vi/common.json b/public/locales/vi/common.json index 5852813c3..1ebaa4051 100644 --- a/public/locales/vi/common.json +++ b/public/locales/vi/common.json @@ -1,319 +1,323 @@ { - "nav": { - "home": "Trang chแปง", - "about": "Giแป›i thiแป‡u", - "contact": "Liรชn hแป‡", - "licensing": "Giแบฅy phรฉp", - "allTools": "Tแบฅt cแบฃ cรดng cแปฅ", - "openMainMenu": "MแปŸ menu chรญnh", - "language": "Ngรดn ngแปฏ" + "nav": { + "home": "Trang chแปง", + "about": "Giแป›i thiแป‡u", + "contact": "Liรชn hแป‡", + "licensing": "Giแบฅy phรฉp", + "allTools": "Tแบฅt cแบฃ cรดng cแปฅ", + "openMainMenu": "MแปŸ menu chรญnh", + "language": "Ngรดn ngแปฏ" + }, + "donation": { + "message": "Bแบกn yรชu thรญch BentoPDF? Hรฃy giรบp chรบng tรดi giแปฏ nรณ miแป…n phรญ vร  mรฃ nguแป“n mแปŸ!", + "button": "Quyรชn gรณp" + }, + "hero": { + "title": "Bแป™ cรดng cแปฅ", + "pdfToolkit": "PDF", + "builtForPrivacy": "an toร n vร  riรชng tฦฐ", + "noSignups": "Khรดng cแบงn ฤ‘ฤƒng kรฝ", + "unlimitedUse": "Sแปญ dแปฅng khรดng giแป›i hแบกn", + "worksOffline": "Hoแบกt ฤ‘แป™ng offline", + "startUsing": "Bแบฏt ฤ‘แบงu sแปญ dแปฅng ngay" + }, + "usedBy": { + "title": "ฤฦฐแปฃc sแปญ dแปฅng bแปŸi cรกc cรดng ty vร  nhแปฏng ngฦฐแปi lร m viแป‡c tแบกi" + }, + "features": { + "title": "Tแบกi sao chแปn", + "bentoPdf": "BentoPDF?", + "noSignup": { + "title": "Khรดng cแบงn ฤ‘ฤƒng kรฝ", + "description": "Bแบฏt ฤ‘แบงu ngay lแบญp tแปฉc, khรดng cแบงn tร i khoแบฃn hay email." }, - "hero": { - "title": "Bแป™ cรดng cแปฅ", - "pdfToolkit": "PDF", - "builtForPrivacy": "an toร n vร  riรชng tฦฐ", - "noSignups": "Khรดng cแบงn ฤ‘ฤƒng kรฝ", - "unlimitedUse": "Sแปญ dแปฅng khรดng giแป›i hแบกn", - "worksOffline": "Hoแบกt ฤ‘แป™ng offline", - "startUsing": "Bแบฏt ฤ‘แบงu sแปญ dแปฅng ngay" - }, - "usedBy": { - "title": "ฤฦฐแปฃc sแปญ dแปฅng bแปŸi cรกc cรดng ty vร  nhแปฏng ngฦฐแปi lร m viแป‡c tแบกi" - }, - "features": { - "title": "Tแบกi sao chแปn", - "bentoPdf": "BentoPDF?", - "noSignup": { - "title": "Khรดng cแบงn ฤ‘ฤƒng kรฝ", - "description": "Bแบฏt ฤ‘แบงu ngay lแบญp tแปฉc, khรดng cแบงn tร i khoแบฃn hay email." - }, - "noUploads": { - "title": "Khรดng tแบฃi lรชn", - "description": "100% xแปญ lรฝ phรญa mรกy khรกch, tแป‡p cแปงa bแบกn khรดng bao giแป rแปi khแปi thiแบฟt bแป‹." - }, - "foreverFree": { - "title": "Miแป…n phรญ mรฃi mรฃi", - "description": "Tแบฅt cแบฃ cรดng cแปฅ, khรดng dรนng thแปญ, khรดng cรณ tฦฐแปng phรญ." - }, - "noLimits": { - "title": "Khรดng giแป›i hแบกn", - "description": "Sแปญ dแปฅng bao nhiรชu tรนy thรญch, khรดng cรณ giแป›i hแบกn แบฉn." - }, - "batchProcessing": { - "title": "Xแปญ lรฝ hร ng loแบกt", - "description": "Xแปญ lรฝ khรดng giแป›i hแบกn PDF trong mแป™t lแบงn." - }, - "lightningFast": { - "title": "Cแปฑc kแปณ nhanh", - "description": "Xแปญ lรฝ PDF ngay lแบญp tแปฉc, khรดng cแบงn chแป ฤ‘แปฃi hay trรฌ hoรฃn." - } + "noUploads": { + "title": "Khรดng tแบฃi lรชn", + "description": "100% xแปญ lรฝ phรญa mรกy khรกch, tแป‡p cแปงa bแบกn khรดng bao giแป rแปi khแปi thiแบฟt bแป‹." }, - "tools": { - "title": "Bแบฏt ฤ‘แบงu vแป›i", - "toolsLabel": "Cรดng cแปฅ", - "subtitle": "Nhแบฅp vร o mแป™t cรดng cแปฅ ฤ‘แปƒ mแปŸ trรฌnh tแบฃi tแป‡p lรชn", - "searchPlaceholder": "Tรฌm kiแบฟm cรดng cแปฅ (vรญ dแปฅ: 'chia', 'sแบฏp xแบฟp'...)", - "backToTools": "Quay lแบกi Cรดng cแปฅ", - "firstLoadNotice": "Lแบงn tแบฃi ฤ‘แบงu tiรชn sแบฝ mแบฅt mแป™t chรบt thแปi gian vรฌ chรบng tรดi ฤ‘ang tแบฃi xuแป‘ng cรดng cแปฅ chuyแปƒn ฤ‘แป•i. Sau ฤ‘รณ, mแปi lแบงn tแบฃi sแบฝ ngay lแบญp tแปฉc." + "foreverFree": { + "title": "Miแป…n phรญ mรฃi mรฃi", + "description": "Tแบฅt cแบฃ cรดng cแปฅ, khรดng dรนng thแปญ, khรดng cรณ tฦฐแปng phรญ." }, - "upload": { - "clickToSelect": "Nhแบฅp ฤ‘แปƒ chแปn tแป‡p", - "orDragAndDrop": "hoแบทc kรฉo vร  thแบฃ", - "pdfOrImages": "PDF hoแบทc Hรฌnh แบฃnh", - "filesNeverLeave": "Tแป‡p cแปงa bแบกn khรดng bao giแป rแปi khแปi thiแบฟt bแป‹.", - "addMore": "Thรชm tแป‡p", - "clearAll": "Xรณa tแบฅt cแบฃ" + "noLimits": { + "title": "Khรดng giแป›i hแบกn", + "description": "Sแปญ dแปฅng bao nhiรชu tรนy thรญch, khรดng cรณ giแป›i hแบกn แบฉn." }, - "loader": { - "processing": "ฤang xแปญ lรฝ..." + "batchProcessing": { + "title": "Xแปญ lรฝ hร ng loแบกt", + "description": "Xแปญ lรฝ khรดng giแป›i hแบกn PDF trong mแป™t lแบงn." }, - "alert": { - "title": "Thรดng bรกo", - "ok": "OK" - }, - "preview": { - "title": "Xem trฦฐแป›c tร i liแป‡u", - "downloadAsPdf": "Tแบฃi xuแป‘ng dฦฐแป›i dแบกng PDF", - "close": "ฤรณng" + "lightningFast": { + "title": "Cแปฑc kแปณ nhanh", + "description": "Xแปญ lรฝ PDF ngay lแบญp tแปฉc, khรดng cแบงn chแป ฤ‘แปฃi hay trรฌ hoรฃn." + } + }, + "tools": { + "title": "Bแบฏt ฤ‘แบงu vแป›i", + "toolsLabel": "Cรดng cแปฅ", + "subtitle": "Nhแบฅp vร o mแป™t cรดng cแปฅ ฤ‘แปƒ mแปŸ trรฌnh tแบฃi tแป‡p lรชn", + "searchPlaceholder": "Tรฌm kiแบฟm cรดng cแปฅ (vรญ dแปฅ: 'chia', 'sแบฏp xแบฟp'...)", + "backToTools": "Quay lแบกi Cรดng cแปฅ", + "firstLoadNotice": "Lแบงn tแบฃi ฤ‘แบงu tiรชn sแบฝ mแบฅt mแป™t chรบt thแปi gian vรฌ chรบng tรดi ฤ‘ang tแบฃi xuแป‘ng cรดng cแปฅ chuyแปƒn ฤ‘แป•i. Sau ฤ‘รณ, mแปi lแบงn tแบฃi sแบฝ ngay lแบญp tแปฉc." + }, + "upload": { + "clickToSelect": "Nhแบฅp ฤ‘แปƒ chแปn tแป‡p", + "orDragAndDrop": "hoแบทc kรฉo vร  thแบฃ", + "pdfOrImages": "PDF hoแบทc Hรฌnh แบฃnh", + "filesNeverLeave": "Tแป‡p cแปงa bแบกn khรดng bao giแป rแปi khแปi thiแบฟt bแป‹.", + "addMore": "Thรชm tแป‡p", + "clearAll": "Xรณa tแบฅt cแบฃ" + }, + "loader": { + "processing": "ฤang xแปญ lรฝ..." + }, + "alert": { + "title": "Thรดng bรกo", + "ok": "OK" + }, + "preview": { + "title": "Xem trฦฐแป›c tร i liแป‡u", + "downloadAsPdf": "Tแบฃi xuแป‘ng dฦฐแป›i dแบกng PDF", + "close": "ฤรณng" + }, + "settings": { + "title": "Cร i ฤ‘แบทt", + "shortcuts": "Phรญm tแบฏt", + "preferences": "Tรนy chแปn", + "displayPreferences": "Tรนy chแปn hiแปƒn thแป‹", + "searchShortcuts": "Tรฌm kiแบฟm phรญm tแบฏt...", + "shortcutsInfo": "Nhแบฅn vร  giแปฏ phรญm ฤ‘แปƒ ฤ‘แบทt phรญm tแบฏt. Thay ฤ‘แป•i ฤ‘ฦฐแปฃc lฦฐu tแปฑ ฤ‘แป™ng.", + "shortcutsWarning": "โš ๏ธ Trรกnh cรกc phรญm tแบฏt trรฌnh duyแป‡t phแป• biแบฟn (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N, v.v.) vรฌ chรบng cรณ thแปƒ khรดng hoแบกt ฤ‘แป™ng ฤ‘รกng tin cแบญy.", + "import": "Nhแบญp", + "export": "Xuแบฅt", + "resetToDefaults": "ฤแบทt lแบกi vแป mแบทc ฤ‘แป‹nh", + "fullWidthMode": "Chแบฟ ฤ‘แป™ toร n chiแปu rแป™ng", + "fullWidthDescription": "Sแปญ dแปฅng toร n bแป™ chiแปu rแป™ng mร n hรฌnh cho tแบฅt cแบฃ cรดng cแปฅ thay vรฌ container cฤƒn giแปฏa", + "settingsAutoSaved": "Cร i ฤ‘แบทt ฤ‘ฦฐแปฃc lฦฐu tแปฑ ฤ‘แป™ng", + "clickToSet": "Nhแบฅp ฤ‘แปƒ ฤ‘แบทt", + "pressKeys": "Nhแบฅn phรญm...", + "warnings": { + "alreadyInUse": "Phรญm tแบฏt ฤ‘รฃ ฤ‘ฦฐแปฃc sแปญ dแปฅng", + "assignedTo": "ฤ‘รฃ ฤ‘ฦฐแปฃc gรกn cho:", + "chooseDifferent": "Vui lรฒng chแปn mแป™t phรญm tแบฏt khรกc.", + "reserved": "Cแบฃnh bรกo phรญm tแบฏt dร nh riรชng", + "commonlyUsed": "thฦฐแปng ฤ‘ฦฐแปฃc sแปญ dแปฅng cho:", + "unreliable": "Phรญm tแบฏt nร y cรณ thแปƒ khรดng hoแบกt ฤ‘แป™ng ฤ‘รกng tin cแบญy hoแบทc cรณ thแปƒ xung ฤ‘แป™t vแป›i hร nh vi trรฌnh duyแป‡t/hแป‡ thแป‘ng.", + "useAnyway": "Bแบกn cรณ muแป‘n sแปญ dแปฅng nรณ khรดng?", + "resetTitle": "ฤแบทt lแบกi phรญm tแบฏt", + "resetMessage": "Bแบกn cรณ chแบฏc chแบฏn muแป‘n ฤ‘แบทt lแบกi tแบฅt cแบฃ phรญm tแบฏt vแป mแบทc ฤ‘แป‹nh?

Hร nh ฤ‘แป™ng nร y khรดng thแปƒ hoร n tรกc.", + "importSuccessTitle": "Nhแบญp thร nh cรดng", + "importSuccessMessage": "ฤรฃ nhแบญp phรญm tแบฏt thร nh cรดng!", + "importFailTitle": "Nhแบญp thแบฅt bแบกi", + "importFailMessage": "Khรดng thแปƒ nhแบญp phรญm tแบฏt. ฤแป‹nh dแบกng tแป‡p khรดng hแปฃp lแป‡." + } + }, + "warning": { + "title": "Cแบฃnh bรกo", + "cancel": "Hแปงy", + "proceed": "Tiแบฟp tแปฅc" + }, + "compliance": { + "title": "Dแปฏ liแป‡u cแปงa bแบกn khรดng bao giแป rแปi khแปi thiแบฟt bแป‹", + "weKeep": "Chรบng tรดi giแปฏ", + "yourInfoSafe": "thรดng tin cแปงa bแบกn an toร n", + "byFollowingStandards": "bแบฑng cรกch tuรขn theo cรกc tiรชu chuแบฉn bแบฃo mแบญt toร n cแบงu.", + "processingLocal": "Tแบฅt cแบฃ quรก trรฌnh xแปญ lรฝ diแป…n ra cแปฅc bแป™ trรชn thiแบฟt bแป‹ cแปงa bแบกn.", + "gdpr": { + "title": "Tuรขn thแปง GDPR", + "description": "Bแบฃo vแป‡ dแปฏ liแป‡u cรก nhรขn vร  quyแปn riรชng tฦฐ cแปงa cรกc cรก nhรขn trong Liรชn minh Chรขu ร‚u." }, - "settings": { - "title": "Cร i ฤ‘แบทt", - "shortcuts": "Phรญm tแบฏt", - "preferences": "Tรนy chแปn", - "displayPreferences": "Tรนy chแปn hiแปƒn thแป‹", - "searchShortcuts": "Tรฌm kiแบฟm phรญm tแบฏt...", - "shortcutsInfo": "Nhแบฅn vร  giแปฏ phรญm ฤ‘แปƒ ฤ‘แบทt phรญm tแบฏt. Thay ฤ‘แป•i ฤ‘ฦฐแปฃc lฦฐu tแปฑ ฤ‘แป™ng.", - "shortcutsWarning": "โš ๏ธ Trรกnh cรกc phรญm tแบฏt trรฌnh duyแป‡t phแป• biแบฟn (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N, v.v.) vรฌ chรบng cรณ thแปƒ khรดng hoแบกt ฤ‘แป™ng ฤ‘รกng tin cแบญy.", - "import": "Nhแบญp", - "export": "Xuแบฅt", - "resetToDefaults": "ฤแบทt lแบกi vแป mแบทc ฤ‘แป‹nh", - "fullWidthMode": "Chแบฟ ฤ‘แป™ toร n chiแปu rแป™ng", - "fullWidthDescription": "Sแปญ dแปฅng toร n bแป™ chiแปu rแป™ng mร n hรฌnh cho tแบฅt cแบฃ cรดng cแปฅ thay vรฌ container cฤƒn giแปฏa", - "settingsAutoSaved": "Cร i ฤ‘แบทt ฤ‘ฦฐแปฃc lฦฐu tแปฑ ฤ‘แป™ng", - "clickToSet": "Nhแบฅp ฤ‘แปƒ ฤ‘แบทt", - "pressKeys": "Nhแบฅn phรญm...", - "warnings": { - "alreadyInUse": "Phรญm tแบฏt ฤ‘รฃ ฤ‘ฦฐแปฃc sแปญ dแปฅng", - "assignedTo": "ฤ‘รฃ ฤ‘ฦฐแปฃc gรกn cho:", - "chooseDifferent": "Vui lรฒng chแปn mแป™t phรญm tแบฏt khรกc.", - "reserved": "Cแบฃnh bรกo phรญm tแบฏt dร nh riรชng", - "commonlyUsed": "thฦฐแปng ฤ‘ฦฐแปฃc sแปญ dแปฅng cho:", - "unreliable": "Phรญm tแบฏt nร y cรณ thแปƒ khรดng hoแบกt ฤ‘แป™ng ฤ‘รกng tin cแบญy hoแบทc cรณ thแปƒ xung ฤ‘แป™t vแป›i hร nh vi trรฌnh duyแป‡t/hแป‡ thแป‘ng.", - "useAnyway": "Bแบกn cรณ muแป‘n sแปญ dแปฅng nรณ khรดng?", - "resetTitle": "ฤแบทt lแบกi phรญm tแบฏt", - "resetMessage": "Bแบกn cรณ chแบฏc chแบฏn muแป‘n ฤ‘แบทt lแบกi tแบฅt cแบฃ phรญm tแบฏt vแป mแบทc ฤ‘แป‹nh?

Hร nh ฤ‘แป™ng nร y khรดng thแปƒ hoร n tรกc.", - "importSuccessTitle": "Nhแบญp thร nh cรดng", - "importSuccessMessage": "ฤรฃ nhแบญp phรญm tแบฏt thร nh cรดng!", - "importFailTitle": "Nhแบญp thแบฅt bแบกi", - "importFailMessage": "Khรดng thแปƒ nhแบญp phรญm tแบฏt. ฤแป‹nh dแบกng tแป‡p khรดng hแปฃp lแป‡." - } + "ccpa": { + "title": "Tuรขn thแปง CCPA", + "description": "Trao quyแปn cho cฦฐ dรขn California vแป cรกch thรดng tin cรก nhรขn cแปงa hแป ฤ‘ฦฐแปฃc thu thแบญp, sแปญ dแปฅng vร  chia sแบป." }, - "warning": { - "title": "Cแบฃnh bรกo", - "cancel": "Hแปงy", - "proceed": "Tiแบฟp tแปฅc" + "hipaa": { + "title": "Tuรขn thแปง HIPAA", + "description": "ฤแบทt ra cรกc biแป‡n phรกp bแบฃo vแป‡ ฤ‘แปƒ xแปญ lรฝ thรดng tin sแปฉc khแปe nhแบกy cแบฃm trong hแป‡ thแป‘ng chฤƒm sรณc sแปฉc khแปe Hoa Kแปณ." + } + }, + "faq": { + "title": "Cรขu hแปi", + "questions": "Thฦฐแปng gแบทp", + "isFree": { + "question": "BentoPDF cรณ thแปฑc sแปฑ miแป…n phรญ khรดng?", + "answer": "Cรณ, hoร n toร n miแป…n phรญ. Tแบฅt cแบฃ cรกc cรดng cแปฅ trรชn BentoPDF ฤ‘แปu 100% miแป…n phรญ sแปญ dแปฅng, khรดng giแป›i hแบกn tแป‡p, khรดng cแบงn ฤ‘ฤƒng kรฝ vร  khรดng cรณ watermark. Chรบng tรดi tin rแบฑng mแปi ngฦฐแปi ฤ‘แปu xแปฉng ฤ‘รกng ฤ‘ฦฐแปฃc tiแบฟp cแบญn vแป›i cรกc cรดng cแปฅ PDF ฤ‘ฦกn giแบฃn, mแบกnh mแบฝ mร  khรดng cรณ tฦฐแปng phรญ." }, - "compliance": { - "title": "Dแปฏ liแป‡u cแปงa bแบกn khรดng bao giแป rแปi khแปi thiแบฟt bแป‹", - "weKeep": "Chรบng tรดi giแปฏ", - "yourInfoSafe": "thรดng tin cแปงa bแบกn an toร n", - "byFollowingStandards": "bแบฑng cรกch tuรขn theo cรกc tiรชu chuแบฉn bแบฃo mแบญt toร n cแบงu.", - "processingLocal": "Tแบฅt cแบฃ quรก trรฌnh xแปญ lรฝ diแป…n ra cแปฅc bแป™ trรชn thiแบฟt bแป‹ cแปงa bแบกn.", - "gdpr": { - "title": "Tuรขn thแปง GDPR", - "description": "Bแบฃo vแป‡ dแปฏ liแป‡u cรก nhรขn vร  quyแปn riรชng tฦฐ cแปงa cรกc cรก nhรขn trong Liรชn minh Chรขu ร‚u." - }, - "ccpa": { - "title": "Tuรขn thแปง CCPA", - "description": "Trao quyแปn cho cฦฐ dรขn California vแป cรกch thรดng tin cรก nhรขn cแปงa hแป ฤ‘ฦฐแปฃc thu thแบญp, sแปญ dแปฅng vร  chia sแบป." - }, - "hipaa": { - "title": "Tuรขn thแปง HIPAA", - "description": "ฤแบทt ra cรกc biแป‡n phรกp bแบฃo vแป‡ ฤ‘แปƒ xแปญ lรฝ thรดng tin sแปฉc khแปe nhแบกy cแบฃm trong hแป‡ thแป‘ng chฤƒm sรณc sแปฉc khแปe Hoa Kแปณ." - } + "areFilesSecure": { + "question": "Tแป‡p cแปงa tรดi cรณ an toร n khรดng? Chรบng ฤ‘ฦฐแปฃc xแปญ lรฝ แปŸ ฤ‘รขu?", + "answer": "Tแป‡p cแปงa bแบกn an toร n nhแบฅt cรณ thแปƒ vรฌ chรบng khรดng bao giแป rแปi khแปi mรกy tรญnh cแปงa bแบกn. Tแบฅt cแบฃ quรก trรฌnh xแปญ lรฝ diแป…n ra trแปฑc tiแบฟp trong trรฌnh duyแป‡t web cแปงa bแบกn (phรญa mรกy khรกch). Chรบng tรดi khรดng bao giแป tแบฃi tแป‡p cแปงa bแบกn lรชn mรกy chแปง, vรฌ vแบญy bแบกn duy trรฌ quyแปn riรชng tฦฐ vร  kiแปƒm soรกt hoร n toร n ฤ‘แป‘i vแป›i tร i liแป‡u cแปงa mรฌnh." }, - "faq": { - "title": "Cรขu hแปi", - "questions": "Thฦฐแปng gแบทp", - "isFree": { - "question": "BentoPDF cรณ thแปฑc sแปฑ miแป…n phรญ khรดng?", - "answer": "Cรณ, hoร n toร n miแป…n phรญ. Tแบฅt cแบฃ cรกc cรดng cแปฅ trรชn BentoPDF ฤ‘แปu 100% miแป…n phรญ sแปญ dแปฅng, khรดng giแป›i hแบกn tแป‡p, khรดng cแบงn ฤ‘ฤƒng kรฝ vร  khรดng cรณ watermark. Chรบng tรดi tin rแบฑng mแปi ngฦฐแปi ฤ‘แปu xแปฉng ฤ‘รกng ฤ‘ฦฐแปฃc tiแบฟp cแบญn vแป›i cรกc cรดng cแปฅ PDF ฤ‘ฦกn giแบฃn, mแบกnh mแบฝ mร  khรดng cรณ tฦฐแปng phรญ." - }, - "areFilesSecure": { - "question": "Tแป‡p cแปงa tรดi cรณ an toร n khรดng? Chรบng ฤ‘ฦฐแปฃc xแปญ lรฝ แปŸ ฤ‘รขu?", - "answer": "Tแป‡p cแปงa bแบกn an toร n nhแบฅt cรณ thแปƒ vรฌ chรบng khรดng bao giแป rแปi khแปi mรกy tรญnh cแปงa bแบกn. Tแบฅt cแบฃ quรก trรฌnh xแปญ lรฝ diแป…n ra trแปฑc tiแบฟp trong trรฌnh duyแป‡t web cแปงa bแบกn (phรญa mรกy khรกch). Chรบng tรดi khรดng bao giแป tแบฃi tแป‡p cแปงa bแบกn lรชn mรกy chแปง, vรฌ vแบญy bแบกn duy trรฌ quyแปn riรชng tฦฐ vร  kiแปƒm soรกt hoร n toร n ฤ‘แป‘i vแป›i tร i liแป‡u cแปงa mรฌnh." - }, - "platforms": { - "question": "Nรณ cรณ hoแบกt ฤ‘แป™ng trรชn Mac, Windows vร  Mobile khรดng?", - "answer": "Cรณ! Vรฌ BentoPDF chแบกy hoร n toร n trong trรฌnh duyแป‡t cแปงa bแบกn, nรณ hoแบกt ฤ‘แป™ng trรชn bแบฅt kแปณ hแป‡ ฤ‘iแปu hร nh nร o cรณ trรฌnh duyแป‡t web hiแป‡n ฤ‘แบกi, bao gแป“m Windows, macOS, Linux, iOS vร  Android." - }, - "gdprCompliant": { - "question": "BentoPDF cรณ tuรขn thแปง GDPR khรดng?", - "answer": "Cรณ. BentoPDF hoร n toร n tuรขn thแปง GDPR. Vรฌ tแบฅt cแบฃ quรก trรฌnh xแปญ lรฝ tแป‡p diแป…n ra cแปฅc bแป™ trong trรฌnh duyแป‡t cแปงa bแบกn vร  chรบng tรดi khรดng bao giแป thu thแบญp hoแบทc truyแปn tแป‡p cแปงa bแบกn ฤ‘แบฟn bแบฅt kแปณ mรกy chแปง nร o, chรบng tรดi khรดng cรณ quyแปn truy cแบญp vร o dแปฏ liแป‡u cแปงa bแบกn. ฤiแปu nร y ฤ‘แบฃm bแบฃo bแบกn luรดn kiแปƒm soรกt tร i liแป‡u cแปงa mรฌnh." - }, - "dataStorage": { - "question": "Bแบกn cรณ lฦฐu trแปฏ hoแบทc theo dรตi bแบฅt kแปณ tแป‡p nร o cแปงa tรดi khรดng?", - "answer": "Khรดng. Chรบng tรดi khรดng bao giแป lฦฐu trแปฏ, theo dรตi hoแบทc ghi nhแบญt kรฝ tแป‡p cแปงa bแบกn. Mแปi thแปฉ bแบกn lร m trรชn BentoPDF diแป…n ra trong bแป™ nhแป› trรฌnh duyแป‡t cแปงa bแบกn vร  biแบฟn mแบฅt khi bแบกn ฤ‘รณng trang. Khรดng cรณ tแบฃi lรชn, khรดng cรณ nhแบญt kรฝ lแป‹ch sแปญ vร  khรดng cรณ mรกy chแปง liรชn quan." - }, - "different": { - "question": "ฤiแปu gรฌ lร m cho BentoPDF khรกc biแป‡t so vแป›i cรกc cรดng cแปฅ PDF khรกc?", - "answer": "Hแบงu hแบฟt cรกc cรดng cแปฅ PDF tแบฃi tแป‡p cแปงa bแบกn lรชn mรกy chแปง ฤ‘แปƒ xแปญ lรฝ. BentoPDF khรดng bao giแป lร m ฤ‘iแปu ฤ‘รณ. Chรบng tรดi sแปญ dแปฅng cรดng nghแป‡ web hiแป‡n ฤ‘แบกi, an toร n ฤ‘แปƒ xแปญ lรฝ tแป‡p cแปงa bแบกn trแปฑc tiแบฟp trong trรฌnh duyแป‡t. ฤiแปu nร y cรณ nghฤฉa lร  hiแป‡u suแบฅt nhanh hฦกn, quyแปn riรชng tฦฐ mแบกnh mแบฝ hฦกn vร  hoร n toร n yรชn tรขm." - }, - "browserBased": { - "question": "Xแปญ lรฝ dแปฑa trรชn trรฌnh duyแป‡t giแปฏ tรดi an toร n nhฦฐ thแบฟ nร o?", - "answer": "Bแบฑng cรกch chแบกy hoร n toร n bรชn trong trรฌnh duyแป‡t cแปงa bแบกn, BentoPDF ฤ‘แบฃm bแบฃo rแบฑng tแป‡p cแปงa bแบกn khรดng bao giแป rแปi khแปi thiแบฟt bแป‹. ฤiแปu nร y loแบกi bแป cรกc rแปงi ro vแป hack mรกy chแปง, vi phแบกm dแปฏ liแป‡u hoแบทc truy cแบญp trรกi phรฉp. Tแป‡p cแปงa bแบกn vแบซn thuแป™c vแป bแบกnโ€”luรดn luรดn." - }, - "analytics": { - "question": "Bแบกn cรณ sแปญ dแปฅng cookie hoแบทc phรขn tรญch ฤ‘แปƒ theo dรตi tรดi khรดng?", - "answer": "Chรบng tรดi quan tรขm ฤ‘แบฟn quyแปn riรชng tฦฐ cแปงa bแบกn. BentoPDF khรดng theo dรตi thรดng tin cรก nhรขn. Chรบng tรดi chแป‰ sแปญ dแปฅng Simple Analytics ฤ‘แปƒ xem sแป‘ lฦฐแปฃt truy cแบญp แบฉn danh. ฤiแปu nร y cรณ nghฤฉa lร  chรบng tรดi cรณ thแปƒ biแบฟt cรณ bao nhiรชu ngฦฐแปi dรนng truy cแบญp trang web cแปงa chรบng tรดi, nhฦฐng chรบng tรดi khรดng bao giแป biแบฟt bแบกn lร  ai. Simple Analytics hoร n toร n tuรขn thแปง GDPR vร  tรดn trแปng quyแปn riรชng tฦฐ cแปงa bแบกn." - } + "platforms": { + "question": "Nรณ cรณ hoแบกt ฤ‘แป™ng trรชn Mac, Windows vร  Mobile khรดng?", + "answer": "Cรณ! Vรฌ BentoPDF chแบกy hoร n toร n trong trรฌnh duyแป‡t cแปงa bแบกn, nรณ hoแบกt ฤ‘แป™ng trรชn bแบฅt kแปณ hแป‡ ฤ‘iแปu hร nh nร o cรณ trรฌnh duyแป‡t web hiแป‡n ฤ‘แบกi, bao gแป“m Windows, macOS, Linux, iOS vร  Android." }, - "testimonials": { - "title": "Ngฦฐแปi dรนng", - "users": "cแปงa chรบng tรดi", - "say": "nรณi gรฌ" + "gdprCompliant": { + "question": "BentoPDF cรณ tuรขn thแปง GDPR khรดng?", + "answer": "Cรณ. BentoPDF hoร n toร n tuรขn thแปง GDPR. Vรฌ tแบฅt cแบฃ quรก trรฌnh xแปญ lรฝ tแป‡p diแป…n ra cแปฅc bแป™ trong trรฌnh duyแป‡t cแปงa bแบกn vร  chรบng tรดi khรดng bao giแป thu thแบญp hoแบทc truyแปn tแป‡p cแปงa bแบกn ฤ‘แบฟn bแบฅt kแปณ mรกy chแปง nร o, chรบng tรดi khรดng cรณ quyแปn truy cแบญp vร o dแปฏ liแป‡u cแปงa bแบกn. ฤiแปu nร y ฤ‘แบฃm bแบฃo bแบกn luรดn kiแปƒm soรกt tร i liแป‡u cแปงa mรฌnh." }, - "support": { - "title": "Thรญch cรดng viแป‡c cแปงa tรดi?", - "description": "BentoPDF lร  mแป™t dแปฑ รกn ฤ‘am mรช, ฤ‘ฦฐแปฃc xรขy dแปฑng ฤ‘แปƒ cung cแบฅp bแป™ cรดng cแปฅ PDF miแป…n phรญ, riรชng tฦฐ vร  mแบกnh mแบฝ cho mแปi ngฦฐแปi. Nแบฟu bแบกn thแบฅy nรณ hแปฏu รญch, hรฃy cรขn nhแบฏc hแป— trแปฃ phรกt triแปƒn cแปงa nรณ. Mแป—i ly cร  phรช ฤ‘แปu giรบp รญch!", - "buyMeCoffee": "Mua cho tรดi mแป™t ly cร  phรช" + "dataStorage": { + "question": "Bแบกn cรณ lฦฐu trแปฏ hoแบทc theo dรตi bแบฅt kแปณ tแป‡p nร o cแปงa tรดi khรดng?", + "answer": "Khรดng. Chรบng tรดi khรดng bao giแป lฦฐu trแปฏ, theo dรตi hoแบทc ghi nhแบญt kรฝ tแป‡p cแปงa bแบกn. Mแปi thแปฉ bแบกn lร m trรชn BentoPDF diแป…n ra trong bแป™ nhแป› trรฌnh duyแป‡t cแปงa bแบกn vร  biแบฟn mแบฅt khi bแบกn ฤ‘รณng trang. Khรดng cรณ tแบฃi lรชn, khรดng cรณ nhแบญt kรฝ lแป‹ch sแปญ vร  khรดng cรณ mรกy chแปง liรชn quan." }, - "footer": { - "copyright": "ยฉ 2025 BentoPDF. Bแบฃo lฦฐu mแปi quyแปn.", - "version": "Phiรชn bแบฃn", - "company": "Cรดng ty", - "aboutUs": "Vแป chรบng tรดi", - "faqLink": "FAQ", - "contactUs": "Liรชn hแป‡", - "legal": "Phรกp lรฝ", - "termsAndConditions": "ฤiแปu khoแบฃn vร  ฤiแปu kiแป‡n", - "privacyPolicy": "Chรญnh sรกch Bแบฃo mแบญt", - "followUs": "Theo dรตi chรบng tรดi" + "different": { + "question": "ฤiแปu gรฌ lร m cho BentoPDF khรกc biแป‡t so vแป›i cรกc cรดng cแปฅ PDF khรกc?", + "answer": "Hแบงu hแบฟt cรกc cรดng cแปฅ PDF tแบฃi tแป‡p cแปงa bแบกn lรชn mรกy chแปง ฤ‘แปƒ xแปญ lรฝ. BentoPDF khรดng bao giแป lร m ฤ‘iแปu ฤ‘รณ. Chรบng tรดi sแปญ dแปฅng cรดng nghแป‡ web hiแป‡n ฤ‘แบกi, an toร n ฤ‘แปƒ xแปญ lรฝ tแป‡p cแปงa bแบกn trแปฑc tiแบฟp trong trรฌnh duyแป‡t. ฤiแปu nร y cรณ nghฤฉa lร  hiแป‡u suแบฅt nhanh hฦกn, quyแปn riรชng tฦฐ mแบกnh mแบฝ hฦกn vร  hoร n toร n yรชn tรขm." }, - "merge": { - "title": "Gแป™p PDF", - "description": "Kแบฟt hแปฃp toร n bแป™ tแป‡p hoแบทc chแปn cรกc trang cแปฅ thแปƒ ฤ‘แปƒ gแป™p thร nh tร i liแป‡u mแป›i.", - "fileMode": "Chแบฟ ฤ‘แป™ tแป‡p", - "pageMode": "Chแบฟ ฤ‘แป™ trang", - "howItWorks": "Cรกch hoแบกt ฤ‘แป™ng:", - "fileModeInstructions": [ - "Nhแบฅp vร  kรฉo biแปƒu tฦฐแปฃng ฤ‘แปƒ thay ฤ‘แป•i thแปฉ tแปฑ cรกc tแป‡p.", - "Trong hแป™p \"Trang\" cho mแป—i tแป‡p, bแบกn cรณ thแปƒ chแป‰ ฤ‘แป‹nh phแบกm vi (vรญ dแปฅ: \"1-3, 5\") ฤ‘แปƒ chแป‰ gแป™p nhแปฏng trang ฤ‘รณ.", - "ฤแปƒ trแป‘ng hแป™p \"Trang\" ฤ‘แปƒ bao gแป“m tแบฅt cแบฃ cรกc trang tแปซ tแป‡p ฤ‘รณ." - ], - "pageModeInstructions": [ - "Tแบฅt cแบฃ cรกc trang tแปซ PDF ฤ‘รฃ tแบฃi lรชn cแปงa bแบกn ฤ‘ฦฐแปฃc hiแปƒn thแป‹ bรชn dฦฐแป›i.", - "Chแป‰ cแบงn kรฉo vร  thแบฃ cรกc hรฌnh thu nhแป trang riรชng lแบป ฤ‘แปƒ tแบกo thแปฉ tแปฑ chรญnh xรกc bแบกn muแป‘n cho tแป‡p mแป›i cแปงa mรฌnh." - ], - "mergePdfs": "Gแป™p PDF" + "browserBased": { + "question": "Xแปญ lรฝ dแปฑa trรชn trรฌnh duyแป‡t giแปฏ tรดi an toร n nhฦฐ thแบฟ nร o?", + "answer": "Bแบฑng cรกch chแบกy hoร n toร n bรชn trong trรฌnh duyแป‡t cแปงa bแบกn, BentoPDF ฤ‘แบฃm bแบฃo rแบฑng tแป‡p cแปงa bแบกn khรดng bao giแป rแปi khแปi thiแบฟt bแป‹. ฤiแปu nร y loแบกi bแป cรกc rแปงi ro vแป hack mรกy chแปง, vi phแบกm dแปฏ liแป‡u hoแบทc truy cแบญp trรกi phรฉp. Tแป‡p cแปงa bแบกn vแบซn thuแป™c vแป bแบกnโ€”luรดn luรดn." }, - "common": { - "page": "Trang", - "pages": "Trang", - "of": "cแปงa", - "download": "Tแบฃi xuแป‘ng", - "cancel": "Hแปงy", - "save": "Lฦฐu", - "delete": "Xรณa", - "edit": "Chแป‰nh sแปญa", - "add": "Thรชm", - "remove": "Xรณa", - "loading": "ฤang tแบฃi...", - "error": "Lแป—i", - "success": "Thร nh cรดng", - "file": "Tแป‡p", - "files": "Tแป‡p" + "analytics": { + "question": "Bแบกn cรณ sแปญ dแปฅng cookie hoแบทc phรขn tรญch ฤ‘แปƒ theo dรตi tรดi khรดng?", + "answer": "Chรบng tรดi quan tรขm ฤ‘แบฟn quyแปn riรชng tฦฐ cแปงa bแบกn. BentoPDF khรดng theo dรตi thรดng tin cรก nhรขn. Chรบng tรดi chแป‰ sแปญ dแปฅng Simple Analytics ฤ‘แปƒ xem sแป‘ lฦฐแปฃt truy cแบญp แบฉn danh. ฤiแปu nร y cรณ nghฤฉa lร  chรบng tรดi cรณ thแปƒ biแบฟt cรณ bao nhiรชu ngฦฐแปi dรนng truy cแบญp trang web cแปงa chรบng tรดi, nhฦฐng chรบng tรดi khรดng bao giแป biแบฟt bแบกn lร  ai. Simple Analytics hoร n toร n tuรขn thแปง GDPR vร  tรดn trแปng quyแปn riรชng tฦฐ cแปงa bแบกn." + } + }, + "testimonials": { + "title": "Ngฦฐแปi dรนng", + "users": "cแปงa chรบng tรดi", + "say": "nรณi gรฌ" + }, + "support": { + "title": "Thรญch cรดng viแป‡c cแปงa tรดi?", + "description": "BentoPDF lร  mแป™t dแปฑ รกn ฤ‘am mรช, ฤ‘ฦฐแปฃc xรขy dแปฑng ฤ‘แปƒ cung cแบฅp bแป™ cรดng cแปฅ PDF miแป…n phรญ, riรชng tฦฐ vร  mแบกnh mแบฝ cho mแปi ngฦฐแปi. Nแบฟu bแบกn thแบฅy nรณ hแปฏu รญch, hรฃy cรขn nhแบฏc hแป— trแปฃ phรกt triแปƒn cแปงa nรณ. Mแป—i ly cร  phรช ฤ‘แปu giรบp รญch!", + "buyMeCoffee": "Mua cho tรดi mแป™t ly cร  phรช" + }, + "footer": { + "copyright": "ยฉ 2026 BentoPDF. Bแบฃo lฦฐu mแปi quyแปn.", + "version": "Phiรชn bแบฃn", + "company": "Cรดng ty", + "aboutUs": "Vแป chรบng tรดi", + "faqLink": "FAQ", + "contactUs": "Liรชn hแป‡", + "legal": "Phรกp lรฝ", + "termsAndConditions": "ฤiแปu khoแบฃn vร  ฤiแปu kiแป‡n", + "privacyPolicy": "Chรญnh sรกch Bแบฃo mแบญt", + "followUs": "Theo dรตi chรบng tรดi" + }, + "merge": { + "title": "Gแป™p PDF", + "description": "Kแบฟt hแปฃp toร n bแป™ tแป‡p hoแบทc chแปn cรกc trang cแปฅ thแปƒ ฤ‘แปƒ gแป™p thร nh tร i liแป‡u mแป›i.", + "fileMode": "Chแบฟ ฤ‘แป™ tแป‡p", + "pageMode": "Chแบฟ ฤ‘แป™ trang", + "howItWorks": "Cรกch hoแบกt ฤ‘แป™ng:", + "fileModeInstructions": [ + "Nhแบฅp vร  kรฉo biแปƒu tฦฐแปฃng ฤ‘แปƒ thay ฤ‘แป•i thแปฉ tแปฑ cรกc tแป‡p.", + "Trong hแป™p \"Trang\" cho mแป—i tแป‡p, bแบกn cรณ thแปƒ chแป‰ ฤ‘แป‹nh phแบกm vi (vรญ dแปฅ: \"1-3, 5\") ฤ‘แปƒ chแป‰ gแป™p nhแปฏng trang ฤ‘รณ.", + "ฤแปƒ trแป‘ng hแป™p \"Trang\" ฤ‘แปƒ bao gแป“m tแบฅt cแบฃ cรกc trang tแปซ tแป‡p ฤ‘รณ." + ], + "pageModeInstructions": [ + "Tแบฅt cแบฃ cรกc trang tแปซ PDF ฤ‘รฃ tแบฃi lรชn cแปงa bแบกn ฤ‘ฦฐแปฃc hiแปƒn thแป‹ bรชn dฦฐแป›i.", + "Chแป‰ cแบงn kรฉo vร  thแบฃ cรกc hรฌnh thu nhแป trang riรชng lแบป ฤ‘แปƒ tแบกo thแปฉ tแปฑ chรญnh xรกc bแบกn muแป‘n cho tแป‡p mแป›i cแปงa mรฌnh." + ], + "mergePdfs": "Gแป™p PDF" + }, + "common": { + "page": "Trang", + "pages": "Trang", + "of": "cแปงa", + "download": "Tแบฃi xuแป‘ng", + "cancel": "Hแปงy", + "save": "Lฦฐu", + "delete": "Xรณa", + "edit": "Chแป‰nh sแปญa", + "add": "Thรชm", + "remove": "Xรณa", + "loading": "ฤang tแบฃi...", + "error": "Lแป—i", + "success": "Thร nh cรดng", + "file": "Tแป‡p", + "files": "Tแป‡p" + }, + "about": { + "hero": { + "title": "Chรบng tรดi tin rแบฑng cรดng cแปฅ PDF nรชn", + "subtitle": "nhanh, riรชng tฦฐ vร  miแป…n phรญ.", + "noCompromises": "Khรดng thแปa hiแป‡p." }, - "about": { - "hero": { - "title": "Chรบng tรดi tin rแบฑng cรดng cแปฅ PDF nรชn", - "subtitle": "nhanh, riรชng tฦฐ vร  miแป…n phรญ.", - "noCompromises": "Khรดng thแปa hiแป‡p." - }, - "mission": { - "title": "Sแปฉ mแป‡nh cแปงa chรบng tรดi", - "description": "Cung cแบฅp bแป™ cรดng cแปฅ PDF toร n diแป‡n nhแบฅt tรดn trแปng quyแปn riรชng tฦฐ cแปงa bแบกn vร  khรดng bao giแป yรชu cแบงu thanh toรกn. Chรบng tรดi tin rแบฑng cรกc cรดng cแปฅ tร i liแป‡u thiแบฟt yแบฟu nรชn cรณ thแปƒ truy cแบญp ฤ‘ฦฐแปฃc cho mแปi ngฦฐแปi, แปŸ mแปi nฦกi, khรดng cรณ rร o cแบฃn." - }, - "philosophy": { - "label": "Triแบฟt lรฝ cแป‘t lรตi cแปงa chรบng tรดi", - "title": "Quyแปn riรชng tฦฐ trฦฐแป›c tiรชn. Luรดn luรดn.", - "description": "Trong thแปi ฤ‘แบกi mร  dแปฏ liแป‡u lร  hร ng hรณa, chรบng tรดi cรณ cรกch tiแบฟp cแบญn khรกc. Tแบฅt cแบฃ quรก trรฌnh xแปญ lรฝ cho cรกc cรดng cแปฅ Bentopdf diแป…n ra cแปฅc bแป™ trong trรฌnh duyแป‡t cแปงa bแบกn. ฤiแปu nร y cรณ nghฤฉa lร  tแป‡p cแปงa bแบกn khรดng bao giแป chแบกm vร o mรกy chแปง cแปงa chรบng tรดi, chรบng tรดi khรดng bao giแป thแบฅy tร i liแป‡u cแปงa bแบกn vร  chรบng tรดi khรดng theo dรตi nhแปฏng gรฌ bแบกn lร m. Tร i liแป‡u cแปงa bแบกn vแบซn hoร n toร n vร  rรต rร ng lร  riรชng tฦฐ. ฤรณ khรดng chแป‰ lร  mแป™t tรญnh nฤƒng; ฤ‘รณ lร  nแปn tแบฃng cแปงa chรบng tรดi." - }, - "whyBentopdf": { - "title": "Tแบกi sao chแปn", - "speed": { - "title": "ฤฦฐแปฃc xรขy dแปฑng cho tแป‘c ฤ‘แป™", - "description": "Khรดng cแบงn chแป tแบฃi lรชn hoแบทc tแบฃi xuแป‘ng lรชn mรกy chแปง. Bแบฑng cรกch xแปญ lรฝ tแป‡p trแปฑc tiแบฟp trong trรฌnh duyแป‡t cแปงa bแบกn bแบฑng cรดng nghแป‡ web hiแป‡n ฤ‘แบกi nhฦฐ WebAssembly, chรบng tรดi cung cแบฅp tแป‘c ฤ‘แป™ vรด song cho tแบฅt cแบฃ cรกc cรดng cแปฅ cแปงa chรบng tรดi." - }, - "free": { - "title": "Hoร n toร n miแป…n phรญ", - "description": "Khรดng dรนng thแปญ, khรดng ฤ‘ฤƒng kรฝ, khรดng phรญ แบฉn vร  khรดng cรณ tรญnh nฤƒng \"premium\" bแป‹ giแปฏ lแบกi. Chรบng tรดi tin rแบฑng cรกc cรดng cแปฅ PDF mแบกnh mแบฝ nรชn lร  tiแป‡n รญch cรดng cแป™ng, khรดng phแบฃi trung tรขm lแปฃi nhuแบญn." - }, - "noAccount": { - "title": "Khรดng cแบงn tร i khoแบฃn", - "description": "Bแบฏt ฤ‘แบงu sแปญ dแปฅng bแบฅt kแปณ cรดng cแปฅ nร o ngay lแบญp tแปฉc. Chรบng tรดi khรดng cแบงn email, mแบญt khแบฉu hoแบทc bแบฅt kแปณ thรดng tin cรก nhรขn nร o cแปงa bแบกn. Quy trรฌnh lร m viแป‡c cแปงa bแบกn nรชn khรดng ma sรกt vร  แบฉn danh." - }, - "openSource": { - "title": "Tinh thแบงn mรฃ nguแป“n mแปŸ", - "description": "ฤฦฐแปฃc xรขy dแปฑng vแป›i tinh thแบงn minh bแบกch. Chรบng tรดi tแบญn dแปฅng cรกc thฦฐ viแป‡n mรฃ nguแป“n mแปŸ tuyแป‡t vแปi nhฦฐ PDF-lib vร  PDF.js, vร  tin vร o nแป— lแปฑc do cแป™ng ฤ‘แป“ng thรบc ฤ‘แบฉy ฤ‘แปƒ lร m cho cรกc cรดng cแปฅ mแบกnh mแบฝ cรณ thแปƒ truy cแบญp ฤ‘ฦฐแปฃc cho mแปi ngฦฐแปi." - } - }, - "cta": { - "title": "Sแบตn sร ng bแบฏt ฤ‘แบงu?", - "description": "Tham gia cรนng hร ng nghรฌn ngฦฐแปi dรนng tin tฦฐแปŸng Bentopdf cho nhu cแบงu tร i liแป‡u hร ng ngร y cแปงa hแป. Trแบฃi nghiแป‡m sแปฑ khรกc biแป‡t mร  quyแปn riรชng tฦฐ vร  hiแป‡u suแบฅt cรณ thแปƒ tแบกo ra.", - "button": "Khรกm phรก tแบฅt cแบฃ cรดng cแปฅ" - } + "mission": { + "title": "Sแปฉ mแป‡nh cแปงa chรบng tรดi", + "description": "Cung cแบฅp bแป™ cรดng cแปฅ PDF toร n diแป‡n nhแบฅt tรดn trแปng quyแปn riรชng tฦฐ cแปงa bแบกn vร  khรดng bao giแป yรชu cแบงu thanh toรกn. Chรบng tรดi tin rแบฑng cรกc cรดng cแปฅ tร i liแป‡u thiแบฟt yแบฟu nรชn cรณ thแปƒ truy cแบญp ฤ‘ฦฐแปฃc cho mแปi ngฦฐแปi, แปŸ mแปi nฦกi, khรดng cรณ rร o cแบฃn." }, - "contact": { - "title": "Liรชn hแป‡", - "subtitle": "Chรบng tรดi rแบฅt muแป‘n nghe tแปซ bแบกn. Cho dรน bแบกn cรณ cรขu hแปi, phแบฃn hแป“i hay yรชu cแบงu tรญnh nฤƒng, vui lรฒng ฤ‘แปซng ngแบงn ngแบกi liรชn hแป‡.", - "email": "Bแบกn cรณ thแปƒ liรชn hแป‡ trแปฑc tiแบฟp vแป›i chรบng tรดi qua email tแบกi:" + "philosophy": { + "label": "Triแบฟt lรฝ cแป‘t lรตi cแปงa chรบng tรดi", + "title": "Quyแปn riรชng tฦฐ trฦฐแป›c tiรชn. Luรดn luรดn.", + "description": "Trong thแปi ฤ‘แบกi mร  dแปฏ liแป‡u lร  hร ng hรณa, chรบng tรดi cรณ cรกch tiแบฟp cแบญn khรกc. Tแบฅt cแบฃ quรก trรฌnh xแปญ lรฝ cho cรกc cรดng cแปฅ Bentopdf diแป…n ra cแปฅc bแป™ trong trรฌnh duyแป‡t cแปงa bแบกn. ฤiแปu nร y cรณ nghฤฉa lร  tแป‡p cแปงa bแบกn khรดng bao giแป chแบกm vร o mรกy chแปง cแปงa chรบng tรดi, chรบng tรดi khรดng bao giแป thแบฅy tร i liแป‡u cแปงa bแบกn vร  chรบng tรดi khรดng theo dรตi nhแปฏng gรฌ bแบกn lร m. Tร i liแป‡u cแปงa bแบกn vแบซn hoร n toร n vร  rรต rร ng lร  riรชng tฦฐ. ฤรณ khรดng chแป‰ lร  mแป™t tรญnh nฤƒng; ฤ‘รณ lร  nแปn tแบฃng cแปงa chรบng tรดi." }, - "licensing": { - "title": "Giแบฅy phรฉp cho", - "subtitle": "Chแปn giแบฅy phรฉp phรน hแปฃp vแป›i nhu cแบงu cแปงa bแบกn." + "whyBentopdf": { + "title": "Tแบกi sao chแปn", + "speed": { + "title": "ฤฦฐแปฃc xรขy dแปฑng cho tแป‘c ฤ‘แป™", + "description": "Khรดng cแบงn chแป tแบฃi lรชn hoแบทc tแบฃi xuแป‘ng lรชn mรกy chแปง. Bแบฑng cรกch xแปญ lรฝ tแป‡p trแปฑc tiแบฟp trong trรฌnh duyแป‡t cแปงa bแบกn bแบฑng cรดng nghแป‡ web hiแป‡n ฤ‘แบกi nhฦฐ WebAssembly, chรบng tรดi cung cแบฅp tแป‘c ฤ‘แป™ vรด song cho tแบฅt cแบฃ cรกc cรดng cแปฅ cแปงa chรบng tรดi." + }, + "free": { + "title": "Hoร n toร n miแป…n phรญ", + "description": "Khรดng dรนng thแปญ, khรดng ฤ‘ฤƒng kรฝ, khรดng phรญ แบฉn vร  khรดng cรณ tรญnh nฤƒng \"premium\" bแป‹ giแปฏ lแบกi. Chรบng tรดi tin rแบฑng cรกc cรดng cแปฅ PDF mแบกnh mแบฝ nรชn lร  tiแป‡n รญch cรดng cแป™ng, khรดng phแบฃi trung tรขm lแปฃi nhuแบญn." + }, + "noAccount": { + "title": "Khรดng cแบงn tร i khoแบฃn", + "description": "Bแบฏt ฤ‘แบงu sแปญ dแปฅng bแบฅt kแปณ cรดng cแปฅ nร o ngay lแบญp tแปฉc. Chรบng tรดi khรดng cแบงn email, mแบญt khแบฉu hoแบทc bแบฅt kแปณ thรดng tin cรก nhรขn nร o cแปงa bแบกn. Quy trรฌnh lร m viแป‡c cแปงa bแบกn nรชn khรดng ma sรกt vร  แบฉn danh." + }, + "openSource": { + "title": "Tinh thแบงn mรฃ nguแป“n mแปŸ", + "description": "ฤฦฐแปฃc xรขy dแปฑng vแป›i tinh thแบงn minh bแบกch. Chรบng tรดi tแบญn dแปฅng cรกc thฦฐ viแป‡n mรฃ nguแป“n mแปŸ tuyแป‡t vแปi nhฦฐ PDF-lib vร  PDF.js, vร  tin vร o nแป— lแปฑc do cแป™ng ฤ‘แป“ng thรบc ฤ‘แบฉy ฤ‘แปƒ lร m cho cรกc cรดng cแปฅ mแบกnh mแบฝ cรณ thแปƒ truy cแบญp ฤ‘ฦฐแปฃc cho mแปi ngฦฐแปi." + } }, - "multiTool": { - "uploadPdfs": "Tแบฃi lรชn PDF", - "upload": "Tแบฃi lรชn", - "addBlankPage": "Thรชm trang trแป‘ng", - "edit": "Chแป‰nh sแปญa:", - "undo": "Hoร n tรกc", - "redo": "Lร m lแบกi", - "reset": "ฤแบทt lแบกi", - "selection": "Chแปn:", - "selectAll": "Chแปn tแบฅt cแบฃ", - "deselectAll": "Bแป chแปn tแบฅt cแบฃ", - "rotate": "Xoay:", - "rotateLeft": "Trรกi", - "rotateRight": "Phแบฃi", - "transform": "Biแบฟn ฤ‘แป•i:", - "duplicate": "Nhรขn bแบฃn", - "split": "Chia", - "clear": "Xรณa:", - "delete": "Xรณa", - "download": "Tแบฃi xuแป‘ng:", - "downloadSelected": "Tแบฃi xuแป‘ng ฤ‘รฃ chแปn", - "exportPdf": "Xuแบฅt PDF", - "uploadPdfFiles": "Chแปn tแป‡p PDF", - "dragAndDrop": "Kรฉo vร  thแบฃ tแป‡p PDF vร o ฤ‘รขy, hoแบทc nhแบฅp ฤ‘แปƒ chแปn", - "selectFiles": "Chแปn tแป‡p", - "renderingPages": "ฤang kแบฟt xuแบฅt trang...", - "actions": { - "duplicatePage": "Nhรขn bแบฃn trang nร y", - "deletePage": "Xรณa trang nร y", - "insertPdf": "Chรจn PDF sau trang nร y", - "toggleSplit": "Bแบญt/tแบฏt chia sau trang nร y" - }, - "pleaseWait": "Vui lรฒng ฤ‘แปฃi", - "pagesRendering": "Cรกc trang vแบซn ฤ‘ang ฤ‘ฦฐแปฃc kแบฟt xuแบฅt. Vui lรฒng ฤ‘แปฃi...", - "noPagesSelected": "Chฦฐa chแปn trang nร o", - "selectOnePage": "Vui lรฒng chแปn รญt nhแบฅt mแป™t trang ฤ‘แปƒ tแบฃi xuแป‘ng.", - "noPages": "Khรดng cรณ trang", - "noPagesToExport": "Khรดng cรณ trang nร o ฤ‘แปƒ xuแบฅt.", - "renderingTitle": "ฤang kแบฟt xuแบฅt xem trฦฐแป›c trang", - "errorRendering": "Khรดng thแปƒ kแบฟt xuแบฅt hรฌnh thu nhแป trang", - "error": "Lแป—i", - "failedToLoad": "Khรดng thแปƒ tแบฃi" + "cta": { + "title": "Sแบตn sร ng bแบฏt ฤ‘แบงu?", + "description": "Tham gia cรนng hร ng nghรฌn ngฦฐแปi dรนng tin tฦฐแปŸng Bentopdf cho nhu cแบงu tร i liแป‡u hร ng ngร y cแปงa hแป. Trแบฃi nghiแป‡m sแปฑ khรกc biแป‡t mร  quyแปn riรชng tฦฐ vร  hiแป‡u suแบฅt cรณ thแปƒ tแบกo ra.", + "button": "Khรกm phรก tแบฅt cแบฃ cรดng cแปฅ" } -} \ No newline at end of file + }, + "contact": { + "title": "Liรชn hแป‡", + "subtitle": "Chรบng tรดi rแบฅt muแป‘n nghe tแปซ bแบกn. Cho dรน bแบกn cรณ cรขu hแปi, phแบฃn hแป“i hay yรชu cแบงu tรญnh nฤƒng, vui lรฒng ฤ‘แปซng ngแบงn ngแบกi liรชn hแป‡.", + "email": "Bแบกn cรณ thแปƒ liรชn hแป‡ trแปฑc tiแบฟp vแป›i chรบng tรดi qua email tแบกi:" + }, + "licensing": { + "title": "Giแบฅy phรฉp cho", + "subtitle": "Chแปn giแบฅy phรฉp phรน hแปฃp vแป›i nhu cแบงu cแปงa bแบกn." + }, + "multiTool": { + "uploadPdfs": "Tแบฃi lรชn PDF", + "upload": "Tแบฃi lรชn", + "addBlankPage": "Thรชm trang trแป‘ng", + "edit": "Chแป‰nh sแปญa:", + "undo": "Hoร n tรกc", + "redo": "Lร m lแบกi", + "reset": "ฤแบทt lแบกi", + "selection": "Chแปn:", + "selectAll": "Chแปn tแบฅt cแบฃ", + "deselectAll": "Bแป chแปn tแบฅt cแบฃ", + "rotate": "Xoay:", + "rotateLeft": "Trรกi", + "rotateRight": "Phแบฃi", + "transform": "Biแบฟn ฤ‘แป•i:", + "duplicate": "Nhรขn bแบฃn", + "split": "Chia", + "clear": "Xรณa:", + "delete": "Xรณa", + "download": "Tแบฃi xuแป‘ng:", + "downloadSelected": "Tแบฃi xuแป‘ng ฤ‘รฃ chแปn", + "exportPdf": "Xuแบฅt PDF", + "uploadPdfFiles": "Chแปn tแป‡p PDF", + "dragAndDrop": "Kรฉo vร  thแบฃ tแป‡p PDF vร o ฤ‘รขy, hoแบทc nhแบฅp ฤ‘แปƒ chแปn", + "selectFiles": "Chแปn tแป‡p", + "renderingPages": "ฤang kแบฟt xuแบฅt trang...", + "actions": { + "duplicatePage": "Nhรขn bแบฃn trang nร y", + "deletePage": "Xรณa trang nร y", + "insertPdf": "Chรจn PDF sau trang nร y", + "toggleSplit": "Bแบญt/tแบฏt chia sau trang nร y" + }, + "pleaseWait": "Vui lรฒng ฤ‘แปฃi", + "pagesRendering": "Cรกc trang vแบซn ฤ‘ang ฤ‘ฦฐแปฃc kแบฟt xuแบฅt. Vui lรฒng ฤ‘แปฃi...", + "noPagesSelected": "Chฦฐa chแปn trang nร o", + "selectOnePage": "Vui lรฒng chแปn รญt nhแบฅt mแป™t trang ฤ‘แปƒ tแบฃi xuแป‘ng.", + "noPages": "Khรดng cรณ trang", + "noPagesToExport": "Khรดng cรณ trang nร o ฤ‘แปƒ xuแบฅt.", + "renderingTitle": "ฤang kแบฟt xuแบฅt xem trฦฐแป›c trang", + "errorRendering": "Khรดng thแปƒ kแบฟt xuแบฅt hรฌnh thu nhแป trang", + "error": "Lแป—i", + "failedToLoad": "Khรดng thแปƒ tแบฃi" + } +} diff --git a/public/locales/vi/tools.json b/public/locales/vi/tools.json index fe6dff4b3..04b37af23 100644 --- a/public/locales/vi/tools.json +++ b/public/locales/vi/tools.json @@ -1,519 +1,533 @@ { - "categories": { - "popularTools": "Cรดng cแปฅ phแป• biแบฟn", - "editAnnotate": "Chแป‰nh sแปญa & Ghi chรบ", - "convertToPdf": "Chuyแปƒn ฤ‘แป•i sang PDF", - "convertFromPdf": "Chuyแปƒn ฤ‘แป•i tแปซ PDF", - "organizeManage": "Sแบฏp xแบฟp & Quแบฃn lรฝ", - "optimizeRepair": "Tแป‘i ฦฐu hรณa & Sแปญa chแปฏa", - "securePdf": "Bแบฃo mแบญt PDF" - }, - "pdfMultiTool": { - "name": "Cรดng cแปฅ ฤ‘a nฤƒng PDF", - "subtitle": "Gแป™p, Chia, Sแบฏp xแบฟp, Xรณa, Xoay, Thรชm trang trแป‘ng, Trรญch xuแบฅt vร  Nhรขn ฤ‘รดi trong mแป™t giao diแป‡n thแป‘ng nhแบฅt." - }, - "mergePdf": { - "name": "Gแป™p PDF", - "subtitle": "Kแบฟt hแปฃp nhiแปu PDF thร nh mแป™t tแป‡p. Giแปฏ nguyรชn Bookmark." - }, - "splitPdf": { - "name": "Chia PDF", - "subtitle": "Trรญch xuแบฅt mแป™t phแบกm vi trang thร nh PDF mแป›i." - }, - "compressPdf": { - "name": "Nรฉn PDF", - "subtitle": "Giแบฃm kรญch thฦฐแป›c tแป‡p PDF cแปงa bแบกn.", - "algorithmLabel": "Thuแบญt toรกn nรฉn", - "condense": "Condense (Khuyแบฟn nghแป‹)", - "photon": "Photon (Dร nh cho PDF nhiแปu แบฃnh)", - "condenseInfo": "Condense sแปญ dแปฅng nรฉn nรขng cao: loแบกi bแป dแปฏ liแป‡u thแปซa, tแป‘i ฦฐu hรณa hรฌnh แบฃnh, gแปn phรดng chแปฏ. Phรน hแปฃp vแป›i hแบงu hแบฟt PDF.", - "photonInfo": "Photon chuyแปƒn ฤ‘แป•i trang thร nh hรฌnh แบฃnh. Dรนng cho PDF nhiแปu แบฃnh/quรฉt.", - "photonWarning": "Cแบฃnh bรกo: Vฤƒn bแบฃn sแบฝ khรดng thแปƒ chแปn ฤ‘ฦฐแปฃc vร  liรชn kแบฟt sแบฝ khรดng hoแบกt ฤ‘แป™ng.", - "levelLabel": "Mแปฉc ฤ‘แป™ nรฉn", - "light": "Nhแบน (Giแปฏ chแบฅt lฦฐแปฃng)", - "balanced": "Cรขn bแบฑng (Khuyแบฟn nghแป‹)", - "aggressive": "Mแบกnh (Tแป‡p nhแป hฦกn)", - "extreme": "Cแปฑc ฤ‘oan (Nรฉn tแป‘i ฤ‘a)", - "grayscale": "Chuyแปƒn sang thang xรกm", - "grayscaleHint": "Giแบฃm kรญch thฦฐแป›c tแป‡p bแบฑng cรกch loแบกi bแป thรดng tin mร u", - "customSettings": "Cร i ฤ‘แบทt tรนy chแป‰nh", - "customSettingsHint": "Tinh chแป‰nh cรกc thรดng sแป‘ nรฉn:", - "outputQuality": "Chแบฅt lฦฐแปฃng ฤ‘แบงu ra", - "resizeImagesTo": "Thay ฤ‘แป•i kรญch thฦฐแป›c แบฃnh thร nh", - "onlyProcessAbove": "Chแป‰ xแปญ lรฝ khi trรชn", - "removeMetadata": "Xรณa siรชu dแปฏ liแป‡u", - "subsetFonts": "Gแปn phรดng chแปฏ (xรณa kรฝ tแปฑ khรดng dรนng)", - "removeThumbnails": "Xรณa hรฌnh thu nhแป nhรบng", - "compressButton": "Nรฉn PDF" - }, - "pdfEditor": { - "name": "Trรฌnh chแป‰nh sแปญa PDF", - "subtitle": "Ghi chรบ, tรด sรกng, chแป‰nh sแปญa, bรฌnh luแบญn, thรชm hรฌnh dแบกng/hรฌnh แบฃnh, tรฌm kiแบฟm vร  xem PDF." - }, - "jpgToPdf": { - "name": "JPG sang PDF", - "subtitle": "Tแบกo PDF tแปซ hรฌnh แบฃnh JPG, JPEG vร  JPEG2000 (JP2/JPX)." - }, - "signPdf": { - "name": "Kรฝ PDF", - "subtitle": "Vแบฝ, gรต hoแบทc tแบฃi lรชn chแปฏ kรฝ cแปงa bแบกn." - }, - "cropPdf": { - "name": "Cแบฏt PDF", - "subtitle": "Cแบฏt lแป cแปงa mแปi trang trong PDF cแปงa bแบกn." - }, - "extractPages": { - "name": "Trรญch xuแบฅt trang", - "subtitle": "Lฦฐu mแป™t lแปฑa chแปn trang dฦฐแป›i dแบกng tแป‡p mแป›i." - }, - "duplicateOrganize": { - "name": "Nhรขn ฤ‘รดi & Sแบฏp xแบฟp", - "subtitle": "Nhรขn ฤ‘รดi, sแบฏp xแบฟp lแบกi vร  xรณa trang." - }, - "deletePages": { - "name": "Xรณa trang", - "subtitle": "Xรณa cรกc trang cแปฅ thแปƒ khแปi tร i liแป‡u cแปงa bแบกn." - }, - "editBookmarks": { - "name": "Chแป‰nh sแปญa Bookmark", - "subtitle": "Thรชm, chแป‰nh sแปญa, nhแบญp, xรณa vร  trรญch xuแบฅt bookmark PDF." - }, - "tableOfContents": { - "name": "Mแปฅc lแปฅc", - "subtitle": "Tแบกo trang mแปฅc lแปฅc tแปซ bookmark PDF." - }, - "pageNumbers": { - "name": "Sแป‘ trang", - "subtitle": "Chรจn sแป‘ trang vร o tร i liแป‡u cแปงa bแบกn." - }, - "addWatermark": { - "name": "Thรชm Watermark", - "subtitle": "ฤรณng dแบฅu vฤƒn bแบฃn hoแบทc hรฌnh แบฃnh lรชn cรกc trang PDF cแปงa bแบกn." - }, - "headerFooter": { - "name": "ฤแบงu trang & Chรขn trang", - "subtitle": "Thรชm vฤƒn bแบฃn vร o ฤ‘แบงu vร  cuแป‘i trang." - }, - "invertColors": { - "name": "ฤแบฃo ngฦฐแปฃc mร u", - "subtitle": "Tแบกo phiรชn bแบฃn \"chแบฟ ฤ‘แป™ tแป‘i\" cho PDF cแปงa bแบกn." - }, - "backgroundColor": { - "name": "Mร u nแปn", - "subtitle": "Thay ฤ‘แป•i mร u nแปn cแปงa PDF cแปงa bแบกn." - }, - "changeTextColor": { - "name": "Thay ฤ‘แป•i mร u vฤƒn bแบฃn", - "subtitle": "Thay ฤ‘แป•i mร u vฤƒn bแบฃn trong PDF cแปงa bแบกn." - }, - "addStamps": { - "name": "Thรชm tem", - "subtitle": "Thรชm tem hรฌnh แบฃnh vร o PDF cแปงa bแบกn bแบฑng thanh cรดng cแปฅ ghi chรบ.", - "usernameLabel": "Tรชn ngฦฐแปi dรนng tem", - "usernamePlaceholder": "Nhแบญp tรชn cแปงa bแบกn (cho tem)", - "usernameHint": "Tรชn nร y sแบฝ xuแบฅt hiแป‡n trรชn cรกc tem bแบกn tแบกo." - }, - "removeAnnotations": { - "name": "Xรณa ghi chรบ", - "subtitle": "Loแบกi bแป bรฌnh luแบญn, tรด sรกng vร  liรชn kแบฟt." - }, - "pdfFormFiller": { - "name": "ฤiแปn form PDF", - "subtitle": "ฤiแปn form trแปฑc tiแบฟp trong trรฌnh duyแป‡t. Cลฉng hแป— trแปฃ form XFA." - }, - "createPdfForm": { - "name": "Tแบกo form PDF", - "subtitle": "Tแบกo form PDF cรณ thแปƒ ฤ‘iแปn vแป›i cรกc trฦฐแปng vฤƒn bแบฃn kรฉo vร  thแบฃ." - }, - "removeBlankPages": { - "name": "Xรณa trang trแป‘ng", - "subtitle": "Tแปฑ ฤ‘แป™ng phรกt hiแป‡n vร  xรณa trang trแป‘ng." - }, - "imageToPdf": { - "name": "Hรฌnh แบฃnh sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP sang PDF." - }, - "pngToPdf": { - "name": "PNG sang PDF", - "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh PNG." - }, - "webpToPdf": { - "name": "WebP sang PDF", - "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh WebP." - }, - "svgToPdf": { - "name": "SVG sang PDF", - "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh SVG." - }, - "bmpToPdf": { - "name": "BMP sang PDF", - "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh BMP." - }, - "heicToPdf": { - "name": "HEIC sang PDF", - "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh HEIC." - }, - "tiffToPdf": { - "name": "TIFF sang PDF", - "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh TIFF." - }, - "textToPdf": { - "name": "Vฤƒn bแบฃn sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p vฤƒn bแบฃn thuแบงn tรบy thร nh PDF." - }, - "jsonToPdf": { - "name": "JSON sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p JSON sang ฤ‘แป‹nh dแบกng PDF." - }, - "pdfToJpg": { - "name": "PDF sang JPG", - "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh hรฌnh แบฃnh JPG." - }, - "pdfToPng": { - "name": "PDF sang PNG", - "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh hรฌnh แบฃnh PNG." - }, - "pdfToWebp": { - "name": "PDF sang WebP", - "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh hรฌnh แบฃnh WebP." - }, - "pdfToBmp": { - "name": "PDF sang BMP", - "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh hรฌnh แบฃnh BMP." - }, - "pdfToTiff": { - "name": "PDF sang TIFF", - "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh hรฌnh แบฃnh TIFF." - }, - "pdfToGreyscale": { - "name": "PDF sang thang xรกm", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแบฅt cแบฃ mร u sแบฏc sang ฤ‘en trแบฏng." - }, - "pdfToJson": { - "name": "PDF sang JSON", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p PDF sang ฤ‘แป‹nh dแบกng JSON." - }, - "ocrPdf": { - "name": "OCR PDF", - "subtitle": "Lร m cho PDF cรณ thแปƒ tรฌm kiแบฟm vร  sao chรฉp ฤ‘ฦฐแปฃc." - }, - "alternateMix": { - "name": "Xen kแบฝ & Trแป™n trang", - "subtitle": "Gแป™p PDF bแบฑng cรกch xen kแบฝ trang tแปซ mแป—i PDF. Giแปฏ nguyรชn Bookmark." - }, - "addAttachments": { - "name": "Thรชm tแป‡p ฤ‘รญnh kรจm", - "subtitle": "Nhรบng mแป™t hoแบทc nhiแปu tแป‡p vร o PDF cแปงa bแบกn." - }, - "extractAttachments": { - "name": "Trรญch xuแบฅt tแป‡p ฤ‘รญnh kรจm", - "subtitle": "Trรญch xuแบฅt tแบฅt cแบฃ tแป‡p ฤ‘ฦฐแปฃc nhรบng tแปซ PDF thร nh ZIP." - }, - "editAttachments": { - "name": "Chแป‰nh sแปญa tแป‡p ฤ‘รญnh kรจm", - "subtitle": "Xem hoแบทc xรณa tแป‡p ฤ‘รญnh kรจm trong PDF cแปงa bแบกn." - }, - "dividePages": { - "name": "Chia trang", - "subtitle": "Chia trang theo chiแปu ngang hoแบทc chiแปu dแปc." - }, - "addBlankPage": { - "name": "Thรชm trang trแป‘ng", - "subtitle": "Chรจn trang trแป‘ng แปŸ bแบฅt kแปณ ฤ‘รขu trong PDF cแปงa bแบกn." - }, - "reversePages": { - "name": "ฤแบฃo ngฦฐแปฃc trang", - "subtitle": "Lแบญt ngฦฐแปฃc thแปฉ tแปฑ tแบฅt cแบฃ cรกc trang trong tร i liแป‡u cแปงa bแบกn." - }, - "rotatePdf": { - "name": "Xoay PDF", - "subtitle": "Xoay trang theo bแป™i sแป‘ 90 ฤ‘แป™." - }, - "rotateCustom": { - "name": "Xoay theo ฤ‘แป™ tรนy chแป‰nh", - "subtitle": "Xoay trang theo bแบฅt kแปณ gรณc ฤ‘แป™ tรนy chแป‰nh nร o." - }, - "nUpPdf": { - "name": "N-Up PDF", - "subtitle": "Sแบฏp xแบฟp nhiแปu trang lรชn mแป™t tแป." - }, - "combineToSinglePage": { - "name": "Kแบฟt hแปฃp thร nh mแป™t trang", - "subtitle": "Ghรฉp tแบฅt cแบฃ cรกc trang thร nh mแป™t cuแป™n liรชn tแปฅc." - }, - "viewMetadata": { - "name": "Xem Metadata", - "subtitle": "Kiแปƒm tra cรกc thuแป™c tรญnh แบฉn cแปงa PDF cแปงa bแบกn." - }, - "editMetadata": { - "name": "Chแป‰nh sแปญa Metadata", - "subtitle": "Thay ฤ‘แป•i tรกc giแบฃ, tiรชu ฤ‘แป vร  cรกc thuแป™c tรญnh khรกc." - }, - "pdfsToZip": { - "name": "PDF sang ZIP", - "subtitle": "ฤรณng gรณi nhiแปu tแป‡p PDF thร nh kho lฦฐu trแปฏ ZIP." - }, - "comparePdfs": { - "name": "So sรกnh PDF", - "subtitle": "So sรกnh hai PDF cแบกnh nhau." - }, - "posterizePdf": { - "name": "Posterize PDF", - "subtitle": "Chia mแป™t trang lแป›n thร nh nhiแปu trang nhแป hฦกn." - }, - "fixPageSize": { - "name": "Sแปญa kรญch thฦฐแป›c trang", - "subtitle": "Chuแบฉn hรณa tแบฅt cแบฃ cรกc trang vแป cรนng mแป™t kรญch thฦฐแป›c." - }, - "linearizePdf": { - "name": "Tuyแบฟn tรญnh hรณa PDF", - "subtitle": "Tแป‘i ฦฐu hรณa PDF ฤ‘แปƒ xem web nhanh." - }, - "pageDimensions": { - "name": "Kรญch thฦฐแป›c trang", - "subtitle": "Phรขn tรญch kรญch thฦฐแป›c trang, hฦฐแป›ng vร  ฤ‘ฦกn vแป‹." - }, - "removeRestrictions": { - "name": "Xรณa hแบกn chแบฟ", - "subtitle": "Xรณa bแบฃo vแป‡ mแบญt khแบฉu vร  hแบกn chแบฟ bแบฃo mแบญt liรชn quan ฤ‘แบฟn tแป‡p PDF ฤ‘ฦฐแปฃc kรฝ sแป‘." - }, - "repairPdf": { - "name": "Sแปญa chแปฏa PDF", - "subtitle": "Khรดi phแปฅc dแปฏ liแป‡u tแปซ tแป‡p PDF bแป‹ hแปng hoแบทc hฦฐ hแปng." - }, - "encryptPdf": { - "name": "Mรฃ hรณa PDF", - "subtitle": "Khรณa PDF cแปงa bแบกn bแบฑng cรกch thรชm mแบญt khแบฉu." - }, - "sanitizePdf": { - "name": "Lร m sแบกch PDF", - "subtitle": "Xรณa metadata, ghi chรบ, script vร  nhiแปu hฦกn nแปฏa." - }, - "decryptPdf": { - "name": "Giแบฃi mรฃ PDF", - "subtitle": "MแปŸ khรณa PDF bแบฑng cรกch xรณa bแบฃo vแป‡ mแบญt khแบฉu." - }, - "flattenPdf": { - "name": "Lร m phแบณng PDF", - "subtitle": "Lร m cho trฦฐแปng form vร  ghi chรบ khรดng thแปƒ chแป‰nh sแปญa." - }, - "removeMetadata": { - "name": "Xรณa Metadata", - "subtitle": "Loแบกi bแป dแปฏ liแป‡u แบฉn khแปi PDF cแปงa bแบกn." - }, - "changePermissions": { - "name": "Thay ฤ‘แป•i quyแปn", - "subtitle": "ฤแบทt hoแบทc thay ฤ‘แป•i quyแปn ngฦฐแปi dรนng trรชn PDF." - }, - "odtToPdf": { - "name": "ODT sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p OpenDocument Text sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p ODT", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "csvToPdf": { - "name": "CSV sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p bแบฃng tรญnh CSV sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p CSV", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "rtfToPdf": { - "name": "RTF sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u Rich Text Format sang PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p RTF", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "wordToPdf": { - "name": "Word sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u Word (DOCX, DOC, ODT, RTF) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p DOCX, DOC, ODT, RTF", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "excelToPdf": { - "name": "Excel sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i bแบฃng tรญnh Excel (XLSX, XLS, ODS, CSV) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p XLSX, XLS, ODS, CSV", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "powerpointToPdf": { - "name": "PowerPoint sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i bร i thuyแบฟt trรฌnh PowerPoint (PPTX, PPT, ODP) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p PPTX, PPT, ODP", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "markdownToPdf": { - "name": "Markdown sang PDF", - "subtitle": "Viแบฟt hoแบทc dรกn Markdown vร  xuแบฅt nรณ thร nh PDF ฤ‘ฦฐแปฃc ฤ‘แป‹nh dแบกng ฤ‘แบนp.", - "paneMarkdown": "Markdown", - "panePreview": "Xem trฦฐแป›c", - "btnUpload": "Tแบฃi lรชn", - "btnSyncScroll": "Cuแป™n ฤ‘แป“ng bแป™", - "btnSettings": "Cร i ฤ‘แบทt", - "btnExportPdf": "Xuแบฅt PDF", - "settingsTitle": "Cร i ฤ‘แบทt Markdown", - "settingsPreset": "Cร i ฤ‘แบทt sแบตn", - "presetDefault": "Mแบทc ฤ‘แป‹nh (kiแปƒu GFM)", - "presetCommonmark": "CommonMark (nghiรชm ngแบทt)", - "presetZero": "Tแป‘i thiแปƒu (khรดng cรณ tรญnh nฤƒng)", - "settingsOptions": "Tรนy chแปn Markdown", - "optAllowHtml": "Cho phรฉp thแบป HTML", - "optBreaks": "Chuyแปƒn ฤ‘แป•i xuแป‘ng dรฒng thร nh
", - "optLinkify": "Tแปฑ ฤ‘แป™ng chuyแปƒn URL thร nh liรชn kแบฟt", - "optTypographer": "Trรฌnh sแบฏp chแปฏ (dแบฅu ngoแบทc thรดng minh, v.v.)" - }, - "pdfBooklet": { - "name": "Sรกch nhแป PDF", - "subtitle": "Sแบฏp xแบฟp lแบกi cรกc trang ฤ‘แปƒ in sรกch nhแป hai mแบทt. Gแบฅp vร  ฤ‘รณng ghim ฤ‘แปƒ tแบกo sรกch nhแป.", - "howItWorks": "Cรกch hoแบกt ฤ‘แป™ng:", - "step1": "Tแบฃi lรชn tแป‡p PDF.", - "step2": "Cรกc trang sแบฝ ฤ‘ฦฐแปฃc sแบฏp xแบฟp lแบกi theo thแปฉ tแปฑ sรกch nhแป.", - "step3": "In hai mแบทt, lแบญt cแบกnh ngแบฏn, gแบฅp vร  ฤ‘รณng ghim.", - "paperSize": "Kรญch thฦฐแป›c giแบฅy", - "orientation": "Hฦฐแป›ng", - "portrait": "Dแปc", - "landscape": "Ngang", - "pagesPerSheet": "Sแป‘ trang mแป—i tแป", - "createBooklet": "Tแบกo sรกch nhแป", - "processing": "ฤang xแปญ lรฝ...", - "pageCount": "Sแป‘ trang sแบฝ ฤ‘ฦฐแปฃc bแป• sung lรชn bแป™i sแป‘ cแปงa 4 nแบฟu cแบงn." - }, - "xpsToPdf": { - "name": "XPS sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u XPS/OXPS sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p XPS, OXPS", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "mobiToPdf": { - "name": "MOBI sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i sรกch ฤ‘iแป‡n tแปญ MOBI sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p MOBI", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "epubToPdf": { - "name": "EPUB sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i sรกch ฤ‘iแป‡n tแปญ EPUB sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p EPUB", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "fb2ToPdf": { - "name": "FB2 sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i sรกch ฤ‘iแป‡n tแปญ FictionBook (FB2) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p FB2", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "cbzToPdf": { - "name": "CBZ sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i kho lฦฐu trแปฏ truyแป‡n tranh (CBZ/CBR) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p CBZ, CBR", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "wpdToPdf": { - "name": "WPD sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u WordPerfect (WPD) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p WPD", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "wpsToPdf": { - "name": "WPS sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u WPS Office sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p WPS", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "xmlToPdf": { - "name": "XML sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u XML sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p XML", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "pagesToPdf": { - "name": "Pages sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u Apple Pages sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p Pages", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "odgToPdf": { - "name": "ODG sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p OpenDocument Graphics (ODG) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p ODG", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "odsToPdf": { - "name": "ODS sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p OpenDocument Spreadsheet (ODS) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p ODS", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "odpToPdf": { - "name": "ODP sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p OpenDocument Presentation (ODP) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p ODP", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "pubToPdf": { - "name": "PUB sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p Microsoft Publisher (PUB) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p PUB", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "vsdToPdf": { - "name": "VSD sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p Microsoft Visio (VSD, VSDX) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p VSD, VSDX", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "psdToPdf": { - "name": "PSD sang PDF", - "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p Adobe Photoshop (PSD) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", - "acceptedFormats": "Tแป‡p PSD", - "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" - }, - "pdfToSvg": { - "name": "PDF sang SVG", - "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh ฤ‘แป“ hแปa vector cรณ thแปƒ mแปŸ rแป™ng (SVG) vแป›i chแบฅt lฦฐแปฃng hoร n hแบฃo แปŸ mแปi kรญch thฦฐแป›c." - }, - "extractTables": { - "name": "Trรญch xuแบฅt bแบฃng PDF", - "subtitle": "Trรญch xuแบฅt bแบฃng tแปซ tแป‡p PDF vร  xuแบฅt dฦฐแป›i dแบกng CSV, JSON hoแบทc Markdown." - }, - "pdfToCsv": { - "name": "PDF sang CSV", - "subtitle": "Trรญch xuแบฅt bแบฃng tแปซ PDF vร  chuyแปƒn ฤ‘แป•i sang ฤ‘แป‹nh dแบกng CSV." - }, - "pdfToExcel": { - "name": "PDF sang Excel", - "subtitle": "Trรญch xuแบฅt bแบฃng tแปซ PDF vร  chuyแปƒn ฤ‘แป•i sang ฤ‘แป‹nh dแบกng Excel (XLSX)." - }, - "pdfToText": { - "name": "PDF sang Vฤƒn bแบฃn", - "subtitle": "Trรญch xuแบฅt vฤƒn bแบฃn tแปซ tแป‡p PDF vร  lฦฐu dฦฐแป›i dแบกng tแป‡p vฤƒn bแบฃn (.txt). Hแป— trแปฃ nhiแปu tแป‡p.", - "note": "Cรดng cแปฅ nร y CHแปˆ hoแบกt ฤ‘แป™ng vแป›i cรกc tแป‡p PDF ฤ‘ฦฐแปฃc tแบกo kแปน thuแบญt sแป‘. ฤแป‘i vแป›i tร i liแป‡u quรฉt hoแบทc PDF dแปฑa trรชn hรฌnh แบฃnh, hรฃy sแปญ dแปฅng cรดng cแปฅ OCR PDF cแปงa chรบng tรดi.", - "convertButton": "Trรญch xuแบฅt vฤƒn bแบฃn" - }, - "digitalSignPdf": { - "name": "Chแปฏ kรฝ sแป‘ PDF", - "pageTitle": "Chแปฏ kรฝ sแป‘ PDF - Thรชm chแปฏ kรฝ mแบญt mรฃ | BentoPDF", - "subtitle": "Thรชm chแปฏ kรฝ sแป‘ mแบญt mรฃ vร o PDF cแปงa bแบกn bแบฑng chแปฉng chแป‰ X.509. Hแป— trแปฃ ฤ‘แป‹nh dแบกng PKCS#12 (.pfx, .p12) vร  PEM. Khรณa riรชng cแปงa bแบกn khรดng bao giแป rแปi khแปi trรฌnh duyแป‡t.", - "certificateSection": "Chแปฉng chแป‰", - "uploadCert": "Tแบฃi lรชn chแปฉng chแป‰ (.pfx, .p12)", - "certPassword": "Mแบญt khแบฉu chแปฉng chแป‰", - "certPasswordPlaceholder": "Nhแบญp mแบญt khแบฉu chแปฉng chแป‰", - "certInfo": "Thรดng tin chแปฉng chแป‰", - "certSubject": "Chแปง thแปƒ", - "certIssuer": "Nhร  phรกt hร nh", - "certValidity": "Hiแป‡u lแปฑc", - "signatureDetails": "Chi tiแบฟt chแปฏ kรฝ (Tรนy chแปn)", - "reason": "Lรฝ do", - "reasonPlaceholder": "vรญ dแปฅ: Tรดi phรช duyแป‡t tร i liแป‡u nร y", - "location": "ฤแป‹a ฤ‘iแปƒm", - "locationPlaceholder": "vรญ dแปฅ: Hร  Nแป™i, Viแป‡t Nam", - "contactInfo": "Thรดng tin liรชn hแป‡", - "contactPlaceholder": "vรญ dแปฅ: email@example.com", - "applySignature": "รp dแปฅng chแปฏ kรฝ sแป‘", - "successMessage": "Kรฝ PDF thร nh cรดng! Chแปฏ kรฝ cรณ thแปƒ ฤ‘ฦฐแปฃc xรกc minh trong bแบฅt kแปณ trรฌnh ฤ‘แปc PDF nร o." - }, - "validateSignaturePdf": { - "name": "Xรกc minh chแปฏ kรฝ PDF", - "pageTitle": "Xรกc minh chแปฏ kรฝ PDF - Xรกc thแปฑc chแปฏ kรฝ sแป‘ | BentoPDF", - "subtitle": "Xรกc minh chแปฏ kรฝ sแป‘ trong tแป‡p PDF cแปงa bแบกn. Kiแปƒm tra hiแป‡u lแปฑc chแปฉng chแป‰, xem thรดng tin ngฦฐแปi kรฝ vร  xรกc nhแบญn tรญnh toร n vแบนn tร i liแป‡u. Tแบฅt cแบฃ xแปญ lรฝ diแป…n ra trong trรฌnh duyแป‡t cแปงa bแบกn." - } -} \ No newline at end of file + "categories": { + "popularTools": "Cรดng cแปฅ phแป• biแบฟn", + "editAnnotate": "Chแป‰nh sแปญa & Ghi chรบ", + "convertToPdf": "Chuyแปƒn ฤ‘แป•i sang PDF", + "convertFromPdf": "Chuyแปƒn ฤ‘แป•i tแปซ PDF", + "organizeManage": "Sแบฏp xแบฟp & Quแบฃn lรฝ", + "optimizeRepair": "Tแป‘i ฦฐu hรณa & Sแปญa chแปฏa", + "securePdf": "Bแบฃo mแบญt PDF" + }, + "pdfMultiTool": { + "name": "Cรดng cแปฅ ฤ‘a nฤƒng PDF", + "subtitle": "Gแป™p, Chia, Sแบฏp xแบฟp, Xรณa, Xoay, Thรชm trang trแป‘ng, Trรญch xuแบฅt vร  Nhรขn ฤ‘รดi trong mแป™t giao diแป‡n thแป‘ng nhแบฅt." + }, + "mergePdf": { + "name": "Gแป™p PDF", + "subtitle": "Kแบฟt hแปฃp nhiแปu PDF thร nh mแป™t tแป‡p. Giแปฏ nguyรชn Bookmark." + }, + "splitPdf": { + "name": "Chia PDF", + "subtitle": "Trรญch xuแบฅt mแป™t phแบกm vi trang thร nh PDF mแป›i." + }, + "compressPdf": { + "name": "Nรฉn PDF", + "subtitle": "Giแบฃm kรญch thฦฐแป›c tแป‡p PDF cแปงa bแบกn.", + "algorithmLabel": "Thuแบญt toรกn nรฉn", + "condense": "Condense (Khuyแบฟn nghแป‹)", + "photon": "Photon (Dร nh cho PDF nhiแปu แบฃnh)", + "condenseInfo": "Condense sแปญ dแปฅng nรฉn nรขng cao: loแบกi bแป dแปฏ liแป‡u thแปซa, tแป‘i ฦฐu hรณa hรฌnh แบฃnh, gแปn phรดng chแปฏ. Phรน hแปฃp vแป›i hแบงu hแบฟt PDF.", + "photonInfo": "Photon chuyแปƒn ฤ‘แป•i trang thร nh hรฌnh แบฃnh. Dรนng cho PDF nhiแปu แบฃnh/quรฉt.", + "photonWarning": "Cแบฃnh bรกo: Vฤƒn bแบฃn sแบฝ khรดng thแปƒ chแปn ฤ‘ฦฐแปฃc vร  liรชn kแบฟt sแบฝ khรดng hoแบกt ฤ‘แป™ng.", + "levelLabel": "Mแปฉc ฤ‘แป™ nรฉn", + "light": "Nhแบน (Giแปฏ chแบฅt lฦฐแปฃng)", + "balanced": "Cรขn bแบฑng (Khuyแบฟn nghแป‹)", + "aggressive": "Mแบกnh (Tแป‡p nhแป hฦกn)", + "extreme": "Cแปฑc ฤ‘oan (Nรฉn tแป‘i ฤ‘a)", + "grayscale": "Chuyแปƒn sang thang xรกm", + "grayscaleHint": "Giแบฃm kรญch thฦฐแป›c tแป‡p bแบฑng cรกch loแบกi bแป thรดng tin mร u", + "customSettings": "Cร i ฤ‘แบทt tรนy chแป‰nh", + "customSettingsHint": "Tinh chแป‰nh cรกc thรดng sแป‘ nรฉn:", + "outputQuality": "Chแบฅt lฦฐแปฃng ฤ‘แบงu ra", + "resizeImagesTo": "Thay ฤ‘แป•i kรญch thฦฐแป›c แบฃnh thร nh", + "onlyProcessAbove": "Chแป‰ xแปญ lรฝ khi trรชn", + "removeMetadata": "Xรณa siรชu dแปฏ liแป‡u", + "subsetFonts": "Gแปn phรดng chแปฏ (xรณa kรฝ tแปฑ khรดng dรนng)", + "removeThumbnails": "Xรณa hรฌnh thu nhแป nhรบng", + "compressButton": "Nรฉn PDF" + }, + "pdfEditor": { + "name": "Trรฌnh chแป‰nh sแปญa PDF", + "subtitle": "Ghi chรบ, tรด sรกng, chแป‰nh sแปญa, bรฌnh luแบญn, thรชm hรฌnh dแบกng/hรฌnh แบฃnh, tรฌm kiแบฟm vร  xem PDF." + }, + "jpgToPdf": { + "name": "JPG sang PDF", + "subtitle": "Tแบกo PDF tแปซ hรฌnh แบฃnh JPG, JPEG vร  JPEG2000 (JP2/JPX)." + }, + "signPdf": { + "name": "Kรฝ PDF", + "subtitle": "Vแบฝ, gรต hoแบทc tแบฃi lรชn chแปฏ kรฝ cแปงa bแบกn." + }, + "cropPdf": { + "name": "Cแบฏt PDF", + "subtitle": "Cแบฏt lแป cแปงa mแปi trang trong PDF cแปงa bแบกn." + }, + "extractPages": { + "name": "Trรญch xuแบฅt trang", + "subtitle": "Lฦฐu mแป™t lแปฑa chแปn trang dฦฐแป›i dแบกng tแป‡p mแป›i." + }, + "duplicateOrganize": { + "name": "Nhรขn ฤ‘รดi & Sแบฏp xแบฟp", + "subtitle": "Nhรขn ฤ‘รดi, sแบฏp xแบฟp lแบกi vร  xรณa trang." + }, + "deletePages": { + "name": "Xรณa trang", + "subtitle": "Xรณa cรกc trang cแปฅ thแปƒ khแปi tร i liแป‡u cแปงa bแบกn." + }, + "editBookmarks": { + "name": "Chแป‰nh sแปญa Bookmark", + "subtitle": "Thรชm, chแป‰nh sแปญa, nhแบญp, xรณa vร  trรญch xuแบฅt bookmark PDF." + }, + "tableOfContents": { + "name": "Mแปฅc lแปฅc", + "subtitle": "Tแบกo trang mแปฅc lแปฅc tแปซ bookmark PDF." + }, + "pageNumbers": { + "name": "Sแป‘ trang", + "subtitle": "Chรจn sแป‘ trang vร o tร i liแป‡u cแปงa bแบกn." + }, + "addWatermark": { + "name": "Thรชm Watermark", + "subtitle": "ฤรณng dแบฅu vฤƒn bแบฃn hoแบทc hรฌnh แบฃnh lรชn cรกc trang PDF cแปงa bแบกn." + }, + "headerFooter": { + "name": "ฤแบงu trang & Chรขn trang", + "subtitle": "Thรชm vฤƒn bแบฃn vร o ฤ‘แบงu vร  cuแป‘i trang." + }, + "invertColors": { + "name": "ฤแบฃo ngฦฐแปฃc mร u", + "subtitle": "Tแบกo phiรชn bแบฃn \"chแบฟ ฤ‘แป™ tแป‘i\" cho PDF cแปงa bแบกn." + }, + "backgroundColor": { + "name": "Mร u nแปn", + "subtitle": "Thay ฤ‘แป•i mร u nแปn cแปงa PDF cแปงa bแบกn." + }, + "changeTextColor": { + "name": "Thay ฤ‘แป•i mร u vฤƒn bแบฃn", + "subtitle": "Thay ฤ‘แป•i mร u vฤƒn bแบฃn trong PDF cแปงa bแบกn." + }, + "addStamps": { + "name": "Thรชm tem", + "subtitle": "Thรชm tem hรฌnh แบฃnh vร o PDF cแปงa bแบกn bแบฑng thanh cรดng cแปฅ ghi chรบ.", + "usernameLabel": "Tรชn ngฦฐแปi dรนng tem", + "usernamePlaceholder": "Nhแบญp tรชn cแปงa bแบกn (cho tem)", + "usernameHint": "Tรชn nร y sแบฝ xuแบฅt hiแป‡n trรชn cรกc tem bแบกn tแบกo." + }, + "removeAnnotations": { + "name": "Xรณa ghi chรบ", + "subtitle": "Loแบกi bแป bรฌnh luแบญn, tรด sรกng vร  liรชn kแบฟt." + }, + "pdfFormFiller": { + "name": "ฤiแปn form PDF", + "subtitle": "ฤiแปn form trแปฑc tiแบฟp trong trรฌnh duyแป‡t. Cลฉng hแป— trแปฃ form XFA." + }, + "createPdfForm": { + "name": "Tแบกo form PDF", + "subtitle": "Tแบกo form PDF cรณ thแปƒ ฤ‘iแปn vแป›i cรกc trฦฐแปng vฤƒn bแบฃn kรฉo vร  thแบฃ." + }, + "removeBlankPages": { + "name": "Xรณa trang trแป‘ng", + "subtitle": "Tแปฑ ฤ‘แป™ng phรกt hiแป‡n vร  xรณa trang trแป‘ng." + }, + "imageToPdf": { + "name": "Hรฌnh แบฃnh sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP sang PDF." + }, + "pngToPdf": { + "name": "PNG sang PDF", + "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh PNG." + }, + "webpToPdf": { + "name": "WebP sang PDF", + "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh WebP." + }, + "svgToPdf": { + "name": "SVG sang PDF", + "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh SVG." + }, + "bmpToPdf": { + "name": "BMP sang PDF", + "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh BMP." + }, + "heicToPdf": { + "name": "HEIC sang PDF", + "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh HEIC." + }, + "tiffToPdf": { + "name": "TIFF sang PDF", + "subtitle": "Tแบกo PDF tแปซ mแป™t hoแบทc nhiแปu hรฌnh แบฃnh TIFF." + }, + "textToPdf": { + "name": "Vฤƒn bแบฃn sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p vฤƒn bแบฃn thuแบงn tรบy thร nh PDF." + }, + "jsonToPdf": { + "name": "JSON sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p JSON sang ฤ‘แป‹nh dแบกng PDF." + }, + "pdfToJpg": { + "name": "PDF sang JPG", + "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh hรฌnh แบฃnh JPG." + }, + "pdfToPng": { + "name": "PDF sang PNG", + "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh hรฌnh แบฃnh PNG." + }, + "pdfToWebp": { + "name": "PDF sang WebP", + "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh hรฌnh แบฃnh WebP." + }, + "pdfToBmp": { + "name": "PDF sang BMP", + "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh hรฌnh แบฃnh BMP." + }, + "pdfToTiff": { + "name": "PDF sang TIFF", + "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh hรฌnh แบฃnh TIFF." + }, + "pdfToGreyscale": { + "name": "PDF sang thang xรกm", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแบฅt cแบฃ mร u sแบฏc sang ฤ‘en trแบฏng." + }, + "pdfToJson": { + "name": "PDF sang JSON", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p PDF sang ฤ‘แป‹nh dแบกng JSON." + }, + "ocrPdf": { + "name": "OCR PDF", + "subtitle": "Lร m cho PDF cรณ thแปƒ tรฌm kiแบฟm vร  sao chรฉp ฤ‘ฦฐแปฃc." + }, + "alternateMix": { + "name": "Xen kแบฝ & Trแป™n trang", + "subtitle": "Gแป™p PDF bแบฑng cรกch xen kแบฝ trang tแปซ mแป—i PDF. Giแปฏ nguyรชn Bookmark." + }, + "addAttachments": { + "name": "Thรชm tแป‡p ฤ‘รญnh kรจm", + "subtitle": "Nhรบng mแป™t hoแบทc nhiแปu tแป‡p vร o PDF cแปงa bแบกn." + }, + "extractAttachments": { + "name": "Trรญch xuแบฅt tแป‡p ฤ‘รญnh kรจm", + "subtitle": "Trรญch xuแบฅt tแบฅt cแบฃ tแป‡p ฤ‘ฦฐแปฃc nhรบng tแปซ PDF thร nh ZIP." + }, + "editAttachments": { + "name": "Chแป‰nh sแปญa tแป‡p ฤ‘รญnh kรจm", + "subtitle": "Xem hoแบทc xรณa tแป‡p ฤ‘รญnh kรจm trong PDF cแปงa bแบกn." + }, + "dividePages": { + "name": "Chia trang", + "subtitle": "Chia trang theo chiแปu ngang hoแบทc chiแปu dแปc." + }, + "addBlankPage": { + "name": "Thรชm trang trแป‘ng", + "subtitle": "Chรจn trang trแป‘ng แปŸ bแบฅt kแปณ ฤ‘รขu trong PDF cแปงa bแบกn." + }, + "reversePages": { + "name": "ฤแบฃo ngฦฐแปฃc trang", + "subtitle": "Lแบญt ngฦฐแปฃc thแปฉ tแปฑ tแบฅt cแบฃ cรกc trang trong tร i liแป‡u cแปงa bแบกn." + }, + "rotatePdf": { + "name": "Xoay PDF", + "subtitle": "Xoay trang theo bแป™i sแป‘ 90 ฤ‘แป™." + }, + "rotateCustom": { + "name": "Xoay theo ฤ‘แป™ tรนy chแป‰nh", + "subtitle": "Xoay trang theo bแบฅt kแปณ gรณc ฤ‘แป™ tรนy chแป‰nh nร o." + }, + "nUpPdf": { + "name": "N-Up PDF", + "subtitle": "Sแบฏp xแบฟp nhiแปu trang lรชn mแป™t tแป." + }, + "combineToSinglePage": { + "name": "Kแบฟt hแปฃp thร nh mแป™t trang", + "subtitle": "Ghรฉp tแบฅt cแบฃ cรกc trang thร nh mแป™t cuแป™n liรชn tแปฅc." + }, + "viewMetadata": { + "name": "Xem Metadata", + "subtitle": "Kiแปƒm tra cรกc thuแป™c tรญnh แบฉn cแปงa PDF cแปงa bแบกn." + }, + "editMetadata": { + "name": "Chแป‰nh sแปญa Metadata", + "subtitle": "Thay ฤ‘แป•i tรกc giแบฃ, tiรชu ฤ‘แป vร  cรกc thuแป™c tรญnh khรกc." + }, + "pdfsToZip": { + "name": "PDF sang ZIP", + "subtitle": "ฤรณng gรณi nhiแปu tแป‡p PDF thร nh kho lฦฐu trแปฏ ZIP." + }, + "comparePdfs": { + "name": "So sรกnh PDF", + "subtitle": "So sรกnh hai PDF cแบกnh nhau." + }, + "posterizePdf": { + "name": "Posterize PDF", + "subtitle": "Chia mแป™t trang lแป›n thร nh nhiแปu trang nhแป hฦกn." + }, + "fixPageSize": { + "name": "Sแปญa kรญch thฦฐแป›c trang", + "subtitle": "Chuแบฉn hรณa tแบฅt cแบฃ cรกc trang vแป cรนng mแป™t kรญch thฦฐแป›c." + }, + "linearizePdf": { + "name": "Tuyแบฟn tรญnh hรณa PDF", + "subtitle": "Tแป‘i ฦฐu hรณa PDF ฤ‘แปƒ xem web nhanh." + }, + "pageDimensions": { + "name": "Kรญch thฦฐแป›c trang", + "subtitle": "Phรขn tรญch kรญch thฦฐแป›c trang, hฦฐแป›ng vร  ฤ‘ฦกn vแป‹." + }, + "removeRestrictions": { + "name": "Xรณa hแบกn chแบฟ", + "subtitle": "Xรณa bแบฃo vแป‡ mแบญt khแบฉu vร  hแบกn chแบฟ bแบฃo mแบญt liรชn quan ฤ‘แบฟn tแป‡p PDF ฤ‘ฦฐแปฃc kรฝ sแป‘." + }, + "repairPdf": { + "name": "Sแปญa chแปฏa PDF", + "subtitle": "Khรดi phแปฅc dแปฏ liแป‡u tแปซ tแป‡p PDF bแป‹ hแปng hoแบทc hฦฐ hแปng." + }, + "encryptPdf": { + "name": "Mรฃ hรณa PDF", + "subtitle": "Khรณa PDF cแปงa bแบกn bแบฑng cรกch thรชm mแบญt khแบฉu." + }, + "sanitizePdf": { + "name": "Lร m sแบกch PDF", + "subtitle": "Xรณa metadata, ghi chรบ, script vร  nhiแปu hฦกn nแปฏa." + }, + "decryptPdf": { + "name": "Giแบฃi mรฃ PDF", + "subtitle": "MแปŸ khรณa PDF bแบฑng cรกch xรณa bแบฃo vแป‡ mแบญt khแบฉu." + }, + "flattenPdf": { + "name": "Lร m phแบณng PDF", + "subtitle": "Lร m cho trฦฐแปng form vร  ghi chรบ khรดng thแปƒ chแป‰nh sแปญa." + }, + "removeMetadata": { + "name": "Xรณa Metadata", + "subtitle": "Loแบกi bแป dแปฏ liแป‡u แบฉn khแปi PDF cแปงa bแบกn." + }, + "changePermissions": { + "name": "Thay ฤ‘แป•i quyแปn", + "subtitle": "ฤแบทt hoแบทc thay ฤ‘แป•i quyแปn ngฦฐแปi dรนng trรชn PDF." + }, + "odtToPdf": { + "name": "ODT sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p OpenDocument Text sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p ODT", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "csvToPdf": { + "name": "CSV sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p bแบฃng tรญnh CSV sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p CSV", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "rtfToPdf": { + "name": "RTF sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u Rich Text Format sang PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p RTF", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "wordToPdf": { + "name": "Word sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u Word (DOCX, DOC, ODT, RTF) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p DOCX, DOC, ODT, RTF", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "excelToPdf": { + "name": "Excel sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i bแบฃng tรญnh Excel (XLSX, XLS, ODS, CSV) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p XLSX, XLS, ODS, CSV", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "powerpointToPdf": { + "name": "PowerPoint sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i bร i thuyแบฟt trรฌnh PowerPoint (PPTX, PPT, ODP) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p PPTX, PPT, ODP", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "markdownToPdf": { + "name": "Markdown sang PDF", + "subtitle": "Viแบฟt hoแบทc dรกn Markdown vร  xuแบฅt nรณ thร nh PDF ฤ‘ฦฐแปฃc ฤ‘แป‹nh dแบกng ฤ‘แบนp.", + "paneMarkdown": "Markdown", + "panePreview": "Xem trฦฐแป›c", + "btnUpload": "Tแบฃi lรชn", + "btnSyncScroll": "Cuแป™n ฤ‘แป“ng bแป™", + "btnSettings": "Cร i ฤ‘แบทt", + "btnExportPdf": "Xuแบฅt PDF", + "settingsTitle": "Cร i ฤ‘แบทt Markdown", + "settingsPreset": "Cร i ฤ‘แบทt sแบตn", + "presetDefault": "Mแบทc ฤ‘แป‹nh (kiแปƒu GFM)", + "presetCommonmark": "CommonMark (nghiรชm ngแบทt)", + "presetZero": "Tแป‘i thiแปƒu (khรดng cรณ tรญnh nฤƒng)", + "settingsOptions": "Tรนy chแปn Markdown", + "optAllowHtml": "Cho phรฉp thแบป HTML", + "optBreaks": "Chuyแปƒn ฤ‘แป•i xuแป‘ng dรฒng thร nh
", + "optLinkify": "Tแปฑ ฤ‘แป™ng chuyแปƒn URL thร nh liรชn kแบฟt", + "optTypographer": "Trรฌnh sแบฏp chแปฏ (dแบฅu ngoแบทc thรดng minh, v.v.)" + }, + "pdfBooklet": { + "name": "Sรกch nhแป PDF", + "subtitle": "Sแบฏp xแบฟp lแบกi cรกc trang ฤ‘แปƒ in sรกch nhแป hai mแบทt. Gแบฅp vร  ฤ‘รณng ghim ฤ‘แปƒ tแบกo sรกch nhแป.", + "howItWorks": "Cรกch hoแบกt ฤ‘แป™ng:", + "step1": "Tแบฃi lรชn tแป‡p PDF.", + "step2": "Cรกc trang sแบฝ ฤ‘ฦฐแปฃc sแบฏp xแบฟp lแบกi theo thแปฉ tแปฑ sรกch nhแป.", + "step3": "In hai mแบทt, lแบญt cแบกnh ngแบฏn, gแบฅp vร  ฤ‘รณng ghim.", + "paperSize": "Kรญch thฦฐแป›c giแบฅy", + "orientation": "Hฦฐแป›ng", + "portrait": "Dแปc", + "landscape": "Ngang", + "pagesPerSheet": "Sแป‘ trang mแป—i tแป", + "createBooklet": "Tแบกo sรกch nhแป", + "processing": "ฤang xแปญ lรฝ...", + "pageCount": "Sแป‘ trang sแบฝ ฤ‘ฦฐแปฃc bแป• sung lรชn bแป™i sแป‘ cแปงa 4 nแบฟu cแบงn." + }, + "xpsToPdf": { + "name": "XPS sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u XPS/OXPS sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p XPS, OXPS", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "mobiToPdf": { + "name": "MOBI sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i sรกch ฤ‘iแป‡n tแปญ MOBI sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p MOBI", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "epubToPdf": { + "name": "EPUB sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i sรกch ฤ‘iแป‡n tแปญ EPUB sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p EPUB", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "fb2ToPdf": { + "name": "FB2 sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i sรกch ฤ‘iแป‡n tแปญ FictionBook (FB2) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p FB2", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "cbzToPdf": { + "name": "CBZ sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i kho lฦฐu trแปฏ truyแป‡n tranh (CBZ/CBR) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p CBZ, CBR", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "wpdToPdf": { + "name": "WPD sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u WordPerfect (WPD) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p WPD", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "wpsToPdf": { + "name": "WPS sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u WPS Office sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p WPS", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "xmlToPdf": { + "name": "XML sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u XML sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p XML", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "pagesToPdf": { + "name": "Pages sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tร i liแป‡u Apple Pages sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p Pages", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "odgToPdf": { + "name": "ODG sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p OpenDocument Graphics (ODG) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p ODG", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "odsToPdf": { + "name": "ODS sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p OpenDocument Spreadsheet (ODS) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p ODS", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "odpToPdf": { + "name": "ODP sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p OpenDocument Presentation (ODP) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p ODP", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "pubToPdf": { + "name": "PUB sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p Microsoft Publisher (PUB) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p PUB", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "vsdToPdf": { + "name": "VSD sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p Microsoft Visio (VSD, VSDX) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p VSD, VSDX", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "psdToPdf": { + "name": "PSD sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p Adobe Photoshop (PSD) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ nhiแปu tแป‡p.", + "acceptedFormats": "Tแป‡p PSD", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "pdfToSvg": { + "name": "PDF sang SVG", + "subtitle": "Chuyแปƒn ฤ‘แป•i mแป—i trang PDF thร nh ฤ‘แป“ hแปa vector cรณ thแปƒ mแปŸ rแป™ng (SVG) vแป›i chแบฅt lฦฐแปฃng hoร n hแบฃo แปŸ mแปi kรญch thฦฐแป›c." + }, + "extractTables": { + "name": "Trรญch xuแบฅt bแบฃng PDF", + "subtitle": "Trรญch xuแบฅt bแบฃng tแปซ tแป‡p PDF vร  xuแบฅt dฦฐแป›i dแบกng CSV, JSON hoแบทc Markdown." + }, + "pdfToCsv": { + "name": "PDF sang CSV", + "subtitle": "Trรญch xuแบฅt bแบฃng tแปซ PDF vร  chuyแปƒn ฤ‘แป•i sang ฤ‘แป‹nh dแบกng CSV." + }, + "pdfToExcel": { + "name": "PDF sang Excel", + "subtitle": "Trรญch xuแบฅt bแบฃng tแปซ PDF vร  chuyแปƒn ฤ‘แป•i sang ฤ‘แป‹nh dแบกng Excel (XLSX)." + }, + "pdfToText": { + "name": "PDF sang Vฤƒn bแบฃn", + "subtitle": "Trรญch xuแบฅt vฤƒn bแบฃn tแปซ tแป‡p PDF vร  lฦฐu dฦฐแป›i dแบกng tแป‡p vฤƒn bแบฃn (.txt). Hแป— trแปฃ nhiแปu tแป‡p.", + "note": "Cรดng cแปฅ nร y CHแปˆ hoแบกt ฤ‘แป™ng vแป›i cรกc tแป‡p PDF ฤ‘ฦฐแปฃc tแบกo kแปน thuแบญt sแป‘. ฤแป‘i vแป›i tร i liแป‡u quรฉt hoแบทc PDF dแปฑa trรชn hรฌnh แบฃnh, hรฃy sแปญ dแปฅng cรดng cแปฅ OCR PDF cแปงa chรบng tรดi.", + "convertButton": "Trรญch xuแบฅt vฤƒn bแบฃn" + }, + "digitalSignPdf": { + "name": "Chแปฏ kรฝ sแป‘ PDF", + "pageTitle": "Chแปฏ kรฝ sแป‘ PDF - Thรชm chแปฏ kรฝ mแบญt mรฃ | BentoPDF", + "subtitle": "Thรชm chแปฏ kรฝ sแป‘ mแบญt mรฃ vร o PDF cแปงa bแบกn bแบฑng chแปฉng chแป‰ X.509. Hแป— trแปฃ ฤ‘แป‹nh dแบกng PKCS#12 (.pfx, .p12) vร  PEM. Khรณa riรชng cแปงa bแบกn khรดng bao giแป rแปi khแปi trรฌnh duyแป‡t.", + "certificateSection": "Chแปฉng chแป‰", + "uploadCert": "Tแบฃi lรชn chแปฉng chแป‰ (.pfx, .p12)", + "certPassword": "Mแบญt khแบฉu chแปฉng chแป‰", + "certPasswordPlaceholder": "Nhแบญp mแบญt khแบฉu chแปฉng chแป‰", + "certInfo": "Thรดng tin chแปฉng chแป‰", + "certSubject": "Chแปง thแปƒ", + "certIssuer": "Nhร  phรกt hร nh", + "certValidity": "Hiแป‡u lแปฑc", + "signatureDetails": "Chi tiแบฟt chแปฏ kรฝ (Tรนy chแปn)", + "reason": "Lรฝ do", + "reasonPlaceholder": "vรญ dแปฅ: Tรดi phรช duyแป‡t tร i liแป‡u nร y", + "location": "ฤแป‹a ฤ‘iแปƒm", + "locationPlaceholder": "vรญ dแปฅ: Hร  Nแป™i, Viแป‡t Nam", + "contactInfo": "Thรดng tin liรชn hแป‡", + "contactPlaceholder": "vรญ dแปฅ: email@example.com", + "applySignature": "รp dแปฅng chแปฏ kรฝ sแป‘", + "successMessage": "Kรฝ PDF thร nh cรดng! Chแปฏ kรฝ cรณ thแปƒ ฤ‘ฦฐแปฃc xรกc minh trong bแบฅt kแปณ trรฌnh ฤ‘แปc PDF nร o." + }, + "validateSignaturePdf": { + "name": "Xรกc minh chแปฏ kรฝ PDF", + "pageTitle": "Xรกc minh chแปฏ kรฝ PDF - Xรกc thแปฑc chแปฏ kรฝ sแป‘ | BentoPDF", + "subtitle": "Xรกc minh chแปฏ kรฝ sแป‘ trong tแป‡p PDF cแปงa bแบกn. Kiแปƒm tra hiแป‡u lแปฑc chแปฉng chแป‰, xem thรดng tin ngฦฐแปi kรฝ vร  xรกc nhแบญn tรญnh toร n vแบนn tร i liแป‡u. Tแบฅt cแบฃ xแปญ lรฝ diแป…n ra trong trรฌnh duyแป‡t cแปงa bแบกn." + }, + "emailToPdf": { + "name": "Email sang PDF", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแป‡p email (EML, MSG) sang ฤ‘แป‹nh dแบกng PDF. Hแป— trแปฃ xuแบฅt Outlook vร  ฤ‘แป‹nh dแบกng email tiรชu chuแบฉn.", + "acceptedFormats": "Tแป‡p EML, MSG", + "convertButton": "Chuyแปƒn ฤ‘แป•i sang PDF" + }, + "fontToOutline": { + "name": "Phรดng chแปฏ thร nh ฤ‘ฦฐแปng viแปn", + "subtitle": "Chuyแปƒn ฤ‘แป•i tแบฅt cแบฃ phรดng chแปฏ thร nh ฤ‘ฦฐแปng viแปn vector ฤ‘แปƒ hiแปƒn thแป‹ nhแบฅt quรกn trรชn mแปi thiแบฟt bแป‹." + }, + "deskewPdf": { + "name": "Chแป‰nh nghiรชng PDF", + "subtitle": "Tแปฑ ฤ‘แป™ng lร m thแบณng cรกc trang quรฉt bแป‹ nghiรชng bแบฑng OpenCV." + } +} diff --git a/public/locales/zh-TW/common.json b/public/locales/zh-TW/common.json new file mode 100644 index 000000000..777dde8fa --- /dev/null +++ b/public/locales/zh-TW/common.json @@ -0,0 +1,323 @@ +{ + "nav": { + "home": "้ฆ–้ ", + "about": "้—œๆ–ผๆˆ‘ๅ€‘", + "contact": "่ฏ็ตกๆˆ‘ๅ€‘", + "licensing": "็”ขๅ“ๆŽˆๆฌŠ", + "allTools": "ๆ‰€ๆœ‰ๅทฅๅ…ท", + "openMainMenu": "้–‹ๅ•Ÿไธป้ธๅ–ฎ", + "language": "่ชž่จ€" + }, + "donation": { + "message": "ๅ–œๆญก BentoPDF๏ผŸๅนซๅŠฉๆˆ‘ๅ€‘ไฟๆŒๅ…่ฒปๅ’Œ้–‹ๆบ๏ผ", + "button": "ๆ่ดˆ" + }, + "hero": { + "title": "ๅฐˆ็‚บ้šฑ็งๆ‰“้€ ็š„", + "pdfToolkit": "PDF ๅทฅๅ…ท็ฎฑ", + "builtForPrivacy": " ", + "noSignups": "ไธ้ ˆ่จปๅ†Š", + "unlimitedUse": "็„ก้™ไฝฟ็”จ", + "worksOffline": "้›ข็ทšๅฏ็”จ", + "startUsing": "็ซ‹ๅˆป้–‹ๅง‹ไฝฟ็”จ" + }, + "usedBy": { + "title": "่ขซไธ‹ๅˆ—ๅ…ฌๅธๅŠๅ…ถๅ“กๅทฅๆŽก็”จ" + }, + "features": { + "title": "็‚บไฝ•ไฝ ่ฉฒ้ธๆ“‡", + "bentoPdf": "BentoPDF๏ผŸ", + "noSignup": { + "title": "ไธ้ ˆ่จปๅ†Š", + "description": "็ซ‹ๅณๅฏ็”จ๏ผŒไธ้ ˆๅธณ่™Ÿๆˆ–้›ปๅญ้ƒตไปถใ€‚" + }, + "noUploads": { + "title": "ไธ้ ˆไธŠๅ‚ณ", + "description": "ๆ‰€ๆœ‰ๆ–‡ไปถ้ƒฝๅœจ็”จๆˆถ็ซฏ่™•็†๏ผŒๆฐธ้ ไธๆœƒ้›ข้–‹ไฝ ็š„่ฃ็ฝฎใ€‚" + }, + "foreverFree": { + "title": "ๆฐธ้ ๅ…่ฒป", + "description": "ๆ‰€ๆœ‰ๅทฅๅ…ทๅ…่ฒปไฝฟ็”จ๏ผŒๆฒ’ๆœ‰่ฉฆ็”จๆœŸ๏ผŒไนŸๆฒ’ๆœ‰ไป˜่ฒป็‰†ใ€‚" + }, + "noLimits": { + "title": "ๆฒ’ๆœ‰้™ๅˆถ", + "description": "้šจๅฟƒๆ‰€ๆฌฒ็š„ไฝฟ็”จ๏ผŒๆฒ’ๆœ‰ไปปไฝ•้šฑ่—้™ๅˆถใ€‚" + }, + "batchProcessing": { + "title": "ๆ‰น้‡่™•็†", + "description": "ไธ€ๆฌก่™•็†็„ก้™้‡็š„ PDF ๆช”ๆกˆใ€‚" + }, + "lightningFast": { + "title": "ๅฟซๅฆ‚้–ƒ้›ป", + "description": "็žฌ้–“่™•็† PDF๏ผŒ็„ก้ ˆๅฟๅ—ไปปไฝ•็ญ‰ๅพ…ๆˆ–ๅปถ้ฒใ€‚" + } + }, + "tools": { + "title": "้–‹ๅง‹ไฝฟ็”จ", + "toolsLabel": "ๅทฅๅ…ท", + "subtitle": "้ปžๆ“Šไปปๆ„ๅทฅๅ…ทไปฅ้–‹ๅง‹ไธŠๅ‚ณๆช”ๆกˆ", + "searchPlaceholder": "ๆœๅฐ‹ๅทฅๅ…ท๏ผˆไพ‹ๅฆ‚ใ€Œๅˆไฝตใ€ๆˆ–ใ€Œๅˆ†ๅ‰ฒใ€...๏ผ‰", + "backToTools": "่ฟ”ๅ›žๅทฅๅ…ทๅˆ—่กจ", + "firstLoadNotice": "้ฆ–ๆฌก่ผ‰ๅ…ฅ้œ€่ฆไธ€้ปžๆ™‚้–“๏ผŒๅ› ็‚บๆˆ‘ๅ€‘ๆญฃๅœจไธ‹่ผ‰่ฝ‰ๆ›ๅผ•ๆ“Žใ€‚ไน‹ๅพŒๆ‰€ๆœ‰่ผ‰ๅ…ฅๅฐ‡ๅณๆ™‚ๅฎŒๆˆใ€‚" + }, + "upload": { + "clickToSelect": "้ปžๆ“Šไปฅ้ธๆ“‡ๆช”ๆกˆ", + "orDragAndDrop": "ๆˆ–ๅฐ‡ๆช”ๆกˆๆ‹–ๆ”พๅˆฐๆญค่™•", + "pdfOrImages": "PDF ๆˆ–ๅœ–็‰‡", + "filesNeverLeave": "ไฝ ็š„ๆช”ๆกˆๆฐธ้ ไธๆœƒ้›ข้–‹ไฝ ็š„่ฃ็ฝฎใ€‚", + "addMore": "ๆทปๅŠ ๆ›ดๅคšๆช”ๆกˆ", + "clearAll": "ๆธ…้™คๅ…จ้ƒจ" + }, + "loader": { + "processing": "ๆญฃๅœจ่™•็†..." + }, + "alert": { + "title": "ๆ็คบ", + "ok": "็ขบ่ช" + }, + "preview": { + "title": "ๆ–‡ไปถ้ ่ฆฝ", + "downloadAsPdf": "ไธ‹่ผ‰็‚บ PDF", + "close": "้—œ้–‰" + }, + "settings": { + "title": "่จญๅฎš", + "shortcuts": "ๅฟซๆท้ต", + "preferences": "ๅๅฅฝ่จญๅฎš", + "displayPreferences": "้กฏ็คบ่จญๅฎš", + "searchShortcuts": "ๆœๅฐ‹ๅฟซๆท้ต...", + "shortcutsInfo": "ๆŒ‰ไธ‹ไธฆๆŒ‰ไฝๆŒ‰้ตไปฅ่จญๅฎšๅฟซๆท้ตใ€‚่ฎŠๆ›ดๅฐ‡่‡ชๅ‹•ๅ„ฒๅญ˜ใ€‚", + "shortcutsWarning": "โš ๏ธ ้ฟๅ…ไฝฟ็”จ็€่ฆฝๅ™จๅธธ็”จๅฟซๆท้ต๏ผˆCmd/Ctrl+Wใ€Cmd/Ctrl+Tใ€Cmd/Ctrl+N ็ญ‰๏ผ‰๏ผŒๅฎƒๅ€‘ๅฏ่ƒฝ็„กๆณ•็ฉฉๅฎš้‹ไฝœใ€‚", + "import": "ๅŒฏๅ…ฅ", + "export": "ๅŒฏๅ‡บ", + "resetToDefaults": "ๆขๅพฉ้ ่จญๅ€ผ", + "fullWidthMode": "ๅ…จๅฏฌๆจกๅผ", + "fullWidthDescription": "ไฝฟ็”จๅ…จ่žขๅน•ๅฏฌๅบฆ่€Œ้ž็ฝฎไธญๅฎนๅ™จ้กฏ็คบๆ‰€ๆœ‰ๅทฅๅ…ท", + "settingsAutoSaved": "่จญๅฎšๆœƒ่‡ชๅ‹•ๅ„ฒๅญ˜", + "clickToSet": "้ปžๆ“Šไปฅ่จญๅฎš", + "pressKeys": "ๆŒ‰ไธ‹ๆŒ‰้ต...", + "warnings": { + "alreadyInUse": "ๅฟซๆท้ตๅทฒ่ขซๅ ็”จ", + "assignedTo": "ๅทฒ่ขซๆŒ‡ๅฎš็‚บ๏ผš", + "chooseDifferent": "่ซ‹้ธๆ“‡ไธ€ๅ€‹ไธๅŒ็š„ๅฟซๆท้ตใ€‚", + "reserved": "ไฟ็•™ๅฟซๆท้ต่ญฆๅ‘Š", + "commonlyUsed": "ๅธธ่ขซ็”จๆ–ผ๏ผš", + "unreliable": "้€™ๅ€‹ๅฟซๆท้ตๅฏ่ƒฝ่ˆ‡็ณป็ตฑ/็€่ฆฝๅ™จ่กŒ็‚บ่ก็ชๆˆ–็„กๆณ•็ฉฉๅฎš้‹ไฝœใ€‚", + "useAnyway": "ไป่ฆไฝฟ็”จๅ—Ž๏ผŸ", + "resetTitle": "้‡่จญๅฟซๆท้ต", + "resetMessage": "็ขบๅฎš่ฆๅฐ‡ๆ‰€ๆœ‰ๅฟซๆท้ตๆขๅพฉ็‚บ้ ่จญๅ€ผๅ—Ž๏ผŸ

้€™ๅ€‹ๆ“ไฝœ็„กๆณ•่ขซๆ’คๅ›žใ€‚", + "importSuccessTitle": "ๅŒฏๅ…ฅๆˆๅŠŸ", + "importSuccessMessage": "ๅฟซๆท้ตๅŒฏๅ…ฅๆˆๅŠŸ๏ผ", + "importFailTitle": "ๅŒฏๅ…ฅๅคฑๆ•—", + "importFailMessage": "ๅŒฏๅ…ฅๅฟซๆท้ตๅคฑๆ•—ใ€‚็„กๆ•ˆ็š„ๆช”ๆกˆๆ ผๅผใ€‚" + } + }, + "warning": { + "title": "่ญฆๅ‘Š", + "cancel": "ๅ–ๆถˆ", + "proceed": "็นผ็บŒ" + }, + "compliance": { + "title": "ไฝ ็š„่ณ‡ๆ–™ๆฐธ้ ไธๆœƒ้›ข้–‹ไฝ ็š„่ฃ็ฝฎ", + "weKeep": "ๆˆ‘ๅ€‘็ขบไฟ", + "yourInfoSafe": "ไฝ ็š„่ณ‡่จŠๅฎ‰ๅ…จ", + "byFollowingStandards": "้ตๅพชๅ…จ็ƒๅฎ‰ๅ…จๆจ™ๆบ–ใ€‚", + "processingLocal": "ๆ‰€ๆœ‰่™•็†้Ž็จ‹้ƒฝๅœจไฝ ็š„่ฃ็ฝฎไธŠ้€ฒ่กŒใ€‚", + "gdpr": { + "title": "็ฌฆๅˆ GDPR ่ฆ็ฏ„", + "description": "ไฟ่ญทๆญ็›Ÿๅขƒๅ…งๅ€‹ไบบ็š„ๆ•ธๆ“šๅŠ้šฑ็งใ€‚" + }, + "ccpa": { + "title": "็ฌฆๅˆ CCPA ่ฆ็ฏ„", + "description": "่ณฆไบˆๅŠ ๅทžๅฑ…ๆฐ‘ๅฐๅ…ถๅ€‹ไบบ่ณ‡่จŠๅฆ‚ไฝ•่ขซ่’้›†ใ€ไฝฟ็”จๅŠๅˆ†ไบซ็š„ๆฌŠๅˆฉใ€‚" + }, + "hipaa": { + "title": "็ฌฆๅˆ HIPAA ่ฆ็ฏ„", + "description": "ๅˆถๅฎš่™•็†็พŽๅœ‹ๅฅไฟ็ณป็ตฑไธญๆ•ๆ„Ÿๅฅๅบท่ณ‡่จŠ็š„่ฆ็ฏ„ใ€‚" + } + }, + "faq": { + "title": "ๅธธ่ฆ‹", + "questions": "ๅ•้กŒ", + "isFree": { + "question": "BentoPDF ็œŸ็š„ๆ˜ฏๅ…่ฒป็š„ๅ—Ž๏ผŸ", + "answer": "ๆฒ’้Œฏ๏ผŒๅฎŒๅ…จๅ…่ฒปใ€‚BentoPDF ไธŠ็š„ๆ‰€ๆœ‰ๅทฅๅ…ทๅ‡็‚บ 100% ๅ…่ฒปไฝฟ็”จ๏ผŒไธฆไธ”ๆฒ’ๆœ‰ๆช”ๆกˆ้™ๅˆถใ€็„ก้ ˆ่จปๅ†Šไธ”็„กๆตฎๆฐดๅฐใ€‚ๆˆ‘ๅ€‘็›ธไฟกๆฏๅ€‹ไบบ้ƒฝๅ€ผๅพ—ๅ…่ฒปไฝฟ็”จ็ฐกๅ–ฎไธ”ๅผทๅคง็š„ PDF ๅทฅๅ…ทใ€‚" + }, + "areFilesSecure": { + "question": "ๆˆ‘็š„ๆช”ๆกˆ้ƒฝๆ˜ฏๅฎ‰ๅ…จ็š„ๅ—Ž๏ผŸๅฎƒๅ€‘้ƒฝๅœจๅ“ช่ฃก่ขซ่™•็†๏ผŸ", + "answer": "ไฝ ็š„ๆช”ๆกˆ้ƒฝ้žๅธธๅฎ‰ๅ…จ๏ผŒๅ› ็‚บๅฎƒๅ€‘ๅพžๆœช้›ข้–‹ไฝ ็š„้›ป่…ฆใ€‚ๆ‰€ๆœ‰่™•็†้Ž็จ‹้ƒฝ็›ดๆŽฅๅœจไฝ ็š„็ถฒ้ ็€่ฆฝๅ™จไธญ้€ฒ่กŒ๏ผˆ็”จๆˆถ็ซฏ๏ผ‰ใ€‚ๆˆ‘ๅ€‘ๆฐธ้ ไธๆœƒๅฐ‡ไฝ ็š„ๆช”ๆกˆไธŠๅ‚ณๅˆฐไผบๆœๅ™จ๏ผŒๅ› ๆญคไฝ ๅฐไฝ ็š„ๆ–‡ไปถไฟๆœ‰ๅฎŒๅ…จ็š„้šฑ็ง่ˆ‡ๆŽงๅˆถๆฌŠใ€‚" + }, + "platforms": { + "question": "ๆˆ‘่ƒฝๅœจ Macใ€Windows ๅ’Œ่กŒๅ‹•่ฃ็ฝฎไธŠไฝฟ็”จๅ—Ž๏ผŸ", + "answer": "ๅฏไปฅ๏ผ็”ฑๆ–ผ BentoPDF ๅฎŒๅ…จๅœจไฝ ็š„็€่ฆฝๅ™จไธญ้‹ไฝœ๏ผŒๅฎƒๅœจไปปไฝ•ๆœ‰่‘—็พไปฃ็ถฒ้ ็€่ฆฝๅ™จ็š„็ณป็ตฑไธญ้ƒฝ่ƒฝ้‹่กŒ๏ผŒๅŒ…ๅซ Windowsใ€macOSใ€Linuxใ€iOS ๅ’Œ Androidใ€‚" + }, + "gdprCompliant": { + "question": "BentoPDF ็ฌฆๅˆ GDPR ่ฆ็ฏ„ๅ—Ž๏ผŸ", + "answer": "ๆ˜ฏ็š„ใ€‚BentoPDF ๅฎŒๅ…จ็ฌฆๅˆ GDPR ่ฆ็ฏ„ใ€‚็”ฑๆ–ผๆ‰€ๆœ‰ๆช”ๆกˆ่™•็†้ƒฝๅœจไฝ ็š„็€่ฆฝๅ™จๆœฌๅœฐ็™ผ็”Ÿไธ”ๆˆ‘ๅ€‘ๆฐธไธ่’้›†ๆˆ–ๅ‚ณ่ผธไฝ ็š„ๆช”ๆกˆ่‡ณไปปไฝ•ไผบๆœๅ™จ๏ผŒๆˆ‘ๅ€‘็„กๆณ•ๅญ˜ๅ–ไฝ ็š„่ณ‡ๆ–™ใ€‚้€™็ขบไฟไฝ ็š„ๆ–‡ไปถๆฐธ้ ้ƒฝๅœจไฝ ็š„ๆŽงๅˆถไน‹ไธญใ€‚" + }, + "dataStorage": { + "question": "ไฝ ๆœƒไฟๅญ˜ๆˆ–่ฟฝ่นคๆˆ‘็š„ๆช”ๆกˆๅ—Ž๏ผŸ", + "answer": "ไธใ€‚ๆˆ‘ๅ€‘ๆฐธไธๅ„ฒๅญ˜ใ€่ฟฝ่นคๆˆ–่จ˜้Œ„ไฝ ็š„ๆช”ๆกˆใ€‚ไฝ ๅœจ BentoPDF ไธŠ้€ฒ่กŒ็š„ไปปไฝ•ๆ“ไฝœ้ƒฝ็™ผ็”Ÿๅœจไฝ ็š„็€่ฆฝๅ™จ่จ˜ๆ†ถ้ซ”ไธญ๏ผŒไธฆไธ”ๆœƒๅœจไฝ ้—œ้–‰้ ้ขๅพŒ็ซ‹ๅณๆถˆๅคฑใ€‚ๆฒ’ๆœ‰ไธŠๅ‚ณใ€ๆฒ’ๆœ‰ๆญทๅฒ็ด€้Œ„ไธ”็„กไผบๆœๅ™จๅƒ่ˆ‡ใ€‚" + }, + "different": { + "question": "BentoPDF ่ทŸๅ…ถไป–็š„ PDF ๅทฅๅ…ทๆœ‰ไฝ•ไธๅŒไน‹่™•๏ผŸ", + "answer": "ๅคงๅคšๆ•ธ PDF ๅทฅๅ…ท้ƒฝ้€้Žๅฐ‡ไฝ ็š„ๆช”ๆกˆไธŠๅ‚ณ่‡ณไผบๆœๅ™จๅฅฝ้€ฒ่กŒ่™•็†ใ€‚BentoPDF ๆฐธ้ ไธๆœƒ้‚ฃ้บผๅšใ€‚ๆˆ‘ๅ€‘ไฝฟ็”จๅฎ‰ๅ…จไธ”็พไปฃ็š„็ถฒ้ ็ง‘ๆŠ€ไปฅๅœจไฝ ็š„็€่ฆฝๅ™จไธญ็›ดๆŽฅ่™•็†ๆช”ๆกˆใ€‚้€™ๆ„ๅ‘ณ่‘—ๆ›ดๅฟซ็š„ๆ€ง่ƒฝใ€ๆ›ดๅผท็š„้šฑ็ง่ˆ‡ๅฎŒๅ…จ็š„ๅฎ‰ๅฟƒใ€‚" + }, + "browserBased": { + "question": "็€่ฆฝๅ™จ็ซฏ่™•็†ๅฆ‚ไฝ•ไฟ้šœๆˆ‘็š„ๅฎ‰ๅ…จ๏ผŸ", + "answer": "้€้ŽๅฎŒๅ…จๅœจไฝ ็š„็€่ฆฝๅ™จๅ…ง้‹ไฝœ๏ผŒBentoPDF ็ขบไฟไฝ ็š„ๆ–‡ไปถๅพžๆœช้›ข้–‹ไฝ ็š„่ฃ็ฝฎใ€‚้€™ๆถˆ้™คไบ†ไผบๆœๅ™จ้ญ้งญใ€่ณ‡ๆ–™ๅค–ๆดฉ่ˆ‡ๆœชๆŽˆๆฌŠ่จชๅ•็š„้ขจ้šชใ€‚ไฝ ็š„ๆช”ๆกˆๆฐธ้ ้ƒฝๅฑฌๆ–ผไฝ ใ€‚" + }, + "analytics": { + "question": "ไฝ ๆœƒไฝฟ็”จ Cookies ๆˆ–็ถฒ็ซ™ๅˆ†ๆžไพ†่ฟฝ่นคๆˆ‘ๅ—Ž๏ผŸ", + "answer": "ๆˆ‘ๅ€‘ๅœจไนŽไฝ ็š„้šฑ็งใ€‚BentoPDF ไธฆไธ่ฟฝ่นคๅ€‹ไบบ่ณ‡่จŠใ€‚ๆˆ‘ๅ€‘ๅƒ…ไฝฟ็”จ Simple Analytics ไพ†ๆŸฅ็œ‹ๅŒฟๅ่จชๅ•ๆฌกๆ•ธใ€‚้€™ไปฃ่กจๆˆ‘ๅ€‘่ƒฝ็Ÿฅ้“ๆœ‰ๅคšๅฐ‘ไฝฟ็”จ่€…้€ ่จช้Žๆˆ‘ๅ€‘็š„็ถฒ็ซ™๏ผŒไฝ†ๆˆ‘ๅ€‘ๆฐธ้ ้ƒฝไธๆœƒ็Ÿฅ้“ไฝ ๆ˜ฏ่ชฐใ€‚Simple Analytics ๅฎŒๅ…จ็ฌฆๅˆ GDPR ่ฆ็ฏ„ไธ”ๅฐŠ้‡ไฝ ็š„้šฑ็งใ€‚" + } + }, + "testimonials": { + "title": "็œ‹็œ‹ๆˆ‘ๅ€‘็š„", + "users": "ไฝฟ็”จ่€…", + "say": "ๆ€Ž้บผ่ชช" + }, + "support": { + "title": "ๅ–œๆญกๆˆ‘็š„ไฝœๅ“ๅ—Ž๏ผŸ", + "description": "BentoPDF ๆ˜ฏไธ€ๅ€‹ๅ‡บๆ–ผ็†ฑๆƒ…้–‹็™ผ็š„ๅฐˆๆกˆ๏ผŒๆ—จๅœจ็‚บๆฏๅ€‹ไบบๆไพ›ไธ€ๅ€‹ๅ…่ฒปใ€ๆณจ้‡้šฑ็งไธ”ๅผทๅคง็š„ PDF ๅทฅๅ…ท็ต„ใ€‚ๅฆ‚ๆžœๆœ‰ๅนซไธŠไฝ ็š„ๅฟ™๏ผŒ่ซ‹่€ƒๆ…ฎๆ”ฏๆŒๅฎƒ็š„้–‹็™ผใ€‚ๆฏๆฏๅ’–ๅ•ก้ƒฝๆ„็พฉ้‡ๅคง๏ผ", + "buyMeCoffee": "่ฒทๆฏๅ’–ๅ•ก็ตฆๆˆ‘" + }, + "footer": { + "copyright": "ยฉ 2026 BentoPDFใ€‚็‰ˆๆฌŠๆ‰€ๆœ‰ใ€‚", + "version": "็‰ˆๆœฌ", + "company": "ๅ…ฌๅธ", + "aboutUs": "้—œๆ–ผๆˆ‘ๅ€‘", + "faqLink": "ๅธธ่ฆ‹ๅ•้กŒ", + "contactUs": "่ฏ็ตกๆˆ‘ๅ€‘", + "legal": "ๆณ•ๅพ‹", + "termsAndConditions": "ๆœๅ‹™ๆขๆฌพ", + "privacyPolicy": "้šฑ็งๆ”ฟ็ญ–", + "followUs": "้—œๆณจๆˆ‘ๅ€‘" + }, + "merge": { + "title": "ๅˆไฝต PDF", + "description": "ๅˆไฝตๆ•ดๅ€‹ๆช”ๆกˆ๏ผŒๆˆ–้ธๆ“‡็‰นๅฎš้ ้ขๅˆไฝต็‚บๆ–ฐๆ–‡ไปถใ€‚", + "fileMode": "ๆช”ๆกˆๆจกๅผ", + "pageMode": "้ ้ขๆจกๅผ", + "howItWorks": "ไฝฟ็”จ่ชชๆ˜Ž๏ผš", + "fileModeInstructions": [ + "้ปžๆ“ŠไธฆๆŠ“ๅ–ๅœ–ๆจ™ไพ†ๆ”น่ฎŠๆช”ๆกˆ้ †ๅบใ€‚", + "ๅœจๆฏๅ€‹ๆ–‡ไปถ็š„ใ€Œ้ ็ขผใ€ๆก†ไธญ๏ผŒไฝ ๅฏไปฅๅƒ…ๆŒ‡ๅฎšๆƒณ่ฆๅˆไฝต็š„้ ้ข็ฏ„ๅœ๏ผˆไพ‹ๅฆ‚ใ€Œ1-3, 5ใ€๏ผ‰ใ€‚", + "ๅฐ‡ใ€Œ้ ็ขผใ€ๆก†็•™็ฉบไปฅๅŒ…ๅซ่ฉฒๆช”ๆกˆ็š„ๆ‰€ๆœ‰้ ้ขใ€‚" + ], + "pageModeInstructions": [ + "ไธ‹ๅˆ—ๆ˜ฏไฝ ไธŠๅ‚ณ็š„ PDF ไธญ็š„ๆ‰€ๆœ‰้ ้ขใ€‚", + "ๅช่ฆๅฐ‡ๅ€‹ๅˆฅ้ ้ข็ธฎๅœ–ๆ‹–ๆ”พๅˆฐๆŒ‡ๅฎšไฝ็ฝฎ๏ผŒๅณๅฏ็‚บๆ–ฐๆช”ๆกˆๅปบ็ซ‹ๆ‚จๆƒณ่ฆ็š„็ฒพ็ขบๆŽ’ๅบใ€‚" + ], + "mergePdfs": "ๅˆไฝต PDF" + }, + "common": { + "page": "้ ", + "pages": "้ ", + "of": " / ", + "download": "ไธ‹่ผ‰", + "cancel": "ๅ–ๆถˆ", + "save": "ๅ„ฒๅญ˜", + "delete": "ๅˆช้™ค", + "edit": "็ทจ่ผฏ", + "add": "ๆทปๅŠ ", + "remove": "็งป้™ค", + "loading": "่ผ‰ๅ…ฅไธญ...", + "error": "้Œฏ่ชค", + "success": "ๆˆๅŠŸ", + "file": "ๆช”ๆกˆ", + "files": "ๆช”ๆกˆ" + }, + "about": { + "hero": { + "title": "ๆˆ‘ๅ€‘็›ธไฟก PDF ๅทฅๅ…ทๆ‡‰่ฉฒ", + "subtitle": "ๅฟซ้€Ÿใ€็งๅฏ†ไธ”ๅ…่ฒปใ€‚", + "noCompromises": "็ต•ไธๅฆฅๅ”ใ€‚" + }, + "mission": { + "title": "ๆˆ‘ๅ€‘็š„ไปปๅ‹™", + "description": "ๅœจๅฐŠ้‡ไฝ ็š„้šฑ็งไธ”ๅพžไธ่ฆๆฑ‚ๆ”ถ่ฒป็š„ๅŒๆ™‚ๆไพ›ๆœ€ๅ…จ้ข็š„ PDF ๅทฅๅ…ท็ฎฑใ€‚ๆˆ‘ๅ€‘็›ธไฟกๆ ธๅฟƒๆ–‡ไปถๅทฅๅ…ทๆ‡‰่ฎ“ไปปไฝ•ไบบ้šจๆ™‚้šจๅœฐไธๅ—้™็š„ไฝฟ็”จใ€‚" + }, + "philosophy": { + "label": "ๆˆ‘ๅ€‘็š„ๆ ธๅฟƒ็†ๅฟต", + "title": "ๆฐธ้ ไปฅ้šฑ็ง็‚บ้‡ใ€‚", + "description": "ๅœจๆ•ธๆ“š่ขซๅ•†ๅ“ๅŒ–็š„ๆ™‚ไปฃ๏ผŒๆˆ‘ๅ€‘ๆŽกๅ–ๆˆช็„ถไธๅŒ็š„ๅšๆณ•ใ€‚ๆ‰€ๆœ‰ BentoPDF ๅทฅๅ…ท็š„่™•็†ๆต็จ‹็š†ๅœจไฝ ็š„็€่ฆฝๅ™จๆœฌๅœฐๅฎŒๆˆใ€‚้€™ๆ„ๅ‘ณ่‘—ไฝ ็š„ๆช”ๆกˆ็ต•ไธ่งธๅŠๆˆ‘ๅ€‘็š„ไผบๆœๅ™จ๏ผŒๆˆ‘ๅ€‘ๅพžๆœช็œ‹่ฆ‹ไฝ ็š„ๆ–‡ไปถๅ…งๅฎน๏ผŒๆ›ดไธๆœƒ่ฟฝ่นคไฝ ็š„่กŒ็‚บใ€‚ไฝ ็š„ๆ–‡ไปถๅฐ‡ๅง‹็ต‚ไฟๆŒ็„กๅฏ็ฝฎ็–‘็š„็งๅฏ†ๆ€งใ€‚้€™ไธๅƒ…ๆ˜ฏๅŠŸ่ƒฝ๏ผŒๆ›ดๆ˜ฏๆˆ‘ๅ€‘็š„็ซ‹่บซไน‹ๆœฌใ€‚" + }, + "whyBentopdf": { + "title": "็‚บไฝ•้ธๆ“‡", + "speed": { + "title": "็”Ÿไพ†่ฟ…ๆท", + "description": "็„ก้œ€็ญ‰ๅพ…่ˆ‡ไผบๆœๅ™จ้–“็š„ไธŠๅ‚ณๅ’Œไธ‹่ผ‰ใ€‚้€้Žๅœจไฝ ็š„็€่ฆฝๅ™จไธญไฝฟ็”จ WebAssembly ็ญ‰็พไปฃ็ถฒ่ทฏ็ง‘ๆŠ€่™•็†ๆช”ๆกˆ๏ผŒๆˆ‘ๅ€‘ๅพ—ไปฅ็‚บๆ‰€ๆœ‰ๅทฅๅ…ทๆไพ›็„ก่ˆ‡ๅ€ซๆฏ”็š„้€Ÿๅบฆใ€‚" + }, + "free": { + "title": "ๅฎŒๅ…จๅ…่ฒป", + "description": "ๆฒ’ๆœ‰่ฉฆ็”จๆœŸใ€่จ‚้–ฑใ€้šฑ่—่ฒป็”จ่ˆ‡ๆ‰€่ฌ‚็š„ใ€Œ้ซ˜็ดšใ€ๅŠŸ่ƒฝใ€‚ๆˆ‘ๅ€‘็›ธไฟกๅผทๅคง็š„ PDF ๅทฅๅ…ทๆ‡‰่ฉฒๆ˜ฏไธ€็จฎๅ…ฌๅ…ฑ่จญๆ–ฝ๏ผŒ่€Œ้žไปฅ็‡Ÿๅˆฉ็‚บ้‡ใ€‚" + }, + "noAccount": { + "title": "็„ก้ ˆๅธณ่™Ÿ", + "description": "็ซ‹ๅณ้–‹ๅง‹ไฝฟ็”จไปปไฝ•ๅทฅๅ…ทใ€‚ๆˆ‘ๅ€‘ไธ้œ€่ฆไฝ ็š„้›ปๅญ้ƒตไปถใ€ๅฏ†็ขผๆˆ–ไปปไฝ•ๅ€‹ไบบ่ณ‡่จŠใ€‚ไฝ ็š„ๅทฅไฝœๆต็จ‹ๆ‡‰็•ถๅŒฟๅไธ”ไธๅ—้˜ป็ค™ใ€‚" + }, + "openSource": { + "title": "้–‹ๆบ็ฒพ็ฅž", + "description": "ๅฐ‡้€ๆ˜Žๆ€ง่ฆ–็‚บๆ ธๅฟƒๆ‰“้€ ใ€‚ๆˆ‘ๅ€‘ไฝฟ็”จไบ†ๅฆ‚ PDF-lib ๅ’Œ PDF.js ็ญ‰ๅ„ช็ง€็š„้–‹ๆบๅบซ๏ผŒไธฆไธ”็›ธไฟก็คพ็พค้ฉ…ๅ‹•ๅŠ›่ƒฝ่ฎ“ๅผทๅคง็š„ๅทฅๅ…ทๆƒ ๅŠๆฏไธ€ๅ€‹ไบบใ€‚" + } + }, + "cta": { + "title": "ๆบ–ๅ‚™ๅฅฝ้–‹ๅง‹ไบ†ๅ—Ž๏ผŸ", + "description": "ๅŠ ๅ…ฅๆˆๅƒไธŠ่ฌไฟกไปป BentoPDF ่ƒฝๅ‹ไปปไป–ๅ€‘ๆ—ฅๅธธๆ–‡ไปถ้œ€ๆฑ‚็š„ไฝฟ็”จ่€…ๅ€‘ใ€‚้ซ”้ฉ—้šฑ็ง่ˆ‡ๆ€ง่ƒฝๆ‰€ๅธถไพ†็š„ๅทฎ่ทใ€‚", + "button": "ๆŽข็ดขๆ‰€ๆœ‰ๅทฅๅ…ท" + } + }, + "contact": { + "title": "ไฟๆŒ่ฏ็ตก", + "subtitle": "ๆˆ‘ๅ€‘ๅพˆๆจ‚ๆ„ๆ”ถๅˆฐไฝ ็š„่จŠๆฏใ€‚็„ก่ซ–ไฝ ๆƒณๆๅ‡บ็š„ๆ˜ฏๅ•้กŒใ€ๅ›ž้ฅ‹ๆˆ–ๅŠŸ่ƒฝ่ซ‹ๆฑ‚๏ผŒ้ƒฝ่ซ‹้šจๆ™‚่ฏ็นซๆˆ‘ๅ€‘ใ€‚", + "email": "ไฝ ๅฏไปฅ็›ดๆŽฅ้€้Ž้›ปๅญ้ƒตไปถ่ฏ็นซๆˆ‘ๅ€‘๏ผš" + }, + "licensing": { + "title": "ๆŽˆๆฌŠไฝฟ็”จ", + "subtitle": "้ธๆ“‡้ฉๅˆ้œ€ๆฑ‚็š„็”ขๅ“ๆŽˆๆฌŠใ€‚" + }, + "multiTool": { + "uploadPdfs": "ไธŠๅ‚ณ PDF", + "upload": "ไธŠๅ‚ณ", + "addBlankPage": "ๆทปๅŠ ็ฉบ็™ฝ้ ้ข", + "edit": "็ทจ่ผฏ๏ผš", + "undo": "ๅพฉๅŽŸ", + "redo": "ๅ–ๆถˆๅพฉๅŽŸ", + "reset": "้‡่จญ", + "selection": "้ธๅ–๏ผš", + "selectAll": "้ธๅ–ๅ…จ้ƒจ", + "deselectAll": "ๅ–ๆถˆ้ธๅ–ๅ…จ้ƒจ", + "rotate": "ๆ—‹่ฝ‰๏ผš", + "rotateLeft": "ๅทฆ", + "rotateRight": "ๅณ", + "transform": "่ฎŠๆ›๏ผš", + "duplicate": "่ค‡่ฃฝ", + "split": "ๅˆ†ๅ‰ฒ", + "clear": "ๆธ…้™ค๏ผš", + "delete": "ๅˆช้™ค", + "download": "ไธ‹่ผ‰๏ผš", + "downloadSelected": "ไธ‹่ผ‰้ธๅ–็š„้ …็›ฎ", + "exportPdf": "ๅŒฏๅ‡บ PDF", + "uploadPdfFiles": "้ธๆ“‡ PDF ๆช”ๆกˆ", + "dragAndDrop": "ๆ‹–ๆ”พ PDF ๆช”ๆกˆ่‡ณๆญค่™•๏ผŒๆˆ–ๆ˜ฏ้ปžๆ“Šไปฅ้ธๅ–", + "selectFiles": "้ธๆ“‡ๆช”ๆกˆ", + "renderingPages": "ๆธฒๆŸ“้ ้ข...", + "actions": { + "duplicatePage": "่ค‡่ฃฝๆญค้ ", + "deletePage": "ๅˆช้™คๆญค้ ", + "insertPdf": "ๅœจๆญค้ ๅพŒๆ’ๅ…ฅ PDF", + "toggleSplit": "ๅœจๆญค้ ๅพŒๅˆ‡ๆ›ๅˆ†ๅ‰ฒ" + }, + "pleaseWait": "่ซ‹็จๅพŒ", + "pagesRendering": "ๆญฃๅœจๆธฒๆŸ“้ ้ขใ€‚่ซ‹็จๅพŒ...", + "noPagesSelected": "ๆœช้ธๆ“‡้ ้ข", + "selectOnePage": "่ซ‹่‡ณๅฐ‘้ธๆ“‡ไธ€้ ไปฅ้–‹ๅง‹ไธ‹่ผ‰ใ€‚", + "noPages": "็„ก้ ้ข", + "noPagesToExport": "็„กๅฏๅŒฏๅ‡บ็š„้ ้ขใ€‚", + "renderingTitle": "ๆญฃๅœจๆธฒๆŸ“้ ้ข้ ่ฆฝ", + "errorRendering": "็„กๆณ•ๆธฒๆŸ“้ ้ข็ธฎๅœ–", + "error": "้Œฏ่ชค", + "failedToLoad": "่ผ‰ๅ…ฅๅคฑๆ•—" + } +} diff --git a/public/locales/zh-TW/tools.json b/public/locales/zh-TW/tools.json new file mode 100644 index 000000000..6ef2fe0bb --- /dev/null +++ b/public/locales/zh-TW/tools.json @@ -0,0 +1,511 @@ +{ + "categories": { + "popularTools": "็†ฑ้–€ๅทฅๅ…ท", + "editAnnotate": "็ทจ่ผฏ่ˆ‡่จป่งฃ", + "convertToPdf": "่ฝ‰ๆ›็‚บ PDF", + "convertFromPdf": "ๅพž PDF ่ฝ‰ๆ›", + "organizeManage": "็ต„็น”่ˆ‡็ฎก็†", + "optimizeRepair": "ๅ„ชๅŒ–่ˆ‡ไฟฎๅพฉ", + "securePdf": "ๅฎ‰ๅ…จ PDF" + }, + "pdfMultiTool": { + "name": "PDF ๅคšๅŠŸ่ƒฝๅทฅๅ…ท", + "subtitle": "ๅœจ็ตฑไธ€็š„้ ้ขไธญๅˆไฝตใ€ๅˆ†ๅ‰ฒใ€็ต„็น”ใ€ๅˆช้™คใ€ๆ—‹่ฝ‰ใ€ๆทปๅŠ ็ฉบ็™ฝ้ ้ขใ€ๆๅ–่ˆ‡่ค‡่ฃฝใ€‚" + }, + "mergePdf": { + "name": "ๅˆไฝต PDF", + "subtitle": "ๅฐ‡ๅคšๅ€‹ PDF ๅˆไฝต็‚บไธ€ๅ€‹ๆช”ๆกˆใ€‚ไฟ็•™ๆ›ธ็ฑคใ€‚" + }, + "splitPdf": { + "name": "ๅˆ†ๅ‰ฒ PDF", + "subtitle": "ๅฐ‡ๆŒ‡ๅฎš็ฏ„ๅœ็š„้ ้ขๆๅ–็‚บๆ–ฐ็š„ PDFใ€‚" + }, + "compressPdf": { + "name": "ๅฃ“็ธฎ PDF", + "subtitle": "้™ไฝŽไฝ ็š„ PDF ๆช”ๆกˆๅคงๅฐใ€‚" + }, + "pdfEditor": { + "name": "PDF ็ทจ่ผฏๅ™จ", + "subtitle": "่จป่งฃใ€่žขๅ…‰ใ€ๅก—้ป‘ใ€่ฉ•่ซ–ใ€ๆทปๅŠ ๅœ–ๅฝขๆˆ–ๅœ–็‰‡ใ€ๆœๅฐ‹่ˆ‡ๆŸฅ็œ‹ PDFใ€‚" + }, + "jpgToPdf": { + "name": "JPG ่ฝ‰ PDF", + "subtitle": "ๅพžไธ€ๅผตๆˆ–ๅคšๅผต JPG ๅœ–็‰‡ๅปบ็ซ‹ PDFใ€‚" + }, + "signPdf": { + "name": "็ฐฝ็ฝฒ PDF", + "subtitle": "็นช่ฃฝใ€่ผธๅ…ฅๆˆ–ไธŠๅ‚ณไฝ ็š„็ฐฝๅใ€‚" + }, + "cropPdf": { + "name": "่ฃๅˆ‡ PDF", + "subtitle": "ไฟฎๅ‰ชไฝ ็š„ PDF ไธญๆ‰€ๆœ‰้ ้ข็š„้‚Š็•Œใ€‚" + }, + "extractPages": { + "name": "ๆๅ–้ ้ข", + "subtitle": "ๅฐ‡้ธๅ–็š„้ ้ขไฟๅญ˜็‚บๆ–ฐ็š„ๆช”ๆกˆใ€‚" + }, + "duplicateOrganize": { + "name": "่ค‡่ฃฝ่ˆ‡็ต„็น”", + "subtitle": "่ค‡่ฃฝใ€้‡ๆ–ฐๆŽ’ๅบ่ˆ‡ๅˆช้™ค้ ้ขใ€‚" + }, + "deletePages": { + "name": "ๅˆช้™ค้ ้ข", + "subtitle": "็งป้™คไฝ ็š„ๆ–‡ไปถไธญ็š„็‰นๅฎš้ ้ขใ€‚" + }, + "editBookmarks": { + "name": "็ทจ่ผฏๆ›ธ็ฑค", + "subtitle": "ๆทปๅŠ ใ€็ทจ่ผฏใ€ๅŒฏๅ…ฅใ€ๅˆช้™ค่ˆ‡ๆๅ– PDF ๆ›ธ็ฑคใ€‚" + }, + "tableOfContents": { + "name": "็›ฎ้Œ„", + "subtitle": "ๅพž PDF ๆ›ธ็ฑค็”Ÿๆˆ็›ฎ้Œ„้ ใ€‚" + }, + "pageNumbers": { + "name": "้ ็ขผ", + "subtitle": "ๅœจไฝ ็š„ๆ–‡ไปถไธญๆ’ๅ…ฅ้ ็ขผใ€‚" + }, + "addWatermark": { + "name": "ๆทปๅŠ ๆตฎๆฐดๅฐ", + "subtitle": "ๅœจไฝ ็š„ PDF ้ ้ขไธŠๅฃ“ๅฐๆ–‡ๅญ—ๆˆ–ๅœ–็‰‡ใ€‚" + }, + "headerFooter": { + "name": "้ ้ฆ–่ˆ‡้ ๅฐพ", + "subtitle": "ๅœจ้ ้ข็š„้ ‚้ƒจ่ˆ‡ๅบ•้ƒจๆ–ฐๅขžๆ–‡ๅญ—ใ€‚" + }, + "invertColors": { + "name": "ๅ่ฝ‰้ก่‰ฒ", + "subtitle": "็‚บไฝ ็š„ PDF ๅปบ็ซ‹ๆทฑ่‰ฒ็‰ˆๆœฌใ€‚" + }, + "backgroundColor": { + "name": "่ƒŒๆ™ฏ้ก่‰ฒ", + "subtitle": "ๆ›ดๆ”นไฝ ็š„ PDF ็š„่ƒŒๆ™ฏ้ก่‰ฒใ€‚" + }, + "changeTextColor": { + "name": "ๆ›ดๆ”นๆ–‡ๅญ—้ก่‰ฒ", + "subtitle": "ๆ›ดๆ”นไฝ ็š„ PDF ไธญ็š„ๆ–‡ๅญ—้ก่‰ฒใ€‚" + }, + "addStamps": { + "name": "ๆทปๅŠ ๅฐ็ซ ", + "subtitle": "ไฝฟ็”จ่จป่งฃๅทฅๅ…ทๅˆ—ๅœจไฝ ็š„ PDF ไธญๆทปๅŠ ๅœ–็‰‡ๅฐ็ซ ใ€‚", + "usernameLabel": "ๅฐ็ซ ไฝฟ็”จ่€…ๅ็จฑ", + "usernamePlaceholder": "่ผธๅ…ฅไฝ ็š„ๅ็จฑ๏ผˆๅฐ็ซ ็”จ๏ผ‰", + "usernameHint": "่ฉฒๅ็จฑๆœƒๅ‡บ็พๅœจไฝ ๅปบ็ซ‹็š„ๅฐ็ซ ไธŠใ€‚" + }, + "removeAnnotations": { + "name": "็งป้™ค่จป่งฃ", + "subtitle": "ๅŽป้™ค็•™่จ€ใ€่žขๅ…‰่ˆ‡้€ฃ็ตใ€‚" + }, + "pdfFormFiller": { + "name": "PDF ่กจๅ–ฎๅกซๅฏซๅ™จ", + "subtitle": "็›ดๆŽฅๅœจไฝ ็š„็€่ฆฝๅ™จไธญๅกซๅฏซ่กจๅ–ฎใ€‚ๆ”ฏๆด XFA ่กจๅ–ฎใ€‚" + }, + "createPdfForm": { + "name": "ๅปบ็ซ‹ PDF ่กจๅ–ฎ", + "subtitle": "้€้Žๆ‹–ๆ”พๆ–‡ๅญ—ๆก†ๅปบ็ซ‹ๅฏๅกซๅฏซ็š„ PDF ่กจๅ–ฎใ€‚" + }, + "removeBlankPages": { + "name": "็งป้™ค็ฉบ็™ฝ้ ้ข", + "subtitle": "่‡ชๅ‹•ๅตๆธฌไธฆๅˆช้™ค็ฉบ็™ฝ้ ้ขใ€‚" + }, + "imageToPdf": { + "name": "ๅœ–็‰‡่ฝ‰ PDF", + "subtitle": "ๅฐ‡ JPGใ€PNGใ€WebPใ€BMPใ€TIFFใ€SVG ่ˆ‡ HEIC ่ฝ‰ๆ›็‚บ PDFใ€‚" + }, + "pngToPdf": { + "name": "PNG ่ฝ‰ PDF", + "subtitle": "ๅพžไธ€ๅผตๆˆ–ๅคšๅผต PNG ๅœ–็‰‡ๅปบ็ซ‹ PDFใ€‚" + }, + "webpToPdf": { + "name": "WebP ่ฝ‰ PDF", + "subtitle": "ๅพžไธ€ๅผตๆˆ–ๅคšๅผต WebP ๅœ–็‰‡ๅปบ็ซ‹ PDFใ€‚" + }, + "svgToPdf": { + "name": "SVG ่ฝ‰ PDF", + "subtitle": "ๅพžไธ€ๅผตๆˆ–ๅคšๅผต SVG ๅœ–็‰‡ๅปบ็ซ‹ PDFใ€‚" + }, + "bmpToPdf": { + "name": "BMP ่ฝ‰ PDF", + "subtitle": "ๅพžไธ€ๅผตๆˆ–ๅคšๅผต BMP ๅœ–็‰‡ๅปบ็ซ‹ PDFใ€‚" + }, + "heicToPdf": { + "name": "HEIC ่ฝ‰ PDF", + "subtitle": "ๅพžไธ€ๅผตๆˆ–ๅคšๅผต HEIC ๅœ–็‰‡ๅปบ็ซ‹ PDFใ€‚" + }, + "tiffToPdf": { + "name": "TIFF ่ฝ‰ PDF", + "subtitle": "ๅพžไธ€ๅผตๆˆ–ๅคšๅผต TIFF ๅœ–็‰‡ๅปบ็ซ‹ PDFใ€‚" + }, + "textToPdf": { + "name": "Text ่ฝ‰ PDF", + "subtitle": "ๅฐ‡็ด”ๆ–‡ๅญ—ๆช”ๆกˆ่ฝ‰ๆ›็‚บ PDFใ€‚" + }, + "jsonToPdf": { + "name": "JSON ่ฝ‰ PDF", + "subtitle": "ๅฐ‡ JSON ๆช”ๆกˆ่ฝ‰ๆ›็‚บ PDF ๆ ผๅผใ€‚" + }, + "pdfToJpg": { + "name": "PDF ่ฝ‰ JPG", + "subtitle": "ๅฐ‡ๆฏๅ€‹ PDF ้ ้ข่ฝ‰ๆ›็‚บ JPG ๅœ–็‰‡ใ€‚" + }, + "pdfToPng": { + "name": "PDF ่ฝ‰ PNG", + "subtitle": "ๅฐ‡ๆฏๅ€‹ PDF ้ ้ข่ฝ‰ๆ›็‚บ PNG ๅœ–็‰‡ใ€‚" + }, + "pdfToWebp": { + "name": "PDF ่ฝ‰ WebP", + "subtitle": "ๅฐ‡ๆฏๅ€‹ PDF ้ ้ข่ฝ‰ๆ›็‚บ WebP ๅœ–็‰‡ใ€‚" + }, + "pdfToBmp": { + "name": "PDF ่ฝ‰ BMP", + "subtitle": "ๅฐ‡ๆฏๅ€‹ PDF ้ ้ข่ฝ‰ๆ›็‚บ BMP ๅœ–็‰‡ใ€‚" + }, + "pdfToTiff": { + "name": "PDF ่ฝ‰ TIFF", + "subtitle": "ๅฐ‡ๆฏๅ€‹ PDF ้ ้ข่ฝ‰ๆ›็‚บ TIFF ๅœ–็‰‡ใ€‚" + }, + "pdfToGreyscale": { + "name": "PDF ่ฝ‰็ฐ้šŽ", + "subtitle": "ๅฐ‡ๆ‰€ๆœ‰้ก่‰ฒ่ฝ‰ๆ›็‚บ้ป‘็™ฝใ€‚" + }, + "pdfToJson": { + "name": "PDF ่ฝ‰ JSON", + "subtitle": "ๅฐ‡ PDF ๆช”ๆกˆ่ฝ‰ๆ›็‚บ JSON ๆ ผๅผใ€‚" + }, + "ocrPdf": { + "name": "OCR PDF", + "subtitle": "ไฝฟ PDF ๅฏๆœๅฐ‹ไธ”ๅฏ่ค‡่ฃฝใ€‚" + }, + "alternateMix": { + "name": "ไบค้Œฏๆททๅˆ้ ้ข", + "subtitle": "ๅฐ‡ๆฏๅ€‹ PDF ็š„้ ้ขไบค้Œฏๅˆไฝตใ€‚ไฟ็•™ๆ›ธ็ฑคใ€‚" + }, + "addAttachments": { + "name": "ๆทปๅŠ ้™„ไปถ", + "subtitle": "ๅตŒๅ…ฅไธ€ๅ€‹ๆˆ–ๅคšๅ€‹ๆช”ๆกˆ่‡ณไฝ ็š„ PDF ไธญใ€‚" + }, + "extractAttachments": { + "name": "ๆๅ–้™„ไปถ", + "subtitle": "ๅพž PDF ไธญๆๅ–ๆ‰€ๆœ‰ๅตŒๅ…ฅ็š„ๆช”ๆกˆ็‚บ ZIPใ€‚" + }, + "editAttachments": { + "name": "็ทจ่ผฏ้™„ไปถ", + "subtitle": "ๆŸฅ็œ‹ๆˆ–็งป้™คไฝ ็š„ PDF ไธญ็š„้™„ไปถใ€‚" + }, + "dividePages": { + "name": "ๅˆ†ๅ‰ฒ้ ้ข", + "subtitle": "ๅž‚็›ดๆˆ–ๆฐดๅนณๅˆ†ๅ‰ฒ้ ้ขใ€‚" + }, + "addBlankPage": { + "name": "ๆทปๅŠ ็ฉบ็™ฝ้ ้ข", + "subtitle": "ๅœจไฝ ็š„ PDF ไธญ็š„ไปปไธ€ไฝ็ฝฎๆ’ๅ…ฅ็ฉบ็™ฝ้ ้ขใ€‚" + }, + "reversePages": { + "name": "ๅ่ฝ‰้ ้ข", + "subtitle": "ๅ่ฝ‰ไฝ ็š„ๆ–‡ไปถไธญๆ‰€ๆœ‰้ ้ข็š„้ †ๅบใ€‚" + }, + "rotatePdf": { + "name": "ๆ—‹่ฝ‰ PDF", + "subtitle": "ไปฅ 90 ๅบฆๅขž้‡ๆ—‹่ฝ‰้ ้ขใ€‚" + }, + "nUpPdf": { + "name": "N-Up PDF", + "subtitle": "ๅฐ‡ๅคšๅ€‹้ ้ขๆŽ’ๅˆ—ๅœจๅ–ฎๅผต็ด™ไธŠใ€‚" + }, + "combineToSinglePage": { + "name": "ๅˆไฝต็‚บๅ–ฎไธ€้ ้ข", + "subtitle": "ๅฐ‡ๆ‰€ๆœ‰้ ้ข็ธซๅˆ็‚บไธ€ๅ€‹ๅ–ฎไธ€ไธ”้€ฃ็บŒ็š„ๆปพๅ‹•้ ้ขใ€‚" + }, + "viewMetadata": { + "name": "ๆŸฅ็œ‹ๅ…ƒ่ณ‡ๆ–™", + "subtitle": "ๆชข่ฆ–ไฝ ็š„ PDF ไธญ็š„้šฑ่—ๅฑฌๆ€งใ€‚" + }, + "editMetadata": { + "name": "็ทจ่ผฏๅ…ƒ่ณ‡ๆ–™", + "subtitle": "ๆ›ดๆ”นไฝœ่€…ใ€ๆจ™้กŒๅ’Œๅ…ถไป–ๅฑฌๆ€งใ€‚" + }, + "pdfsToZip": { + "name": "PDF ่ฝ‰ ZIP", + "subtitle": "ๅฐ‡ๅคšๅ€‹ PDF ๆช”ๆกˆๆ‰“ๅŒ…็‚บ ZIP ๅฃ“็ธฎๆช”ใ€‚" + }, + "comparePdfs": { + "name": "ๆฏ”่ผƒ PDF", + "subtitle": "ไธฆๆŽ’ๆฏ”่ผƒๅ…ฉๅ€‹ PDFใ€‚" + }, + "posterizePdf": { + "name": "ๆตทๅ ฑๅŒ– PDF", + "subtitle": "ๅฐ‡ๅคง้ ้ขๅˆ†ๅ‰ฒ็‚บๅคšๅ€‹่ผƒๅฐ็š„้ ้ขใ€‚" + }, + "fixPageSize": { + "name": "ไฟฎๅพฉ้ ้ขๅคงๅฐ", + "subtitle": "ๅฐ‡ๆ‰€ๆœ‰้ ้ขๆจ™ๆบ–ๅŒ–็‚บ็ตฑไธ€ๅฐบๅฏธใ€‚" + }, + "linearizePdf": { + "name": "็ทšๆ€งๅŒ– PDF", + "subtitle": "็‚บๅฟซ้€Ÿ็ถฒ้ ็€่ฆฝๅ„ชๅŒ– PDFใ€‚" + }, + "pageDimensions": { + "name": "้ ้ขๅฐบๅฏธ", + "subtitle": "ๅˆ†ๆž้ ้ขๅคงๅฐใ€ๆ–นๅ‘ๅ’Œๅ–ฎไฝใ€‚" + }, + "removeRestrictions": { + "name": "็งป้™ค้™ๅˆถ", + "subtitle": "็งป้™ค่ˆ‡ๆ•ธไฝ็ฐฝๅ็š„ PDF ๆช”ๆกˆ็›ธ้—œ็š„ๅฏ†็ขผไฟ่ญท่ˆ‡ๅฎ‰ๅ…จ้™ๅˆถใ€‚" + }, + "repairPdf": { + "name": "ไฟฎๅพฉ PDF", + "subtitle": "ๅพžๅ—ๆ็š„ PDF ๆช”ๆกˆไธญๅพฉๅŽŸ่ณ‡ๆ–™ใ€‚" + }, + "encryptPdf": { + "name": "ๅŠ ๅฏ† PDF", + "subtitle": "้€้ŽๆทปๅŠ ๅฏ†็ขผ็‚บไฝ ็š„ PDF ไธŠ้Ž–ใ€‚" + }, + "sanitizePdf": { + "name": "ๆธ…็† PDF", + "subtitle": "็งป้™คๅ…ƒ่ณ‡ๆ–™ใ€่จป่งฃใ€่…ณๆœฌ่ˆ‡ๅ…ถไป–่ณ‡ๆ–™ใ€‚" + }, + "decryptPdf": { + "name": "่งฃๅฏ† PDF", + "subtitle": "้€้Ž็งป้™คๅฏ†็ขผไฟ่ญท่งฃ้Ž– PDFใ€‚" + }, + "flattenPdf": { + "name": "ๅนณ้ขๅŒ– PDF", + "subtitle": "ไฝฟ่กจๅ–ฎๆฌ„ไฝๅ’Œ่จป่งฃไธๅฏ็ทจ่ผฏใ€‚" + }, + "removeMetadata": { + "name": "็งป้™คๅ…ƒ่ณ‡ๆ–™", + "subtitle": "้™คๅŽปไฝ ็š„ PDF ไธญ็š„้šฑ่—่ณ‡ๆ–™ใ€‚" + }, + "changePermissions": { + "name": "ๆ›ดๆ”นๆฌŠ้™", + "subtitle": "่จญๅฎšๆˆ–่ฎŠๆ›ด PDF ไธŠ็š„ไฝฟ็”จ่€…ๆฌŠ้™ใ€‚" + }, + "emailToPdf": { + "name": "Email ่ฝ‰ PDF", + "subtitle": "ๅฐ‡้›ปๅญ้ƒตไปถๆช”ๆกˆ (EML, MSG) ่ฝ‰ๆ›็‚บ PDF ๆ ผๅผใ€‚ๆ”ฏๆด Outlook ๅŒฏๅ‡บๅ’Œๆจ™ๆบ–้›ปๅญ้ƒตไปถๆ ผๅผใ€‚", + "acceptedFormats": "EML, MSG ๆช”ๆกˆ", + "convertButton": "่ฝ‰ๆ›็‚บ PDF" + }, + "fontToOutline": { + "name": "ๅญ—ๅž‹่ฝ‰ๅค–ๆก†", + "subtitle": "ๅฐ‡ๆ‰€ๆœ‰ๅญ—ๅž‹่ฝ‰ๆ›็‚บๅ‘้‡ๅค–ๆก†๏ผŒ็ขบไฟๅœจๆ‰€ๆœ‰่ฃ็ฝฎไธŠๅ‘ˆ็พไธ€่‡ดใ€‚" + }, + "deskewPdf": { + "name": "PDF ๆญชๆ–œไฟฎๆญฃ", + "subtitle": "ไฝฟ็”จ OpenCV ่‡ชๅ‹•่ชฟๆญฃๅ‚พๆ–œ็š„ๆŽƒๆ้ ้ขใ€‚" + }, + "rotateCustom": { + "name": "Rotate by Custom Degrees", + "subtitle": "Rotate pages by any custom angle." + }, + "odtToPdf": { + "name": "ODT to PDF", + "subtitle": "Convert OpenDocument Text files to PDF format. Supports multiple files.", + "acceptedFormats": "ODT files", + "convertButton": "Convert to PDF" + }, + "csvToPdf": { + "name": "CSV to PDF", + "subtitle": "Convert CSV spreadsheet files to PDF format. Supports multiple files.", + "acceptedFormats": "CSV files", + "convertButton": "Convert to PDF" + }, + "rtfToPdf": { + "name": "RTF to PDF", + "subtitle": "Convert Rich Text Format documents to PDF. Supports multiple files.", + "acceptedFormats": "RTF files", + "convertButton": "Convert to PDF" + }, + "wordToPdf": { + "name": "Word to PDF", + "subtitle": "Convert Word documents (DOCX, DOC, ODT, RTF) to PDF format. Supports multiple files.", + "acceptedFormats": "DOCX, DOC, ODT, RTF files", + "convertButton": "Convert to PDF" + }, + "excelToPdf": { + "name": "Excel to PDF", + "subtitle": "Convert Excel spreadsheets (XLSX, XLS, ODS, CSV) to PDF format. Supports multiple files.", + "acceptedFormats": "XLSX, XLS, ODS, CSV files", + "convertButton": "Convert to PDF" + }, + "powerpointToPdf": { + "name": "PowerPoint to PDF", + "subtitle": "Convert PowerPoint presentations (PPTX, PPT, ODP) to PDF format. Supports multiple files.", + "acceptedFormats": "PPTX, PPT, ODP files", + "convertButton": "Convert to PDF" + }, + "markdownToPdf": { + "name": "Markdown to PDF", + "subtitle": "Write or paste Markdown and export it as a beautifully formatted PDF.", + "paneMarkdown": "Markdown", + "panePreview": "Preview", + "btnUpload": "Upload", + "btnSyncScroll": "Sync Scroll", + "btnSettings": "Settings", + "btnExportPdf": "Export PDF", + "settingsTitle": "Markdown Settings", + "settingsPreset": "Preset", + "presetDefault": "Default (GFM-like)", + "presetCommonmark": "CommonMark (strict)", + "presetZero": "Minimal (no features)", + "settingsOptions": "Markdown Options", + "optAllowHtml": "Allow HTML tags", + "optBreaks": "Convert newlines to
", + "optLinkify": "Auto-convert URLs to links", + "optTypographer": "Typographer (smart quotes, etc.)" + }, + "pdfBooklet": { + "name": "PDF Booklet", + "subtitle": "Rearrange pages for double-sided booklet printing. Fold and staple to create a booklet.", + "howItWorks": "How it works:", + "step1": "Upload a PDF file.", + "step2": "Pages will be rearranged in booklet order.", + "step3": "Print double-sided, flip on short edge, fold and staple.", + "paperSize": "Paper Size", + "orientation": "Orientation", + "portrait": "Portrait", + "landscape": "Landscape", + "pagesPerSheet": "Pages per Sheet", + "createBooklet": "Create Booklet", + "processing": "Processing...", + "pageCount": "Page count will be padded to multiple of 4 if needed." + }, + "xpsToPdf": { + "name": "XPS to PDF", + "subtitle": "Convert XPS/OXPS documents to PDF format. Supports multiple files.", + "acceptedFormats": "XPS, OXPS files", + "convertButton": "Convert to PDF" + }, + "mobiToPdf": { + "name": "MOBI to PDF", + "subtitle": "Convert MOBI e-books to PDF format. Supports multiple files.", + "acceptedFormats": "MOBI files", + "convertButton": "Convert to PDF" + }, + "epubToPdf": { + "name": "EPUB to PDF", + "subtitle": "Convert EPUB e-books to PDF format. Supports multiple files.", + "acceptedFormats": "EPUB files", + "convertButton": "Convert to PDF" + }, + "fb2ToPdf": { + "name": "FB2 to PDF", + "subtitle": "Convert FictionBook (FB2) e-books to PDF format. Supports multiple files.", + "acceptedFormats": "FB2 files", + "convertButton": "Convert to PDF" + }, + "cbzToPdf": { + "name": "CBZ to PDF", + "subtitle": "Convert comic book archives (CBZ/CBR) to PDF format. Supports multiple files.", + "acceptedFormats": "CBZ, CBR files", + "convertButton": "Convert to PDF" + }, + "wpdToPdf": { + "name": "WPD to PDF", + "subtitle": "Convert WordPerfect documents (WPD) to PDF format. Supports multiple files.", + "acceptedFormats": "WPD files", + "convertButton": "Convert to PDF" + }, + "wpsToPdf": { + "name": "WPS to PDF", + "subtitle": "Convert WPS Office documents to PDF format. Supports multiple files.", + "acceptedFormats": "WPS files", + "convertButton": "Convert to PDF" + }, + "xmlToPdf": { + "name": "XML to PDF", + "subtitle": "Convert XML documents to PDF format. Supports multiple files.", + "acceptedFormats": "XML files", + "convertButton": "Convert to PDF" + }, + "pagesToPdf": { + "name": "Pages to PDF", + "subtitle": "Convert Apple Pages documents to PDF format. Supports multiple files.", + "acceptedFormats": "Pages files", + "convertButton": "Convert to PDF" + }, + "odgToPdf": { + "name": "ODG to PDF", + "subtitle": "Convert OpenDocument Graphics (ODG) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODG files", + "convertButton": "Convert to PDF" + }, + "odsToPdf": { + "name": "ODS to PDF", + "subtitle": "Convert OpenDocument Spreadsheet (ODS) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODS files", + "convertButton": "Convert to PDF" + }, + "odpToPdf": { + "name": "ODP to PDF", + "subtitle": "Convert OpenDocument Presentation (ODP) files to PDF format. Supports multiple files.", + "acceptedFormats": "ODP files", + "convertButton": "Convert to PDF" + }, + "pubToPdf": { + "name": "PUB to PDF", + "subtitle": "Convert Microsoft Publisher (PUB) files to PDF format. Supports multiple files.", + "acceptedFormats": "PUB files", + "convertButton": "Convert to PDF" + }, + "vsdToPdf": { + "name": "VSD to PDF", + "subtitle": "Convert Microsoft Visio (VSD, VSDX) files to PDF format. Supports multiple files.", + "acceptedFormats": "VSD, VSDX files", + "convertButton": "Convert to PDF" + }, + "psdToPdf": { + "name": "PSD to PDF", + "subtitle": "Convert Adobe Photoshop (PSD) files to PDF format. Supports multiple files.", + "acceptedFormats": "PSD files", + "convertButton": "Convert to PDF" + }, + "pdfToSvg": { + "name": "PDF to SVG", + "subtitle": "Convert each page of a PDF file into a scalable vector graphic (SVG) for perfect quality at any size." + }, + "extractTables": { + "name": "Extract PDF Tables", + "subtitle": "Extract tables from PDF files and export as CSV, JSON, or Markdown." + }, + "pdfToCsv": { + "name": "PDF to CSV", + "subtitle": "Extract tables from PDF and convert to CSV format." + }, + "pdfToExcel": { + "name": "PDF to Excel", + "subtitle": "Extract tables from PDF and convert to Excel (XLSX) format." + }, + "pdfToText": { + "name": "PDF to Text", + "subtitle": "Extract text from PDF files and save as plain text (.txt). Supports multiple files.", + "note": "This tool works ONLY with digitally created PDFs. For scanned documents or image-based PDFs, use our OCR PDF tool instead.", + "convertButton": "Extract Text" + }, + "digitalSignPdf": { + "name": "Digital Signature PDF", + "pageTitle": "Digital Signature PDF - Add Cryptographic Signature | BentoPDF", + "subtitle": "Add a cryptographic digital signature to your PDF using X.509 certificates. Supports PKCS#12 (.pfx, .p12) and PEM formats. Your private key never leaves your browser.", + "certificateSection": "Certificate", + "uploadCert": "Upload certificate (.pfx, .p12)", + "certPassword": "Certificate Password", + "certPasswordPlaceholder": "Enter certificate password", + "certInfo": "Certificate Information", + "certSubject": "Subject", + "certIssuer": "Issuer", + "certValidity": "Valid", + "signatureDetails": "Signature Details (Optional)", + "reason": "Reason", + "reasonPlaceholder": "e.g., I approve this document", + "location": "Location", + "locationPlaceholder": "e.g., New York, USA", + "contactInfo": "Contact Info", + "contactPlaceholder": "e.g., email@example.com", + "applySignature": "Apply Digital Signature", + "successMessage": "PDF signed successfully! The signature can be verified in any PDF reader." + }, + "validateSignaturePdf": { + "name": "Validate PDF Signature", + "pageTitle": "Validate PDF Signature - Verify Digital Signatures | BentoPDF", + "subtitle": "Verify digital signatures in your PDF files. Check certificate validity, view signer details, and confirm document integrity. All processing happens in your browser." + } +} diff --git a/public/locales/zh/common.json b/public/locales/zh/common.json index 7bdfffaa6..9fe300bd5 100644 --- a/public/locales/zh/common.json +++ b/public/locales/zh/common.json @@ -1,319 +1,323 @@ { - "nav": { - "home": "้ฆ–้กต", - "about": "ๅ…ณไบŽๆˆ‘ไปฌ", - "contact": "่”็ณปๆˆ‘ไปฌ", - "licensing": "่ฎธๅฏ", - "allTools": "ๆ‰€ๆœ‰ๅทฅๅ…ท", - "openMainMenu": "ๆ‰“ๅผ€ไธป่œๅ•", - "language": "่ฏญ่จ€" + "nav": { + "home": "้ฆ–้กต", + "about": "ๅ…ณไบŽๆˆ‘ไปฌ", + "contact": "่”็ณปๆˆ‘ไปฌ", + "licensing": "่ฎธๅฏ", + "allTools": "ๆ‰€ๆœ‰ๅทฅๅ…ท", + "openMainMenu": "ๆ‰“ๅผ€ไธป่œๅ•", + "language": "่ฏญ่จ€" + }, + "donation": { + "message": "ๅ–œๆฌข BentoPDF๏ผŸๅธฎๅŠฉๆˆ‘ไปฌไฟๆŒๅ…่ดนๅ’Œๅผ€ๆบ๏ผ", + "button": "ๆ่ต " + }, + "hero": { + "title": "ไธ“ไธบ้š็งๆ‰“้€ ็š„", + "pdfToolkit": "PDF ๅทฅๅ…ท็ฎฑ", + "builtForPrivacy": " ", + "noSignups": "ๆ— ้œ€ๆณจๅ†Œ", + "unlimitedUse": "ๆ— ้™ไฝฟ็”จ", + "worksOffline": "็ฆป็บฟๅฏ็”จ", + "startUsing": "็ซ‹ๅณๅผ€ๅง‹" + }, + "usedBy": { + "title": "่ขซไผ—ๅคšๅ…ฌๅธๅ’Œไธชไบบไฟก่ต–๏ผŒๅŒ…ๆ‹ฌ" + }, + "features": { + "title": "ไธบไป€ไนˆ้€‰ๆ‹ฉ", + "bentoPdf": "BentoPDF?", + "noSignup": { + "title": "ๆ— ้œ€ๆณจๅ†Œ", + "description": "ๅณๅˆปๅผ€ๅง‹๏ผŒๆ— ้œ€่ดฆๆˆทๆˆ–็”ตๅญ้‚ฎไปถใ€‚" }, - "hero": { - "title": "ไธ“ไธบ้š็งๆ‰“้€ ็š„", - "pdfToolkit": "PDF ๅทฅๅ…ท็ฎฑ", - "builtForPrivacy": " ", - "noSignups": "ๆ— ้œ€ๆณจๅ†Œ", - "unlimitedUse": "ๆ— ้™ไฝฟ็”จ", - "worksOffline": "็ฆป็บฟๅฏ็”จ", - "startUsing": "็ซ‹ๅณๅผ€ๅง‹" - }, - "usedBy": { - "title": "่ขซไผ—ๅคšๅ…ฌๅธๅ’Œไธชไบบไฟก่ต–๏ผŒๅŒ…ๆ‹ฌ" - }, - "features": { - "title": "ไธบไป€ไนˆ้€‰ๆ‹ฉ", - "bentoPdf": "BentoPDF?", - "noSignup": { - "title": "ๆ— ้œ€ๆณจๅ†Œ", - "description": "ๅณๅˆปๅผ€ๅง‹๏ผŒๆ— ้œ€่ดฆๆˆทๆˆ–็”ตๅญ้‚ฎไปถใ€‚" - }, - "noUploads": { - "title": "ๆ— ้œ€ไธŠไผ ", - "description": "100% ๅฎขๆˆท็ซฏๅค„็†๏ผŒๆ‚จ็š„ๆ–‡ไปถไปŽๆœช็ฆปๅผ€ๆ‚จ็š„่ฎพๅค‡ใ€‚" - }, - "foreverFree": { - "title": "ๆฐธไน…ๅ…่ดน", - "description": "ๆ‰€ๆœ‰ๅทฅๅ…ทๅ…่ดน๏ผŒๆ— ่ฏ•็”จๆœŸ๏ผŒๆ— ไป˜่ดนๅข™ใ€‚" - }, - "noLimits": { - "title": "ๆ— ้™ๅˆถ", - "description": "้šๅฟƒไฝฟ็”จ๏ผŒๆ— ไปปไฝ•้šๅฝข้™ๅˆถใ€‚" - }, - "batchProcessing": { - "title": "ๆ‰น้‡ๅค„็†", - "description": "ไธ€ๆฌกๅค„็†ๆ— ้™ๆ•ฐ้‡็š„ PDF ๆ–‡ไปถใ€‚" - }, - "lightningFast": { - "title": "ๆž้€Ÿๅค„็†", - "description": "็žฌ้—ดๅค„็† PDF, ๆ— ้œ€็ญ‰ๅพ…ใ€‚" - } + "noUploads": { + "title": "ๆ— ้œ€ไธŠไผ ", + "description": "100% ๅฎขๆˆท็ซฏๅค„็†๏ผŒๆ‚จ็š„ๆ–‡ไปถไปŽๆœช็ฆปๅผ€ๆ‚จ็š„่ฎพๅค‡ใ€‚" }, - "tools": { - "title": "ๅผ€ๅง‹ไฝฟ็”จ", - "toolsLabel": "ๅทฅๅ…ท", - "subtitle": "็‚นๅ‡ปๅทฅๅ…ทไปฅๆ‰“ๅผ€ๆ–‡ไปถไธŠไผ ", - "searchPlaceholder": "ๆœ็ดขๅทฅๅ…ท (ไพ‹ๅฆ‚ 'ๅˆๅนถ', 'ๅˆ†ๅ‰ฒ'...)", - "backToTools": "่ฟ”ๅ›žๅทฅๅ…ทๅˆ—่กจ", - "firstLoadNotice": "้ฆ–ๆฌกๅŠ ่ฝฝ้œ€่ฆไธ€็‚นๆ—ถ้—ด๏ผŒๅ› ไธบๆˆ‘ไปฌๆญฃๅœจไธ‹่ฝฝ่ฝฌๆขๅผ•ๆ“Žใ€‚ไน‹ๅŽๆ‰€ๆœ‰ๅŠ ่ฝฝๅฐ†ๅณๆ—ถๅฎŒๆˆใ€‚" + "foreverFree": { + "title": "ๆฐธไน…ๅ…่ดน", + "description": "ๆ‰€ๆœ‰ๅทฅๅ…ทๅ…่ดน๏ผŒๆ— ่ฏ•็”จๆœŸ๏ผŒๆ— ไป˜่ดนๅข™ใ€‚" }, - "upload": { - "clickToSelect": "็‚นๅ‡ป้€‰ๆ‹ฉๆ–‡ไปถ", - "orDragAndDrop": "ๆˆ–ๅฐ†ๆ–‡ไปถๆ‹–ๆ”พๅˆฐๆญคๅค„", - "pdfOrImages": "PDF ๆˆ–ๅ›พ็‰‡", - "filesNeverLeave": "ๆ‚จ็š„ๆ–‡ไปถไปŽๆœช็ฆปๅผ€ๆ‚จ็š„่ฎพๅค‡ใ€‚", - "addMore": "ๆทปๅŠ ๆ›ดๅคšๆ–‡ไปถ", - "clearAll": "ๆธ…็ฉบๆ‰€ๆœ‰" + "noLimits": { + "title": "ๆ— ้™ๅˆถ", + "description": "้šๅฟƒไฝฟ็”จ๏ผŒๆ— ไปปไฝ•้šๅฝข้™ๅˆถใ€‚" }, - "loader": { - "processing": "ๅค„็†ไธญ..." + "batchProcessing": { + "title": "ๆ‰น้‡ๅค„็†", + "description": "ไธ€ๆฌกๅค„็†ๆ— ้™ๆ•ฐ้‡็š„ PDF ๆ–‡ไปถใ€‚" }, - "alert": { - "title": "ๆ็คบ", - "ok": "็กฎๅฎš" - }, - "preview": { - "title": "ๆ–‡ๆกฃ้ข„่งˆ", - "downloadAsPdf": "ไธ‹่ฝฝ PDF", - "close": "ๅ…ณ้—ญ" + "lightningFast": { + "title": "ๆž้€Ÿๅค„็†", + "description": "็žฌ้—ดๅค„็† PDF, ๆ— ้œ€็ญ‰ๅพ…ใ€‚" + } + }, + "tools": { + "title": "ๅผ€ๅง‹ไฝฟ็”จ", + "toolsLabel": "ๅทฅๅ…ท", + "subtitle": "็‚นๅ‡ปๅทฅๅ…ทไปฅๆ‰“ๅผ€ๆ–‡ไปถไธŠไผ ", + "searchPlaceholder": "ๆœ็ดขๅทฅๅ…ท (ไพ‹ๅฆ‚ 'ๅˆๅนถ', 'ๅˆ†ๅ‰ฒ'...)", + "backToTools": "่ฟ”ๅ›žๅทฅๅ…ทๅˆ—่กจ", + "firstLoadNotice": "้ฆ–ๆฌกๅŠ ่ฝฝ้œ€่ฆไธ€็‚นๆ—ถ้—ด๏ผŒๅ› ไธบๆˆ‘ไปฌๆญฃๅœจไธ‹่ฝฝ่ฝฌๆขๅผ•ๆ“Žใ€‚ไน‹ๅŽๆ‰€ๆœ‰ๅŠ ่ฝฝๅฐ†ๅณๆ—ถๅฎŒๆˆใ€‚" + }, + "upload": { + "clickToSelect": "็‚นๅ‡ป้€‰ๆ‹ฉๆ–‡ไปถ", + "orDragAndDrop": "ๆˆ–ๅฐ†ๆ–‡ไปถๆ‹–ๆ”พๅˆฐๆญคๅค„", + "pdfOrImages": "PDF ๆˆ–ๅ›พ็‰‡", + "filesNeverLeave": "ๆ‚จ็š„ๆ–‡ไปถไปŽๆœช็ฆปๅผ€ๆ‚จ็š„่ฎพๅค‡ใ€‚", + "addMore": "ๆทปๅŠ ๆ›ดๅคšๆ–‡ไปถ", + "clearAll": "ๆธ…็ฉบๆ‰€ๆœ‰" + }, + "loader": { + "processing": "ๅค„็†ไธญ..." + }, + "alert": { + "title": "ๆ็คบ", + "ok": "็กฎๅฎš" + }, + "preview": { + "title": "ๆ–‡ๆกฃ้ข„่งˆ", + "downloadAsPdf": "ไธ‹่ฝฝ PDF", + "close": "ๅ…ณ้—ญ" + }, + "settings": { + "title": "่ฎพ็ฝฎ", + "shortcuts": "ๅฟซๆท้”ฎ", + "preferences": "ๅๅฅฝ่ฎพ็ฝฎ", + "displayPreferences": "ๆ˜พ็คบ่ฎพ็ฝฎ", + "searchShortcuts": "ๆœ็ดขๅฟซๆท้”ฎ...", + "shortcutsInfo": "ๆŒ‰ไธ‹ๅนถๆŒ‰ไฝๆŒ‰้”ฎไปฅ่ฎพ็ฝฎๅฟซๆท้”ฎใ€‚ๆ›ดๆ”นๅฐ†่‡ชๅŠจไฟๅญ˜ใ€‚", + "shortcutsWarning": "โš ๏ธ ้ฟๅ…ไฝฟ็”จ้€š็”จ็š„ๆต่งˆๅ™จๅฟซๆท้”ฎ (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N ็ญ‰)๏ผŒๅ› ไธบๅฎƒไปฌๅฏ่ƒฝๆ— ๆณ•็จณๅฎšๅทฅไฝœใ€‚", + "import": "ๅฏผๅ…ฅ", + "export": "ๅฏผๅ‡บ", + "resetToDefaults": "ๆขๅค้ป˜่ฎค", + "fullWidthMode": "ๅ…จๅฎฝๆจกๅผ", + "fullWidthDescription": "ไฝฟ็”จๅ…จๅฑๅฎฝๅบฆๅฑ•็คบๆ‰€ๆœ‰ๅทฅๅ…ท๏ผŒ่€Œ้žๅฑ…ไธญๆ˜พ็คบ", + "settingsAutoSaved": "่ฎพ็ฝฎๅทฒ่‡ชๅŠจไฟๅญ˜", + "clickToSet": "็‚นๅ‡ป่ฎพ็ฝฎ", + "pressKeys": "ๆŒ‰ไธ‹ๆŒ‰้”ฎ...", + "warnings": { + "alreadyInUse": "ๅฟซๆท้”ฎๅทฒ่ขซไฝฟ็”จ", + "assignedTo": "ๅทฒๅˆ†้…็ป™๏ผš", + "chooseDifferent": "่ฏท้€‰ๆ‹ฉๅ…ถไป–ๅฟซๆท้”ฎใ€‚", + "reserved": "ไฟ็•™ๅฟซๆท้”ฎ่ญฆๅ‘Š", + "commonlyUsed": "้€šๅธธ็”จไบŽ๏ผš", + "unreliable": "ๆญคๅฟซๆท้”ฎๅฏ่ƒฝๆ— ๆณ•็จณๅฎšๅทฅไฝœ๏ผŒๆˆ–ไธŽๆต่งˆๅ™จ/็ณป็ปŸๅฟซๆท้”ฎๅ†ฒ็ชใ€‚", + "useAnyway": "ไป่ฆไฝฟ็”จๅ—๏ผŸ", + "resetTitle": "้‡็ฝฎๅฟซๆท้”ฎ", + "resetMessage": "็กฎๅฎš่ฆๅฐ†ๆ‰€ๆœ‰ๅฟซๆท้”ฎ้‡็ฝฎไธบ้ป˜่ฎคๅ€ผๅ—๏ผŸ

ๆญคๆ“ไฝœๆ— ๆณ•ๆ’ค้”€ใ€‚", + "importSuccessTitle": "ๅฏผๅ…ฅๆˆๅŠŸ", + "importSuccessMessage": "ๅฟซๆท้”ฎๅฏผๅ…ฅๆˆๅŠŸ๏ผ", + "importFailTitle": "ๅฏผๅ…ฅๅคฑ่ดฅ", + "importFailMessage": "ๅฏผๅ…ฅๅฟซๆท้”ฎๅคฑ่ดฅใ€‚ๆ–‡ไปถๆ ผๅผๆ— ๆ•ˆใ€‚" + } + }, + "warning": { + "title": "่ญฆๅ‘Š", + "cancel": "ๅ–ๆถˆ", + "proceed": "็ปง็ปญ" + }, + "compliance": { + "title": "ๆ‚จ็š„ๆ•ฐๆฎไปŽๆœช็ฆปๅผ€ๆ‚จ็š„่ฎพๅค‡", + "weKeep": "ๆˆ‘ไปฌไผšไฟๆŒ", + "yourInfoSafe": "ๆ‚จ็š„ไฟกๆฏๅฎ‰ๅ…จ", + "byFollowingStandards": "๏ผŒ้ตๅพชๅ…จ็ƒๅฎ‰ๅ…จๆ ‡ๅ‡†ใ€‚", + "processingLocal": "ๆ‰€ๆœ‰ๅค„็†้ƒฝๅœจๆ‚จ็š„่ฎพๅค‡ไธŠๆœฌๅœฐ่ฟ›่กŒใ€‚", + "gdpr": { + "title": "GDPR ๅˆ่ง„", + "description": "ไฟๆŠคๆฌง็›Ÿๅขƒๅ†…ไธชไบบ็š„ไธชไบบๆ•ฐๆฎๅ’Œ้š็งใ€‚" }, - "settings": { - "title": "่ฎพ็ฝฎ", - "shortcuts": "ๅฟซๆท้”ฎ", - "preferences": "ๅๅฅฝ่ฎพ็ฝฎ", - "displayPreferences": "ๆ˜พ็คบ่ฎพ็ฝฎ", - "searchShortcuts": "ๆœ็ดขๅฟซๆท้”ฎ...", - "shortcutsInfo": "ๆŒ‰ไธ‹ๅนถๆŒ‰ไฝๆŒ‰้”ฎไปฅ่ฎพ็ฝฎๅฟซๆท้”ฎใ€‚ๆ›ดๆ”นๅฐ†่‡ชๅŠจไฟๅญ˜ใ€‚", - "shortcutsWarning": "โš ๏ธ ้ฟๅ…ไฝฟ็”จ้€š็”จ็š„ๆต่งˆๅ™จๅฟซๆท้”ฎ (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N ็ญ‰)๏ผŒๅ› ไธบๅฎƒไปฌๅฏ่ƒฝๆ— ๆณ•็จณๅฎšๅทฅไฝœใ€‚", - "import": "ๅฏผๅ…ฅ", - "export": "ๅฏผๅ‡บ", - "resetToDefaults": "ๆขๅค้ป˜่ฎค", - "fullWidthMode": "ๅ…จๅฎฝๆจกๅผ", - "fullWidthDescription": "ไฝฟ็”จๅ…จๅฑๅฎฝๅบฆๅฑ•็คบๆ‰€ๆœ‰ๅทฅๅ…ท๏ผŒ่€Œ้žๅฑ…ไธญๆ˜พ็คบ", - "settingsAutoSaved": "่ฎพ็ฝฎๅทฒ่‡ชๅŠจไฟๅญ˜", - "clickToSet": "็‚นๅ‡ป่ฎพ็ฝฎ", - "pressKeys": "ๆŒ‰ไธ‹ๆŒ‰้”ฎ...", - "warnings": { - "alreadyInUse": "ๅฟซๆท้”ฎๅทฒ่ขซไฝฟ็”จ", - "assignedTo": "ๅทฒๅˆ†้…็ป™๏ผš", - "chooseDifferent": "่ฏท้€‰ๆ‹ฉๅ…ถไป–ๅฟซๆท้”ฎใ€‚", - "reserved": "ไฟ็•™ๅฟซๆท้”ฎ่ญฆๅ‘Š", - "commonlyUsed": "้€šๅธธ็”จไบŽ๏ผš", - "unreliable": "ๆญคๅฟซๆท้”ฎๅฏ่ƒฝๆ— ๆณ•็จณๅฎšๅทฅไฝœ๏ผŒๆˆ–ไธŽๆต่งˆๅ™จ/็ณป็ปŸๅฟซๆท้”ฎๅ†ฒ็ชใ€‚", - "useAnyway": "ไป่ฆไฝฟ็”จๅ—๏ผŸ", - "resetTitle": "้‡็ฝฎๅฟซๆท้”ฎ", - "resetMessage": "็กฎๅฎš่ฆๅฐ†ๆ‰€ๆœ‰ๅฟซๆท้”ฎ้‡็ฝฎไธบ้ป˜่ฎคๅ€ผๅ—๏ผŸ

ๆญคๆ“ไฝœๆ— ๆณ•ๆ’ค้”€ใ€‚", - "importSuccessTitle": "ๅฏผๅ…ฅๆˆๅŠŸ", - "importSuccessMessage": "ๅฟซๆท้”ฎๅฏผๅ…ฅๆˆๅŠŸ๏ผ", - "importFailTitle": "ๅฏผๅ…ฅๅคฑ่ดฅ", - "importFailMessage": "ๅฏผๅ…ฅๅฟซๆท้”ฎๅคฑ่ดฅใ€‚ๆ–‡ไปถๆ ผๅผๆ— ๆ•ˆใ€‚" - } + "ccpa": { + "title": "CCPA ๅˆ่ง„", + "description": "่ต‹ไบˆๅŠ ๅทžๅฑ…ๆฐ‘ๅฏนๅ…ถไธชไบบไฟกๆฏ็š„ๆ”ถ้›†ใ€ไฝฟ็”จๅ’Œๅ…ฑไบซ็š„ๆƒๅˆฉใ€‚" }, - "warning": { - "title": "่ญฆๅ‘Š", - "cancel": "ๅ–ๆถˆ", - "proceed": "็ปง็ปญ" + "hipaa": { + "title": "HIPAA ๅˆ่ง„", + "description": "ๅˆถๅฎš็พŽๅ›ฝๅŒป็–—็ณป็ปŸไธญๅค„็†ๆ•ๆ„Ÿๅฅๅบทไฟกๆฏ็š„ไฟ้šœๆŽชๆ–ฝใ€‚" + } + }, + "faq": { + "title": "ๅธธ่ง", + "questions": "้—ฎ้ข˜", + "isFree": { + "question": "BentoPDF ็œŸ็š„ๅ…่ดนๅ—๏ผŸ", + "answer": "ๆ˜ฏ็š„๏ผŒๅฎŒๅ…จๅ…่ดนใ€‚BentoPDF ไธŠ็š„ๆ‰€ๆœ‰ๅทฅๅ…ทๅ‡ๅฏ 100% ๅ…่ดนไฝฟ็”จ๏ผŒๆฒกๆœ‰ๆ–‡ไปถ้™ๅˆถ๏ผŒๆ— ้œ€ๆณจๅ†Œ๏ผŒไนŸๆฒกๆœ‰ๆฐดๅฐใ€‚ๆˆ‘ไปฌ็›ธไฟกๆฏไธชไบบ้ƒฝๅบ”่ฏฅ่ƒฝๅคŸไฝฟ็”จ็ฎ€ๅ•ใ€ๅผบๅคง็š„ PDF ๅทฅๅ…ท๏ผŒ่€Œๆ— ้œ€้€š่ฟ‡ไป˜่ดนๅข™ใ€‚" }, - "compliance": { - "title": "ๆ‚จ็š„ๆ•ฐๆฎไปŽๆœช็ฆปๅผ€ๆ‚จ็š„่ฎพๅค‡", - "weKeep": "ๆˆ‘ไปฌไผšไฟๆŒ", - "yourInfoSafe": "ๆ‚จ็š„ไฟกๆฏๅฎ‰ๅ…จ", - "byFollowingStandards": "๏ผŒ้ตๅพชๅ…จ็ƒๅฎ‰ๅ…จๆ ‡ๅ‡†ใ€‚", - "processingLocal": "ๆ‰€ๆœ‰ๅค„็†้ƒฝๅœจๆ‚จ็š„่ฎพๅค‡ไธŠๆœฌๅœฐ่ฟ›่กŒใ€‚", - "gdpr": { - "title": "GDPR ๅˆ่ง„", - "description": "ไฟๆŠคๆฌง็›Ÿๅขƒๅ†…ไธชไบบ็š„ไธชไบบๆ•ฐๆฎๅ’Œ้š็งใ€‚" - }, - "ccpa": { - "title": "CCPA ๅˆ่ง„", - "description": "่ต‹ไบˆๅŠ ๅทžๅฑ…ๆฐ‘ๅฏนๅ…ถไธชไบบไฟกๆฏ็š„ๆ”ถ้›†ใ€ไฝฟ็”จๅ’Œๅ…ฑไบซ็š„ๆƒๅˆฉใ€‚" - }, - "hipaa": { - "title": "HIPAA ๅˆ่ง„", - "description": "ๅˆถๅฎš็พŽๅ›ฝๅŒป็–—็ณป็ปŸไธญๅค„็†ๆ•ๆ„Ÿๅฅๅบทไฟกๆฏ็š„ไฟ้šœๆŽชๆ–ฝใ€‚" - } + "areFilesSecure": { + "question": "ๆˆ‘็š„ๆ–‡ไปถๅฎ‰ๅ…จๅ—๏ผŸๅฎƒไปฌๅœจๅ“ช้‡Œๅค„็†๏ผŸ", + "answer": "ๆ‚จ็š„ๆ–‡ไปถ้žๅธธๅฎ‰ๅ…จ๏ผŒๅ› ไธบๅฎƒไปฌไปŽๆœช็ฆปๅผ€ๆ‚จ็š„็”ต่„‘ใ€‚ๆ‰€ๆœ‰ๅค„็†้ƒฝ็›ดๆŽฅๅœจๆ‚จ็š„็ฝ‘็ปœๆต่งˆๅ™จ๏ผˆๅฎขๆˆท็ซฏ๏ผ‰ไธญ่ฟ›่กŒใ€‚ๆˆ‘ไปฌไปŽไธๅฐ†ๆ‚จ็š„ๆ–‡ไปถไธŠไผ ๅˆฐๆœๅŠกๅ™จ๏ผŒๅ› ๆญคๆ‚จๅฏไปฅๅฏนๆ–‡ๆกฃไฟๆŒๅฎŒๅ…จ็š„้š็งๅ’ŒๆŽงๅˆถใ€‚" }, - "faq": { - "title": "ๅธธ่ง", - "questions": "้—ฎ้ข˜", - "isFree": { - "question": "BentoPDF ็œŸ็š„ๅ…่ดนๅ—๏ผŸ", - "answer": "ๆ˜ฏ็š„๏ผŒๅฎŒๅ…จๅ…่ดนใ€‚BentoPDF ไธŠ็š„ๆ‰€ๆœ‰ๅทฅๅ…ทๅ‡ๅฏ 100% ๅ…่ดนไฝฟ็”จ๏ผŒๆฒกๆœ‰ๆ–‡ไปถ้™ๅˆถ๏ผŒๆ— ้œ€ๆณจๅ†Œ๏ผŒไนŸๆฒกๆœ‰ๆฐดๅฐใ€‚ๆˆ‘ไปฌ็›ธไฟกๆฏไธชไบบ้ƒฝๅบ”่ฏฅ่ƒฝๅคŸไฝฟ็”จ็ฎ€ๅ•ใ€ๅผบๅคง็š„ PDF ๅทฅๅ…ท๏ผŒ่€Œๆ— ้œ€้€š่ฟ‡ไป˜่ดนๅข™ใ€‚" - }, - "areFilesSecure": { - "question": "ๆˆ‘็š„ๆ–‡ไปถๅฎ‰ๅ…จๅ—๏ผŸๅฎƒไปฌๅœจๅ“ช้‡Œๅค„็†๏ผŸ", - "answer": "ๆ‚จ็š„ๆ–‡ไปถ้žๅธธๅฎ‰ๅ…จ๏ผŒๅ› ไธบๅฎƒไปฌไปŽๆœช็ฆปๅผ€ๆ‚จ็š„็”ต่„‘ใ€‚ๆ‰€ๆœ‰ๅค„็†้ƒฝ็›ดๆŽฅๅœจๆ‚จ็š„็ฝ‘็ปœๆต่งˆๅ™จ๏ผˆๅฎขๆˆท็ซฏ๏ผ‰ไธญ่ฟ›่กŒใ€‚ๆˆ‘ไปฌไปŽไธๅฐ†ๆ‚จ็š„ๆ–‡ไปถไธŠไผ ๅˆฐๆœๅŠกๅ™จ๏ผŒๅ› ๆญคๆ‚จๅฏไปฅๅฏนๆ–‡ๆกฃไฟๆŒๅฎŒๅ…จ็š„้š็งๅ’ŒๆŽงๅˆถใ€‚" - }, - "platforms": { - "question": "ๅฎƒ้€‚็”จไบŽ Macใ€Windows ๅ’Œๆ‰‹ๆœบๅ—๏ผŸ", - "answer": "ๆ˜ฏ็š„๏ผ็”ฑไบŽ BentoPDF ๅฎŒๅ…จๅœจๆ‚จ็š„ๆต่งˆๅ™จไธญ่ฟ่กŒ๏ผŒๅ› ๆญคๅฎƒ้€‚็”จไบŽไปปไฝ•ๅธฆๆœ‰็Žฐไปฃ็ฝ‘็ปœๆต่งˆๅ™จ็š„ๆ“ไฝœ็ณป็ปŸ๏ผŒๅŒ…ๆ‹ฌ Windowsใ€macOSใ€Linuxใ€iOS ๅ’Œ Androidใ€‚" - }, - "gdprCompliant": { - "question": "BentoPDF ็ฌฆๅˆ GDPR ๅ—๏ผŸ", - "answer": "ๆ˜ฏ็š„ใ€‚BentoPDF ๅฎŒๅ…จ็ฌฆๅˆ GDPRใ€‚็”ฑไบŽๆ‰€ๆœ‰ๆ–‡ไปถๅค„็†้ƒฝๅœจๆ‚จ็š„ๆต่งˆๅ™จไธญๆœฌๅœฐ่ฟ›่กŒ๏ผŒๅนถไธ”ๆˆ‘ไปฌไปŽไธๆ”ถ้›†ๆˆ–ๅฐ†ๆ‚จ็š„ๆ–‡ไปถไผ ่พ“ๅˆฐไปปไฝ•ๆœๅŠกๅ™จ๏ผŒๅ› ๆญคๆˆ‘ไปฌๆ— ๆณ•่ฎฟ้—ฎๆ‚จ็š„ๆ•ฐๆฎใ€‚่ฟ™็กฎไฟๆ‚จๅง‹็ปˆๆŽŒๆŽงๆ‚จ็š„ๆ–‡ๆกฃใ€‚" - }, - "dataStorage": { - "question": "ไฝ ไปฌไผšๅญ˜ๅ‚จๆˆ–่ทŸ่ธชๆˆ‘็š„ไปปไฝ•ๆ–‡ไปถๅ—๏ผŸ", - "answer": "ไธใ€‚ๆˆ‘ไปฌไปŽไธๅญ˜ๅ‚จใ€่ทŸ่ธชๆˆ–่ฎฐๅฝ•ๆ‚จ็š„ๆ–‡ไปถใ€‚ๆ‚จๅœจ BentoPDF ไธŠๆ‰€ๅš็š„ๆ‰€ๆœ‰ๆ“ไฝœ้ƒฝๅœจๆ‚จ็š„ๆต่งˆๅ™จๅ†…ๅญ˜ไธญ่ฟ›่กŒ๏ผŒๅนถๅœจๆ‚จๅ…ณ้—ญ้กต้ขๅŽๆถˆๅคฑใ€‚ๆฒกๆœ‰ไธŠไผ ๏ผŒๆฒกๆœ‰ๅކๅฒ่ฎฐๅฝ•๏ผŒไนŸๆฒกๆœ‰ๆถ‰ๅŠๆœๅŠกๅ™จใ€‚" - }, - "different": { - "question": "BentoPDF ไธŽๅ…ถไป– PDF ๅทฅๅ…ทๆœ‰ไฝ•ไธๅŒ๏ผŸ", - "answer": "ๅคงๅคšๆ•ฐ PDF ๅทฅๅ…ทๅฐ†ๆ‚จ็š„ๆ–‡ไปถไธŠไผ ๅˆฐๆœๅŠกๅ™จ่ฟ›่กŒๅค„็†ใ€‚BentoPDF ไปŽไธ่ฟ™ๆ ทๅšใ€‚ๆˆ‘ไปฌไฝฟ็”จๅฎ‰ๅ…จใ€็Žฐไปฃ็š„็ฝ‘็ปœๆŠ€ๆœฏ็›ดๆŽฅๅœจๆ‚จ็š„ๆต่งˆๅ™จไธญๅค„็†ๆ‚จ็š„ๆ–‡ไปถใ€‚่ฟ™ๆ„ๅ‘ณ็€ๆ›ดๅฟซ็š„ๆ€ง่ƒฝใ€ๆ›ดๅผบ็š„้š็งๅ’ŒๅฎŒๅ…จ็š„ๅฎ‰ๅฟƒใ€‚" - }, - "browserBased": { - "question": "ๅŸบไบŽๆต่งˆๅ™จ็š„ๅค„็†ๅฆ‚ไฝ•ไฟๆŠคๆˆ‘็š„ๅฎ‰ๅ…จ๏ผŸ", - "answer": "้€š่ฟ‡ๅฎŒๅ…จๅœจๆ‚จ็š„ๆต่งˆๅ™จๅ†…้ƒจ่ฟ่กŒ๏ผŒBentoPDF ็กฎไฟๆ‚จ็š„ๆ–‡ไปถไปŽๆœช็ฆปๅผ€ๆ‚จ็š„่ฎพๅค‡ใ€‚่ฟ™ๆถˆ้™คไบ†ๆœๅŠกๅ™จ้ป‘ๅฎขๆ”ปๅ‡ปใ€ๆ•ฐๆฎๆณ„้œฒๆˆ–ๆœช็ปๆŽˆๆƒ่ฎฟ้—ฎ็š„้ฃŽ้™ฉใ€‚ๆ‚จ็š„ๆ–‡ไปถๅง‹็ปˆๅฑžไบŽๆ‚จใ€‚" - }, - "analytics": { - "question": "ไฝ ไปฌไฝฟ็”จ Cookie ๆˆ–ๅˆ†ๆžๆฅ่ทŸ่ธชๆˆ‘ๅ—๏ผŸ", - "answer": "ๆˆ‘ไปฌๅ…ณๅฟƒๆ‚จ็š„้š็งใ€‚BentoPDF ไธไผš่ทŸ่ธชไธชไบบไฟกๆฏใ€‚ๆˆ‘ไปฌไป…ไฝฟ็”จ Simple Analytics ๆŸฅ็œ‹ๅŒฟๅ่ฎฟ้—ฎ่ฎกๆ•ฐใ€‚่ฟ™ๆ„ๅ‘ณ็€ๆˆ‘ไปฌๅฏไปฅ็Ÿฅ้“ๆœ‰ๅคšๅฐ‘็”จๆˆท่ฎฟ้—ฎๆˆ‘ไปฌ็š„็ฝ‘็ซ™๏ผŒไฝ†ๆˆ‘ไปฌๆฐธ่ฟœไธ็Ÿฅ้“ๆ‚จๆ˜ฏ่ฐใ€‚Simple Analytics ๅฎŒๅ…จ็ฌฆๅˆ GDPR ๅนถๅฐŠ้‡ๆ‚จ็š„้š็งใ€‚" - } + "platforms": { + "question": "ๅฎƒ้€‚็”จไบŽ Macใ€Windows ๅ’Œๆ‰‹ๆœบๅ—๏ผŸ", + "answer": "ๆ˜ฏ็š„๏ผ็”ฑไบŽ BentoPDF ๅฎŒๅ…จๅœจๆ‚จ็š„ๆต่งˆๅ™จไธญ่ฟ่กŒ๏ผŒๅ› ๆญคๅฎƒ้€‚็”จไบŽไปปไฝ•ๅธฆๆœ‰็Žฐไปฃ็ฝ‘็ปœๆต่งˆๅ™จ็š„ๆ“ไฝœ็ณป็ปŸ๏ผŒๅŒ…ๆ‹ฌ Windowsใ€macOSใ€Linuxใ€iOS ๅ’Œ Androidใ€‚" }, - "testimonials": { - "title": "ๆˆ‘ไปฌ็š„", - "users": "็”จๆˆท", - "say": "่ฏ„ไปท" + "gdprCompliant": { + "question": "BentoPDF ็ฌฆๅˆ GDPR ๅ—๏ผŸ", + "answer": "ๆ˜ฏ็š„ใ€‚BentoPDF ๅฎŒๅ…จ็ฌฆๅˆ GDPRใ€‚็”ฑไบŽๆ‰€ๆœ‰ๆ–‡ไปถๅค„็†้ƒฝๅœจๆ‚จ็š„ๆต่งˆๅ™จไธญๆœฌๅœฐ่ฟ›่กŒ๏ผŒๅนถไธ”ๆˆ‘ไปฌไปŽไธๆ”ถ้›†ๆˆ–ๅฐ†ๆ‚จ็š„ๆ–‡ไปถไผ ่พ“ๅˆฐไปปไฝ•ๆœๅŠกๅ™จ๏ผŒๅ› ๆญคๆˆ‘ไปฌๆ— ๆณ•่ฎฟ้—ฎๆ‚จ็š„ๆ•ฐๆฎใ€‚่ฟ™็กฎไฟๆ‚จๅง‹็ปˆๆŽŒๆŽงๆ‚จ็š„ๆ–‡ๆกฃใ€‚" }, - "support": { - "title": "ๅ–œๆฌข่ฟ™ไธช้กน็›ฎ๏ผŸ", - "description": "BentoPDF ๆ˜ฏไธ€ไธชๅ……ๆปกๆฟ€ๆƒ…็š„้กน็›ฎ๏ผŒๆ—จๅœจไธบๆฏไธชไบบๆไพ›ๅ…่ดนใ€็งๅฏ†ไธ”ๅผบๅคง็š„ PDF ๅทฅๅ…ท็ฎฑใ€‚ๅฆ‚ๆžœๆ‚จ่ง‰ๅพ—ๅฎƒๆœ‰็”จ๏ผŒ่ฏท่€ƒ่™‘ๆ”ฏๆŒๅฎƒ็š„ๅผ€ๅ‘ใ€‚ๆฏไธ€ๆฏๅ’–ๅ•ก้ƒฝๆ˜ฏ่Žซๅคง็š„ๆ”ฏๆŒ๏ผ", - "buyMeCoffee": "่ฏทๆˆ‘ๅ–ๆฏๅ’–ๅ•ก" + "dataStorage": { + "question": "ไฝ ไปฌไผšๅญ˜ๅ‚จๆˆ–่ทŸ่ธชๆˆ‘็š„ไปปไฝ•ๆ–‡ไปถๅ—๏ผŸ", + "answer": "ไธใ€‚ๆˆ‘ไปฌไปŽไธๅญ˜ๅ‚จใ€่ทŸ่ธชๆˆ–่ฎฐๅฝ•ๆ‚จ็š„ๆ–‡ไปถใ€‚ๆ‚จๅœจ BentoPDF ไธŠๆ‰€ๅš็š„ๆ‰€ๆœ‰ๆ“ไฝœ้ƒฝๅœจๆ‚จ็š„ๆต่งˆๅ™จๅ†…ๅญ˜ไธญ่ฟ›่กŒ๏ผŒๅนถๅœจๆ‚จๅ…ณ้—ญ้กต้ขๅŽๆถˆๅคฑใ€‚ๆฒกๆœ‰ไธŠไผ ๏ผŒๆฒกๆœ‰ๅކๅฒ่ฎฐๅฝ•๏ผŒไนŸๆฒกๆœ‰ๆถ‰ๅŠๆœๅŠกๅ™จใ€‚" }, - "footer": { - "copyright": "ยฉ 2025 BentoPDF. ไฟ็•™ๆ‰€ๆœ‰ๆƒๅˆฉใ€‚", - "version": "็‰ˆๆœฌ", - "company": "ๅ…ฌๅธ", - "aboutUs": "ๅ…ณไบŽๆˆ‘ไปฌ", - "faqLink": "ๅธธ่ง้—ฎ้ข˜", - "contactUs": "่”็ณปๆˆ‘ไปฌ", - "legal": "ๆณ•ๅพ‹", - "termsAndConditions": "ๆœๅŠกๆกๆฌพ", - "privacyPolicy": "้š็งๆ”ฟ็ญ–", - "followUs": "ๅ…ณๆณจๆˆ‘ไปฌ" + "different": { + "question": "BentoPDF ไธŽๅ…ถไป– PDF ๅทฅๅ…ทๆœ‰ไฝ•ไธๅŒ๏ผŸ", + "answer": "ๅคงๅคšๆ•ฐ PDF ๅทฅๅ…ทๅฐ†ๆ‚จ็š„ๆ–‡ไปถไธŠไผ ๅˆฐๆœๅŠกๅ™จ่ฟ›่กŒๅค„็†ใ€‚BentoPDF ไปŽไธ่ฟ™ๆ ทๅšใ€‚ๆˆ‘ไปฌไฝฟ็”จๅฎ‰ๅ…จใ€็Žฐไปฃ็š„็ฝ‘็ปœๆŠ€ๆœฏ็›ดๆŽฅๅœจๆ‚จ็š„ๆต่งˆๅ™จไธญๅค„็†ๆ‚จ็š„ๆ–‡ไปถใ€‚่ฟ™ๆ„ๅ‘ณ็€ๆ›ดๅฟซ็š„ๆ€ง่ƒฝใ€ๆ›ดๅผบ็š„้š็งๅ’ŒๅฎŒๅ…จ็š„ๅฎ‰ๅฟƒใ€‚" }, - "merge": { - "title": "ๅˆๅนถ PDF", - "description": "ๅˆๅนถๆ•ดไธชๆ–‡ไปถ๏ผŒๆˆ–้€‰ๆ‹ฉ็‰นๅฎš้กต้ขๅˆๅนถๅˆฐๆ–ฐๆ–‡ๆกฃไธญใ€‚", - "fileMode": "ๆ–‡ไปถๆจกๅผ", - "pageMode": "้กต้ขๆจกๅผ", - "howItWorks": "ไฝฟ็”จ่ฏดๆ˜Ž๏ผš", - "fileModeInstructions": [ - "็‚นๅ‡ปๅนถๆ‹–ๅŠจๅ›พๆ ‡ไปฅๆ›ดๆ”นๆ–‡ไปถ็š„้กบๅบใ€‚", - "ๅœจๆฏไธชๆ–‡ไปถ็š„ '้กต็ ' ๆก†ไธญ๏ผŒๆ‚จๅฏไปฅๆŒ‡ๅฎš่Œƒๅ›ด๏ผˆไพ‹ๅฆ‚ '1-3, 5'๏ผ‰ไปฅไป…ๅˆๅนถ่ฟ™ไบ›้กต้ขใ€‚", - "ๅฐ† '้กต็ ' ๆก†็•™็ฉบไปฅๅŒ…ๅซ่ฏฅๆ–‡ไปถ็š„ๆ‰€ๆœ‰้กต้ขใ€‚" - ], - "pageModeInstructions": [ - "ๆ‚จไธŠไผ ็š„ PDF ็š„ๆ‰€ๆœ‰้กต้ขๆ˜พ็คบๅœจไธ‹ๆ–นใ€‚", - "ๅช้œ€ๆ‹–ๆ”พๅ•ไธช้กต้ข็ผฉ็•ฅๅ›พ๏ผŒๅณๅฏไธบๆ‚จๆ–ฐๆ–‡ไปถๅฏน้กต้ข่ฟ›่กŒๆŽ’ๅบใ€‚" - ], - "mergePdfs": "ๅˆๅนถ PDF" + "browserBased": { + "question": "ๅŸบไบŽๆต่งˆๅ™จ็š„ๅค„็†ๅฆ‚ไฝ•ไฟๆŠคๆˆ‘็š„ๅฎ‰ๅ…จ๏ผŸ", + "answer": "้€š่ฟ‡ๅฎŒๅ…จๅœจๆ‚จ็š„ๆต่งˆๅ™จๅ†…้ƒจ่ฟ่กŒ๏ผŒBentoPDF ็กฎไฟๆ‚จ็š„ๆ–‡ไปถไปŽๆœช็ฆปๅผ€ๆ‚จ็š„่ฎพๅค‡ใ€‚่ฟ™ๆถˆ้™คไบ†ๆœๅŠกๅ™จ้ป‘ๅฎขๆ”ปๅ‡ปใ€ๆ•ฐๆฎๆณ„้œฒๆˆ–ๆœช็ปๆŽˆๆƒ่ฎฟ้—ฎ็š„้ฃŽ้™ฉใ€‚ๆ‚จ็š„ๆ–‡ไปถๅง‹็ปˆๅฑžไบŽๆ‚จใ€‚" }, - "common": { - "page": "้กต", - "pages": "้กต", - "of": " / ", - "download": "ไธ‹่ฝฝ", - "cancel": "ๅ–ๆถˆ", - "save": "ไฟๅญ˜", - "delete": "ๅˆ ้™ค", - "edit": "็ผ–่พ‘", - "add": "ๆทปๅŠ ", - "remove": "็งป้™ค", - "loading": "ๅŠ ่ฝฝไธญ...", - "error": "้”™่ฏฏ", - "success": "ๆˆๅŠŸ", - "file": "ๆ–‡ไปถ", - "files": "ๆ–‡ไปถ" + "analytics": { + "question": "ไฝ ไปฌไฝฟ็”จ Cookie ๆˆ–ๅˆ†ๆžๆฅ่ทŸ่ธชๆˆ‘ๅ—๏ผŸ", + "answer": "ๆˆ‘ไปฌๅ…ณๅฟƒๆ‚จ็š„้š็งใ€‚BentoPDF ไธไผš่ทŸ่ธชไธชไบบไฟกๆฏใ€‚ๆˆ‘ไปฌไป…ไฝฟ็”จ Simple Analytics ๆŸฅ็œ‹ๅŒฟๅ่ฎฟ้—ฎ่ฎกๆ•ฐใ€‚่ฟ™ๆ„ๅ‘ณ็€ๆˆ‘ไปฌๅฏไปฅ็Ÿฅ้“ๆœ‰ๅคšๅฐ‘็”จๆˆท่ฎฟ้—ฎๆˆ‘ไปฌ็š„็ฝ‘็ซ™๏ผŒไฝ†ๆˆ‘ไปฌๆฐธ่ฟœไธ็Ÿฅ้“ๆ‚จๆ˜ฏ่ฐใ€‚Simple Analytics ๅฎŒๅ…จ็ฌฆๅˆ GDPR ๅนถๅฐŠ้‡ๆ‚จ็š„้š็งใ€‚" + } + }, + "testimonials": { + "title": "ๆˆ‘ไปฌ็š„", + "users": "็”จๆˆท", + "say": "่ฏ„ไปท" + }, + "support": { + "title": "ๅ–œๆฌข่ฟ™ไธช้กน็›ฎ๏ผŸ", + "description": "BentoPDF ๆ˜ฏไธ€ไธชๅ……ๆปกๆฟ€ๆƒ…็š„้กน็›ฎ๏ผŒๆ—จๅœจไธบๆฏไธชไบบๆไพ›ๅ…่ดนใ€็งๅฏ†ไธ”ๅผบๅคง็š„ PDF ๅทฅๅ…ท็ฎฑใ€‚ๅฆ‚ๆžœๆ‚จ่ง‰ๅพ—ๅฎƒๆœ‰็”จ๏ผŒ่ฏท่€ƒ่™‘ๆ”ฏๆŒๅฎƒ็š„ๅผ€ๅ‘ใ€‚ๆฏไธ€ๆฏๅ’–ๅ•ก้ƒฝๆ˜ฏ่Žซๅคง็š„ๆ”ฏๆŒ๏ผ", + "buyMeCoffee": "่ฏทๆˆ‘ๅ–ๆฏๅ’–ๅ•ก" + }, + "footer": { + "copyright": "ยฉ 2026 BentoPDF. ไฟ็•™ๆ‰€ๆœ‰ๆƒๅˆฉใ€‚", + "version": "็‰ˆๆœฌ", + "company": "ๅ…ฌๅธ", + "aboutUs": "ๅ…ณไบŽๆˆ‘ไปฌ", + "faqLink": "ๅธธ่ง้—ฎ้ข˜", + "contactUs": "่”็ณปๆˆ‘ไปฌ", + "legal": "ๆณ•ๅพ‹", + "termsAndConditions": "ๆœๅŠกๆกๆฌพ", + "privacyPolicy": "้š็งๆ”ฟ็ญ–", + "followUs": "ๅ…ณๆณจๆˆ‘ไปฌ" + }, + "merge": { + "title": "ๅˆๅนถ PDF", + "description": "ๅˆๅนถๆ•ดไธชๆ–‡ไปถ๏ผŒๆˆ–้€‰ๆ‹ฉ็‰นๅฎš้กต้ขๅˆๅนถๅˆฐๆ–ฐๆ–‡ๆกฃไธญใ€‚", + "fileMode": "ๆ–‡ไปถๆจกๅผ", + "pageMode": "้กต้ขๆจกๅผ", + "howItWorks": "ไฝฟ็”จ่ฏดๆ˜Ž๏ผš", + "fileModeInstructions": [ + "็‚นๅ‡ปๅนถๆ‹–ๅŠจๅ›พๆ ‡ไปฅๆ›ดๆ”นๆ–‡ไปถ็š„้กบๅบใ€‚", + "ๅœจๆฏไธชๆ–‡ไปถ็š„ '้กต็ ' ๆก†ไธญ๏ผŒๆ‚จๅฏไปฅๆŒ‡ๅฎš่Œƒๅ›ด๏ผˆไพ‹ๅฆ‚ '1-3, 5'๏ผ‰ไปฅไป…ๅˆๅนถ่ฟ™ไบ›้กต้ขใ€‚", + "ๅฐ† '้กต็ ' ๆก†็•™็ฉบไปฅๅŒ…ๅซ่ฏฅๆ–‡ไปถ็š„ๆ‰€ๆœ‰้กต้ขใ€‚" + ], + "pageModeInstructions": [ + "ๆ‚จไธŠไผ ็š„ PDF ็š„ๆ‰€ๆœ‰้กต้ขๆ˜พ็คบๅœจไธ‹ๆ–นใ€‚", + "ๅช้œ€ๆ‹–ๆ”พๅ•ไธช้กต้ข็ผฉ็•ฅๅ›พ๏ผŒๅณๅฏไธบๆ‚จๆ–ฐๆ–‡ไปถๅฏน้กต้ข่ฟ›่กŒๆŽ’ๅบใ€‚" + ], + "mergePdfs": "ๅˆๅนถ PDF" + }, + "common": { + "page": "้กต", + "pages": "้กต", + "of": " / ", + "download": "ไธ‹่ฝฝ", + "cancel": "ๅ–ๆถˆ", + "save": "ไฟๅญ˜", + "delete": "ๅˆ ้™ค", + "edit": "็ผ–่พ‘", + "add": "ๆทปๅŠ ", + "remove": "็งป้™ค", + "loading": "ๅŠ ่ฝฝไธญ...", + "error": "้”™่ฏฏ", + "success": "ๆˆๅŠŸ", + "file": "ๆ–‡ไปถ", + "files": "ๆ–‡ไปถ" + }, + "about": { + "hero": { + "title": "ๆˆ‘ไปฌ็›ธไฟก PDF ๅทฅๅ…ทๅบ”่ฏฅๆ˜ฏ", + "subtitle": "ๅฟซ้€Ÿใ€็งๅฏ†ไธ”ๅ…่ดน็š„ใ€‚", + "noCompromises": "็ปไธๅฆฅๅใ€‚" }, - "about": { - "hero": { - "title": "ๆˆ‘ไปฌ็›ธไฟก PDF ๅทฅๅ…ทๅบ”่ฏฅๆ˜ฏ", - "subtitle": "ๅฟซ้€Ÿใ€็งๅฏ†ไธ”ๅ…่ดน็š„ใ€‚", - "noCompromises": "็ปไธๅฆฅๅใ€‚" - }, - "mission": { - "title": "ๆˆ‘ไปฌ็š„ไฝฟๅ‘ฝ", - "description": "ๆไพ›ๆœ€ๅ…จ้ข็š„ PDF ๅทฅๅ…ท็ฎฑ๏ผŒๅฐŠ้‡ๆ‚จ็š„้š็ง๏ผŒไธ”ๆฐธไธๆ”ถ่ดนใ€‚ๆˆ‘ไปฌ็›ธไฟกๅŸบๆœฌ็š„ๆ–‡ๆกฃๅทฅๅ…ทๅบ”่ฏฅๅฏนๆ‰€ๆœ‰ไบบใ€ๅœจไปปไฝ•ๅœฐๆ–น้ƒฝ่งฆๆ‰‹ๅฏๅŠ๏ผŒๆฒกๆœ‰ไปปไฝ•้šœ็ขใ€‚" - }, - "philosophy": { - "label": "ๆˆ‘ไปฌ็š„ๆ ธๅฟƒ็†ๅฟต", - "title": "้š็ง่‡ณไธŠใ€‚ๅง‹็ปˆๅฆ‚ไธ€ใ€‚", - "description": "ๅœจๆ•ฐๆฎ่ขซๅ•†ๅ“ๅŒ–็š„ๆ—ถไปฃ๏ผŒๆˆ‘ไปฌ้‡‡ๅ–ไธๅŒ็š„ๆ–นๅผใ€‚BentoPDF ๅทฅๅ…ท็š„ๆ‰€ๆœ‰ๅค„็†้ƒฝๅœจๆ‚จ็š„ๆต่งˆๅ™จๆœฌๅœฐ่ฟ›่กŒใ€‚่ฟ™ๆ„ๅ‘ณ็€ๆ‚จ็š„ๆ–‡ไปถไปŽๆœชๆŽฅ่งฆๆˆ‘ไปฌ็š„ๆœๅŠกๅ™จ๏ผŒๆˆ‘ไปฌไปŽไธๆŸฅ็œ‹ๆ‚จ็š„ๆ–‡ๆกฃ๏ผŒไนŸไธ่ทŸ่ธชๆ‚จ็š„ๆ“ไฝœใ€‚ๆ‚จ็š„ๆ–‡ๆกฃไฟๆŒ็ปๅฏน็š„็งๅฏ†ๆ€งใ€‚่ฟ™ไธไป…ๆ˜ฏไธ€้กนๅŠŸ่ƒฝ๏ผ›่ฟ™ๆ˜ฏๆˆ‘ไปฌ็š„ๅŸบ็Ÿณใ€‚" - }, - "whyBentopdf": { - "title": "ไธบไป€ไนˆ้€‰ๆ‹ฉ", - "speed": { - "title": "ไธบ้€Ÿๅบฆ่€Œ็”Ÿ", - "description": "ๆ— ้œ€็ญ‰ๅพ…ไธŠไผ ๆˆ–ไปŽๆœๅŠกๅ™จไธ‹่ฝฝใ€‚้€š่ฟ‡ไฝฟ็”จ WebAssembly ็ญ‰็Žฐไปฃ็ฝ‘็ปœๆŠ€ๆœฏ็›ดๆŽฅๅœจๆ‚จ็š„ๆต่งˆๅ™จไธญๅค„็†ๆ–‡ไปถ๏ผŒๆˆ‘ไปฌไธบๆ‰€ๆœ‰ๅทฅๅ…ทๆไพ›ไบ†ๆ— ไธŽไผฆๆฏ”็š„้€Ÿๅบฆใ€‚" - }, - "free": { - "title": "ๅฎŒๅ…จๅ…่ดน", - "description": "ๆ— ่ฏ•็”จ๏ผŒๆ— ่ฎข้˜…๏ผŒๆ— ้š่—่ดน็”จ๏ผŒไนŸๆฒกๆœ‰่ขซ้”ๅฎš็š„ '้ซ˜็บง' ๅŠŸ่ƒฝใ€‚ๆˆ‘ไปฌ็›ธไฟกๅผบๅคง็š„ PDF ๅทฅๅ…ทๅบ”่ฏฅๆ˜ฏไธ€็งๅ…ฌๅ…ฑ่ฎพๆ–ฝ๏ผŒ่€Œไธๆ˜ฏ็›ˆๅˆฉไธญๅฟƒใ€‚" - }, - "noAccount": { - "title": "ๆ— ้œ€่ดฆๆˆท", - "description": "็ซ‹ๅณๅผ€ๅง‹ไฝฟ็”จไปปไฝ•ๅทฅๅ…ทใ€‚ๆˆ‘ไปฌไธ้œ€่ฆๆ‚จ็š„็”ตๅญ้‚ฎไปถใ€ๅฏ†็ ๆˆ–ไปปไฝ•ไธชไบบไฟกๆฏใ€‚ๆ‚จ็š„ๅทฅไฝœๆต็จ‹ๅบ”่ฏฅๆ˜ฏๆ— ๆ‘ฉๆ“ฆไธ”ๅŒฟๅ็š„ใ€‚" - }, - "openSource": { - "title": "ๅผ€ๆบ็ฒพ็ฅž", - "description": "ไปฅ้€ๆ˜Žๅบฆไธบๆ ธๅฟƒๆž„ๅปบใ€‚ๆˆ‘ไปฌๅˆฉ็”จไบ†ๅƒ PDF-lib ๅ’Œ PDF.js ่ฟ™ๆ ทไผ˜็ง€็š„ๅผ€ๆบๅบ“๏ผŒๅนถ็›ธไฟก็คพๅŒบ้ฉฑๅŠจ็š„ๅŠ›้‡่ƒฝไฝฟๅผบๅคง็š„ๅทฅๅ…ทๆƒ ๅŠๆฏไธ€ไธชไบบใ€‚" - } - }, - "cta": { - "title": "ๅ‡†ๅค‡ๅฅฝๅผ€ๅง‹ไบ†ๅ—๏ผŸ", - "description": "ๅŠ ๅ…ฅๆˆๅƒไธŠไธ‡ไฟกไปป BentoPDF ๆปก่ถณๆ—ฅๅธธๆ–‡ๆกฃ้œ€ๆฑ‚็š„็”จๆˆทใ€‚ไฝ“้ชŒ้š็งๅ’Œๆ€ง่ƒฝๅธฆๆฅ็š„ไธๅŒใ€‚", - "button": "ๆŽข็ดขๆ‰€ๆœ‰ๅทฅๅ…ท" - } + "mission": { + "title": "ๆˆ‘ไปฌ็š„ไฝฟๅ‘ฝ", + "description": "ๆไพ›ๆœ€ๅ…จ้ข็š„ PDF ๅทฅๅ…ท็ฎฑ๏ผŒๅฐŠ้‡ๆ‚จ็š„้š็ง๏ผŒไธ”ๆฐธไธๆ”ถ่ดนใ€‚ๆˆ‘ไปฌ็›ธไฟกๅŸบๆœฌ็š„ๆ–‡ๆกฃๅทฅๅ…ทๅบ”่ฏฅๅฏนๆ‰€ๆœ‰ไบบใ€ๅœจไปปไฝ•ๅœฐๆ–น้ƒฝ่งฆๆ‰‹ๅฏๅŠ๏ผŒๆฒกๆœ‰ไปปไฝ•้šœ็ขใ€‚" }, - "contact": { - "title": "่”็ณปๆˆ‘ไปฌ", - "subtitle": "ๆˆ‘ไปฌๅพˆไนๆ„ๅฌๅˆฐๆ‚จ็š„ๅฃฐ้Ÿณใ€‚ๆ— ่ฎบๆ‚จๆœ‰้—ฎ้ข˜ใ€ๅ้ฆˆ่ฟ˜ๆ˜ฏๅŠŸ่ƒฝ่ฏทๆฑ‚๏ผŒ่ฏท้šๆ—ถ่”็ณปๆˆ‘ไปฌใ€‚", - "email": "ๆ‚จๅฏไปฅ็›ดๆŽฅ้€š่ฟ‡็”ตๅญ้‚ฎไปถ่”็ณปๆˆ‘ไปฌ๏ผš" + "philosophy": { + "label": "ๆˆ‘ไปฌ็š„ๆ ธๅฟƒ็†ๅฟต", + "title": "้š็ง่‡ณไธŠใ€‚ๅง‹็ปˆๅฆ‚ไธ€ใ€‚", + "description": "ๅœจๆ•ฐๆฎ่ขซๅ•†ๅ“ๅŒ–็š„ๆ—ถไปฃ๏ผŒๆˆ‘ไปฌ้‡‡ๅ–ไธๅŒ็š„ๆ–นๅผใ€‚BentoPDF ๅทฅๅ…ท็š„ๆ‰€ๆœ‰ๅค„็†้ƒฝๅœจๆ‚จ็š„ๆต่งˆๅ™จๆœฌๅœฐ่ฟ›่กŒใ€‚่ฟ™ๆ„ๅ‘ณ็€ๆ‚จ็š„ๆ–‡ไปถไปŽๆœชๆŽฅ่งฆๆˆ‘ไปฌ็š„ๆœๅŠกๅ™จ๏ผŒๆˆ‘ไปฌไปŽไธๆŸฅ็œ‹ๆ‚จ็š„ๆ–‡ๆกฃ๏ผŒไนŸไธ่ทŸ่ธชๆ‚จ็š„ๆ“ไฝœใ€‚ๆ‚จ็š„ๆ–‡ๆกฃไฟๆŒ็ปๅฏน็š„็งๅฏ†ๆ€งใ€‚่ฟ™ไธไป…ๆ˜ฏไธ€้กนๅŠŸ่ƒฝ๏ผ›่ฟ™ๆ˜ฏๆˆ‘ไปฌ็š„ๅŸบ็Ÿณใ€‚" }, - "licensing": { - "title": "่ฎธๅฏ้€‚็”จ", - "subtitle": "้€‰ๆ‹ฉ้€‚ๅˆๆ‚จ้œ€ๆฑ‚็š„่ฎธๅฏใ€‚" + "whyBentopdf": { + "title": "ไธบไป€ไนˆ้€‰ๆ‹ฉ", + "speed": { + "title": "ไธบ้€Ÿๅบฆ่€Œ็”Ÿ", + "description": "ๆ— ้œ€็ญ‰ๅพ…ไธŠไผ ๆˆ–ไปŽๆœๅŠกๅ™จไธ‹่ฝฝใ€‚้€š่ฟ‡ไฝฟ็”จ WebAssembly ็ญ‰็Žฐไปฃ็ฝ‘็ปœๆŠ€ๆœฏ็›ดๆŽฅๅœจๆ‚จ็š„ๆต่งˆๅ™จไธญๅค„็†ๆ–‡ไปถ๏ผŒๆˆ‘ไปฌไธบๆ‰€ๆœ‰ๅทฅๅ…ทๆไพ›ไบ†ๆ— ไธŽไผฆๆฏ”็š„้€Ÿๅบฆใ€‚" + }, + "free": { + "title": "ๅฎŒๅ…จๅ…่ดน", + "description": "ๆ— ่ฏ•็”จ๏ผŒๆ— ่ฎข้˜…๏ผŒๆ— ้š่—่ดน็”จ๏ผŒไนŸๆฒกๆœ‰่ขซ้”ๅฎš็š„ '้ซ˜็บง' ๅŠŸ่ƒฝใ€‚ๆˆ‘ไปฌ็›ธไฟกๅผบๅคง็š„ PDF ๅทฅๅ…ทๅบ”่ฏฅๆ˜ฏไธ€็งๅ…ฌๅ…ฑ่ฎพๆ–ฝ๏ผŒ่€Œไธๆ˜ฏ็›ˆๅˆฉไธญๅฟƒใ€‚" + }, + "noAccount": { + "title": "ๆ— ้œ€่ดฆๆˆท", + "description": "็ซ‹ๅณๅผ€ๅง‹ไฝฟ็”จไปปไฝ•ๅทฅๅ…ทใ€‚ๆˆ‘ไปฌไธ้œ€่ฆๆ‚จ็š„็”ตๅญ้‚ฎไปถใ€ๅฏ†็ ๆˆ–ไปปไฝ•ไธชไบบไฟกๆฏใ€‚ๆ‚จ็š„ๅทฅไฝœๆต็จ‹ๅบ”่ฏฅๆ˜ฏๆ— ๆ‘ฉๆ“ฆไธ”ๅŒฟๅ็š„ใ€‚" + }, + "openSource": { + "title": "ๅผ€ๆบ็ฒพ็ฅž", + "description": "ไปฅ้€ๆ˜Žๅบฆไธบๆ ธๅฟƒๆž„ๅปบใ€‚ๆˆ‘ไปฌๅˆฉ็”จไบ†ๅƒ PDF-lib ๅ’Œ PDF.js ่ฟ™ๆ ทไผ˜็ง€็š„ๅผ€ๆบๅบ“๏ผŒๅนถ็›ธไฟก็คพๅŒบ้ฉฑๅŠจ็š„ๅŠ›้‡่ƒฝไฝฟๅผบๅคง็š„ๅทฅๅ…ทๆƒ ๅŠๆฏไธ€ไธชไบบใ€‚" + } }, - "multiTool": { - "uploadPdfs": "ไธŠไผ  PDF", - "upload": "ไธŠไผ ", - "addBlankPage": "ๆทปๅŠ ็ฉบ็™ฝ้กต", - "edit": "็ผ–่พ‘:", - "undo": "ๆ’ค้”€", - "redo": "้‡ๅš", - "reset": "้‡็ฝฎ", - "selection": "้€‰ๆ‹ฉ:", - "selectAll": "ๅ…จ้€‰", - "deselectAll": "ๅ–ๆถˆๅ…จ้€‰", - "rotate": "ๆ—‹่ฝฌ:", - "rotateLeft": "ๅ‘ๅทฆ", - "rotateRight": "ๅ‘ๅณ", - "transform": "ๅ˜ๆข:", - "duplicate": "ๅคๅˆถ", - "split": "ๆ‹†ๅˆ†", - "clear": "ๆธ…้™ค:", - "delete": "ๅˆ ้™ค", - "download": "ไธ‹่ฝฝ:", - "downloadSelected": "ไธ‹่ฝฝ้€‰ไธญ", - "exportPdf": "ๅฏผๅ‡บ PDF", - "uploadPdfFiles": "้€‰ๆ‹ฉ PDF ๆ–‡ไปถ", - "dragAndDrop": "ๅฐ† PDF ๆ–‡ไปถๆ‹–ๆ”พๅˆฐๆญคๅค„๏ผŒๆˆ–็‚นๅ‡ป้€‰ๆ‹ฉ", - "selectFiles": "้€‰ๆ‹ฉๆ–‡ไปถ", - "renderingPages": "ๆญฃๅœจๆธฒๆŸ“้กต้ข...", - "actions": { - "duplicatePage": "ๅคๅˆถๆญค้กต", - "deletePage": "ๅˆ ้™คๆญค้กต", - "insertPdf": "ๅœจๆญค้กตๅŽๆ’ๅ…ฅ PDF", - "toggleSplit": "ๅœจๆญค้กตๅŽๅˆ‡ๆขๆ‹†ๅˆ†" - }, - "pleaseWait": "่ฏท็จๅ€™", - "pagesRendering": "้กต้ขๆญฃๅœจๆธฒๆŸ“ไธญ๏ผŒ่ฏท็จๅ€™...", - "noPagesSelected": "ๆœช้€‰ๆ‹ฉ้กต้ข", - "selectOnePage": "่ฏท่‡ณๅฐ‘้€‰ๆ‹ฉไธ€้กตไปฅ่ฟ›่กŒไธ‹่ฝฝใ€‚", - "noPages": "ๆฒกๆœ‰้กต้ข", - "noPagesToExport": "ๆฒกๆœ‰ๅฏๅฏผๅ‡บ็š„้กต้ขใ€‚", - "renderingTitle": "ๆญฃๅœจๆธฒๆŸ“้กต้ข้ข„่งˆ", - "errorRendering": "ๆธฒๆŸ“้กต้ข็ผฉ็•ฅๅ›พๅคฑ่ดฅ", - "error": "้”™่ฏฏ", - "failedToLoad": "ๅŠ ่ฝฝๅคฑ่ดฅ" + "cta": { + "title": "ๅ‡†ๅค‡ๅฅฝๅผ€ๅง‹ไบ†ๅ—๏ผŸ", + "description": "ๅŠ ๅ…ฅๆˆๅƒไธŠไธ‡ไฟกไปป BentoPDF ๆปก่ถณๆ—ฅๅธธๆ–‡ๆกฃ้œ€ๆฑ‚็š„็”จๆˆทใ€‚ไฝ“้ชŒ้š็งๅ’Œๆ€ง่ƒฝๅธฆๆฅ็š„ไธๅŒใ€‚", + "button": "ๆŽข็ดขๆ‰€ๆœ‰ๅทฅๅ…ท" } -} \ No newline at end of file + }, + "contact": { + "title": "่”็ณปๆˆ‘ไปฌ", + "subtitle": "ๆˆ‘ไปฌๅพˆไนๆ„ๅฌๅˆฐๆ‚จ็š„ๅฃฐ้Ÿณใ€‚ๆ— ่ฎบๆ‚จๆœ‰้—ฎ้ข˜ใ€ๅ้ฆˆ่ฟ˜ๆ˜ฏๅŠŸ่ƒฝ่ฏทๆฑ‚๏ผŒ่ฏท้šๆ—ถ่”็ณปๆˆ‘ไปฌใ€‚", + "email": "ๆ‚จๅฏไปฅ็›ดๆŽฅ้€š่ฟ‡็”ตๅญ้‚ฎไปถ่”็ณปๆˆ‘ไปฌ๏ผš" + }, + "licensing": { + "title": "่ฎธๅฏ้€‚็”จ", + "subtitle": "้€‰ๆ‹ฉ้€‚ๅˆๆ‚จ้œ€ๆฑ‚็š„่ฎธๅฏใ€‚" + }, + "multiTool": { + "uploadPdfs": "ไธŠไผ  PDF", + "upload": "ไธŠไผ ", + "addBlankPage": "ๆทปๅŠ ็ฉบ็™ฝ้กต", + "edit": "็ผ–่พ‘:", + "undo": "ๆ’ค้”€", + "redo": "้‡ๅš", + "reset": "้‡็ฝฎ", + "selection": "้€‰ๆ‹ฉ:", + "selectAll": "ๅ…จ้€‰", + "deselectAll": "ๅ–ๆถˆๅ…จ้€‰", + "rotate": "ๆ—‹่ฝฌ:", + "rotateLeft": "ๅ‘ๅทฆ", + "rotateRight": "ๅ‘ๅณ", + "transform": "ๅ˜ๆข:", + "duplicate": "ๅคๅˆถ", + "split": "ๆ‹†ๅˆ†", + "clear": "ๆธ…้™ค:", + "delete": "ๅˆ ้™ค", + "download": "ไธ‹่ฝฝ:", + "downloadSelected": "ไธ‹่ฝฝ้€‰ไธญ", + "exportPdf": "ๅฏผๅ‡บ PDF", + "uploadPdfFiles": "้€‰ๆ‹ฉ PDF ๆ–‡ไปถ", + "dragAndDrop": "ๅฐ† PDF ๆ–‡ไปถๆ‹–ๆ”พๅˆฐๆญคๅค„๏ผŒๆˆ–็‚นๅ‡ป้€‰ๆ‹ฉ", + "selectFiles": "้€‰ๆ‹ฉๆ–‡ไปถ", + "renderingPages": "ๆญฃๅœจๆธฒๆŸ“้กต้ข...", + "actions": { + "duplicatePage": "ๅคๅˆถๆญค้กต", + "deletePage": "ๅˆ ้™คๆญค้กต", + "insertPdf": "ๅœจๆญค้กตๅŽๆ’ๅ…ฅ PDF", + "toggleSplit": "ๅœจๆญค้กตๅŽๅˆ‡ๆขๆ‹†ๅˆ†" + }, + "pleaseWait": "่ฏท็จๅ€™", + "pagesRendering": "้กต้ขๆญฃๅœจๆธฒๆŸ“ไธญ๏ผŒ่ฏท็จๅ€™...", + "noPagesSelected": "ๆœช้€‰ๆ‹ฉ้กต้ข", + "selectOnePage": "่ฏท่‡ณๅฐ‘้€‰ๆ‹ฉไธ€้กตไปฅ่ฟ›่กŒไธ‹่ฝฝใ€‚", + "noPages": "ๆฒกๆœ‰้กต้ข", + "noPagesToExport": "ๆฒกๆœ‰ๅฏๅฏผๅ‡บ็š„้กต้ขใ€‚", + "renderingTitle": "ๆญฃๅœจๆธฒๆŸ“้กต้ข้ข„่งˆ", + "errorRendering": "ๆธฒๆŸ“้กต้ข็ผฉ็•ฅๅ›พๅคฑ่ดฅ", + "error": "้”™่ฏฏ", + "failedToLoad": "ๅŠ ่ฝฝๅคฑ่ดฅ" + } +} diff --git a/public/locales/zh/tools.json b/public/locales/zh/tools.json index 832c42287..a93c82213 100644 --- a/public/locales/zh/tools.json +++ b/public/locales/zh/tools.json @@ -1,516 +1,530 @@ { - "categories": { - "popularTools": "็ƒญ้—จๅทฅๅ…ท", - "editAnnotate": "็ผ–่พ‘ไธŽๆณจ้‡Š", - "convertToPdf": "่ฝฌๆขไธบ PDF", - "convertFromPdf": "ไปŽ PDF ่ฝฌๆข", - "organizeManage": "็ป„็ป‡ไธŽ็ฎก็†", - "optimizeRepair": "ไผ˜ๅŒ–ไธŽไฟฎๅค", - "securePdf": "ๅฎ‰ๅ…จ PDF" - }, - "pdfMultiTool": { - "name": "PDF ๅคšๅŠŸ่ƒฝๅทฅๅ…ท", - "subtitle": "ๅœจไธ€ไธช็ปŸไธ€็š„็•Œ้ขไธญๅˆๅนถใ€ๅˆ†ๅ‰ฒใ€็ป„็ป‡ใ€ๅˆ ้™คใ€ๆ—‹่ฝฌใ€ๆทปๅŠ ็ฉบ็™ฝ้กตใ€ๆๅ–ๅ’Œๅคๅˆถใ€‚" - }, - "mergePdf": { - "name": "ๅˆๅนถ PDF", - "subtitle": "ๅฐ†ๅคšไธช PDF ๅˆๅนถไธบไธ€ไธชๆ–‡ไปถใ€‚ไฟ็•™ไนฆ็ญพใ€‚" - }, - "splitPdf": { - "name": "ๅˆ†ๅ‰ฒ PDF", - "subtitle": "ๅฐ†ๆŒ‡ๅฎš่Œƒๅ›ด็š„้กต้ขๆๅ–ๅˆฐๆ–ฐ PDF ไธญใ€‚" - }, - "compressPdf": { - "name": "ๅŽ‹็ผฉ PDF", - "subtitle": "ๅ‡ๅฐๆ‚จ็š„ PDF ๆ–‡ไปถๅคงๅฐใ€‚", - "algorithmLabel": "ๅŽ‹็ผฉ็ฎ—ๆณ•", - "condense": "Condense๏ผˆๆŽจ่๏ผ‰", - "photon": "Photon๏ผˆ้€‚็”จไบŽๅ›พ็‰‡่พƒๅคš็š„ PDF๏ผ‰", - "condenseInfo": "Condense ไฝฟ็”จ้ซ˜็บงๅŽ‹็ผฉ๏ผš็งป้™คๅ†—ไฝ™ๆ•ฐๆฎใ€ไผ˜ๅŒ–ๅ›พ็‰‡ใ€็ฒพ็ฎ€ๅญ—ไฝ“ใ€‚้€‚็”จไบŽๅคงๅคšๆ•ฐ PDFใ€‚", - "photonInfo": "Photon ๅฐ†้กต้ข่ฝฌๆขไธบๅ›พ็‰‡ใ€‚้€‚็”จไบŽๅ›พ็‰‡่พƒๅคš/ๆ‰ซๆ็š„ PDFใ€‚", - "photonWarning": "่ญฆๅ‘Š๏ผšๆ–‡ๆœฌๅฐ†ๆ— ๆณ•้€‰ๆ‹ฉ๏ผŒ้“พๆŽฅๅฐ†ๅคฑๆ•ˆใ€‚", - "levelLabel": "ๅŽ‹็ผฉ็บงๅˆซ", - "light": "่ฝปๅบฆ๏ผˆไฟๆŒ่ดจ้‡๏ผ‰", - "balanced": "ๅนณ่กก๏ผˆๆŽจ่๏ผ‰", - "aggressive": "็งฏๆž๏ผˆๆ›ดๅฐๆ–‡ไปถ๏ผ‰", - "extreme": "ๆž้™๏ผˆๆœ€ๅคงๅŽ‹็ผฉ๏ผ‰", - "grayscale": "่ฝฌๆขไธบ็ฐๅบฆ", - "grayscaleHint": "้€š่ฟ‡็งป้™ค้ขœ่‰ฒไฟกๆฏๆฅๅ‡ๅฐๆ–‡ไปถๅคงๅฐ", - "customSettings": "่‡ชๅฎšไน‰่ฎพ็ฝฎ", - "customSettingsHint": "ๅพฎ่ฐƒๅŽ‹็ผฉๅ‚ๆ•ฐ๏ผš", - "outputQuality": "่พ“ๅ‡บ่ดจ้‡", - "resizeImagesTo": "่ฐƒๆ•ดๅ›พ็‰‡่‡ณ", - "onlyProcessAbove": "ไป…ๅค„็†้ซ˜ไบŽ", - "removeMetadata": "็งป้™คๅ…ƒๆ•ฐๆฎ", - "subsetFonts": "็ฒพ็ฎ€ๅญ—ไฝ“๏ผˆ็งป้™คๆœชไฝฟ็”จ็š„ๅญ—็ฌฆ๏ผ‰", - "removeThumbnails": "็งป้™คๅตŒๅ…ฅ็š„็ผฉ็•ฅๅ›พ", - "compressButton": "ๅŽ‹็ผฉ PDF" - }, - "pdfEditor": { - "name": "PDF ็ผ–่พ‘ๅ™จ", - "subtitle": "ๆณจ้‡Šใ€้ซ˜ไบฎใ€ๆถ‚้ป‘ใ€่ฏ„่ฎบใ€ๆทปๅŠ ๅฝข็Šถ/ๅ›พ็‰‡ใ€ๆœ็ดขๅ’ŒๆŸฅ็œ‹ PDFใ€‚" - }, - "jpgToPdf": { - "name": "JPG ่ฝฌ PDF", - "subtitle": "ไปŽ JPGใ€JPEG ๅ’Œ JPEG2000 (JP2/JPX) ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" - }, - "signPdf": { - "name": "็ญพ็ฝฒ PDF", - "subtitle": "็ป˜ๅˆถใ€้”ฎๅ…ฅๆˆ–ไธŠไผ ๆ‚จ็š„็ญพๅใ€‚" - }, - "cropPdf": { - "name": "่ฃๅ‰ช PDF", - "subtitle": "ไฟฎๅ‰ช PDF ไธญๆฏไธ€้กต็š„่พน่ทใ€‚" - }, - "extractPages": { - "name": "ๆๅ–้กต้ข", - "subtitle": "ๅฐ†้€‰ๅฎš็š„้กต้ขไฟๅญ˜ไธบๆ–ฐๆ–‡ไปถใ€‚" - }, - "duplicateOrganize": { - "name": "ๅคๅˆถไธŽ็ป„็ป‡", - "subtitle": "ๅคๅˆถใ€้‡ๆ–ฐๆŽ’ๅบๅ’Œๅˆ ้™ค้กต้ขใ€‚" - }, - "deletePages": { - "name": "ๅˆ ้™ค้กต้ข", - "subtitle": "่‡ชๆ‚จ็š„ๆ–‡ๆกฃไธญ็งป้™ค็‰นๅฎš้กต้ขใ€‚" - }, - "editBookmarks": { - "name": "็ผ–่พ‘ไนฆ็ญพ", - "subtitle": "ๆทปๅŠ ใ€็ผ–่พ‘ใ€ๅฏผๅ…ฅใ€ๅˆ ้™คๅ’Œๆๅ– PDF ไนฆ็ญพใ€‚" - }, - "tableOfContents": { - "name": "็›ฎๅฝ•", - "subtitle": "ๆ นๆฎ PDF ไนฆ็ญพ็”Ÿๆˆ็›ฎๅฝ•้กตใ€‚" - }, - "pageNumbers": { - "name": "้กต็ ", - "subtitle": "ๅฐ†้กต็ ๆ’ๅ…ฅๅˆฐๆ‚จ็š„ๆ–‡ๆกฃไธญใ€‚" - }, - "addWatermark": { - "name": "ๆทปๅŠ ๆฐดๅฐ", - "subtitle": "ๅœจๆ‚จ็š„ PDF ้กต้ขไธŠๆทปๅŠ ๆ–‡ๅญ—ๆˆ–ๅ›พ็‰‡ๆฐดๅฐใ€‚" - }, - "headerFooter": { - "name": "้กต็œ‰ๅ’Œ้กต่„š", - "subtitle": "ๅœจ้กต้ข้กถ้ƒจๅ’Œๅบ•้ƒจๆทปๅŠ ๆ–‡ๅญ—ใ€‚" - }, - "invertColors": { - "name": "ๅ่ฝฌ้ขœ่‰ฒ", - "subtitle": "ๅˆ›ๅปบๆ‚จ็š„ PDF ็š„โ€œๆš—้ป‘ๆจกๅผโ€็‰ˆๆœฌใ€‚" - }, - "backgroundColor": { - "name": "่ƒŒๆ™ฏ้ขœ่‰ฒ", - "subtitle": "ๆ›ดๆ”นๆ‚จ็š„ PDF ็š„่ƒŒๆ™ฏ้ขœ่‰ฒใ€‚" - }, - "changeTextColor": { - "name": "ๆ›ดๆ”นๆ–‡ๆœฌ้ขœ่‰ฒ", - "subtitle": "ๆ›ดๆ”นๆ‚จ PDF ไธญๆ–‡ๆœฌ็š„้ขœ่‰ฒใ€‚" - }, - "addStamps": { - "name": "ๆทปๅŠ ๅฐ็ซ ", - "subtitle": "ไฝฟ็”จๆณจ้‡Šๅทฅๅ…ทๆ ๅ‘ๆ‚จ็š„ PDF ๆทปๅŠ ๅ›พ็‰‡ๅฐ็ซ ใ€‚" - }, - "removeAnnotations": { - "name": "็งป้™คๆณจ้‡Š", - "subtitle": "็งป้™ค่ฏ„่ฎบใ€้ซ˜ไบฎๅ’Œ้“พๆŽฅใ€‚" - }, - "pdfFormFiller": { - "name": "PDF ่กจๅ•ๅกซๅ†™ๅ™จ", - "subtitle": "็›ดๆŽฅๅœจๆต่งˆๅ™จไธญๅกซๅ†™่กจๅ•ใ€‚ไนŸๆ”ฏๆŒ XFA ่กจๅ•ใ€‚" - }, - "createPdfForm": { - "name": "ๅˆ›ๅปบ PDF ่กจๅ•", - "subtitle": "ไฝฟ็”จๆ‹–ๆ”พๆ–‡ๆœฌๅญ—ๆฎตๅˆ›ๅปบๅฏๅกซๅ†™็š„ PDF ่กจๅ•ใ€‚" - }, - "removeBlankPages": { - "name": "็งป้™ค็ฉบ็™ฝ้กต", - "subtitle": "่‡ชๅŠจๆฃ€ๆต‹ๅนถๅˆ ้™ค็ฉบ็™ฝ้กตใ€‚" - }, - "imageToPdf": { - "name": "ๅ›พ็‰‡่ฝฌ PDF", - "subtitle": "ๅฐ† JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP ่ฝฌๆขไธบ PDFใ€‚" - }, - "pngToPdf": { - "name": "PNG ่ฝฌ PDF", - "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  PNG ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" - }, - "webpToPdf": { - "name": "WebP ่ฝฌ PDF", - "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  WebP ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" - }, - "svgToPdf": { - "name": "SVG ่ฝฌ PDF", - "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  SVG ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" - }, - "bmpToPdf": { - "name": "BMP ่ฝฌ PDF", - "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  BMP ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" - }, - "heicToPdf": { - "name": "HEIC ่ฝฌ PDF", - "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  HEIC ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" - }, - "tiffToPdf": { - "name": "TIFF ่ฝฌ PDF", - "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  TIFF ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" - }, - "textToPdf": { - "name": "ๆ–‡ๆœฌ่ฝฌ PDF", - "subtitle": "ๅฐ†็บฏๆ–‡ๆœฌๆ–‡ไปถ่ฝฌๆขไธบ PDFใ€‚" - }, - "jsonToPdf": { - "name": "JSON ่ฝฌ PDF", - "subtitle": "ๅฐ† JSON ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚" - }, - "pdfToJpg": { - "name": "PDF ่ฝฌ JPG", - "subtitle": "ๅฐ†ๆฏไธ€้กต PDF ่ฝฌๆขไธบ JPG ๅ›พ็‰‡ใ€‚" - }, - "pdfToPng": { - "name": "PDF ่ฝฌ PNG", - "subtitle": "ๅฐ†ๆฏไธ€้กต PDF ่ฝฌๆขไธบ PNG ๅ›พ็‰‡ใ€‚" - }, - "pdfToWebp": { - "name": "PDF ่ฝฌ WebP", - "subtitle": "ๅฐ†ๆฏไธ€้กต PDF ่ฝฌๆขไธบ WebP ๅ›พ็‰‡ใ€‚" - }, - "pdfToBmp": { - "name": "PDF ่ฝฌ BMP", - "subtitle": "ๅฐ†ๆฏไธ€้กต PDF ่ฝฌๆขไธบ BMP ๅ›พ็‰‡ใ€‚" - }, - "pdfToTiff": { - "name": "PDF ่ฝฌ TIFF", - "subtitle": "ๅฐ†ๆฏไธ€้กต PDF ่ฝฌๆขไธบ TIFF ๅ›พ็‰‡ใ€‚" - }, - "pdfToGreyscale": { - "name": "PDF ่ฝฌ ็ฐๅบฆ", - "subtitle": "ๅฐ†ๆ‰€ๆœ‰้ขœ่‰ฒ่ฝฌๆขไธบ้ป‘็™ฝใ€‚" - }, - "pdfToJson": { - "name": "PDF ่ฝฌ JSON", - "subtitle": "ๅฐ† PDF ๆ–‡ไปถ่ฝฌๆขไธบ JSON ๆ ผๅผใ€‚" - }, - "ocrPdf": { - "name": "OCR PDF", - "subtitle": "ไฝฟ PDF ๅฏๆœ็ดขๅ’Œๅฏๅคๅˆถใ€‚" - }, - "alternateMix": { - "name": "ไบคๆ›ฟๆททๅˆ้กต้ข", - "subtitle": "้€š่ฟ‡ไบคๆ›ฟๆฏไธช PDF ็š„้กต้ขๆฅๅˆๅนถ PDFใ€‚ไฟ็•™ไนฆ็ญพใ€‚" - }, - "addAttachments": { - "name": "ๆทปๅŠ ้™„ไปถ", - "subtitle": "ๅฐ†ไธ€ไธชๆˆ–ๅคšไธชๆ–‡ไปถๅตŒๅ…ฅๅˆฐๆ‚จ็š„ PDF ไธญใ€‚" - }, - "extractAttachments": { - "name": "ๆๅ–้™„ไปถ", - "subtitle": "ไปŽ PDF ไธญๆๅ–ๆ‰€ๆœ‰ๅตŒๅ…ฅ็š„ๆ–‡ไปถไธบ ZIPใ€‚" - }, - "editAttachments": { - "name": "็ผ–่พ‘้™„ไปถ", - "subtitle": "ๆŸฅ็œ‹ๆˆ–็งป้™ค PDF ไธญ็š„้™„ไปถใ€‚" - }, - "dividePages": { - "name": "ๅˆ†ๅ‰ฒ้กต้ข", - "subtitle": "ๆฐดๅนณๆˆ–ๅž‚็›ดๅˆ†ๅ‰ฒ้กต้ขใ€‚" - }, - "addBlankPage": { - "name": "ๆทปๅŠ ็ฉบ็™ฝ้กต", - "subtitle": "ๅœจ PDF ็š„ไปปๆ„ไฝ็ฝฎๆ’ๅ…ฅ็ฉบ็™ฝ้กตใ€‚" - }, - "reversePages": { - "name": "ๅ่ฝฌ้กต้ข", - "subtitle": "ๅ่ฝฌๆ–‡ๆกฃไธญๆ‰€ๆœ‰้กต้ข็š„้กบๅบใ€‚" - }, - "rotatePdf": { - "name": "ๆ—‹่ฝฌ PDF", - "subtitle": "ไปฅ 90 ๅบฆๅขž้‡ๆ—‹่ฝฌ้กต้ขใ€‚" - }, - "rotateCustom": { - "name": "ๆŒ‰่‡ชๅฎšไน‰่ง’ๅบฆๆ—‹่ฝฌ", - "subtitle": "ๆŒ‰ไปปๆ„่‡ชๅฎšไน‰่ง’ๅบฆๆ—‹่ฝฌ้กต้ขใ€‚" - }, - "nUpPdf": { - "name": "N-Up PDF", - "subtitle": "ๅฐ†ๅคš้กตๆŽ’ๅˆ—ๅœจๅ•ๅผ ็บธไธŠใ€‚" - }, - "combineToSinglePage": { - "name": "ๅˆๅนถไธบๅ•้กต", - "subtitle": "ๅฐ†ๆ‰€ๆœ‰้กต้ขๆ‹ผๆŽฅๆˆไธ€ไธช่ฟž็ปญ็š„ๆปšๅŠจ้กต้ขใ€‚" - }, - "viewMetadata": { - "name": "ๆŸฅ็œ‹ๅ…ƒๆ•ฐๆฎ", - "subtitle": "ๆฃ€ๆŸฅ PDF ็š„้š่—ๅฑžๆ€งใ€‚" - }, - "editMetadata": { - "name": "็ผ–่พ‘ๅ…ƒๆ•ฐๆฎ", - "subtitle": "ๆ›ดๆ”นไฝœ่€…ใ€ๆ ‡้ข˜ๅ’Œๅ…ถไป–ๅฑžๆ€งใ€‚" - }, - "pdfsToZip": { - "name": "PDF ่ฝฌ ZIP", - "subtitle": "ๅฐ†ๅคšไธช PDF ๆ–‡ไปถๆ‰“ๅŒ…ๆˆไธ€ไธช ZIP ๅฝ’ๆกฃใ€‚" - }, - "comparePdfs": { - "name": "ๆฏ”่พƒ PDF", - "subtitle": "ๅนถๆŽ’ๆฏ”่พƒไธคไธช PDFใ€‚" - }, - "posterizePdf": { - "name": "ๆตทๆŠฅๅŒ– PDF", - "subtitle": "ๅฐ†ๅคง้กต้ขๅˆ†ๅ‰ฒๆˆๅคšไธชๅฐ้กต้ขใ€‚" - }, - "fixPageSize": { - "name": "ไฟฎๅค้กต้ขๅฐบๅฏธ", - "subtitle": "ๅฐ†ๆ‰€ๆœ‰้กต้ขๆ ‡ๅ‡†ๅŒ–ไธบ็ปŸไธ€ๅฐบๅฏธใ€‚" - }, - "linearizePdf": { - "name": "็บฟๆ€งๅŒ– PDF", - "subtitle": "ไผ˜ๅŒ– PDF ไปฅไพฟๅฟซ้€Ÿ็ฝ‘็ปœๆŸฅ็œ‹ใ€‚" - }, - "pageDimensions": { - "name": "้กต้ขๅฐบๅฏธ", - "subtitle": "ๅˆ†ๆž้กต้ขๅคงๅฐใ€ๆ–นๅ‘ๅ’Œๅ•ไฝใ€‚" - }, - "removeRestrictions": { - "name": "็งป้™ค้™ๅˆถ", - "subtitle": "็งป้™คไธŽๆ•ฐๅญ—็ญพๅ PDF ๆ–‡ไปถ็›ธๅ…ณ็š„ๅฏ†็ ไฟๆŠคๅ’Œๅฎ‰ๅ…จ้™ๅˆถใ€‚" - }, - "repairPdf": { - "name": "ไฟฎๅค PDF", - "subtitle": "ไปŽๆŸๅ็š„ PDF ๆ–‡ไปถไธญๆขๅคๆ•ฐๆฎใ€‚" - }, - "encryptPdf": { - "name": "ๅŠ ๅฏ† PDF", - "subtitle": "้€š่ฟ‡ๆทปๅŠ ๅฏ†็ ้”ๅฎšๆ‚จ็š„ PDFใ€‚" - }, - "sanitizePdf": { - "name": "ๆธ…็† PDF", - "subtitle": "็งป้™คๅ…ƒๆ•ฐๆฎใ€ๆณจ้‡Šใ€่„šๆœฌ็ญ‰ใ€‚" - }, - "decryptPdf": { - "name": "่งฃๅฏ† PDF", - "subtitle": "้€š่ฟ‡็งป้™คๅฏ†็ ไฟๆŠค่งฃ้” PDFใ€‚" - }, - "flattenPdf": { - "name": "ๆ‰ๅนณๅŒ– PDF", - "subtitle": "ไฝฟ่กจๅ•ๅญ—ๆฎตๅ’Œๆณจ้‡Šไธๅฏ็ผ–่พ‘ใ€‚" - }, - "removeMetadata": { - "name": "็งป้™คๅ…ƒๆ•ฐๆฎ", - "subtitle": "ไปŽ PDF ไธญๅ‰ฅ็ฆป้š่—ๆ•ฐๆฎใ€‚" - }, - "changePermissions": { - "name": "ๆ›ดๆ”นๆƒ้™", - "subtitle": "่ฎพ็ฝฎๆˆ–ๆ›ดๆ”น PDF ไธŠ็š„็”จๆˆทๆƒ้™ใ€‚" - }, - "odtToPdf": { - "name": "ODT ่ฝฌ PDF", - "subtitle": "ๅฐ† OpenDocument ๆ–‡ๆœฌๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "ODT ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "csvToPdf": { - "name": "CSV ่ฝฌ PDF", - "subtitle": "ๅฐ† CSV ็”ตๅญ่กจๆ ผๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "CSV ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "rtfToPdf": { - "name": "RTF ่ฝฌ PDF", - "subtitle": "ๅฐ†ๅฏŒๆ–‡ๆœฌๆ ผๅผๆ–‡ๆกฃ่ฝฌๆขไธบ PDFใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "RTF ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "wordToPdf": { - "name": "Word ่ฝฌ PDF", - "subtitle": "ๅฐ† Word ๆ–‡ๆกฃ (DOCX, DOC, ODT, RTF) ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "DOCX, DOC, ODT, RTF ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "excelToPdf": { - "name": "Excel ่ฝฌ PDF", - "subtitle": "ๅฐ† Excel ็”ตๅญ่กจๆ ผ (XLSX, XLS, ODS, CSV) ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "XLSX, XLS, ODS, CSV ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "powerpointToPdf": { - "name": "PowerPoint ่ฝฌ PDF", - "subtitle": "ๅฐ† PowerPoint ๆผ”็คบๆ–‡็จฟ (PPTX, PPT, ODP) ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "PPTX, PPT, ODP ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "markdownToPdf": { - "name": "Markdown ่ฝฌ PDF", - "subtitle": "็ผ–ๅ†™ๆˆ–็ฒ˜่ดด Markdown ๅนถๅฐ†ๅ…ถๅฏผๅ‡บไธบ็ฒพ็พŽๆ ผๅผ็š„ PDFใ€‚", - "paneMarkdown": "Markdown", - "panePreview": "้ข„่งˆ", - "btnUpload": "ไธŠไผ ", - "btnSyncScroll": "ๅŒๆญฅๆปšๅŠจ", - "btnSettings": "่ฎพ็ฝฎ", - "btnExportPdf": "ๅฏผๅ‡บ PDF", - "settingsTitle": "Markdown ่ฎพ็ฝฎ", - "settingsPreset": "้ข„่ฎพ", - "presetDefault": "้ป˜่ฎค (GFM ้ฃŽๆ ผ)", - "presetCommonmark": "CommonMark (ไธฅๆ ผ)", - "presetZero": "ๆœ€ๅฐ (ๆ— ๅŠŸ่ƒฝ)", - "settingsOptions": "Markdown ้€‰้กน", - "optAllowHtml": "ๅ…่ฎธ HTML ๆ ‡็ญพ", - "optBreaks": "ๅฐ†ๆข่กŒ่ฝฌๆขไธบ
", - "optLinkify": "่‡ชๅŠจๅฐ† URL ่ฝฌๆขไธบ้“พๆŽฅ", - "optTypographer": "ๆŽ’็‰ˆๅ™จ (ๆ™บ่ƒฝๅผ•ๅท็ญ‰)" - }, - "pdfBooklet": { - "name": "PDF ๅฐๅ†Œๅญ", - "subtitle": "้‡ๆ–ฐๆŽ’ๅˆ—้กต้ข็”จไบŽๅŒ้ขๅฐๅ†Œๅญๆ‰“ๅฐใ€‚ๆŠ˜ๅ ๅนถ่ฃ…่ฎขไปฅๅˆ›ๅปบๅฐๅ†Œๅญใ€‚", - "howItWorks": "ๅทฅไฝœๅŽŸ็†๏ผš", - "step1": "ไธŠไผ  PDF ๆ–‡ไปถใ€‚", - "step2": "้กต้ขๅฐ†ๆŒ‰ๅฐๅ†Œๅญ้กบๅบ้‡ๆ–ฐๆŽ’ๅˆ—ใ€‚", - "step3": "ๅŒ้ขๆ‰“ๅฐ๏ผŒ็Ÿญ่พน็ฟป่ฝฌ๏ผŒๆŠ˜ๅ ๅนถ่ฃ…่ฎขใ€‚", - "paperSize": "็บธๅผ ๅคงๅฐ", - "orientation": "ๆ–นๅ‘", - "portrait": "็บตๅ‘", - "landscape": "ๆจชๅ‘", - "pagesPerSheet": "ๆฏๅผ ้กตๆ•ฐ", - "createBooklet": "ๅˆ›ๅปบๅฐๅ†Œๅญ", - "processing": "ๅค„็†ไธญ...", - "pageCount": "ๅฆ‚้œ€่ฆ๏ผŒ้กตๆ•ฐๅฐ†่กฅ้ฝไธบ 4 ็š„ๅ€ๆ•ฐใ€‚" - }, - "xpsToPdf": { - "name": "XPS ่ฝฌ PDF", - "subtitle": "ๅฐ† XPS/OXPS ๆ–‡ๆกฃ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "XPS, OXPS ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "mobiToPdf": { - "name": "MOBI ่ฝฌ PDF", - "subtitle": "ๅฐ† MOBI ็”ตๅญไนฆ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "MOBI ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "epubToPdf": { - "name": "EPUB ่ฝฌ PDF", - "subtitle": "ๅฐ† EPUB ็”ตๅญไนฆ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "EPUB ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "fb2ToPdf": { - "name": "FB2 ่ฝฌ PDF", - "subtitle": "ๅฐ† FictionBook (FB2) ็”ตๅญไนฆ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "FB2 ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "cbzToPdf": { - "name": "CBZ ่ฝฌ PDF", - "subtitle": "ๅฐ†ๆผซ็”ปๆกฃๆกˆ (CBZ/CBR) ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "CBZ, CBR ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "wpdToPdf": { - "name": "WPD ่ฝฌ PDF", - "subtitle": "ๅฐ† WordPerfect ๆ–‡ๆกฃ (WPD) ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "WPD ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "wpsToPdf": { - "name": "WPS ่ฝฌ PDF", - "subtitle": "ๅฐ† WPS Office ๆ–‡ๆกฃ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "WPS ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "xmlToPdf": { - "name": "XML ่ฝฌ PDF", - "subtitle": "ๅฐ† XML ๆ–‡ๆกฃ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "XML ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "pagesToPdf": { - "name": "Pages ่ฝฌ PDF", - "subtitle": "ๅฐ† Apple Pages ๆ–‡ๆกฃ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "Pages ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "odgToPdf": { - "name": "ODG ่ฝฌ PDF", - "subtitle": "ๅฐ† OpenDocument Graphics (ODG) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "ODG ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "odsToPdf": { - "name": "ODS ่ฝฌ PDF", - "subtitle": "ๅฐ† OpenDocument Spreadsheet (ODS) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "ODS ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "odpToPdf": { - "name": "ODP ่ฝฌ PDF", - "subtitle": "ๅฐ† OpenDocument Presentation (ODP) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "ODP ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "pubToPdf": { - "name": "PUB ่ฝฌ PDF", - "subtitle": "ๅฐ† Microsoft Publisher (PUB) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "PUB ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "vsdToPdf": { - "name": "VSD ่ฝฌ PDF", - "subtitle": "ๅฐ† Microsoft Visio (VSD, VSDX) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "VSD, VSDX ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "psdToPdf": { - "name": "PSD ่ฝฌ PDF", - "subtitle": "ๅฐ† Adobe Photoshop (PSD) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "acceptedFormats": "PSD ๆ–‡ไปถ", - "convertButton": "่ฝฌๆขไธบ PDF" - }, - "pdfToSvg": { - "name": "PDF ่ฝฌ SVG", - "subtitle": "ๅฐ† PDF ๆ–‡ไปถ็š„ๆฏไธ€้กต่ฝฌๆขไธบๅฏ็ผฉๆ”พ็Ÿข้‡ๅ›พๅฝข (SVG)๏ผŒๅœจไปปไฝ•ๅฐบๅฏธไธ‹้ƒฝ่ƒฝไฟๆŒๅฎŒ็พŽ่ดจ้‡ใ€‚" - }, - "extractTables": { - "name": "ๆๅ– PDF ่กจๆ ผ", - "subtitle": "ไปŽ PDF ๆ–‡ไปถไธญๆๅ–่กจๆ ผ๏ผŒๅนถๅฏผๅ‡บไธบ CSVใ€JSON ๆˆ– Markdown ๆ ผๅผใ€‚" - }, - "pdfToCsv": { - "name": "PDF ่ฝฌ CSV", - "subtitle": "ไปŽ PDF ไธญๆๅ–่กจๆ ผๅนถ่ฝฌๆขไธบ CSV ๆ ผๅผใ€‚" - }, - "pdfToExcel": { - "name": "PDF ่ฝฌ Excel", - "subtitle": "ไปŽ PDF ไธญๆๅ–่กจๆ ผๅนถ่ฝฌๆขไธบ Excel (XLSX) ๆ ผๅผใ€‚" - }, - "pdfToText": { - "name": "PDF ่ฝฌ ๆ–‡ๆœฌ", - "subtitle": "ไปŽ PDF ๆ–‡ไปถไธญๆๅ–ๆ–‡ๆœฌๅนถไฟๅญ˜ไธบ็บฏๆ–‡ๆœฌๆ–‡ไปถ (.txt)ใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", - "note": "ๆญคๅทฅๅ…ทไป…้€‚็”จไบŽๆ•ฐๅญ—ๅˆ›ๅปบ็š„ PDFใ€‚ๅฏนไบŽๆ‰ซๆๆ–‡ๆกฃๆˆ–ๅŸบไบŽๅ›พๅƒ็š„ PDF๏ผŒ่ฏทไฝฟ็”จๆˆ‘ไปฌ็š„ OCR PDF ๅทฅๅ…ทใ€‚", - "convertButton": "ๆๅ–ๆ–‡ๆœฌ" - }, - "digitalSignPdf": { - "name": "PDF ๆ•ฐๅญ—็ญพๅ", - "pageTitle": "PDF ๆ•ฐๅญ—็ญพๅ - ๆทปๅŠ ๅŠ ๅฏ†็ญพๅ | BentoPDF", - "subtitle": "ไฝฟ็”จ X.509 ่ฏไนฆไธบๆ‚จ็š„ PDF ๆทปๅŠ ๅŠ ๅฏ†ๆ•ฐๅญ—็ญพๅใ€‚ๆ”ฏๆŒ PKCS#12 (.pfx, .p12) ๅ’Œ PEM ๆ ผๅผใ€‚ๆ‚จ็š„็ง้’ฅๆฐธ่ฟœไธไผš็ฆปๅผ€ๆ‚จ็š„ๆต่งˆๅ™จใ€‚", - "certificateSection": "่ฏไนฆ", - "uploadCert": "ไธŠไผ ่ฏไนฆ (.pfx, .p12)", - "certPassword": "่ฏไนฆๅฏ†็ ", - "certPasswordPlaceholder": "่พ“ๅ…ฅ่ฏไนฆๅฏ†็ ", - "certInfo": "่ฏไนฆไฟกๆฏ", - "certSubject": "ไธปไฝ“", - "certIssuer": "้ขๅ‘่€…", - "certValidity": "ๆœ‰ๆ•ˆๆœŸ", - "signatureDetails": "็ญพๅ่ฏฆๆƒ…๏ผˆๅฏ้€‰๏ผ‰", - "reason": "ๅŽŸๅ› ", - "reasonPlaceholder": "ไพ‹ๅฆ‚๏ผšๆˆ‘ๆ‰นๅ‡†ๆญคๆ–‡ๆกฃ", - "location": "ไฝ็ฝฎ", - "locationPlaceholder": "ไพ‹ๅฆ‚๏ผšๅŒ—ไบฌ๏ผŒไธญๅ›ฝ", - "contactInfo": "่”็ณปไฟกๆฏ", - "contactPlaceholder": "ไพ‹ๅฆ‚๏ผšemail@example.com", - "applySignature": "ๅบ”็”จๆ•ฐๅญ—็ญพๅ", - "successMessage": "PDF ็ญพๅๆˆๅŠŸ๏ผ็ญพๅๅฏๅœจไปปไฝ• PDF ้˜…่ฏปๅ™จไธญ้ชŒ่ฏใ€‚" - }, - "validateSignaturePdf": { - "name": "้ชŒ่ฏ PDF ็ญพๅ", - "pageTitle": "้ชŒ่ฏ PDF ็ญพๅ - ้ชŒ่ฏๆ•ฐๅญ—็ญพๅ | BentoPDF", - "subtitle": "้ชŒ่ฏๆ‚จ็š„ PDF ๆ–‡ไปถไธญ็š„ๆ•ฐๅญ—็ญพๅใ€‚ๆฃ€ๆŸฅ่ฏไนฆๆœ‰ๆ•ˆๆ€งใ€ๆŸฅ็œ‹็ญพๅ่€…่ฏฆๆƒ…ๅนถ็กฎ่ฎคๆ–‡ๆกฃๅฎŒๆ•ดๆ€งใ€‚ๆ‰€ๆœ‰ๅค„็†้ƒฝๅœจๆ‚จ็š„ๆต่งˆๅ™จไธญ่ฟ›่กŒใ€‚" - } -} \ No newline at end of file + "categories": { + "popularTools": "็ƒญ้—จๅทฅๅ…ท", + "editAnnotate": "็ผ–่พ‘ไธŽๆณจ้‡Š", + "convertToPdf": "่ฝฌๆขไธบ PDF", + "convertFromPdf": "ไปŽ PDF ่ฝฌๆข", + "organizeManage": "็ป„็ป‡ไธŽ็ฎก็†", + "optimizeRepair": "ไผ˜ๅŒ–ไธŽไฟฎๅค", + "securePdf": "ๅฎ‰ๅ…จ PDF" + }, + "pdfMultiTool": { + "name": "PDF ๅคšๅŠŸ่ƒฝๅทฅๅ…ท", + "subtitle": "ๅœจไธ€ไธช็ปŸไธ€็š„็•Œ้ขไธญๅˆๅนถใ€ๅˆ†ๅ‰ฒใ€็ป„็ป‡ใ€ๅˆ ้™คใ€ๆ—‹่ฝฌใ€ๆทปๅŠ ็ฉบ็™ฝ้กตใ€ๆๅ–ๅ’Œๅคๅˆถใ€‚" + }, + "mergePdf": { + "name": "ๅˆๅนถ PDF", + "subtitle": "ๅฐ†ๅคšไธช PDF ๅˆๅนถไธบไธ€ไธชๆ–‡ไปถใ€‚ไฟ็•™ไนฆ็ญพใ€‚" + }, + "splitPdf": { + "name": "ๅˆ†ๅ‰ฒ PDF", + "subtitle": "ๅฐ†ๆŒ‡ๅฎš่Œƒๅ›ด็š„้กต้ขๆๅ–ๅˆฐๆ–ฐ PDF ไธญใ€‚" + }, + "compressPdf": { + "name": "ๅŽ‹็ผฉ PDF", + "subtitle": "ๅ‡ๅฐๆ‚จ็š„ PDF ๆ–‡ไปถๅคงๅฐใ€‚", + "algorithmLabel": "ๅŽ‹็ผฉ็ฎ—ๆณ•", + "condense": "Condense๏ผˆๆŽจ่๏ผ‰", + "photon": "Photon๏ผˆ้€‚็”จไบŽๅ›พ็‰‡่พƒๅคš็š„ PDF๏ผ‰", + "condenseInfo": "Condense ไฝฟ็”จ้ซ˜็บงๅŽ‹็ผฉ๏ผš็งป้™คๅ†—ไฝ™ๆ•ฐๆฎใ€ไผ˜ๅŒ–ๅ›พ็‰‡ใ€็ฒพ็ฎ€ๅญ—ไฝ“ใ€‚้€‚็”จไบŽๅคงๅคšๆ•ฐ PDFใ€‚", + "photonInfo": "Photon ๅฐ†้กต้ข่ฝฌๆขไธบๅ›พ็‰‡ใ€‚้€‚็”จไบŽๅ›พ็‰‡่พƒๅคš/ๆ‰ซๆ็š„ PDFใ€‚", + "photonWarning": "่ญฆๅ‘Š๏ผšๆ–‡ๆœฌๅฐ†ๆ— ๆณ•้€‰ๆ‹ฉ๏ผŒ้“พๆŽฅๅฐ†ๅคฑๆ•ˆใ€‚", + "levelLabel": "ๅŽ‹็ผฉ็บงๅˆซ", + "light": "่ฝปๅบฆ๏ผˆไฟๆŒ่ดจ้‡๏ผ‰", + "balanced": "ๅนณ่กก๏ผˆๆŽจ่๏ผ‰", + "aggressive": "็งฏๆž๏ผˆๆ›ดๅฐๆ–‡ไปถ๏ผ‰", + "extreme": "ๆž้™๏ผˆๆœ€ๅคงๅŽ‹็ผฉ๏ผ‰", + "grayscale": "่ฝฌๆขไธบ็ฐๅบฆ", + "grayscaleHint": "้€š่ฟ‡็งป้™ค้ขœ่‰ฒไฟกๆฏๆฅๅ‡ๅฐๆ–‡ไปถๅคงๅฐ", + "customSettings": "่‡ชๅฎšไน‰่ฎพ็ฝฎ", + "customSettingsHint": "ๅพฎ่ฐƒๅŽ‹็ผฉๅ‚ๆ•ฐ๏ผš", + "outputQuality": "่พ“ๅ‡บ่ดจ้‡", + "resizeImagesTo": "่ฐƒๆ•ดๅ›พ็‰‡่‡ณ", + "onlyProcessAbove": "ไป…ๅค„็†้ซ˜ไบŽ", + "removeMetadata": "็งป้™คๅ…ƒๆ•ฐๆฎ", + "subsetFonts": "็ฒพ็ฎ€ๅญ—ไฝ“๏ผˆ็งป้™คๆœชไฝฟ็”จ็š„ๅญ—็ฌฆ๏ผ‰", + "removeThumbnails": "็งป้™คๅตŒๅ…ฅ็š„็ผฉ็•ฅๅ›พ", + "compressButton": "ๅŽ‹็ผฉ PDF" + }, + "pdfEditor": { + "name": "PDF ็ผ–่พ‘ๅ™จ", + "subtitle": "ๆณจ้‡Šใ€้ซ˜ไบฎใ€ๆถ‚้ป‘ใ€่ฏ„่ฎบใ€ๆทปๅŠ ๅฝข็Šถ/ๅ›พ็‰‡ใ€ๆœ็ดขๅ’ŒๆŸฅ็œ‹ PDFใ€‚" + }, + "jpgToPdf": { + "name": "JPG ่ฝฌ PDF", + "subtitle": "ไปŽ JPGใ€JPEG ๅ’Œ JPEG2000 (JP2/JPX) ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" + }, + "signPdf": { + "name": "็ญพ็ฝฒ PDF", + "subtitle": "็ป˜ๅˆถใ€้”ฎๅ…ฅๆˆ–ไธŠไผ ๆ‚จ็š„็ญพๅใ€‚" + }, + "cropPdf": { + "name": "่ฃๅ‰ช PDF", + "subtitle": "ไฟฎๅ‰ช PDF ไธญๆฏไธ€้กต็š„่พน่ทใ€‚" + }, + "extractPages": { + "name": "ๆๅ–้กต้ข", + "subtitle": "ๅฐ†้€‰ๅฎš็š„้กต้ขไฟๅญ˜ไธบๆ–ฐๆ–‡ไปถใ€‚" + }, + "duplicateOrganize": { + "name": "ๅคๅˆถไธŽ็ป„็ป‡", + "subtitle": "ๅคๅˆถใ€้‡ๆ–ฐๆŽ’ๅบๅ’Œๅˆ ้™ค้กต้ขใ€‚" + }, + "deletePages": { + "name": "ๅˆ ้™ค้กต้ข", + "subtitle": "่‡ชๆ‚จ็š„ๆ–‡ๆกฃไธญ็งป้™ค็‰นๅฎš้กต้ขใ€‚" + }, + "editBookmarks": { + "name": "็ผ–่พ‘ไนฆ็ญพ", + "subtitle": "ๆทปๅŠ ใ€็ผ–่พ‘ใ€ๅฏผๅ…ฅใ€ๅˆ ้™คๅ’Œๆๅ– PDF ไนฆ็ญพใ€‚" + }, + "tableOfContents": { + "name": "็›ฎๅฝ•", + "subtitle": "ๆ นๆฎ PDF ไนฆ็ญพ็”Ÿๆˆ็›ฎๅฝ•้กตใ€‚" + }, + "pageNumbers": { + "name": "้กต็ ", + "subtitle": "ๅฐ†้กต็ ๆ’ๅ…ฅๅˆฐๆ‚จ็š„ๆ–‡ๆกฃไธญใ€‚" + }, + "addWatermark": { + "name": "ๆทปๅŠ ๆฐดๅฐ", + "subtitle": "ๅœจๆ‚จ็š„ PDF ้กต้ขไธŠๆทปๅŠ ๆ–‡ๅญ—ๆˆ–ๅ›พ็‰‡ๆฐดๅฐใ€‚" + }, + "headerFooter": { + "name": "้กต็œ‰ๅ’Œ้กต่„š", + "subtitle": "ๅœจ้กต้ข้กถ้ƒจๅ’Œๅบ•้ƒจๆทปๅŠ ๆ–‡ๅญ—ใ€‚" + }, + "invertColors": { + "name": "ๅ่ฝฌ้ขœ่‰ฒ", + "subtitle": "ๅˆ›ๅปบๆ‚จ็š„ PDF ็š„โ€œๆš—้ป‘ๆจกๅผโ€็‰ˆๆœฌใ€‚" + }, + "backgroundColor": { + "name": "่ƒŒๆ™ฏ้ขœ่‰ฒ", + "subtitle": "ๆ›ดๆ”นๆ‚จ็š„ PDF ็š„่ƒŒๆ™ฏ้ขœ่‰ฒใ€‚" + }, + "changeTextColor": { + "name": "ๆ›ดๆ”นๆ–‡ๆœฌ้ขœ่‰ฒ", + "subtitle": "ๆ›ดๆ”นๆ‚จ PDF ไธญๆ–‡ๆœฌ็š„้ขœ่‰ฒใ€‚" + }, + "addStamps": { + "name": "ๆทปๅŠ ๅฐ็ซ ", + "subtitle": "ไฝฟ็”จๆณจ้‡Šๅทฅๅ…ทๆ ๅ‘ๆ‚จ็š„ PDF ๆทปๅŠ ๅ›พ็‰‡ๅฐ็ซ ใ€‚" + }, + "removeAnnotations": { + "name": "็งป้™คๆณจ้‡Š", + "subtitle": "็งป้™ค่ฏ„่ฎบใ€้ซ˜ไบฎๅ’Œ้“พๆŽฅใ€‚" + }, + "pdfFormFiller": { + "name": "PDF ่กจๅ•ๅกซๅ†™ๅ™จ", + "subtitle": "็›ดๆŽฅๅœจๆต่งˆๅ™จไธญๅกซๅ†™่กจๅ•ใ€‚ไนŸๆ”ฏๆŒ XFA ่กจๅ•ใ€‚" + }, + "createPdfForm": { + "name": "ๅˆ›ๅปบ PDF ่กจๅ•", + "subtitle": "ไฝฟ็”จๆ‹–ๆ”พๆ–‡ๆœฌๅญ—ๆฎตๅˆ›ๅปบๅฏๅกซๅ†™็š„ PDF ่กจๅ•ใ€‚" + }, + "removeBlankPages": { + "name": "็งป้™ค็ฉบ็™ฝ้กต", + "subtitle": "่‡ชๅŠจๆฃ€ๆต‹ๅนถๅˆ ้™ค็ฉบ็™ฝ้กตใ€‚" + }, + "imageToPdf": { + "name": "ๅ›พ็‰‡่ฝฌ PDF", + "subtitle": "ๅฐ† JPG, PNG, BMP, GIF, TIFF, PNM, PGM, PBM, PPM, PAM, JXR, JPX, JP2, PSD, SVG, HEIC, WebP ่ฝฌๆขไธบ PDFใ€‚" + }, + "pngToPdf": { + "name": "PNG ่ฝฌ PDF", + "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  PNG ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" + }, + "webpToPdf": { + "name": "WebP ่ฝฌ PDF", + "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  WebP ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" + }, + "svgToPdf": { + "name": "SVG ่ฝฌ PDF", + "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  SVG ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" + }, + "bmpToPdf": { + "name": "BMP ่ฝฌ PDF", + "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  BMP ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" + }, + "heicToPdf": { + "name": "HEIC ่ฝฌ PDF", + "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  HEIC ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" + }, + "tiffToPdf": { + "name": "TIFF ่ฝฌ PDF", + "subtitle": "ไปŽไธ€ๅผ ๆˆ–ๅคšๅผ  TIFF ๅ›พ็‰‡ๅˆ›ๅปบ PDFใ€‚" + }, + "textToPdf": { + "name": "ๆ–‡ๆœฌ่ฝฌ PDF", + "subtitle": "ๅฐ†็บฏๆ–‡ๆœฌๆ–‡ไปถ่ฝฌๆขไธบ PDFใ€‚" + }, + "jsonToPdf": { + "name": "JSON ่ฝฌ PDF", + "subtitle": "ๅฐ† JSON ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚" + }, + "pdfToJpg": { + "name": "PDF ่ฝฌ JPG", + "subtitle": "ๅฐ†ๆฏไธ€้กต PDF ่ฝฌๆขไธบ JPG ๅ›พ็‰‡ใ€‚" + }, + "pdfToPng": { + "name": "PDF ่ฝฌ PNG", + "subtitle": "ๅฐ†ๆฏไธ€้กต PDF ่ฝฌๆขไธบ PNG ๅ›พ็‰‡ใ€‚" + }, + "pdfToWebp": { + "name": "PDF ่ฝฌ WebP", + "subtitle": "ๅฐ†ๆฏไธ€้กต PDF ่ฝฌๆขไธบ WebP ๅ›พ็‰‡ใ€‚" + }, + "pdfToBmp": { + "name": "PDF ่ฝฌ BMP", + "subtitle": "ๅฐ†ๆฏไธ€้กต PDF ่ฝฌๆขไธบ BMP ๅ›พ็‰‡ใ€‚" + }, + "pdfToTiff": { + "name": "PDF ่ฝฌ TIFF", + "subtitle": "ๅฐ†ๆฏไธ€้กต PDF ่ฝฌๆขไธบ TIFF ๅ›พ็‰‡ใ€‚" + }, + "pdfToGreyscale": { + "name": "PDF ่ฝฌ ็ฐๅบฆ", + "subtitle": "ๅฐ†ๆ‰€ๆœ‰้ขœ่‰ฒ่ฝฌๆขไธบ้ป‘็™ฝใ€‚" + }, + "pdfToJson": { + "name": "PDF ่ฝฌ JSON", + "subtitle": "ๅฐ† PDF ๆ–‡ไปถ่ฝฌๆขไธบ JSON ๆ ผๅผใ€‚" + }, + "ocrPdf": { + "name": "OCR PDF", + "subtitle": "ไฝฟ PDF ๅฏๆœ็ดขๅ’Œๅฏๅคๅˆถใ€‚" + }, + "alternateMix": { + "name": "ไบคๆ›ฟๆททๅˆ้กต้ข", + "subtitle": "้€š่ฟ‡ไบคๆ›ฟๆฏไธช PDF ็š„้กต้ขๆฅๅˆๅนถ PDFใ€‚ไฟ็•™ไนฆ็ญพใ€‚" + }, + "addAttachments": { + "name": "ๆทปๅŠ ้™„ไปถ", + "subtitle": "ๅฐ†ไธ€ไธชๆˆ–ๅคšไธชๆ–‡ไปถๅตŒๅ…ฅๅˆฐๆ‚จ็š„ PDF ไธญใ€‚" + }, + "extractAttachments": { + "name": "ๆๅ–้™„ไปถ", + "subtitle": "ไปŽ PDF ไธญๆๅ–ๆ‰€ๆœ‰ๅตŒๅ…ฅ็š„ๆ–‡ไปถไธบ ZIPใ€‚" + }, + "editAttachments": { + "name": "็ผ–่พ‘้™„ไปถ", + "subtitle": "ๆŸฅ็œ‹ๆˆ–็งป้™ค PDF ไธญ็š„้™„ไปถใ€‚" + }, + "dividePages": { + "name": "ๅˆ†ๅ‰ฒ้กต้ข", + "subtitle": "ๆฐดๅนณๆˆ–ๅž‚็›ดๅˆ†ๅ‰ฒ้กต้ขใ€‚" + }, + "addBlankPage": { + "name": "ๆทปๅŠ ็ฉบ็™ฝ้กต", + "subtitle": "ๅœจ PDF ็š„ไปปๆ„ไฝ็ฝฎๆ’ๅ…ฅ็ฉบ็™ฝ้กตใ€‚" + }, + "reversePages": { + "name": "ๅ่ฝฌ้กต้ข", + "subtitle": "ๅ่ฝฌๆ–‡ๆกฃไธญๆ‰€ๆœ‰้กต้ข็š„้กบๅบใ€‚" + }, + "rotatePdf": { + "name": "ๆ—‹่ฝฌ PDF", + "subtitle": "ไปฅ 90 ๅบฆๅขž้‡ๆ—‹่ฝฌ้กต้ขใ€‚" + }, + "rotateCustom": { + "name": "ๆŒ‰่‡ชๅฎšไน‰่ง’ๅบฆๆ—‹่ฝฌ", + "subtitle": "ๆŒ‰ไปปๆ„่‡ชๅฎšไน‰่ง’ๅบฆๆ—‹่ฝฌ้กต้ขใ€‚" + }, + "nUpPdf": { + "name": "N-Up PDF", + "subtitle": "ๅฐ†ๅคš้กตๆŽ’ๅˆ—ๅœจๅ•ๅผ ็บธไธŠใ€‚" + }, + "combineToSinglePage": { + "name": "ๅˆๅนถไธบๅ•้กต", + "subtitle": "ๅฐ†ๆ‰€ๆœ‰้กต้ขๆ‹ผๆŽฅๆˆไธ€ไธช่ฟž็ปญ็š„ๆปšๅŠจ้กต้ขใ€‚" + }, + "viewMetadata": { + "name": "ๆŸฅ็œ‹ๅ…ƒๆ•ฐๆฎ", + "subtitle": "ๆฃ€ๆŸฅ PDF ็š„้š่—ๅฑžๆ€งใ€‚" + }, + "editMetadata": { + "name": "็ผ–่พ‘ๅ…ƒๆ•ฐๆฎ", + "subtitle": "ๆ›ดๆ”นไฝœ่€…ใ€ๆ ‡้ข˜ๅ’Œๅ…ถไป–ๅฑžๆ€งใ€‚" + }, + "pdfsToZip": { + "name": "PDF ่ฝฌ ZIP", + "subtitle": "ๅฐ†ๅคšไธช PDF ๆ–‡ไปถๆ‰“ๅŒ…ๆˆไธ€ไธช ZIP ๅฝ’ๆกฃใ€‚" + }, + "comparePdfs": { + "name": "ๆฏ”่พƒ PDF", + "subtitle": "ๅนถๆŽ’ๆฏ”่พƒไธคไธช PDFใ€‚" + }, + "posterizePdf": { + "name": "ๆตทๆŠฅๅŒ– PDF", + "subtitle": "ๅฐ†ๅคง้กต้ขๅˆ†ๅ‰ฒๆˆๅคšไธชๅฐ้กต้ขใ€‚" + }, + "fixPageSize": { + "name": "ไฟฎๅค้กต้ขๅฐบๅฏธ", + "subtitle": "ๅฐ†ๆ‰€ๆœ‰้กต้ขๆ ‡ๅ‡†ๅŒ–ไธบ็ปŸไธ€ๅฐบๅฏธใ€‚" + }, + "linearizePdf": { + "name": "็บฟๆ€งๅŒ– PDF", + "subtitle": "ไผ˜ๅŒ– PDF ไปฅไพฟๅฟซ้€Ÿ็ฝ‘็ปœๆŸฅ็œ‹ใ€‚" + }, + "pageDimensions": { + "name": "้กต้ขๅฐบๅฏธ", + "subtitle": "ๅˆ†ๆž้กต้ขๅคงๅฐใ€ๆ–นๅ‘ๅ’Œๅ•ไฝใ€‚" + }, + "removeRestrictions": { + "name": "็งป้™ค้™ๅˆถ", + "subtitle": "็งป้™คไธŽๆ•ฐๅญ—็ญพๅ PDF ๆ–‡ไปถ็›ธๅ…ณ็š„ๅฏ†็ ไฟๆŠคๅ’Œๅฎ‰ๅ…จ้™ๅˆถใ€‚" + }, + "repairPdf": { + "name": "ไฟฎๅค PDF", + "subtitle": "ไปŽๆŸๅ็š„ PDF ๆ–‡ไปถไธญๆขๅคๆ•ฐๆฎใ€‚" + }, + "encryptPdf": { + "name": "ๅŠ ๅฏ† PDF", + "subtitle": "้€š่ฟ‡ๆทปๅŠ ๅฏ†็ ้”ๅฎšๆ‚จ็š„ PDFใ€‚" + }, + "sanitizePdf": { + "name": "ๆธ…็† PDF", + "subtitle": "็งป้™คๅ…ƒๆ•ฐๆฎใ€ๆณจ้‡Šใ€่„šๆœฌ็ญ‰ใ€‚" + }, + "decryptPdf": { + "name": "่งฃๅฏ† PDF", + "subtitle": "้€š่ฟ‡็งป้™คๅฏ†็ ไฟๆŠค่งฃ้” PDFใ€‚" + }, + "flattenPdf": { + "name": "ๆ‰ๅนณๅŒ– PDF", + "subtitle": "ไฝฟ่กจๅ•ๅญ—ๆฎตๅ’Œๆณจ้‡Šไธๅฏ็ผ–่พ‘ใ€‚" + }, + "removeMetadata": { + "name": "็งป้™คๅ…ƒๆ•ฐๆฎ", + "subtitle": "ไปŽ PDF ไธญๅ‰ฅ็ฆป้š่—ๆ•ฐๆฎใ€‚" + }, + "changePermissions": { + "name": "ๆ›ดๆ”นๆƒ้™", + "subtitle": "่ฎพ็ฝฎๆˆ–ๆ›ดๆ”น PDF ไธŠ็š„็”จๆˆทๆƒ้™ใ€‚" + }, + "odtToPdf": { + "name": "ODT ่ฝฌ PDF", + "subtitle": "ๅฐ† OpenDocument ๆ–‡ๆœฌๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "ODT ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "csvToPdf": { + "name": "CSV ่ฝฌ PDF", + "subtitle": "ๅฐ† CSV ็”ตๅญ่กจๆ ผๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "CSV ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "rtfToPdf": { + "name": "RTF ่ฝฌ PDF", + "subtitle": "ๅฐ†ๅฏŒๆ–‡ๆœฌๆ ผๅผๆ–‡ๆกฃ่ฝฌๆขไธบ PDFใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "RTF ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "wordToPdf": { + "name": "Word ่ฝฌ PDF", + "subtitle": "ๅฐ† Word ๆ–‡ๆกฃ (DOCX, DOC, ODT, RTF) ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "DOCX, DOC, ODT, RTF ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "excelToPdf": { + "name": "Excel ่ฝฌ PDF", + "subtitle": "ๅฐ† Excel ็”ตๅญ่กจๆ ผ (XLSX, XLS, ODS, CSV) ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "XLSX, XLS, ODS, CSV ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "powerpointToPdf": { + "name": "PowerPoint ่ฝฌ PDF", + "subtitle": "ๅฐ† PowerPoint ๆผ”็คบๆ–‡็จฟ (PPTX, PPT, ODP) ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "PPTX, PPT, ODP ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "markdownToPdf": { + "name": "Markdown ่ฝฌ PDF", + "subtitle": "็ผ–ๅ†™ๆˆ–็ฒ˜่ดด Markdown ๅนถๅฐ†ๅ…ถๅฏผๅ‡บไธบ็ฒพ็พŽๆ ผๅผ็š„ PDFใ€‚", + "paneMarkdown": "Markdown", + "panePreview": "้ข„่งˆ", + "btnUpload": "ไธŠไผ ", + "btnSyncScroll": "ๅŒๆญฅๆปšๅŠจ", + "btnSettings": "่ฎพ็ฝฎ", + "btnExportPdf": "ๅฏผๅ‡บ PDF", + "settingsTitle": "Markdown ่ฎพ็ฝฎ", + "settingsPreset": "้ข„่ฎพ", + "presetDefault": "้ป˜่ฎค (GFM ้ฃŽๆ ผ)", + "presetCommonmark": "CommonMark (ไธฅๆ ผ)", + "presetZero": "ๆœ€ๅฐ (ๆ— ๅŠŸ่ƒฝ)", + "settingsOptions": "Markdown ้€‰้กน", + "optAllowHtml": "ๅ…่ฎธ HTML ๆ ‡็ญพ", + "optBreaks": "ๅฐ†ๆข่กŒ่ฝฌๆขไธบ
", + "optLinkify": "่‡ชๅŠจๅฐ† URL ่ฝฌๆขไธบ้“พๆŽฅ", + "optTypographer": "ๆŽ’็‰ˆๅ™จ (ๆ™บ่ƒฝๅผ•ๅท็ญ‰)" + }, + "pdfBooklet": { + "name": "PDF ๅฐๅ†Œๅญ", + "subtitle": "้‡ๆ–ฐๆŽ’ๅˆ—้กต้ข็”จไบŽๅŒ้ขๅฐๅ†Œๅญๆ‰“ๅฐใ€‚ๆŠ˜ๅ ๅนถ่ฃ…่ฎขไปฅๅˆ›ๅปบๅฐๅ†Œๅญใ€‚", + "howItWorks": "ๅทฅไฝœๅŽŸ็†๏ผš", + "step1": "ไธŠไผ  PDF ๆ–‡ไปถใ€‚", + "step2": "้กต้ขๅฐ†ๆŒ‰ๅฐๅ†Œๅญ้กบๅบ้‡ๆ–ฐๆŽ’ๅˆ—ใ€‚", + "step3": "ๅŒ้ขๆ‰“ๅฐ๏ผŒ็Ÿญ่พน็ฟป่ฝฌ๏ผŒๆŠ˜ๅ ๅนถ่ฃ…่ฎขใ€‚", + "paperSize": "็บธๅผ ๅคงๅฐ", + "orientation": "ๆ–นๅ‘", + "portrait": "็บตๅ‘", + "landscape": "ๆจชๅ‘", + "pagesPerSheet": "ๆฏๅผ ้กตๆ•ฐ", + "createBooklet": "ๅˆ›ๅปบๅฐๅ†Œๅญ", + "processing": "ๅค„็†ไธญ...", + "pageCount": "ๅฆ‚้œ€่ฆ๏ผŒ้กตๆ•ฐๅฐ†่กฅ้ฝไธบ 4 ็š„ๅ€ๆ•ฐใ€‚" + }, + "xpsToPdf": { + "name": "XPS ่ฝฌ PDF", + "subtitle": "ๅฐ† XPS/OXPS ๆ–‡ๆกฃ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "XPS, OXPS ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "mobiToPdf": { + "name": "MOBI ่ฝฌ PDF", + "subtitle": "ๅฐ† MOBI ็”ตๅญไนฆ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "MOBI ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "epubToPdf": { + "name": "EPUB ่ฝฌ PDF", + "subtitle": "ๅฐ† EPUB ็”ตๅญไนฆ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "EPUB ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "fb2ToPdf": { + "name": "FB2 ่ฝฌ PDF", + "subtitle": "ๅฐ† FictionBook (FB2) ็”ตๅญไนฆ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "FB2 ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "cbzToPdf": { + "name": "CBZ ่ฝฌ PDF", + "subtitle": "ๅฐ†ๆผซ็”ปๆกฃๆกˆ (CBZ/CBR) ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "CBZ, CBR ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "wpdToPdf": { + "name": "WPD ่ฝฌ PDF", + "subtitle": "ๅฐ† WordPerfect ๆ–‡ๆกฃ (WPD) ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "WPD ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "wpsToPdf": { + "name": "WPS ่ฝฌ PDF", + "subtitle": "ๅฐ† WPS Office ๆ–‡ๆกฃ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "WPS ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "xmlToPdf": { + "name": "XML ่ฝฌ PDF", + "subtitle": "ๅฐ† XML ๆ–‡ๆกฃ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "XML ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "pagesToPdf": { + "name": "Pages ่ฝฌ PDF", + "subtitle": "ๅฐ† Apple Pages ๆ–‡ๆกฃ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "Pages ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "odgToPdf": { + "name": "ODG ่ฝฌ PDF", + "subtitle": "ๅฐ† OpenDocument Graphics (ODG) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "ODG ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "odsToPdf": { + "name": "ODS ่ฝฌ PDF", + "subtitle": "ๅฐ† OpenDocument Spreadsheet (ODS) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "ODS ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "odpToPdf": { + "name": "ODP ่ฝฌ PDF", + "subtitle": "ๅฐ† OpenDocument Presentation (ODP) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "ODP ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "pubToPdf": { + "name": "PUB ่ฝฌ PDF", + "subtitle": "ๅฐ† Microsoft Publisher (PUB) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "PUB ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "vsdToPdf": { + "name": "VSD ่ฝฌ PDF", + "subtitle": "ๅฐ† Microsoft Visio (VSD, VSDX) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "VSD, VSDX ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "psdToPdf": { + "name": "PSD ่ฝฌ PDF", + "subtitle": "ๅฐ† Adobe Photoshop (PSD) ๆ–‡ไปถ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "acceptedFormats": "PSD ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "pdfToSvg": { + "name": "PDF ่ฝฌ SVG", + "subtitle": "ๅฐ† PDF ๆ–‡ไปถ็š„ๆฏไธ€้กต่ฝฌๆขไธบๅฏ็ผฉๆ”พ็Ÿข้‡ๅ›พๅฝข (SVG)๏ผŒๅœจไปปไฝ•ๅฐบๅฏธไธ‹้ƒฝ่ƒฝไฟๆŒๅฎŒ็พŽ่ดจ้‡ใ€‚" + }, + "extractTables": { + "name": "ๆๅ– PDF ่กจๆ ผ", + "subtitle": "ไปŽ PDF ๆ–‡ไปถไธญๆๅ–่กจๆ ผ๏ผŒๅนถๅฏผๅ‡บไธบ CSVใ€JSON ๆˆ– Markdown ๆ ผๅผใ€‚" + }, + "pdfToCsv": { + "name": "PDF ่ฝฌ CSV", + "subtitle": "ไปŽ PDF ไธญๆๅ–่กจๆ ผๅนถ่ฝฌๆขไธบ CSV ๆ ผๅผใ€‚" + }, + "pdfToExcel": { + "name": "PDF ่ฝฌ Excel", + "subtitle": "ไปŽ PDF ไธญๆๅ–่กจๆ ผๅนถ่ฝฌๆขไธบ Excel (XLSX) ๆ ผๅผใ€‚" + }, + "pdfToText": { + "name": "PDF ่ฝฌ ๆ–‡ๆœฌ", + "subtitle": "ไปŽ PDF ๆ–‡ไปถไธญๆๅ–ๆ–‡ๆœฌๅนถไฟๅญ˜ไธบ็บฏๆ–‡ๆœฌๆ–‡ไปถ (.txt)ใ€‚ๆ”ฏๆŒๅคšไธชๆ–‡ไปถใ€‚", + "note": "ๆญคๅทฅๅ…ทไป…้€‚็”จไบŽๆ•ฐๅญ—ๅˆ›ๅปบ็š„ PDFใ€‚ๅฏนไบŽๆ‰ซๆๆ–‡ๆกฃๆˆ–ๅŸบไบŽๅ›พๅƒ็š„ PDF๏ผŒ่ฏทไฝฟ็”จๆˆ‘ไปฌ็š„ OCR PDF ๅทฅๅ…ทใ€‚", + "convertButton": "ๆๅ–ๆ–‡ๆœฌ" + }, + "digitalSignPdf": { + "name": "PDF ๆ•ฐๅญ—็ญพๅ", + "pageTitle": "PDF ๆ•ฐๅญ—็ญพๅ - ๆทปๅŠ ๅŠ ๅฏ†็ญพๅ | BentoPDF", + "subtitle": "ไฝฟ็”จ X.509 ่ฏไนฆไธบๆ‚จ็š„ PDF ๆทปๅŠ ๅŠ ๅฏ†ๆ•ฐๅญ—็ญพๅใ€‚ๆ”ฏๆŒ PKCS#12 (.pfx, .p12) ๅ’Œ PEM ๆ ผๅผใ€‚ๆ‚จ็š„็ง้’ฅๆฐธ่ฟœไธไผš็ฆปๅผ€ๆ‚จ็š„ๆต่งˆๅ™จใ€‚", + "certificateSection": "่ฏไนฆ", + "uploadCert": "ไธŠไผ ่ฏไนฆ (.pfx, .p12)", + "certPassword": "่ฏไนฆๅฏ†็ ", + "certPasswordPlaceholder": "่พ“ๅ…ฅ่ฏไนฆๅฏ†็ ", + "certInfo": "่ฏไนฆไฟกๆฏ", + "certSubject": "ไธปไฝ“", + "certIssuer": "้ขๅ‘่€…", + "certValidity": "ๆœ‰ๆ•ˆๆœŸ", + "signatureDetails": "็ญพๅ่ฏฆๆƒ…๏ผˆๅฏ้€‰๏ผ‰", + "reason": "ๅŽŸๅ› ", + "reasonPlaceholder": "ไพ‹ๅฆ‚๏ผšๆˆ‘ๆ‰นๅ‡†ๆญคๆ–‡ๆกฃ", + "location": "ไฝ็ฝฎ", + "locationPlaceholder": "ไพ‹ๅฆ‚๏ผšๅŒ—ไบฌ๏ผŒไธญๅ›ฝ", + "contactInfo": "่”็ณปไฟกๆฏ", + "contactPlaceholder": "ไพ‹ๅฆ‚๏ผšemail@example.com", + "applySignature": "ๅบ”็”จๆ•ฐๅญ—็ญพๅ", + "successMessage": "PDF ็ญพๅๆˆๅŠŸ๏ผ็ญพๅๅฏๅœจไปปไฝ• PDF ้˜…่ฏปๅ™จไธญ้ชŒ่ฏใ€‚" + }, + "validateSignaturePdf": { + "name": "้ชŒ่ฏ PDF ็ญพๅ", + "pageTitle": "้ชŒ่ฏ PDF ็ญพๅ - ้ชŒ่ฏๆ•ฐๅญ—็ญพๅ | BentoPDF", + "subtitle": "้ชŒ่ฏๆ‚จ็š„ PDF ๆ–‡ไปถไธญ็š„ๆ•ฐๅญ—็ญพๅใ€‚ๆฃ€ๆŸฅ่ฏไนฆๆœ‰ๆ•ˆๆ€งใ€ๆŸฅ็œ‹็ญพๅ่€…่ฏฆๆƒ…ๅนถ็กฎ่ฎคๆ–‡ๆกฃๅฎŒๆ•ดๆ€งใ€‚ๆ‰€ๆœ‰ๅค„็†้ƒฝๅœจๆ‚จ็š„ๆต่งˆๅ™จไธญ่ฟ›่กŒใ€‚" + }, + "emailToPdf": { + "name": "้‚ฎไปถ่ฝฌ PDF", + "subtitle": "ๅฐ†็”ตๅญ้‚ฎไปถๆ–‡ไปถ (EML, MSG) ่ฝฌๆขไธบ PDF ๆ ผๅผใ€‚ๆ”ฏๆŒ Outlook ๅฏผๅ‡บๅ’Œๆ ‡ๅ‡†้‚ฎไปถๆ ผๅผใ€‚", + "acceptedFormats": "EML, MSG ๆ–‡ไปถ", + "convertButton": "่ฝฌๆขไธบ PDF" + }, + "fontToOutline": { + "name": "ๅญ—ไฝ“่ฝฌ่ฝฎๅป“", + "subtitle": "ๅฐ†ๆ‰€ๆœ‰ๅญ—ไฝ“่ฝฌๆขไธบ็Ÿข้‡่ฝฎๅป“๏ผŒ็กฎไฟๅœจๆ‰€ๆœ‰่ฎพๅค‡ไธŠไธ€่‡ดๅ‘ˆ็Žฐใ€‚" + }, + "deskewPdf": { + "name": "ๆ กๆญฃ PDF", + "subtitle": "ไฝฟ็”จ OpenCV ่‡ชๅŠจๆ กๆญฃๅ€พๆ–œ็š„ๆ‰ซๆ้กต้ขใ€‚" + } +} diff --git a/public/sitemap.xml b/public/sitemap.xml index ced6136cc..28fa3437a 100644 --- a/public/sitemap.xml +++ b/public/sitemap.xml @@ -1,710 +1,23962 @@ - - + - https://www.bentopdf.com/ - 2024-12-28 + https://www.bentopdf.com/de/404 + 2026-01-14 weekly - 1.0 + 0.1 + + + + + + + + + + + + - - - https://www.bentopdf.com/docs/ - 2024-12-28 + https://www.bentopdf.com/404 + 2026-01-14 weekly - 0.9 + 0.1 + + + + + + + + + + + + - - - https://www.bentopdf.com/pdf-converter - 2024-12-29 + https://www.bentopdf.com/es/404 + 2026-01-14 weekly - 0.9 + 0.1 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-editor - 2024-12-29 + https://www.bentopdf.com/fr/404 + 2026-01-14 weekly - 0.9 + 0.1 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-security - 2024-12-29 + https://www.bentopdf.com/id/404 + 2026-01-14 weekly - 0.9 + 0.1 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-merge-split - 2024-12-29 + https://www.bentopdf.com/it/404 + 2026-01-14 weekly - 0.9 + 0.1 + + + + + + + + + + + + - - - https://www.bentopdf.com/tools - 2024-12-29 + https://www.bentopdf.com/pt/404 + 2026-01-14 weekly - 0.9 + 0.1 + + + + + + + + + + + + - - - https://www.bentopdf.com/merge-pdf - 2024-12-28 - monthly - 0.9 + https://www.bentopdf.com/tr/404 + 2026-01-14 + weekly + 0.1 + + + + + + + + + + + + - https://www.bentopdf.com/alternate-merge - 2024-12-28 - monthly - 0.7 + https://www.bentopdf.com/vi/404 + 2026-01-14 + weekly + 0.1 + + + + + + + + + + + + - https://www.bentopdf.com/combine-single-page - 2024-12-28 - monthly - 0.7 + https://www.bentopdf.com/zh/404 + 2026-01-14 + weekly + 0.1 + + + + + + + + + + + + - - - https://www.bentopdf.com/split-pdf - 2024-12-28 - monthly - 0.9 + https://www.bentopdf.com/zh-TW/404 + 2026-01-14 + weekly + 0.1 + + + + + + + + + + + + - https://www.bentopdf.com/extract-pages - 2024-12-28 - monthly + https://www.bentopdf.com/de/about + 2026-01-14 + weekly 0.8 + + + + + + + + + + + + - https://www.bentopdf.com/divide-pages - 2024-12-28 - monthly - 0.7 + https://www.bentopdf.com/about + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + - https://www.bentopdf.com/delete-pages - 2024-12-28 - monthly - 0.7 + https://www.bentopdf.com/es/about + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + - - - https://www.bentopdf.com/compress-pdf - 2024-12-28 - monthly - 0.9 + https://www.bentopdf.com/fr/about + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + - - - https://www.bentopdf.com/edit-pdf - 2024-12-28 - monthly - 0.9 + https://www.bentopdf.com/id/about + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + - https://www.bentopdf.com/organize-pdf - 2024-12-28 - monthly + https://www.bentopdf.com/it/about + 2026-01-14 + weekly 0.8 + + + + + + + + + + + + - https://www.bentopdf.com/rotate-pdf - 2024-12-28 - monthly + https://www.bentopdf.com/pt/about + 2026-01-14 + weekly 0.8 + + + + + + + + + + + + - https://www.bentopdf.com/rotate-custom - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/tr/about + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + - https://www.bentopdf.com/crop-pdf - 2024-12-28 - monthly - 0.7 + https://www.bentopdf.com/vi/about + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + - https://www.bentopdf.com/reverse-pages - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/zh/about + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + - - - https://www.bentopdf.com/word-to-pdf - 2024-12-28 - monthly - 0.9 + https://www.bentopdf.com/zh-TW/about + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + - https://www.bentopdf.com/excel-to-pdf - 2024-12-28 - monthly - 0.9 + https://www.bentopdf.com/de/add-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/powerpoint-to-pdf - 2024-12-28 - monthly - 0.9 + https://www.bentopdf.com/add-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/jpg-to-pdf - 2024-12-28 - monthly - 0.9 + https://www.bentopdf.com/es/add-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/png-to-pdf - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/fr/add-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/image-to-pdf - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/id/add-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/webp-to-pdf - 2024-12-28 - monthly + https://www.bentopdf.com/it/add-attachments + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/bmp-to-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/pt/add-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/tiff-to-pdf - 2024-12-28 - monthly + https://www.bentopdf.com/tr/add-attachments + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/heic-to-pdf - 2024-12-28 - monthly + https://www.bentopdf.com/vi/add-attachments + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/svg-to-pdf - 2024-12-28 - monthly + https://www.bentopdf.com/zh/add-attachments + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/psd-to-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/zh-TW/add-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/txt-to-pdf - 2024-12-28 - monthly + https://www.bentopdf.com/de/add-blank-page + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/rtf-to-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/add-blank-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/odt-to-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/es/add-blank-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/ods-to-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/fr/add-blank-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/odp-to-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/id/add-blank-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/odg-to-pdf - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/it/add-blank-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pages-to-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/pt/add-blank-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/epub-to-pdf - 2024-12-28 - monthly + https://www.bentopdf.com/tr/add-blank-page + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/mobi-to-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/vi/add-blank-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/fb2-to-pdf - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/zh/add-blank-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/cbz-to-pdf - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/zh-TW/add-blank-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/xps-to-pdf - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/de/add-stamps + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/vsd-to-pdf - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/add-stamps + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pub-to-pdf - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/es/add-stamps + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/wpd-to-pdf - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/fr/add-stamps + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/wps-to-pdf - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/id/add-stamps + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/markdown-to-pdf - 2024-12-28 - monthly + https://www.bentopdf.com/it/add-stamps + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/json-to-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/pt/add-stamps + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/xml-to-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/tr/add-stamps + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/csv-to-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/vi/add-stamps + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - - - https://www.bentopdf.com/pdf-to-docx - 2024-12-28 - monthly - 0.9 + https://www.bentopdf.com/zh/add-stamps + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-excel - 2024-12-28 - monthly - 0.9 + https://www.bentopdf.com/zh-TW/add-stamps + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-jpg - 2024-12-28 - monthly - 0.9 + https://www.bentopdf.com/de/add-watermark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-png - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/add-watermark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-webp - 2024-12-28 - monthly + https://www.bentopdf.com/es/add-watermark + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-bmp - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/fr/add-watermark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-tiff - 2024-12-28 - monthly + https://www.bentopdf.com/id/add-watermark + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-svg - 2024-12-28 - monthly + https://www.bentopdf.com/it/add-watermark + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-text - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/pt/add-watermark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-markdown - 2024-12-28 - monthly + https://www.bentopdf.com/tr/add-watermark + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-json - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/vi/add-watermark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-csv - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/zh/add-watermark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-zip - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/zh-TW/add-watermark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-pdfa - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/de/alternate-merge + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-to-greyscale - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/alternate-merge + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - - - https://www.bentopdf.com/encrypt-pdf - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/es/alternate-merge + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/decrypt-pdf - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/fr/alternate-merge + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/change-permissions - 2024-12-28 - monthly + https://www.bentopdf.com/id/alternate-merge + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/remove-restrictions - 2024-12-28 - monthly + https://www.bentopdf.com/it/alternate-merge + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/sign-pdf - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/pt/alternate-merge + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/digital-sign-pdf - 2026-01-06 - monthly - 0.8 + https://www.bentopdf.com/tr/alternate-merge + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/validate-signature-pdf - 2026-01-06 - monthly + https://www.bentopdf.com/vi/alternate-merge + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/sanitize-pdf - 2024-12-28 - monthly + https://www.bentopdf.com/zh/alternate-merge + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/flatten-pdf - 2024-12-28 - monthly + https://www.bentopdf.com/zh-TW/alternate-merge + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - - - https://www.bentopdf.com/form-filler - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/de/background-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/form-creator - 2024-12-28 - monthly + https://www.bentopdf.com/background-color + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - - - https://www.bentopdf.com/add-watermark - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/es/background-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/add-stamps - 2024-12-28 - monthly + https://www.bentopdf.com/fr/background-color + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/header-footer - 2024-12-28 - monthly + https://www.bentopdf.com/id/background-color + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/page-numbers - 2024-12-28 - monthly + https://www.bentopdf.com/it/background-color + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/remove-annotations - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/pt/background-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/background-color - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/tr/background-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/text-color - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/vi/background-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/invert-colors - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/zh/background-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - - - https://www.bentopdf.com/edit-metadata - 2024-12-28 - monthly + https://www.bentopdf.com/zh-TW/background-color + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/view-metadata - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/de/bmp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/remove-metadata - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/bmp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/bmp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/bmp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/bmp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/bmp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/bmp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/bmp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/bmp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/bmp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/bmp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/bookmark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + https://www.bentopdf.com/bookmark - 2024-12-28 - monthly + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/table-of-contents - 2024-12-28 - monthly + https://www.bentopdf.com/es/bookmark + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-layers - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/fr/bookmark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - - - https://www.bentopdf.com/add-attachments - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/id/bookmark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/edit-attachments - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/it/bookmark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/extract-attachments - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/pt/bookmark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - - - https://www.bentopdf.com/ocr-pdf - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/tr/bookmark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/compare-pdfs - 2024-12-28 - monthly + https://www.bentopdf.com/vi/bookmark + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/repair-pdf - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/zh/bookmark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/linearize-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/zh-TW/bookmark + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-multi-tool - 2024-12-28 - monthly + https://www.bentopdf.com/de/cbz-to-pdf + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/prepare-pdf-for-ai - 2024-12-28 - monthly + https://www.bentopdf.com/cbz-to-pdf + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + - - - https://www.bentopdf.com/add-blank-page - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/es/cbz-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/remove-blank-pages - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/fr/cbz-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/fix-page-size - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/id/cbz-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/page-dimensions - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/it/cbz-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/n-up-pdf - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/pt/cbz-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/pdf-booklet - 2024-12-28 - monthly - 0.6 + https://www.bentopdf.com/tr/cbz-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/posterize-pdf - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/vi/cbz-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/rasterize-pdf - 2024-12-28 - monthly - 0.5 + https://www.bentopdf.com/zh/cbz-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - - - https://www.bentopdf.com/extract-images - 2024-12-28 - monthly - 0.8 + https://www.bentopdf.com/zh-TW/cbz-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + - https://www.bentopdf.com/extract-tables - 2024-12-28 - monthly + https://www.bentopdf.com/de/change-permissions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/change-permissions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/change-permissions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/change-permissions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/change-permissions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/change-permissions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/change-permissions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/change-permissions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/change-permissions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/change-permissions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/change-permissions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/combine-single-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/combine-single-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/combine-single-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/combine-single-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/combine-single-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/combine-single-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/combine-single-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/combine-single-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/combine-single-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/combine-single-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/combine-single-page + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/compare-pdfs + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/compare-pdfs + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/compare-pdfs + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/compare-pdfs + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/compare-pdfs + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/compare-pdfs + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/compare-pdfs + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/compare-pdfs + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/compare-pdfs + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/compare-pdfs + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/compare-pdfs + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/compress-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/compress-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/compress-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/compress-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/compress-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/compress-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/compress-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/compress-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/compress-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/compress-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/compress-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/contact + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/contact + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/contact + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/contact + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/contact + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/contact + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/contact + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/contact + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/contact + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/contact + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/contact + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/crop-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/crop-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/crop-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/crop-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/crop-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/crop-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/crop-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/crop-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/crop-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/crop-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/crop-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/csv-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/csv-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/csv-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/csv-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/csv-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/csv-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/csv-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/csv-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/csv-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/csv-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/csv-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/decrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/decrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/decrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/decrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/decrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/decrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/decrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/decrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/decrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/decrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/decrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/delete-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/delete-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/delete-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/delete-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/delete-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/delete-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/delete-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/delete-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/delete-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/delete-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/delete-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/deskew-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/deskew-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/deskew-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/deskew-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/deskew-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/deskew-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/deskew-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/deskew-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/deskew-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/deskew-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/deskew-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/digital-sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/digital-sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/digital-sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/digital-sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/digital-sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/digital-sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/digital-sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/digital-sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/digital-sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/digital-sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/digital-sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/divide-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/divide-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/divide-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/divide-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/divide-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/divide-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/divide-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/divide-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/divide-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/divide-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/divide-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/edit-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/edit-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/edit-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/edit-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/edit-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/edit-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/edit-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/edit-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/edit-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/edit-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/edit-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/edit-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/edit-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/edit-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/edit-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/edit-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/edit-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/edit-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/edit-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/edit-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/edit-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/edit-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/edit-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/edit-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/edit-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/edit-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/edit-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/edit-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/edit-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/edit-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/edit-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/edit-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/edit-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/email-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/email-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/email-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/email-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/email-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/email-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/email-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/email-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/email-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/email-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/email-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/encrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/encrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/encrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/encrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/encrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/encrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/encrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/encrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/encrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/encrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/encrypt-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/epub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/epub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/epub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/epub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/epub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/epub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/epub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/epub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/epub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/epub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/epub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/excel-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/excel-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/excel-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/excel-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/excel-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/excel-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/excel-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/excel-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/excel-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/excel-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/excel-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/extract-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/extract-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/extract-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/extract-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/extract-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/extract-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/extract-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/extract-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/extract-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/extract-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/extract-attachments + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/extract-images + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/extract-images + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/extract-images + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/extract-images + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/extract-images + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/extract-images + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/extract-images + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/extract-images + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/extract-images + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/extract-images + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/extract-images + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/extract-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/extract-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/extract-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/extract-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/extract-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/extract-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/extract-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/extract-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/extract-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/extract-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/extract-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/extract-tables + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/extract-tables + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/extract-tables + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/extract-tables + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/extract-tables + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/extract-tables + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/extract-tables + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/extract-tables + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/extract-tables + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/extract-tables + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/extract-tables + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/faq + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + + + + https://www.bentopdf.com/faq + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/faq + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/faq + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/faq + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/faq + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/faq + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/faq + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/faq + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/faq + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/faq + 2026-01-14 + weekly + 0.8 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/fb2-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fb2-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/fb2-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/fb2-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/fb2-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/fb2-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/fb2-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/fb2-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/fb2-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/fb2-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/fb2-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/fix-page-size + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fix-page-size + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/fix-page-size + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/fix-page-size + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/fix-page-size + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/fix-page-size + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/fix-page-size + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/fix-page-size + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/fix-page-size + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/fix-page-size + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/fix-page-size + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/flatten-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/flatten-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/flatten-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/flatten-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/flatten-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/flatten-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/flatten-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/flatten-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/flatten-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/flatten-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/flatten-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/font-to-outline + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/font-to-outline + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/font-to-outline + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/font-to-outline + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/font-to-outline + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/font-to-outline + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/font-to-outline + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/font-to-outline + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/font-to-outline + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/font-to-outline + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/font-to-outline + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/form-creator + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/form-creator + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/form-creator + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/form-creator + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/form-creator + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/form-creator + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/form-creator + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/form-creator + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/form-creator + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/form-creator + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/form-creator + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/form-filler + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/form-filler + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/form-filler + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/form-filler + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/form-filler + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/form-filler + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/form-filler + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/form-filler + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/form-filler + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/form-filler + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/form-filler + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/header-footer + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/header-footer + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/header-footer + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/header-footer + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/header-footer + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/header-footer + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/header-footer + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/header-footer + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/header-footer + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/header-footer + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/header-footer + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/heic-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/heic-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/heic-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/heic-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/heic-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/heic-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/heic-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/heic-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/heic-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/heic-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/heic-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/image-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/image-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/image-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/image-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/image-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/image-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/image-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/image-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/image-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/image-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/image-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de + 2026-01-14 + weekly + 1 + + + + + + + + + + + + + + + https://www.bentopdf.com + 2026-01-14 + weekly + 1 + + + + + + + + + + + + + + + https://www.bentopdf.com/es + 2026-01-14 + weekly + 1 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr + 2026-01-14 + weekly + 1 + + + + + + + + + + + + + + + https://www.bentopdf.com/id + 2026-01-14 + weekly + 1 + + + + + + + + + + + + + + + https://www.bentopdf.com/it + 2026-01-14 + weekly + 1 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt + 2026-01-14 + weekly + 1 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr + 2026-01-14 + weekly + 1 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi + 2026-01-14 + weekly + 1 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh + 2026-01-14 + weekly + 1 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW + 2026-01-14 + weekly + 1 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/invert-colors + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/invert-colors + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/invert-colors + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/invert-colors + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/invert-colors + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/invert-colors + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/invert-colors + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/invert-colors + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/invert-colors + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/invert-colors + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/invert-colors + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/jpg-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/jpg-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/jpg-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/jpg-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/jpg-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/jpg-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/jpg-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/jpg-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/jpg-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/jpg-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/jpg-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/json-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/json-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/json-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/json-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/json-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/json-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/json-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/json-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/json-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/json-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/json-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/licensing + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/licensing + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/licensing + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/licensing + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/licensing + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/licensing + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/licensing + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/licensing + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/licensing + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/licensing + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/licensing + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/linearize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/linearize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/linearize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/linearize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/linearize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/linearize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/linearize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/linearize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/linearize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/linearize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/linearize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/markdown-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/markdown-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/markdown-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/markdown-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/markdown-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/markdown-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/markdown-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/markdown-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/markdown-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/markdown-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/markdown-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/merge-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/merge-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/merge-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/merge-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/merge-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/merge-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/merge-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/merge-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/merge-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/merge-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/merge-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/mobi-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/mobi-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/mobi-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/mobi-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/mobi-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/mobi-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/mobi-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/mobi-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/mobi-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/mobi-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/mobi-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/n-up-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/n-up-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/n-up-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/n-up-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/n-up-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/n-up-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/n-up-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/n-up-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/n-up-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/n-up-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/n-up-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/ocr-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/ocr-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/ocr-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/ocr-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/ocr-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/ocr-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/ocr-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/ocr-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/ocr-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/ocr-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/ocr-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/odg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/odg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/odg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/odg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/odg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/odg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/odg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/odg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/odg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/odg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/odg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/odp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/odp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/odp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/odp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/odp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/odp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/odp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/odp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/odp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/odp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/odp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/ods-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/ods-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/ods-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/ods-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/ods-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/ods-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/ods-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/ods-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/ods-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/ods-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/ods-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/odt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/odt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/odt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/odt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/odt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/odt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/odt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/odt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/odt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/odt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/odt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/organize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/organize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/organize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/organize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/organize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/organize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/organize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/organize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/organize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/organize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/organize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/page-dimensions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/page-dimensions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/page-dimensions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/page-dimensions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/page-dimensions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/page-dimensions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/page-dimensions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/page-dimensions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/page-dimensions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/page-dimensions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/page-dimensions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/page-numbers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/page-numbers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/page-numbers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/page-numbers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/page-numbers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/page-numbers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/page-numbers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/page-numbers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/page-numbers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/page-numbers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/page-numbers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pages-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pages-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pages-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pages-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pages-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pages-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pages-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pages-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pages-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pages-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pages-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-booklet + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-booklet + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-booklet + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-booklet + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-booklet + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-booklet + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-booklet + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-booklet + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-booklet + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-booklet + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-booklet + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-converter + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-converter + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-converter + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-converter + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-converter + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-converter + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-converter + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-converter + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-converter + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-converter + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-converter + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-editor + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-editor + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-editor + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-editor + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-editor + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-editor + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-editor + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-editor + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-editor + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-editor + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-editor + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-layers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-layers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-layers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-layers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-layers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-layers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-layers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-layers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-layers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-layers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-layers + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-merge-split + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-merge-split + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-merge-split + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-merge-split + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-merge-split + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-merge-split + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-merge-split + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-merge-split + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-merge-split + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-merge-split + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-merge-split + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-multi-tool + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-multi-tool + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-multi-tool + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-multi-tool + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-multi-tool + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-multi-tool + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-multi-tool + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-multi-tool + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-multi-tool + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-multi-tool + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-multi-tool + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-security + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-security + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-security + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-security + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-security + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-security + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-security + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-security + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-security + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-security + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-security + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-bmp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-bmp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-bmp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-bmp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-bmp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-bmp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-bmp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-bmp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-bmp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-bmp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-bmp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-csv + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-csv + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-csv + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-csv + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-csv + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-csv + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-csv + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-csv + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-csv + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-csv + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-csv + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-docx + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-docx + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-docx + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-docx + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-docx + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-docx + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-docx + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-docx + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-docx + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-docx + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-docx + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-excel + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-excel + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-excel + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-excel + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-excel + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-excel + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-excel + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-excel + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-excel + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-excel + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-excel + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-greyscale + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-greyscale + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-greyscale + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-greyscale + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-greyscale + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-greyscale + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-greyscale + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-greyscale + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-greyscale + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-greyscale + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-greyscale + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-jpg + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-jpg + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-jpg + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-jpg + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-jpg + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-jpg + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-jpg + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-jpg + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-jpg + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-jpg + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-jpg + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-json + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-json + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-json + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-json + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-json + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-json + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-json + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-json + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-json + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-json + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-json + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-markdown + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-markdown + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-markdown + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-markdown + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-markdown + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-markdown + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-markdown + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-markdown + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-markdown + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-markdown + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-markdown + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-pdfa + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-pdfa + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-pdfa + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-pdfa + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-pdfa + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-pdfa + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-pdfa + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-pdfa + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-pdfa + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-pdfa + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-pdfa + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-png + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-png + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-png + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-png + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-png + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-png + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-png + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-png + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-png + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-png + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-png + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-svg + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-svg + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-svg + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-svg + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-svg + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-svg + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-svg + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-svg + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-svg + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-svg + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-svg + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-text + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-text + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-text + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-text + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-text + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-text + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-text + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-text + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-text + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-text + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-text + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-tiff + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-tiff + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-tiff + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-tiff + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-tiff + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-tiff + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-tiff + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-tiff + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-tiff + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-tiff + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-tiff + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-webp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-webp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-webp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-webp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-webp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-webp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-webp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-webp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-webp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-webp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-webp + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pdf-to-zip + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pdf-to-zip + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pdf-to-zip + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pdf-to-zip + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pdf-to-zip + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pdf-to-zip + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pdf-to-zip + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pdf-to-zip + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pdf-to-zip + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pdf-to-zip + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pdf-to-zip + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/png-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/png-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/png-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/png-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/png-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/png-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/png-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/png-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/png-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/png-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/png-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/posterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/posterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/posterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/posterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/posterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/posterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/posterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/posterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/posterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/posterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/posterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/powerpoint-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/powerpoint-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/powerpoint-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/powerpoint-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/powerpoint-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/powerpoint-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/powerpoint-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/powerpoint-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/powerpoint-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/powerpoint-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/powerpoint-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/prepare-pdf-for-ai + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/prepare-pdf-for-ai + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/prepare-pdf-for-ai + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/prepare-pdf-for-ai + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/prepare-pdf-for-ai + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/prepare-pdf-for-ai + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/prepare-pdf-for-ai + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/prepare-pdf-for-ai + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/prepare-pdf-for-ai + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/prepare-pdf-for-ai + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/prepare-pdf-for-ai + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/privacy + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/privacy + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/privacy + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/privacy + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/privacy + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/privacy + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/privacy + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/privacy + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/privacy + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/privacy + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/privacy + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/psd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/psd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/psd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/psd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/psd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/psd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/psd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/psd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/psd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/psd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/psd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/pub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/pub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/pub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/pub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/pub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/pub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/pub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/pub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/pub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/pub-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/rasterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/rasterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/rasterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/rasterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/rasterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/rasterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/rasterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/rasterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/rasterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/rasterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/rasterize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/remove-annotations + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/remove-annotations + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/remove-annotations + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/remove-annotations + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/remove-annotations + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/remove-annotations + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/remove-annotations + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/remove-annotations + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/remove-annotations + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/remove-annotations + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/remove-annotations + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/remove-blank-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/remove-blank-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/remove-blank-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/remove-blank-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/remove-blank-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/remove-blank-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/remove-blank-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/remove-blank-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/remove-blank-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/remove-blank-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/remove-blank-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/remove-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/remove-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/remove-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/remove-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/remove-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/remove-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/remove-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/remove-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/remove-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/remove-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/remove-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/remove-restrictions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/remove-restrictions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/remove-restrictions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/remove-restrictions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/remove-restrictions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/remove-restrictions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/remove-restrictions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/remove-restrictions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/remove-restrictions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/remove-restrictions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/remove-restrictions + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/repair-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/repair-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/repair-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/repair-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/repair-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/repair-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/repair-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/repair-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/repair-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/repair-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/repair-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/reverse-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/reverse-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/reverse-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/reverse-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/reverse-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/reverse-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/reverse-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/reverse-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/reverse-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/reverse-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/reverse-pages + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/rotate-custom + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/rotate-custom + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/rotate-custom + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/rotate-custom + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/rotate-custom + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/rotate-custom + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/rotate-custom + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/rotate-custom + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/rotate-custom + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/rotate-custom + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/rotate-custom + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/rotate-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/rotate-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/rotate-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/rotate-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/rotate-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/rotate-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/rotate-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/rotate-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/rotate-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/rotate-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/rotate-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/rtf-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/rtf-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/rtf-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/rtf-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/rtf-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/rtf-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/rtf-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/rtf-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/rtf-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/rtf-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/rtf-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/sanitize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/sanitize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/sanitize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/sanitize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/sanitize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/sanitize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/sanitize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/sanitize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/sanitize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/sanitize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/sanitize-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/sign-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/split-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/split-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/split-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/split-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/split-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/split-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/split-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/split-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/split-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/split-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/split-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/svg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/svg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/svg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/svg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/svg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/svg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/svg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/svg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/svg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/svg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/svg-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/table-of-contents + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/table-of-contents + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/table-of-contents + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/table-of-contents + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/table-of-contents + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/table-of-contents + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/table-of-contents + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/table-of-contents + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/table-of-contents + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/table-of-contents + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/table-of-contents + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/terms + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/terms + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/terms + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/terms + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/terms + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/terms + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/terms + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/terms + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/terms + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/terms + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/terms + 2026-01-14 + weekly + 0.5 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/text-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/text-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/text-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/text-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/text-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/text-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/text-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/text-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/text-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/text-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/text-color + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/tiff-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tiff-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/tiff-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/tiff-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/tiff-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/tiff-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/tiff-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/tiff-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/tiff-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/tiff-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/tiff-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/tools + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tools + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/tools + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/tools + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/tools + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/tools + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/tools + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/tools + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/tools + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/tools + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/tools + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/txt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/txt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/txt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/txt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/txt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/txt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/txt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/txt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/txt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/txt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/txt-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/validate-signature-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/validate-signature-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/validate-signature-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/validate-signature-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/validate-signature-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/validate-signature-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/validate-signature-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/validate-signature-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/validate-signature-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/validate-signature-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/validate-signature-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/view-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/view-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/view-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/view-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/view-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/view-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/view-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/view-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/view-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/view-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/view-metadata + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/vsd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vsd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/vsd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/vsd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/vsd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/vsd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/vsd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/vsd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/vsd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/vsd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/vsd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/webp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/webp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/webp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/webp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/webp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/webp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/webp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/webp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/webp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/webp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/webp-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/word-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/word-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/word-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/word-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/word-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/word-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/word-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/word-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/word-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/word-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/word-to-pdf + 2026-01-14 + weekly + 0.9 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/wpd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/wpd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/wpd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/wpd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/wpd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/wpd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/wpd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/wpd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/wpd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/wpd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/wpd-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/wps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/wps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/wps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/wps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/wps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/wps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/wps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/wps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/wps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/wps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/wps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/xml-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/xml-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/xml-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/xml-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/xml-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/xml-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/xml-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/xml-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/xml-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/xml-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/xml-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/de/xps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/xps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/es/xps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/fr/xps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/id/xps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/it/xps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/pt/xps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/tr/xps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/vi/xps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh/xps-to-pdf + 2026-01-14 + weekly + 0.7 + + + + + + + + + + + + + + + https://www.bentopdf.com/zh-TW/xps-to-pdf + 2026-01-14 + weekly 0.7 + + + + + + + + + + + + diff --git a/scripts/generate-i18n-pages.mjs b/scripts/generate-i18n-pages.mjs new file mode 100644 index 000000000..b4bbc9f51 --- /dev/null +++ b/scripts/generate-i18n-pages.mjs @@ -0,0 +1,214 @@ +import fs from 'fs'; +import path from 'path'; +import { JSDOM } from 'jsdom'; +import { fileURLToPath } from 'url'; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); + +const DIST_DIR = path.resolve(__dirname, '../dist'); +const LOCALES_DIR = path.resolve(__dirname, '../public/locales'); +const SITE_URL = process.env.SITE_URL || 'https://bentopdf.com'; +const BASE_PATH = (process.env.BASE_URL || '/').replace(/\/$/, ''); + +const languages = fs.readdirSync(LOCALES_DIR).filter((file) => { + return fs.statSync(path.join(LOCALES_DIR, file)).isDirectory(); +}); + +const toCamelCase = (str) => { + return str.replace(/-([a-z])/g, (g) => g[1].toUpperCase()); +}; + +const KEY_MAPPING = { + index: 'home', + 404: 'notFound', +}; + +// TODO@ALAM: Let users build only a single language +function buildUrl(langPrefix, pagePath) { + const parts = [SITE_URL]; + if (BASE_PATH && BASE_PATH !== '') parts.push(BASE_PATH.replace(/^\//, '')); + if (langPrefix) parts.push(langPrefix); + if (pagePath) parts.push(pagePath.replace(/^\//, '')); + return parts.filter(Boolean).join('/').replace(/\/+$/, '') || SITE_URL; +} + +async function generateI18nPages() { + console.log('๐ŸŒ Generating i18n pages...'); + console.log(` SITE_URL: ${SITE_URL}`); + console.log(` BASE_PATH: ${BASE_PATH || '/'}`); + + if (!fs.existsSync(DIST_DIR)) { + console.error('โŒ dist directory not found. Please run build first.'); + process.exit(1); + } + + const htmlFiles = fs + .readdirSync(DIST_DIR) + .filter((file) => file.endsWith('.html')); + + for (const file of htmlFiles) { + const filePath = path.join(DIST_DIR, file); + const originalContent = fs.readFileSync(filePath, 'utf-8'); + const filenameNoExt = file.replace('.html', ''); + + let translationKey = toCamelCase(filenameNoExt); + if (KEY_MAPPING[filenameNoExt]) { + translationKey = KEY_MAPPING[filenameNoExt]; + } + + for (const lang of languages) { + if (lang === 'en') continue; + + const langDir = path.join(DIST_DIR, lang); + if (!fs.existsSync(langDir)) { + fs.mkdirSync(langDir, { recursive: true }); + } + + const commonPath = path.join(LOCALES_DIR, `${lang}/common.json`); + const toolsPath = path.join(LOCALES_DIR, `${lang}/tools.json`); + + const common = fs.existsSync(commonPath) + ? JSON.parse(fs.readFileSync(commonPath, 'utf-8')) + : {}; + const tools = fs.existsSync(toolsPath) + ? JSON.parse(fs.readFileSync(toolsPath, 'utf-8')) + : {}; + + const dom = new JSDOM(originalContent); + const document = dom.window.document; + + document.documentElement.lang = lang; + + let title = null; + let description = null; + + if (tools[translationKey]) { + title = + tools[translationKey].pageTitle || + (tools[translationKey].name + ? `${tools[translationKey].name} - BentoPDF` + : null); + description = tools[translationKey].subtitle; + } + + if (title) { + document.title = title; + const metaTitle = document.querySelector('meta[property="og:title"]'); + if (metaTitle) metaTitle.content = title; + const metaTwitterTitle = document.querySelector( + 'meta[name="twitter:title"]' + ); + if (metaTwitterTitle) metaTwitterTitle.content = title; + } + + if (description) { + const metaDesc = document.querySelector('meta[name="description"]'); + if (metaDesc) metaDesc.content = description; + const metaOgDesc = document.querySelector( + 'meta[property="og:description"]' + ); + if (metaOgDesc) metaOgDesc.content = description; + const metaTwitterDesc = document.querySelector( + 'meta[name="twitter:description"]' + ); + if (metaTwitterDesc) metaTwitterDesc.content = description; + } + + document + .querySelectorAll('link[rel="alternate"][hreflang]') + .forEach((el) => el.remove()); + + const pagePath = filenameNoExt === 'index' ? '' : filenameNoExt; + + languages.forEach((l) => { + const link = document.createElement('link'); + link.rel = 'alternate'; + link.hreflang = l; + link.href = buildUrl(l === 'en' ? '' : l, pagePath); + document.head.appendChild(link); + }); + + const defaultLink = document.createElement('link'); + defaultLink.rel = 'alternate'; + defaultLink.hreflang = 'x-default'; + defaultLink.href = buildUrl('', pagePath); + document.head.appendChild(defaultLink); + + let canonical = document.querySelector('link[rel="canonical"]'); + if (!canonical) { + canonical = document.createElement('link'); + canonical.rel = 'canonical'; + document.head.appendChild(canonical); + } + canonical.href = buildUrl(lang, pagePath); + + const links = document.querySelectorAll('a[href]'); + links.forEach((link) => { + const href = link.getAttribute('href'); + if (!href) return; + + if ( + href.startsWith('http') || + href.startsWith('//') || + href.startsWith('#') || + href.startsWith('mailto:') || + href.startsWith('tel:') || + href.startsWith('javascript:') + ) { + return; + } + + if (href.startsWith('/assets/') || href.includes('/assets/')) return; + + const langPrefixRegex = new RegExp( + `^(${BASE_PATH})?/(${languages.join('|')})(/|$)` + ); + if (langPrefixRegex.test(href)) return; + + let newHref; + if (href.startsWith('/')) { + const pathWithoutBase = href.startsWith(BASE_PATH) + ? href.slice(BASE_PATH.length) + : href; + newHref = `${BASE_PATH}/${lang}${pathWithoutBase}`; + } else { + newHref = `${lang}/${href}`; + } + + link.setAttribute('href', newHref); + }); + + fs.writeFileSync(path.join(langDir, file), dom.serialize()); + } + + const dom = new JSDOM(originalContent); + const document = dom.window.document; + + document + .querySelectorAll('link[rel="alternate"][hreflang]') + .forEach((el) => el.remove()); + + const pagePath = filenameNoExt === 'index' ? '' : filenameNoExt; + + languages.forEach((l) => { + const link = document.createElement('link'); + link.rel = 'alternate'; + link.hreflang = l; + link.href = buildUrl(l === 'en' ? '' : l, pagePath); + document.head.appendChild(link); + }); + + const defaultLink = document.createElement('link'); + defaultLink.rel = 'alternate'; + defaultLink.hreflang = 'x-default'; + defaultLink.href = buildUrl('', pagePath); + document.head.appendChild(defaultLink); + + fs.writeFileSync(filePath, dom.serialize()); + } + + console.log('โœ… i18n pages generated successfully!'); +} + +generateI18nPages().catch(console.error); diff --git a/scripts/generate-sitemap.mjs b/scripts/generate-sitemap.mjs new file mode 100644 index 000000000..7a587fdb5 --- /dev/null +++ b/scripts/generate-sitemap.mjs @@ -0,0 +1,117 @@ +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); + +const DIST_DIR = path.resolve(__dirname, '../dist'); +const LOCALES_DIR = path.resolve(__dirname, '../public/locales'); +const SITE_URL = process.env.SITE_URL || 'https://www.bentopdf.com'; + +const languages = fs.readdirSync(LOCALES_DIR).filter((file) => { + return fs.statSync(path.join(LOCALES_DIR, file)).isDirectory(); +}); + +const PRIORITY_MAP = { + index: 1.0, + tools: 0.9, + 'pdf-converter': 0.9, + 'pdf-editor': 0.9, + 'pdf-security': 0.9, + 'pdf-merge-split': 0.9, + 'merge-pdf': 0.9, + 'split-pdf': 0.9, + 'compress-pdf': 0.9, + 'edit-pdf': 0.9, + 'word-to-pdf': 0.9, + 'excel-to-pdf': 0.9, + 'powerpoint-to-pdf': 0.9, + 'jpg-to-pdf': 0.9, + 'pdf-to-docx': 0.9, + 'pdf-to-excel': 0.9, + 'pdf-to-jpg': 0.9, + about: 0.8, + faq: 0.8, + contact: 0.7, + privacy: 0.5, + terms: 0.5, + licensing: 0.5, + 404: 0.1, +}; + +function getPriority(pageName) { + return PRIORITY_MAP[pageName] || 0.7; +} + +function buildUrl(lang, pageName) { + const pagePath = pageName === 'index' ? '' : pageName; + if (lang === 'en') { + return pagePath ? `${SITE_URL}/${pagePath}` : SITE_URL; + } + return pagePath ? `${SITE_URL}/${lang}/${pagePath}` : `${SITE_URL}/${lang}`; +} + +function generateSitemap() { + console.log('๐Ÿ—บ๏ธ Generating multilingual sitemap...'); + console.log(` SITE_URL: ${SITE_URL}`); + console.log(` Languages: ${languages.join(', ')}`); + + // Get all HTML files from dist root (English pages) + const htmlFiles = fs + .readdirSync(DIST_DIR) + .filter((file) => file.endsWith('.html')) + .map((file) => file.replace('.html', '')); + + const today = new Date().toISOString().split('T')[0]; + + let sitemap = ` + +`; + + for (const pageName of htmlFiles) { + const priority = getPriority(pageName); + + // Generate entry for each language + for (const lang of languages) { + const url = buildUrl(lang, pageName); + + sitemap += ` + ${url} + ${today} + weekly + ${priority} +`; + + // Add hreflang alternates for all languages + for (const altLang of languages) { + const altUrl = buildUrl(altLang, pageName); + sitemap += ` +`; + } + + // Add x-default pointing to English + const defaultUrl = buildUrl('en', pageName); + sitemap += ` + +`; + } + } + + sitemap += ` +`; + + const sitemapPath = path.join(DIST_DIR, 'sitemap.xml'); + fs.writeFileSync(sitemapPath, sitemap); + + const publicSitemapPath = path.resolve(__dirname, '../public/sitemap.xml'); + fs.writeFileSync(publicSitemapPath, sitemap); + + const urlCount = htmlFiles.length * languages.length; + console.log( + `โœ… Sitemap generated with ${urlCount} URLs (${htmlFiles.length} pages ร— ${languages.length} languages)` + ); +} + +generateSitemap(); diff --git a/scripts/update-partials.js b/scripts/update-partials.js new file mode 100644 index 000000000..8d86acf1c --- /dev/null +++ b/scripts/update-partials.js @@ -0,0 +1,64 @@ +#!/usr/bin/env node +/** + * Script to update all HTML files in src/pages to use Handlebars partials + * for navbar and footer + */ + +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); + +const pagesDir = path.join(__dirname, '..', 'src', 'pages'); + +// Get all HTML files in src/pages +const htmlFiles = fs.readdirSync(pagesDir).filter((f) => f.endsWith('.html')); + +console.log(`Found ${htmlFiles.length} HTML files to process...`); + +let updatedCount = 0; +let skippedCount = 0; + +for (const file of htmlFiles) { + const filePath = path.join(pagesDir, file); + let content = fs.readFileSync(filePath, 'utf-8'); + let modified = false; + + // Check if already using partials + if (content.includes('{{> navbar }}') && content.includes('{{> footer }}')) { + console.log(` [SKIP] ${file} - already using partials`); + skippedCount++; + continue; + } + + // Replace navbar - match from

- + {{> footer }} diff --git a/src/pages/add-blank-page.html b/src/pages/add-blank-page.html index 3280b481c..c41831d4a 100644 --- a/src/pages/add-blank-page.html +++ b/src/pages/add-blank-page.html @@ -102,101 +102,7 @@ - + {{> navbar }}

- + {{> footer }} diff --git a/src/pages/add-stamps.html b/src/pages/add-stamps.html index 7a3236d84..f8e3432da 100644 --- a/src/pages/add-stamps.html +++ b/src/pages/add-stamps.html @@ -92,104 +92,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/add-watermark.html b/src/pages/add-watermark.html index c5806604c..90f2def46 100644 --- a/src/pages/add-watermark.html +++ b/src/pages/add-watermark.html @@ -96,101 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/alternate-merge.html b/src/pages/alternate-merge.html index 2c810be60..dd81fcded 100644 --- a/src/pages/alternate-merge.html +++ b/src/pages/alternate-merge.html @@ -108,98 +108,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/background-color.html b/src/pages/background-color.html index a75f3952a..545f5fd58 100644 --- a/src/pages/background-color.html +++ b/src/pages/background-color.html @@ -110,101 +110,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/bmp-to-pdf.html b/src/pages/bmp-to-pdf.html index 4f2c58ded..3bc338a14 100644 --- a/src/pages/bmp-to-pdf.html +++ b/src/pages/bmp-to-pdf.html @@ -96,101 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/bookmark.html b/src/pages/bookmark.html index b8f54c237..18dddca2e 100644 --- a/src/pages/bookmark.html +++ b/src/pages/bookmark.html @@ -93,106 +93,7 @@ - + {{> navbar }}
Bookmarks type="text" id="search-bookmarks" placeholder="Search bookmarks..." - class="w-full pl-10 pr-3 py-2 border border-gray-300 rounded-lg text-sm" + class="w-full pl-10 pr-3 py-2 border border-gray-300 rounded-lg text-sm text-gray-700" />
@@ -525,7 +426,7 @@

Bookmarks

type="text" id="bookmark-title" placeholder="Bookmark title..." - class="w-full px-3 py-2 border border-gray-300 rounded-lg mb-2 text-sm" + class="w-full px-3 py-2 border border-gray-300 rounded-lg mb-2 text-sm text-gray-700" /> -
-
-
- - - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/change-permissions.html b/src/pages/change-permissions.html index dccd0b057..51b9b49c2 100644 --- a/src/pages/change-permissions.html +++ b/src/pages/change-permissions.html @@ -110,98 +110,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/combine-single-page.html b/src/pages/combine-single-page.html index d5202e61a..f9bcebb85 100644 --- a/src/pages/combine-single-page.html +++ b/src/pages/combine-single-page.html @@ -110,98 +110,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/compare-pdfs.html b/src/pages/compare-pdfs.html index e165334cd..8c4d795ce 100644 --- a/src/pages/compare-pdfs.html +++ b/src/pages/compare-pdfs.html @@ -126,98 +126,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/compress-pdf.html b/src/pages/compress-pdf.html index a0390b401..b6705b596 100644 --- a/src/pages/compress-pdf.html +++ b/src/pages/compress-pdf.html @@ -95,90 +95,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/crop-pdf.html b/src/pages/crop-pdf.html index a2087ee1c..e9e52fede 100644 --- a/src/pages/crop-pdf.html +++ b/src/pages/crop-pdf.html @@ -101,90 +101,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/csv-to-pdf.html b/src/pages/csv-to-pdf.html index 3ae446eec..c5353527e 100644 --- a/src/pages/csv-to-pdf.html +++ b/src/pages/csv-to-pdf.html @@ -96,90 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/decrypt-pdf.html b/src/pages/decrypt-pdf.html index 19a0ea58f..cbcd38ced 100644 --- a/src/pages/decrypt-pdf.html +++ b/src/pages/decrypt-pdf.html @@ -96,98 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/delete-pages.html b/src/pages/delete-pages.html index 106ac078a..c8660a90d 100644 --- a/src/pages/delete-pages.html +++ b/src/pages/delete-pages.html @@ -96,30 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/deskew-pdf.html b/src/pages/deskew-pdf.html new file mode 100644 index 000000000..de0ab0699 --- /dev/null +++ b/src/pages/deskew-pdf.html @@ -0,0 +1,463 @@ + + + + + + + Deskew PDF Online Free - Straighten Scanned PDFs | BentoPDF + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{> navbar }} + +
+
+ + +

+ Deskew PDF Free Online - Straighten Tilted Scans +

+

+ Automatically detect and correct skewed pages in scanned PDFs. Uses + advanced image processing to straighten tilted documents. +

+ +
+
+ +

+ Click to select files or drag + and drop +

+

One or more PDF files

+

+ Your files never leave your device. +

+
+ +
+ + + +
+ + + + +
+
+ + + + + +
+

+ How It Works +

+
+
+
+ 1 +
+
+

Upload PDF

+

+ Select your scanned PDF with tilted pages +

+
+
+
+
+ 2 +
+
+

Auto-Detect

+

OpenCV analyzes and detects skew angles

+
+
+
+
+ 3 +
+
+

Download

+

Get your straightened PDF instantly

+
+
+
+
+ +
+

+ Related PDF Tools +

+ +
+ +
+

+ Frequently Asked Questions +

+
+
+ + What is PDF deskewing? + + +

+ Deskewing is the process of correcting tilted or rotated pages in + scanned documents. When you scan a document, it's common for pages + to be slightly skewed. This tool automatically detects and corrects + that skew. +

+
+
+ + How accurate is the skew detection? + + +

+ Our tool uses OpenCV's advanced image processing algorithms to + detect skew angles with high precision. It works best on documents + with clear text content. +

+
+
+ + Are my files private? + + +

+ Yes! All processing happens entirely in your browser using + WebAssembly. Your files never leave your device. +

+
+
+
+ + {{> footer }} + + + + + + + + + + + + + + + diff --git a/src/pages/digital-sign-pdf.html b/src/pages/digital-sign-pdf.html index 421f5df84..dcf4f17da 100644 --- a/src/pages/digital-sign-pdf.html +++ b/src/pages/digital-sign-pdf.html @@ -97,90 +97,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/divide-pages.html b/src/pages/divide-pages.html index 36dc06e7a..c8aa43438 100644 --- a/src/pages/divide-pages.html +++ b/src/pages/divide-pages.html @@ -96,98 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/edit-attachments.html b/src/pages/edit-attachments.html index 6ce0108ae..38bb519f7 100644 --- a/src/pages/edit-attachments.html +++ b/src/pages/edit-attachments.html @@ -110,98 +110,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/edit-metadata.html b/src/pages/edit-metadata.html index 9ed329c6f..27fd117aa 100644 --- a/src/pages/edit-metadata.html +++ b/src/pages/edit-metadata.html @@ -96,98 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/edit-pdf.html b/src/pages/edit-pdf.html index edad8e5d4..1f8a4afc6 100644 --- a/src/pages/edit-pdf.html +++ b/src/pages/edit-pdf.html @@ -99,101 +99,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/email-to-pdf.html b/src/pages/email-to-pdf.html new file mode 100644 index 000000000..cff9c4c43 --- /dev/null +++ b/src/pages/email-to-pdf.html @@ -0,0 +1,521 @@ + + + + + + + + + Email to PDF Converter Free Online - EML MSG to PDF | BentoPDF + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Email to PDF - Convert EML/MSG to PDF - BentoPDF + + + + + + + + + + + + + + + + + {{> navbar }} + +
+
+ + +

+ Email to PDF Converter Free Online - Convert EML MSG Files +

+

+ Convert email files (EML, MSG) to PDF format. Supports Outlook exports + and standard email formats. +

+ +
+
+ +

+ Click to select files + or drag and drop +

+

+ EML, MSG files +

+

+ Your files never leave your device. +

+
+ +
+ + + +
+ + +
+
+ + + + + + +
+

+ How It Works +

+
+
+
+ 1 +
+
+

+ Upload Email File +

+

+ Click or drag and drop your .eml or .msg file to begin +

+
+
+
+
+ 2 +
+
+

Process

+

+ Click the convert button to generate your PDF +

+
+
+
+
+ 3 +
+
+

Download

+

Save your converted PDF file instantly

+
+
+
+
+ + +
+

+ Related PDF Tools +

+ +
+ + +
+

+ Frequently Asked Questions +

+
+
+ + What email formats are supported? + + +

+ BentoPDF supports both .eml (standard email format) and .msg + (Microsoft Outlook) files. These are the most common formats for + exported or saved emails. +

+
+
+ + Is email to PDF conversion really free? + + +

+ Yes! BentoPDF is 100% free with no hidden fees, no signup required, + and unlimited file processing. +

+
+
+ + Are my emails kept private? + + +

+ Absolutely! All processing happens in your browser. Your email files + never leave your device, ensuring complete privacy for sensitive + communications. +

+
+
+ + What about email attachments? + + +

+ The PDF displays a list of attachments at the bottom and also embeds + the actual files into the PDF. You can access them via the + Attachments panel in PDF readers like Adobe Reader or Foxit. +

+
+
+
+ {{> footer }} + + + + + + + + + + + + + + + + diff --git a/src/pages/encrypt-pdf.html b/src/pages/encrypt-pdf.html index a1f02293a..1c3940fe6 100644 --- a/src/pages/encrypt-pdf.html +++ b/src/pages/encrypt-pdf.html @@ -99,98 +99,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/epub-to-pdf.html b/src/pages/epub-to-pdf.html index c4fde435b..8fb269310 100644 --- a/src/pages/epub-to-pdf.html +++ b/src/pages/epub-to-pdf.html @@ -96,90 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/excel-to-pdf.html b/src/pages/excel-to-pdf.html index 5bf2901e2..15b0b2255 100644 --- a/src/pages/excel-to-pdf.html +++ b/src/pages/excel-to-pdf.html @@ -99,90 +99,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/extract-attachments.html b/src/pages/extract-attachments.html index 15447b64f..4df2ae9cf 100644 --- a/src/pages/extract-attachments.html +++ b/src/pages/extract-attachments.html @@ -110,98 +110,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/extract-images.html b/src/pages/extract-images.html index fd3921aaf..96eac7b99 100644 --- a/src/pages/extract-images.html +++ b/src/pages/extract-images.html @@ -102,88 +102,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/extract-pages.html b/src/pages/extract-pages.html index b3e1b8091..2855e4b0b 100644 --- a/src/pages/extract-pages.html +++ b/src/pages/extract-pages.html @@ -96,90 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/extract-tables.html b/src/pages/extract-tables.html index a9108a36a..55a8d1316 100644 --- a/src/pages/extract-tables.html +++ b/src/pages/extract-tables.html @@ -102,87 +102,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/fb2-to-pdf.html b/src/pages/fb2-to-pdf.html index 5fda55d92..7dbe46d6b 100644 --- a/src/pages/fb2-to-pdf.html +++ b/src/pages/fb2-to-pdf.html @@ -96,90 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/fix-page-size.html b/src/pages/fix-page-size.html index 38e350bfe..fc03e64a0 100644 --- a/src/pages/fix-page-size.html +++ b/src/pages/fix-page-size.html @@ -96,98 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/flatten-pdf.html b/src/pages/flatten-pdf.html index e9e157c8e..01c34fd82 100644 --- a/src/pages/flatten-pdf.html +++ b/src/pages/flatten-pdf.html @@ -96,98 +96,7 @@ - + {{> navbar }}
- + {{> footer }} diff --git a/src/pages/font-to-outline.html b/src/pages/font-to-outline.html new file mode 100644 index 000000000..31f193244 --- /dev/null +++ b/src/pages/font-to-outline.html @@ -0,0 +1,453 @@ + + + + + + + + Font to Outline PDF Online Free - Convert Fonts to Paths | BentoPDF + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{> navbar }} + +
+
+ + +

+ Font to Outline Free Online - Convert Fonts to Paths +

+

+ Convert all fonts in your PDF to vector outlines/paths. Ensures + consistent rendering across all devices regardless of font + availability. +

+ +
+
+ +

+ Click to select files or drag + and drop +

+

One or more PDF files

+

+ Your files never leave your device. +

+
+ +
+ + + +
+ + +
+
+ + + + + +
+

+ How It Works +

+
+
+
+ 1 +
+
+

Upload PDF

+

+ Select your PDF file with embedded fonts +

+
+
+
+
+ 2 +
+
+

Convert

+

+ Ghostscript converts all fonts to vector paths +

+
+
+
+
+ 3 +
+
+

Download

+

Get your font-independent PDF instantly

+
+
+
+
+ +
+

+ Related PDF Tools +

+ +
+ +
+

+ Frequently Asked Questions +

+
+
+ + What does "font to outline" mean? + + +

+ Converting fonts to outlines means transforming text characters from + font-based representations into vector paths/curves. This ensures + the PDF looks identical on any device, even if the original fonts + aren't installed. +

+
+
+ + When should I use this tool? + + +

+ Use this tool when preparing PDFs for professional printing, sharing + documents with special fonts, or when you need to ensure consistent + appearance across different systems and devices. +

+
+
+ + Will the text still be selectable? + + +

+ No. After conversion, text becomes vector graphics and is no longer + selectable or searchable. If you need searchable text, consider + using the OCR tool after conversion. +

+
+
+ + Are my files private? + + +

+ Yes! All processing happens entirely in your browser using + WebAssembly. Your files never leave your device. +

+
+
+
+ + {{> footer }} + + + + + + + + + + + + + + + diff --git a/src/pages/form-creator.html b/src/pages/form-creator.html index 2463b5b5e..5d79be9e9 100644 --- a/src/pages/form-creator.html +++ b/src/pages/form-creator.html @@ -63,7 +63,6 @@ Create PDF Form - BentoPDF - @@ -92,104 +91,7 @@ - + {{> navbar }}
-