translations (#5541)

# Description of Changes

<!--
Please provide a summary of the changes, including:

- What was changed
- Why the change was made
- Any challenges encountered

Closes #(issue_number)
-->

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] I have updated relevant docs on [Stirling-PDF's doc
repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/)
(if functionality has heavily changed)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### Translations (if applicable)

- [ ] I ran
[`scripts/counter_translation.py`](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/docs/counter_translation.md)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.
This commit is contained in:
Anthony Stirling
2026-01-24 00:02:31 +00:00
committed by GitHub
parent b76f3662e4
commit c77cd73deb
40 changed files with 5888 additions and 208 deletions
@@ -306,6 +306,7 @@ selectOperation = "عملیات را انتخاب کنید"
addOperationButton = "اضافه کردن عملیات"
pipelineHeader = "پایپلاین:"
saveButton = "دانلود"
saveForFolderScanning = "ذخیره برای اسکن پوشه"
validateButton = "اعتبارسنجی"
[enterpriseEdition]
@@ -556,6 +557,30 @@ webBrowserSettings = "تنظیمات مرورگر وب"
syncToBrowser = "همگام‌سازی حساب -> مرورگر"
syncToAccount = "همگام‌سازی حساب <- مرورگر"
[account.mfa]
title = "احراز هویت دومرحله‌ای"
setupFailed = "امکان شروع راه‌اندازی احراز هویت دومرحله‌ای فراهم نشد. لطفاً دوباره تلاش کنید."
codeRequired = "برای ادامه، کد احراز هویت را وارد کنید."
enabled = "احراز هویت دومرحله‌ای فعال شد."
enableFailed = "امکان فعال‌سازی احراز هویت دومرحله‌ای وجود ندارد. کد را بررسی کرده و دوباره تلاش کنید."
disabled = "احراز هویت دومرحله‌ای غیرفعال شد."
disableFailed = "امکان غیرفعال‌سازی احراز هویت دومرحله‌ای وجود ندارد. کد را بررسی کرده و دوباره تلاش کنید."
description = "یک لایه امنیتی اضافی به حساب خود اضافه کنید."
enableButton = "فعال‌سازی احراز هویت دومرحله‌ای"
disableButton = "غیرفعال‌سازی احراز هویت دومرحله‌ای"
setupTitle = "راه‌اندازی احراز هویت دومرحله‌ای"
setupDescription = "کد QR را با برنامه احراز هویت خود اسکن کنید، سپس کد ۶ رقمی را برای تأیید وارد کنید."
manualKey = "کلید راه‌اندازی دستی"
secretWarning = "این کلید را محرمانه نگه دارید. هر کسی که به آن دسترسی داشته باشد می‌تواند کدهای احراز هویت معتبر تولید کند."
codePlaceholder = "کد ۶ رقمی را وارد کنید"
confirmEnable = "فعال‌سازی"
disableTitle = "غیرفعال کردن احراز هویت دومرحله‌ای"
disableDescription = "برای غیرفعال کردن احراز هویت دومرحله‌ای، یک کد احراز هویت معتبر وارد کنید."
codeLabel = "کد احراز هویت"
confirmDisable = "غیرفعال‌سازی"
ssoDescription = "احراز هویت دومرحله‌ای برای حساب‌های Single Sign-On توسط ارائه‌دهنده هویت شما مدیریت می‌شود."
ssoManaged = "MFA را از طریق ارائه‌دهنده هویت خود پیکربندی کنید."
[adminUserSettings]
title = "تنظیمات کنترل کاربران"
header = "تنظیمات کنترل کاربران توسط ادمین"
@@ -1264,7 +1289,10 @@ downloadHtml = "به‌جای PDF فایل HTML میانی را دانلود ک
pdfaOptions = "گزینه‌های PDF/A"
outputFormat = "قالب خروجی"
pdfaNote = "PDF/A-1b سازگارتر است، PDF/A-2b از قابلیت‌های بیشتری پشتیبانی می‌کند."
pdfaFormat = "فرمت PDF/A"
pdfaDigitalSignatureWarning = "PDF حاوی یک امضای دیجیتال است. این در مرحله بعد حذف خواهد شد."
pdfxDigitalSignatureWarning = "این PDF شامل امضای دیجیتال است. این مورد در مرحله بعد حذف خواهد شد."
pdfxDescription = "PDF/X زیرمجموعه استاندارد ISO از PDF برای چاپ قابل‌اعتماد و تبادل گرافیک است."
fileFormat = "قالب فایل"
wordDoc = "سند Word"
wordDocExt = "سند Word (.docx)"
@@ -2197,6 +2225,16 @@ tip = "در حال حاضر برای چندین ورودی به طور همزم
outputFormat = "فرمت خروجی"
pdfWithDigitalSignature = "PDF حاوی یک امضای دیجیتال است. این در مرحله بعد حذف خواهد شد."
[pdfToPDFX]
tags = "چاپ,استاندارد,تبدیل,تولید,پیش‌ازچاپ,آرشیو"
title = "تبدیل PDF به PDF/X"
header = "تبدیل PDF به PDF/X"
credit = "این سرویس برای تبدیل PDF/X از Ghostscript استفاده می‌کند"
submit = "تبدیل"
tip = "در حال حاضر برای چند ورودی همزمان کار نمی‌کند"
outputFormat = "فرمت خروجی"
pdfWithDigitalSignature = "این PDF شامل امضای دیجیتال است. این مورد در مرحله بعد حذف خواهد شد."
[PDFToWord]
tags = "doc،docx،odt،ورد،تبدیل،فرمت،تبدیل،دفتر،مایکروسافت،فایل ورد"
title = "PDF به ورد"
@@ -3153,6 +3191,18 @@ other = "سایر"
perPageInfo = "اطلاعات هر صفحه"
tableOfContents = "فهرست مطالب"
[getPdfInfo.compliance]
notDetected = "شناسایی نشد"
passed = "موفق"
failed = "ناموفق"
compliant = "مطابق"
nonCompliant = "نامنطبق"
none = "استانداردی شناسایی نشد"
passedCount = "موفق"
failedCount = "ناموفق"
noVerification = "هیچ راستی‌آزمایی انجام نشد"
noVerificationDesc = "انطباق با استانداردهای PDF برای این سند راستی‌آزمایی نشده است."
[getPdfInfo.other]
attachments = "پیوست‌ها"
embeddedFiles = "فایل‌های جاسازی‌شده"
@@ -3184,6 +3234,8 @@ permsRestricted = "{{count}} محدودیت"
permsMixed = "برخی مجوزها محدود شده‌اند"
hasCompliance = "دارای استانداردهای انطباق"
noCompliance = "بدون استانداردهای انطباق"
compliancePassed = "مطابق با {{standards}}"
complianceChecked = "استانداردها راستی‌آزمایی شدند ({{failed}} ناموفق)"
basic = "اطلاعات پایه"
documentInfo = "اطلاعات سند"
securityTitle = "وضعیت امنیتی"
@@ -3723,6 +3775,13 @@ passwordChangedSuccess = "گذرواژه با موفقیت تغییر کرد! ل
credentialsUpdated = "اطلاعات ورود شما به‌روزرسانی شد. لطفاً دوباره وارد شوید."
defaultCredentials = "مشخصات ورود پیش‌فرض"
changePasswordWarning = "لطفاً پس از اولین ورود، گذرواژه خود را تغییر دهید"
mfaRequired = "کد احراز هویت دومرحله‌ای لازم است"
mfaCode = "کد احراز هویت"
enterMfaCode = "کد ۶ رقمی را وارد کنید"
mfaPromptTitle = "احراز هویت دومرحله‌ای"
mfaPromptBody = "برای ادامه، کد احراز هویت را از برنامه احراز هویت خود وارد کنید."
verifyingMfa = "در حال تأیید..."
verifyMfa = "تأیید کد"
[login.slides.overview]
alt = "نمای کلی Stirling PDF"
@@ -4324,6 +4383,10 @@ title = "نیاز به حالت ورود"
message = "برای تغییر تنظیمات مدیر باید حالت ورود فعال باشد. لطفاً SECURITY_ENABLELOGIN=true را در محیط خود یا security.enableLogin: true را در settings.yml تنظیم کرده و سپس سرور را راه‌اندازی مجدد کنید."
readOnly = "تنظیمات زیر صرفاً مقادیر نمونه را نشان می‌دهند. برای مشاهده و ویرایش پیکربندی واقعی، حالت ورود را فعال کنید."
[admin.settings.enterpriseRequired]
title = "مجوز Enterprise لازم است"
message = "برای دسترسی به {{featureName}} به یک مجوز Enterprise نیاز است. شما در حال مشاهده داده‌های نمایشی برای مرجع هستید."
[admin.settings.restart]
title = "نیاز به راه‌اندازی مجدد"
message = "تنظیمات با موفقیت ذخیره شدند. برای اعمال تغییرات، راه‌اندازی مجدد سرور لازم است."
@@ -4771,6 +4834,48 @@ description = "نمایش پیام‌های خطای تفصیلی برای کا
title = "پایگاه داده"
description = "پیکربندی تنظیمات اتصال پایگاه داده سفارشی برای استقرارهای سازمانی."
configuration = "پیکربندی پایگاه داده"
backupTitle = "پشتیبان‌گیری و بازیابی"
backupDescription = "مدیریت نسخه‌های پشتیبان H2 به‌صورت مستقیم از کنسول مدیریتی."
loadError = "بارگذاری نسخه‌های پشتیبان پایگاه داده ناموفق بود"
backupCreated = "نسخهٔ پشتیبان با موفقیت ایجاد شد"
backupFailed = "ایجاد نسخهٔ پشتیبان ناموفق بود"
deleteTitle = "حذف نسخهٔ پشتیبان"
deleteConfirm = "این نسخهٔ پشتیبان حذف شود؟ این کار قابل بازگشت نیست."
deleteSuccess = "نسخهٔ پشتیبان حذف شد"
deleteFailed = "حذف نسخهٔ پشتیبان ناموفق بود"
deleteConfirmAction = "حذف نسخهٔ پشتیبان"
downloadFailed = "دانلود نسخهٔ پشتیبان ناموفق بود"
version = "نسخهٔ H2"
embedded = "H2 تعبیه‌شده"
external = "پایگاه دادهٔ خارجی"
h2Only = "نسخه‌های پشتیبان فقط برای پایگاه دادهٔ H2 تعبیه‌شده در دسترس هستند."
h2Hint = "نوع پایگاه داده را روی H2 تنظیم کرده و پایگاه دادهٔ سفارشی را غیرفعال کنید تا پشتیبان‌گیری و بازیابی فعال شود."
manageBackups = "مدیریت نسخه‌های پشتیبان"
refresh = "تازه‌سازی"
createBackup = "ایجاد نسخهٔ پشتیبان"
uploadTitle = "بارگذاری و درون‌ریزی"
chooseFile = "یک فایل پشتیبان .sql انتخاب کنید"
importFromUpload = "درون‌ریزی بارگذاری‌شده"
confirmImportTitle = "تأیید درون‌ریزی پایگاه داده"
overwriteWarning = "هشدار: این کار پایگاه دادهٔ فعلی را بازنویسی می‌کند."
overwriteWarningBody = "تمام داده‌های موجود با نسخهٔ پشتیبان بارگذاری‌شده جایگزین خواهند شد. این عملیات غیرقابل بازگشت است."
confirmCodeLabel = "برای ادامه، کد تأیید را وارد کنید"
enterCode = "کد نمایش‌داده‌شده در بالا را وارد کنید"
confirmImport = "تأیید درون‌ریزی"
codeMismatch = "کد تأیید مطابقت ندارد"
codeMismatchBody = "برای ادامه، کد را دقیقاً مطابق نمایش وارد کنید."
selectFile = "لطفاً یک فایل .sql برای درون‌ریزی انتخاب کنید"
importSuccess = "نسخهٔ پشتیبان با موفقیت درون‌ریزی شد"
importFailed = "درون‌ریزی نسخهٔ پشتیبان ناموفق بود"
noBackups = "هنوز هیچ نسخهٔ پشتیبان یافت نشده است."
unavailable = "فهرست نسخه‌های پشتیبان برای پیکربندی فعلی پایگاه داده در دسترس نیست."
fileName = "فایل"
created = "ایجاد شده"
size = "اندازه"
actions = "اقدامات"
download = "دانلود"
import = "درون‌ریزی"
delete = "حذف"
[admin.settings.database.enableCustom]
label = "فعال‌سازی پایگاه داده سفارشی"
@@ -4848,6 +4953,26 @@ description = "حداکثر DPI برای پردازش تصویر (0 = نامحد
[admin.settings.advanced.tessdataDir]
label = "دایرکتوری Tessdata"
description = "مسیر دایرکتوری tessdata برای فایل‌های زبان OCR"
downloadMissingTitle = "هیچ زبانی انتخاب نشده است"
downloadMissingBody = "لطفاً دست‌کم یک زبان برای دانلود انتخاب کنید."
downloadSuccessTitle = "زبان‌ها دانلود شدند"
downloadSuccessBody = "زبان‌های انتخاب‌شدهٔ tessdata ذخیره شدند."
downloadErrorTitle = "دانلود ناموفق بود"
loadingLanguages = "در حال بارگذاری زبان‌های نصب‌شدهٔ tessdata..."
installedLanguages = "زبان‌های نصب‌شدهٔ tessdata"
noLanguages = "هیچ زبان tessdata در پوشهٔ پیکربندی‌شده یافت نشد."
downloadLabel = "دانلود زبان‌های اضافی tessdata"
downloadPlaceholder = "انتخاب زبان‌ها"
downloadNothingFound = "هیچ زبان اضافی‌ای یافت نشد"
permissionNotice = "مسیر tessdata قابل نوشتن نیست. دانلودها در مرورگر باز می‌شوند؛ لطفاً فایل‌های .traineddata را به‌صورت دستی در پوشهٔ tessdata ذخیره کنید."
manualLinks = "دانلود دستی: روی پیوندها کلیک کنید و فایل‌ها را در پوشهٔ tessdata قرار دهید."
downloadButton = "دانلود زبان‌های انتخاب‌شده"
downloadInvalidTitle = "انتخاب نامعتبر"
downloadInvalidBody = "برخی از زبان‌های انتخاب‌شده برای دانلود در دسترس نیستند. لطفاً تازه‌سازی کنید و از فهرست انتخاب کنید."
downloadErrorNetwork = "دانلود به دلیل خطای شبکه ناموفق بود. لطفاً اتصال خود را بررسی کرده و دوباره تلاش کنید."
downloadErrorServer = "سرور هنگام دانلود زبان‌های tessdata با خطا مواجه شد. لطفاً بعداً دوباره تلاش کنید."
downloadErrorPermission = "پوشهٔ Tessdata قابل نوشتن نیست: {{message}}. لطفاً یک پوشهٔ قابل نوشتن انتخاب کنید (مثلاً در پوشهٔ داده‌های برنامه) یا مجوزها را تنظیم کنید."
downloadErrorGeneric = "دانلود ناموفق بود: {{message}}. لطفاً بعداً دوباره تلاش کنید."
[admin.settings.advanced.disableSanitize]
label = "غیرفعال کردن پاک‌سازی HTML"
@@ -5351,6 +5476,7 @@ desc = "با زنجیره‌کردن اقدامات PDF، گردش‌کار چن
invalidStep = "گام نامعتبر"
reviewTitle = "نتایج اتوماسیون"
copyToSaved = "کپی به ذخیره‌شده‌ها"
exportForFolderScanning = "برون‌بری برای اسکن پوشه"
[automate.files]
placeholder = "فایل‌ها را برای پردازش با این اتوماسیون انتخاب کنید"
@@ -5372,6 +5498,7 @@ createTitle = "ایجاد اتوماسیون"
editTitle = "ویرایش اتوماسیون"
intro = "اتوماسیون‌ها ابزارها را به‌صورت ترتیبی اجرا می‌کنند. برای شروع، ابزارها را به ترتیبی که می‌خواهید اجرا شوند اضافه کنید."
save = "ذخیره اتوماسیون"
exportForFolderScanning = "برون‌بری برای اسکن پوشه"
[automate.creation.name]
label = "نام اتوماسیون"
@@ -5746,9 +5873,11 @@ username = "نام کاربری (ایمیل)"
usernamePlaceholder = "[email protected]"
password = "رمز عبور"
passwordPlaceholder = "رمز عبور را وارد کنید"
passwordRequired = "رمز عبور الزامی است"
role = "نقش"
team = "تیم (اختیاری)"
teamPlaceholder = "یک تیم انتخاب کنید"
authType = "نوع احراز هویت"
forcePasswordChange = "اجبار تغییر رمز عبور در اولین ورود"
cancel = "انصراف"
submit = "افزودن عضو"
@@ -5756,6 +5885,13 @@ usernameRequired = "نام کاربری و رمز عبور الزامی است"
passwordTooShort = "رمز عبور باید حداقل ۶ نویسه باشد"
success = "کاربر با موفقیت ایجاد شد"
error = "ایجاد کاربر ناموفق بود"
forceMFA = "الزام راه‌اندازی MFA در ورود بعدی"
[workspace.people.authType]
password = "رمز عبور"
oauth = "OAuth2"
saml = "SAML2"
ssoDescription = "کاربر از طریق ارائه‌دهندهٔ SSO احراز هویت خواهد شد"
[workspace.people.editMember]
title = "ویرایش عضو"
@@ -5859,6 +5995,11 @@ slotsAvailable = "{{count}} جایگاه کاربر در دسترس است"
noSlotsAvailable = "هیچ جایگاهی در دسترس نیست"
currentUsage = "در حال استفاده از {{current}} از {{max}} مجوز کاربر"
[workspace.people.mfa]
adminDisableSuccess = "MFA برای کاربر با موفقیت غیرفعال شد"
adminDisableError = "غیرفعال کردن MFA برای کاربر ناموفق بود"
disableByAdmin = "غیرفعال کردن MFA"
[workspace.teams]
title = "تیم‌ها"
description = "مدیریت تیم‌ها و سازمان‌دهی اعضای فضای کاری"
@@ -6301,6 +6442,7 @@ endpoint = "اندپوینت"
visits = "بازدیدها"
percentage = "درصد"
noData = "داده‌ای در دسترس نیست"
unknownEndpoint = "نقطه پایانی ناشناخته"
[backendHealth]
checking = "در حال بررسی وضعیت بک‌اند..."