mirror of
https://github.com/arsvendg/Stirling-PDF.git
synced 2026-09-13 12:15:29 +02:00
# Description of Changes
`i18next` allows this pattern for translations, which we use quite a few
times in our current translation files:
```json
{
"a": {
"b": "hello"
},
"a.b": "world"
}
```
This makes it ambiguous when selecting `a.b` which string will be
retrieved. We have seen issues in other languages in the current release
like this:
<img width="325" height="249" alt="image"
src="https://github.com/user-attachments/assets/f24a29f0-550f-49b8-b355-c5e5eb436558"
/>
because we are expecting this:
<img width="1022" height="210" alt="image"
src="https://github.com/user-attachments/assets/b6d5cdd4-96cd-4b2b-8f1a-465da8bf70c8"
/>
but the Spanish file has:
<img width="312" height="136" alt="image"
src="https://github.com/user-attachments/assets/1e13392c-8484-47d1-b0c4-19d52b3ea5eb"
/>
and no `removeDigitalSignature` key on its own.
This PR resolves all of these ambiguities in the source by restructuring
all of the keys to uniquely target either an object or a string, not
both. It also adds a test which will fail on any keys with a `.` in
their name, therefore making it impossible to add anything ambiguous.
5364 lines
209 KiB
JSON
5364 lines
209 KiB
JSON
{
|
||
"toolPanel": {
|
||
"modePrompt": {
|
||
"title": "Choose how you browse tools",
|
||
"description": "Preview both layouts and decide how you want to explore Stirling PDF tools.",
|
||
"sidebarTitle": "Sidebar mode",
|
||
"sidebarDescription": "Keep tools alongside your workspace for quick switching.",
|
||
"recommended": "Recommended",
|
||
"chooseSidebar": "Use sidebar mode",
|
||
"fullscreenTitle": "Fullscreen mode - (legacy)",
|
||
"fullscreenDescription": "Browse every tool in a catalogue that covers the workspace until you pick one.",
|
||
"chooseFullscreen": "Use fullscreen mode",
|
||
"dismiss": "Maybe later"
|
||
},
|
||
"fullscreen": {
|
||
"showDetails": "Show Details",
|
||
"comingSoon": "Coming soon:",
|
||
"favorite": "Add to favourites",
|
||
"favorites": "Favourites",
|
||
"heading": "All tools (fullscreen view)",
|
||
"noResults": "Try adjusting your search or toggle descriptions to find what you need.",
|
||
"recommended": "Recommended",
|
||
"unfavorite": "Remove from favourites"
|
||
},
|
||
"placeholder": "Choose a tool to get started",
|
||
"toggle": {
|
||
"fullscreen": "Switch to fullscreen mode",
|
||
"sidebar": "Switch to sidebar mode"
|
||
}
|
||
},
|
||
"unsavedChanges": "You have unsaved changes to your PDF.",
|
||
"areYouSure": "Are you sure you want to leave?",
|
||
"unsavedChangesTitle": "Unsaved Changes",
|
||
"keepWorking": "Keep Working",
|
||
"discardChanges": "Discard & Leave",
|
||
"applyAndContinue": "Save & Leave",
|
||
"exportAndContinue": "Export & Continue",
|
||
"language": {
|
||
"direction": "ltr"
|
||
},
|
||
"addPageNumbers": {
|
||
"fontSize": "글꼴 크기",
|
||
"fontName": "글꼴 이름",
|
||
"title": "페이지 번호 추가",
|
||
"header": "페이지 번호 추가",
|
||
"selectText": {
|
||
"1": "PDF 파일 선택:",
|
||
"2": "여백 크기",
|
||
"3": "위치",
|
||
"4": "시작 번호",
|
||
"5": "번호를 매길 페이지",
|
||
"6": "사용자 지정 텍스트"
|
||
},
|
||
"customTextDesc": "사용자 지정 텍스트",
|
||
"numberPagesDesc": "번호를 매길 페이지, 기본값 'all', 1-5 또는 2,5,9 등도 가능",
|
||
"customNumberDesc": "기본값은 {n}, '페이지 {n} / {total}', '텍스트-{n}', '{filename}-{n}' 등도 가능",
|
||
"submit": "페이지 번호 추가",
|
||
"configuration": "Configuration",
|
||
"customize": "Customize Appearance",
|
||
"pagesAndStarting": "Pages & Starting Number",
|
||
"positionAndPages": "Position & Pages",
|
||
"error": {
|
||
"failed": "Add page numbers operation failed"
|
||
},
|
||
"results": {
|
||
"title": "Page Number Results"
|
||
},
|
||
"preview": "Position Selection",
|
||
"previewDisclaimer": "Preview is approximate. Final output may vary due to PDF font metrics."
|
||
},
|
||
"pageSelectionPrompt": "사용자 지정 페이지 선택 (페이지 번호 1,5,6 또는 2n+1과 같은 함수를 쉼표로 구분하여 목록 입력):",
|
||
"startingNumberTooltip": "The first number to display. Subsequent pages will increment from this number.",
|
||
"marginTooltip": "Distance between the page number and the edge of the page.",
|
||
"fontSizeTooltip": "Size of the page number text in points. Larger numbers create bigger text.",
|
||
"fontTypeTooltip": "Font family for the page numbers. Choose based on your document style.",
|
||
"customTextTooltip": "Optional custom format for page numbers. Use {n} as placeholder for the number. Example: \"Page {n}\" will show \"Page 1\", \"Page 2\", etc.",
|
||
"pdfPrompt": "PDF 선택",
|
||
"multiPdfPrompt": "PDF 선택 (2개 이상)",
|
||
"multiPdfDropPrompt": "필요한 모든 PDF를 선택(또는 끌어다 놓기)하세요",
|
||
"imgPrompt": "이미지 선택",
|
||
"genericSubmit": "제출",
|
||
"uploadLimit": "Maximum file size:",
|
||
"uploadLimitExceededSingular": "is too large. Maximum allowed size is",
|
||
"uploadLimitExceededPlural": "are too large. Maximum allowed size is",
|
||
"processTimeWarning": "경고: 이 과정은 파일 크기에 따라 최대 1분이 소요될 수 있습니다",
|
||
"pageOrderPrompt": "사용자 지정 페이지 순서 (쉼표로 구분된 페이지 번호 목록 또는 2n+1과 같은 함수 입력):",
|
||
"goToPage": "이동",
|
||
"true": "참",
|
||
"false": "거짓",
|
||
"unknown": "알 수 없음",
|
||
"app": {
|
||
"description": "The Free Adobe Acrobat alternative (10M+ Downloads)"
|
||
},
|
||
"save": "저장",
|
||
"saveToBrowser": "브라우저에 저장",
|
||
"download": "다운로드",
|
||
"pin": "Pin File (keep active after tool run)",
|
||
"unpin": "Unpin File (replace after tool run)",
|
||
"undoOperationTooltip": "Click to undo the last operation and restore the original files",
|
||
"undo": "Undo",
|
||
"moreOptions": "More Options",
|
||
"editYourNewFiles": "Edit your new file(s)",
|
||
"close": "닫기",
|
||
"openInViewer": "Open in Viewer",
|
||
"confirmClose": "Confirm Close",
|
||
"confirmCloseMessage": "Are you sure you want to close this file?",
|
||
"confirmCloseCancel": "Cancel",
|
||
"confirmCloseConfirm": "Close File",
|
||
"fileSelected": "Selected: {{filename}}",
|
||
"chooseFile": "Choose File",
|
||
"filesSelected": "개의 파일이 선택됨",
|
||
"files": {
|
||
"title": "Files",
|
||
"upload": "Upload",
|
||
"uploadFiles": "Upload Files",
|
||
"addFiles": "Add files",
|
||
"selectFromWorkbench": "Select files from the workbench or ",
|
||
"selectMultipleFromWorkbench": "Select at least {{count}} files from the workbench or ",
|
||
"created": "Created",
|
||
"size": "File Size"
|
||
},
|
||
"noFavourites": "즐겨찾기가 추가되지 않았습니다",
|
||
"downloadComplete": "다운로드 완료",
|
||
"bored": "기다리는 것이 지루하신가요?",
|
||
"alphabet": "알파벳",
|
||
"downloadPdf": "PDF 다운로드",
|
||
"text": "텍스트",
|
||
"font": "글꼴",
|
||
"selectFillter": "-- 선택 --",
|
||
"pageNum": "페이지 번호",
|
||
"sizes": {
|
||
"small": "작게",
|
||
"medium": "중간",
|
||
"large": "크게",
|
||
"x-large": "매우 크게"
|
||
},
|
||
"error": {
|
||
"pdfPassword": "PDF 문서가 비밀번호로 보호되어 있으며, 비밀번호가 제공되지 않았거나 올바르지 않습니다",
|
||
"encryptedPdfMustRemovePassword": "This PDF is encrypted or password-protected. Please unlock it before converting to PDF/A.",
|
||
"incorrectPasswordProvided": "The PDF password is incorrect or not provided.",
|
||
"_value": "오류",
|
||
"dismissAllErrors": "Dismiss All Errors",
|
||
"sorry": "문제가 발생해 죄송합니다!",
|
||
"needHelp": "도움이 필요하신가요 / 문제를 발견하셨나요?",
|
||
"contactTip": "여전히 문제가 있다면 주저하지 마시고 도움을 요청하세요. GitHub 페이지에서 티켓을 제출하거나 Discord를 통해 연락하실 수 있습니다:",
|
||
"404": {
|
||
"head": "404 - 페이지를 찾을 수 없습니다 | 이런, 코드에서 길을 잃었네요!",
|
||
"1": "찾으시는 페이지를 찾을 수 없습니다.",
|
||
"2": "문제가 발생했습니다"
|
||
},
|
||
"github": "GitHub에서 티켓 제출",
|
||
"showStack": "스택 추적 표시",
|
||
"copyStack": "스택 추적 복사",
|
||
"githubSubmit": "GitHub - 티켓 제출",
|
||
"discordSubmit": "Discord - 지원 게시물 작성"
|
||
},
|
||
"warning": {
|
||
"tooltipTitle": "Warning"
|
||
},
|
||
"edit": "Edit",
|
||
"delete": "삭제",
|
||
"username": "사용자 이름",
|
||
"password": "비밀번호",
|
||
"welcome": "환영합니다",
|
||
"property": "속성",
|
||
"black": "검정",
|
||
"white": "흰색",
|
||
"red": "빨강",
|
||
"green": "초록",
|
||
"blue": "파랑",
|
||
"custom": "사용자 지정...",
|
||
"comingSoon": "Coming soon",
|
||
"WorkInProgess": "작업 진행 중, 작동하지 않거나 버그가 있을 수 있습니다. 문제가 있으면 신고해 주세요!",
|
||
"poweredBy": "제공",
|
||
"yes": "예",
|
||
"no": "아니오",
|
||
"changedCredsMessage": "자격 증명이 변경되었습니다!",
|
||
"notAuthenticatedMessage": "사용자가 인증되지 않았습니다.",
|
||
"userNotFoundMessage": "사용자를 찾을 수 없습니다.",
|
||
"incorrectPasswordMessage": "현재 비밀번호가 올바르지 않습니다.",
|
||
"usernameExistsMessage": "새 사용자 이름이 이미 존재합니다.",
|
||
"invalidUsernameMessage": "잘못된 사용자 이름입니다. 사용자 이름은 문자, 숫자 및 @._+- 특수문자만 포함하거나 유효한 이메일 주소여야 합니다.",
|
||
"invalidPasswordMessage": "비밀번호는 비어 있으면 안 되며 시작과 끝에 공백이 있으면 안 됩니다.",
|
||
"confirmPasswordErrorMessage": "새 비밀번호와 새 비밀번호 확인이 일치해야 합니다.",
|
||
"deleteCurrentUserMessage": "현재 로그인된 사용자를 삭제할 수 없습니다.",
|
||
"deleteUsernameExistsMessage": "존재하지 않는 사용자 이름은 삭제할 수 없습니다.",
|
||
"downgradeCurrentUserMessage": "현재 사용자의 역할을 강등할 수 없습니다",
|
||
"disabledCurrentUserMessage": "현재 사용자를 비활성화할 수 없습니다",
|
||
"downgradeCurrentUserLongMessage": "현재 사용자의 역할을 강등할 수 없습니다. 따라서 현재 사용자는 표시되지 않습니다.",
|
||
"userAlreadyExistsOAuthMessage": "해당 사용자는 이미 OAuth2 사용자로 존재합니다.",
|
||
"userAlreadyExistsWebMessage": "해당 사용자는 이미 웹 사용자로 존재합니다.",
|
||
"oops": "이런!",
|
||
"help": "도움말",
|
||
"goHomepage": "홈페이지로 이동",
|
||
"joinDiscord": "Discord 서버 가입하기",
|
||
"seeDockerHub": "Docker Hub 보기",
|
||
"visitGithub": "Github 저장소 방문",
|
||
"donate": "기부하기",
|
||
"color": "색상",
|
||
"sponsor": "후원",
|
||
"info": "정보",
|
||
"pro": "프로",
|
||
"page": "페이지",
|
||
"pages": "페이지",
|
||
"loading": "로딩 중...",
|
||
"review": "Review",
|
||
"addToDoc": "문서에 추가",
|
||
"reset": "초기화",
|
||
"apply": "적용",
|
||
"noFileSelected": "No file selected. Please upload one.",
|
||
"legal": {
|
||
"privacy": "개인정보 처리방침",
|
||
"iAgreeToThe": "I agree to all of the",
|
||
"terms": "이용약관",
|
||
"accessibility": "접근성",
|
||
"cookie": "쿠키 정책",
|
||
"impressum": "법적 고지",
|
||
"showCookieBanner": "Cookie Preferences"
|
||
},
|
||
"pipeline": {
|
||
"header": "파이프라인 메뉴 (베타)",
|
||
"uploadButton": "사용자 지정 업로드",
|
||
"configureButton": "구성",
|
||
"defaultOption": "사용자 지정",
|
||
"submitButton": "제출",
|
||
"help": "파이프라인 도움말",
|
||
"scanHelp": "폴더 스캔 도움말",
|
||
"deletePrompt": "파이프라인을 삭제하시겠습니까?",
|
||
"tags": "자동화,순서,스크립트,일괄-처리",
|
||
"title": "파이프라인"
|
||
},
|
||
"pipelineOptions": {
|
||
"header": "파이프라인 구성",
|
||
"pipelineNameLabel": "파이프라인 이름",
|
||
"saveSettings": "작업 설정 저장",
|
||
"pipelineNamePrompt": "여기에 파이프라인 이름 입력",
|
||
"selectOperation": "작업 선택",
|
||
"addOperationButton": "작업 추가",
|
||
"pipelineHeader": "파이프라인:",
|
||
"saveButton": "다운로드",
|
||
"validateButton": "검증"
|
||
},
|
||
"enterpriseEdition": {
|
||
"button": "프로 버전으로 업그레이드",
|
||
"warning": "이 기능은 프로 사용자만 이용할 수 있습니다.",
|
||
"yamlAdvert": "Stirling PDF 프로는 YAML 구성 파일과 기타 SSO 기능을 지원합니다.",
|
||
"ssoAdvert": "더 많은 사용자 관리 기능을 찾고 계신가요? Stirling PDF Pro를 확인해보세요"
|
||
},
|
||
"analytics": {
|
||
"title": "Stirling PDF를 더 좋게 만들고 싶으신가요?",
|
||
"paragraph1": "Stirling PDF는 제품 개선을 위한 선택적 분석 기능이 있습니다. 개인정보나 파일 내용은 추적하지 않습니다.",
|
||
"paragraph2": "Stirling-PDF의 성장을 돕고 사용자를 더 잘 이해할 수 있도록 분석 기능 활성화를 고려해주세요.",
|
||
"learnMore": "Learn more",
|
||
"enable": "분석 활성화",
|
||
"disable": "분석 비활성화",
|
||
"settings": "config/settings.yml 파일에서 분석 설정을 변경할 수 있습니다"
|
||
},
|
||
"navbar": {
|
||
"favorite": "즐겨찾기",
|
||
"recent": "New and recently updated",
|
||
"darkmode": "다크 모드",
|
||
"language": "언어",
|
||
"settings": "설정",
|
||
"allTools": "도구",
|
||
"multiTool": "멀티 도구",
|
||
"search": "검색",
|
||
"sections": {
|
||
"organize": "구성",
|
||
"convertTo": "PDF로 변환",
|
||
"convertFrom": "PDF에서 변환",
|
||
"security": "서명 & 보안",
|
||
"advance": "고급",
|
||
"edit": "보기 & 편집",
|
||
"popular": "인기"
|
||
}
|
||
},
|
||
"settings": {
|
||
"title": "설정",
|
||
"update": "업데이트 가능",
|
||
"updateAvailable": "{0}은(는) 현재 설치된 버전입니다. 새 버전({1})이 사용 가능합니다.",
|
||
"appVersion": "앱 버전:",
|
||
"downloadOption": {
|
||
"title": "다운로드 옵션 선택 (단일 파일 비압축 다운로드용):",
|
||
"1": "같은 창에서 열기",
|
||
"2": "새 창에서 열기",
|
||
"3": "파일 다운로드"
|
||
},
|
||
"zipThreshold": "다운로드 파일 수가 다음을 초과할 때 ZIP으로 압축",
|
||
"signOut": "로그아웃",
|
||
"accountSettings": "계정 설정",
|
||
"bored": {
|
||
"help": "이스터에그 게임 활성화"
|
||
},
|
||
"cacheInputs": {
|
||
"name": "입력 양식 저장",
|
||
"help": "다음 실행을 위해 이전에 사용한 입력을 저장하도록 활성화"
|
||
},
|
||
"general": {
|
||
"title": "General",
|
||
"description": "Configure general application preferences.",
|
||
"account": "Account",
|
||
"accountDescription": "Manage your account settings",
|
||
"user": "User",
|
||
"signedInAs": "Signed in as",
|
||
"logout": "Log out",
|
||
"enableFeatures": {
|
||
"title": "For System Administrators",
|
||
"intro": "Enable user authentication, team management, and workspace features for your organization.",
|
||
"action": "Configure",
|
||
"and": "and",
|
||
"benefit": "Enables user roles, team collaboration, admin controls, and enterprise features.",
|
||
"learnMore": "Learn more in documentation",
|
||
"dismiss": "Dismiss"
|
||
},
|
||
"autoUnzip": "Auto-unzip API responses",
|
||
"autoUnzipDescription": "Automatically extract files from ZIP responses",
|
||
"autoUnzipTooltip": "Automatically extract ZIP files returned from API operations. Disable to keep ZIP files intact. This does not affect automation workflows.",
|
||
"autoUnzipFileLimit": "Auto-unzip file limit",
|
||
"autoUnzipFileLimitDescription": "Maximum number of files to extract from ZIP",
|
||
"autoUnzipFileLimitTooltip": "Only unzip if the ZIP contains this many files or fewer. Set higher to extract larger ZIPs.",
|
||
"defaultToolPickerMode": "Default tool picker mode",
|
||
"defaultToolPickerModeDescription": "Choose whether the tool picker opens in fullscreen or sidebar by default",
|
||
"mode": {
|
||
"fullscreen": "Fullscreen",
|
||
"sidebar": "Sidebar"
|
||
}
|
||
},
|
||
"hotkeys": {
|
||
"title": "Keyboard Shortcuts",
|
||
"description": "Hover a tool to see its shortcut or customise it below. Click \"Change shortcut\" and press a new key combination. Press Esc to cancel.",
|
||
"errorModifier": {
|
||
"mac": "Include ⌘ (Command), ⌥ (Option), or another modifier in your shortcut.",
|
||
"windows": "Include Ctrl, Alt, or another modifier in your shortcut."
|
||
},
|
||
"errorConflict": "Shortcut already used by {{tool}}.",
|
||
"none": "Not assigned",
|
||
"customBadge": "Custom",
|
||
"defaultLabel": "Default: {{shortcut}}",
|
||
"capturing": "Press keys… (Esc to cancel)",
|
||
"change": "Change shortcut",
|
||
"reset": "Reset",
|
||
"shortcut": "Shortcut",
|
||
"noShortcut": "No shortcut set",
|
||
"searchPlaceholder": "Search tools..."
|
||
}
|
||
},
|
||
"changeCreds": {
|
||
"title": "자격 증명 변경",
|
||
"header": "계정 정보 업데이트",
|
||
"changePassword": "기본 로그인 자격 증명을 사용 중입니다. 새 비밀번호를 입력하세요",
|
||
"newUsername": "새 사용자 이름",
|
||
"oldPassword": "현재 비밀번호",
|
||
"newPassword": "새 비밀번호",
|
||
"confirmNewPassword": "새 비밀번호 확인",
|
||
"submit": "변경 사항 제출"
|
||
},
|
||
"account": {
|
||
"title": "계정 설정",
|
||
"accountSettings": "계정 설정",
|
||
"adminSettings": "관리자 설정 - 사용자 보기 및 추가",
|
||
"userControlSettings": "사용자 제어 설정",
|
||
"changeUsername": "사용자 이름 변경",
|
||
"newUsername": "새 사용자 이름",
|
||
"password": "확인 비밀번호",
|
||
"oldPassword": "이전 비밀번호",
|
||
"newPassword": "새 비밀번호",
|
||
"changePassword": "비밀번호 변경",
|
||
"confirmNewPassword": "새 비밀번호 확인",
|
||
"signOut": "로그아웃",
|
||
"yourApiKey": "API 키",
|
||
"syncTitle": "브라우저 설정을 계정과 동기화",
|
||
"settingsCompare": "설정 비교:",
|
||
"property": "속성",
|
||
"webBrowserSettings": "웹 브라우저 설정",
|
||
"syncToBrowser": "동기화 계정 -> 브라우저",
|
||
"syncToAccount": "동기화 계정 <- 브라우저"
|
||
},
|
||
"adminUserSettings": {
|
||
"title": "사용자 제어 설정",
|
||
"header": "관리자 사용자 제어 설정",
|
||
"admin": "관리자",
|
||
"user": "사용자",
|
||
"addUser": "새 사용자 추가",
|
||
"deleteUser": "사용자 삭제",
|
||
"confirmDeleteUser": "사용자를 삭제하시겠습니까?",
|
||
"confirmChangeUserStatus": "사용자를 비활성화/활성화하시겠습니까?",
|
||
"usernameInfo": "사용자 이름은 문자, 숫자 및 @._+- 특수문자만 포함하거나 유효한 이메일 주소여야 합니다.",
|
||
"roles": "역할",
|
||
"role": "역할",
|
||
"actions": "작업",
|
||
"apiUser": "제한된 API 사용자",
|
||
"extraApiUser": "추가 제한된 API 사용자",
|
||
"webOnlyUser": "웹 전용 사용자",
|
||
"demoUser": "데모 사용자 (사용자 지정 설정 없음)",
|
||
"internalApiUser": "내부 API 사용자",
|
||
"forceChange": "로그인 시 사용자 비밀번호 변경 강제",
|
||
"submit": "사용자 저장",
|
||
"changeUserRole": "사용자 역할 변경",
|
||
"authenticated": "인증됨",
|
||
"editOwnProfil": "자신의 프로필 편집",
|
||
"enabledUser": "활성화된 사용자",
|
||
"disabledUser": "비활성화된 사용자",
|
||
"activeUsers": "활성 사용자:",
|
||
"disabledUsers": "비활성화된 사용자:",
|
||
"totalUsers": "전체 사용자:",
|
||
"lastRequest": "마지막 요청",
|
||
"usage": "View Usage"
|
||
},
|
||
"endpointStatistics": {
|
||
"title": "Endpoint Statistics",
|
||
"header": "Endpoint Statistics",
|
||
"top10": "Top 10",
|
||
"top20": "Top 20",
|
||
"all": "All",
|
||
"refresh": "Refresh",
|
||
"dataTypeLabel": "Data Type:",
|
||
"dataTypeAll": "All",
|
||
"dataTypeApi": "API",
|
||
"dataTypeUi": "UI",
|
||
"totalEndpoints": "Total Endpoints",
|
||
"totalVisits": "Total Visits",
|
||
"showing": "Showing",
|
||
"selectedVisits": "Selected Visits",
|
||
"endpoint": "Endpoint",
|
||
"visits": "Visits",
|
||
"percentage": "Percentage",
|
||
"loading": "로딩 중...",
|
||
"failedToLoad": "Failed to load endpoint data. Please try refreshing.",
|
||
"home": "Home",
|
||
"login": "Login",
|
||
"top": "Top",
|
||
"numberOfVisits": "Number of Visits",
|
||
"visitsTooltip": "Visits: {0} ({1}% of total)",
|
||
"retry": "Retry",
|
||
"includeHomepage": "Include Homepage ('/')",
|
||
"includeLoginPage": "Include Login Page ('/login')"
|
||
},
|
||
"database": {
|
||
"title": "데이터베이스 가져오기/내보내기",
|
||
"header": "데이터베이스 가져오기/내보내기",
|
||
"fileName": "파일 이름",
|
||
"creationDate": "생성 날짜",
|
||
"fileSize": "파일 크기",
|
||
"deleteBackupFile": "백업 파일 삭제",
|
||
"importBackupFile": "백업 파일 가져오기",
|
||
"createBackupFile": "백업 파일 생성",
|
||
"downloadBackupFile": "백업 파일 다운로드",
|
||
"info_1": "데이터를 가져올 때는 올바른 구조가 중요합니다. 무엇을 하고 있는지 확실하지 않다면 전문가의 조언과 지원을 받으세요. 구조에 오류가 있으면 애플리케이션 오작동이나 완전한 실행 불능까지 발생할 수 있습니다.",
|
||
"info_2": "업로드할 때 파일 이름은 중요하지 않습니다. 일관된 이름 지정 규칙을 위해 backup_user_yyyyMMddHHmm.sql 형식으로 이름이 변경됩니다.",
|
||
"submit": "백업 가져오기",
|
||
"importIntoDatabaseSuccessed": "데이터베이스로 가져오기 성공",
|
||
"backupCreated": "데이터베이스 백업 성공",
|
||
"fileNotFound": "파일을 찾을 수 없음",
|
||
"fileNullOrEmpty": "파일은 null이거나 비어 있으면 안 됩니다",
|
||
"failedImportFile": "파일 가져오기 실패",
|
||
"notSupported": "이 기능은 현재 데이터베이스 연결에서 사용할 수 없습니다."
|
||
},
|
||
"session": {
|
||
"expired": "세션이 만료되었습니다. 페이지를 새로 고침하고 다시 시도하세요.",
|
||
"refreshPage": "페이지 새로 고침"
|
||
},
|
||
"home": {
|
||
"desc": "PDF 관련 모든 작업을 위한 로컬 호스팅 원스톱 솔루션입니다.",
|
||
"searchBar": "기능 검색...",
|
||
"viewPdf": {
|
||
"title": "View/Edit PDF",
|
||
"desc": "보기, 주석 달기, 텍스트 또는 이미지 추가"
|
||
},
|
||
"setFavorites": "Set Favourites",
|
||
"hideFavorites": "Hide Favourites",
|
||
"showFavorites": "Show Favourites",
|
||
"legacyHomepage": "Old homepage",
|
||
"newHomePage": "Try our new homepage!",
|
||
"alphabetical": "Alphabetical",
|
||
"globalPopularity": "Global Popularity",
|
||
"sortBy": "Sort by:",
|
||
"mobile": {
|
||
"brandAlt": "Stirling PDF logo",
|
||
"openFiles": "Open files",
|
||
"swipeHint": "Swipe left or right to switch views",
|
||
"tools": "Tools",
|
||
"toolsSlide": "Tool selection panel",
|
||
"viewSwitcher": "Switch workspace view",
|
||
"workbenchSlide": "Workspace panel",
|
||
"workspace": "Workspace"
|
||
},
|
||
"multiTool": {
|
||
"tags": "multiple,tools",
|
||
"title": "PDF 멀티 도구",
|
||
"desc": "병합, 회전, 재배치, 분할 및 페이지 제거"
|
||
},
|
||
"merge": {
|
||
"tags": "combine,join,unite",
|
||
"title": "병합",
|
||
"desc": "여러 PDF를 하나로 쉽게 병합합니다."
|
||
},
|
||
"split": {
|
||
"tags": "divide,separate,break",
|
||
"title": "분할",
|
||
"desc": "PDF를 여러 문서로 분할"
|
||
},
|
||
"rotate": {
|
||
"tags": "turn,flip,orient",
|
||
"title": "회전",
|
||
"desc": "PDF를 쉽게 회전합니다."
|
||
},
|
||
"convert": {
|
||
"tags": "transform,change",
|
||
"title": "변환",
|
||
"desc": "Convert files between different formats"
|
||
},
|
||
"pdfOrganiser": {
|
||
"tags": "organize,rearrange,reorder",
|
||
"title": "정리",
|
||
"desc": "원하는 순서로 페이지 제거/재배치"
|
||
},
|
||
"addImage": {
|
||
"tags": "insert,embed,place",
|
||
"title": "이미지 추가",
|
||
"desc": "PDF의 지정된 위치에 이미지 추가"
|
||
},
|
||
"addAttachments": {
|
||
"tags": "embed,attach,include",
|
||
"title": "Add Attachments",
|
||
"desc": "Add or remove embedded files (attachments) to/from a PDF"
|
||
},
|
||
"watermark": {
|
||
"tags": "stamp,mark,overlay",
|
||
"title": "워터마크 추가",
|
||
"desc": "PDF 문서에 사용자 지정 워터마크를 추가합니다."
|
||
},
|
||
"removePassword": {
|
||
"tags": "unlock",
|
||
"title": "비밀번호 제거",
|
||
"desc": "PDF 문서에서 비밀번호 보호를 제거합니다."
|
||
},
|
||
"compress": {
|
||
"tags": "shrink,reduce,optimize",
|
||
"title": "압축",
|
||
"desc": "PDF를 압축하여 파일 크기를 줄입니다."
|
||
},
|
||
"unlockPDFForms": {
|
||
"tags": "unlock,enable,edit",
|
||
"title": "Unlock PDF Forms",
|
||
"desc": "Remove read-only property of form fields in a PDF document."
|
||
},
|
||
"changeMetadata": {
|
||
"tags": "edit,modify,update",
|
||
"title": "메타데이터 변경",
|
||
"desc": "PDF 문서에서 메타데이터 변경/제거/추가"
|
||
},
|
||
"ocr": {
|
||
"tags": "extract,scan",
|
||
"title": "OCR / 스캔 정리",
|
||
"desc": "스캔을 정리하고 PDF 내 이미지에서 텍스트를 감지하여 다시 텍스트로 추가합니다."
|
||
},
|
||
"extractImages": {
|
||
"tags": "pull,save,export",
|
||
"title": "이미지 추출",
|
||
"desc": "PDF에서 모든 이미지를 추출하여 zip으로 저장"
|
||
},
|
||
"scannerImageSplit": {
|
||
"tags": "detect,split,photos",
|
||
"title": "Detect & Split Scanned Photos",
|
||
"desc": "Detect and split scanned photos into separate pages"
|
||
},
|
||
"sign": {
|
||
"tags": "signature,autograph",
|
||
"title": "서명",
|
||
"desc": "그리기, 텍스트 또는 이미지로 PDF에 서명 추가"
|
||
},
|
||
"flatten": {
|
||
"tags": "simplify,remove,interactive",
|
||
"title": "평면화",
|
||
"desc": "PDF에서 모든 대화형 요소와 양식 제거"
|
||
},
|
||
"certSign": {
|
||
"tags": "authenticate,PEM,P12,official,encrypt,sign,certificate,PKCS12,JKS,server,manual,auto",
|
||
"title": "인증서로 서명",
|
||
"desc": "인증서/키(PEM/P12)로 PDF에 서명"
|
||
},
|
||
"repair": {
|
||
"tags": "fix,restore",
|
||
"title": "복구",
|
||
"desc": "손상/깨진 PDF를 복구 시도"
|
||
},
|
||
"removeBlanks": {
|
||
"tags": "delete,clean,empty",
|
||
"title": "빈 페이지 제거",
|
||
"desc": "문서에서 빈 페이지를 감지하고 제거합니다"
|
||
},
|
||
"removeAnnotations": {
|
||
"tags": "delete,clean,strip",
|
||
"title": "주석 제거",
|
||
"desc": "PDF에서 모든 주석/메모를 제거합니다"
|
||
},
|
||
"compare": {
|
||
"tags": "difference",
|
||
"title": "비교",
|
||
"desc": "2개의 PDF 문서를 비교하고 차이점을 보여줍니다"
|
||
},
|
||
"removeCertSign": {
|
||
"tags": "remove,delete,unlock",
|
||
"title": "인증서 서명 제거",
|
||
"desc": "PDF에서 인증서 서명 제거"
|
||
},
|
||
"pageLayout": {
|
||
"tags": "layout,arrange,combine",
|
||
"title": "다중 페이지 레이아웃",
|
||
"desc": "PDF 문서의 여러 페이지를 하나의 페이지로 병합"
|
||
},
|
||
"bookletImposition": {
|
||
"tags": "booklet,print,binding",
|
||
"title": "Booklet Imposition",
|
||
"desc": "Create booklets with proper page ordering and multi-page layout for printing and binding"
|
||
},
|
||
"scalePages": {
|
||
"tags": "resize,adjust,scale",
|
||
"title": "페이지 크기/배율 조정",
|
||
"desc": "페이지 및 내용의 크기/배율을 변경합니다."
|
||
},
|
||
"addPageNumbers": {
|
||
"tags": "number,pagination,count",
|
||
"title": "페이지 번호 추가",
|
||
"desc": "문서 전체에 지정된 위치에 페이지 번호 추가"
|
||
},
|
||
"autoRename": {
|
||
"tags": "auto-detect,header-based,organize,relabel",
|
||
"title": "Auto Rename PDF File",
|
||
"desc": "Auto renames a PDF file based on its detected header"
|
||
},
|
||
"adjustContrast": {
|
||
"tags": "contrast,brightness,saturation",
|
||
"title": "색상/대비 조정",
|
||
"desc": "PDF의 대비, 채도 및 밝기 조정"
|
||
},
|
||
"crop": {
|
||
"tags": "trim,cut,resize",
|
||
"title": "PDF 자르기",
|
||
"desc": "PDF를 잘라서 크기 줄이기(텍스트 유지!)"
|
||
},
|
||
"autoSplitPDF": {
|
||
"tags": "auto,split,QR",
|
||
"title": "자동 페이지 분할",
|
||
"desc": "물리적 스캔 페이지 분할기 QR 코드가 있는 스캔된 PDF 자동 분할"
|
||
},
|
||
"sanitize": {
|
||
"tags": "clean,purge,remove",
|
||
"title": "Sanitise",
|
||
"desc": "Remove potentially harmful elements from PDF files"
|
||
},
|
||
"getPdfInfo": {
|
||
"tags": "info,metadata,details",
|
||
"title": "PDF 모든 정보 가져오기",
|
||
"desc": "PDF에서 가능한 모든 정보 가져오기"
|
||
},
|
||
"pdfToSinglePage": {
|
||
"tags": "combine,merge,single",
|
||
"title": "단일 큰 페이지",
|
||
"desc": "모든 PDF 페이지를 하나의 큰 단일 페이지로 병합"
|
||
},
|
||
"showJS": {
|
||
"tags": "javascript,code,script",
|
||
"title": "JavaScript 보기",
|
||
"desc": "PDF에 삽입된 JavaScript 검색 및 표시"
|
||
},
|
||
"redact": {
|
||
"tags": "censor,blackout,hide",
|
||
"title": "수동 검열",
|
||
"desc": "선택한 텍스트, 그린 도형 및/또는 선택한 페이지를 기반으로 PDF 검열"
|
||
},
|
||
"splitBySections": {
|
||
"tags": "split,sections,divide",
|
||
"title": "Split PDF by Sections",
|
||
"desc": "Divide each page of a PDF into smaller horizontal and vertical sections"
|
||
},
|
||
"addStamp": {
|
||
"tags": "stamp,mark,seal",
|
||
"title": "Add Stamp to PDF",
|
||
"desc": "Add text or add image stamps at set locations"
|
||
},
|
||
"removeImage": {
|
||
"tags": "remove,delete,clean",
|
||
"title": "이미지 제거",
|
||
"desc": "파일 크기를 줄이기 위해 PDF에서 이미지 제거"
|
||
},
|
||
"splitByChapters": {
|
||
"tags": "split,chapters,structure",
|
||
"title": "챕터별 PDF 분할",
|
||
"desc": "PDF를 챕터 구조에 따라 여러 파일로 분할합니다."
|
||
},
|
||
"validateSignature": {
|
||
"tags": "validate,verify,certificate",
|
||
"title": "PDF 서명 검증",
|
||
"desc": "PDF 문서의 디지털 서명과 인증서 검증"
|
||
},
|
||
"swagger": {
|
||
"tags": "API,documentation,test",
|
||
"title": "API Documentation",
|
||
"desc": "View API documentation and test endpoints"
|
||
},
|
||
"scannerEffect": {
|
||
"tags": "scan,simulate,create",
|
||
"title": "Scanner Effect",
|
||
"desc": "Create a PDF that looks like it was scanned"
|
||
},
|
||
"editTableOfContents": {
|
||
"tags": "bookmarks,contents,edit",
|
||
"title": "Edit Table of Contents",
|
||
"desc": "Add or edit bookmarks and table of contents in PDF documents"
|
||
},
|
||
"manageCertificates": {
|
||
"tags": "certificates,import,export",
|
||
"title": "Manage Certificates",
|
||
"desc": "Import, export, or delete digital certificate files used for signing PDFs."
|
||
},
|
||
"read": {
|
||
"tags": "view,open,display",
|
||
"title": "Read",
|
||
"desc": "View and annotate PDFs. Highlight text, draw, or insert comments for review and collaboration."
|
||
},
|
||
"reorganizePages": {
|
||
"tags": "rearrange,reorder,organize",
|
||
"title": "Reorganize Pages",
|
||
"desc": "Rearrange, duplicate, or delete PDF pages with visual drag-and-drop control."
|
||
},
|
||
"extractPages": {
|
||
"tags": "pull,select,copy",
|
||
"title": "페이지 추출",
|
||
"desc": "Extract specific pages from a PDF document"
|
||
},
|
||
"removePages": {
|
||
"tags": "delete,extract,exclude",
|
||
"title": "제거",
|
||
"desc": "PDF 문서에서 원하지 않는 페이지를 삭제합니다."
|
||
},
|
||
"autoSizeSplitPDF": {
|
||
"tags": "auto,split,size",
|
||
"title": "크기/개수별 자동 분할",
|
||
"desc": "단일 PDF를 크기, 페이지 수 또는 문서 수를 기준으로 여러 문서로 분할"
|
||
},
|
||
"replaceColor": {
|
||
"title": "Replace & Invert Colour",
|
||
"desc": "Replace or invert colours in PDF documents"
|
||
},
|
||
"devApi": {
|
||
"tags": "API,development,documentation",
|
||
"title": "API",
|
||
"desc": "Link to API documentation"
|
||
},
|
||
"devFolderScanning": {
|
||
"tags": "automation,folder,scanning",
|
||
"title": "Automated Folder Scanning",
|
||
"desc": "Link to automated folder scanning guide"
|
||
},
|
||
"devSsoGuide": {
|
||
"title": "SSO Guide",
|
||
"desc": "Link to SSO guide"
|
||
},
|
||
"devAirgapped": {
|
||
"title": "Air-gapped Setup",
|
||
"desc": "Link to air-gapped setup guide"
|
||
},
|
||
"addPassword": {
|
||
"title": "비밀번호 추가",
|
||
"desc": "PDF 문서를 비밀번호로 암호화합니다."
|
||
},
|
||
"changePermissions": {
|
||
"title": "권한 변경",
|
||
"desc": "Change document restrictions and permissions"
|
||
},
|
||
"automate": {
|
||
"tags": "workflow,sequence,automation",
|
||
"title": "Automate",
|
||
"desc": "Build multi-step workflows by chaining together PDF actions. Ideal for recurring tasks."
|
||
},
|
||
"overlay-pdfs": {
|
||
"desc": "PDF를 다른 PDF 위에 오버레이",
|
||
"title": "PDF 오버레이"
|
||
},
|
||
"imageToPDF": {
|
||
"title": "이미지를 PDF로",
|
||
"desc": "이미지(PNG, JPEG, GIF)를 PDF로 변환합니다."
|
||
},
|
||
"pdfToImage": {
|
||
"title": "PDF를 이미지로",
|
||
"desc": "PDF를 이미지로 변환합니다. (PNG, JPEG, GIF)"
|
||
},
|
||
"permissions": {
|
||
"title": "권한 변경",
|
||
"desc": "PDF 문서의 권한을 변경합니다"
|
||
},
|
||
"pageRemover": {
|
||
"title": "제거",
|
||
"desc": "PDF 문서에서 원하지 않는 페이지를 삭제합니다."
|
||
},
|
||
"fileToPDF": {
|
||
"title": "파일을 PDF로 변환",
|
||
"desc": "거의 모든 파일을 PDF로 변환합니다(DOCX, PNG, XLS, PPT, TXT 등)"
|
||
},
|
||
"pdfToPDFA": {
|
||
"title": "PDF를 PDF/A로",
|
||
"desc": "장기 보관을 위해 PDF를 PDF/A로 변환"
|
||
},
|
||
"PDFToWord": {
|
||
"title": "PDF를 Word로",
|
||
"desc": "PDF를 Word 형식으로 변환 (DOC, DOCX 및 ODT)"
|
||
},
|
||
"PDFToPresentation": {
|
||
"title": "PDF를 프레젠테이션으로",
|
||
"desc": "PDF를 프레젠테이션 형식으로 변환 (PPT, PPTX 및 ODP)"
|
||
},
|
||
"PDFToText": {
|
||
"title": "PDF를 RTF(텍스트)로",
|
||
"desc": "PDF를 텍스트 또는 RTF 형식으로 변환"
|
||
},
|
||
"PDFToHTML": {
|
||
"title": "PDF를 HTML로",
|
||
"desc": "PDF를 HTML 형식으로 변환"
|
||
},
|
||
"PDFToXML": {
|
||
"title": "PDF를 XML로",
|
||
"desc": "PDF를 XML 형식으로 변환"
|
||
},
|
||
"ScannerImageSplit": {
|
||
"title": "스캔한 사진 감지/분할",
|
||
"desc": "사진/PDF 내의 여러 사진을 분할합니다"
|
||
},
|
||
"pipeline": {
|
||
"title": "파이프라인",
|
||
"desc": "파이프라인 스크립트를 정의하여 PDF에서 여러 작업 실행"
|
||
},
|
||
"auto-rename": {
|
||
"title": "PDF 파일 자동 이름 변경",
|
||
"desc": "감지된 헤더를 기반으로 PDF 파일 이름 자동 변경"
|
||
},
|
||
"sanitizePDF": {
|
||
"title": "정리",
|
||
"desc": "PDF 파일에서 스크립트 및 기타 요소 제거"
|
||
},
|
||
"URLToPDF": {
|
||
"title": "URL/웹사이트를 PDF로",
|
||
"desc": "http(s) URL을 PDF로 변환"
|
||
},
|
||
"HTMLToPDF": {
|
||
"title": "HTML을 PDF로",
|
||
"desc": "HTML 파일이나 zip을 PDF로 변환"
|
||
},
|
||
"MarkdownToPDF": {
|
||
"title": "Markdown을 PDF로",
|
||
"desc": "Markdown 파일을 PDF로 변환"
|
||
},
|
||
"PDFToMarkdown": {
|
||
"title": "PDF를 Markdown으로",
|
||
"desc": "PDF를 Markdown으로 변환"
|
||
},
|
||
"pageExtracter": {
|
||
"title": "페이지 추출",
|
||
"desc": "PDF에서 선택한 페이지 추출"
|
||
},
|
||
"autoRedact": {
|
||
"title": "자동 검열",
|
||
"desc": "입력 텍스트를 기반으로 PDF의 텍스트 자동 검열(가림)"
|
||
},
|
||
"PDFToCSV": {
|
||
"title": "PDF를 CSV로",
|
||
"desc": "PDF에서 표를 추출하여 CSV로 변환"
|
||
},
|
||
"split-by-size-or-count": {
|
||
"title": "크기/개수별 자동 분할",
|
||
"desc": "단일 PDF를 크기, 페이지 수 또는 문서 수를 기준으로 여러 문서로 분할"
|
||
},
|
||
"split-by-sections": {
|
||
"title": "섹션별 PDF 분할",
|
||
"desc": "PDF의 각 페이지를 더 작은 가로 및 세로 섹션으로 분할"
|
||
},
|
||
"AddStampRequest": {
|
||
"title": "PDF에 스탬프 추가",
|
||
"desc": "지정된 위치에 텍스트 또는 이미지 스탬프 추가"
|
||
},
|
||
"replace-color": {
|
||
"title": "색상 교체 및 반전",
|
||
"desc": "PDF에서 텍스트와 배경의 색상을 교체하고 파일 크기를 줄이기 위해 전체 PDF 색상을 반전"
|
||
},
|
||
"attachments": {
|
||
"title": "Add attachments"
|
||
},
|
||
"removeImagePdf": {
|
||
"title": "이미지 제거",
|
||
"desc": "파일 크기를 줄이기 위해 PDF에서 이미지 제거"
|
||
},
|
||
"adjust-contrast": {
|
||
"title": "색상/대비 조정",
|
||
"desc": "PDF의 대비, 채도 및 밝기 조정"
|
||
},
|
||
"replaceColorPdf": {
|
||
"title": "색상 교체 및 반전",
|
||
"desc": "PDF에서 텍스트와 배경의 색상을 교체하고 파일 크기를 줄이기 위해 전체 PDF 색상을 반전"
|
||
}
|
||
},
|
||
"landing": {
|
||
"addFiles": "Add Files",
|
||
"uploadFromComputer": "Upload from computer"
|
||
},
|
||
"viewPdf": {
|
||
"tags": "보기,읽기,주석,텍스트,이미지",
|
||
"title": "View/Edit PDF",
|
||
"header": "PDF 보기"
|
||
},
|
||
"multiTool": {
|
||
"tags": "멀티 도구,다중 작업,UI,클릭 드래그,프론트엔드,클라이언트 사이드,대화형,상호작용,이동,삭제,마이그레이션,분할",
|
||
"title": "PDF 멀티 도구",
|
||
"header": "PDF 멀티 도구",
|
||
"uploadPrompts": "파일 이름",
|
||
"selectAll": "모두 선택",
|
||
"deselectAll": "모두 선택 해제",
|
||
"selectPages": "페이지 선택",
|
||
"selectedPages": "선택된 페이지",
|
||
"page": "페이지",
|
||
"deleteSelected": "선택 항목 삭제",
|
||
"downloadAll": "내보내기",
|
||
"downloadSelected": "선택 항목 내보내기",
|
||
"insertPageBreak": "페이지 나누기 삽입",
|
||
"addFile": "파일 추가",
|
||
"rotateLeft": "왼쪽으로 회전",
|
||
"rotateRight": "오른쪽으로 회전",
|
||
"split": "분할",
|
||
"moveLeft": "왼쪽으로 이동",
|
||
"moveRight": "오른쪽으로 이동",
|
||
"delete": "삭제",
|
||
"dragDropMessage": "페이지 선택됨",
|
||
"undo": "실행 취소",
|
||
"redo": "다시 실행"
|
||
},
|
||
"merge": {
|
||
"tags": "병합,페이지 작업,백엔드,서버 사이드",
|
||
"title": "병합",
|
||
"removeDigitalSignature": {
|
||
"label": "Remove digital signature in the merged file?",
|
||
"tooltip": {
|
||
"title": "Remove Digital Signature",
|
||
"description": "Digital signatures will be invalidated when merging files. Check this to remove them from the final merged PDF."
|
||
}
|
||
},
|
||
"generateTableOfContents": {
|
||
"label": "Generate table of contents in the merged file?",
|
||
"tooltip": {
|
||
"title": "Generate Table of Contents",
|
||
"description": "Automatically creates a clickable table of contents in the merged PDF based on the original file names and page numbers."
|
||
}
|
||
},
|
||
"submit": "병합",
|
||
"sortBy": {
|
||
"description": "Files will be merged in the order they're selected. Drag to reorder or sort below.",
|
||
"label": "Sort By",
|
||
"filename": "파일 이름",
|
||
"dateModified": "Date Modified",
|
||
"ascending": "Ascending",
|
||
"descending": "Descending",
|
||
"sort": "Sort"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while merging the PDFs."
|
||
},
|
||
"header": "여러 PDF 병합 (2개 이상)",
|
||
"sortByName": "이름으로 정렬",
|
||
"sortByDate": "날짜로 정렬",
|
||
"removeCertSign": "병합된 파일에서 디지털 서명을 제거하시겠습니까?"
|
||
},
|
||
"split": {
|
||
"title": "PDF 분할",
|
||
"header": "PDF 분할",
|
||
"desc": {
|
||
"1": "선택한 숫자는 분할하려는 페이지 번호입니다",
|
||
"2": "예를 들어 1,3,7-9를 선택하면 10페이지 문서가 다음과 같이 6개의 별도 PDF로 분할됩니다:",
|
||
"3": "문서 #1: 1페이지",
|
||
"4": "문서 #2: 2-3페이지",
|
||
"5": "문서 #3: 4-7페이지",
|
||
"6": "문서 #4: 8페이지",
|
||
"7": "문서 #5: 9페이지",
|
||
"8": "문서 #6: 10페이지"
|
||
},
|
||
"splitPages": "분할할 페이지 입력:",
|
||
"submit": "분할",
|
||
"steps": {
|
||
"chooseMethod": "Choose Method",
|
||
"settings": "설정"
|
||
},
|
||
"settings": {
|
||
"selectMethodFirst": "Please select a split method first"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while splitting the PDF."
|
||
},
|
||
"method": {
|
||
"label": "Choose split method",
|
||
"placeholder": "Select how to split the PDF"
|
||
},
|
||
"methods": {
|
||
"prefix": {
|
||
"splitAt": "Split at",
|
||
"splitBy": "Split by"
|
||
},
|
||
"byPages": {
|
||
"name": "Page Numbers",
|
||
"desc": "Extract specific pages (1,3,5-10)",
|
||
"tooltip": "Enter page numbers separated by commas or ranges with hyphens"
|
||
},
|
||
"bySections": {
|
||
"name": "Sections",
|
||
"desc": "Divide pages into grid sections",
|
||
"tooltip": "Split each page into horizontal and vertical sections"
|
||
},
|
||
"bySize": {
|
||
"name": "파일 크기",
|
||
"desc": "Limit maximum file size",
|
||
"tooltip": "Specify maximum file size (e.g. 10MB, 500KB)"
|
||
},
|
||
"byPageCount": {
|
||
"name": "Page Count",
|
||
"desc": "Fixed pages per file",
|
||
"tooltip": "Enter the number of pages for each split file"
|
||
},
|
||
"byDocCount": {
|
||
"name": "Document Count",
|
||
"desc": "Create specific number of files",
|
||
"tooltip": "Enter how many files you want to create"
|
||
},
|
||
"byChapters": {
|
||
"name": "Chapters",
|
||
"desc": "Split at bookmark boundaries",
|
||
"tooltip": "Uses PDF bookmarks to determine split points"
|
||
},
|
||
"byPageDivider": {
|
||
"name": "Page Divider",
|
||
"desc": "Auto-split with divider sheets",
|
||
"tooltip": "Use QR code divider sheets between documents when scanning"
|
||
}
|
||
},
|
||
"value": {
|
||
"fileSize": {
|
||
"label": "파일 크기",
|
||
"placeholder": "e.g. 10MB, 500KB"
|
||
},
|
||
"pageCount": {
|
||
"label": "Pages per File",
|
||
"placeholder": "e.g. 5, 10"
|
||
},
|
||
"docCount": {
|
||
"label": "Number of Files",
|
||
"placeholder": "e.g. 3, 5"
|
||
}
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "Split Methods Overview"
|
||
},
|
||
"byPages": {
|
||
"title": "Split at Page Numbers",
|
||
"text": "Split your PDF at specific page numbers. Using 'n' splits after page n. Using 'n-m' splits before page n and after page m.",
|
||
"bullet1": "Single split points: 3,7 (splits after pages 3 and 7)",
|
||
"bullet2": "Range split points: 3-8 (splits before page 3 and after page 8)",
|
||
"bullet3": "Mixed: 2,5-10,15 (splits after page 2, before page 5, after page 10, and after page 15)"
|
||
},
|
||
"bySections": {
|
||
"title": "Split by Grid Sections",
|
||
"text": "Divide each page into a grid of sections. Useful for splitting documents with multiple columns or extracting specific areas.",
|
||
"bullet1": "Horizontal: Number of rows to create",
|
||
"bullet2": "Vertical: Number of columns to create",
|
||
"bullet3": "Merge: Combine all sections into one PDF"
|
||
},
|
||
"bySize": {
|
||
"title": "Split by File Size",
|
||
"text": "Create multiple PDFs that don't exceed a specified file size. Ideal for file size limitations or email attachments.",
|
||
"bullet1": "Use MB for larger files (e.g., 10MB)",
|
||
"bullet2": "Use KB for smaller files (e.g., 500KB)",
|
||
"bullet3": "System will split at page boundaries"
|
||
},
|
||
"byCount": {
|
||
"title": "Split by Count",
|
||
"text": "Create multiple PDFs with a specific number of pages or documents each.",
|
||
"bullet1": "Page Count: Fixed number of pages per file",
|
||
"bullet2": "Document Count: Fixed number of output files",
|
||
"bullet3": "Useful for batch processing workflows"
|
||
},
|
||
"byChapters": {
|
||
"title": "Split by Chapters",
|
||
"text": "Use PDF bookmarks to automatically split at chapter boundaries. Requires PDFs with bookmark structure.",
|
||
"bullet1": "Bookmark Level: Which level to split on (1=top level)",
|
||
"bullet2": "Include Metadata: Preserve document properties",
|
||
"bullet3": "Allow Duplicates: Handle repeated bookmark names"
|
||
},
|
||
"byDocCount": {
|
||
"bullet1": "Enter the number of output files you want",
|
||
"bullet2": "Pages are distributed as evenly as possible",
|
||
"bullet3": "Useful when you need a specific number of files",
|
||
"text": "Create a specific number of output files by evenly distributing pages across them.",
|
||
"title": "Split by Document Count"
|
||
},
|
||
"byPageCount": {
|
||
"bullet1": "Enter the number of pages per output file",
|
||
"bullet2": "Last file may have fewer pages if not evenly divisible",
|
||
"bullet3": "Useful for batch processing workflows",
|
||
"text": "Create multiple PDFs with a specific number of pages each. Perfect for creating uniform document chunks.",
|
||
"title": "Split by Page Count"
|
||
},
|
||
"byPageDivider": {
|
||
"bullet1": "Print divider sheets from the download link",
|
||
"bullet2": "Insert divider sheets between your documents",
|
||
"bullet3": "Scan all documents together as one PDF",
|
||
"bullet4": "Upload - divider pages are automatically detected and removed",
|
||
"bullet5": "Enable Duplex Mode if scanning both sides of divider sheets",
|
||
"text": "Automatically split scanned documents using physical divider sheets with QR codes. Perfect for processing multiple documents scanned together.",
|
||
"title": "Split by Page Divider"
|
||
}
|
||
},
|
||
"methodSelection": {
|
||
"tooltip": {
|
||
"bullet1": "Click on a method card to select it",
|
||
"bullet2": "Hover over each card to see a quick description",
|
||
"bullet3": "The settings step will appear after you select a method",
|
||
"bullet4": "You can change methods at any time before processing",
|
||
"header": {
|
||
"text": "Choose how you want to split your PDF document. Each method is optimized for different use cases and document types.",
|
||
"title": "Split Method Selection"
|
||
},
|
||
"title": "Choose Your Split Method"
|
||
}
|
||
},
|
||
"selectMethod": "Select a split method",
|
||
"tags": "페이지 작업,나누기,멀티 페이지,자르기,서버 사이드"
|
||
},
|
||
"rotate": {
|
||
"title": "PDF 회전",
|
||
"submit": "회전",
|
||
"selectRotation": "Select Rotation Angle (Clockwise)",
|
||
"error": {
|
||
"failed": "An error occurred while rotating the PDF."
|
||
},
|
||
"preview": {
|
||
"title": "Rotation Preview"
|
||
},
|
||
"rotateLeft": "Rotate Anticlockwise",
|
||
"rotateRight": "Rotate Clockwise",
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "Rotate Settings Overview"
|
||
},
|
||
"description": {
|
||
"text": "Rotate your PDF pages clockwise or anticlockwise in 90-degree increments. All pages in the PDF will be rotated. The preview shows how your document will look after rotation."
|
||
},
|
||
"controls": {
|
||
"title": "Controls",
|
||
"text": "Use the rotation buttons to adjust orientation. Left button rotates anticlockwise, right button rotates clockwise. Each click rotates by 90 degrees."
|
||
}
|
||
},
|
||
"tags": "서버 사이드",
|
||
"header": "PDF 회전",
|
||
"selectAngle": "회전 각도 선택 (90도 단위):"
|
||
},
|
||
"convert": {
|
||
"title": "변환",
|
||
"desc": "Convert files between different formats",
|
||
"files": "Files",
|
||
"selectFilesPlaceholder": "Select files in the main view to get started",
|
||
"settings": "설정",
|
||
"conversionCompleted": "Conversion completed",
|
||
"results": "Results",
|
||
"defaultFilename": "converted_file",
|
||
"conversionResults": "Conversion Results",
|
||
"convertFrom": "Convert from",
|
||
"convertTo": "Convert to",
|
||
"sourceFormatPlaceholder": "Source format",
|
||
"targetFormatPlaceholder": "Target format",
|
||
"selectSourceFormatFirst": "Select a source format first",
|
||
"outputOptions": "Output Options",
|
||
"pdfOptions": "PDF Options",
|
||
"imageOptions": "Image Options",
|
||
"colorType": "Colour Type",
|
||
"color": "색상",
|
||
"greyscale": "그레이스케일",
|
||
"blackwhite": "Black & White",
|
||
"dpi": "DPI",
|
||
"output": "Output",
|
||
"single": "Single",
|
||
"multiple": "Multiple",
|
||
"fitOption": "Fit Option",
|
||
"maintainAspectRatio": "Maintain Aspect Ratio",
|
||
"fitDocumentToPage": "Fit Document to Page",
|
||
"fillPage": "페이지 채우기",
|
||
"autoRotate": "Auto Rotate",
|
||
"autoRotateDescription": "Automatically rotate images to better fit the PDF page",
|
||
"combineImages": "Combine Images",
|
||
"combineImagesDescription": "Combine all images into one PDF, or create separate PDFs for each image",
|
||
"webOptions": "Web to PDF Options",
|
||
"zoomLevel": "Zoom Level",
|
||
"emailOptions": "Email to PDF Options",
|
||
"includeAttachments": "Include email attachments",
|
||
"maxAttachmentSize": "Maximum attachment size (MB)",
|
||
"includeAllRecipients": "Include CC and BCC recipients in header",
|
||
"downloadHtml": "Download HTML intermediate file instead of PDF",
|
||
"pdfaOptions": "PDF/A Options",
|
||
"outputFormat": "Output Format",
|
||
"pdfaNote": "PDF/A-1b is more compatible, PDF/A-2b supports more features.",
|
||
"pdfaDigitalSignatureWarning": "PDF에 디지털 서명이 포함되어 있습니다. 다음 단계에서 제거됩니다.",
|
||
"fileFormat": "File Format",
|
||
"wordDoc": "Word Document",
|
||
"wordDocExt": "Word Document (.docx)",
|
||
"odtExt": "OpenDocument Text (.odt)",
|
||
"pptExt": "PowerPoint (.pptx)",
|
||
"odpExt": "OpenDocument Presentation (.odp)",
|
||
"txtExt": "Plain Text (.txt)",
|
||
"rtfExt": "Rich Text Format (.rtf)",
|
||
"selectedFiles": "Selected files",
|
||
"noFileSelected": "No file selected. Use the file panel to add files.",
|
||
"convertFiles": "Convert Files",
|
||
"converting": "Converting...",
|
||
"downloadConverted": "Download Converted File",
|
||
"errorNoFiles": "Please select at least one file to convert.",
|
||
"errorNoFormat": "Please select both source and target formats.",
|
||
"errorNotSupported": "Conversion from {{from}} to {{to}} is not supported.",
|
||
"images": "Images",
|
||
"officeDocs": "Office Documents (Word, Excel, PowerPoint)",
|
||
"imagesExt": "Images (JPG, PNG, etc.)",
|
||
"markdown": "Markdown",
|
||
"textRtf": "Text/RTF",
|
||
"grayscale": "그레이스케일",
|
||
"errorConversion": "An error occurred while converting the file."
|
||
},
|
||
"imageToPdf": {
|
||
"tags": "변환,이미지,jpg,사진"
|
||
},
|
||
"pdfToImage": {
|
||
"tags": "변환,이미지,jpg,사진",
|
||
"title": "PDF를 이미지로",
|
||
"header": "PDF를 이미지로",
|
||
"selectText": "이미지 형식",
|
||
"singleOrMultiple": "이미지 결과 유형",
|
||
"single": "단일 큰 이미지",
|
||
"multi": "여러 이미지",
|
||
"colorType": "색상 유형",
|
||
"color": "컬러",
|
||
"grey": "그레이스케일",
|
||
"blackwhite": "흑백 (데이터 손실 가능성 있음!)",
|
||
"submit": "변환",
|
||
"info": "WebP 변환에는 Python이 필요합니다. Python이 설치되지 않았습니다.",
|
||
"placeholder": "(예: 1,2,8 또는 4,7,12-16 또는 2n-1)"
|
||
},
|
||
"pdfOrganiser": {
|
||
"tags": "양면,짝수,홀수,정렬,이동",
|
||
"title": "페이지 정리",
|
||
"header": "PDF 페이지 정리",
|
||
"submit": "페이지 재배치",
|
||
"mode": {
|
||
"_value": "모드",
|
||
"1": "사용자 지정 페이지 순서",
|
||
"2": "역순",
|
||
"3": "양면 정렬",
|
||
"4": "소책자 정렬",
|
||
"5": "측면 스티치 소책자 정렬",
|
||
"6": "홀수-짝수 분할",
|
||
"7": "첫 페이지 제거",
|
||
"8": "마지막 페이지 제거",
|
||
"9": "첫 페이지와 마지막 페이지 제거",
|
||
"10": "홀수-짝수 병합",
|
||
"11": "Duplicate all pages",
|
||
"desc": {
|
||
"BOOKLET_SORT": "Arrange pages for booklet printing (last, first, second, second last, …).",
|
||
"CUSTOM": "Use a custom sequence of page numbers or expressions to define a new order.",
|
||
"DUPLEX_SORT": "Interleave fronts then backs as if a duplex scanner scanned all fronts, then all backs (1, n, 2, n-1, …).",
|
||
"DUPLICATE": "Duplicate each page according to the custom order count (e.g., 4 duplicates each page 4×).",
|
||
"ODD_EVEN_MERGE": "Merge two PDFs by alternating pages: odd from the first, even from the second.",
|
||
"ODD_EVEN_SPLIT": "Split the document into two outputs: all odd pages and all even pages.",
|
||
"REMOVE_FIRST": "Remove the first page from the document.",
|
||
"REMOVE_FIRST_AND_LAST": "Remove both the first and last pages from the document.",
|
||
"REMOVE_LAST": "Remove the last page from the document.",
|
||
"REVERSE_ORDER": "Flip the document so the last page becomes first and so on.",
|
||
"SIDE_STITCH_BOOKLET_SORT": "Arrange pages for side‑stitch booklet printing (optimized for binding on the side)."
|
||
}
|
||
},
|
||
"desc": {
|
||
"CUSTOM": "Use a custom sequence of page numbers or expressions to define a new order.",
|
||
"REVERSE_ORDER": "Flip the document so the last page becomes first and so on.",
|
||
"DUPLEX_SORT": "Interleave fronts then backs as if a duplex scanner scanned all fronts, then all backs (1, n, 2, n-1, …).",
|
||
"BOOKLET_SORT": "Arrange pages for booklet printing (last, first, second, second last, …).",
|
||
"SIDE_STITCH_BOOKLET_SORT": "Arrange pages for side‑stitch booklet printing (optimised for binding on the side).",
|
||
"ODD_EVEN_SPLIT": "Split the document into two outputs: all odd pages and all even pages.",
|
||
"ODD_EVEN_MERGE": "Merge two PDFs by alternating pages: odd from the first, even from the second.",
|
||
"DUPLICATE": "Duplicate each page according to the custom order count (e.g., 4 duplicates each page 4×).",
|
||
"REMOVE_FIRST": "Remove the first page from the document.",
|
||
"REMOVE_LAST": "Remove the last page from the document.",
|
||
"REMOVE_FIRST_AND_LAST": "Remove both the first and last pages from the document."
|
||
},
|
||
"placeholder": "(예: 1,3,2 또는 4-8,2,10-12 또는 2n-1)"
|
||
},
|
||
"addImage": {
|
||
"tags": "이미지,jpg,사진",
|
||
"title": "이미지 추가",
|
||
"header": "PDF에 이미지 추가",
|
||
"everyPage": "모든 페이지?",
|
||
"upload": "이미지 추가",
|
||
"submit": "이미지 추가"
|
||
},
|
||
"attachments": {
|
||
"tags": "embed,attach,file,attachment,attachments",
|
||
"title": "Add attachments",
|
||
"header": "Add attachments",
|
||
"add": "Add Attachment",
|
||
"remove": "Remove Attachment",
|
||
"embed": "Embed Attachment",
|
||
"submit": "Add attachments"
|
||
},
|
||
"watermark": {
|
||
"title": "워터마크 추가",
|
||
"desc": "Add text or image watermarks to PDF files",
|
||
"completed": "Watermark added",
|
||
"submit": "워터마크 추가",
|
||
"filenamePrefix": "watermarked",
|
||
"error": {
|
||
"failed": "An error occurred while adding watermark to the PDF."
|
||
},
|
||
"watermarkType": {
|
||
"text": "텍스트",
|
||
"image": "Image"
|
||
},
|
||
"settings": {
|
||
"type": "Watermark Type",
|
||
"text": {
|
||
"label": "Watermark Text",
|
||
"placeholder": "Enter watermark text"
|
||
},
|
||
"image": {
|
||
"label": "Watermark Image",
|
||
"choose": "Choose Image",
|
||
"selected": "Selected: {{filename}}"
|
||
},
|
||
"fontSize": "글꼴 크기",
|
||
"size": "Size",
|
||
"alphabet": "Font/Language",
|
||
"color": "Watermark Colour",
|
||
"rotation": "Rotation (degrees)",
|
||
"opacity": "Opacity (%)",
|
||
"spacing": {
|
||
"horizontal": "Horizontal Spacing",
|
||
"vertical": "Vertical Spacing",
|
||
"height": "Height Spacing",
|
||
"width": "Width Spacing"
|
||
},
|
||
"convertToImage": "Flatten PDF pages to images"
|
||
},
|
||
"alphabet": {
|
||
"roman": "Roman/Latin",
|
||
"arabic": "Arabic",
|
||
"japanese": "Japanese",
|
||
"korean": "Korean",
|
||
"chinese": "Chinese",
|
||
"thai": "Thai"
|
||
},
|
||
"steps": {
|
||
"type": "Watermark Type",
|
||
"wording": "Wording",
|
||
"textStyle": "Style",
|
||
"formatting": "Formatting",
|
||
"file": "Watermark File"
|
||
},
|
||
"results": {
|
||
"title": "Watermark Results"
|
||
},
|
||
"tooltip": {
|
||
"language": {
|
||
"title": "Language Support",
|
||
"text": "Choose the appropriate language setting to ensure proper font rendering for your text."
|
||
},
|
||
"appearance": {
|
||
"title": "Appearance Settings",
|
||
"text": "Control how your watermark looks and blends with the document.",
|
||
"bullet1": "Rotation: -360° to 360° for angled watermarks",
|
||
"bullet2": "Opacity: 0-100% for transparency control",
|
||
"bullet3": "Lower opacity creates subtle watermarks"
|
||
},
|
||
"spacing": {
|
||
"title": "Spacing Control",
|
||
"text": "Adjust the spacing between repeated watermarks across the page.",
|
||
"bullet1": "Width spacing: Horizontal distance between watermarks",
|
||
"bullet2": "Height spacing: Vertical distance between watermarks",
|
||
"bullet3": "Higher values create more spread out patterns"
|
||
},
|
||
"type": {
|
||
"header": {
|
||
"title": "Watermark Type Selection"
|
||
},
|
||
"description": {
|
||
"title": "Choose Your Watermark",
|
||
"text": "Select between text or image watermarks based on your needs."
|
||
},
|
||
"text": {
|
||
"title": "Text Watermarks",
|
||
"text": "Perfect for adding copyright notices, company names, or confidentiality labels. Supports multiple languages and custom colours.",
|
||
"bullet1": "Customisable fonts and languages",
|
||
"bullet2": "Adjustable colours and transparency",
|
||
"bullet3": "Ideal for legal or branding text"
|
||
},
|
||
"image": {
|
||
"title": "Image Watermarks",
|
||
"text": "Use logos, stamps, or any image as a watermark. Great for branding and visual identification.",
|
||
"bullet1": "Upload any image format",
|
||
"bullet2": "Maintains image quality",
|
||
"bullet3": "Perfect for logos and stamps"
|
||
}
|
||
},
|
||
"wording": {
|
||
"header": {
|
||
"title": "Text Content"
|
||
},
|
||
"text": {
|
||
"title": "Watermark Text",
|
||
"text": "Enter the text that will appear as your watermark across the document.",
|
||
"bullet1": "Keep it concise for better readability",
|
||
"bullet2": "Common examples: 'CONFIDENTIAL', 'DRAFT', company name",
|
||
"bullet3": "Emoji characters are not supported and will be filtered out"
|
||
}
|
||
},
|
||
"textStyle": {
|
||
"header": {
|
||
"title": "Text Style"
|
||
},
|
||
"color": {
|
||
"title": "Colour Selection",
|
||
"text": "Choose a colour that provides good contrast with your document content.",
|
||
"bullet1": "Light grey (#d3d3d3) for subtle watermarks",
|
||
"bullet2": "Black or dark colours for high contrast",
|
||
"bullet3": "Custom colours for branding purposes"
|
||
},
|
||
"language": {
|
||
"title": "Language Support",
|
||
"text": "Choose the appropriate language setting to ensure proper font rendering."
|
||
}
|
||
},
|
||
"file": {
|
||
"header": {
|
||
"title": "Image Upload"
|
||
},
|
||
"upload": {
|
||
"title": "Image Selection",
|
||
"text": "Upload an image file to use as your watermark.",
|
||
"bullet1": "Supports common formats: PNG, JPG, GIF, BMP",
|
||
"bullet2": "PNG with transparency works best",
|
||
"bullet3": "Higher resolution images maintain quality better"
|
||
},
|
||
"recommendations": {
|
||
"title": "Best Practices",
|
||
"text": "Tips for optimal image watermark results.",
|
||
"bullet1": "Use logos or stamps with transparent backgrounds",
|
||
"bullet2": "Simple designs work better than complex images",
|
||
"bullet3": "Consider the final document size when choosing resolution"
|
||
}
|
||
},
|
||
"formatting": {
|
||
"header": {
|
||
"title": "Formatting & Layout"
|
||
},
|
||
"size": {
|
||
"title": "Size Control",
|
||
"text": "Adjust the size of your watermark (text or image).",
|
||
"bullet1": "Larger sizes create more prominent watermarks"
|
||
},
|
||
"appearance": {
|
||
"title": "Appearance Settings",
|
||
"text": "Control how your watermark looks and blends with the document.",
|
||
"bullet1": "Rotation: -360° to 360° for angled watermarks",
|
||
"bullet2": "Opacity: 0-100% for transparency control",
|
||
"bullet3": "Lower opacity creates subtle watermarks"
|
||
},
|
||
"spacing": {
|
||
"title": "Spacing Control",
|
||
"text": "Adjust the spacing between repeated watermarks across the page.",
|
||
"bullet1": "Horizontal spacing: Distance between watermarks left to right",
|
||
"bullet2": "Vertical spacing: Distance between watermarks top to bottom",
|
||
"bullet3": "Higher values create more spread out patterns"
|
||
},
|
||
"security": {
|
||
"title": "Security Option",
|
||
"text": "Convert the final PDF to an image-based format for enhanced security.",
|
||
"bullet1": "Prevents text selection and copying",
|
||
"bullet2": "Makes watermarks harder to remove",
|
||
"bullet3": "Results in larger file sizes",
|
||
"bullet4": "Best for sensitive or copyrighted content"
|
||
}
|
||
}
|
||
},
|
||
"type": {
|
||
"1": "텍스트",
|
||
"2": "이미지"
|
||
},
|
||
"tags": "텍스트,반복,레이블,소유,저작권,상표,이미지,jpg,사진",
|
||
"header": "워터마크 추가",
|
||
"customColor": "사용자 지정 텍스트 색상",
|
||
"selectText": {
|
||
"1": "워터마크를 추가할 PDF 선택:",
|
||
"2": "워터마크 텍스트:",
|
||
"3": "글꼴 크기:",
|
||
"4": "회전 (0-360):",
|
||
"5": "가로 간격 (각 워터마크 사이의 가로 간격):",
|
||
"6": "세로 간격 (각 워터마크 사이의 세로 간격):",
|
||
"7": "불투명도 (0% - 100%):",
|
||
"8": "워터마크 유형:",
|
||
"9": "워터마크 이미지:",
|
||
"10": "PDF를 PDF-이미지로 변환"
|
||
}
|
||
},
|
||
"permissions": {
|
||
"tags": "읽기,쓰기,편집,인쇄",
|
||
"title": "권한 변경",
|
||
"header": "권한 변경",
|
||
"warning": "이러한 권한을 변경할 수 없게 하려면 비밀번호 추가 페이지에서 비밀번호와 함께 설정하는 것이 좋습니다",
|
||
"selectText": {
|
||
"1": "권한을 변경할 PDF 선택",
|
||
"2": "설정할 권한",
|
||
"3": "문서 조립 방지",
|
||
"4": "콘텐츠 추출 방지",
|
||
"5": "접근성을 위한 추출 방지",
|
||
"6": "양식 작성 방지",
|
||
"7": "수정 방지",
|
||
"8": "주석 수정 방지",
|
||
"9": "인쇄 방지",
|
||
"10": "다른 형식으로 인쇄 방지"
|
||
},
|
||
"submit": "변경"
|
||
},
|
||
"removePages": {
|
||
"tags": "페이지 제거,페이지 삭제",
|
||
"title": "제거",
|
||
"pageNumbers": {
|
||
"label": "Pages to Remove",
|
||
"placeholder": "e.g., 1,3,5-8,10",
|
||
"error": "Invalid page number format. Use numbers, ranges (1-5), or mathematical expressions (2n+1)"
|
||
},
|
||
"filenamePrefix": "pages_removed",
|
||
"files": {
|
||
"placeholder": "Select a PDF file in the main view to get started"
|
||
},
|
||
"settings": {
|
||
"title": "Settings"
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "Remove Pages Settings"
|
||
},
|
||
"pageNumbers": {
|
||
"title": "Page Selection",
|
||
"text": "Specify which pages to remove from your PDF. You can select individual pages, ranges, or use mathematical expressions.",
|
||
"bullet1": "Individual pages: 1,3,5 (removes pages 1, 3, and 5)",
|
||
"bullet2": "Page ranges: 1-5,10-15 (removes pages 1-5 and 10-15)",
|
||
"bullet3": "Mathematical: 2n+1 (removes odd pages)",
|
||
"bullet4": "Open ranges: 5- (removes from page 5 to end)"
|
||
},
|
||
"examples": {
|
||
"title": "Common Examples",
|
||
"text": "Here are some common page selection patterns:",
|
||
"bullet1": "Remove first page: 1",
|
||
"bullet2": "Remove last 3 pages: -3",
|
||
"bullet3": "Remove every other page: 2n",
|
||
"bullet4": "Remove specific scattered pages: 1,5,10,15"
|
||
},
|
||
"safety": {
|
||
"title": "Safety Tips",
|
||
"text": "Important considerations when removing pages:",
|
||
"bullet1": "Always preview your selection before processing",
|
||
"bullet2": "Keep a backup of your original file",
|
||
"bullet3": "Page numbers start from 1, not 0",
|
||
"bullet4": "Invalid page numbers will be ignored"
|
||
}
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred whilst removing pages."
|
||
},
|
||
"results": {
|
||
"title": "Page Removal Results"
|
||
},
|
||
"submit": "제거"
|
||
},
|
||
"extractPages": {
|
||
"title": "Extract Pages",
|
||
"pageNumbers": {
|
||
"label": "Pages to Extract",
|
||
"placeholder": "e.g., 1,3,5-8 or odd & 1-10"
|
||
},
|
||
"settings": {
|
||
"title": "Settings"
|
||
},
|
||
"tooltip": {
|
||
"description": "Extracts the selected pages into a new PDF, preserving order."
|
||
},
|
||
"error": {
|
||
"failed": "Failed to extract pages"
|
||
},
|
||
"results": {
|
||
"title": "Pages Extracted"
|
||
},
|
||
"submit": "Extract Pages"
|
||
},
|
||
"pageSelection": {
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "Page Selection Guide"
|
||
},
|
||
"basic": {
|
||
"title": "Basic Usage",
|
||
"text": "Select specific pages from your PDF document using simple syntax.",
|
||
"bullet1": "Individual pages: 1,3,5",
|
||
"bullet2": "Page ranges: 3-6 or 10-15",
|
||
"bullet3": "All pages: all"
|
||
},
|
||
"advanced": {
|
||
"title": "Advanced Features"
|
||
},
|
||
"tips": {
|
||
"title": "Tips",
|
||
"text": "Keep these guidelines in mind:",
|
||
"bullet1": "Page numbers start from 1 (not 0)",
|
||
"bullet2": "Spaces are automatically removed",
|
||
"bullet3": "Invalid expressions are ignored"
|
||
},
|
||
"syntax": {
|
||
"title": "Syntax Basics",
|
||
"text": "Use numbers, ranges, keywords, and progressions (n starts at 0). Parentheses are supported.",
|
||
"bullets": {
|
||
"numbers": "Numbers/ranges: 5, 10-20",
|
||
"keywords": "Keywords: odd, even",
|
||
"progressions": "Progressions: 3n, 4n+1"
|
||
}
|
||
},
|
||
"operators": {
|
||
"title": "Operators",
|
||
"text": "AND has higher precedence than comma. NOT applies within the document range.",
|
||
"and": "AND: & or \"and\" — require both conditions (e.g., 1-50 & even)",
|
||
"comma": "Comma: , or | — combine selections (e.g., 1-10, 20)",
|
||
"not": "NOT: ! or \"not\" — exclude pages (e.g., 3n & not 30)"
|
||
},
|
||
"examples": {
|
||
"title": "Examples"
|
||
},
|
||
"complex": {
|
||
"bullet1": "<strong>1,3-5,8,2n</strong> → pages 1, 3–5, 8, plus evens",
|
||
"bullet2": "<strong>10-,2n-1</strong> → from page 10 to end + odd pages",
|
||
"description": "Mix different types.",
|
||
"title": "Complex Combinations"
|
||
},
|
||
"description": "Choose which pages to use for the operation. Supports single pages, ranges, formulas, and the all keyword.",
|
||
"individual": {
|
||
"bullet1": "<strong>1,3,5</strong> → selects pages 1, 3, 5",
|
||
"bullet2": "<strong>2,7,12</strong> → selects pages 2, 7, 12",
|
||
"description": "Enter numbers separated by commas.",
|
||
"title": "Individual Pages"
|
||
},
|
||
"mathematical": {
|
||
"bullet1": "<strong>2n</strong> → all even pages (2, 4, 6…)",
|
||
"bullet2": "<strong>2n-1</strong> → all odd pages (1, 3, 5…)",
|
||
"bullet3": "<strong>3n</strong> → every 3rd page (3, 6, 9…)",
|
||
"bullet4": "<strong>4n-1</strong> → pages 3, 7, 11, 15…",
|
||
"description": "Use n in formulas for patterns.",
|
||
"title": "Mathematical Functions"
|
||
},
|
||
"ranges": {
|
||
"bullet1": "<strong>3-6</strong> → selects pages 3–6",
|
||
"bullet2": "<strong>10-15</strong> → selects pages 10–15",
|
||
"bullet3": "<strong>5-</strong> → selects pages 5 to end",
|
||
"description": "Use - for consecutive pages.",
|
||
"title": "Page Ranges"
|
||
},
|
||
"special": {
|
||
"bullet1": "<strong>all</strong> → selects all pages",
|
||
"title": "Special Keywords"
|
||
}
|
||
}
|
||
},
|
||
"bulkSelection": {
|
||
"syntaxError": "There is a syntax issue. See Page Selection tips for help.",
|
||
"header": {
|
||
"title": "Page Selection Guide"
|
||
},
|
||
"syntax": {
|
||
"title": "Syntax Basics",
|
||
"text": "Use numbers, ranges, keywords, and progressions (n starts at 0). Parentheses are supported.",
|
||
"bullets": {
|
||
"numbers": "Numbers/ranges: 5, 10-20",
|
||
"keywords": "Keywords: odd, even",
|
||
"progressions": "Progressions: 3n, 4n+1"
|
||
}
|
||
},
|
||
"operators": {
|
||
"title": "Operators",
|
||
"text": "AND has higher precedence than comma. NOT applies within the document range.",
|
||
"and": "AND: & or \"and\" — require both conditions (e.g., 1-50 & even)",
|
||
"comma": "Comma: , or | — combine selections (e.g., 1-10, 20)",
|
||
"not": "NOT: ! or \"not\" — exclude pages (e.g., 3n & not 30)"
|
||
},
|
||
"examples": {
|
||
"title": "Examples",
|
||
"first50": "First 50",
|
||
"last50": "Last 50",
|
||
"every3rd": "Every 3rd",
|
||
"oddWithinExcluding": "Odd within 1-20 excluding 5-7",
|
||
"combineSets": "Combine sets"
|
||
},
|
||
"firstNPages": {
|
||
"title": "First N Pages",
|
||
"placeholder": "Number of pages"
|
||
},
|
||
"lastNPages": {
|
||
"title": "Last N Pages",
|
||
"placeholder": "Number of pages"
|
||
},
|
||
"everyNthPage": {
|
||
"title": "Every Nth Page",
|
||
"placeholder": "Step size"
|
||
},
|
||
"range": {
|
||
"title": "Range",
|
||
"fromPlaceholder": "From",
|
||
"toPlaceholder": "To"
|
||
},
|
||
"keywords": {
|
||
"title": "Keywords"
|
||
},
|
||
"advanced": {
|
||
"title": "Advanced"
|
||
}
|
||
},
|
||
"compressPdfs": {
|
||
"tags": "압축,작게,매우 작게"
|
||
},
|
||
"unlockPDFForms": {
|
||
"tags": "remove,delete,form,field,readonly",
|
||
"title": "Remove Read-Only from Form Fields",
|
||
"header": "Unlock PDF Forms",
|
||
"submit": "Remove",
|
||
"description": "This tool will remove read-only restrictions from PDF form fields, making them editable and fillable.",
|
||
"filenamePrefix": "unlocked_forms",
|
||
"files": {
|
||
"placeholder": "Select a PDF file in the main view to get started"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred whilst unlocking PDF forms."
|
||
},
|
||
"results": {
|
||
"title": "Unlocked Forms Results"
|
||
}
|
||
},
|
||
"changeMetadata": {
|
||
"header": "메타데이터 변경",
|
||
"submit": "변경",
|
||
"filenamePrefix": "metadata",
|
||
"settings": {
|
||
"title": "Metadata Settings"
|
||
},
|
||
"standardFields": {
|
||
"title": "Standard Fields"
|
||
},
|
||
"deleteAll": {
|
||
"label": "Remove Existing Metadata",
|
||
"checkbox": "Delete all metadata"
|
||
},
|
||
"title": {
|
||
"label": "Title",
|
||
"placeholder": "Document title"
|
||
},
|
||
"author": {
|
||
"label": "Author",
|
||
"placeholder": "Document author"
|
||
},
|
||
"subject": {
|
||
"label": "Subject",
|
||
"placeholder": "Document subject"
|
||
},
|
||
"keywords": {
|
||
"label": "Keywords",
|
||
"placeholder": "Document keywords"
|
||
},
|
||
"creator": {
|
||
"label": "Creator",
|
||
"placeholder": "Document creator"
|
||
},
|
||
"producer": {
|
||
"label": "Producer",
|
||
"placeholder": "Document producer"
|
||
},
|
||
"dates": {
|
||
"title": "Date Fields"
|
||
},
|
||
"creationDate": {
|
||
"label": "Creation Date",
|
||
"placeholder": "Creation date"
|
||
},
|
||
"modificationDate": {
|
||
"label": "Modification Date",
|
||
"placeholder": "Modification date"
|
||
},
|
||
"trapped": {
|
||
"label": "Trapped Status",
|
||
"unknown": "Unknown",
|
||
"true": "True",
|
||
"false": "False"
|
||
},
|
||
"advanced": {
|
||
"title": "Advanced Options"
|
||
},
|
||
"customFields": {
|
||
"title": "Custom Metadata",
|
||
"description": "Add custom metadata fields to the document",
|
||
"add": "Add Field",
|
||
"key": "Key",
|
||
"keyPlaceholder": "Custom key",
|
||
"value": "Value",
|
||
"valuePlaceholder": "Custom value",
|
||
"remove": "Remove"
|
||
},
|
||
"results": {
|
||
"title": "Updated PDFs"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while changing the PDF metadata."
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "PDF Metadata Overview"
|
||
},
|
||
"standardFields": {
|
||
"title": "Standard Fields",
|
||
"text": "Common PDF metadata fields that describe the document.",
|
||
"bullet1": "Title: Document name or heading",
|
||
"bullet2": "Author: Person who created the document",
|
||
"bullet3": "Subject: Brief description of content",
|
||
"bullet4": "Keywords: Search terms for the document",
|
||
"bullet5": "Creator/Producer: Software used to create the PDF"
|
||
},
|
||
"dates": {
|
||
"title": "Date Fields",
|
||
"text": "When the document was created and modified.",
|
||
"bullet1": "Creation Date: When original document was made",
|
||
"bullet2": "Modification Date: When last changed"
|
||
},
|
||
"options": {
|
||
"title": "Additional Options",
|
||
"text": "Custom fields and privacy controls.",
|
||
"bullet1": "Custom Metadata: Add your own key-value pairs",
|
||
"bullet2": "Trapped Status: High-quality printing setting",
|
||
"bullet3": "Delete All: Remove all metadata for privacy"
|
||
},
|
||
"deleteAll": {
|
||
"title": "Remove Existing Metadata",
|
||
"text": "Complete metadata deletion to ensure privacy."
|
||
},
|
||
"customFields": {
|
||
"title": "Custom Metadata",
|
||
"text": "Add your own custom key-value metadata pairs.",
|
||
"bullet1": "Add any custom fields relevant to your document",
|
||
"bullet2": "Examples: Department, Project, Version, Status",
|
||
"bullet3": "Both key and value are required for each entry"
|
||
},
|
||
"advanced": {
|
||
"title": "Advanced Options",
|
||
"trapped": {
|
||
"title": "Trapped Status",
|
||
"description": "Indicates if document is prepared for high-quality printing.",
|
||
"bullet1": "True: Document has been trapped for printing",
|
||
"bullet2": "False: Document has not been trapped",
|
||
"bullet3": "Unknown: Trapped status is not specified"
|
||
}
|
||
}
|
||
},
|
||
"tags": "제목,저자,날짜,생성,시간,출판사,제작자,통계",
|
||
"selectText": {
|
||
"1": "변경하려는 변수를 편집하세요",
|
||
"2": "모든 메타데이터 삭제",
|
||
"3": "사용자 지정 메타데이터 표시:",
|
||
"4": "기타 메타데이터:",
|
||
"5": "사용자 지정 메타데이터 항목 추가"
|
||
},
|
||
"modDate": "수정 날짜 (yyyy/MM/dd HH:mm:ss):"
|
||
},
|
||
"fileToPDF": {
|
||
"tags": "변환,형식,문서,사진,슬라이드,텍스트,변환,오피스,문서,워드,엑셀,파워포인트",
|
||
"title": "파일을 PDF로",
|
||
"header": "모든 파일을 PDF로 변환",
|
||
"credit": "이 서비스는 파일 변환을 위해 LibreOffice와 Unoconv를 사용합니다.",
|
||
"supportedFileTypesInfo": "지원되는 파일 형식",
|
||
"supportedFileTypes": "지원되는 파일 형식은 아래와 같지만 전체 업데이트된 지원 형식 목록은 LibreOffice 문서를 참조하세요",
|
||
"submit": "PDF로 변환"
|
||
},
|
||
"ocr": {
|
||
"tags": "인식,텍스트,이미지,스캔,읽기,식별,감지,편집 가능",
|
||
"title": "OCR / 스캔 정리",
|
||
"desc": "스캔을 정리하고 PDF 내 이미지에서 텍스트를 감지하여 다시 텍스트로 추가합니다.",
|
||
"header": "스캔 정리 / OCR (광학 문자 인식)",
|
||
"selectText": {
|
||
"1": "PDF에서 감지할 언어 선택 (현재 감지된 언어가 나열됨):",
|
||
"2": "OCR된 PDF와 함께 OCR 텍스트가 포함된 텍스트 파일 생성",
|
||
"3": "기울어진 각도로 스캔된 페이지를 올바른 위치로 회전",
|
||
"4": "OCR이 배경 노이즈에서 텍스트를 찾을 가능성을 줄이도록 페이지 정리 (출력 변경 없음)",
|
||
"5": "OCR이 배경 노이즈에서 텍스트를 찾을 가능성을 줄이도록 페이지 정리, 출력에서 정리 유지",
|
||
"6": "대화형 텍스트가 있는 페이지는 무시하고 이미지 페이지만 OCR",
|
||
"7": "강제 OCR, 모든 원본 텍스트 요소를 제거하고 모든 페이지를 OCR",
|
||
"8": "일반 (PDF에 텍스트가 있으면 오류 발생)",
|
||
"9": "추가 설정",
|
||
"10": "OCR 모드",
|
||
"11": "OCR 후 이미지 제거 (모든 이미지 제거, 변환 단계의 일부인 경우에만 유용)",
|
||
"12": "렌더링 유형 (고급)"
|
||
},
|
||
"help": "다른 언어 사용 방법 및/또는 Docker에서 사용하지 않는 방법에 대한 문서를 읽어보세요",
|
||
"credit": "이 서비스는 OCR을 위해 qpdf와 Tesseract를 사용합니다.",
|
||
"submit": "OCR로 PDF 처리",
|
||
"operation": {
|
||
"submit": "Process OCR and Review"
|
||
},
|
||
"results": {
|
||
"title": "OCR Results"
|
||
},
|
||
"languagePicker": {
|
||
"additionalLanguages": "Looking for additional languages?",
|
||
"viewSetupGuide": "View setup guide →"
|
||
},
|
||
"settings": {
|
||
"title": "설정",
|
||
"ocrMode": {
|
||
"label": "OCR 모드",
|
||
"auto": "Auto (skip text layers)",
|
||
"force": "Force (re-OCR all, replace text)",
|
||
"strict": "Strict (abort if text found)"
|
||
},
|
||
"languages": {
|
||
"label": "언어",
|
||
"placeholder": "Select languages"
|
||
},
|
||
"compatibilityMode": {
|
||
"label": "Compatibility Mode"
|
||
},
|
||
"advancedOptions": {
|
||
"label": "Processing Options",
|
||
"sidecar": "Create a text file",
|
||
"deskew": "Deskew pages",
|
||
"clean": "Clean input file",
|
||
"cleanFinal": "Clean final output"
|
||
}
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "OCR Settings Overview"
|
||
},
|
||
"mode": {
|
||
"title": "OCR 모드",
|
||
"text": "Optical Character Recognition (OCR) helps you turn scanned or screenshotted pages into text you can search, copy, or highlight.",
|
||
"bullet1": "Auto skips pages that already contain text layers.",
|
||
"bullet2": "Force re-OCRs every page and replaces all the text.",
|
||
"bullet3": "Strict halts if any selectable text is found."
|
||
},
|
||
"languages": {
|
||
"title": "언어",
|
||
"text": "Improve OCR accuracy by specifying the expected languages. Choose one or more languages to guide detection."
|
||
},
|
||
"output": {
|
||
"title": "Output",
|
||
"text": "Decide how you want the text output formatted:",
|
||
"bullet1": "Searchable PDF embeds text behind the original image.",
|
||
"bullet2": "HOCR XML returns a structured machine-readable file.",
|
||
"bullet3": "Plain-text sidecar creates a separate .txt file with raw content."
|
||
},
|
||
"advanced": {
|
||
"header": {
|
||
"title": "Advanced OCR Processing"
|
||
},
|
||
"compatibility": {
|
||
"title": "Compatibility Mode",
|
||
"text": "Uses OCR 'sandwich PDF' mode: results in larger files, but more reliable with certain languages and older PDF software. By default we use hOCR for smaller, modern PDFs."
|
||
},
|
||
"sidecar": {
|
||
"title": "Create Text File",
|
||
"text": "Generates a separate .txt file alongside the PDF containing all extracted text content for easy access and processing."
|
||
},
|
||
"deskew": {
|
||
"title": "Deskew Pages",
|
||
"text": "Automatically corrects skewed or tilted pages to improve OCR accuracy. Useful for scanned documents that weren't perfectly aligned."
|
||
},
|
||
"clean": {
|
||
"title": "Clean Input File",
|
||
"text": "Preprocesses the input by removing noise, enhancing contrast, and optimising the image for better OCR recognition before processing."
|
||
},
|
||
"cleanFinal": {
|
||
"title": "Clean Final Output",
|
||
"text": "Post-processes the final PDF by removing OCR artefacts and optimising the text layer for better readability and smaller file size."
|
||
}
|
||
}
|
||
},
|
||
"error": {
|
||
"failed": "OCR operation failed"
|
||
}
|
||
},
|
||
"extractImages": {
|
||
"tags": "사진,저장,아카이브,zip,캡처,가져오기",
|
||
"title": "이미지 추출",
|
||
"header": "이미지 추출",
|
||
"selectText": "추출된 이미지를 변환할 이미지 형식 선택",
|
||
"allowDuplicates": "중복 이미지 저장",
|
||
"submit": "추출",
|
||
"settings": {
|
||
"title": "Settings"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while extracting images from the PDF."
|
||
}
|
||
},
|
||
"pdfToPDFA": {
|
||
"tags": "아카이브,장기,표준,변환,저장,보존",
|
||
"title": "PDF를 PDF/A로",
|
||
"header": "PDF를 PDF/A로",
|
||
"credit": "이 서비스는 PDF/A 변환을 위해 libreoffice를 사용합니다",
|
||
"submit": "변환",
|
||
"tip": "현재 여러 입력을 한 번에 처리할 수 없습니다",
|
||
"outputFormat": "출력 형식",
|
||
"pdfWithDigitalSignature": "PDF에 디지털 서명이 포함되어 있습니다. 다음 단계에서 제거됩니다."
|
||
},
|
||
"PDFToWord": {
|
||
"tags": "doc,docx,odt,워드,변환,형식,변환,오피스,마이크로소프트,docfile",
|
||
"title": "PDF를 Word로",
|
||
"header": "PDF를 Word로",
|
||
"selectText": {
|
||
"1": "출력 파일 형식"
|
||
},
|
||
"credit": "이 서비스는 파일 변환을 위해 LibreOffice를 사용합니다.",
|
||
"submit": "변환"
|
||
},
|
||
"PDFToPresentation": {
|
||
"tags": "슬라이드,쇼,오피스,마이크로소프트",
|
||
"title": "PDF를 프레젠테이션으로",
|
||
"header": "PDF를 프레젠테이션으로",
|
||
"selectText": {
|
||
"1": "출력 파일 형식"
|
||
},
|
||
"credit": "이 서비스는 파일 변환을 위해 LibreOffice를 사용합니다.",
|
||
"submit": "변환"
|
||
},
|
||
"PDFToText": {
|
||
"tags": "서식있는형식,서식있는텍스트형식,서식있는 텍스트 형식",
|
||
"title": "PDF를 RTF(텍스트)로",
|
||
"header": "PDF를 RTF(텍스트)로",
|
||
"selectText": {
|
||
"1": "출력 파일 형식"
|
||
},
|
||
"credit": "이 서비스는 파일 변환을 위해 LibreOffice를 사용합니다.",
|
||
"submit": "변환"
|
||
},
|
||
"PDFToHTML": {
|
||
"tags": "웹 콘텐츠,브라우저 친화적",
|
||
"title": "PDF를 HTML로",
|
||
"header": "PDF를 HTML로",
|
||
"credit": "이 서비스는 파일 변환을 위해 pdftohtml을 사용합니다.",
|
||
"submit": "변환"
|
||
},
|
||
"PDFToXML": {
|
||
"tags": "데이터-추출,구조화-콘텐츠,상호운용성,변환,변환",
|
||
"title": "PDF를 XML로",
|
||
"header": "PDF를 XML로",
|
||
"credit": "이 서비스는 파일 변환을 위해 LibreOffice를 사용합니다.",
|
||
"submit": "변환"
|
||
},
|
||
"ScannerImageSplit": {
|
||
"tags": "분리,자동-감지,스캔,다중-사진,정리",
|
||
"selectText": {
|
||
"1": "각도 임계값:",
|
||
"2": "이미지 회전에 필요한 최소 절대 각도를 설정합니다(기본값: 10).",
|
||
"3": "허용 오차:",
|
||
"4": "예상 배경색 주변의 색상 변화 범위를 결정합니다(기본값: 30).",
|
||
"5": "최소 영역:",
|
||
"6": "사진의 최소 영역 임계값을 설정합니다(기본값: 10000).",
|
||
"7": "최소 윤곽 영역:",
|
||
"8": "사진의 최소 윤곽선 영역 임계값을 설정합니다",
|
||
"9": "테두리 크기:",
|
||
"10": "출력에서 흰색 테두리를 방지하기 위해 추가 및 제거되는 테두리의 크기를 설정합니다(기본값: 1)."
|
||
},
|
||
"info": "Python이 설치되어 있지 않습니다. 실행하는 데 필요합니다."
|
||
},
|
||
"scannerImageSplit": {
|
||
"title": "Extracted Images",
|
||
"submit": "Extract Image Scans",
|
||
"error": {
|
||
"failed": "An error occurred while extracting image scans."
|
||
},
|
||
"tooltip": {
|
||
"title": "Photo Splitter",
|
||
"whatThisDoes": "What this does",
|
||
"whatThisDoesDesc": "Automatically finds and extracts each photo from a scanned page or composite image—no manual cropping.",
|
||
"whenToUse": "When to use",
|
||
"useCase1": "Scan whole album pages in one go",
|
||
"useCase2": "Split flatbed batches into separate files",
|
||
"useCase3": "Break collages into individual photos",
|
||
"useCase4": "Pull photos from documents",
|
||
"quickFixes": "Quick fixes",
|
||
"problem1": "Photos not detected → increase Tolerance to 30-50",
|
||
"problem2": "Too many false detections → increase Minimum Area to 15,000-20,000",
|
||
"problem3": "Crops are too tight → increase Border Size to 5-10",
|
||
"problem4": "Tilted photos not straightened → lower Angle Threshold to ~5°",
|
||
"problem5": "Dust/noise boxes → increase Minimum Contour Area to 1000-2000",
|
||
"setupTips": "Setup tips",
|
||
"tip1": "Use a plain, light background",
|
||
"tip2": "Leave a small gap (≈1 cm) between photos",
|
||
"tip3": "Scan at 300-600 DPI",
|
||
"tip4": "Clean the scanner glass",
|
||
"headsUp": "Heads-up",
|
||
"headsUpDesc": "Overlapping photos or backgrounds very close in colour to the photos can reduce accuracy-try a lighter or darker background and leave more space."
|
||
}
|
||
},
|
||
"sign": {
|
||
"title": "서명",
|
||
"header": "PDF 서명",
|
||
"upload": "이미지 업로드",
|
||
"draw": {
|
||
"title": "Draw your signature",
|
||
"clear": "Clear"
|
||
},
|
||
"text": {
|
||
"name": "Signer Name",
|
||
"placeholder": "Enter your full name"
|
||
},
|
||
"clear": "지우기",
|
||
"add": "추가",
|
||
"saved": "저장된 서명",
|
||
"save": "서명 저장",
|
||
"applySignatures": "Apply Signatures",
|
||
"personalSigs": "개인 서명",
|
||
"sharedSigs": "공유 서명",
|
||
"noSavedSigs": "저장된 서명이 없습니다",
|
||
"addToAll": "모든 페이지에 추가",
|
||
"delete": "삭제",
|
||
"first": "첫 페이지",
|
||
"last": "마지막 페이지",
|
||
"next": "다음 페이지",
|
||
"previous": "이전 페이지",
|
||
"maintainRatio": "종횡비 유지 토글",
|
||
"undo": "Undo",
|
||
"redo": "Redo",
|
||
"submit": "Sign Document",
|
||
"steps": {
|
||
"configure": "Configure Signature"
|
||
},
|
||
"type": {
|
||
"title": "Signature Type",
|
||
"draw": "Draw",
|
||
"canvas": "Canvas",
|
||
"image": "Image",
|
||
"text": "Text"
|
||
},
|
||
"image": {
|
||
"label": "Upload signature image",
|
||
"placeholder": "Select image file",
|
||
"hint": "Upload a PNG or JPG image of your signature"
|
||
},
|
||
"instructions": {
|
||
"title": "How to add signature",
|
||
"canvas": "After drawing your signature in the canvas, close the modal then click anywhere on the PDF to place it.",
|
||
"image": "After uploading your signature image above, click anywhere on the PDF to place it.",
|
||
"text": "After entering your name above, click anywhere on the PDF to place your signature."
|
||
},
|
||
"mode": {
|
||
"move": "Move Signature",
|
||
"place": "Place Signature"
|
||
},
|
||
"updateAndPlace": "Update and Place",
|
||
"activate": "Activate Signature Placement",
|
||
"deactivate": "Stop Placing Signatures",
|
||
"results": {
|
||
"title": "Signature Results"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while signing the PDF."
|
||
},
|
||
"tags": "승인,이니셜,그린-서명,텍스트-서명,이미지-서명"
|
||
},
|
||
"flatten": {
|
||
"title": "평면화",
|
||
"header": "PDF 평면화",
|
||
"flattenOnlyForms": "양식만 평면화",
|
||
"submit": "평면화",
|
||
"filenamePrefix": "flattened",
|
||
"files": {
|
||
"placeholder": "Select a PDF file in the main view to get started"
|
||
},
|
||
"steps": {
|
||
"settings": "설정"
|
||
},
|
||
"options": {
|
||
"stepTitle": "Flatten Options",
|
||
"title": "Flatten Options",
|
||
"flattenOnlyForms": {
|
||
"label": "양식만 평면화",
|
||
"desc": "Only flatten form fields, leaving other interactive elements intact"
|
||
},
|
||
"note": "Flattening removes interactive elements from the PDF, making them non-editable."
|
||
},
|
||
"results": {
|
||
"title": "Flatten Results"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while flattening the PDF."
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "About Flattening PDFs"
|
||
},
|
||
"description": {
|
||
"title": "What does flattening do?",
|
||
"text": "Flattening makes your PDF non-editable by turning fillable forms and buttons into regular text and images. The PDF will look exactly the same, but no one can change or fill in the forms anymore. Perfect for sharing completed forms, creating final documents for records, or ensuring the PDF looks the same everywhere.",
|
||
"bullet1": "Text boxes become regular text (can't be edited)",
|
||
"bullet2": "Checkboxes and buttons become pictures",
|
||
"bullet3": "Great for final versions you don't want changed",
|
||
"bullet4": "Ensures consistent appearance across all devices"
|
||
},
|
||
"formsOnly": {
|
||
"title": "What does 'Flatten only forms' mean?",
|
||
"text": "This option only removes the ability to fill in forms, but keeps other features working like clicking links, viewing bookmarks, and reading comments.",
|
||
"bullet1": "Forms become non-editable",
|
||
"bullet2": "Links still work when clicked",
|
||
"bullet3": "Comments and notes remain visible",
|
||
"bullet4": "Bookmarks still help you navigate"
|
||
}
|
||
},
|
||
"tags": "정적,비활성화,비대화형,간소화"
|
||
},
|
||
"repair": {
|
||
"tags": "수정,복원,교정,복구",
|
||
"title": "복구",
|
||
"header": "PDF 복구",
|
||
"submit": "복구",
|
||
"description": "This tool will attempt to repair corrupted or damaged PDF files. No additional settings are required.",
|
||
"filenamePrefix": "repaired",
|
||
"files": {
|
||
"placeholder": "Select a PDF file in the main view to get started"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred whilst repairing the PDF."
|
||
},
|
||
"results": {
|
||
"title": "Repair Results"
|
||
}
|
||
},
|
||
"removeBlanks": {
|
||
"title": "빈 페이지 제거",
|
||
"header": "빈 페이지 제거",
|
||
"settings": {
|
||
"title": "Settings"
|
||
},
|
||
"threshold": {
|
||
"label": "Pixel Whiteness Threshold"
|
||
},
|
||
"whitePercent": {
|
||
"label": "White Percentage Threshold",
|
||
"unit": "%"
|
||
},
|
||
"includeBlankPages": {
|
||
"label": "Include detected blank pages"
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "Remove Blank Pages Settings"
|
||
},
|
||
"threshold": {
|
||
"title": "Pixel Whiteness Threshold",
|
||
"text": "Controls how white a pixel must be to be considered 'white'. This helps determine what counts as a blank area on the page.",
|
||
"bullet1": "0 = Pure black (most restrictive)",
|
||
"bullet2": "128 = Medium grey",
|
||
"bullet3": "255 = Pure white (least restrictive)"
|
||
},
|
||
"whitePercent": {
|
||
"title": "White Percentage Threshold",
|
||
"text": "Sets the minimum percentage of white pixels required for a page to be considered blank and removed.",
|
||
"bullet1": "Lower values (e.g., 80%) = More pages removed",
|
||
"bullet2": "Higher values (e.g., 95%) = Only very blank pages removed",
|
||
"bullet3": "Use higher values for documents with light backgrounds"
|
||
},
|
||
"includeBlankPages": {
|
||
"title": "Include Detected Blank Pages",
|
||
"text": "When enabled, creates a separate PDF containing all the blank pages that were detected and removed from the original document.",
|
||
"bullet1": "Useful for reviewing what was removed",
|
||
"bullet2": "Helps verify the detection accuracy",
|
||
"bullet3": "Can be disabled to reduce output file size"
|
||
}
|
||
},
|
||
"submit": "빈 페이지 제거",
|
||
"error": {
|
||
"failed": "Failed to remove blank pages"
|
||
},
|
||
"results": {
|
||
"title": "Removed Blank Pages"
|
||
},
|
||
"tags": "정리,간소화,비콘텐츠,정리",
|
||
"thresholdDesc": "흰색 픽셀이 얼마나 흰색이어야 '흰색'으로 분류될지 결정하는 임계값. 0 = 검정, 255 순수 흰색.",
|
||
"whitePercentDesc": "제거되기 위해 필요한 '흰색' 픽셀의 페이지 비율"
|
||
},
|
||
"removeAnnotations": {
|
||
"tags": "댓글,하이라이트,노트,마크업,제거",
|
||
"title": "주석 제거",
|
||
"header": "주석 제거",
|
||
"submit": "제거",
|
||
"settings": {
|
||
"title": "Settings"
|
||
},
|
||
"info": {
|
||
"title": "About Remove Annotations",
|
||
"description": "This tool will remove all annotations (comments, highlights, notes, etc.) from your PDF documents."
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while removing annotations from the PDF."
|
||
}
|
||
},
|
||
"compare": {
|
||
"tags": "차이,대조,변경,분석",
|
||
"title": "비교",
|
||
"header": "PDF 비교",
|
||
"highlightColor": {
|
||
"1": "하이라이트 색상 1:",
|
||
"2": "하이라이트 색상 2:"
|
||
},
|
||
"document": {
|
||
"1": "문서 1",
|
||
"2": "문서 2"
|
||
},
|
||
"submit": "비교",
|
||
"complex": {
|
||
"message": "제공된 문서 중 하나 이상이 큰 파일이므로 비교의 정확도가 떨어질 수 있습니다"
|
||
},
|
||
"large": {
|
||
"file": {
|
||
"message": "제공된 문서 중 하나 이상이 처리하기에 너무 큽니다"
|
||
}
|
||
},
|
||
"no": {
|
||
"text": {
|
||
"message": "선택한 PDF 중 하나 이상에 텍스트 내용이 없습니다. 비교를 위해 텍스트가 있는 PDF를 선택하세요."
|
||
}
|
||
}
|
||
},
|
||
"certSign": {
|
||
"tags": "인증,PEM,P12,공식,암호화",
|
||
"title": "인증서 서명",
|
||
"filenamePrefix": "signed",
|
||
"signMode": {
|
||
"stepTitle": "Sign Mode",
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "About PDF Signatures"
|
||
},
|
||
"overview": {
|
||
"title": "How signatures work",
|
||
"text": "Both modes seal the document (any edits are flagged as tampering) and record who/when/how for auditing. Viewer trust depends on the certificate chain."
|
||
},
|
||
"manual": {
|
||
"title": "Manual - Bring your certificate",
|
||
"text": "Use your own certificate files for brand-aligned identity. Can display <b>Trusted</b> when your CA/chain is recognised.",
|
||
"use": "Use for: customer-facing, legal, compliance."
|
||
},
|
||
"auto": {
|
||
"title": "Auto - Zero-setup, instant system seal",
|
||
"text": "Signs with a server <b>self-signed</b> certificate. Same <b>tamper-evident seal</b> and <b>audit trail</b>; typically shows <b>Unverified</b> in viewers.",
|
||
"use": "Use when: you need speed and consistent internal identity across reviews and records."
|
||
},
|
||
"rule": {
|
||
"title": "Rule of thumb",
|
||
"text": "Need recipient <b>Trusted</b> status? <b>Manual</b>. Need a fast, tamper-evident seal and audit trail with no setup? <b>Auto</b>."
|
||
}
|
||
}
|
||
},
|
||
"certTypeStep": {
|
||
"stepTitle": "Certificate Format"
|
||
},
|
||
"certFiles": {
|
||
"stepTitle": "Certificate Files"
|
||
},
|
||
"appearance": {
|
||
"stepTitle": "Signature Appearance",
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "About Signature Appearance"
|
||
},
|
||
"invisible": {
|
||
"title": "Invisible Signatures",
|
||
"text": "The signature is added to the PDF for security but won't be visible when viewing the document. Perfect for legal requirements without changing the document's appearance.",
|
||
"bullet1": "Provides security without visual changes",
|
||
"bullet2": "Meets legal requirements for digital signing",
|
||
"bullet3": "Doesn't affect document layout or design"
|
||
},
|
||
"visible": {
|
||
"title": "Visible Signatures",
|
||
"text": "Shows a signature block on the PDF with your name, date, and optional details. Useful when you want readers to clearly see the document is signed.",
|
||
"bullet1": "Shows signer name and date on the document",
|
||
"bullet2": "Can include reason and location for signing",
|
||
"bullet3": "Choose which page to place the signature",
|
||
"bullet4": "Optional logo can be included"
|
||
}
|
||
},
|
||
"invisible": "Invisible",
|
||
"options": {
|
||
"title": "Signature Details"
|
||
},
|
||
"visible": "Visible"
|
||
},
|
||
"sign": {
|
||
"submit": "Sign PDF",
|
||
"results": "Signed PDF"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred whilst processing signatures."
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "About Managing Signatures"
|
||
},
|
||
"overview": {
|
||
"title": "What can this tool do?",
|
||
"text": "This tool lets you check if your PDFs are digitally signed and add new digital signatures. Digital signatures prove who created or approved a document and show if it has been changed since signing.",
|
||
"bullet1": "Check existing signatures and their validity",
|
||
"bullet2": "View detailed information about signers and certificates",
|
||
"bullet3": "Add new digital signatures to secure your documents",
|
||
"bullet4": "Multiple files supported with easy navigation"
|
||
},
|
||
"validation": {
|
||
"title": "Checking Signatures",
|
||
"text": "When you check signatures, the tool tells you if they're valid, who signed the document, when it was signed, and whether the document has been changed since signing.",
|
||
"bullet1": "Shows if signatures are valid or invalid",
|
||
"bullet2": "Displays signer information and signing date",
|
||
"bullet3": "Checks if the document was modified after signing",
|
||
"bullet4": "Can use custom certificates for verification"
|
||
},
|
||
"signing": {
|
||
"title": "Adding Signatures",
|
||
"text": "To sign a PDF, you need a digital certificate (like PEM, PKCS12, or JKS). You can choose to make the signature visible on the document or keep it invisible for security only.",
|
||
"bullet1": "Supports PEM, PKCS12, JKS, and server certificate formats",
|
||
"bullet2": "Option to show or hide signature on the PDF",
|
||
"bullet3": "Add reason, location, and signer name",
|
||
"bullet4": "Choose which page to place visible signatures",
|
||
"bullet5": "Use server certificate for simple 'Sign with Stirling-PDF' option"
|
||
}
|
||
},
|
||
"certType": {
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "About Certificate Types"
|
||
},
|
||
"what": {
|
||
"title": "What's a certificate?",
|
||
"text": "It's a secure ID for your signature that proves you signed. Unless you're required to sign via certificate, we recommend using another secure method like Type, Draw, or Upload."
|
||
},
|
||
"which": {
|
||
"title": "Which option should I use?",
|
||
"text": "Choose the format that matches your certificate file:",
|
||
"bullet1": "PKCS#12 (.p12 / .pfx) – one combined file (most common)",
|
||
"bullet2": "PFX (.pfx) – Microsoft's version of PKCS12",
|
||
"bullet3": "PEM – separate private-key and certificate .pem files",
|
||
"bullet4": "JKS – Java .jks keystore for dev / CI-CD workflows"
|
||
},
|
||
"convert": {
|
||
"title": "Key not listed?",
|
||
"text": "Convert your file to a Java keystore (.jks) with keytool, then pick JKS."
|
||
}
|
||
}
|
||
},
|
||
"chooseCertificate": "Choose Certificate File",
|
||
"chooseJksFile": "Choose JKS File",
|
||
"chooseP12File": "Choose PKCS12 File",
|
||
"choosePfxFile": "Choose PFX File",
|
||
"choosePrivateKey": "Choose Private Key File",
|
||
"location": "위치",
|
||
"logoTitle": "Logo",
|
||
"name": "이름",
|
||
"noLogo": "No Logo",
|
||
"pageNumber": "Page Number",
|
||
"password": "키스토어 또는 개인 키 비밀번호 입력 (있는 경우):",
|
||
"passwordOptional": "Leave empty if no password",
|
||
"reason": "사유",
|
||
"serverCertMessage": "Using server certificate - no files or password required",
|
||
"showLogo": "로고 표시",
|
||
"header": "인증서로 PDF 서명 (개발 중)",
|
||
"selectPDF": "서명할 PDF 파일 선택:",
|
||
"jksNote": "참고: 인증서 유형이 아래에 나열되지 않은 경우 keytool 명령줄 도구를 사용하여 Java 키스토어(.jks) 파일로 변환한 다음 아래의 .jks 파일 옵션을 선택하세요.",
|
||
"selectKey": "개인 키 파일 선택 (PKCS#8 형식, .pem 또는 .der):",
|
||
"selectCert": "인증서 파일 선택 (X.509 형식, .pem 또는 .der):",
|
||
"selectP12": "PKCS#12 키스토어 파일 선택 (.p12 또는 .pfx) (선택 사항, 제공하는 경우 개인 키와 인증서 포함):",
|
||
"selectJKS": "Java 키스토어 파일 선택 (.jks 또는 .keystore):",
|
||
"showSig": "서명 표시",
|
||
"submit": "PDF 서명"
|
||
},
|
||
"removeCertSign": {
|
||
"tags": "인증,PEM,P12,공식,복호화",
|
||
"title": "인증서 서명 제거",
|
||
"header": "PDF에서 디지털 서명 제거",
|
||
"selectPDF": "PDF 파일 선택:",
|
||
"submit": "서명 제거",
|
||
"description": "This tool will remove digital certificate signatures from your PDF document.",
|
||
"filenamePrefix": "unsigned",
|
||
"files": {
|
||
"placeholder": "Select a PDF file in the main view to get started"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred whilst removing certificate signatures."
|
||
},
|
||
"results": {
|
||
"title": "Certificate Removal Results"
|
||
}
|
||
},
|
||
"pageLayout": {
|
||
"tags": "병합,합성,단일-보기,정리",
|
||
"title": "다중 페이지 레이아웃",
|
||
"header": "다중 페이지 레이아웃",
|
||
"pagesPerSheet": "시트당 페이지 수:",
|
||
"addBorder": "테두리 추가",
|
||
"submit": "제출",
|
||
"desc": {
|
||
"2": "Place 2 pages side-by-side on a single sheet.",
|
||
"3": "Place 3 pages on a single sheet in a single row.",
|
||
"4": "Place 4 pages on a single sheet (2 × 2 grid).",
|
||
"9": "Place 9 pages on a single sheet (3 × 3 grid).",
|
||
"16": "Place 16 pages on a single sheet (4 × 4 grid)."
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while creating the multi-page layout."
|
||
}
|
||
},
|
||
"bookletImposition": {
|
||
"tags": "booklet,imposition,printing,binding,folding,signature",
|
||
"title": "Booklet Imposition",
|
||
"header": "Booklet Imposition",
|
||
"submit": "Create Booklet",
|
||
"spineLocation": {
|
||
"label": "Spine Location",
|
||
"left": "Left (Standard)",
|
||
"right": "Right (RTL)"
|
||
},
|
||
"doubleSided": {
|
||
"label": "Double-sided printing",
|
||
"tooltip": "Creates both front and back sides for proper booklet printing"
|
||
},
|
||
"manualDuplex": {
|
||
"title": "Manual Duplex Mode",
|
||
"instructions": "For printers without automatic duplex. You'll need to run this twice:"
|
||
},
|
||
"duplexPass": {
|
||
"label": "Print Pass",
|
||
"first": "1st Pass",
|
||
"second": "2nd Pass",
|
||
"firstInstructions": "Prints front sides → stack face-down → run again with 2nd Pass",
|
||
"secondInstructions": "Load printed stack face-down → prints back sides"
|
||
},
|
||
"rtlBinding": {
|
||
"label": "Right-to-left binding",
|
||
"tooltip": "For Arabic, Hebrew, or other right-to-left languages"
|
||
},
|
||
"addBorder": {
|
||
"label": "Add borders around pages",
|
||
"tooltip": "Adds borders around each page section to help with cutting and alignment"
|
||
},
|
||
"addGutter": {
|
||
"label": "Add gutter margin",
|
||
"tooltip": "Adds inner margin space for binding"
|
||
},
|
||
"gutterSize": {
|
||
"label": "Gutter size (points)"
|
||
},
|
||
"flipOnShortEdge": {
|
||
"label": "Flip on short edge (automatic duplex only)",
|
||
"tooltip": "Enable for short-edge duplex printing (automatic duplex only - ignored in manual mode)",
|
||
"manualNote": "Not needed in manual mode - you flip the stack yourself"
|
||
},
|
||
"advanced": {
|
||
"toggle": "Advanced Options"
|
||
},
|
||
"paperSizeNote": "Paper size is automatically derived from your first page.",
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "Booklet Creation Guide"
|
||
},
|
||
"description": {
|
||
"title": "What is Booklet Imposition?",
|
||
"text": "Creates professional booklets by arranging pages in the correct printing order. Your PDF pages are placed 2-up on landscape sheets so when folded and bound, they read in proper sequence like a real book."
|
||
},
|
||
"example": {
|
||
"title": "Example: 8-Page Booklet",
|
||
"text": "Your 8-page document becomes 2 sheets:",
|
||
"bullet1": "Sheet 1 Front: Pages 8, 1 | Back: Pages 2, 7",
|
||
"bullet2": "Sheet 2 Front: Pages 6, 3 | Back: Pages 4, 5",
|
||
"bullet3": "When folded & stacked: Reads 1→2→3→4→5→6→7→8"
|
||
},
|
||
"printing": {
|
||
"title": "How to Print & Assemble",
|
||
"text": "Follow these steps for perfect booklets:",
|
||
"bullet1": "Print double-sided with 'Flip on long edge'",
|
||
"bullet2": "Stack sheets in order, fold in half",
|
||
"bullet3": "Staple or bind along the folded spine",
|
||
"bullet4": "For short-edge printers: Enable 'Flip on short edge' option"
|
||
},
|
||
"manualDuplex": {
|
||
"title": "Manual Duplex (Single-sided Printers)",
|
||
"text": "For printers without automatic duplex:",
|
||
"bullet1": "Turn OFF 'Double-sided printing'",
|
||
"bullet2": "Select '1st Pass' → Print → Stack face-down",
|
||
"bullet3": "Select '2nd Pass' → Load stack → Print backs",
|
||
"bullet4": "Fold and assemble as normal"
|
||
},
|
||
"advanced": {
|
||
"title": "Advanced Options",
|
||
"text": "Fine-tune your booklet:",
|
||
"bullet1": "Right-to-Left Binding: For Arabic, Hebrew, or RTL languages",
|
||
"bullet2": "Borders: Shows cut lines for trimming",
|
||
"bullet3": "Gutter Margin: Adds space for binding/stapling",
|
||
"bullet4": "Short-edge Flip: Only for automatic duplex printers"
|
||
}
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while creating the booklet imposition."
|
||
}
|
||
},
|
||
"scalePages": {
|
||
"title": "페이지 크기 조정",
|
||
"header": "페이지 크기 조정",
|
||
"pageSize": "문서 페이지의 크기입니다.",
|
||
"keepPageSize": "원본 크기",
|
||
"scaleFactor": "페이지의 확대/축소 레벨(잘라내기).",
|
||
"submit": "제출",
|
||
"tags": "크기조정,수정,치수,조정"
|
||
},
|
||
"adjustPageScale": {
|
||
"tags": "resize,modify,dimension,adapt",
|
||
"title": "Adjust Page Scale",
|
||
"header": "Adjust Page Scale",
|
||
"scaleFactor": {
|
||
"label": "Scale Factor"
|
||
},
|
||
"pageSize": {
|
||
"label": "Target Page Size",
|
||
"keep": "Keep Original Size",
|
||
"letter": "Letter",
|
||
"legal": "Legal"
|
||
},
|
||
"submit": "Adjust Page Scale",
|
||
"error": {
|
||
"failed": "An error occurred while adjusting the page scale."
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "Page Scale Settings Overview"
|
||
},
|
||
"description": {
|
||
"title": "Description",
|
||
"text": "Adjust the size of PDF content and change the page dimensions."
|
||
},
|
||
"scaleFactor": {
|
||
"title": "Scale Factor",
|
||
"text": "Controls how large or small the content appears on the page. Content is scaled and centred - if scaled content is larger than the page size, it may be cropped.",
|
||
"bullet1": "1.0 = Original size",
|
||
"bullet2": "0.5 = Half size (50% smaller)",
|
||
"bullet3": "2.0 = Double size (200% larger, may crop)"
|
||
},
|
||
"pageSize": {
|
||
"title": "Target Page Size",
|
||
"text": "Sets the dimensions of the output PDF pages. 'Keep Original Size' maintains current dimensions, whilst other options resize to standard paper sizes."
|
||
}
|
||
}
|
||
},
|
||
"add-page-numbers": {
|
||
"tags": "페이지매김,레이블,정리,색인"
|
||
},
|
||
"auto-rename": {
|
||
"tags": "자동-감지,헤더-기반,정리,재레이블링",
|
||
"title": "자동 이름 변경",
|
||
"header": "PDF 자동 이름 변경",
|
||
"description": "Automatically finds the title from your PDF content and uses it as the filename.",
|
||
"submit": "자동 이름 변경",
|
||
"files": {
|
||
"placeholder": "Select a PDF file in the main view to get started"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred whilst auto-renaming the PDF."
|
||
},
|
||
"results": {
|
||
"title": "Auto-Rename Results"
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "How Auto-Rename Works"
|
||
},
|
||
"howItWorks": {
|
||
"title": "Smart Renaming",
|
||
"text": "Automatically finds the title from your PDF content and uses it as the filename.",
|
||
"bullet1": "Looks for text that appears to be a title or heading",
|
||
"bullet2": "Creates a clean, valid filename from the detected title",
|
||
"bullet3": "Keeps the original name if no suitable title is found"
|
||
}
|
||
}
|
||
},
|
||
"adjust-contrast": {
|
||
"tags": "색상-보정,조정,수정,향상"
|
||
},
|
||
"crop": {
|
||
"title": "자르기",
|
||
"header": "PDF 자르기",
|
||
"submit": "제출",
|
||
"noFileSelected": "Select a PDF file to begin cropping",
|
||
"preview": {
|
||
"title": "Crop Area Selection"
|
||
},
|
||
"reset": "Reset to full PDF",
|
||
"coordinates": {
|
||
"title": "Position and Size",
|
||
"x": {
|
||
"label": "X Position",
|
||
"desc": "Left edge (points)"
|
||
},
|
||
"y": {
|
||
"label": "Y Position",
|
||
"desc": "Bottom edge (points)"
|
||
},
|
||
"width": {
|
||
"label": "Width",
|
||
"desc": "Crop width (points)"
|
||
},
|
||
"height": {
|
||
"label": "Height",
|
||
"desc": "Crop height (points)"
|
||
}
|
||
},
|
||
"error": {
|
||
"invalidArea": "Crop area extends beyond PDF boundaries",
|
||
"failed": "Failed to crop PDF"
|
||
},
|
||
"steps": {
|
||
"selectArea": "Select Crop Area"
|
||
},
|
||
"tooltip": {
|
||
"title": "How to Crop PDFs",
|
||
"description": "Select the area to crop from your PDF by dragging and resizing the blue overlay on the thumbnail.",
|
||
"drag": "Drag the overlay to move the crop area",
|
||
"resize": "Drag the corner and edge handles to resize",
|
||
"precision": "Use coordinate inputs for precise positioning"
|
||
},
|
||
"results": {
|
||
"title": "Crop Results"
|
||
},
|
||
"automation": {
|
||
"info": "Enter crop coordinates in PDF points. Origin (0,0) is at bottom-left. These values will be applied to all PDFs processed in this automation.",
|
||
"reference": "Reference: A4 page is 595.28 × 841.89 points (210mm × 297mm). 1 inch = 72 points."
|
||
},
|
||
"tags": "트림,축소,편집,모양"
|
||
},
|
||
"autoSplitPDF": {
|
||
"tags": "QR-기반,분리,스캔-세그먼트,정리",
|
||
"title": "자동 PDF 분할",
|
||
"header": "자동 PDF 분할",
|
||
"description": "인쇄하고, 삽입하고, 스캔하고, 업로드하면 나머지는 자동으로 처리됩니다. 수동 정렬 작업이 필요 없습니다.",
|
||
"selectText": {
|
||
"1": "아래에서 구분자 시트를 인쇄하세요 (흑백도 괜찮습니다).",
|
||
"2": "문서 사이에 구분자 시트를 넣고 한 번에 모든 문서를 스캔하세요.",
|
||
"3": "스캔한 단일 PDF 파일을 업로드하고 나머지는 Stirling PDF가 처리합니다.",
|
||
"4": "구분자 페이지는 자동으로 감지되고 제거되어 깔끔한 최종 문서를 보장합니다."
|
||
},
|
||
"formPrompt": "Stirling-PDF 페이지 구분자가 포함된 PDF 제출:",
|
||
"duplexMode": "양면 모드 (앞뒷면 스캔)",
|
||
"dividerDownload2": "'자동 분할 구분자 (설명 포함)' PDF 다운로드",
|
||
"submit": "제출"
|
||
},
|
||
"sanitizePdf": {
|
||
"tags": "청소,보안,안전,위협-제거"
|
||
},
|
||
"URLToPDF": {
|
||
"tags": "웹-캡처,페이지-저장,웹-문서,아카이브",
|
||
"title": "URL을 PDF로",
|
||
"header": "URL을 PDF로",
|
||
"submit": "변환",
|
||
"credit": "WeasyPrint 사용"
|
||
},
|
||
"HTMLToPDF": {
|
||
"tags": "마크업,웹-콘텐츠,변환,변환",
|
||
"title": "HTML을 PDF로",
|
||
"header": "HTML을 PDF로",
|
||
"help": "HTML 파일과 html/css/이미지 등이 포함된 ZIP을 허용합니다",
|
||
"submit": "변환",
|
||
"credit": "WeasyPrint 사용",
|
||
"zoom": "웹사이트 표시를 위한 확대/축소 레벨입니다.",
|
||
"pageWidth": "페이지 너비 - 센티미터 단위 (기본값은 비워두기)",
|
||
"pageHeight": "페이지 높이 - 센티미터 단위 (기본값은 비워두기)",
|
||
"marginTop": "페이지 상단 여백 - 밀리미터 단위 (기본값은 비워두기)",
|
||
"marginBottom": "페이지 하단 여백 - 밀리미터 단위 (기본값은 비워두기)",
|
||
"marginLeft": "페이지 왼쪽 여백 - 밀리미터 단위 (기본값은 비워두기)",
|
||
"marginRight": "페이지 오른쪽 여백 - 밀리미터 단위 (기본값은 비워두기)",
|
||
"printBackground": "웹사이트의 배경을 렌더링합니다.",
|
||
"defaultHeader": "기본 헤더 활성화 (이름 및 페이지 번호)",
|
||
"cssMediaType": "페이지의 CSS 미디어 유형을 변경합니다.",
|
||
"none": "없음",
|
||
"print": "인쇄",
|
||
"screen": "화면"
|
||
},
|
||
"MarkdownToPDF": {
|
||
"tags": "마크업,웹-콘텐츠,변환,변환,md",
|
||
"title": "Markdown을 PDF로",
|
||
"header": "Markdown을 PDF로",
|
||
"submit": "변환",
|
||
"help": "작업 진행 중",
|
||
"credit": "WeasyPrint 사용"
|
||
},
|
||
"PDFToMarkdown": {
|
||
"tags": "마크업,웹-콘텐츠,변환,변환,md",
|
||
"title": "PDF를 Markdown으로",
|
||
"header": "PDF를 Markdown으로",
|
||
"submit": "변환"
|
||
},
|
||
"getPdfInfo": {
|
||
"tags": "정보,데이터,통계,통계",
|
||
"title": "PDF 정보 가져오기",
|
||
"header": "PDF 정보 가져오기",
|
||
"submit": "정보 가져오기",
|
||
"downloadJson": "JSON 다운로드"
|
||
},
|
||
"extractPage": {
|
||
"tags": "추출"
|
||
},
|
||
"PdfToSinglePage": {
|
||
"tags": "단일 페이지"
|
||
},
|
||
"showJS": {
|
||
"tags": "JS",
|
||
"title": "JavaScript 보기",
|
||
"header": "JavaScript 보기",
|
||
"downloadJS": "JavaScript 다운로드",
|
||
"submit": "보기"
|
||
},
|
||
"redact": {
|
||
"tags": "검열,숨김,검게-가림,검은색,마커,숨김,수동",
|
||
"title": "수동 검열",
|
||
"submit": "검열",
|
||
"error": {
|
||
"failed": "An error occurred while redacting the PDF."
|
||
},
|
||
"modeSelector": {
|
||
"title": "Redaction Method",
|
||
"mode": "Mode",
|
||
"automatic": "Automatic",
|
||
"automaticDesc": "Redact text based on search terms",
|
||
"manual": "Manual",
|
||
"manualDesc": "Click and drag to redact specific areas",
|
||
"manualComingSoon": "Manual redaction coming soon"
|
||
},
|
||
"auto": {
|
||
"header": "Auto Redact",
|
||
"settings": {
|
||
"title": "Redaction Settings",
|
||
"advancedTitle": "고급"
|
||
},
|
||
"colorLabel": "Box Colour",
|
||
"wordsToRedact": {
|
||
"title": "Words to Redact",
|
||
"placeholder": "Enter a word",
|
||
"add": "추가",
|
||
"examples": "Examples: Confidential, Top-Secret"
|
||
},
|
||
"useRegexLabel": "Use Regex",
|
||
"wholeWordSearchLabel": "Whole Word Search",
|
||
"customPaddingLabel": "Custom Extra Padding",
|
||
"convertPDFToImageLabel": "Convert PDF to PDF-Image"
|
||
},
|
||
"tooltip": {
|
||
"mode": {
|
||
"header": {
|
||
"title": "Redaction Method"
|
||
},
|
||
"automatic": {
|
||
"title": "Automatic Redaction",
|
||
"text": "Automatically finds and redacts specified text throughout the document. Perfect for removing consistent sensitive information like names, addresses, or confidential markers."
|
||
},
|
||
"manual": {
|
||
"title": "Manual Redaction",
|
||
"text": "Click and drag to manually select specific areas to redact. Gives you precise control over what gets redacted. (Coming soon)"
|
||
}
|
||
},
|
||
"words": {
|
||
"header": {
|
||
"title": "Words to Redact"
|
||
},
|
||
"description": {
|
||
"title": "Text Matching",
|
||
"text": "Enter words or phrases to find and redact in your document. Each word will be searched for separately."
|
||
},
|
||
"bullet1": "Add one word at a time",
|
||
"bullet2": "Press Enter or click 'Add Another' to add",
|
||
"bullet3": "Click × to remove words",
|
||
"examples": {
|
||
"title": "Common Examples",
|
||
"text": "Typical words to redact include: bank details, email addresses, or specific names."
|
||
}
|
||
},
|
||
"advanced": {
|
||
"header": {
|
||
"title": "Advanced Redaction Settings"
|
||
},
|
||
"color": {
|
||
"title": "Box Colour & Padding",
|
||
"text": "Customise the appearance of redaction boxes. Black is standard, but you can choose any colour. Padding adds extra space around the found text."
|
||
},
|
||
"regex": {
|
||
"title": "Use Regex",
|
||
"text": "Enable regular expressions for advanced pattern matching. Useful for finding phone numbers, emails, or complex patterns.",
|
||
"bullet1": "Example: \\d{4}-\\d{2}-\\d{2} to match any dates in YYYY-MM-DD format",
|
||
"bullet2": "Use with caution - test thoroughly"
|
||
},
|
||
"wholeWord": {
|
||
"title": "Whole Word Search",
|
||
"text": "Only match complete words, not partial matches. 'John' won't match 'Johnson' when enabled."
|
||
},
|
||
"convert": {
|
||
"title": "Convert to PDF-Image",
|
||
"text": "Converts the PDF to an image-based PDF after redaction. This ensures text behind redaction boxes is completely removed and unrecoverable."
|
||
}
|
||
}
|
||
},
|
||
"manual": {
|
||
"header": "Manual Redaction",
|
||
"textBasedRedaction": "Text-based Redaction",
|
||
"pageBasedRedaction": "Page-based Redaction",
|
||
"convertPDFToImageLabel": "Convert PDF to PDF-Image (Used to remove text behind the box)",
|
||
"pageRedactionNumbers": {
|
||
"title": "페이지",
|
||
"placeholder": "(예: 1,2,8 또는 4,7,12-16 또는 2n-1)"
|
||
},
|
||
"redactionColor": {
|
||
"title": "Redaction Colour"
|
||
},
|
||
"export": "내보내기",
|
||
"upload": "Upload",
|
||
"boxRedaction": "Box draw redaction",
|
||
"zoom": "Zoom",
|
||
"zoomIn": "Zoom in",
|
||
"zoomOut": "Zoom out",
|
||
"nextPage": "Next Page",
|
||
"previousPage": "Previous Page",
|
||
"toggleSidebar": "Toggle Sidebar",
|
||
"showThumbnails": "Show Thumbnails",
|
||
"showDocumentOutline": "Show Document Outline (double-click to expand/collapse all items)",
|
||
"showAttachments": "Show Attachments",
|
||
"showLayers": "Show Layers (double-click to reset all layers to the default state)",
|
||
"colourPicker": "Colour Picker",
|
||
"findCurrentOutlineItem": "Find current outline item",
|
||
"applyChanges": "Apply Changes"
|
||
},
|
||
"header": "수동 검열",
|
||
"textBasedRedaction": "텍스트 기반 검열",
|
||
"pageBasedRedaction": "페이지 기반 검열",
|
||
"convertPDFToImageLabel": "PDF를 PDF-이미지로 변환 (박스 뒤의 텍스트 제거에 사용)",
|
||
"pageRedactionNumbers": {
|
||
"title": "페이지",
|
||
"placeholder": "(예: 1,2,8 또는 4,7,12-16 또는 2n-1)"
|
||
},
|
||
"redactionColor": {
|
||
"title": "검열 색상"
|
||
},
|
||
"export": "내보내기",
|
||
"upload": "업로드",
|
||
"boxRedaction": "박스 그리기 검열",
|
||
"zoom": "확대/축소",
|
||
"zoomIn": "확대",
|
||
"zoomOut": "축소",
|
||
"nextPage": "다음 페이지",
|
||
"previousPage": "이전 페이지",
|
||
"toggleSidebar": "사이드바 토글",
|
||
"showThumbnails": "썸네일 보기",
|
||
"showDocumentOutline": "문서 개요 보기 (더블클릭하여 모든 항목 확장/축소)",
|
||
"showAttatchments": "첨부 파일 보기",
|
||
"showLayers": "레이어 보기 (더블클릭하여 모든 레이어를 기본 상태로 재설정)",
|
||
"colourPicker": "색상 선택기",
|
||
"findCurrentOutlineItem": "현재 개요 항목 찾기",
|
||
"applyChanges": "Apply Changes"
|
||
},
|
||
"tableExtraxt": {
|
||
"tags": "CSV,테이블-추출,추출,변환"
|
||
},
|
||
"autoSizeSplitPDF": {
|
||
"tags": "pdf,분할,문서,정리"
|
||
},
|
||
"overlay-pdfs": {
|
||
"tags": "오버레이",
|
||
"header": "PDF 파일 오버레이",
|
||
"title": "Overlay PDFs",
|
||
"desc": "Overlay one PDF on top of another",
|
||
"baseFile": {
|
||
"label": "기본 PDF 파일 선택"
|
||
},
|
||
"overlayFiles": {
|
||
"label": "오버레이 PDF 파일 선택",
|
||
"placeholder": "Choose PDF(s)...",
|
||
"addMore": "Add more PDFs..."
|
||
},
|
||
"mode": {
|
||
"label": "오버레이 모드 선택",
|
||
"sequential": "순차 오버레이",
|
||
"interleaved": "인터리브 오버레이",
|
||
"fixedRepeat": "고정 반복 오버레이"
|
||
},
|
||
"counts": {
|
||
"label": "오버레이 횟수 (고정 반복 모드용)",
|
||
"placeholder": "쉼표로 구분된 횟수 입력 (예: 2,3,1)",
|
||
"item": "Count for file",
|
||
"noFiles": "Add overlay files to configure counts"
|
||
},
|
||
"position": {
|
||
"label": "오버레이 위치 선택",
|
||
"foreground": "전경",
|
||
"background": "배경"
|
||
},
|
||
"submit": "제출",
|
||
"settings": {
|
||
"title": "Settings"
|
||
},
|
||
"results": {
|
||
"title": "Overlay Results"
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "Overlay PDFs Overview"
|
||
},
|
||
"description": {
|
||
"title": "Description",
|
||
"text": "Combine a base PDF with one or more overlay PDFs. Overlays can be applied page-by-page in different modes and placed in the foreground or background."
|
||
},
|
||
"mode": {
|
||
"title": "Overlay Mode",
|
||
"text": "Choose how to distribute overlay pages across the base PDF pages.",
|
||
"sequential": "Sequential Overlay: Use pages from the first overlay PDF until it ends, then move to the next.",
|
||
"interleaved": "Interleaved Overlay: Take one page from each overlay in turn.",
|
||
"fixedRepeat": "Fixed Repeat Overlay: Take a set number of pages from each overlay before moving to the next. Use Counts to set the numbers."
|
||
},
|
||
"position": {
|
||
"title": "Overlay Position",
|
||
"text": "Foreground places the overlay on top of the page. Background places it behind."
|
||
},
|
||
"overlayFiles": {
|
||
"title": "Overlay Files",
|
||
"text": "Select one or more PDFs to overlay on the base. The order of these files affects how pages are applied in Sequential and Fixed Repeat modes."
|
||
},
|
||
"counts": {
|
||
"title": "Counts (Fixed Repeat only)",
|
||
"text": "Provide a positive number for each overlay file showing how many pages to take before moving to the next. Required when mode is Fixed Repeat."
|
||
}
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while overlaying PDFs."
|
||
}
|
||
},
|
||
"split-by-sections": {
|
||
"tags": "섹션 분할,나누기,사용자 지정",
|
||
"title": "섹션별 PDF 분할",
|
||
"header": "PDF를 섹션으로 분할",
|
||
"horizontal": {
|
||
"label": "수평 분할",
|
||
"placeholder": "수평 분할 수 입력"
|
||
},
|
||
"vertical": {
|
||
"label": "수직 분할",
|
||
"placeholder": "수직 분할 수 입력"
|
||
},
|
||
"submit": "PDF 분할",
|
||
"merge": "하나의 PDF로 병합"
|
||
},
|
||
"AddStampRequest": {
|
||
"tags": "스탬프,이미지 추가,중앙 이미지,워터마크,PDF,삽입,사용자 지정",
|
||
"header": "PDF 스탬프",
|
||
"title": "PDF 스탬프",
|
||
"stampSetup": "Stamp Setup",
|
||
"stampType": "스탬프 유형",
|
||
"stampText": "스탬프 텍스트",
|
||
"stampImage": "스탬프 이미지",
|
||
"alphabet": "알파벳",
|
||
"fontSize": "글꼴/이미지 크기",
|
||
"rotation": "회전",
|
||
"opacity": "불투명도",
|
||
"position": "위치",
|
||
"overrideX": "X 좌표 재정의",
|
||
"overrideY": "Y 좌표 재정의",
|
||
"customMargin": "사용자 지정 여백",
|
||
"customColor": "사용자 지정 텍스트 색상",
|
||
"submit": "제출",
|
||
"noStampSelected": "No stamp selected. Return to Step 1.",
|
||
"customPosition": "Drag the stamp to the desired location in the preview window.",
|
||
"error": {
|
||
"failed": "An error occurred while adding stamp to the PDF."
|
||
},
|
||
"imageSize": "Image Size",
|
||
"margin": "Margin",
|
||
"positionAndFormatting": "Position & Formatting",
|
||
"quickPosition": "Select a position on the page to place the stamp.",
|
||
"results": {
|
||
"title": "Stamp Results"
|
||
}
|
||
},
|
||
"removeImagePdf": {
|
||
"tags": "이미지 제거,페이지 작업,백엔드,서버 사이드"
|
||
},
|
||
"splitPdfByChapters": {
|
||
"tags": "분할,챕터,북마크,정리"
|
||
},
|
||
"validateSignature": {
|
||
"tags": "서명,확인,검증,pdf,인증서,디지털 서명,서명 검증,인증서 검증",
|
||
"title": "PDF 서명 검증",
|
||
"header": "디지털 서명 검증",
|
||
"selectPDF": "서명된 PDF 파일 선택",
|
||
"submit": "서명 검증",
|
||
"results": "검증 결과",
|
||
"status": {
|
||
"_value": "상태",
|
||
"valid": "유효함",
|
||
"invalid": "유효하지 않음",
|
||
"complete": "Validation complete"
|
||
},
|
||
"signer": "서명자",
|
||
"date": "날짜",
|
||
"reason": "사유",
|
||
"location": "위치",
|
||
"noSignatures": "이 문서에서 디지털 서명을 찾을 수 없습니다",
|
||
"chain": {
|
||
"invalid": "인증서 체인 검증 실패 - 서명자의 신원을 확인할 수 없음"
|
||
},
|
||
"trust": {
|
||
"invalid": "인증서가 신뢰 저장소에 없음 - 출처를 확인할 수 없음"
|
||
},
|
||
"cert": {
|
||
"expired": "인증서가 만료됨",
|
||
"revoked": "인증서가 취소됨",
|
||
"info": "인증서 세부 정보",
|
||
"issuer": "발급자",
|
||
"subject": "주체",
|
||
"serialNumber": "일련번호",
|
||
"validFrom": "유효 기간 시작",
|
||
"validUntil": "유효 기간 종료",
|
||
"algorithm": "알고리즘",
|
||
"keySize": "키 크기",
|
||
"version": "버전",
|
||
"keyUsage": "키 용도",
|
||
"selfSigned": "자체 서명",
|
||
"bits": "비트",
|
||
"details": "Certificate Details"
|
||
},
|
||
"signature": {
|
||
"info": "서명 정보",
|
||
"_value": "서명",
|
||
"mathValid": "서명이 수학적으로는 유효하지만:"
|
||
},
|
||
"selectCustomCert": "사용자 지정 인증서 파일 X.509 (선택사항)",
|
||
"downloadCsv": "Download CSV",
|
||
"downloadJson": "Download JSON",
|
||
"downloadPdf": "Download PDF Report",
|
||
"downloadType": {
|
||
"csv": "CSV",
|
||
"json": "JSON",
|
||
"pdf": "PDF"
|
||
},
|
||
"error": {
|
||
"allFailed": "Unable to validate the selected files.",
|
||
"partial": "Some files could not be validated.",
|
||
"reportGeneration": "Could not generate the PDF report. JSON and CSV are available.",
|
||
"unexpected": "Unexpected error during validation."
|
||
},
|
||
"finalizing": "Preparing downloads...",
|
||
"issue": {
|
||
"certExpired": "Certificate expired",
|
||
"certRevocationUnknown": "Certificate revocation status unknown",
|
||
"certRevoked": "Certificate revoked",
|
||
"chainInvalid": "Certificate chain invalid",
|
||
"signatureInvalid": "Signature cryptographic check failed",
|
||
"trustInvalid": "Certificate not trusted"
|
||
},
|
||
"noResults": "Run the validation to generate a report.",
|
||
"noSignaturesShort": "No signatures",
|
||
"processing": "Validating signatures...",
|
||
"report": {
|
||
"continued": "Continued",
|
||
"downloads": "Downloads",
|
||
"entryLabel": "Signature Summary",
|
||
"fields": {
|
||
"created": "Created",
|
||
"fileSize": "File Size",
|
||
"signatureCount": "Total Signatures",
|
||
"signatureDate": "Signature Date"
|
||
},
|
||
"filesEvaluated": "{{count}} files evaluated",
|
||
"footer": "Validated via Stirling PDF",
|
||
"generatedAt": "Generated",
|
||
"noPdf": "PDF report will be available after a successful validation.",
|
||
"page": "Page",
|
||
"shortTitle": "Signature Summary",
|
||
"signatureCountLabel": "{{count}} signatures",
|
||
"signaturesFound": "{{count}} signatures detected",
|
||
"signaturesValid": "{{count}} fully valid",
|
||
"title": "Signature Validation Report"
|
||
},
|
||
"settings": {
|
||
"certHint": "Upload a trusted X.509 certificate to validate against a custom trust source.",
|
||
"title": "Validation Settings"
|
||
},
|
||
"signatureDate": "Signature Date",
|
||
"totalSignatures": "Total Signatures"
|
||
},
|
||
"replaceColor": {
|
||
"tags": "Replace Colour,Page operations,Back end,server side",
|
||
"labels": {
|
||
"settings": "Settings",
|
||
"colourOperation": "Colour operation"
|
||
},
|
||
"options": {
|
||
"highContrast": "High contrast",
|
||
"invertAll": "Invert all colours",
|
||
"custom": "Custom",
|
||
"cmyk": "Convert to CMYK"
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "Replace & Invert Colour Settings Overview"
|
||
},
|
||
"description": {
|
||
"title": "Description",
|
||
"text": "Transform PDF colours to improve readability and accessibility. Choose from high contrast presets, invert all colours, or create custom colour schemes."
|
||
},
|
||
"highContrast": {
|
||
"title": "High Contrast",
|
||
"text": "Apply predefined high contrast colour combinations designed for better readability and accessibility compliance.",
|
||
"bullet1": "White text on black background - Classic dark mode",
|
||
"bullet2": "Black text on white background - Standard high contrast",
|
||
"bullet3": "Yellow text on black background - High visibility option",
|
||
"bullet4": "Green text on black background - Alternative high contrast"
|
||
},
|
||
"invertAll": {
|
||
"title": "Invert All Colours",
|
||
"text": "Completely invert all colours in the PDF, creating a negative-like effect. Useful for creating dark mode versions of documents or reducing eye strain in low-light conditions."
|
||
},
|
||
"custom": {
|
||
"title": "Custom Colours",
|
||
"text": "Define your own text and background colours using the colour pickers. Perfect for creating branded documents or specific accessibility requirements.",
|
||
"bullet1": "Text colour - Choose the colour for text elements",
|
||
"bullet2": "Background colour - Set the background colour for the document"
|
||
},
|
||
"cmyk": {
|
||
"title": "Convert to CMYK",
|
||
"text": "Convert the PDF from RGB colour space to CMYK colour space, optimized for professional printing. This process converts colours to the Cyan, Magenta, Yellow, Black model used by printers."
|
||
}
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while processing the colour replacement."
|
||
}
|
||
},
|
||
"login": {
|
||
"title": "로그인",
|
||
"header": "로그인",
|
||
"signin": "로그인",
|
||
"signInWith": "Sign in with",
|
||
"signInAnonymously": "Sign Up as a Guest",
|
||
"rememberme": "로그인 유지",
|
||
"invalid": "사용자 이름 또는 비밀번호가 잘못되었습니다.",
|
||
"locked": "계정이 잠겼습니다.",
|
||
"signinTitle": "로그인해 주세요",
|
||
"ssoSignIn": "단일 로그인으로 로그인",
|
||
"oAuth2AutoCreateDisabled": "OAuth2 사용자 자동 생성이 비활성화되었습니다",
|
||
"oAuth2AdminBlockedUser": "현재 미등록 사용자의 등록 또는 로그인이 차단되어 있습니다. 관리자에게 문의하세요.",
|
||
"oauth2RequestNotFound": "인증 요청을 찾을 수 없습니다",
|
||
"oauth2InvalidUserInfoResponse": "잘못된 사용자 정보 응답",
|
||
"oauth2invalidRequest": "잘못된 요청",
|
||
"oauth2AccessDenied": "접근 거부됨",
|
||
"oauth2InvalidTokenResponse": "잘못된 토큰 응답",
|
||
"oauth2InvalidIdToken": "잘못된 ID 토큰",
|
||
"relyingPartyRegistrationNotFound": "신뢰 당사자 등록을 찾을 수 없습니다",
|
||
"userIsDisabled": "사용자가 비활성화되어 있어 현재 이 사용자 이름으로 로그인할 수 없습니다. 관리자에게 문의하세요.",
|
||
"alreadyLoggedIn": "이미 다음에 로그인되어 있습니다",
|
||
"alreadyLoggedIn2": "개의 기기. 해당 기기에서 로그아웃한 후 다시 시도하세요.",
|
||
"toManySessions": "활성 세션이 너무 많습니다",
|
||
"logoutMessage": "You have been logged out.",
|
||
"youAreLoggedIn": "You are logged in!",
|
||
"email": "Email",
|
||
"password": "Password",
|
||
"enterEmail": "Enter your email",
|
||
"enterPassword": "Enter your password",
|
||
"loggingIn": "Logging In...",
|
||
"username": "Username",
|
||
"enterUsername": "Enter username",
|
||
"useEmailInstead": "Login with email",
|
||
"forgotPassword": "Forgot your password?",
|
||
"logIn": "Log In",
|
||
"signingIn": "Signing in...",
|
||
"login": "Login",
|
||
"or": "Or",
|
||
"useMagicLink": "Use magic link instead",
|
||
"enterEmailForMagicLink": "Enter your email for magic link",
|
||
"sending": "Sending…",
|
||
"sendMagicLink": "Send Magic Link",
|
||
"cancel": "Cancel",
|
||
"dontHaveAccount": "Don't have an account? Sign up",
|
||
"home": "Home",
|
||
"debug": "Debug",
|
||
"signOut": "Sign Out",
|
||
"pleaseEnterBoth": "Please enter both email and password",
|
||
"pleaseEnterEmail": "Please enter your email address",
|
||
"magicLinkSent": "Magic link sent to {{email}}! Check your email and click the link to sign in.",
|
||
"passwordResetSent": "Password reset link sent to {{email}}! Check your email and follow the instructions.",
|
||
"failedToSignIn": "Failed to sign in with {{provider}}: {{message}}",
|
||
"unexpectedError": "Unexpected error: {{message}}",
|
||
"accountCreatedSuccess": "Account created successfully! You can now sign in.",
|
||
"passwordChangedSuccess": "Password changed successfully! Please sign in with your new password.",
|
||
"credentialsUpdated": "Your credentials have been updated. Please sign in again."
|
||
},
|
||
"signup": {
|
||
"title": "Create an account",
|
||
"subtitle": "Join Stirling PDF to get started",
|
||
"name": "Name",
|
||
"email": "Email",
|
||
"password": "Password",
|
||
"confirmPassword": "Confirm password",
|
||
"enterName": "Enter your name",
|
||
"enterEmail": "Enter your email",
|
||
"enterPassword": "Enter your password",
|
||
"confirmPasswordPlaceholder": "Confirm password",
|
||
"or": "or",
|
||
"creatingAccount": "Creating Account...",
|
||
"signUp": "Sign Up",
|
||
"alreadyHaveAccount": "Already have an account? Sign in",
|
||
"pleaseFillAllFields": "Please fill in all fields",
|
||
"passwordsDoNotMatch": "Passwords do not match",
|
||
"passwordTooShort": "Password must be at least 6 characters long",
|
||
"invalidEmail": "Please enter a valid email address",
|
||
"checkEmailConfirmation": "Check your email for a confirmation link to complete your registration.",
|
||
"accountCreatedSuccessfully": "Account created successfully! You can now sign in.",
|
||
"unexpectedError": "Unexpected error: {{message}}",
|
||
"useEmailInstead": "Use Email Instead",
|
||
"nameRequired": "Name is required",
|
||
"emailRequired": "Email is required",
|
||
"passwordRequired": "Password is required",
|
||
"confirmPasswordRequired": "Please confirm your password"
|
||
},
|
||
"pdfToSinglePage": {
|
||
"title": "단일 페이지로 변환",
|
||
"header": "단일 페이지로 변환",
|
||
"submit": "단일 페이지로 변환",
|
||
"description": "This tool will merge all pages of your PDF into one large single page. The width will remain the same as the original pages, but the height will be the sum of all page heights.",
|
||
"filenamePrefix": "single_page",
|
||
"files": {
|
||
"placeholder": "Select a PDF file in the main view to get started"
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred whilst converting to single page."
|
||
},
|
||
"results": {
|
||
"title": "Single Page Results"
|
||
}
|
||
},
|
||
"pageExtracter": {
|
||
"title": "페이지 추출",
|
||
"header": "페이지 추출",
|
||
"submit": "추출",
|
||
"placeholder": "(예: 1,2,8 또는 4,7,12-16 또는 2n-1)"
|
||
},
|
||
"sanitizePDF": {
|
||
"title": "PDF 정리",
|
||
"header": "PDF 파일 정리",
|
||
"selectText": {
|
||
"1": "JavaScript 작업 제거",
|
||
"2": "임베디드 파일 제거",
|
||
"3": "Remove XMP metadata",
|
||
"4": "링크 제거",
|
||
"5": "글꼴 제거",
|
||
"6": "Remove Document Info Metadata"
|
||
},
|
||
"submit": "PDF 정리"
|
||
},
|
||
"adjustContrast": {
|
||
"title": "대비 조정",
|
||
"header": "대비 조정",
|
||
"basic": "Basic Adjustments",
|
||
"contrast": "대비:",
|
||
"brightness": "밝기:",
|
||
"saturation": "채도:",
|
||
"download": "다운로드",
|
||
"adjustColors": "Adjust Colors",
|
||
"blue": "Blue",
|
||
"confirm": "Confirm",
|
||
"error": {
|
||
"failed": "Failed to adjust colors/contrast"
|
||
},
|
||
"green": "Green",
|
||
"noPreview": "Select a PDF to preview",
|
||
"red": "Red",
|
||
"results": {
|
||
"title": "Adjusted PDF"
|
||
}
|
||
},
|
||
"compress": {
|
||
"title": "압축",
|
||
"desc": "Compress PDFs to reduce their file size.",
|
||
"header": "PDF 압축",
|
||
"method": {
|
||
"title": "Compression Method",
|
||
"quality": "Quality",
|
||
"filesize": "파일 크기"
|
||
},
|
||
"credit": "이 서비스는 PDF 압축/최적화를 위해 qpdf를 사용합니다.",
|
||
"grayscale": {
|
||
"label": "압축을 위해 그레이스케일 적용"
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "Compress Settings Overview"
|
||
},
|
||
"description": {
|
||
"title": "Description",
|
||
"text": "Compression is an easy way to reduce your file size. Pick File Size to enter a target size and have us adjust quality for you. Pick Quality to set compression strength manually."
|
||
},
|
||
"qualityAdjustment": {
|
||
"title": "Quality Adjustment",
|
||
"text": "Drag the slider to adjust the compression strength. Lower values (1-3) preserve quality but result in larger files. Higher values (7-9) shrink the file more but reduce image clarity.",
|
||
"bullet1": "Lower values preserve quality",
|
||
"bullet2": "Higher values reduce file size"
|
||
},
|
||
"grayscale": {
|
||
"title": "Grayscale",
|
||
"text": "Select this option to convert all images to black and white, which can significantly reduce file size especially for scanned PDFs or image-heavy documents."
|
||
}
|
||
},
|
||
"error": {
|
||
"failed": "An error occurred while compressing the PDF."
|
||
},
|
||
"selectText": {
|
||
"1": {
|
||
"_value": "Compression Settings",
|
||
"1": "1-3 PDF compression,</br> 4-6 lite image compression,</br> 7-9 intense image compression Will dramatically reduce image quality"
|
||
},
|
||
"2": "최적화 레벨:",
|
||
"4": "자동 모드 - PDF를 정확한 크기로 만들기 위해 품질 자동 조정",
|
||
"5": "예상 PDF 크기 (예: 25MB, 10.8MB, 25KB)"
|
||
},
|
||
"submit": "압축"
|
||
},
|
||
"decrypt": {
|
||
"passwordPrompt": "이 파일은 비밀번호로 보호되어 있습니다. 비밀번호를 입력하세요:",
|
||
"cancelled": "PDF 작업이 취소되었습니다: {0}",
|
||
"noPassword": "암호화된 PDF의 비밀번호가 제공되지 않았습니다: {0}",
|
||
"invalidPassword": "올바른 비밀번호로 다시 시도하세요.",
|
||
"invalidPasswordHeader": "잘못된 비밀번호 또는 지원되지 않는 암호화입니다. PDF: {0}",
|
||
"unexpectedError": "파일 처리 중 오류가 발생했습니다. 다시 시도하세요.",
|
||
"serverError": "복호화 중 서버 오류 발생: {0}",
|
||
"success": "파일이 성공적으로 복호화되었습니다."
|
||
},
|
||
"multiTool-advert": {
|
||
"message": "이 기능은 <a href=\"{0}\">멀티 도구 페이지</a>에서도 사용할 수 있습니다. 향상된 페이지별 UI와 추가 기능을 확인해보세요!"
|
||
},
|
||
"pageRemover": {
|
||
"title": "페이지 제거기",
|
||
"header": "PDF 페이지 제거기",
|
||
"pagesToDelete": "삭제할 페이지 (쉼표로 구분된 페이지 번호 목록 입력) :",
|
||
"submit": "페이지 삭제",
|
||
"placeholder": "(예: 1,2,6 또는 1-10,15-30)"
|
||
},
|
||
"imageToPDF": {
|
||
"title": "이미지를 PDF로",
|
||
"header": "이미지를 PDF로",
|
||
"submit": "변환",
|
||
"selectLabel": "이미지 맞춤 옵션",
|
||
"fillPage": "페이지 채우기",
|
||
"fitDocumentToImage": "이미지에 맞게 페이지 조정",
|
||
"maintainAspectRatio": "종횡비 유지",
|
||
"selectText": {
|
||
"2": "PDF 자동 회전",
|
||
"3": "다중 파일 로직 (여러 이미지 작업 시에만 활성화)",
|
||
"4": "단일 PDF로 병합",
|
||
"5": "별도의 PDF로 변환"
|
||
}
|
||
},
|
||
"PDFToCSV": {
|
||
"title": "PDF를 CSV로",
|
||
"header": "PDF를 CSV로",
|
||
"prompt": "표를 추출할 페이지 선택",
|
||
"submit": "추출"
|
||
},
|
||
"split-by-size-or-count": {
|
||
"title": "크기 또는 개수로 PDF 분할",
|
||
"header": "크기 또는 개수로 PDF 분할",
|
||
"type": {
|
||
"label": "분할 유형 선택",
|
||
"size": "크기별",
|
||
"pageCount": "페이지 수별",
|
||
"docCount": "문서 수별"
|
||
},
|
||
"value": {
|
||
"label": "값 입력",
|
||
"placeholder": "크기(예: 2MB 또는 3KB) 또는 개수(예: 5) 입력"
|
||
},
|
||
"submit": "제출"
|
||
},
|
||
"printFile": {
|
||
"title": "파일 인쇄",
|
||
"header": "프린터로 파일 인쇄",
|
||
"selectText": {
|
||
"1": "인쇄할 파일 선택",
|
||
"2": "프린터 이름 입력"
|
||
},
|
||
"submit": "인쇄"
|
||
},
|
||
"licenses": {
|
||
"nav": "라이선스",
|
||
"title": "제3자 라이선스",
|
||
"header": "제3자 라이선스",
|
||
"module": "모듈",
|
||
"version": "버전",
|
||
"license": "라이선스"
|
||
},
|
||
"survey": {
|
||
"nav": "설문조사",
|
||
"title": "Stirling-PDF 설문조사",
|
||
"description": "Stirling-PDF는 추적 기능이 없어서 사용자의 의견을 듣고 Stirling-PDF를 개선하고자 합니다!",
|
||
"changes": "마지막 설문조사 이후 Stirling-PDF가 변경되었습니다! 자세한 내용은 여기에서 블로그 포스트를 확인하세요:",
|
||
"changes2": "이러한 변경으로 유료 비즈니스 지원과 자금을 받고 있습니다",
|
||
"please": "설문조사에 참여해 주세요!",
|
||
"disabled": "(설문조사 팝업은 다음 업데이트에서 비활성화되지만 페이지 하단에서 계속 사용할 수 있습니다)",
|
||
"button": "설문조사 참여",
|
||
"dontShowAgain": "다시 표시하지 않음",
|
||
"meeting": {
|
||
"1": "If you're using Stirling PDF at work, we'd love to speak to you. We're offering technical support sessions in exchange for a 15 minute user discovery session.",
|
||
"2": "This is a chance to:",
|
||
"3": "Get help with deployment, integrations, or troubleshooting",
|
||
"4": "Provide direct feedback on performance, edge cases, and feature gaps",
|
||
"5": "Help us refine Stirling PDF for real-world enterprise use",
|
||
"6": "If you're interested, you can book time with our team directly. (English speaking only)",
|
||
"7": "Looking forward to digging into your use cases and making Stirling PDF even better!",
|
||
"notInterested": "Not a business and/or interested in a meeting?",
|
||
"button": "Book meeting"
|
||
}
|
||
},
|
||
"removeImage": {
|
||
"title": "이미지 제거",
|
||
"header": "이미지 제거",
|
||
"removeImage": "이미지 제거",
|
||
"submit": "이미지 제거",
|
||
"error": {
|
||
"failed": "Failed to remove images from the PDF."
|
||
},
|
||
"results": {
|
||
"title": "Remove Images Results"
|
||
}
|
||
},
|
||
"splitByChapters": {
|
||
"title": "챕터별 PDF 분할",
|
||
"header": "챕터별 PDF 분할",
|
||
"bookmarkLevel": "북마크 레벨",
|
||
"includeMetadata": "메타데이터 포함",
|
||
"allowDuplicates": "중복 허용",
|
||
"desc": {
|
||
"1": "이 도구는 PDF 파일을 챕터 구조를 기반으로 여러 PDF로 분할합니다.",
|
||
"2": "북마크 레벨: 분할에 사용할 북마크 레벨을 선택하세요 (0은 최상위 레벨, 1은 두 번째 레벨 등).",
|
||
"3": "메타데이터 포함: 체크하면 원본 PDF의 메타데이터가 각 분할된 PDF에 포함됩니다.",
|
||
"4": "중복 허용: 체크하면 동일한 페이지의 여러 북마크가 별도의 PDF를 생성할 수 있습니다."
|
||
},
|
||
"submit": "PDF 분할"
|
||
},
|
||
"fileChooser": {
|
||
"click": "클릭",
|
||
"or": "또는",
|
||
"dragAndDrop": "드래그 앤 드롭",
|
||
"dragAndDropPDF": "PDF 파일을 드래그 앤 드롭",
|
||
"dragAndDropImage": "이미지 파일을 드래그 앤 드롭",
|
||
"hoveredDragAndDrop": "여기에 파일을 드래그 앤 드롭하세요",
|
||
"extractPDF": "추출 중..."
|
||
},
|
||
"releases": {
|
||
"footer": "릴리스",
|
||
"title": "릴리스 노트",
|
||
"header": "릴리스 노트",
|
||
"current": {
|
||
"version": "현재 릴리스"
|
||
},
|
||
"note": "릴리스 노트는 영어로만 제공됩니다"
|
||
},
|
||
"swagger": {
|
||
"title": "API Documentation",
|
||
"header": "API Documentation",
|
||
"desc": "View and test the Stirling PDF API endpoints",
|
||
"tags": "api,documentation,swagger,endpoints,development"
|
||
},
|
||
"cookieBanner": {
|
||
"popUp": {
|
||
"title": "How we use Cookies",
|
||
"description": {
|
||
"1": "We use cookies and other technologies to make Stirling PDF work better for you—helping us improve our tools and keep building features you'll love.",
|
||
"2": "If you’d rather not, clicking 'No Thanks' will only enable the essential cookies needed to keep things running smoothly."
|
||
},
|
||
"acceptAllBtn": "Okay",
|
||
"acceptNecessaryBtn": "No Thanks",
|
||
"showPreferencesBtn": "Manage preferences"
|
||
},
|
||
"preferencesModal": {
|
||
"title": "Consent Preferences Center",
|
||
"acceptAllBtn": "Accept all",
|
||
"acceptNecessaryBtn": "Reject all",
|
||
"savePreferencesBtn": "Save preferences",
|
||
"closeIconLabel": "Close modal",
|
||
"serviceCounterLabel": "Service|Services",
|
||
"subtitle": "Cookie Usage",
|
||
"description": {
|
||
"1": "Stirling PDF uses cookies and similar technologies to enhance your experience and understand how our tools are used. This helps us improve performance, develop the features you care about, and provide ongoing support to our users.",
|
||
"2": "Stirling PDF cannot—and will never—track or access the content of the documents you use.",
|
||
"3": "Your privacy and trust are at the core of what we do."
|
||
},
|
||
"necessary": {
|
||
"title": {
|
||
"1": "Strictly Necessary Cookies",
|
||
"2": "Always Enabled"
|
||
},
|
||
"description": "These cookies are essential for the website to function properly. They enable core features like setting your privacy preferences, logging in, and filling out forms—which is why they can’t be turned off."
|
||
},
|
||
"analytics": {
|
||
"title": "Analytics",
|
||
"description": "These cookies help us understand how our tools are being used, so we can focus on building the features our community values most. Rest assured—Stirling PDF cannot and will never track the content of the documents you work with."
|
||
}
|
||
},
|
||
"services": {
|
||
"posthog": "PostHog Analytics",
|
||
"scarf": "Scarf Pixel"
|
||
}
|
||
},
|
||
"removeMetadata": {
|
||
"submit": "Remove Metadata"
|
||
},
|
||
"sidebar": {
|
||
"toggle": "Toggle Sidebar"
|
||
},
|
||
"theme": {
|
||
"toggle": "Toggle Theme"
|
||
},
|
||
"view": {
|
||
"viewer": "Viewer",
|
||
"pageEditor": "Page Editor",
|
||
"fileManager": "File Manager"
|
||
},
|
||
"pageEditor": {
|
||
"title": "Page Editor",
|
||
"save": "Save Changes",
|
||
"noPdfLoaded": "No PDF loaded. Please upload a PDF to edit.",
|
||
"rotatedLeft": "Rotated left:",
|
||
"rotatedRight": "Rotated right:",
|
||
"deleted": "Deleted:",
|
||
"movedLeft": "Moved left:",
|
||
"movedRight": "Moved right:",
|
||
"splitAt": "Split at:",
|
||
"insertedPageBreak": "Inserted page break at:",
|
||
"addFileNotImplemented": "Add file not implemented in demo",
|
||
"closePdf": "Close PDF",
|
||
"reset": "Reset Changes",
|
||
"zoomIn": "Zoom In",
|
||
"zoomOut": "Zoom Out",
|
||
"fitToWidth": "Fit to Width",
|
||
"actualSize": "Actual Size"
|
||
},
|
||
"viewer": {
|
||
"firstPage": "First Page",
|
||
"lastPage": "Last Page",
|
||
"previousPage": "Previous Page",
|
||
"nextPage": "Next Page",
|
||
"zoomIn": "Zoom In",
|
||
"zoomOut": "Zoom Out",
|
||
"singlePageView": "Single Page View",
|
||
"dualPageView": "Dual Page View"
|
||
},
|
||
"rightRail": {
|
||
"closeSelected": "Close Selected Files",
|
||
"selectAll": "모두 선택",
|
||
"deselectAll": "모두 선택 해제",
|
||
"selectByNumber": "Select by Page Numbers",
|
||
"deleteSelected": "Delete Selected Pages",
|
||
"closePdf": "Close PDF",
|
||
"exportAll": "Export PDF",
|
||
"downloadSelected": "Download Selected Files",
|
||
"downloadAll": "Download All",
|
||
"toggleTheme": "Toggle Theme",
|
||
"language": "Language",
|
||
"search": "Search PDF",
|
||
"panMode": "Pan Mode",
|
||
"rotateLeft": "Rotate Left",
|
||
"rotateRight": "Rotate Right",
|
||
"toggleSidebar": "Toggle Sidebar",
|
||
"exportSelected": "Export Selected Pages",
|
||
"toggleAnnotations": "Toggle Annotations Visibility",
|
||
"annotationMode": "Toggle Annotation Mode",
|
||
"draw": "Draw",
|
||
"save": "Save"
|
||
},
|
||
"search": {
|
||
"title": "Search PDF",
|
||
"placeholder": "Enter search term...",
|
||
"noResults": "No results found",
|
||
"searching": "Searching..."
|
||
},
|
||
"guestBanner": {
|
||
"title": "You're using Stirling PDF as a guest!",
|
||
"message": "Create a free account to save your work, access more features, and support the project.",
|
||
"dismiss": "Dismiss banner",
|
||
"signUp": "Sign Up Free"
|
||
},
|
||
"toolPicker": {
|
||
"searchPlaceholder": "Search tools...",
|
||
"noToolsFound": "No tools found",
|
||
"allTools": "ALL TOOLS",
|
||
"quickAccess": "QUICK ACCESS",
|
||
"categories": {
|
||
"standardTools": "Standard Tools",
|
||
"advancedTools": "Advanced Tools",
|
||
"recommendedTools": "Recommended Tools"
|
||
},
|
||
"subcategories": {
|
||
"signing": "Signing",
|
||
"documentSecurity": "Document Security",
|
||
"verification": "Verification",
|
||
"documentReview": "Document Review",
|
||
"pageFormatting": "Page Formatting",
|
||
"extraction": "Extraction",
|
||
"removal": "Removal",
|
||
"automation": "Automation",
|
||
"general": "General",
|
||
"advancedFormatting": "Advanced Formatting",
|
||
"developerTools": "Developer Tools"
|
||
}
|
||
},
|
||
"quickAccess": {
|
||
"read": "Read",
|
||
"sign": "서명",
|
||
"automate": "Automate",
|
||
"files": "Files",
|
||
"activity": "Activity",
|
||
"help": "Help",
|
||
"account": "Account",
|
||
"config": "Config",
|
||
"adminSettings": "Admin Settings",
|
||
"allTools": "All Tools"
|
||
},
|
||
"admin": {
|
||
"error": "Error",
|
||
"success": "Success",
|
||
"expand": "Expand",
|
||
"close": "Close",
|
||
"status": {
|
||
"active": "Active",
|
||
"inactive": "Inactive"
|
||
},
|
||
"settings": {
|
||
"title": "Admin Settings",
|
||
"workspace": "Workspace",
|
||
"fetchError": "Failed to load settings",
|
||
"saveError": "Failed to save settings",
|
||
"saved": "Settings saved successfully",
|
||
"saveSuccess": "Settings saved successfully",
|
||
"save": "Save Changes",
|
||
"restartRequired": "Restart Required",
|
||
"restart": {
|
||
"title": "Restart Required",
|
||
"message": "Settings have been saved successfully. A server restart is required for the changes to take effect.",
|
||
"question": "Would you like to restart the server now or later?",
|
||
"now": "Restart Now",
|
||
"later": "Restart Later"
|
||
},
|
||
"restarting": "Restarting Server",
|
||
"restartingMessage": "The server is restarting. Please wait a moment...",
|
||
"restartError": "Failed to restart server. Please restart manually.",
|
||
"general": {
|
||
"title": "System Settings",
|
||
"description": "Configure system-wide application settings including branding and default behaviour.",
|
||
"ui": "User Interface",
|
||
"system": "System",
|
||
"appName": {
|
||
"label": "Application Name",
|
||
"description": "The name displayed in the browser tab and home page"
|
||
},
|
||
"appNameNavbar": {
|
||
"label": "Navbar Brand",
|
||
"description": "The name displayed in the navigation bar"
|
||
},
|
||
"homeDescription": {
|
||
"label": "Home Description",
|
||
"description": "The description text shown on the home page"
|
||
},
|
||
"defaultLocale": {
|
||
"label": "Default Locale",
|
||
"description": "The default language for new users (e.g., en_US, es_ES)"
|
||
},
|
||
"fileUploadLimit": {
|
||
"label": "File Upload Limit",
|
||
"description": "Maximum file upload size (e.g., 100MB, 1GB)"
|
||
},
|
||
"showUpdate": {
|
||
"label": "Show Update Notifications",
|
||
"description": "Display notifications when a new version is available"
|
||
},
|
||
"showUpdateOnlyAdmin": {
|
||
"label": "Show Updates to Admins Only",
|
||
"description": "Restrict update notifications to admin users only"
|
||
},
|
||
"customHTMLFiles": {
|
||
"label": "Custom HTML Files",
|
||
"description": "Allow serving custom HTML files from the customFiles directory"
|
||
},
|
||
"languages": {
|
||
"label": "Available Languages",
|
||
"description": "Languages that users can select from (leave empty to enable all languages)"
|
||
},
|
||
"customMetadata": {
|
||
"label": "Custom Metadata",
|
||
"autoUpdate": {
|
||
"label": "Auto Update Metadata",
|
||
"description": "Automatically update PDF metadata on all processed documents"
|
||
},
|
||
"author": {
|
||
"label": "Default Author",
|
||
"description": "Default author for PDF metadata (e.g., username)"
|
||
},
|
||
"creator": {
|
||
"label": "Default Creator",
|
||
"description": "Default creator for PDF metadata"
|
||
},
|
||
"producer": {
|
||
"label": "Default Producer",
|
||
"description": "Default producer for PDF metadata"
|
||
}
|
||
},
|
||
"customPaths": {
|
||
"label": "Custom Paths",
|
||
"description": "Configure custom file system paths for pipeline processing and external tools",
|
||
"pipeline": {
|
||
"label": "Pipeline Directories",
|
||
"watchedFoldersDir": {
|
||
"label": "Watched Folders Directory",
|
||
"description": "Directory where pipeline monitors for incoming PDFs (leave empty for default: /pipeline/watchedFolders)"
|
||
},
|
||
"finishedFoldersDir": {
|
||
"label": "Finished Folders Directory",
|
||
"description": "Directory where processed PDFs are outputted (leave empty for default: /pipeline/finishedFolders)"
|
||
}
|
||
},
|
||
"operations": {
|
||
"label": "External Tool Paths",
|
||
"weasyprint": {
|
||
"label": "WeasyPrint Executable",
|
||
"description": "Path to WeasyPrint executable for HTML to PDF conversion (leave empty for default: /opt/venv/bin/weasyprint)"
|
||
},
|
||
"unoconvert": {
|
||
"label": "Unoconvert Executable",
|
||
"description": "Path to LibreOffice unoconvert for document conversions (leave empty for default: /opt/venv/bin/unoconvert)"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"security": {
|
||
"title": "Security",
|
||
"description": "Configure authentication, login behaviour, and security policies.",
|
||
"ssoNotice": {
|
||
"title": "Looking for SSO/SAML settings?",
|
||
"message": "OAuth2 and SAML2 authentication providers have been moved to the Connections menu for easier management."
|
||
},
|
||
"authentication": "Authentication",
|
||
"enableLogin": {
|
||
"label": "Enable Login",
|
||
"description": "Require users to log in before accessing the application"
|
||
},
|
||
"loginMethod": {
|
||
"label": "Login Method",
|
||
"description": "The authentication method to use for user login",
|
||
"all": "All Methods",
|
||
"normal": "Username/Password Only",
|
||
"oauth2": "OAuth2 Only",
|
||
"saml2": "SAML2 Only"
|
||
},
|
||
"loginAttemptCount": {
|
||
"label": "Login Attempt Limit",
|
||
"description": "Maximum number of failed login attempts before account lockout"
|
||
},
|
||
"loginResetTimeMinutes": {
|
||
"label": "Login Reset Time (minutes)",
|
||
"description": "Time before failed login attempts are reset"
|
||
},
|
||
"csrfDisabled": {
|
||
"label": "Disable CSRF Protection",
|
||
"description": "Disable Cross-Site Request Forgery protection (not recommended)"
|
||
},
|
||
"initialLogin": {
|
||
"label": "Initial Login",
|
||
"username": {
|
||
"label": "Initial Username",
|
||
"description": "The username for the initial admin account"
|
||
},
|
||
"password": {
|
||
"label": "Initial Password",
|
||
"description": "The password for the initial admin account"
|
||
}
|
||
},
|
||
"jwt": {
|
||
"label": "JWT Configuration",
|
||
"secureCookie": {
|
||
"label": "Secure Cookie",
|
||
"description": "Require HTTPS for JWT cookies (recommended for production)"
|
||
},
|
||
"keyRetentionDays": {
|
||
"label": "Key Retention Days",
|
||
"description": "Number of days to retain old JWT keys for verification"
|
||
},
|
||
"persistence": {
|
||
"label": "Enable Key Persistence",
|
||
"description": "Store JWT keys persistently to survive server restarts"
|
||
},
|
||
"enableKeyRotation": {
|
||
"label": "Enable Key Rotation",
|
||
"description": "Automatically rotate JWT signing keys periodically"
|
||
},
|
||
"enableKeyCleanup": {
|
||
"label": "Enable Key Cleanup",
|
||
"description": "Automatically remove expired JWT keys"
|
||
}
|
||
},
|
||
"audit": {
|
||
"label": "Audit Logging",
|
||
"enabled": {
|
||
"label": "Enable Audit Logging",
|
||
"description": "Track user actions and system events for compliance and security monitoring"
|
||
},
|
||
"level": {
|
||
"label": "Audit Level",
|
||
"description": "0=OFF, 1=BASIC, 2=STANDARD, 3=VERBOSE"
|
||
},
|
||
"retentionDays": {
|
||
"label": "Audit Retention (days)",
|
||
"description": "Number of days to retain audit logs"
|
||
}
|
||
},
|
||
"htmlUrlSecurity": {
|
||
"label": "HTML URL Security",
|
||
"description": "Configure URL access restrictions for HTML processing to prevent SSRF attacks",
|
||
"enabled": {
|
||
"label": "Enable URL Security",
|
||
"description": "Enable URL security restrictions for HTML to PDF conversions"
|
||
},
|
||
"level": {
|
||
"label": "Security Level",
|
||
"description": "MAX: whitelist only, MEDIUM: block internal networks, OFF: no restrictions",
|
||
"max": "Maximum (Whitelist Only)",
|
||
"medium": "Medium (Block Internal)",
|
||
"off": "Off (No Restrictions)"
|
||
},
|
||
"advanced": "Advanced Settings",
|
||
"allowedDomains": {
|
||
"label": "Allowed Domains (Whitelist)",
|
||
"description": "One domain per line (e.g., cdn.example.com). Only these domains allowed when level is MAX"
|
||
},
|
||
"blockedDomains": {
|
||
"label": "Blocked Domains (Blacklist)",
|
||
"description": "One domain per line (e.g., malicious.com). Additional domains to block"
|
||
},
|
||
"internalTlds": {
|
||
"label": "Internal TLDs",
|
||
"description": "One TLD per line (e.g., .local, .internal). Block domains with these TLD patterns"
|
||
},
|
||
"networkBlocking": "Network Blocking",
|
||
"blockPrivateNetworks": {
|
||
"label": "Block Private Networks",
|
||
"description": "Block RFC 1918 private networks (10.x.x.x, 192.168.x.x, 172.16-31.x.x)"
|
||
},
|
||
"blockLocalhost": {
|
||
"label": "Block Localhost",
|
||
"description": "Block localhost and loopback addresses (127.x.x.x, ::1)"
|
||
},
|
||
"blockLinkLocal": {
|
||
"label": "Block Link-Local Addresses",
|
||
"description": "Block link-local addresses (169.254.x.x, fe80::/10)"
|
||
},
|
||
"blockCloudMetadata": {
|
||
"label": "Block Cloud Metadata Endpoints",
|
||
"description": "Block cloud provider metadata endpoints (169.254.169.254)"
|
||
}
|
||
}
|
||
},
|
||
"connections": {
|
||
"title": "Connections",
|
||
"description": "Configure external authentication providers like OAuth2 and SAML.",
|
||
"linkedServices": "Linked Services",
|
||
"unlinkedServices": "Unlinked Services",
|
||
"connect": "Connect",
|
||
"disconnect": "Disconnect",
|
||
"disconnected": "Provider disconnected successfully",
|
||
"disconnectError": "Failed to disconnect provider",
|
||
"ssoAutoLogin": {
|
||
"label": "SSO Auto Login",
|
||
"enable": "Enable SSO Auto Login",
|
||
"description": "Automatically redirect to SSO login when authentication is required"
|
||
},
|
||
"oauth2": {
|
||
"label": "OAuth2",
|
||
"enabled": {
|
||
"label": "Enable OAuth2",
|
||
"description": "Allow users to authenticate using OAuth2 providers"
|
||
},
|
||
"provider": {
|
||
"label": "Provider",
|
||
"description": "The OAuth2 provider to use for authentication"
|
||
},
|
||
"issuer": {
|
||
"label": "Issuer URL",
|
||
"description": "The OAuth2 provider issuer URL"
|
||
},
|
||
"clientId": {
|
||
"label": "Client ID",
|
||
"description": "The OAuth2 client ID from your provider"
|
||
},
|
||
"clientSecret": {
|
||
"label": "Client Secret",
|
||
"description": "The OAuth2 client secret from your provider"
|
||
},
|
||
"useAsUsername": {
|
||
"label": "Use as Username",
|
||
"description": "The OAuth2 claim to use as the username (e.g., email, sub)"
|
||
},
|
||
"autoCreateUser": {
|
||
"label": "Auto Create Users",
|
||
"description": "Automatically create user accounts on first OAuth2 login"
|
||
},
|
||
"blockRegistration": {
|
||
"label": "Block Registration",
|
||
"description": "Prevent new user registration via OAuth2"
|
||
},
|
||
"scopes": {
|
||
"label": "OAuth2 Scopes",
|
||
"description": "Comma-separated list of OAuth2 scopes to request (e.g., openid, profile, email)"
|
||
}
|
||
},
|
||
"saml2": {
|
||
"label": "SAML2",
|
||
"enabled": {
|
||
"label": "Enable SAML2",
|
||
"description": "Allow users to authenticate using SAML2 providers"
|
||
},
|
||
"provider": {
|
||
"label": "Provider",
|
||
"description": "The SAML2 provider name"
|
||
},
|
||
"registrationId": {
|
||
"label": "Registration ID",
|
||
"description": "The SAML2 registration identifier"
|
||
},
|
||
"autoCreateUser": {
|
||
"label": "Auto Create Users",
|
||
"description": "Automatically create user accounts on first SAML2 login"
|
||
},
|
||
"blockRegistration": {
|
||
"label": "Block Registration",
|
||
"description": "Prevent new user registration via SAML2"
|
||
}
|
||
}
|
||
},
|
||
"database": {
|
||
"title": "Database",
|
||
"description": "Configure custom database connection settings for enterprise deployments.",
|
||
"configuration": "Database Configuration",
|
||
"enableCustom": {
|
||
"label": "Enable Custom Database",
|
||
"description": "Use your own custom database configuration instead of the default embedded database"
|
||
},
|
||
"customUrl": {
|
||
"label": "Custom Database URL",
|
||
"description": "Full JDBC connection string (e.g., jdbc:postgresql://localhost:5432/postgres). If provided, individual connection settings below are not used."
|
||
},
|
||
"type": {
|
||
"label": "Database Type",
|
||
"description": "Type of database (not used if custom URL is provided)"
|
||
},
|
||
"hostName": {
|
||
"label": "Host Name",
|
||
"description": "Database server hostname (not used if custom URL is provided)"
|
||
},
|
||
"port": {
|
||
"label": "Port",
|
||
"description": "Database server port (not used if custom URL is provided)"
|
||
},
|
||
"name": {
|
||
"label": "Database Name",
|
||
"description": "Name of the database (not used if custom URL is provided)"
|
||
},
|
||
"username": {
|
||
"label": "Username",
|
||
"description": "Database authentication username"
|
||
},
|
||
"password": {
|
||
"label": "Password",
|
||
"description": "Database authentication password"
|
||
}
|
||
},
|
||
"privacy": {
|
||
"title": "Privacy",
|
||
"description": "Configure privacy and data collection settings.",
|
||
"analytics": "Analytics & Tracking",
|
||
"enableAnalytics": {
|
||
"label": "Enable Analytics",
|
||
"description": "Collect anonymous usage analytics to help improve the application"
|
||
},
|
||
"metricsEnabled": {
|
||
"label": "Enable Metrics",
|
||
"description": "Enable collection of performance and usage metrics. Provides API endpoint for admins to access metrics data"
|
||
},
|
||
"searchEngine": "Search Engine Visibility",
|
||
"googleVisibility": {
|
||
"label": "Google Visibility",
|
||
"description": "Allow search engines to index this application"
|
||
}
|
||
},
|
||
"advanced": {
|
||
"title": "Advanced",
|
||
"description": "Configure advanced features and experimental functionality.",
|
||
"features": "Feature Flags",
|
||
"processing": "Processing",
|
||
"endpoints": {
|
||
"label": "Endpoints",
|
||
"manage": "Manage API Endpoints",
|
||
"description": "Endpoint management is configured via YAML. See documentation for details on enabling/disabling specific endpoints."
|
||
},
|
||
"enableAlphaFunctionality": {
|
||
"label": "Enable Alpha Features",
|
||
"description": "Enable experimental and alpha-stage features (may be unstable)"
|
||
},
|
||
"enableUrlToPDF": {
|
||
"label": "Enable URL to PDF",
|
||
"description": "Allow conversion of web pages to PDF documents"
|
||
},
|
||
"maxDPI": {
|
||
"label": "Maximum DPI",
|
||
"description": "Maximum DPI for image processing (0 = unlimited)"
|
||
},
|
||
"tessdataDir": {
|
||
"label": "Tessdata Directory",
|
||
"description": "Path to the tessdata directory for OCR language files"
|
||
},
|
||
"disableSanitize": {
|
||
"label": "Disable HTML Sanitization",
|
||
"description": "WARNING: Security risk - disabling HTML sanitization can lead to XSS vulnerabilities"
|
||
},
|
||
"tempFileManagement": {
|
||
"label": "Temp File Management",
|
||
"description": "Configure temporary file storage and cleanup behavior",
|
||
"baseTmpDir": {
|
||
"label": "Base Temp Directory",
|
||
"description": "Base directory for temporary files (leave empty for default: java.io.tmpdir/stirling-pdf)"
|
||
},
|
||
"libreofficeDir": {
|
||
"label": "LibreOffice Temp Directory",
|
||
"description": "Directory for LibreOffice temp files (leave empty for default: baseTmpDir/libreoffice)"
|
||
},
|
||
"systemTempDir": {
|
||
"label": "System Temp Directory",
|
||
"description": "System temp directory to clean (only used if cleanupSystemTemp is enabled)"
|
||
},
|
||
"prefix": {
|
||
"label": "Temp File Prefix",
|
||
"description": "Prefix for temp file names"
|
||
},
|
||
"maxAgeHours": {
|
||
"label": "Max Age (hours)",
|
||
"description": "Maximum age in hours before temp files are cleaned up"
|
||
},
|
||
"cleanupIntervalMinutes": {
|
||
"label": "Cleanup Interval (minutes)",
|
||
"description": "How often to run cleanup (in minutes)"
|
||
},
|
||
"startupCleanup": {
|
||
"label": "Startup Cleanup",
|
||
"description": "Clean up old temp files on application startup"
|
||
},
|
||
"cleanupSystemTemp": {
|
||
"label": "Cleanup System Temp",
|
||
"description": "Whether to clean broader system temp directory (use with caution)"
|
||
}
|
||
},
|
||
"processExecutor": {
|
||
"label": "Process Executor Limits",
|
||
"description": "Configure session limits and timeouts for each process executor",
|
||
"sessionLimit": {
|
||
"label": "Session Limit",
|
||
"description": "Maximum concurrent instances"
|
||
},
|
||
"timeout": {
|
||
"label": "Timeout (minutes)",
|
||
"description": "Maximum execution time"
|
||
},
|
||
"libreOffice": "LibreOffice",
|
||
"pdfToHtml": "PDF to HTML",
|
||
"qpdf": "QPDF",
|
||
"tesseract": "Tesseract OCR",
|
||
"pythonOpenCv": "Python OpenCV",
|
||
"weasyPrint": "WeasyPrint",
|
||
"installApp": "Install App",
|
||
"calibre": "Calibre",
|
||
"ghostscript": "Ghostscript",
|
||
"ocrMyPdf": "OCRmyPDF"
|
||
}
|
||
},
|
||
"mail": {
|
||
"title": "Mail Server",
|
||
"description": "Configure SMTP settings for sending email notifications.",
|
||
"smtp": "SMTP Configuration",
|
||
"enabled": {
|
||
"label": "Enable Mail",
|
||
"description": "Enable email notifications and SMTP functionality"
|
||
},
|
||
"host": {
|
||
"label": "SMTP Host",
|
||
"description": "The hostname or IP address of your SMTP server"
|
||
},
|
||
"port": {
|
||
"label": "SMTP Port",
|
||
"description": "The port number for SMTP connection (typically 25, 465, or 587)"
|
||
},
|
||
"username": {
|
||
"label": "SMTP Username",
|
||
"description": "Username for SMTP authentication"
|
||
},
|
||
"password": {
|
||
"label": "SMTP Password",
|
||
"description": "Password for SMTP authentication"
|
||
},
|
||
"from": {
|
||
"label": "From Address",
|
||
"description": "The email address to use as the sender"
|
||
},
|
||
"enableInvites": {
|
||
"label": "Enable Email Invites",
|
||
"description": "Allow admins to invite users via email with auto-generated passwords"
|
||
},
|
||
"frontendUrl": {
|
||
"label": "Frontend URL",
|
||
"description": "Base URL for frontend (e.g. https://pdf.example.com). Used for generating invite links in emails. Leave empty to use backend URL."
|
||
}
|
||
},
|
||
"legal": {
|
||
"title": "Legal Documents",
|
||
"description": "Configure links to legal documents and policies.",
|
||
"disclaimer": {
|
||
"title": "Legal Responsibility Warning",
|
||
"message": "By customizing these legal documents, you assume full responsibility for ensuring compliance with all applicable laws and regulations, including but not limited to GDPR and other EU data protection requirements. Only modify these settings if: (1) you are operating a personal/private instance, (2) you are outside EU jurisdiction and understand your local legal obligations, or (3) you have obtained proper legal counsel and accept sole responsibility for all user data and legal compliance. Stirling-PDF and its developers assume no liability for your legal obligations."
|
||
},
|
||
"termsAndConditions": {
|
||
"label": "Terms and Conditions",
|
||
"description": "URL or filename to terms and conditions"
|
||
},
|
||
"privacyPolicy": {
|
||
"label": "Privacy Policy",
|
||
"description": "URL or filename to privacy policy"
|
||
},
|
||
"accessibilityStatement": {
|
||
"label": "Accessibility Statement",
|
||
"description": "URL or filename to accessibility statement"
|
||
},
|
||
"cookiePolicy": {
|
||
"label": "Cookie Policy",
|
||
"description": "URL or filename to cookie policy"
|
||
},
|
||
"impressum": {
|
||
"label": "Impressum",
|
||
"description": "URL or filename to impressum (required in some jurisdictions)"
|
||
}
|
||
},
|
||
"premium": {
|
||
"title": "Premium & Enterprise",
|
||
"description": "Configure your premium or enterprise license key.",
|
||
"license": "License Configuration",
|
||
"key": {
|
||
"label": "License Key",
|
||
"description": "Enter your premium or enterprise license key"
|
||
},
|
||
"enabled": {
|
||
"label": "Enable Premium Features",
|
||
"description": "Enable license key checks for pro/enterprise features"
|
||
},
|
||
"movedFeatures": {
|
||
"title": "Premium Features Distributed",
|
||
"message": "Premium and Enterprise features are now organized in their respective sections:"
|
||
}
|
||
},
|
||
"features": {
|
||
"title": "Features",
|
||
"description": "Configure optional features and functionality.",
|
||
"serverCertificate": {
|
||
"label": "Server Certificate",
|
||
"description": "Configure server-side certificate generation for \"Sign with Stirling-PDF\" functionality",
|
||
"enabled": {
|
||
"label": "Enable Server Certificate",
|
||
"description": "Enable server-side certificate for \"Sign with Stirling-PDF\" option"
|
||
},
|
||
"organizationName": {
|
||
"label": "Organization Name",
|
||
"description": "Organization name for generated certificates"
|
||
},
|
||
"validity": {
|
||
"label": "Certificate Validity (days)",
|
||
"description": "Number of days the certificate will be valid"
|
||
},
|
||
"regenerateOnStartup": {
|
||
"label": "Regenerate on Startup",
|
||
"description": "Generate new certificate on each application startup"
|
||
}
|
||
}
|
||
},
|
||
"endpoints": {
|
||
"title": "API Endpoints",
|
||
"description": "Control which API endpoints and endpoint groups are available.",
|
||
"management": "Endpoint Management",
|
||
"toRemove": {
|
||
"label": "Disabled Endpoints",
|
||
"description": "Select individual endpoints to disable"
|
||
},
|
||
"groupsToRemove": {
|
||
"label": "Disabled Endpoint Groups",
|
||
"description": "Select endpoint groups to disable"
|
||
},
|
||
"note": "Note: Disabling endpoints restricts API access but does not remove UI components. Restart required for changes to take effect."
|
||
}
|
||
}
|
||
},
|
||
"fileUpload": {
|
||
"selectFile": "Select a file",
|
||
"selectFiles": "Select files",
|
||
"selectPdfToView": "Select a PDF to view",
|
||
"selectPdfToEdit": "Select a PDF to edit",
|
||
"chooseFromStorage": "Choose a file from storage or upload a new PDF",
|
||
"chooseFromStorageMultiple": "Choose files from storage or upload new PDFs",
|
||
"loadFromStorage": "Load from Storage",
|
||
"filesAvailable": "files available",
|
||
"loading": "로딩 중...",
|
||
"or": "또는",
|
||
"dropFileHere": "Drop file here or click to upload",
|
||
"dropFilesHere": "Drop files here or click the upload button",
|
||
"pdfFilesOnly": "PDF files only",
|
||
"supportedFileTypes": "Supported file types",
|
||
"upload": "Upload",
|
||
"uploadFile": "Upload File",
|
||
"uploadFiles": "Upload Files",
|
||
"noFilesInStorage": "No files available in storage. Upload some files first.",
|
||
"selectFromStorage": "Select from Storage",
|
||
"backToTools": "Back to Tools",
|
||
"addFiles": "Add Files",
|
||
"dragFilesInOrClick": "Drag files in or click \"Add Files\" to browse"
|
||
},
|
||
"fileEditor": {
|
||
"addFiles": "Add Files"
|
||
},
|
||
"fileManager": {
|
||
"title": "Upload PDF Files",
|
||
"subtitle": "Add files to your storage for easy access across tools",
|
||
"filesSelected": "files selected",
|
||
"clearSelection": "Clear Selection",
|
||
"openInFileEditor": "Open in File Editor",
|
||
"uploadError": "Failed to upload some files.",
|
||
"failedToOpen": "Failed to open file. It may have been removed from storage.",
|
||
"failedToLoad": "Failed to load file to active set.",
|
||
"storageCleared": "Browser cleared storage. Files have been removed. Please re-upload.",
|
||
"clearAll": "Clear All",
|
||
"reloadFiles": "Reload Files",
|
||
"dragDrop": "Drag & Drop files here",
|
||
"clickToUpload": "Click to upload files",
|
||
"selectedFiles": "Selected Files",
|
||
"storage": "Storage",
|
||
"filesStored": "files stored",
|
||
"storageError": "Storage error occurred",
|
||
"storageLow": "Storage is running low. Consider removing old files.",
|
||
"supportMessage": "Powered by browser database storage for unlimited capacity",
|
||
"noFileSelected": "No files selected",
|
||
"showHistory": "Show History",
|
||
"hideHistory": "Hide History",
|
||
"fileHistory": "File History",
|
||
"loadingHistory": "Loading History...",
|
||
"lastModified": "Last Modified",
|
||
"toolChain": "Tools Applied",
|
||
"restore": "Restore",
|
||
"unzip": "Unzip",
|
||
"searchFiles": "Search files...",
|
||
"recent": "Recent",
|
||
"localFiles": "Local Files",
|
||
"googleDrive": "Google Drive",
|
||
"googleDriveShort": "Drive",
|
||
"myFiles": "My Files",
|
||
"noRecentFiles": "No recent files found",
|
||
"googleDriveNotAvailable": "Google Drive integration not available",
|
||
"openFiles": "Open Files",
|
||
"openFile": "Open File",
|
||
"details": "File Details",
|
||
"fileName": "이름",
|
||
"fileFormat": "Format",
|
||
"fileSize": "Size",
|
||
"fileVersion": "버전",
|
||
"totalSelected": "Total Selected",
|
||
"dropFilesHere": "Drop files here",
|
||
"selectAll": "모두 선택",
|
||
"deselectAll": "모두 선택 해제",
|
||
"deleteSelected": "선택 항목 삭제",
|
||
"downloadSelected": "Download Selected",
|
||
"selectedCount": "{{count}} selected",
|
||
"download": "다운로드",
|
||
"delete": "삭제",
|
||
"unsupported": "Unsupported",
|
||
"addToUpload": "Add to Upload",
|
||
"deleteAll": "Delete All",
|
||
"loadingFiles": "Loading files...",
|
||
"noFiles": "No files available",
|
||
"noFilesFound": "No files found matching your search",
|
||
"openInPageEditor": "Open in Page Editor",
|
||
"showAll": "Show All",
|
||
"sortByDate": "Sort by Date",
|
||
"sortByName": "Sort by Name",
|
||
"sortBySize": "Sort by Size"
|
||
},
|
||
"storage": {
|
||
"temporaryNotice": "Files are stored temporarily in your browser and may be cleared automatically",
|
||
"storageLimit": "Storage limit",
|
||
"storageUsed": "Temporary Storage used",
|
||
"storageFull": "Storage is nearly full. Consider removing some files.",
|
||
"fileTooLarge": "File too large. Maximum size per file is",
|
||
"storageQuotaExceeded": "Storage quota exceeded. Please remove some files before uploading more.",
|
||
"approximateSize": "Approximate size"
|
||
},
|
||
"sanitize": {
|
||
"title": "Sanitise",
|
||
"desc": "Remove potentially harmful elements from PDF files.",
|
||
"submit": "PDF 정리",
|
||
"completed": "Sanitisation completed successfully",
|
||
"error": {
|
||
"generic": "Sanitisation failed",
|
||
"failed": "An error occurred while sanitising the PDF."
|
||
},
|
||
"filenamePrefix": "sanitised",
|
||
"sanitizationResults": "Sanitisation Results",
|
||
"steps": {
|
||
"files": "Files",
|
||
"settings": "설정",
|
||
"results": "Results"
|
||
},
|
||
"files": {
|
||
"placeholder": "Select a PDF file in the main view to get started"
|
||
},
|
||
"options": {
|
||
"title": "Sanitisation Options",
|
||
"note": "Select the elements you want to remove from the PDF. At least one option must be selected.",
|
||
"removeJavaScript": {
|
||
"label": "Remove JavaScript",
|
||
"desc": "Remove JavaScript actions and scripts from the PDF"
|
||
},
|
||
"removeEmbeddedFiles": {
|
||
"label": "Remove Embedded Files",
|
||
"desc": "Remove any files embedded within the PDF"
|
||
},
|
||
"removeXMPMetadata": {
|
||
"label": "Remove XMP Metadata",
|
||
"desc": "Remove XMP metadata from the PDF"
|
||
},
|
||
"removeMetadata": {
|
||
"label": "Remove Document Metadata",
|
||
"desc": "Remove document information metadata (title, author, etc.)"
|
||
},
|
||
"removeLinks": {
|
||
"label": "Remove Links",
|
||
"desc": "Remove external links and launch actions from the PDF"
|
||
},
|
||
"removeFonts": {
|
||
"label": "Remove Fonts",
|
||
"desc": "Remove embedded fonts from the PDF"
|
||
}
|
||
}
|
||
},
|
||
"addPassword": {
|
||
"title": "비밀번호 추가",
|
||
"desc": "Encrypt your PDF document with a password.",
|
||
"completed": "Password protection applied",
|
||
"submit": "암호화",
|
||
"filenamePrefix": "encrypted",
|
||
"error": {
|
||
"failed": "An error occurred while encrypting the PDF."
|
||
},
|
||
"passwords": {
|
||
"stepTitle": "Passwords & Encryption",
|
||
"completed": "Passwords configured",
|
||
"user": {
|
||
"label": "User Password",
|
||
"placeholder": "Enter user password"
|
||
},
|
||
"owner": {
|
||
"label": "Owner Password",
|
||
"placeholder": "Enter owner password"
|
||
}
|
||
},
|
||
"encryption": {
|
||
"keyLength": {
|
||
"label": "Encryption Key Length",
|
||
"40bit": "40-bit (Low)",
|
||
"128bit": "128-bit (Standard)",
|
||
"256bit": "256-bit (High)"
|
||
}
|
||
},
|
||
"results": {
|
||
"title": "Encrypted PDFs"
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "Password Protection Overview"
|
||
},
|
||
"passwords": {
|
||
"title": "Password Types",
|
||
"text": "User passwords restrict opening the document, while owner passwords control what can be done with the document once opened. You can set both or just one.",
|
||
"bullet1": "User Password: Required to open the PDF",
|
||
"bullet2": "Owner Password: Controls document permissions (not supported by all PDF viewers)"
|
||
},
|
||
"encryption": {
|
||
"title": "Encryption Levels",
|
||
"text": "Higher encryption levels provide better security but may not be supported by older PDF viewers.",
|
||
"bullet1": "40-bit: Basic security, compatible with older viewers",
|
||
"bullet2": "128-bit: Standard security, widely supported",
|
||
"bullet3": "256-bit: Maximum security, requires modern viewers"
|
||
},
|
||
"permissions": {
|
||
"title": "권한 변경",
|
||
"text": "These permissions control what users can do with the PDF. Most effective when combined with an owner password."
|
||
}
|
||
},
|
||
"tags": "보안,보안",
|
||
"header": "비밀번호 추가 (암호화)",
|
||
"selectText": {
|
||
"1": "암호화할 PDF 선택",
|
||
"2": "사용자 비밀번호",
|
||
"3": "암호화 키 길이",
|
||
"4": "높은 값이 더 강력하지만 낮은 값이 더 나은 호환성을 제공합니다.",
|
||
"5": "설정할 권한 (소유자 비밀번호와 함께 사용 권장)",
|
||
"6": "문서 조립 방지",
|
||
"7": "콘텐츠 추출 방지",
|
||
"8": "접근성을 위한 추출 방지",
|
||
"9": "양식 작성 방지",
|
||
"10": "수정 방지",
|
||
"11": "주석 수정 방지",
|
||
"12": "인쇄 방지",
|
||
"13": "다른 형식으로 인쇄 방지",
|
||
"14": "소유자 비밀번호",
|
||
"15": "문서가 열린 후 수행할 수 있는 작업 제한 (모든 리더에서 지원되지 않음)",
|
||
"16": "문서 자체 열기 제한"
|
||
}
|
||
},
|
||
"changePermissions": {
|
||
"title": "권한 변경",
|
||
"desc": "Change document restrictions and permissions.",
|
||
"completed": "Permissions changed",
|
||
"submit": "권한 변경",
|
||
"error": {
|
||
"failed": "An error occurred while changing PDF permissions."
|
||
},
|
||
"permissions": {
|
||
"preventAssembly": {
|
||
"label": "문서 조립 방지"
|
||
},
|
||
"preventExtractContent": {
|
||
"label": "콘텐츠 추출 방지"
|
||
},
|
||
"preventExtractForAccessibility": {
|
||
"label": "접근성을 위한 추출 방지"
|
||
},
|
||
"preventFillInForm": {
|
||
"label": "양식 작성 방지"
|
||
},
|
||
"preventModify": {
|
||
"label": "수정 방지"
|
||
},
|
||
"preventModifyAnnotations": {
|
||
"label": "주석 수정 방지"
|
||
},
|
||
"preventPrinting": {
|
||
"label": "인쇄 방지"
|
||
},
|
||
"preventPrintingFaithful": {
|
||
"label": "다른 형식으로 인쇄 방지"
|
||
}
|
||
},
|
||
"results": {
|
||
"title": "Modified PDFs"
|
||
},
|
||
"tooltip": {
|
||
"header": {
|
||
"title": "권한 변경"
|
||
},
|
||
"description": {
|
||
"text": "Changes document permissions, allowing/disallowing access to different features in PDF readers."
|
||
},
|
||
"warning": {
|
||
"text": "To make these permissions unchangeable, use the Add Password tool to set an owner password."
|
||
}
|
||
}
|
||
},
|
||
"removePassword": {
|
||
"title": "비밀번호 제거",
|
||
"desc": "PDF 문서에서 비밀번호 보호를 제거합니다.",
|
||
"tags": "보안,암호 해제,보안,비밀번호 해제,비밀번호 삭제",
|
||
"password": {
|
||
"stepTitle": "비밀번호 제거",
|
||
"label": "현재 비밀번호",
|
||
"placeholder": "Enter current password",
|
||
"completed": "Password configured"
|
||
},
|
||
"filenamePrefix": "decrypted",
|
||
"error": {
|
||
"failed": "An error occurred while removing the password from the PDF."
|
||
},
|
||
"tooltip": {
|
||
"description": "Removing password protection requires the password that was used to encrypt the PDF. This will decrypt the document, making it accessible without a password."
|
||
},
|
||
"submit": "제거",
|
||
"results": {
|
||
"title": "Decrypted PDFs"
|
||
},
|
||
"header": "비밀번호 제거 (복호화)",
|
||
"selectText": {
|
||
"1": "복호화할 PDF 선택",
|
||
"2": "비밀번호"
|
||
}
|
||
},
|
||
"automate": {
|
||
"title": "Automate",
|
||
"desc": "Build multi-step workflows by chaining together PDF actions. Ideal for recurring tasks.",
|
||
"invalidStep": "Invalid step",
|
||
"files": {
|
||
"placeholder": "Select files to process with this automation"
|
||
},
|
||
"selection": {
|
||
"title": "Automation Selection",
|
||
"saved": {
|
||
"title": "Saved"
|
||
},
|
||
"createNew": {
|
||
"title": "Create New Automation"
|
||
},
|
||
"suggested": {
|
||
"title": "Suggested"
|
||
}
|
||
},
|
||
"creation": {
|
||
"createTitle": "Create Automation",
|
||
"editTitle": "Edit Automation",
|
||
"intro": "Automations run tools sequentially. To get started, add tools in the order you want them to run.",
|
||
"name": {
|
||
"label": "Automation Name",
|
||
"placeholder": "My Automation"
|
||
},
|
||
"description": {
|
||
"label": "Description (optional)",
|
||
"placeholder": "Describe what this automation does..."
|
||
},
|
||
"tools": {
|
||
"selectTool": "Select a tool...",
|
||
"selected": "Selected Tools",
|
||
"remove": "Remove tool",
|
||
"configure": "Configure tool",
|
||
"notConfigured": "! Not Configured",
|
||
"addTool": "Add Tool",
|
||
"add": "Add a tool..."
|
||
},
|
||
"save": "Save Automation",
|
||
"unsavedChanges": {
|
||
"title": "Unsaved Changes",
|
||
"message": "You have unsaved changes. Are you sure you want to go back? All changes will be lost.",
|
||
"cancel": "Cancel",
|
||
"confirm": "Go Back"
|
||
},
|
||
"icon": {
|
||
"label": "Icon"
|
||
}
|
||
},
|
||
"run": {
|
||
"title": "Run Automation"
|
||
},
|
||
"sequence": {
|
||
"unnamed": "Unnamed Automation",
|
||
"steps": "{{count}} steps",
|
||
"running": "Running Automation...",
|
||
"run": "Run Automation",
|
||
"finish": "Finish"
|
||
},
|
||
"reviewTitle": "Automation Results",
|
||
"config": {
|
||
"loading": "Loading tool configuration...",
|
||
"noSettings": "This tool does not have configurable settings.",
|
||
"title": "Configure {{toolName}}",
|
||
"description": "Configure the settings for this tool. These settings will be applied when the automation runs.",
|
||
"cancel": "Cancel",
|
||
"save": "Save Configuration"
|
||
},
|
||
"copyToSaved": "Copy to Saved"
|
||
},
|
||
"automation": {
|
||
"suggested": {
|
||
"securePdfIngestion": "Secure PDF Ingestion",
|
||
"securePdfIngestionDesc": "Comprehensive PDF processing workflow that sanitises documents, applies OCR with cleanup, converts to PDF/A format for long-term archival, and optimises file size.",
|
||
"emailPreparation": "Email Preparation",
|
||
"emailPreparationDesc": "Optimises PDFs for email distribution by compressing files, splitting large documents into 20MB chunks for email compatibility, and removing metadata for privacy.",
|
||
"secureWorkflow": "Security Workflow",
|
||
"secureWorkflowDesc": "Secures PDF documents by removing potentially malicious content like JavaScript and embedded files, then adds password protection to prevent unauthorised access. Password is set to 'password' by default.",
|
||
"processImages": "Process Images",
|
||
"processImagesDesc": "Converts multiple image files into a single PDF document, then applies OCR technology to extract searchable text from the images."
|
||
}
|
||
},
|
||
"common": {
|
||
"copy": "Copy",
|
||
"copied": "Copied!",
|
||
"refresh": "Refresh",
|
||
"retry": "Retry",
|
||
"remaining": "remaining",
|
||
"used": "used",
|
||
"available": "available",
|
||
"cancel": "Cancel",
|
||
"preview": "Preview"
|
||
},
|
||
"config": {
|
||
"overview": {
|
||
"title": "Application Configuration",
|
||
"description": "Current application settings and configuration details."
|
||
},
|
||
"account": {
|
||
"overview": {
|
||
"title": "Account Settings",
|
||
"manageAccountPreferences": "Manage your account preferences",
|
||
"guestDescription": "You are signed in as a guest. Consider upgrading your account above."
|
||
},
|
||
"upgrade": {
|
||
"title": "Upgrade Guest Account",
|
||
"description": "Link your account to preserve your history and access more features!",
|
||
"socialLogin": "Upgrade with Social Account",
|
||
"linkWith": "Link with",
|
||
"emailPassword": "or enter your email & password",
|
||
"email": "Email",
|
||
"emailPlaceholder": "Enter your email",
|
||
"password": "Password (optional)",
|
||
"passwordPlaceholder": "Set a password",
|
||
"passwordNote": "Leave empty to use email verification only",
|
||
"upgradeButton": "Upgrade Account"
|
||
}
|
||
},
|
||
"apiKeys": {
|
||
"description": "Your API key for accessing Stirling's suite of PDF tools. Copy it to your project or refresh to generate a new one.",
|
||
"publicKeyAriaLabel": "Public API key",
|
||
"copyKeyAriaLabel": "Copy API key",
|
||
"refreshAriaLabel": "Refresh API key",
|
||
"includedCredits": "Included credits",
|
||
"purchasedCredits": "Purchased credits",
|
||
"totalCredits": "Total Credits",
|
||
"chartAriaLabel": "Credits usage: included {{includedUsed}} of {{includedTotal}}, purchased {{purchasedUsed}} of {{purchasedTotal}}",
|
||
"nextReset": "Next Reset",
|
||
"lastApiUse": "Last API Use",
|
||
"overlayMessage": "Generate a key to see credits and available credits",
|
||
"label": "API Key",
|
||
"guestInfo": "Guest users do not receive API keys. Create an account to get an API key you can use in your applications.",
|
||
"goToAccount": "Go to Account",
|
||
"refreshModal": {
|
||
"title": "Refresh API Keys",
|
||
"warning": "⚠️ Warning: This action will generate new API keys and make your previous keys invalid.",
|
||
"impact": "Any applications or services currently using these keys will stop working until you update them with the new keys.",
|
||
"confirmPrompt": "Are you sure you want to continue?",
|
||
"confirmCta": "Refresh Keys"
|
||
},
|
||
"generateError": "We couldn't generate your API key."
|
||
}
|
||
},
|
||
"AddAttachmentsRequest": {
|
||
"attachments": "Select Attachments",
|
||
"info": "Select files to attach to your PDF. These files will be embedded and accessible through the PDF's attachment panel.",
|
||
"selectFiles": "Select Files to Attach",
|
||
"placeholder": "Choose files...",
|
||
"addMoreFiles": "Add more files...",
|
||
"selectedFiles": "Selected Files",
|
||
"submit": "Add Attachments",
|
||
"results": {
|
||
"title": "Attachment Results"
|
||
},
|
||
"error": {
|
||
"failed": "Add attachments operation failed"
|
||
}
|
||
},
|
||
"termsAndConditions": "Terms & Conditions",
|
||
"logOut": "Log out",
|
||
"addAttachments": {
|
||
"error": {
|
||
"failed": "An error occurred while adding attachments to the PDF."
|
||
}
|
||
},
|
||
"autoRename": {
|
||
"description": "This tool will automatically rename PDF files based on their content. It analyzes the document to find the most suitable title from the text."
|
||
},
|
||
"customPosition": "Custom Position",
|
||
"details": "Details",
|
||
"downloadUnavailable": "Download unavailable for this item",
|
||
"invalidUndoData": "Cannot undo: invalid operation data",
|
||
"margin": {
|
||
"large": "Large",
|
||
"medium": "Medium",
|
||
"small": "Small",
|
||
"xLarge": "Extra Large"
|
||
},
|
||
"noFilesToUndo": "Cannot undo: no files were processed in the last operation",
|
||
"noOperationToUndo": "No operation to undo",
|
||
"noValidFiles": "No valid files to process",
|
||
"operationCancelled": "Operation cancelled",
|
||
"pageEdit": {
|
||
"deselectAll": "Select None",
|
||
"selectAll": "Select All"
|
||
},
|
||
"quickPosition": "Quick Position",
|
||
"reorganizePages": {
|
||
"error": {
|
||
"failed": "Failed to reorganize pages"
|
||
},
|
||
"results": {
|
||
"title": "Pages Reorganized"
|
||
},
|
||
"settings": {
|
||
"title": "Settings"
|
||
},
|
||
"submit": "Reorganize Pages"
|
||
},
|
||
"replace-color": {
|
||
"options": {
|
||
"fill": "Fill colour",
|
||
"gradient": "Gradient"
|
||
},
|
||
"previewOverlayOpacity": "Preview overlay opacity",
|
||
"previewOverlayTransparency": "Preview overlay transparency",
|
||
"previewOverlayVisibility": "Show preview overlay",
|
||
"selectText": {
|
||
"1": "색상 교체 또는 반전 옵션",
|
||
"2": "기본값(기본 고대비 색상)",
|
||
"3": "사용자 지정(사용자 지정 색상)",
|
||
"4": "전체 반전(모든 색상 반전)",
|
||
"5": "고대비 색상 옵션",
|
||
"6": "검정 배경에 흰색 텍스트",
|
||
"7": "흰색 배경에 검정 텍스트",
|
||
"8": "검정 배경에 노란색 텍스트",
|
||
"9": "검정 배경에 초록색 텍스트",
|
||
"10": "텍스트 색상 선택",
|
||
"11": "배경 색상 선택",
|
||
"12": "Choose start colour",
|
||
"13": "Choose end colour"
|
||
},
|
||
"submit": "교체",
|
||
"title": "색상 교체-반전",
|
||
"header": "PDF 색상 교체-반전"
|
||
},
|
||
"size": "Size",
|
||
"submit": "Submit",
|
||
"success": "Success",
|
||
"tools": {
|
||
"noSearchResults": "No tools found",
|
||
"noTools": "No tools available"
|
||
},
|
||
"undoDataMismatch": "Cannot undo: operation data is corrupted",
|
||
"undoFailed": "Failed to undo operation",
|
||
"undoQuotaError": "Cannot undo: insufficient storage space",
|
||
"undoStorageError": "Undo completed but some files could not be saved to storage",
|
||
"undoSuccess": "Operation undone successfully",
|
||
"unsupported": "Unsupported",
|
||
"onboarding": {
|
||
"welcomeModal": {
|
||
"title": "Welcome to Stirling PDF!",
|
||
"description": "Would you like to take a quick 1-minute tour to learn the key features and how to get started?",
|
||
"helpHint": "You can always access this tour later from the <strong>Help</strong> button in the bottom left.",
|
||
"startTour": "Start Tour",
|
||
"maybeLater": "Maybe Later",
|
||
"dontShowAgain": "Don't Show Again"
|
||
},
|
||
"allTools": "This is the <strong>All Tools</strong> panel, where you can browse and select from all available PDF tools.",
|
||
"selectCropTool": "Let's select the <strong>Crop</strong> tool to demonstrate how to use one of the tools.",
|
||
"toolInterface": "This is the <strong>Crop</strong> tool interface. As you can see, there's not much there because we haven't added any PDF files to work with yet.",
|
||
"filesButton": "The <strong>Files</strong> button on the Quick Access bar allows you to upload PDFs to use the tools on.",
|
||
"fileSources": "You can upload new files or access recent files from here. For the tour, we'll just use a sample file.",
|
||
"workbench": "This is the <strong>Workbench</strong> - the main area where you view and edit your PDFs.",
|
||
"viewSwitcher": "Use these controls to select how you want to view your PDFs.",
|
||
"viewer": "The <strong>Viewer</strong> lets you read and annotate your PDFs.",
|
||
"pageEditor": "The <strong>Page Editor</strong> allows you to do various operations on the pages within your PDFs, such as reordering, rotating and deleting.",
|
||
"activeFiles": "The <strong>Active Files</strong> view shows all of the PDFs you have loaded into the tool, and allows you to select which ones to process.",
|
||
"fileCheckbox": "Clicking one of the files selects it for processing. You can select multiple files for batch operations.",
|
||
"selectControls": "The <strong>Right Rail</strong> contains buttons to quickly select/deselect all of your active PDFs, along with buttons to change the app's theme or language.",
|
||
"cropSettings": "Now that we've selected the file we want crop, we can configure the Crop tool to choose the area that we want to crop the PDF to.",
|
||
"runButton": "Once the tool has been configured, this button allows you to run the tool on all the selected PDFs.",
|
||
"results": "After the tool has finished running, the <strong>Review</strong> step will show a preview of the results in this panel, and allow you to undo the operation or download the file. ",
|
||
"fileReplacement": "The modified file will replace the original file in the Workbench automatically, allowing you to easily run it through more tools.",
|
||
"pinButton": "You can use the <strong>Pin</strong> button if you'd rather your files stay active after running tools on them.",
|
||
"wrapUp": "You're all set! You've learnt about the main areas of the app and how to use them. Click the <strong>Help</strong> button whenever you like to see this tour again.",
|
||
"previous": "Previous",
|
||
"next": "Next",
|
||
"finish": "Finish",
|
||
"startTour": "Start Tour",
|
||
"startTourDescription": "Take a guided tour of Stirling PDF's key features"
|
||
},
|
||
"workspace": {
|
||
"title": "Workspace",
|
||
"people": {
|
||
"title": "People",
|
||
"description": "Manage workspace members and their permissions",
|
||
"loading": "Loading people...",
|
||
"searchMembers": "Search members...",
|
||
"addMembers": "Add Members",
|
||
"inviteMembers": {
|
||
"label": "Invite Members",
|
||
"subtitle": "Type or paste in emails below, separated by commas. Your workspace will be billed by members."
|
||
},
|
||
"user": "User",
|
||
"role": "Role",
|
||
"team": "Team",
|
||
"status": "Status",
|
||
"actions": "Actions",
|
||
"noMembersFound": "No members found",
|
||
"active": "Active",
|
||
"disabled": "Disabled",
|
||
"activeSession": "Active session",
|
||
"member": "Member",
|
||
"admin": "Admin",
|
||
"roleDescriptions": {
|
||
"admin": "Can manage settings and invite members, with full administrative access.",
|
||
"member": "Can view and edit shared files, but cannot manage workspace settings or members."
|
||
},
|
||
"editRole": "Edit Role",
|
||
"enable": "Enable",
|
||
"disable": "Disable",
|
||
"deleteUser": "Delete User",
|
||
"deleteUserSuccess": "User deleted successfully",
|
||
"deleteUserError": "Failed to delete user",
|
||
"confirmDelete": "Are you sure you want to delete this user? This action cannot be undone.",
|
||
"addMember": {
|
||
"title": "Add Member",
|
||
"username": "Username (Email)",
|
||
"usernamePlaceholder": "[email protected]",
|
||
"password": "Password",
|
||
"passwordPlaceholder": "Enter password",
|
||
"role": "Role",
|
||
"team": "Team (Optional)",
|
||
"teamPlaceholder": "Select a team",
|
||
"forcePasswordChange": "Force password change on first login",
|
||
"cancel": "Cancel",
|
||
"submit": "Add Member",
|
||
"usernameRequired": "Username and password are required",
|
||
"passwordTooShort": "Password must be at least 6 characters",
|
||
"success": "User created successfully",
|
||
"error": "Failed to create user"
|
||
},
|
||
"editMember": {
|
||
"title": "Edit Member",
|
||
"editing": "Editing:",
|
||
"role": "Role",
|
||
"team": "Team (Optional)",
|
||
"teamPlaceholder": "Select a team",
|
||
"cancel": "Cancel",
|
||
"submit": "Update Member",
|
||
"success": "User updated successfully",
|
||
"error": "Failed to update user"
|
||
},
|
||
"toggleEnabled": {
|
||
"success": "User status updated successfully",
|
||
"error": "Failed to update user status"
|
||
},
|
||
"delete": {
|
||
"success": "User deleted successfully",
|
||
"error": "Failed to delete user"
|
||
},
|
||
"emailInvite": {
|
||
"tab": "Email Invite",
|
||
"description": "Type or paste in emails below, separated by commas. Users will receive login credentials via email.",
|
||
"emails": "Email Addresses",
|
||
"emailsPlaceholder": "[email protected], [email protected]",
|
||
"emailsRequired": "At least one email address is required",
|
||
"submit": "Send Invites",
|
||
"success": "user(s) invited successfully",
|
||
"partialSuccess": "Some invites failed",
|
||
"allFailed": "Failed to invite users",
|
||
"error": "Failed to send invites"
|
||
},
|
||
"directInvite": {
|
||
"tab": "Direct Create"
|
||
},
|
||
"inviteLinkTab": {
|
||
"tab": "Invite Link"
|
||
},
|
||
"inviteLink": {
|
||
"description": "Generate a secure link that allows the user to set their own password",
|
||
"email": "Email Address",
|
||
"emailPlaceholder": "[email protected] (optional)",
|
||
"emailDescription": "Optional - leave blank for a general invite link that can be used by anyone",
|
||
"emailRequired": "Email address is required",
|
||
"emailOptional": "Optional - leave blank for a general invite link",
|
||
"emailRequiredForSend": "Email address is required to send email notification",
|
||
"expiryHours": "Expiry Hours",
|
||
"expiryDescription": "How many hours until the link expires",
|
||
"sendEmail": "Send invite link via email",
|
||
"sendEmailDescription": "If enabled, the invite link will be sent to the specified email address",
|
||
"smtpRequired": "SMTP not configured",
|
||
"generate": "Generate Link",
|
||
"generated": "Invite Link Generated",
|
||
"copied": "Link copied to clipboard",
|
||
"success": "Invite link generated successfully",
|
||
"successWithEmail": "Invite link generated and sent via email",
|
||
"emailFailed": "Invite link generated, but email failed",
|
||
"emailFailedDetails": "Error: {0}. Please share the invite link manually.",
|
||
"error": "Failed to generate invite link",
|
||
"submit": "Generate Invite Link"
|
||
},
|
||
"inviteMode": {
|
||
"username": "Username",
|
||
"email": "Email",
|
||
"link": "Link",
|
||
"emailDisabled": "Email invites require SMTP configuration and mail.enableInvites=true in settings"
|
||
},
|
||
"license": {
|
||
"users": "users",
|
||
"availableSlots": "Available Slots",
|
||
"grandfathered": "Grandfathered",
|
||
"grandfatheredShort": "{{count}} grandfathered",
|
||
"fromLicense": "from license",
|
||
"slotsAvailable": "{{count}} user slot(s) available",
|
||
"noSlotsAvailable": "No slots available",
|
||
"currentUsage": "Currently using {{current}} of {{max}} user licences"
|
||
}
|
||
},
|
||
"teams": {
|
||
"title": "Teams",
|
||
"description": "Manage teams and organize workspace members",
|
||
"loading": "Loading teams...",
|
||
"loadingDetails": "Loading team details...",
|
||
"createNewTeam": "Create New Team",
|
||
"teamName": "Team Name",
|
||
"totalMembers": "Total Members",
|
||
"actions": "Actions",
|
||
"noTeamsFound": "No teams found",
|
||
"noMembers": "No members in this team",
|
||
"system": "System",
|
||
"addMember": "Add Member",
|
||
"viewTeam": "View Team",
|
||
"removeMember": "Remove from team",
|
||
"cannotRemoveFromSystemTeam": "Cannot remove from system team",
|
||
"renameTeamLabel": "Rename Team",
|
||
"deleteTeamLabel": "Delete Team",
|
||
"cannotDeleteInternal": "Cannot delete the Internal team",
|
||
"confirmDelete": "Are you sure you want to delete this team? This team must be empty to delete.",
|
||
"confirmRemove": "Remove user from this team?",
|
||
"cannotRenameInternal": "Cannot rename the Internal team",
|
||
"cannotAddToInternal": "Cannot add members to the Internal team",
|
||
"teamNotFound": "Team not found",
|
||
"backToTeams": "Back to Teams",
|
||
"memberCount": "{{count}} members",
|
||
"removeMemberSuccess": "User removed from team",
|
||
"removeMemberError": "Failed to remove user from team",
|
||
"createTeam": {
|
||
"title": "Create New Team",
|
||
"teamName": "Team Name",
|
||
"teamNamePlaceholder": "Enter team name",
|
||
"cancel": "Cancel",
|
||
"submit": "Create Team",
|
||
"nameRequired": "Team name is required",
|
||
"success": "Team created successfully",
|
||
"error": "Failed to create team"
|
||
},
|
||
"renameTeam": {
|
||
"title": "Rename Team",
|
||
"renaming": "Renaming:",
|
||
"newTeamName": "New Team Name",
|
||
"newTeamNamePlaceholder": "Enter new team name",
|
||
"cancel": "Cancel",
|
||
"submit": "Rename Team",
|
||
"nameRequired": "Team name is required",
|
||
"success": "Team renamed successfully",
|
||
"error": "Failed to rename team"
|
||
},
|
||
"deleteTeam": {
|
||
"success": "Team deleted successfully",
|
||
"error": "Failed to delete team. Make sure the team is empty.",
|
||
"teamMustBeEmpty": "Team must be empty before deletion"
|
||
},
|
||
"addMemberToTeam": {
|
||
"title": "Add Member to Team",
|
||
"addingTo": "Adding to",
|
||
"selectUser": "Select User",
|
||
"selectUserPlaceholder": "Choose a user",
|
||
"selectUserRequired": "Please select a user",
|
||
"currentlyIn": "currently in",
|
||
"willBeMoved": "Note: This user will be moved from their current team to this team.",
|
||
"cancel": "Cancel",
|
||
"submit": "Add Member",
|
||
"userRequired": "Please select a user",
|
||
"success": "Member added to team successfully",
|
||
"error": "Failed to add member to team"
|
||
},
|
||
"changeTeam": {
|
||
"label": "Change Team",
|
||
"title": "Change Team",
|
||
"changing": "Moving",
|
||
"selectTeam": "Select Team",
|
||
"selectTeamPlaceholder": "Choose a team",
|
||
"selectTeamRequired": "Please select a team",
|
||
"success": "Team changed successfully",
|
||
"error": "Failed to change team",
|
||
"submit": "Change Team"
|
||
}
|
||
}
|
||
},
|
||
"plan": {
|
||
"currency": "Currency",
|
||
"popular": "Popular",
|
||
"current": "Current Plan",
|
||
"upgrade": "Upgrade",
|
||
"contact": "Contact Us",
|
||
"customPricing": "Custom",
|
||
"showComparison": "Compare All Features",
|
||
"hideComparison": "Hide Feature Comparison",
|
||
"featureComparison": "Feature Comparison",
|
||
"activePlan": {
|
||
"title": "Active Plan",
|
||
"subtitle": "Your current subscription details"
|
||
},
|
||
"availablePlans": {
|
||
"title": "Available Plans",
|
||
"subtitle": "Choose the plan that fits your needs"
|
||
},
|
||
"static": {
|
||
"title": "Billing Information",
|
||
"message": "Online billing is not currently configured. To upgrade your plan or manage subscriptions, please contact us directly.",
|
||
"contactSales": "Contact Sales",
|
||
"contactToUpgrade": "Contact us to upgrade or customize your plan",
|
||
"maxUsers": "Max Users",
|
||
"upTo": "Up to"
|
||
},
|
||
"period": {
|
||
"month": "month"
|
||
},
|
||
"free": {
|
||
"name": "Free",
|
||
"highlight1": "Limited Tool Usage Per week",
|
||
"highlight2": "Access to all tools",
|
||
"highlight3": "Community support"
|
||
},
|
||
"pro": {
|
||
"name": "Pro",
|
||
"highlight1": "Unlimited Tool Usage",
|
||
"highlight2": "Advanced PDF tools",
|
||
"highlight3": "No watermarks"
|
||
},
|
||
"enterprise": {
|
||
"name": "Enterprise",
|
||
"highlight1": "Custom pricing",
|
||
"highlight2": "Dedicated support",
|
||
"highlight3": "Latest features"
|
||
},
|
||
"feature": {
|
||
"title": "Feature",
|
||
"pdfTools": "Basic PDF Tools",
|
||
"fileSize": "File Size Limit",
|
||
"automation": "Automate tool workflows",
|
||
"api": "API Access",
|
||
"priority": "Priority Support",
|
||
"customPricing": "Custom Pricing"
|
||
}
|
||
},
|
||
"subscription": {
|
||
"status": {
|
||
"active": "Active",
|
||
"pastDue": "Past Due",
|
||
"canceled": "Canceled",
|
||
"incomplete": "Incomplete",
|
||
"trialing": "Trial",
|
||
"none": "No Subscription"
|
||
},
|
||
"renewsOn": "Renews on {{date}}",
|
||
"cancelsOn": "Cancels on {{date}}"
|
||
},
|
||
"billing": {
|
||
"manageBilling": "Manage Billing",
|
||
"portal": {
|
||
"error": "Failed to open billing portal"
|
||
}
|
||
},
|
||
"payment": {
|
||
"preparing": "Preparing your checkout...",
|
||
"upgradeTitle": "Upgrade to {{planName}}",
|
||
"success": "Payment Successful!",
|
||
"successMessage": "Your subscription has been activated successfully. You will receive a confirmation email shortly.",
|
||
"autoClose": "This window will close automatically...",
|
||
"error": "Payment Error"
|
||
},
|
||
"firstLogin": {
|
||
"title": "First Time Login",
|
||
"welcomeTitle": "Welcome!",
|
||
"welcomeMessage": "For security reasons, you must change your password on your first login.",
|
||
"loggedInAs": "Logged in as",
|
||
"error": "Error",
|
||
"currentPassword": "Current Password",
|
||
"enterCurrentPassword": "Enter your current password",
|
||
"newPassword": "New Password",
|
||
"enterNewPassword": "Enter new password (min 8 characters)",
|
||
"confirmPassword": "Confirm New Password",
|
||
"reEnterNewPassword": "Re-enter new password",
|
||
"changePassword": "Change Password",
|
||
"allFieldsRequired": "All fields are required",
|
||
"passwordsDoNotMatch": "New passwords do not match",
|
||
"passwordTooShort": "Password must be at least 8 characters",
|
||
"passwordMustBeDifferent": "New password must be different from current password",
|
||
"passwordChangedSuccess": "Password changed successfully! Please log in again.",
|
||
"passwordChangeFailed": "Failed to change password. Please check your current password."
|
||
},
|
||
"invite": {
|
||
"welcome": "Welcome to Stirling PDF",
|
||
"invalidToken": "Invalid invitation link",
|
||
"validationError": "Failed to validate invitation link",
|
||
"passwordRequired": "Password is required",
|
||
"passwordTooShort": "Password must be at least 6 characters",
|
||
"passwordMismatch": "Passwords do not match",
|
||
"acceptError": "Failed to create account",
|
||
"validating": "Validating invitation...",
|
||
"invalidInvitation": "Invalid Invitation",
|
||
"goToLogin": "Go to Login",
|
||
"welcomeTitle": "You've been invited!",
|
||
"welcomeSubtitle": "Complete your account setup to get started",
|
||
"accountFor": "Creating account for",
|
||
"linkExpires": "Link expires",
|
||
"email": "Email address",
|
||
"emailPlaceholder": "Enter your email address",
|
||
"emailRequired": "Email address is required",
|
||
"invalidEmail": "Invalid email address",
|
||
"choosePassword": "Choose a password",
|
||
"passwordPlaceholder": "Enter your password",
|
||
"confirmPassword": "Confirm password",
|
||
"confirmPasswordPlaceholder": "Re-enter your password",
|
||
"createAccount": "Create Account",
|
||
"creating": "Creating Account...",
|
||
"alreadyHaveAccount": "Already have an account?",
|
||
"signIn": "Sign in"
|
||
},
|
||
"audit": {
|
||
"error": {
|
||
"title": "Error loading audit system"
|
||
},
|
||
"notAvailable": "Audit system not available",
|
||
"notAvailableMessage": "The audit system is not configured or not available.",
|
||
"disabled": "Audit logging is disabled",
|
||
"disabledMessage": "Enable audit logging in your application configuration to track system events.",
|
||
"systemStatus": {
|
||
"title": "System Status",
|
||
"status": "Audit Logging",
|
||
"enabled": "Enabled",
|
||
"disabled": "Disabled",
|
||
"level": "Audit Level",
|
||
"retention": "Retention Period",
|
||
"days": "days",
|
||
"totalEvents": "Total Events"
|
||
},
|
||
"tabs": {
|
||
"dashboard": "Dashboard",
|
||
"events": "Audit Events",
|
||
"export": "Export"
|
||
},
|
||
"charts": {
|
||
"title": "Audit Dashboard",
|
||
"error": "Error loading charts",
|
||
"day": "Day",
|
||
"week": "Week",
|
||
"month": "Month",
|
||
"byType": "Events by Type",
|
||
"byUser": "Events by User",
|
||
"overTime": "Events Over Time"
|
||
},
|
||
"events": {
|
||
"title": "Audit Events",
|
||
"filterByType": "Filter by type",
|
||
"filterByUser": "Filter by user",
|
||
"startDate": "Start date",
|
||
"endDate": "End date",
|
||
"clearFilters": "Clear",
|
||
"error": "Error loading events",
|
||
"noEvents": "No events found",
|
||
"timestamp": "Timestamp",
|
||
"type": "Type",
|
||
"user": "User",
|
||
"ipAddress": "IP Address",
|
||
"actions": "Actions",
|
||
"viewDetails": "View Details",
|
||
"eventDetails": "Event Details",
|
||
"details": "Details"
|
||
},
|
||
"export": {
|
||
"title": "Export Audit Data",
|
||
"description": "Export audit events to CSV or JSON format. Use filters to limit the exported data.",
|
||
"format": "Export Format",
|
||
"filters": "Filters (Optional)",
|
||
"filterByType": "Filter by type",
|
||
"filterByUser": "Filter by user",
|
||
"startDate": "Start date",
|
||
"endDate": "End date",
|
||
"clearFilters": "Clear",
|
||
"exportButton": "Export Data",
|
||
"error": "Failed to export data"
|
||
}
|
||
},
|
||
"usage": {
|
||
"noData": "No data available",
|
||
"error": "Error loading usage statistics",
|
||
"noDataMessage": "No usage statistics are currently available.",
|
||
"controls": {
|
||
"top10": "Top 10",
|
||
"top20": "Top 20",
|
||
"all": "All",
|
||
"refresh": "Refresh",
|
||
"dataTypeLabel": "Data Type:",
|
||
"dataType": {
|
||
"all": "All",
|
||
"api": "API",
|
||
"ui": "UI"
|
||
}
|
||
},
|
||
"showing": {
|
||
"top10": "Top 10",
|
||
"top20": "Top 20",
|
||
"all": "All"
|
||
},
|
||
"stats": {
|
||
"totalEndpoints": "Total Endpoints",
|
||
"totalVisits": "Total Visits",
|
||
"showing": "Showing",
|
||
"selectedVisits": "Selected Visits"
|
||
},
|
||
"chart": {
|
||
"title": "Endpoint Usage Chart"
|
||
},
|
||
"table": {
|
||
"title": "Detailed Statistics",
|
||
"endpoint": "Endpoint",
|
||
"visits": "Visits",
|
||
"percentage": "Percentage",
|
||
"noData": "No data available"
|
||
}
|
||
},
|
||
"backendHealth": {
|
||
"checking": "Checking backend status...",
|
||
"online": "Backend Online",
|
||
"offline": "Backend Offline"
|
||
},
|
||
"autoRedact": {
|
||
"tags": "검열,숨김,검게-가림,검은색,마커,숨김",
|
||
"title": "자동 검열",
|
||
"header": "자동 검열",
|
||
"colorLabel": "색상",
|
||
"textsToRedactLabel": "검열할 텍스트 (줄 단위로 구분)",
|
||
"textsToRedactPlaceholder": "예: \\n기밀 \\n최고 기밀",
|
||
"useRegexLabel": "정규식 사용",
|
||
"wholeWordSearchLabel": "전체 단어 검색",
|
||
"customPaddingLabel": "사용자 지정 여백",
|
||
"convertPDFToImageLabel": "PDF를 PDF-Image로 변환 (박스 뒤의 텍스트 제거에 사용)",
|
||
"submitButton": "제출"
|
||
},
|
||
"replaceColorPdf": {
|
||
"tags": "색상 교체,페이지 작업,백엔드,서버 사이드"
|
||
}
|
||
}
|