diff --git a/README.md b/README.md
index 14d937c9..ea008571 100644
--- a/README.md
+++ b/README.md
@@ -71,9 +71,9 @@ Have questions, feature requests, or want to chat with the community? Join our D
## 📚 Documentation
-[](https://bentopdf.com/docs/)
+[](https://www.bentopdf.com/docs)
-Visit our [Documentation](https://bentopdf.com/docs/) for:
+Visit our [Documentation](https://www.bentopdf.com/docs) for:
- **Getting Started** guide
- **Tools Reference** (50+ tools)
@@ -100,7 +100,7 @@ BentoPDF is **dual-licensed** to fit your needs:
> **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://www.bentopdf.com/licensing)
### AGPL Components (Pre-configured via CDN)
@@ -308,6 +308,7 @@ BentoPDF is available in multiple languages:
| Vietnamese | [](public/locales/vi/common.json) |
| Korean | [](public/locales/ko/common.json) |
| Russian | [](public/locales/ru/common.json) |
+| Persian (Farsi) | [](public/locales/fa/common.json) |
Want to help translate BentoPDF into your language? Check out our [Translation Guide](TRANSLATION.md)!
@@ -809,7 +810,7 @@ systemctl --user daemon-reload
systemctl --user enable --now bentopdf
```
-For detailed Quadlet configuration, see [Self-Hosting Docker Guide](https://bentopdf.com/docs/self-hosting/docker).
+For detailed Quadlet configuration, see [Self-Hosting Docker Guide](https://www.bentopdf.com/docs/self-hosting/docker).
### 🏢 Self-Hosted build (Simple Mode)
@@ -865,7 +866,7 @@ Or set the same variables when building from source — see [Custom Branding](#-
> - **AGPL-3.0** (free): allowed if your deployment publishes its full source code under AGPL — this includes any branding modifications, custom configuration, and any code you build on top of it.
> - **Commercial license** ($79 lifetime): required for closed-source / proprietary deployments — e.g., a private SaaS where you don't open-source your branding fork or surrounding business logic.
>
-> See the [Licensing page](https://bentopdf.com/licensing.html) for the full comparison.
+> See the [Licensing page](https://www.bentopdf.com/licensing) for the full comparison.
### 🎨 Custom Branding
@@ -929,7 +930,7 @@ docker run -d -p 3000:8080 \
ghcr.io/alam00000/bentopdf-simple:latest
```
-Both methods can be combined — the lists are merged. For the full list of tool IDs, see the [self-hosting docs](https://bentopdf.com/docs/self-hosting/docker#disabling-specific-tools).
+Both methods can be combined — the lists are merged. For the full list of tool IDs, see the [self-hosting docs](https://www.bentopdf.com/docs/self-hosting/docker#disabling-specific-tools).
You can also disable specific features inside the PDF Editor (e.g., redaction, forms) without disabling the entire editor. Add `editorDisabledCategories` to your `config.json`:
@@ -939,7 +940,7 @@ You can also disable specific features inside the PDF Editor (e.g., redaction, f
}
```
-For the full list of editor categories, see the [self-hosting docs](https://bentopdf.com/docs/self-hosting/docker#disabling-editor-features).
+For the full list of editor categories, see the [self-hosting docs](https://www.bentopdf.com/docs/self-hosting/docker#disabling-editor-features).
### 🔕 Disabling the GitHub Star Counter
diff --git a/TRANSLATION.md b/TRANSLATION.md
index 579a5ea2..5a8599c5 100644
--- a/TRANSLATION.md
+++ b/TRANSLATION.md
@@ -40,6 +40,7 @@ BentoPDF uses **i18next** for internationalization (i18n). Currently supported l
- **Danish** (`da`)
- **Swedish** (`sv`)
- **Japanese** (`ja`)
+- **Persian (Farsi)** (`fa`)
The app automatically detects the language from the URL path:
@@ -617,6 +618,7 @@ Current translation coverage:
| Danish | `da` | ✅ Complete | Community |
| Swedish | `sv` | ✅ Complete | Community |
| Japanese | `ja` | ✅ Complete | Community |
+| Persian (Farsi) | `fa` | ✅ Complete | Community |
| Your Language | `??` | 🚧 In Progress | You? |
---
diff --git a/about.html b/about.html
index be49594a..d2513b8e 100644
--- a/about.html
+++ b/about.html
@@ -332,7 +332,10 @@
-
+ Docs
diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts
index b1ff8b2d..bad15862 100644
--- a/docs/.vitepress/config.mts
+++ b/docs/.vitepress/config.mts
@@ -11,8 +11,8 @@ export default defineConfig({
transformPageData(pageData) {
const relPath = pageData.relativePath.replace(/\.md$/, '')
- const slug = relPath === 'index' ? '' : relPath.replace(/\/index$/, '/')
- const canonicalUrl = slug ? `${SITE_URL}/docs/${slug}` : `${SITE_URL}/docs/`
+ const slug = relPath === 'index' ? '' : relPath.replace(/\/index$/, '')
+ const canonicalUrl = slug ? `${SITE_URL}/docs/${slug}` : `${SITE_URL}/docs`
pageData.frontmatter.head ??= []
pageData.frontmatter.head.push(['link', { rel: 'canonical', href: canonicalUrl }])
},
diff --git a/docs/contributing.md b/docs/contributing.md
index 2343d627..f5e0b0d8 100644
--- a/docs/contributing.md
+++ b/docs/contributing.md
@@ -131,6 +131,6 @@ Before your PR can be merged, you'll need to sign our CLA:
BentoPDF is dual-licensed:
- **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 $79](https://ko-fi.com/s/f32ca4cb75)
+- **Commercial License** for proprietary/closed-source applications - [Get Lifetime License for $79](https://buy.polar.sh/polar_cl_ThDfffbl733x7oAodcIryCzhlO57ZtcWPq6HJ1qMChd)
By contributing, you agree that your contributions will be licensed under these terms.
diff --git a/docs/getting-started.md b/docs/getting-started.md
index a6107893..064d620c 100644
--- a/docs/getting-started.md
+++ b/docs/getting-started.md
@@ -10,7 +10,7 @@ BentoPDF is a free, open-source, privacy-first PDF toolkit that runs **entirely
### Option 1: Use the Hosted Version
-Visit [bentopdf.com](https://bentopdf.com) to use BentoPDF instantly—no installation required.
+Visit [bentopdf.com](https://www.bentopdf.com) to use BentoPDF instantly—no installation required.
### Option 2: Self-Host with Docker
diff --git a/docs/licensing.md b/docs/licensing.md
index 791e84d5..db3d996d 100644
--- a/docs/licensing.md
+++ b/docs/licensing.md
@@ -3,12 +3,12 @@
BentoPDF is dual-licensed under **AGPL-3.0** (for open-source projects) and a **Commercial License** (for proprietary/closed-source applications).
::: tip Full Details
-For complete licensing information, delivery details, AGPL component notices, and invoicing, visit our [Licensing Page](https://bentopdf.com/licensing.html).
+For complete licensing information, delivery details, AGPL component notices, and invoicing, visit our [Licensing Page](https://www.bentopdf.com/licensing).
:::
## Get a Commercial License
-**[Get Lifetime License for $79](https://ko-fi.com/s/f32ca4cb75)** — A one-time purchase that includes all future updates forever.
+**[Get Lifetime License for $79](https://buy.polar.sh/polar_cl_ThDfffbl733x7oAodcIryCzhlO57ZtcWPq6HJ1qMChd)**. A one-time purchase that includes all future updates forever.
## When Do You Need a Commercial License?
@@ -56,10 +56,10 @@ The commercial license covers BentoPDF's own code. If you configure and use AGPL
## Invoicing
-- Ko-fi does not automatically issue invoices.
-- An official invoice will be provided immediately upon request.
+- Payments are handled by [Polar](https://polar.sh), which automatically emails an invoice after purchase.
+- Polar handles VAT invoices for businesses in applicable regions. Select **"I'm purchasing as a business"** at checkout and enter your billing address and Tax/VAT number.
-**Contact us:** [contact@bentopdf.com](mailto:contact@bentopdf.com) with your purchase details.
+**Questions?** Contact [contact@bentopdf.com](mailto:contact@bentopdf.com) with your purchase details.
## What's Included
@@ -89,4 +89,4 @@ Components like CoherentPDF are licensed under AGPL v3 and remain under that lic
### How do I get an invoice?
-Email [contact@bentopdf.com](mailto:contact@bentopdf.com) with your Ko-fi purchase confirmation, and we'll send an official invoice.
+Polar emails your invoice automatically after purchase. For a VAT invoice, select "I'm purchasing as a business" at checkout. If you need anything else, email [contact@bentopdf.com](mailto:contact@bentopdf.com) with your purchase details.
diff --git a/docs/self-hosting/index.md b/docs/self-hosting/index.md
index 35be1b6b..365322cc 100644
--- a/docs/self-hosting/index.md
+++ b/docs/self-hosting/index.md
@@ -148,7 +148,7 @@ Running the Commercial build is allowed under either of BentoPDF's two license o
- **AGPL-3.0** (free) — allowed if your deployment publishes its full source code under AGPL, including any branding modifications and surrounding business logic.
- **Commercial license** ($79 lifetime) — required for closed-source / proprietary deployments where you don't open-source your branding fork or business code.
-See the [Licensing page](https://bentopdf.com/licensing.html) for the full comparison. AGPL-licensed WASM modules (PyMuPDF, Ghostscript, CoherentPDF) load from a CDN at runtime, so they don't enter your image and don't change your licensing posture.
+See the [Licensing page](https://www.bentopdf.com/licensing) for the full comparison. AGPL-licensed WASM modules (PyMuPDF, Ghostscript, CoherentPDF) load from a CDN at runtime, so they don't enter your image and don't change your licensing posture.
:::
### Base URL
diff --git a/index.html b/index.html
index 0f33e5a4..c6698d8d 100644
--- a/index.html
+++ b/index.html
@@ -559,7 +559,7 @@
class="w-20 h-20 md:w-24 md:h-24 rounded-full bg-blue-600 flex items-center justify-center mb-4"
>
@@ -584,7 +584,7 @@
class="w-20 h-20 md:w-24 md:h-24 rounded-full bg-blue-600 flex items-center justify-center mb-4"
>
@@ -609,7 +609,7 @@
class="w-20 h-20 md:w-24 md:h-24 rounded-full bg-blue-600 flex items-center justify-center mb-4"
>
diff --git a/nginx.conf b/nginx.conf
index 2100881e..2fc61166 100644
--- a/nginx.conf
+++ b/nginx.conf
@@ -50,11 +50,11 @@ http {
return 301 /$1;
}
- if ($request_uri ~ ^(/(?:ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja))?/src/pages/([a-z0-9][a-z0-9-]*)\.html(\?.*)?$) {
+ if ($request_uri ~ ^(/(?:ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja|ca))?/src/pages/([a-z0-9][a-z0-9-]*)\.html(\?.*)?$) {
return 301 $1/$2$3;
}
- if ($request_uri ~ ^(/(?:ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja))?/change-text-color(?:\.html)?/?(\?.*)?$) {
+ if ($request_uri ~ ^(/(?:ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja|ca))?/change-text-color(?:\.html)?/?(\?.*)?$) {
return 301 $1/text-color$2;
}
@@ -93,36 +93,33 @@ http {
return 301 /docs/tools/protect-pdf$1;
}
- if ($request_uri ~ ^(/(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja))?/index\.html(\?.*)?$) {
+ if ($request_uri ~ ^(/(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja|ca))?/index\.html(\?.*)?$) {
return 301 $1/$2;
}
- if ($request_uri ~ ^(/(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja))?/pdf-to-docx(?:\.html)?/?(\?.*)?$) {
+ if ($request_uri ~ ^(/(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja|ca))?/pdf-to-docx(?:\.html)?/?(\?.*)?$) {
return 301 $1/pdf-to-word$2;
}
- if ($request_uri ~ ^(/(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja))?/decrypt-pdf(?:\.html)?/?(\?.*)?$) {
+ if ($request_uri ~ ^(/(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja|ca))?/decrypt-pdf(?:\.html)?/?(\?.*)?$) {
return 301 $1/unlock-pdf$2;
}
- if ($request_uri ~ ^(/(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja))?/encrypt-pdf(?:\.html)?/?(\?.*)?$) {
+ if ($request_uri ~ ^(/(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja|ca))?/encrypt-pdf(?:\.html)?/?(\?.*)?$) {
return 301 $1/protect-pdf$2;
}
- if ($request_uri ~ ^(/(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja))?/([a-z0-9][a-z0-9-]*)\.html(\?.*)?$) {
+ if ($request_uri ~ ^(/(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja|ca))?/([a-z0-9][a-z0-9-]*)\.html(\?.*)?$) {
return 301 $1/$2$3;
}
- if ($request_uri ~ ^(/(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja))/([a-z0-9][a-z0-9-]*)/(\?.*)?$) {
- return 301 $1/$2$3;
- }
- if ($request_uri ~ ^/((?!(?:en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja|docs|blog)/)[a-z0-9][a-z0-9-]*)/(\?.*)?$) {
- return 301 /$1$2;
+ if ($request_uri ~ ^(/[^?]*[^/?])/+(\?.*)?$) {
+ return 301 $1$2;
}
location ~ /src/pages/ {
return 404;
}
- location ~ ^/(en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja)(/.*)?$ {
- try_files $uri $uri/ $uri.html =404;
+ location ~ ^/(en|ar|be|da|de|es|fr|id|it|ko|nl|pl|pt|ru|sk|sv|tr|vi|zh|zh-TW|uk|ja|ca)(/.*)?$ {
+ try_files $uri $uri.html $uri/index.html =404;
expires 5m;
}
@@ -174,14 +171,20 @@ http {
error_page 404 /404.html;
+ location = /docs {
+ include /etc/nginx/security-headers-docs.conf;
+ try_files /docs/index.html =404;
+ expires 5m;
+ }
+
location ^~ /docs/ {
include /etc/nginx/security-headers-docs.conf;
- try_files $uri $uri/ $uri.html /docs/index.html =404;
+ try_files $uri $uri.html $uri/index.html /docs/index.html =404;
expires 5m;
}
location / {
- try_files $uri $uri/ $uri.html =404;
+ try_files $uri $uri.html $uri/index.html =404;
expires 5m;
}
}
diff --git a/public/locales/ar/tools.json b/public/locales/ar/tools.json
index bbe24e44..367dd317 100644
--- a/public/locales/ar/tools.json
+++ b/public/locales/ar/tools.json
@@ -1,5 +1,6 @@
{
"categories": {
+ "favorites": "المفضلة",
"popularTools": "الأدوات الشائعة",
"editAnnotate": "تعديل وتعليق",
"convertToPdf": "تحويل إلى PDF",
@@ -10,6 +11,13 @@
"input": "إدخال",
"output": "إخراج"
},
+ "favorites": {
+ "add": "إضافة إلى المفضلة",
+ "remove": "إزالة من المفضلة",
+ "hintLabel": "تلميح",
+ "hint": "اضغط مطولًا على أي أداة لإضافتها إلى المفضلة.",
+ "hideHint": "إخفاء التلميح"
+ },
"convertToPdf": "تحويل إلى PDF",
"pdfMultiTool": {
"name": "أداة PDF المتعددة",
@@ -840,7 +848,7 @@
"subtitle": "اكتب أو الصق Markdown وصدّره كـ PDF منسق بشكل جميل.",
"paneMarkdown": "Markdown",
"panePreview": "معاينة",
- "btnUpload": "رفع",
+ "btnUpload": "اختيار",
"btnSyncScroll": "مزامنة التمرير",
"btnSettings": "الإعدادات",
"btnExportPdf": "تصدير PDF",
diff --git a/public/locales/be/tools.json b/public/locales/be/tools.json
index 1aa14b54..45e8ff53 100644
--- a/public/locales/be/tools.json
+++ b/public/locales/be/tools.json
@@ -1,5 +1,6 @@
{
"categories": {
+ "favorites": "Абранае",
"popularTools": "Папулярныя інструменты",
"editAnnotate": "Рэдагаванне і анатацыі",
"convertToPdf": "Канвертацыя ў PDF",
@@ -10,6 +11,13 @@
"input": "Увод",
"output": "Вывад"
},
+ "favorites": {
+ "add": "Дадаць у абранае",
+ "remove": "Выдаліць з абранага",
+ "hintLabel": "Парада",
+ "hint": "Націсніце і ўтрымлівайце інструмент, каб дадаць яго ў абранае.",
+ "hideHint": "Схаваць параду"
+ },
"convertToPdf": "Канвертаваць у PDF",
"pdfMultiTool": {
"name": "Мультыінструмент PDF",
@@ -842,7 +850,7 @@
"subtitle": "Напісаць або ўставіць Markdown і экспартаваць яго ў прыгожа аформлены PDF.",
"paneMarkdown": "Markdown",
"panePreview": "Папярэдні прагляд",
- "btnUpload": "Запампаваць",
+ "btnUpload": "Выбраць",
"btnSyncScroll": "Сінхранізацыя пракруткі",
"btnSettings": "Налады",
"btnExportPdf": "Экспартаваць PDF",
diff --git a/public/locales/ca/common.json b/public/locales/ca/common.json
new file mode 100644
index 00000000..b0a867e0
--- /dev/null
+++ b/public/locales/ca/common.json
@@ -0,0 +1,390 @@
+{
+ "nav": {
+ "home": "Inici",
+ "about": "Quant a",
+ "contact": "Contacte",
+ "licensing": "Llicències",
+ "allTools": "Totes les eines",
+ "docs": "Documentació",
+ "openMainMenu": "Obre el menú principal",
+ "language": "Idioma",
+ "searchLanguage": "Cerca un idioma…",
+ "noLanguagesFound": "No s'ha trobat cap idioma"
+ },
+ "donation": {
+ "message": "T'agrada BentoPDF? Ajuda'ns a mantenir-lo gratuït i de codi obert!",
+ "button": "Fes una donació"
+ },
+ "hero": {
+ "title": "El",
+ "pdfToolkit": "conjunt d'eines PDF",
+ "builtForPrivacy": "pensat per protegir la privadesa",
+ "noSignups": "Sense registre",
+ "unlimitedUse": "Ús il·limitat",
+ "worksOffline": "Funciona sense connexió",
+ "startUsing": "Comença a utilitzar-lo"
+ },
+ "usedBy": {
+ "title": "Utilitzat per empreses i persones que treballen a"
+ },
+ "features": {
+ "title": "Per què triar",
+ "bentoPdf": "BentoPDF?",
+ "noSignup": {
+ "title": "Sense registre",
+ "description": "Comença immediatament, sense comptes ni correus electrònics."
+ },
+ "noUploads": {
+ "title": "Sense càrregues de fitxers",
+ "description": "100 % al navegador: els fitxers no surten mai del dispositiu."
+ },
+ "foreverFree": {
+ "title": "Gratuït per sempre",
+ "description": "Totes les eines, sense períodes de prova ni pagaments."
+ },
+ "noLimits": {
+ "title": "Sense límits",
+ "description": "Utilitza'l tant com vulguis, sense límits ocults."
+ },
+ "batchProcessing": {
+ "title": "Processament per lots",
+ "description": "Processa tants PDF com vulguis alhora."
+ },
+ "lightningFast": {
+ "title": "Extremadament ràpid",
+ "description": "Processa PDF a l'instant, sense esperes ni retards."
+ }
+ },
+ "tools": {
+ "title": "Comença amb les",
+ "toolsLabel": "Eines",
+ "subtitle": "Fes clic en una eina per obrir el selector de fitxers",
+ "searchPlaceholder": "Cerca una eina (p. ex., «dividir», «organitzar»...)",
+ "backToTools": "Torna a les eines",
+ "firstLoadNotice": "La primera càrrega pot trigar una mica mentre es descarrega el motor de conversió. Les següents seran instantànies."
+ },
+ "upload": {
+ "clickToSelect": "Fes clic per seleccionar un fitxer",
+ "orDragAndDrop": "o arrossega'l i deixa'l anar",
+ "pdfOrImages": "PDF o imatges",
+ "filesNeverLeave": "Els teus fitxers no surten mai del dispositiu.",
+ "addMore": "Afegeix més fitxers",
+ "clearAll": "Neteja-ho tot",
+ "clearFiles": "Elimina els fitxers",
+ "hints": {
+ "singlePdf": "Un únic fitxer PDF",
+ "pdfFile": "Fitxer PDF",
+ "multiplePdfs2": "Diversos fitxers PDF (com a mínim 2)",
+ "bmpImages": "Imatges BMP",
+ "oneOrMorePdfs": "Un o més fitxers PDF",
+ "pdfDocuments": "Documents PDF",
+ "oneOrMoreCsv": "Un o més fitxers CSV",
+ "multiplePdfsSupported": "S'admeten diversos fitxers PDF",
+ "singleOrMultiplePdfs": "S'admeten un o diversos fitxers PDF",
+ "singlePdfFile": "Un únic fitxer PDF",
+ "pdfWithForms": "Fitxer PDF amb camps de formulari",
+ "heicImages": "Imatges HEIC/HEIF",
+ "jpgImages": "Imatges JPG, JPEG, JP2 i JPX",
+ "pdfsOrImages": "PDF o imatges",
+ "oneOrMoreOdt": "Un o més fitxers ODT",
+ "singlePdfOnly": "Només un fitxer PDF",
+ "pdfFiles": "Fitxers PDF",
+ "multiplePdfs": "Diversos fitxers PDF",
+ "pngImages": "Imatges PNG",
+ "pdfFilesOneOrMore": "Fitxers PDF (un o més)",
+ "oneOrMoreRtf": "Un o més fitxers RTF",
+ "svgGraphics": "Gràfics SVG",
+ "tiffImages": "Imatges TIFF",
+ "webpImages": "Imatges WebP"
+ }
+ },
+ "howItWorks": {
+ "title": "Com funciona",
+ "step1Title": "Puja el fitxer",
+ "step1": "Fes clic o arrossega i deixa anar el fitxer per començar",
+ "step2Title": "Processa",
+ "step2": "Fes clic al botó de processament per començar",
+ "step3Title": "Descarrega",
+ "step3": "Desa el fitxer processat a l'instant"
+ },
+ "relatedTools": {
+ "title": "Eines PDF relacionades"
+ },
+ "loader": {
+ "processing": "S'està processant..."
+ },
+ "alert": {
+ "title": "Avís",
+ "ok": "D'acord"
+ },
+ "preview": {
+ "title": "Previsualització del document",
+ "downloadAsPdf": "Descarrega com a PDF",
+ "close": "Tanca"
+ },
+ "settings": {
+ "title": "Configuració",
+ "shortcuts": "Dreceres de teclat",
+ "preferences": "Preferències",
+ "displayPreferences": "Preferències de visualització",
+ "searchShortcuts": "Cerca dreceres...",
+ "shortcutsInfo": "Mantén premudes les tecles per definir una drecera. Els canvis es desen automàticament.",
+ "shortcutsWarning": "⚠️ Evita les dreceres habituals del navegador (Cmd/Ctrl+W, Cmd/Ctrl+T, Cmd/Ctrl+N, etc.), perquè poden no funcionar correctament.",
+ "import": "Importa",
+ "export": "Exporta",
+ "resetToDefaults": "Restableix els valors predeterminats",
+ "fullWidthMode": "Mode d'amplada completa",
+ "fullWidthDescription": "Utilitza tota l'amplada de la pantalla per a totes les eines en lloc d'un contenidor centrat",
+ "compactMode": "Mode compacte",
+ "compactModeDescription": "Mostra les eines en una llista compacta en lloc de targetes",
+ "advancedSettings": "Configuració avançada",
+ "advancedSettingsDescription": "Configura els mòduls de processament externs (PyMuPDF, Ghostscript, CoherentPDF)",
+ "settingsAutoSaved": "La configuració es desa automàticament",
+ "clickToSet": "Fes clic per definir-la",
+ "pressKeys": "Prem les tecles...",
+ "warnings": {
+ "alreadyInUse": "La drecera ja s'utilitza",
+ "assignedTo": "ja està assignada a:",
+ "chooseDifferent": "Tria una altra drecera.",
+ "reserved": "Avís de drecera reservada",
+ "commonlyUsed": "s'utilitza habitualment per a:",
+ "unreliable": "Aquesta drecera pot no funcionar correctament o pot entrar en conflicte amb el navegador o el sistema.",
+ "useAnyway": "La vols utilitzar igualment?",
+ "resetTitle": "Restableix les dreceres",
+ "resetMessage": "Segur que vols restablir totes les dreceres als valors predeterminats?