Compare commits
98 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d532db91f9 | ||
|
|
bd0bf404f5 | ||
|
|
e51a9c209a | ||
|
|
6bf172fb25 | ||
|
|
a1e93e0f5d | ||
|
|
6392f6ec12 | ||
|
|
fbdff5c97f | ||
|
|
2ecc4ed080 | ||
|
|
3318cb96b2 | ||
|
|
ab1297aee0 | ||
|
|
25a0cb7681 | ||
|
|
116b034878 | ||
|
|
038de2e264 | ||
|
|
7e51cf8c5a | ||
|
|
a1eadba769 | ||
|
|
3145f5fdd0 | ||
|
|
8393dd4731 | ||
|
|
768877d969 | ||
|
|
14a90f5e50 | ||
|
|
99b0150e7a | ||
|
|
3be12c8988 | ||
|
|
89345c8d60 | ||
|
|
49f1f4e7c7 | ||
|
|
d0ce7db9ee | ||
|
|
53a0291cc2 | ||
|
|
9a3bc839dd | ||
|
|
e519840bd6 | ||
|
|
ed32a3ca33 | ||
|
|
369ac99a16 | ||
|
|
39ac823b05 | ||
|
|
548ae4dba3 | ||
|
|
f69d593649 | ||
|
|
423af5f077 | ||
|
|
76e5e1ad00 | ||
|
|
420caa4d8d | ||
|
|
fdeeb68a6d | ||
|
|
9fe803a0b1 | ||
|
|
dd9ba90a03 | ||
|
|
2bc739316a | ||
|
|
74da8c340d | ||
|
|
766cb4410b | ||
|
|
78fe6d6ea8 | ||
|
|
6b99decb56 | ||
|
|
323745e61f | ||
|
|
22c19670e9 | ||
|
|
a1b7aaddb8 | ||
|
|
cfba9681c4 | ||
|
|
a019b8b5ca | ||
|
|
bd9b267562 | ||
|
|
b0f8f56650 | ||
|
|
a71e813e82 | ||
|
|
75e7665d6e | ||
|
|
12293f5297 | ||
|
|
4899ee0bee | ||
|
|
563c17c84e | ||
|
|
d94eca4ee7 | ||
|
|
f4a01884bd | ||
|
|
105d7f12ac | ||
|
|
30c115a7de | ||
|
|
88a90f22a3 | ||
|
|
c72c712c1b | ||
|
|
7205801e76 | ||
|
|
64f4f54b9d | ||
|
|
0287d88895 | ||
|
|
cdc075b27c | ||
|
|
604d9827c5 | ||
|
|
bdeb6bf188 | ||
|
|
19e122be99 | ||
|
|
f3ddf18a23 | ||
|
|
51f863e1e4 | ||
|
|
0a9381d538 | ||
|
|
a9514b54eb | ||
|
|
d647cb196f | ||
|
|
b69973f614 | ||
|
|
fb9c42f4a1 | ||
|
|
b873e3cdf8 | ||
|
|
e9fc024332 | ||
|
|
d4956fad8c | ||
|
|
9d1dfe742e | ||
|
|
e32c092af8 | ||
|
|
18a2664b54 | ||
|
|
954e46c5ec | ||
|
|
e0f306d3f7 | ||
|
|
09db6618d6 | ||
|
|
c5ea254945 | ||
|
|
1fc1ecbaa6 | ||
|
|
bc4640c3f0 | ||
|
|
1e2eb9b07a | ||
|
|
ece00956d9 | ||
|
|
af5bbd8838 | ||
|
|
3a8f2495ea | ||
|
|
993f5e5097 | ||
|
|
1f99c26e78 | ||
|
|
42907ade21 | ||
|
|
b3bc0b4e5a | ||
|
|
12e24f3ec1 | ||
|
|
42610b2645 | ||
|
|
4e06e8c0c0 |
1
.gitattributes
vendored
1
.gitattributes
vendored
@@ -1,5 +1,6 @@
|
||||
# Ignore all JavaScript files in a directory
|
||||
src/main/resources/static/pdfjs/* linguist-vendored
|
||||
src/main/resources/static/pdfjs/** linguist-vendored
|
||||
src/main/resources/static/css/bootstrap-icons.css linguist-vendored
|
||||
src/main/resources/static/css/bootstrap.min.css linguist-vendored
|
||||
src/main/resources/static/css/fonts/* linguist-vendored
|
||||
|
||||
4
.github/pull_request_template.md
vendored
Normal file
4
.github/pull_request_template.md
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
# License Agreement for Contributions
|
||||
By submitting this pull request, I acknowledge and agree that my contributions will be included in Stirling-PDF and that they can be relicensed in the future under MPL 2.0 (Mozilla Public License Version 2.0) license.
|
||||
|
||||
(This does not change the general open-source nature of Stirling-PDF, simply moving from one license to another license)
|
||||
3
.github/workflows/pull_request_template.md
vendored
Normal file
3
.github/workflows/pull_request_template.md
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
# License Agreement for Contributions
|
||||
By submitting this pull request, I acknowledge and agree that my contributions will be included in Stirling-PDF and that they can be relicensed in the future under MPL 2.0 (Mozilla Public License Version 2.0) license.
|
||||
(This does not change the open-source nature of Stirling-PDF, simply moving from one license to another license)
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@@ -119,4 +119,5 @@ watchedFolders/
|
||||
*.db
|
||||
/build
|
||||
|
||||
/.vscode
|
||||
/.vscode
|
||||
/.idea
|
||||
@@ -12,21 +12,22 @@ RUN apt-get update && \
|
||||
|
||||
|
||||
# Set Environment Variables
|
||||
ENV PUID=1000 \
|
||||
PGID=1000 \
|
||||
UMASK=022 \
|
||||
DOCKER_ENABLE_SECURITY=false \
|
||||
ENV DOCKER_ENABLE_SECURITY=false \
|
||||
HOME=/home/stirlingpdfuser \
|
||||
VERSION_TAG=$VERSION_TAG
|
||||
VERSION_TAG=$VERSION_TAG
|
||||
# PUID=1000 \
|
||||
# PGID=1000 \
|
||||
# UMASK=022 \
|
||||
|
||||
# Create user and group
|
||||
RUN groupadd -g $PGID stirlingpdfgroup && \
|
||||
useradd -u $PUID -g stirlingpdfgroup -s /bin/sh stirlingpdfuser && \
|
||||
mkdir -p $HOME && chown stirlingpdfuser:stirlingpdfgroup $HOME
|
||||
#RUN groupadd -g $PGID stirlingpdfgroup && \
|
||||
# useradd -u $PUID -g stirlingpdfgroup -s /bin/sh stirlingpdfuser && \
|
||||
# mkdir -p $HOME && chown stirlingpdfuser:stirlingpdfgroup $HOME
|
||||
|
||||
# Set up necessary directories and permissions
|
||||
RUN mkdir -p /scripts /usr/share/fonts/opentype/noto /configs /customFiles && \
|
||||
chown -R stirlingpdfuser:stirlingpdfgroup /usr/share/fonts/opentype/noto /configs /customFiles
|
||||
RUN mkdir -p /scripts /usr/share/fonts/opentype/noto /configs /customFiles
|
||||
|
||||
# chown -R stirlingpdfuser:stirlingpdfgroup /usr/share/fonts/opentype/noto /configs /customFiles
|
||||
|
||||
# Copy necessary files
|
||||
COPY src/main/resources/static/fonts/*.ttf /usr/share/fonts/opentype/noto/
|
||||
@@ -34,8 +35,8 @@ COPY src/main/resources/static/fonts/*.otf /usr/share/fonts/opentype/noto/
|
||||
COPY build/libs/*.jar app.jar
|
||||
|
||||
# Set font cache and permissions
|
||||
RUN fc-cache -f -v && \
|
||||
chown stirlingpdfuser:stirlingpdfgroup /app.jar
|
||||
RUN fc-cache -f -v
|
||||
# chown stirlingpdfuser:stirlingpdfgroup /app.jar
|
||||
|
||||
|
||||
|
||||
@@ -48,5 +49,6 @@ ENV ENDPOINTS_GROUPS_TO_REMOVE=Python,OpenCV,OCRmyPDF
|
||||
ENV DOCKER_ENABLE_SECURITY=false
|
||||
|
||||
# Run the application
|
||||
USER stirlingpdfuser
|
||||
#USER stirlingpdfuser
|
||||
|
||||
CMD ["java", "-jar", "/app.jar"]
|
||||
|
||||
17
README.md
17
README.md
@@ -19,7 +19,6 @@ Any file which has been downloaded by the user will have already been deleted fr
|
||||
|
||||
Feel free to request any features or bug fixes either in github issues or our [Discord](https://discord.gg/Cn8pWhQRxZ)
|
||||
|
||||
|
||||

|
||||
|
||||
## Features
|
||||
@@ -33,6 +32,7 @@ Feel free to request any features or bug fixes either in github issues or our [D
|
||||
## **PDF Features**
|
||||
|
||||
### **Page Operations**
|
||||
- View and modify PDFs - View multi page PDFs with custom viewing sorting and searching. Plus on page edit features like annotate, draw and adding text and images. (Using PDF.js with Joxit and Liberation.Liberation fonts)
|
||||
- Full interactive GUI for merging/splitting/rotating/moving PDFs and their pages.
|
||||
- Merge multiple PDFs together into a single resultant file.
|
||||
- Split PDFs into multiple files at specified page numbers or extract all pages as individual files.
|
||||
@@ -145,7 +145,7 @@ services:
|
||||
Please view https://github.com/Frooodle/Stirling-PDF/blob/main/HowToUseOCR.md
|
||||
|
||||
## Want to add your own language?
|
||||
Stirling PDF currently supports 18!
|
||||
Stirling PDF currently supports 19!
|
||||
- English (English) (en_GB)
|
||||
- English (US) (en_US)
|
||||
- Arabic (العربية) (ar_AR)
|
||||
@@ -164,6 +164,7 @@ Stirling PDF currently supports 18!
|
||||
- Basque (Euskara) (eu_ES)
|
||||
- Japanese (日本語) (ja_JP)
|
||||
- Dutch (Nederlands) (nl_NL)
|
||||
- Greek (el_GR)
|
||||
|
||||
If you want to add your own language to Stirling-PDF please refer
|
||||
https://github.com/Frooodle/Stirling-PDF/blob/main/HowToAddNewLanguage.md
|
||||
@@ -222,7 +223,7 @@ metrics:
|
||||
- customStaticFilePath. Customise static files such as the app logo by placing files in the /customFiles/static/ directory. An example of customising app logo is placing a /customFiles/static/favicon.svg to override current SVG. This can be used to change any images/icons/css/fonts/js etc in Stirling-PDF
|
||||
|
||||
### Environment only parameters
|
||||
- ``SYSTEM_ROOTURIPATH`` ie set to ``pdf-app`` to Set the application's root URI tp ``localhost:8080/pdf-app``
|
||||
- ``SYSTEM_ROOTURIPATH`` ie set to ``/pdf-app`` to Set the application's root URI to ``localhost:8080/pdf-app``
|
||||
- ``SYSTEM_CONNECTIONTIMEOUTMINUTES`` to set custom connection timeout values
|
||||
- ``DOCKER_ENABLE_SECURITY`` to tell docker to download security jar (required as true for auth login)
|
||||
|
||||
@@ -232,10 +233,12 @@ For those wanting to use Stirling-PDFs backend API to link with their own custom
|
||||
|
||||
|
||||
## Login authentication
|
||||

|
||||
### Prerequisites:
|
||||
- User must have the folder ./configs volumed within docker so that it is retained during updates.
|
||||
- Docker uses must download the security jar version by setting ``DOCKER_ENABLE_SECURITY`` to ``true`` in environment variables.
|
||||
- Now the initial user will be generated with username ``admin`` and password ``stirling``. On login you will be forced to change the password to a new one.
|
||||
- Then either enable login via the settings.yml file or via setting ``SECURITY_ENABLE_LOGIN`` to ``true``
|
||||
- Now the initial user will be generated with username ``admin`` and password ``stirling``. On login you will be forced to change the password to a new one. You can also use the environment variables ``SECURITY_INITIALLOGIN_USERNAME`` and ``SECURITY_INITIALLOGIN_PASSWORD`` to set your own straight away (Recommended to remove them after user creation).
|
||||
|
||||
Once the above has been done, on restart, a new stirling-pdf-DB.mv.db will show if everything worked.
|
||||
|
||||
@@ -256,9 +259,11 @@ For API usage you must provide a header with 'X-API-Key' and the associated API
|
||||
- Folder support with auto scanning to perform operations on
|
||||
- Redact text (Via UI not just automated way)
|
||||
- Add Forms
|
||||
- Annotations
|
||||
- Multi page layout (Stich PDF pages together) support x rows y columns and custom page sizing
|
||||
- Fill forms mannual and automatic
|
||||
|
||||
### Q2: Why is my application downloading .htm files?
|
||||
This is a issue caused commonly by your NGINX congifuration. The default file upload size for NGINX is 1MB, you need to add the following in your Nginx sites-available file. client_max_body_size SIZE; Where "SIZE" is 50M for example for 50MB files.
|
||||
This is a issue caused commonly by your NGINX congifuration. The default file upload size for NGINX is 1MB, you need to add the following in your Nginx sites-available file. ``client_max_body_size SIZE;`` Where "SIZE" is 50M for example for 50MB files.
|
||||
|
||||
### Q3: Why is my download timing out
|
||||
NGINX has timeout values by default so if you are running Stirling-PDF behind NGINX you may need to set a timeout value such as adding the config ``proxy_read_timeout 3600;``
|
||||
|
||||
12
build.gradle
12
build.gradle
@@ -1,14 +1,14 @@
|
||||
plugins {
|
||||
id 'java'
|
||||
id 'org.springframework.boot' version '3.1.2'
|
||||
id 'io.spring.dependency-management' version '1.1.2'
|
||||
id 'io.spring.dependency-management' version '1.1.3'
|
||||
id 'org.springdoc.openapi-gradle-plugin' version '1.6.0'
|
||||
id "io.swagger.swaggerhub" version "1.2.0"
|
||||
id 'edu.sc.seis.launch4j' version '3.0.3'
|
||||
id 'edu.sc.seis.launch4j' version '3.0.5'
|
||||
}
|
||||
|
||||
group = 'stirling.software'
|
||||
version = '0.14.2'
|
||||
version = '0.15.0'
|
||||
sourceCompatibility = '17'
|
||||
|
||||
repositories {
|
||||
@@ -74,7 +74,7 @@ dependencies {
|
||||
implementation "com.h2database:h2"
|
||||
}
|
||||
|
||||
testImplementation 'org.springframework.boot:spring-boot-starter-test:3.1.2'
|
||||
testImplementation 'org.springframework.boot:spring-boot-starter-test:3.1.4'
|
||||
|
||||
|
||||
|
||||
@@ -82,7 +82,7 @@ dependencies {
|
||||
implementation group: 'org.apache.pdfbox', name: 'jbig2-imageio', version: '3.0.4'
|
||||
implementation 'commons-io:commons-io:2.13.0'
|
||||
|
||||
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.1.0'
|
||||
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.2.0'
|
||||
|
||||
//general PDF
|
||||
implementation 'org.apache.pdfbox:pdfbox:2.0.29'
|
||||
@@ -91,7 +91,7 @@ dependencies {
|
||||
implementation 'org.bouncycastle:bcpkix-jdk15on:1.70'
|
||||
implementation 'org.springframework.boot:spring-boot-starter-actuator'
|
||||
implementation 'io.micrometer:micrometer-core'
|
||||
implementation group: 'com.google.zxing', name: 'core', version: '3.5.1'
|
||||
implementation group: 'com.google.zxing', name: 'core', version: '3.5.2'
|
||||
// https://mvnrepository.com/artifact/org.commonmark/commonmark
|
||||
implementation 'org.commonmark:commonmark:0.21.0'
|
||||
// https://mvnrepository.com/artifact/com.github.vladimir-bukhtoyarov/bucket4j-core
|
||||
|
||||
15
chart/stirling-pdf/Chart.yaml
Normal file
15
chart/stirling-pdf/Chart.yaml
Normal file
@@ -0,0 +1,15 @@
|
||||
apiVersion: v2
|
||||
appVersion: 0.14.2
|
||||
description: locally hosted web application that allows you to perform various operations on PDF files
|
||||
home: https://github.com/Frooodle/Stirling-PDF
|
||||
keywords:
|
||||
- stirling-pdf
|
||||
- helm
|
||||
- charts repo
|
||||
maintainers:
|
||||
- name: Frooodle
|
||||
url: https://github.com/Frooodle/Stirling-PDF
|
||||
name: stirling-pdf
|
||||
sources:
|
||||
- https://github.com/Frooodle/Stirling-PDF
|
||||
version: 1.0.0
|
||||
30
chart/stirling-pdf/templates/NOTES.txt
Normal file
30
chart/stirling-pdf/templates/NOTES.txt
Normal file
@@ -0,0 +1,30 @@
|
||||
** Please be patient while the chart is being deployed **
|
||||
|
||||
Get the stirlingpdf URL by running:
|
||||
|
||||
{{- if contains "NodePort" .Values.service.type }}
|
||||
|
||||
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ template "stirlingpdf.fullname" . }})
|
||||
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
|
||||
echo http://$NODE_IP:$NODE_PORT/
|
||||
|
||||
{{- else if contains "LoadBalancer" .Values.service.type }}
|
||||
|
||||
** Please ensure an external IP is associated to the {{ template "stirlingpdf.fullname" . }} service before proceeding **
|
||||
** Watch the status using: kubectl get svc --namespace {{ .Release.Namespace }} -w {{ template "stirlingpdf.fullname" . }} **
|
||||
|
||||
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "stirlingpdf.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
|
||||
echo http://$SERVICE_IP:{{ .Values.service.externalPort }}/
|
||||
|
||||
OR
|
||||
|
||||
export SERVICE_HOST=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "stirlingpdf.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].hostname}')
|
||||
echo http://$SERVICE_HOST:{{ .Values.service.externalPort }}/
|
||||
|
||||
{{- else if contains "ClusterIP" .Values.service.type }}
|
||||
|
||||
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app={{ template "stirlingpdf.name" . }}" -l "release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
|
||||
echo http://127.0.0.1:8080/
|
||||
kubectl port-forward $POD_NAME 8080:8080 --namespace {{ .Release.Namespace }}
|
||||
|
||||
{{- end }}
|
||||
129
chart/stirling-pdf/templates/_helpers.tpl
Normal file
129
chart/stirling-pdf/templates/_helpers.tpl
Normal file
@@ -0,0 +1,129 @@
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "stirlingpdf.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "stirlingpdf.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{- /*
|
||||
Create chart name and version as used by the chart label.
|
||||
|
||||
It does minimal escaping for use in Kubernetes labels.
|
||||
|
||||
Example output:
|
||||
|
||||
stirlingpdf-0.4.5
|
||||
*/ -}}
|
||||
{{- define "stirlingpdf.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "stirlingpdf.labels" -}}
|
||||
helm.sh/chart: {{ include "stirlingpdf.chart" . }}
|
||||
{{ include "stirlingpdf.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonLabels}}
|
||||
{{ toYaml .Values.commonLabels }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "stirlingpdf.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "stirlingpdf.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "stirlingpdf.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "stirlingpdf.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Return the proper image name to change the volume permissions
|
||||
*/}}
|
||||
{{- define "stirlingpdf.volumePermissions.image" -}}
|
||||
{{- $registryName := .Values.volumePermissions.image.registry -}}
|
||||
{{- $repositoryName := .Values.volumePermissions.image.repository -}}
|
||||
{{- $tag := .Values.volumePermissions.image.tag | toString -}}
|
||||
{{/*
|
||||
Helm 2.11 supports the assignment of a value to a variable defined in a different scope,
|
||||
but Helm 2.9 and 2.10 doesn't support it, so we need to implement this if-else logic.
|
||||
Also, we can't use a single if because lazy evaluation is not an option
|
||||
*/}}
|
||||
{{- if .Values.global }}
|
||||
{{- if .Values.global.imageRegistry }}
|
||||
{{- printf "%s/%s:%s" .Values.global.imageRegistry $repositoryName $tag -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s/%s:%s" $registryName $repositoryName $tag -}}
|
||||
{{- end -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s/%s:%s" $registryName $repositoryName $tag -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the proper Docker Image Registry Secret Names
|
||||
*/}}
|
||||
{{- define "stirlingpdf.imagePullSecrets" -}}
|
||||
{{/*
|
||||
Helm 2.11 supports the assignment of a value to a variable defined in a different scope,
|
||||
but Helm 2.9 and 2.10 does not support it, so we need to implement this if-else logic.
|
||||
Also, we can not use a single if because lazy evaluation is not an option
|
||||
*/}}
|
||||
{{- if .Values.global }}
|
||||
{{- if .Values.global.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- range .Values.global.imagePullSecrets }}
|
||||
- name: {{ . }}
|
||||
{{- end }}
|
||||
{{- else if or .Values.image.pullSecrets .Values.volumePermissions.image.pullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- range .Values.image.pullSecrets }}
|
||||
- name: {{ . }}
|
||||
{{- end }}
|
||||
{{- range .Values.volumePermissions.image.pullSecrets }}
|
||||
- name: {{ . }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
{{- else if or .Values.image.pullSecrets .Values.volumePermissions.image.pullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- range .Values.image.pullSecrets }}
|
||||
- name: {{ . }}
|
||||
{{- end }}
|
||||
{{- range .Values.volumePermissions.image.pullSecrets }}
|
||||
- name: {{ . }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
129
chart/stirling-pdf/templates/deployment.yaml
Normal file
129
chart/stirling-pdf/templates/deployment.yaml
Normal file
@@ -0,0 +1,129 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ include "stirlingpdf.fullname" . }}
|
||||
{{- with .Values.deployment.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "stirlingpdf.labels" . | nindent 4 }}
|
||||
{{- if .Values.deployment.labels }}
|
||||
{{- toYaml .Values.deployment.labels | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "stirlingpdf.selectorLabels" . | nindent 6 }}
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
strategy:
|
||||
{{ toYaml .Values.strategy | indent 4 }}
|
||||
revisionHistoryLimit: 10
|
||||
template:
|
||||
metadata:
|
||||
{{- with .Values.podAnnotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "stirlingpdf.selectorLabels" . | nindent 8 }}
|
||||
{{- if .Values.podLabels }}
|
||||
{{- toYaml .Values.podLabels | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .Values.priorityClassName }}
|
||||
priorityClassName: "{{ .Values.priorityClassName }}"
|
||||
{{- end }}
|
||||
{{- if .Values.securityContext.enabled }}
|
||||
securityContext:
|
||||
fsGroup: {{ .Values.securityContext.fsGroup }}
|
||||
{{- if .Values.securityContext.runAsNonRoot }}
|
||||
runAsNonRoot: {{ .Values.securityContext.runAsNonRoot }}
|
||||
{{- end }}
|
||||
{{- if .Values.securityContext.supplementalGroups }}
|
||||
supplementalGroups: {{ .Values.securityContext.supplementalGroups }}
|
||||
{{- end }}
|
||||
{{- else if .Values.persistence.enabled }}
|
||||
initContainers:
|
||||
- name: volume-permissions
|
||||
image: {{ template "stirlingpdf.volumePermissions.image" . }}
|
||||
imagePullPolicy: "{{ .Values.volumePermissions.image.pullPolicy }}"
|
||||
securityContext:
|
||||
{{- toYaml .Values.containerSecurityContext | nindent 10 }}
|
||||
command: ['sh', '-c', 'chown -R {{ .Values.securityContext.fsGroup }}:{{ .Values.securityContext.fsGroup }} {{ .Values.persistence.path }}']
|
||||
volumeMounts:
|
||||
- mountPath: {{ .Values.persistence.path }}
|
||||
name: storage-volume
|
||||
{{- end }}
|
||||
{{- include "stirlingpdf.imagePullSecrets" . | indent 6 }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: {{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.containerSecurityContext | nindent 10 }}
|
||||
{{- if .Values.envs }}
|
||||
env:
|
||||
{{ toYaml .Values.envs | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.extraArgs }}
|
||||
args:
|
||||
{{ toYaml .Values.extraArgs | indent 8 }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: 8080
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /
|
||||
port: http
|
||||
{{ toYaml .Values.probes.livenessHttpGetConfig | indent 12 }}
|
||||
{{ toYaml .Values.probes.liveness | indent 10 }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /
|
||||
port: http
|
||||
{{ toYaml .Values.probes.readinessHttpGetConfig | indent 12 }}
|
||||
{{ toYaml .Values.probes.readiness | indent 10 }}
|
||||
volumeMounts:
|
||||
{{- if .Values.deployment.extraVolumeMounts }}
|
||||
{{- toYaml .Values.deployment.extraVolumeMounts | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.deployment.sidecarContainers }}
|
||||
{{- range $name, $spec := .Values.deployment.sidecarContainers }}
|
||||
- name: {{ $name }}
|
||||
{{- toYaml $spec | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- with .Values.resources }}
|
||||
resources:
|
||||
{{ toYaml . | indent 10 }}
|
||||
{{- end }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.affinity }}
|
||||
affinity:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.schedulerName }}
|
||||
schedulerName: {{ .Values.schedulerName }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "stirlingpdf.serviceAccountName" . }}
|
||||
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }}
|
||||
volumes:
|
||||
{{- if .Values.deployment.extraVolumes }}
|
||||
{{- toYaml .Values.deployment.extraVolumes | nindent 6 }}
|
||||
{{- end }}
|
||||
- name: storage-volume
|
||||
{{- if .Values.persistence.enabled }}
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ .Values.persistence.existingClaim | default (include "stirlingpdf.fullname" .) }}
|
||||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
85
chart/stirling-pdf/templates/ingress.yaml
Normal file
85
chart/stirling-pdf/templates/ingress.yaml
Normal file
@@ -0,0 +1,85 @@
|
||||
{{- if .Values.ingress.enabled }}
|
||||
{{- $servicePort := .Values.service.externalPort -}}
|
||||
{{- $serviceName := include "stirlingpdf.fullname" . -}}
|
||||
{{- $ingressExtraPaths := .Values.ingress.extraPaths -}}
|
||||
---
|
||||
{{- if semverCompare "<1.14-0" .Capabilities.KubeVersion.GitVersion }}
|
||||
apiVersion: extensions/v1beta1
|
||||
{{- else if semverCompare "<1.19-0" .Capabilities.KubeVersion.GitVersion }}
|
||||
apiVersion: networking.k8s.io/v1beta1
|
||||
{{- else }}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
{{- end }}
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ include "stirlingpdf.fullname" . }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "stirlingpdf.labels" . | nindent 4 }}
|
||||
{{- with .Values.ingress.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- with .Values.ingress.ingressClassName }}
|
||||
ingressClassName: {{ . }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ .name }}
|
||||
http:
|
||||
paths:
|
||||
{{- range $ingressExtraPaths }}
|
||||
- path: {{ default "/" .path | quote }}
|
||||
backend:
|
||||
{{- if semverCompare "<1.19-0" $.Capabilities.KubeVersion.GitVersion }}
|
||||
{{- if $.Values.service.servicename }}
|
||||
serviceName: {{ $.Values.service.servicename }}
|
||||
{{- else }}
|
||||
serviceName: {{ default $serviceName .service }}
|
||||
{{- end }}
|
||||
servicePort: {{ default $servicePort .port }}
|
||||
{{- else }}
|
||||
service:
|
||||
{{- if $.Values.service.servicename }}
|
||||
name: {{ $.Values.service.servicename }}
|
||||
{{- else }}
|
||||
name: {{ default $serviceName .service }}
|
||||
{{- end }}
|
||||
port:
|
||||
number: {{ default $servicePort .port }}
|
||||
pathType: {{ default $.Values.ingress.pathType .pathType }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
- path: {{ default "/" .path | quote }}
|
||||
backend:
|
||||
{{- if semverCompare "<1.19-0" $.Capabilities.KubeVersion.GitVersion }}
|
||||
{{- if $.Values.service.servicename }}
|
||||
serviceName: {{ $.Values.service.servicename }}
|
||||
{{- else }}
|
||||
serviceName: {{ default $serviceName .service }}
|
||||
{{- end }}
|
||||
servicePort: {{ default $servicePort .servicePort }}
|
||||
{{- else }}
|
||||
service:
|
||||
{{- if $.Values.service.servicename }}
|
||||
name: {{ $.Values.service.servicename }}
|
||||
{{- else }}
|
||||
name: {{ default $serviceName .service }}
|
||||
{{- end }}
|
||||
port:
|
||||
number: {{ default $servicePort .port }}
|
||||
pathType: {{ $.Values.ingress.pathType }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
tls:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
{{- if .tls }}
|
||||
- hosts:
|
||||
- {{ .name }}
|
||||
secretName: {{ .tlsSecret }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
16
chart/stirling-pdf/templates/pv.yaml
Normal file
16
chart/stirling-pdf/templates/pv.yaml
Normal file
@@ -0,0 +1,16 @@
|
||||
{{- if .Values.persistence.pv.enabled -}}
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
name: {{ .Values.persistence.pv.pvname | default (include "stirlingpdf.fullname" .) }}
|
||||
labels:
|
||||
{{- include "stirlingpdf.labels" . | nindent 4 }}
|
||||
spec:
|
||||
capacity:
|
||||
storage: {{ .Values.persistence.pv.capacity.storage }}
|
||||
accessModes:
|
||||
- {{ .Values.persistence.pv.accessMode | quote }}
|
||||
nfs:
|
||||
server: {{ .Values.persistence.pv.nfs.server }}
|
||||
path: {{ .Values.persistence.pv.nfs.path | quote }}
|
||||
{{- end }}
|
||||
27
chart/stirling-pdf/templates/pvc.yaml
Normal file
27
chart/stirling-pdf/templates/pvc.yaml
Normal file
@@ -0,0 +1,27 @@
|
||||
{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}}
|
||||
kind: PersistentVolumeClaim
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: {{ include "stirlingpdf.fullname" . }}
|
||||
labels:
|
||||
{{- include "stirlingpdf.labels" . | nindent 4 }}
|
||||
{{- with .Values.persistence.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
accessModes:
|
||||
- {{ .Values.persistence.accessMode | quote }}
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ .Values.persistence.size | quote }}
|
||||
{{- if .Values.persistence.storageClass }}
|
||||
{{- if (eq "-" .Values.persistence.storageClass) }}
|
||||
storageClassName: ""
|
||||
{{- else }}
|
||||
storageClassName: "{{ .Values.persistence.storageClass }}"
|
||||
{{- end }}
|
||||
{{- if .Values.persistence.volumeName }}
|
||||
volumeName: "{{ .Values.persistence.volumeName }}"
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
48
chart/stirling-pdf/templates/service.yaml
Normal file
48
chart/stirling-pdf/templates/service.yaml
Normal file
@@ -0,0 +1,48 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ .Values.service.servicename | default (include "stirlingpdf.fullname" .) }}
|
||||
{{- with .Values.service.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "stirlingpdf.labels" . | nindent 4 }}
|
||||
{{- with .Values.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
{{- if (or (eq .Values.service.type "LoadBalancer") (and (eq .Values.service.type "NodePort") (not (empty .Values.service.nodePort)))) }}
|
||||
externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy }}
|
||||
{{- end }}
|
||||
{{- if (and (eq .Values.service.type "LoadBalancer") .Values.service.loadBalancerIP) }}
|
||||
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
|
||||
{{- end }}
|
||||
{{- if (and (eq .Values.service.type "LoadBalancer") .Values.service.loadBalancerSourceRanges) }}
|
||||
loadBalancerSourceRanges:
|
||||
{{- with .Values.service.loadBalancerSourceRanges }}
|
||||
{{ toYaml . | indent 2 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if eq .Values.service.type "ClusterIP" }}
|
||||
{{- if .Values.service.clusterIP }}
|
||||
clusterIP: {{ .Values.service.clusterIP }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- port: {{ .Values.service.externalPort }}
|
||||
{{- if (and (eq .Values.service.type "NodePort") (not (empty .Values.service.nodePort))) }}
|
||||
nodePort: {{.Values.service.nodePort}}
|
||||
{{- end }}
|
||||
{{- if .Values.service.targetPort }}
|
||||
targetPort: {{ .Values.service.targetPort }}
|
||||
name: {{ .Values.service.targetPort }}
|
||||
{{- else }}
|
||||
targetPort: http
|
||||
name: http
|
||||
{{- end }}
|
||||
protocol: TCP
|
||||
|
||||
selector:
|
||||
{{- include "stirlingpdf.selectorLabels" . | nindent 4 }}
|
||||
13
chart/stirling-pdf/templates/serviceaccount.yaml
Normal file
13
chart/stirling-pdf/templates/serviceaccount.yaml
Normal file
@@ -0,0 +1,13 @@
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "stirlingpdf.serviceAccountName" . }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{ toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "stirlingpdf.labels" . | nindent 4 }}
|
||||
{{- end }}
|
||||
31
chart/stirling-pdf/templates/servicemonitor.yaml
Normal file
31
chart/stirling-pdf/templates/servicemonitor.yaml
Normal file
@@ -0,0 +1,31 @@
|
||||
{{- if and ( .Capabilities.APIVersions.Has "monitoring.coreos.com/v1" ) ( .Values.serviceMonitor.enabled ) }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ include "stirlingpdf.fullname" . }}
|
||||
namespace: {{ .Values.serviceMonitor.namespace | default .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "stirlingpdf.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceMonitor.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
endpoints:
|
||||
- targetPort: 8080
|
||||
{{- if .Values.serviceMonitor.interval }}
|
||||
interval: {{ .Values.serviceMonitor.interval }}
|
||||
{{- end }}
|
||||
{{- if .Values.serviceMonitor.metricsPath }}
|
||||
path: {{ .Values.serviceMonitor.metricsPath }}
|
||||
{{- end }}
|
||||
{{- if .Values.serviceMonitor.timeout }}
|
||||
scrapeTimeout: {{ .Values.serviceMonitor.timeout }}
|
||||
{{- end }}
|
||||
jobLabel: {{ include "stirlingpdf.fullname" . }}
|
||||
namespaceSelector:
|
||||
matchNames:
|
||||
- {{ .Release.Namespace }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "stirlingpdf.selectorLabels" . | nindent 6 }}
|
||||
{{- end }}
|
||||
239
chart/stirling-pdf/values.yaml
Normal file
239
chart/stirling-pdf/values.yaml
Normal file
@@ -0,0 +1,239 @@
|
||||
extraArgs: []
|
||||
# - --storage-timestamp-tolerance 1s
|
||||
replicaCount: 1
|
||||
strategy:
|
||||
type: RollingUpdate
|
||||
image:
|
||||
repository: frooodle/s-pdf
|
||||
# took Chart appVersion by default
|
||||
tag: ~
|
||||
pullPolicy: IfNotPresent
|
||||
secret:
|
||||
labels: {}
|
||||
## Labels to apply to all resources
|
||||
##
|
||||
commonLabels: {}
|
||||
# team_name: dev
|
||||
|
||||
envs: []
|
||||
# - name: PP_HOME_NAME
|
||||
# value: "Stirling PDF"
|
||||
# - name: APP_HOME_DESCRIPTION
|
||||
# value: "Your locally hosted one-stop-shop for all your PDF needs."
|
||||
# - name: APP_NAVBAR_NAME
|
||||
# value: "Stirling PDF"
|
||||
# - name: ALLOW_GOOGLE_VISIBILITY
|
||||
# value: "true"
|
||||
# - name: APP_ROOT_PATH
|
||||
# value: "/"
|
||||
# - name: APP_LOCALE
|
||||
# value: "en_GB"
|
||||
|
||||
deployment:
|
||||
## stirling-pdf Deployment annotations
|
||||
annotations: {}
|
||||
# name: value
|
||||
labels: {}
|
||||
# name: value
|
||||
# additional volumes
|
||||
extraVolumes: []
|
||||
# - name: nginx-config
|
||||
# secret:
|
||||
# secretName: nginx-config
|
||||
# additional volumes to mount
|
||||
extraVolumeMounts: []
|
||||
## sidecarContainers for the stirling-pdf
|
||||
# Can be used to add a proxy to the pod that does
|
||||
# scanning for secrets, signing, authentication, validation
|
||||
# of the chart's content, send notifications...
|
||||
sidecarContainers: {}
|
||||
## Example sidecarContainer which uses an extraVolume from above and
|
||||
## a named port that can be referenced in the service as targetPort.
|
||||
# proxy:
|
||||
# image: nginx:latest
|
||||
# ports:
|
||||
# - name: proxy
|
||||
# containerPort: 8081
|
||||
# volumeMounts:
|
||||
# - name: nginx-config
|
||||
# readOnly: true
|
||||
# mountPath: /etc/nginx
|
||||
|
||||
## Pod annotations
|
||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
|
||||
## Read more about kube2iam to provide access to s3 https://github.com/jtblin/kube2iam
|
||||
##
|
||||
podAnnotations: {}
|
||||
# iam.amazonaws.com/role: role-arn
|
||||
|
||||
## Pod labels
|
||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
|
||||
podLabels: {}
|
||||
# name: value
|
||||
|
||||
service:
|
||||
servicename:
|
||||
type: ClusterIP
|
||||
externalTrafficPolicy: Local
|
||||
## Uses pre-assigned IP address from cloud provider
|
||||
## Only valid if service.type: LoadBalancer
|
||||
loadBalancerIP:
|
||||
## Limits which cidr blocks can connect to service's load balancer
|
||||
## Only valid if service.type: LoadBalancer
|
||||
loadBalancerSourceRanges: []
|
||||
# clusterIP: None
|
||||
externalPort: 8080
|
||||
## targetPort of the container to use. If a sidecar should handle the
|
||||
## requests first, use the named port from the sidecar. See sidecar example
|
||||
## from deployment above. Leave empty to use stirling-pdf directly.
|
||||
targetPort:
|
||||
nodePort:
|
||||
annotations: {}
|
||||
labels: {}
|
||||
|
||||
serviceMonitor:
|
||||
enabled: false
|
||||
# namespace: prometheus
|
||||
labels: {}
|
||||
metricsPath: "/metrics"
|
||||
# timeout: 60
|
||||
# interval: 60
|
||||
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 80m
|
||||
# memory: 64Mi
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 1
|
||||
successThreshold: 1
|
||||
failureThreshold: 3
|
||||
livenessHttpGetConfig:
|
||||
scheme: HTTP
|
||||
readiness:
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 1
|
||||
successThreshold: 1
|
||||
failureThreshold: 3
|
||||
readinessHttpGetConfig:
|
||||
scheme: HTTP
|
||||
|
||||
serviceAccount:
|
||||
create: true
|
||||
name: ""
|
||||
automountServiceAccountToken: false
|
||||
## Annotations for the Service Account
|
||||
annotations: {}
|
||||
|
||||
# UID/GID 1000 is the default user "stirling-pdf" used in
|
||||
# the container image starting in v0.8.0 and above. This
|
||||
# is required for local persistent storage. If your cluster
|
||||
# does not allow this, try setting securityContext: {}
|
||||
securityContext:
|
||||
enabled: true
|
||||
fsGroup: 1000
|
||||
## Optionally, specify supplementalGroups and/or
|
||||
## runAsNonRoot for security purposes
|
||||
# runAsNonRoot: true
|
||||
# supplementalGroups: [1000]
|
||||
|
||||
containerSecurityContext: {}
|
||||
|
||||
priorityClassName: ""
|
||||
|
||||
nodeSelector: {}
|
||||
|
||||
tolerations: []
|
||||
|
||||
affinity: {}
|
||||
|
||||
persistence:
|
||||
enabled: false
|
||||
accessMode: ReadWriteOnce
|
||||
size: 8Gi
|
||||
labels: {}
|
||||
# name: value
|
||||
path: /tmp
|
||||
## A manually managed Persistent Volume and Claim
|
||||
## Requires persistence.enabled: true
|
||||
## If defined, PVC must be created manually before volume will be bound
|
||||
# existingClaim:
|
||||
|
||||
## stirling-pdf data Persistent Volume Storage Class
|
||||
## If defined, storageClassName: <storageClass>
|
||||
## If set to "-", storageClassName: "", which disables dynamic provisioning
|
||||
## If undefined (the default) or set to null, no storageClassName spec is
|
||||
## set, choosing the default provisioner. (gp2 on AWS, standard on
|
||||
## GKE, AWS & OpenStack)
|
||||
##
|
||||
# storageClass: "-"
|
||||
# volumeName:
|
||||
pv:
|
||||
enabled: false
|
||||
pvname:
|
||||
capacity:
|
||||
storage: 8Gi
|
||||
accessMode: ReadWriteOnce
|
||||
nfs:
|
||||
server:
|
||||
path:
|
||||
|
||||
## Init containers parameters:
|
||||
## volumePermissions: Change the owner of the persistent volume mountpoint to RunAsUser:fsGroup
|
||||
##
|
||||
volumePermissions:
|
||||
image:
|
||||
registry: docker.io
|
||||
repository: bitnami/minideb
|
||||
tag: buster
|
||||
pullPolicy: Always
|
||||
## Optionally specify an array of imagePullSecrets.
|
||||
## Secrets must be manually created in the namespace.
|
||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
||||
##
|
||||
# pullSecrets:
|
||||
# - myRegistryKeySecretName
|
||||
|
||||
## Ingress for load balancer
|
||||
ingress:
|
||||
enabled: false
|
||||
pathType: "ImplementationSpecific"
|
||||
## stirling-pdf Ingress labels
|
||||
##
|
||||
labels: {}
|
||||
# dns: "route53"
|
||||
|
||||
## stirling-pdf Ingress annotations
|
||||
##
|
||||
annotations: {}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
# kubernetes.io/tls-acme: "true"
|
||||
|
||||
## stirling-pdf Ingress hostnames
|
||||
## Must be provided if Ingress is enabled
|
||||
##
|
||||
hosts: []
|
||||
# - name: stirling-pdf.domain1.com
|
||||
# path: /
|
||||
# tls: false
|
||||
# - name: stirling-pdf.domain2.com
|
||||
# path: /
|
||||
#
|
||||
# ## Set this to true in order to enable TLS on the ingress record
|
||||
# tls: true
|
||||
#
|
||||
# ## If TLS is set to true, you must declare what secret will store the key/certificate for TLS
|
||||
# ## Secrets must be added manually to the namespace
|
||||
# tlsSecret: stirling-pdf.domain2-tls
|
||||
|
||||
# For Kubernetes >= 1.18 you should specify the ingress-controller via the field ingressClassName
|
||||
# See https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/#specifying-the-class-of-an-ingress
|
||||
ingressClassName:
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
import cv2
|
||||
import numpy as np
|
||||
import sys
|
||||
import argparse
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package stirling.software.SPDF.config;
|
||||
|
||||
import org.springframework.beans.PropertyEditorRegistrar;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
@@ -8,6 +9,7 @@ import stirling.software.SPDF.model.ApplicationProperties;
|
||||
@Configuration
|
||||
public class AppConfig {
|
||||
|
||||
|
||||
@Autowired
|
||||
ApplicationProperties applicationProperties;
|
||||
|
||||
|
||||
@@ -12,6 +12,8 @@ import java.nio.file.Paths;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.springframework.context.ApplicationContextInitializer;
|
||||
@@ -19,83 +21,109 @@ import org.springframework.context.ConfigurableApplicationContext;
|
||||
|
||||
public class ConfigInitializer implements ApplicationContextInitializer<ConfigurableApplicationContext> {
|
||||
|
||||
@Override
|
||||
public void initialize(ConfigurableApplicationContext applicationContext) {
|
||||
try {
|
||||
ensureConfigExists();
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException("Failed to initialize application configuration", e);
|
||||
}
|
||||
}
|
||||
@Override
|
||||
public void initialize(ConfigurableApplicationContext applicationContext) {
|
||||
try {
|
||||
ensureConfigExists();
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException("Failed to initialize application configuration", e);
|
||||
}
|
||||
}
|
||||
|
||||
public void ensureConfigExists() throws IOException {
|
||||
// Define the path to the external config directory
|
||||
Path destPath = Paths.get("configs", "settings.yml");
|
||||
public void ensureConfigExists() throws IOException {
|
||||
// Define the path to the external config directory
|
||||
Path destPath = Paths.get("configs", "settings.yml");
|
||||
|
||||
// Check if the file already exists
|
||||
if (Files.notExists(destPath)) {
|
||||
// Ensure the destination directory exists
|
||||
Files.createDirectories(destPath.getParent());
|
||||
// Check if the file already exists
|
||||
if (Files.notExists(destPath)) {
|
||||
// Ensure the destination directory exists
|
||||
Files.createDirectories(destPath.getParent());
|
||||
|
||||
// Copy the resource from classpath to the external directory
|
||||
try (InputStream in = getClass().getClassLoader().getResourceAsStream("settings.yml.template")) {
|
||||
if (in != null) {
|
||||
Files.copy(in, destPath);
|
||||
} else {
|
||||
throw new FileNotFoundException("Resource file not found: settings.yml.template");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// If user file exists, we need to merge it with the template from the classpath
|
||||
List<String> templateLines;
|
||||
try (InputStream in = getClass().getClassLoader().getResourceAsStream("settings.yml.template")) {
|
||||
templateLines = new BufferedReader(new InputStreamReader(in, StandardCharsets.UTF_8)).lines().collect(Collectors.toList());
|
||||
}
|
||||
// Copy the resource from classpath to the external directory
|
||||
try (InputStream in = getClass().getClassLoader().getResourceAsStream("settings.yml.template")) {
|
||||
if (in != null) {
|
||||
Files.copy(in, destPath);
|
||||
} else {
|
||||
throw new FileNotFoundException("Resource file not found: settings.yml.template");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// If user file exists, we need to merge it with the template from the classpath
|
||||
List<String> templateLines;
|
||||
try (InputStream in = getClass().getClassLoader().getResourceAsStream("settings.yml.template")) {
|
||||
templateLines = new BufferedReader(new InputStreamReader(in, StandardCharsets.UTF_8)).lines()
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
mergeYamlFiles(templateLines, destPath, destPath);
|
||||
}
|
||||
}
|
||||
mergeYamlFiles(templateLines, destPath, destPath);
|
||||
}
|
||||
}
|
||||
|
||||
public void mergeYamlFiles(List<String> templateLines, Path userFilePath, Path outputPath) throws IOException {
|
||||
List<String> userLines = Files.readAllLines(userFilePath);
|
||||
public void mergeYamlFiles(List<String> templateLines, Path userFilePath, Path outputPath) throws IOException {
|
||||
List<String> userLines = Files.readAllLines(userFilePath);
|
||||
List<String> mergedLines = new ArrayList<>();
|
||||
boolean insideAutoGenerated = false;
|
||||
boolean beforeFirstKey = true;
|
||||
|
||||
List<String> mergedLines = new ArrayList<>();
|
||||
boolean insideAutoGenerated = false;
|
||||
Function<String, Boolean> isCommented = line -> line.trim().startsWith("#");
|
||||
Function<String, String> extractKey = line -> {
|
||||
String[] parts = line.split(":");
|
||||
return parts.length > 0 ? parts[0].trim().replace("#", "").trim() : "";
|
||||
};
|
||||
|
||||
for (String line : templateLines) {
|
||||
// Check if we've entered or left the AutomaticallyGenerated section
|
||||
if (line.trim().equalsIgnoreCase("AutomaticallyGenerated:")) {
|
||||
insideAutoGenerated = true;
|
||||
mergedLines.add(line);
|
||||
continue;
|
||||
} else if (insideAutoGenerated && line.trim().isEmpty()) {
|
||||
// We have reached the end of the AutomaticallyGenerated section
|
||||
insideAutoGenerated = false;
|
||||
mergedLines.add(line);
|
||||
continue;
|
||||
}
|
||||
Set<String> userKeys = userLines.stream().map(extractKey).collect(Collectors.toSet());
|
||||
|
||||
if (insideAutoGenerated) {
|
||||
// Add lines from user's settings if we are inside AutomaticallyGenerated
|
||||
Optional<String> userAutoGenValue = userLines.stream().filter(l -> l.trim().startsWith(line.split(":")[0].trim())).findFirst();
|
||||
if (userAutoGenValue.isPresent()) {
|
||||
mergedLines.add(userAutoGenValue.get());
|
||||
continue;
|
||||
}
|
||||
} else {
|
||||
// Outside of AutomaticallyGenerated, continue as before
|
||||
if (line.contains(": ")) {
|
||||
String key = line.split(": ")[0].trim();
|
||||
Optional<String> userValue = userLines.stream().filter(l -> l.trim().startsWith(key)).findFirst();
|
||||
if (userValue.isPresent()) {
|
||||
mergedLines.add(userValue.get());
|
||||
continue;
|
||||
}
|
||||
}
|
||||
mergedLines.add(line);
|
||||
}
|
||||
}
|
||||
for (String line : templateLines) {
|
||||
String key = extractKey.apply(line);
|
||||
|
||||
if (line.trim().equalsIgnoreCase("AutomaticallyGenerated:")) {
|
||||
insideAutoGenerated = true;
|
||||
mergedLines.add(line);
|
||||
continue;
|
||||
} else if (insideAutoGenerated && line.trim().isEmpty()) {
|
||||
insideAutoGenerated = false;
|
||||
mergedLines.add(line);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (beforeFirstKey && (isCommented.apply(line) || line.trim().isEmpty())) {
|
||||
// Handle top comments and empty lines before the first key.
|
||||
mergedLines.add(line);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!key.isEmpty())
|
||||
beforeFirstKey = false;
|
||||
|
||||
if (userKeys.contains(key)) {
|
||||
// If user has any version (commented or uncommented) of this key, skip the
|
||||
// template line
|
||||
Optional<String> userValue = userLines.stream()
|
||||
.filter(l -> extractKey.apply(l).equalsIgnoreCase(key) && !isCommented.apply(l)).findFirst();
|
||||
if (userValue.isPresent())
|
||||
mergedLines.add(userValue.get());
|
||||
continue;
|
||||
}
|
||||
|
||||
if (isCommented.apply(line) || line.trim().isEmpty() || !userKeys.contains(key)) {
|
||||
mergedLines.add(line); // If line is commented, empty or key not present in user's file, retain the
|
||||
// template line
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
// Add any additional uncommented user lines that are not present in the
|
||||
// template
|
||||
for (String userLine : userLines) {
|
||||
String userKey = extractKey.apply(userLine);
|
||||
boolean isPresentInTemplate = templateLines.stream().map(extractKey)
|
||||
.anyMatch(templateKey -> templateKey.equalsIgnoreCase(userKey));
|
||||
if (!isPresentInTemplate && !isCommented.apply(userLine)) {
|
||||
mergedLines.add(userLine);
|
||||
}
|
||||
}
|
||||
|
||||
Files.write(outputPath, mergedLines, StandardCharsets.UTF_8);
|
||||
}
|
||||
|
||||
Files.write(outputPath, mergedLines, StandardCharsets.UTF_8);
|
||||
}
|
||||
}
|
||||
@@ -26,11 +26,18 @@ public class InitialSecuritySetup {
|
||||
@PostConstruct
|
||||
public void init() {
|
||||
if (!userService.hasUsers()) {
|
||||
String initialUsername = "admin";
|
||||
String initialPassword = "stirling";
|
||||
userService.saveUser(initialUsername, initialPassword, Role.ADMIN.getRoleId(), true);
|
||||
|
||||
|
||||
String initialUsername = applicationProperties.getSecurity().getInitialLogin().getUsername();
|
||||
String initialPassword = applicationProperties.getSecurity().getInitialLogin().getPassword();
|
||||
if (initialUsername != null && initialPassword != null) {
|
||||
userService.saveUser(initialUsername, initialPassword, Role.ADMIN.getRoleId());
|
||||
} else {
|
||||
initialUsername = "admin";
|
||||
initialPassword = "stirling";
|
||||
userService.saveUser(initialUsername, initialPassword, Role.ADMIN.getRoleId(), true);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package stirling.software.SPDF.controller.api;
|
||||
|
||||
|
||||
import java.awt.Color;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.IOException;
|
||||
|
||||
@@ -42,7 +43,8 @@ public class MultiPageLayoutController {
|
||||
|
||||
int pagesPerSheet = request.getPagesPerSheet();
|
||||
MultipartFile file = request.getFileInput();
|
||||
|
||||
boolean addBorder = request.isAddBorder();
|
||||
|
||||
if (pagesPerSheet != 2 && pagesPerSheet != 3 && pagesPerSheet != (int) Math.sqrt(pagesPerSheet) * Math.sqrt(pagesPerSheet)) {
|
||||
throw new IllegalArgumentException("pagesPerSheet must be 2, 3 or a perfect square");
|
||||
}
|
||||
@@ -62,6 +64,10 @@ public class MultiPageLayoutController {
|
||||
PDPageContentStream contentStream = new PDPageContentStream(newDocument, newPage, PDPageContentStream.AppendMode.APPEND, true, true);
|
||||
LayerUtility layerUtility = new LayerUtility(newDocument);
|
||||
|
||||
float borderThickness = 1.5f; // Specify border thickness as required
|
||||
contentStream.setLineWidth(borderThickness);
|
||||
contentStream.setStrokingColor(Color.BLACK);
|
||||
|
||||
for (int i = 0; i < totalPages; i++) {
|
||||
if (i != 0 && i % pagesPerSheet == 0) {
|
||||
// Close the current content stream and create a new page and content stream
|
||||
@@ -92,6 +98,14 @@ public class MultiPageLayoutController {
|
||||
contentStream.drawForm(formXObject);
|
||||
|
||||
contentStream.restoreGraphicsState();
|
||||
|
||||
if(addBorder) {
|
||||
// Draw border around each page
|
||||
float borderX = colIndex * cellWidth;
|
||||
float borderY = newPage.getMediaBox().getHeight() - (rowIndex + 1) * cellHeight;
|
||||
contentStream.addRect(borderX, borderY, cellWidth, cellHeight);
|
||||
contentStream.stroke();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -21,6 +21,7 @@ import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import stirling.software.SPDF.model.SortTypes;
|
||||
import stirling.software.SPDF.model.api.PDFWithPageNums;
|
||||
import stirling.software.SPDF.model.api.general.RearrangePagesRequest;
|
||||
import stirling.software.SPDF.utils.GeneralUtils;
|
||||
import stirling.software.SPDF.utils.WebResponseUtils;
|
||||
@@ -33,11 +34,12 @@ public class RearrangePagesPDFController {
|
||||
|
||||
@PostMapping(consumes = "multipart/form-data", value = "/remove-pages")
|
||||
@Operation(summary = "Remove pages from a PDF file", description = "This endpoint removes specified pages from a given PDF file. Users can provide a comma-separated list of page numbers or ranges to delete. Input:PDF Output:PDF Type:SISO")
|
||||
public ResponseEntity<byte[]> deletePages(
|
||||
@RequestPart(required = true, value = "fileInput") @Parameter(description = "The input PDF file from which pages will be removed") MultipartFile pdfFile,
|
||||
@RequestParam("pagesToDelete") @Parameter(description = "Comma-separated list of pages or page ranges to delete, e.g., '1,3,5-8'") String pagesToDelete)
|
||||
public ResponseEntity<byte[]> deletePages(@ModelAttribute PDFWithPageNums request )
|
||||
throws IOException {
|
||||
|
||||
MultipartFile pdfFile = request.getFileInput();
|
||||
String pagesToDelete = request.getPageNumbers();
|
||||
|
||||
PDDocument document = PDDocument.load(pdfFile.getBytes());
|
||||
|
||||
// Split the page order string into an array of page numbers or range of numbers
|
||||
|
||||
@@ -108,4 +108,4 @@ public class SplitPDFController {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,8 @@
|
||||
package stirling.software.SPDF.controller.api.misc;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Image;
|
||||
import java.awt.image.BufferedImage;
|
||||
@@ -58,7 +61,8 @@ public class ExtractImagesController {
|
||||
|
||||
int imageIndex = 1;
|
||||
String filename = file.getOriginalFilename().replaceFirst("[.][^.]+$", "");
|
||||
int pageNum = 1;
|
||||
int pageNum = 0;
|
||||
Set<Integer> processedImages = new HashSet<>();
|
||||
// Iterate over each page
|
||||
for (PDPage page : document.getPages()) {
|
||||
++pageNum;
|
||||
@@ -66,7 +70,12 @@ public class ExtractImagesController {
|
||||
for (COSName name : page.getResources().getXObjectNames()) {
|
||||
if (page.getResources().isImageXObject(name)) {
|
||||
PDImageXObject image = (PDImageXObject) page.getResources().getXObject(name);
|
||||
|
||||
int imageHash = image.hashCode();
|
||||
if(processedImages.contains(imageHash)) {
|
||||
continue; // Skip already processed images
|
||||
}
|
||||
processedImages.add(imageHash);
|
||||
|
||||
// Convert image to desired format
|
||||
RenderedImage renderedImage = image.getImage();
|
||||
BufferedImage bufferedImage = null;
|
||||
|
||||
@@ -12,6 +12,7 @@ import java.security.cert.CertificateFactory;
|
||||
import java.security.cert.X509Certificate;
|
||||
import java.security.spec.PKCS8EncodedKeySpec;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Calendar;
|
||||
import java.util.Collections;
|
||||
import java.util.Date;
|
||||
|
||||
@@ -130,7 +131,8 @@ public class CertSignController {
|
||||
signature.setName(name);
|
||||
signature.setLocation(location);
|
||||
signature.setReason(reason);
|
||||
|
||||
signature.setSignDate(Calendar.getInstance());
|
||||
|
||||
// Load the PDF
|
||||
try (PDDocument document = PDDocument.load(pdf.getBytes())) {
|
||||
logger.info("Successfully loaded the provided PDF");
|
||||
|
||||
@@ -386,12 +386,16 @@ public class GetInfoOnPDF {
|
||||
float width = mediaBox.getWidth();
|
||||
float height = mediaBox.getHeight();
|
||||
|
||||
pageInfo.put("Width", width);
|
||||
pageInfo.put("Height", height);
|
||||
ObjectNode sizeInfo = objectMapper.createObjectNode();
|
||||
|
||||
getDimensionInfo(sizeInfo, width, height);
|
||||
|
||||
sizeInfo.put("Standard Page", getPageSize(width, height));
|
||||
pageInfo.set("Size", sizeInfo);
|
||||
|
||||
pageInfo.put("Rotation", page.getRotation());
|
||||
|
||||
pageInfo.put("Page Orientation", getPageOrientation(width, height));
|
||||
pageInfo.put("Standard Size", getPageSize(width, height));
|
||||
|
||||
|
||||
// Boxes
|
||||
pageInfo.put("MediaBox", mediaBox.toString());
|
||||
@@ -620,7 +624,7 @@ public class GetInfoOnPDF {
|
||||
|
||||
|
||||
|
||||
pageInfoParent.set("Page " + pageNum, pageInfo);
|
||||
pageInfoParent.set("Page " + (pageNum+1), pageInfo);
|
||||
}
|
||||
|
||||
|
||||
@@ -670,28 +674,52 @@ public class GetInfoOnPDF {
|
||||
return "Square";
|
||||
}
|
||||
}
|
||||
public String getPageSize(double width, double height) {
|
||||
// Common aspect ratios used for standard paper sizes
|
||||
double[] aspectRatios = {4.0 / 3.0, 3.0 / 2.0, Math.sqrt(2.0), 16.0 / 9.0};
|
||||
public String getPageSize(float width, float height) {
|
||||
// Define standard page sizes
|
||||
Map<String, PDRectangle> standardSizes = new HashMap<>();
|
||||
standardSizes.put("Letter", PDRectangle.LETTER);
|
||||
standardSizes.put("LEGAL", PDRectangle.LEGAL);
|
||||
standardSizes.put("A0", PDRectangle.A0);
|
||||
standardSizes.put("A1", PDRectangle.A1);
|
||||
standardSizes.put("A2", PDRectangle.A2);
|
||||
standardSizes.put("A3", PDRectangle.A3);
|
||||
standardSizes.put("A4", PDRectangle.A4);
|
||||
standardSizes.put("A5", PDRectangle.A5);
|
||||
standardSizes.put("A6", PDRectangle.A6);
|
||||
|
||||
// Check if the page matches any common aspect ratio
|
||||
for (double aspectRatio : aspectRatios) {
|
||||
if (isCloseToAspectRatio(width, height, aspectRatio)) {
|
||||
return "Standard";
|
||||
for (Map.Entry<String, PDRectangle> entry : standardSizes.entrySet()) {
|
||||
PDRectangle size = entry.getValue();
|
||||
if (isCloseToSize(width, height, size.getWidth(), size.getHeight())) {
|
||||
return entry.getKey();
|
||||
}
|
||||
}
|
||||
|
||||
// If not a standard aspect ratio, consider it as a custom size
|
||||
return "Custom";
|
||||
}
|
||||
private boolean isCloseToAspectRatio(double width, double height, double aspectRatio) {
|
||||
// Calculate the aspect ratio of the page
|
||||
double pageAspectRatio = width / height;
|
||||
|
||||
// Compare the page aspect ratio with the common aspect ratio within a threshold
|
||||
return Math.abs(pageAspectRatio - aspectRatio) <= 0.05;
|
||||
private boolean isCloseToSize(float width, float height, float standardWidth, float standardHeight) {
|
||||
float tolerance = 1.0f; // You can adjust the tolerance as needed
|
||||
return Math.abs(width - standardWidth) <= tolerance && Math.abs(height - standardHeight) <= tolerance;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public ObjectNode getDimensionInfo(ObjectNode dimensionInfo, float width, float height) {
|
||||
float ppi = 72; // Points Per Inch
|
||||
|
||||
float widthInInches = width / ppi;
|
||||
float heightInInches = height / ppi;
|
||||
|
||||
float widthInCm = widthInInches * 2.54f;
|
||||
float heightInCm = heightInInches * 2.54f;
|
||||
|
||||
dimensionInfo.put("Width (px)", String.format("%.2f", width));
|
||||
dimensionInfo.put("Height (px)", String.format("%.2f", height));
|
||||
dimensionInfo.put("Width (in)", String.format("%.2f", widthInInches));
|
||||
dimensionInfo.put("Height (in)", String.format("%.2f", heightInInches));
|
||||
dimensionInfo.put("Width (cm)", String.format("%.2f", widthInCm));
|
||||
dimensionInfo.put("Height (cm)", String.format("%.2f", heightInCm));
|
||||
return dimensionInfo;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static boolean checkForStandard(PDDocument document, String standardKeyword) {
|
||||
|
||||
@@ -1,18 +1,9 @@
|
||||
package stirling.software.SPDF.controller.web;
|
||||
import java.io.IOException;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import io.swagger.v3.oas.annotations.Hidden;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.core.io.Resource;
|
||||
import org.springframework.core.io.ResourceLoader;
|
||||
@@ -21,11 +12,14 @@ import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
import io.swagger.v3.oas.annotations.Hidden;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import java.io.IOException;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
@Controller
|
||||
@Tag(name = "General", description = "General APIs")
|
||||
@@ -80,7 +74,13 @@ public class GeneralWebController {
|
||||
model.addAttribute("currentPage", "merge-pdfs");
|
||||
return "merge-pdfs";
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/view-pdf")
|
||||
@Hidden
|
||||
public String ViewPdfForm2(Model model) {
|
||||
model.addAttribute("currentPage", "view-pdf");
|
||||
return "view-pdf";
|
||||
}
|
||||
|
||||
@GetMapping("/multi-tool")
|
||||
@Hidden
|
||||
|
||||
@@ -105,7 +105,16 @@ public class ApplicationProperties {
|
||||
public static class Security {
|
||||
private Boolean enableLogin;
|
||||
private Boolean csrfDisabled;
|
||||
private InitialLogin initialLogin;
|
||||
|
||||
public InitialLogin getInitialLogin() {
|
||||
return initialLogin != null ? initialLogin : new InitialLogin();
|
||||
}
|
||||
|
||||
public void setInitialLogin(InitialLogin initialLogin) {
|
||||
this.initialLogin = initialLogin;
|
||||
}
|
||||
|
||||
public Boolean getEnableLogin() {
|
||||
return enableLogin;
|
||||
}
|
||||
@@ -125,9 +134,39 @@ public class ApplicationProperties {
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Security [enableLogin=" + enableLogin + ", csrfDisabled="
|
||||
return "Security [enableLogin=" + enableLogin + ", initialLogin=" + initialLogin + ", csrfDisabled="
|
||||
+ csrfDisabled + "]";
|
||||
}
|
||||
|
||||
public static class InitialLogin {
|
||||
|
||||
private String username;
|
||||
private String password;
|
||||
|
||||
public String getUsername() {
|
||||
return username;
|
||||
}
|
||||
|
||||
public void setUsername(String username) {
|
||||
this.username = username;
|
||||
}
|
||||
|
||||
public String getPassword() {
|
||||
return password;
|
||||
}
|
||||
|
||||
public void setPassword(String password) {
|
||||
this.password = password;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "InitialLogin [username=" + username + ", password=" + (password != null && !password.isEmpty() ? "MASKED" : "NULL") + "]";
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public static class System {
|
||||
@@ -193,6 +232,8 @@ public class ApplicationProperties {
|
||||
private String appNameNavbar;
|
||||
|
||||
public String getAppName() {
|
||||
if(appName != null && appName.trim().length() == 0)
|
||||
return null;
|
||||
return appName;
|
||||
}
|
||||
|
||||
@@ -201,6 +242,8 @@ public class ApplicationProperties {
|
||||
}
|
||||
|
||||
public String getHomeDescription() {
|
||||
if(homeDescription != null && homeDescription.trim().length() == 0)
|
||||
return null;
|
||||
return homeDescription;
|
||||
}
|
||||
|
||||
@@ -209,6 +252,8 @@ public class ApplicationProperties {
|
||||
}
|
||||
|
||||
public String getAppNameNavbar() {
|
||||
if(appNameNavbar != null && appNameNavbar.trim().length() == 0)
|
||||
return null;
|
||||
return appNameNavbar;
|
||||
}
|
||||
|
||||
|
||||
@@ -12,4 +12,7 @@ public class MergeMultiplePagesRequest extends PDFFile {
|
||||
@Schema(description = "The number of pages to fit onto a single sheet in the output PDF.",
|
||||
type = "integer", allowableValues = {"2", "3", "4", "9", "16"})
|
||||
private int pagesPerSheet;
|
||||
|
||||
@Schema(description = "Boolean for if you wish to add border around the pages")
|
||||
private boolean addBorder;
|
||||
}
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Multi Page Layout
|
||||
pageLayout.header=Multi Page Layout
|
||||
pageLayout.pagesPerSheet=Pages per sheet:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Submit
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=Split
|
||||
imageToPDF.title=صورة إلى PDF
|
||||
imageToPDF.header=صورة إلى PDF
|
||||
imageToPDF.submit=تحول
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
817
src/main/resources/messages_bg_BG.properties
Normal file
817
src/main/resources/messages_bg_BG.properties
Normal file
@@ -0,0 +1,817 @@
|
||||
###########
|
||||
# Generic #
|
||||
###########
|
||||
# the direction that the language is written (ltr = left to right, rtl = right to left)
|
||||
language.direction=ltr
|
||||
|
||||
pdfPrompt=Изберете PDF(и)
|
||||
multiPdfPrompt=Изберете PDF (2+)
|
||||
multiPdfDropPrompt=Изберете (или плъзнете и пуснете) всички PDF файлове, от които се нуждаете
|
||||
imgPrompt=Изберете изображение(я)
|
||||
genericSubmit=Подайте
|
||||
processTimeWarning=Предупреждение: Този процес може да отнеме до минута в зависимост от размера на файла
|
||||
pageOrderPrompt=Персонализиран ред на страниците (Въведете разделен със запетаи списък с номера на страници или функции като 2n+1):
|
||||
goToPage=Давай
|
||||
true=Вярно
|
||||
false=Невярно
|
||||
unknown=Непознат
|
||||
save=Съхранете
|
||||
close=Затворете
|
||||
filesSelected=избрани файлове
|
||||
noFavourites=Няма добавени любими
|
||||
bored=Отекчени сте да чакате?
|
||||
alphabet=Азбука
|
||||
downloadPdf=Изтеглете PDF
|
||||
text=Текст
|
||||
font=Шрифт
|
||||
selectFillter=-- Изберете --
|
||||
pageNum=Брой страница
|
||||
sizes.small=Малък
|
||||
sizes.medium=Среден
|
||||
sizes.large=Голям
|
||||
sizes.x-large=X-Голям
|
||||
error.pdfPassword=PDF документът е с парола и или паролата не е предоставена, или е неправилна
|
||||
delete=Изтрий
|
||||
username=Потребителско име
|
||||
password=Парола
|
||||
welcome=Добре дошли
|
||||
property=Свойство
|
||||
black=Черно
|
||||
white=Бяло
|
||||
red=Червено
|
||||
green=Зелено
|
||||
blue=Синьо
|
||||
custom=Персонализиране...
|
||||
|
||||
changedCredsMessage=Идентификационните данни са променени!
|
||||
notAuthenticatedMessage=Потребителят не е автентикиран.
|
||||
userNotFoundMessage=Потребителят не е намерен
|
||||
incorrectPasswordMessage=Текущата парола е неправилна.
|
||||
usernameExistsMessage=Новият потребител вече съществува.
|
||||
|
||||
|
||||
|
||||
#############
|
||||
# NAVBAR #
|
||||
#############
|
||||
navbar.convert=Преобразуване
|
||||
navbar.security=Сигурност
|
||||
navbar.other=Разни
|
||||
navbar.darkmode=Тъмна тема
|
||||
navbar.pageOps=Операции със страници
|
||||
navbar.settings=Настройки
|
||||
|
||||
#############
|
||||
# SETTINGS #
|
||||
#############
|
||||
settings.title=Настройки
|
||||
settings.update=Налична актуализация
|
||||
settings.appVersion=Версия на приложението:
|
||||
settings.downloadOption.title=Изберете опция за изтегляне (за изтегляния на един файл без да е архивиран):
|
||||
settings.downloadOption.1=Отваряне в същия прозорец
|
||||
settings.downloadOption.2=Отваряне в нов прозорец
|
||||
settings.downloadOption.3=Изтегли файл
|
||||
settings.zipThreshold=Архивирайте файловете, когато броят на изтеглените файлове надвишава
|
||||
settings.signOut=Изход
|
||||
settings.accountSettings=Настройки на акаунта
|
||||
|
||||
|
||||
|
||||
changeCreds.title=Промяна на идентификационните данни
|
||||
changeCreds.header=Актуализирайте данните за акаунта си
|
||||
changeCreds.changeUserAndPassword=Използвате идентификационни данни за вход по подразбиране. Моля, въведете нова парола (и потребителско име, ако искате)
|
||||
changeCreds.newUsername=Ново потребителско име
|
||||
changeCreds.oldPassword=Текуща парола
|
||||
changeCreds.newPassword=Нова парола
|
||||
changeCreds.confirmNewPassword=Подтвърдете новата парола
|
||||
changeCreds.submit=Изпращане на промените
|
||||
|
||||
|
||||
|
||||
account.title=Настройки на акаунта
|
||||
account.accountSettings=Настройки на акаунта
|
||||
account.adminSettings=Настройки на администратора - Преглед и добавяне на потребители
|
||||
account.userControlSettings=Настройки за потребителски контрол
|
||||
account.changeUsername=Нов потребител
|
||||
account.changeUsername=Промени потребител
|
||||
account.password=Парола за потвърждение
|
||||
account.oldPassword=Стара парола
|
||||
account.newPassword=Нова парола
|
||||
account.changePassword=Промени паролата
|
||||
account.confirmNewPassword=Потвърдете новата парола
|
||||
account.signOut=Изход
|
||||
account.yourApiKey=Вашият API ключ
|
||||
account.syncTitle=Синхронизиране на настройките на браузъра с акаунта
|
||||
account.settingsCompare=Сравняване на настройките:
|
||||
account.property=Свойство
|
||||
account.webBrowserSettings=Уеб-браузър настройки
|
||||
account.syncToBrowser=Синхронизиране на акаунт -> Бразър
|
||||
account.syncToAccount=Синхронизиране на акаунт <- Бразър
|
||||
|
||||
|
||||
adminUserSettings.title=Настройки за потребителски контрол
|
||||
adminUserSettings.header=Настройки за администраторски потребителски контрол
|
||||
adminUserSettings.admin=Администратор
|
||||
adminUserSettings.user=Потребител
|
||||
adminUserSettings.addUser=Добавяне на нов потребител
|
||||
adminUserSettings.roles=Роли
|
||||
adminUserSettings.role=Роля
|
||||
adminUserSettings.actions=Действия
|
||||
adminUserSettings.apiUser=Ограничен API потребител
|
||||
adminUserSettings.webOnlyUser=Само за уеб-потребител
|
||||
adminUserSettings.forceChange = Принудете потребителя да промени потребителското име/парола при влизане
|
||||
adminUserSettings.submit=Съхранете потребителя
|
||||
|
||||
#############
|
||||
# HOME-PAGE #
|
||||
#############
|
||||
home.desc=Вашето локално хоствано обслужване на едно място за всички ваши PDF нужди.
|
||||
|
||||
|
||||
home.multiTool.title=PDF Мулти инструмент
|
||||
home.multiTool.desc=Обединяване, завъртане, пренареждане и премахване на страници
|
||||
multiTool.tags=Мултиинструмент,Мулти операции,UI,плъзгане с щракване,потребителска част,страна на клиента,интерактивен,неразрешим,преместване
|
||||
|
||||
home.merge.title=Обединяване
|
||||
home.merge.desc=Лесно обединете множество PDF файлове в един.
|
||||
merge.tags=сливане,операции на страници,администраторска зона,от страна на сървъра
|
||||
|
||||
home.split.title=Разделяне
|
||||
home.split.desc=Разделяне на PDF файлове на множество документи
|
||||
split.tags=Операции на страницата,разделяне,Множество страници,изрязване,сървърна страна
|
||||
|
||||
home.rotate.title=Завъртане
|
||||
home.rotate.desc=Лесно завъртете вашите PDF файлове.
|
||||
rotate.tags=от страната на сървъра
|
||||
|
||||
|
||||
home.imageToPdf.title=Изображение към PDF
|
||||
home.imageToPdf.desc=Преобразуване на изображение (PNG, JPEG, GIF) към PDF.
|
||||
imageToPdf.tags=преобразуване,img,jpg,изображение,снимка
|
||||
|
||||
home.pdfToImage.title=PDF към изображение
|
||||
home.pdfToImage.desc=Преобразуване на PDF към изображение. (PNG, JPEG, GIF)
|
||||
pdfToImage.tags=преобразуване,img,jpg,изображение,снимка
|
||||
|
||||
home.pdfOrganiser.title=Организиране
|
||||
home.pdfOrganiser.desc=Премахване/пренареждане на страници към произволен ред
|
||||
pdfOrganiser.tags=дуплекс,четно,нечетно,сортиране,преместване
|
||||
|
||||
|
||||
home.addImage.title=Добавяне на изображение
|
||||
home.addImage.desc=Добавя изображение към зададено място към PDF файла
|
||||
addImage.tags=img,jpg,изображение,снимка
|
||||
|
||||
home.watermark.title=Добавяне на воден знак
|
||||
home.watermark.desc=Добавете персонализиран воден знак към вашия PDF документ.
|
||||
watermark.tags=Текст,повтарящ се,етикет,собствено,авторско право,търговска марка,img,jpg,изображение,снимка
|
||||
|
||||
home.permissions.title=Промяна на правата
|
||||
home.permissions.desc=Променете правата на вашия PDF документ
|
||||
permissions.tags=четене,писане,редактиране,печат
|
||||
|
||||
|
||||
home.removePages.title=Премахване
|
||||
home.removePages.desc=Изтрийте нежеланите страници от вашия PDF документ.
|
||||
removePages.tags=Премахване на страници,изтриване на страници
|
||||
|
||||
home.addPassword.title=Добавете парола
|
||||
home.addPassword.desc=Шифровайте вашия PDF документ с парола.
|
||||
addPassword.tags=сигурен,сигурност
|
||||
|
||||
home.removePassword.title=Премахване на парола
|
||||
home.removePassword.desc=Премахнете защитата с парола от вашия PDF документ.
|
||||
removePassword.tags=сигурно,декриптиране,сигурност,отмяна на парола,изтриване на парола
|
||||
|
||||
home.compressPdfs.title=Компресиране
|
||||
home.compressPdfs.desc=Компресирайте PDF файлове, за да намалите размера на файла.
|
||||
compressPdfs.tags=мачкам,малък,мъничък
|
||||
|
||||
|
||||
home.changeMetadata.title=Промяна на метаданни
|
||||
home.changeMetadata.desc=Промяна/Премахване/Добавяне на метаданни от PDF документ
|
||||
changeMetadata.tags=Заглавие,автор,дата,създаване,час,издател,продуцент,статистика
|
||||
|
||||
home.fileToPDF.title=Преобразуване на файл към PDF
|
||||
home.fileToPDF.desc=Преобразуване почти всеки файл към PDF (DOCX, PNG, XLS, PPT, TXT и други)
|
||||
fileToPDF.tags=трансформация,формат,документ,изображение,слайд,текст,преобразуване,офис,документи,word,excel,powerpoint
|
||||
|
||||
home.ocr.title=OCR / Почистващи сканирания
|
||||
home.ocr.desc=Cleanup сканира и открива текст от изображения към PDF и го добавя отново като текст.
|
||||
ocr.tags=разпознаване,текст,изображение,сканиране,четене,идентифициране,откриване,редактиране
|
||||
|
||||
|
||||
home.extractImages.title=Извличане на изображения
|
||||
home.extractImages.desc=Извлича всички изображения от PDF и ги записва към архив
|
||||
extractImages.tags=изображение,снимка,запазване,архивиране,архив,заснемане,грабване
|
||||
|
||||
home.pdfToPDFA.title=PDF към PDF/A
|
||||
home.pdfToPDFA.desc=Конвертирайте PDF към PDF/A за дългосрочно съхранение
|
||||
pdfToPDFA.tags=архив,дълготраен,стандартен,преобразуване,съхранение,консервиране
|
||||
|
||||
home.PDFToWord.title=PDF към Word
|
||||
home.PDFToWord.desc=Преобразуване на PDF към Word формати (DOC, DOCX и ODT)
|
||||
PDFToWord.tags=doc,docx,odt,word,трансформация,формат,преобразуване,офис,microsoft,docfile
|
||||
|
||||
home.PDFToPresentation.title=PDF към презентация
|
||||
home.PDFToPresentation.desc=Преобразуване на PDF във формати за презентация (PPT, PPTX и ODP)
|
||||
PDFToPresentation.tags=слайдове,покажи,офис,microsoft
|
||||
|
||||
home.PDFToText.title=PDF към RTF (Текст)
|
||||
home.PDFToText.desc=Преобразуване PDF към Text или RTF формат
|
||||
PDFToText.tags=richformat,richtextformat,богат текстов формат
|
||||
|
||||
home.PDFToHTML.title=PDF към HTML
|
||||
home.PDFToHTML.desc=Преобразуване PDF към HTML формат
|
||||
PDFToHTML.tags=уеб-съдържание,удобен за браузър
|
||||
|
||||
|
||||
home.PDFToXML.title=PDF към XML
|
||||
home.PDFToXML.desc=Преобразуване на PDF към XML формат
|
||||
PDFToXML.tags=извличане на данни,структурирано съдържание,взаимодействие,трансформация,преобразуване
|
||||
|
||||
home.ScannerImageSplit.title=Откриване/Разделяне на сканирани снимки
|
||||
home.ScannerImageSplit.desc=Разделя множество снимки от една снимка/PDF
|
||||
ScannerImageSplit.tags=разделяне,автоматично откриване,сканиране,много снимки,организиране
|
||||
|
||||
home.sign.title=Подпишете
|
||||
home.sign.desc=Добавя подпис към PDF чрез рисунка, текст или изображение
|
||||
sign.tags=упълномощаване,инициали,нарисуван-подпис,текстов-знак,изображение-подпис
|
||||
|
||||
home.flatten.title=Изравняване
|
||||
home.flatten.desc=Премахнете всички интерактивни елементи и формуляри от PDF
|
||||
flatten.tags=статичен,деактивиран,неинтерактивен,рационализиран
|
||||
|
||||
home.repair.title=Поправи
|
||||
home.repair.desc=Опитва се да поправи повреден/счупен PDF
|
||||
repair.tags=поправка,възстановяване,корекция,възстановяване
|
||||
|
||||
home.removeBlanks.title=Премахване на празни страници
|
||||
home.removeBlanks.desc=Открива и премахва празни страници от документ
|
||||
removeBlanks.tags=почистване,рационализиране,без съдържание,организиране
|
||||
|
||||
home.compare.title=Сравнете
|
||||
home.compare.desc=Сравнява и показва разликите между 2 PDF документа
|
||||
compare.tags=разграничаване,контраст,промени,анализ
|
||||
|
||||
home.certSign.title=Подпишете със сертификат
|
||||
home.certSign.desc=Подписва PDF със сертификат/ключ (PEM/P12)
|
||||
certSign.tags=удостоверяване,PEM,P12,официален,шифроване
|
||||
|
||||
home.pageLayout.title=Оформление с няколко страници
|
||||
home.pageLayout.desc=Слейте няколко страници от PDF документ в една страница
|
||||
pageLayout.tags=сливане,комбиниран,единичен изглед,организиране
|
||||
|
||||
home.scalePages.title=Коригирайте размера/мащаба на страницата
|
||||
home.scalePages.desc=Промяна на размера/мащаба на страница и/или нейното съдържание.
|
||||
scalePages.tags=преоразмеряване,промяна,размер,адаптиране
|
||||
|
||||
home.pipeline.title=Pipeline (Разширено)
|
||||
home.pipeline.desc=Изпълнявайте множество действия върху PDF файлове чрез дефиниране на конвейерни скриптове
|
||||
pipeline.tags=автоматизиране,последователност,чрез скриптове,пакетен процес
|
||||
|
||||
home.add-page-numbers.title=Добавяне на номера на страници
|
||||
home.add-page-numbers.desc=Добавете номера на страници в документ на определено място
|
||||
add-page-numbers.tags=страничен, етикетиране, организиране, индексиране
|
||||
|
||||
home.auto-rename.title=Автоматично преименуване на PDF файл
|
||||
home.auto-rename.desc=Автоматично преименува PDF файл въз основа на откритата му заглавка
|
||||
auto-rename.tags=автоматично откриване,базирано на заглавка,организиране,преетикетиране
|
||||
|
||||
home.adjust-contrast.title=Коригиране на цветове/контраст
|
||||
home.adjust-contrast.desc=Коригиране на контраста, наситеността и яркостта на PDF
|
||||
adjust-contrast.tags=корекция на цвета,настройте,модифицирайте,подобрете
|
||||
|
||||
home.crop.title=Изрязване на PDF
|
||||
home.crop.desc=Изрежете PDF, за да намалите размера му (поддържа текст!)
|
||||
crop.tags=изрязване,свиване,редактиране,оформяне
|
||||
|
||||
home.autoSplitPDF.title=Автоматично разделяне на страници
|
||||
home.autoSplitPDF.desc=Автоматично разделяне на сканиран PDF файл с QR код за разделяне на физически сканирани страници
|
||||
autoSplitPDF.tags=QR-базиран,отделен,сканиране-сегмент,организиране
|
||||
|
||||
home.sanitizePdf.title=Дезинфекцирай
|
||||
home.sanitizePdf.desc=Премахване на скриптове и други елементи от PDF файлове
|
||||
sanitizePdf.tags=чисти,сигурни,безопасни,премахване-заплахи
|
||||
|
||||
home.URLToPDF.title=URL/уеб-сайт към PDF
|
||||
home.URLToPDF.desc=Преобразува всеки http(s) URL към PDF
|
||||
URLToPDF.tags=уеб-заснемане,запазване на страница,уеб към документ,архив
|
||||
|
||||
home.HTMLToPDF.title=HTML към PDF
|
||||
home.HTMLToPDF.desc=Преобразува всеки HTML файл или архив към PDF
|
||||
HTMLToPDF.tags=маркиране,уеб-съдържание,трансформация,преобразуване
|
||||
|
||||
|
||||
home.MarkdownToPDF.title=Markdown към PDF
|
||||
home.MarkdownToPDF.desc=Преобразува всеки Markdown файл към PDF
|
||||
MarkdownToPDF.tags=маркиране,уеб-съдържание,трансформация,преобразуване
|
||||
|
||||
|
||||
home.getPdfInfo.title=Вземете ЦЯЛАТА информация към PDF
|
||||
home.getPdfInfo.desc=Взема всяка възможна информация от PDF файлове
|
||||
getPdfInfo.tags=информация,данни,статистики,статистика
|
||||
|
||||
|
||||
home.extractPage.title=Извличане на страница(и)
|
||||
home.extractPage.desc=Извлича избрани страници от PDF
|
||||
extractPage.tags=извличане
|
||||
|
||||
|
||||
home.PdfToSinglePage.title=PDF към една голяма страница
|
||||
home.PdfToSinglePage.desc=Обединява всички PDF страници в една голяма страница
|
||||
PdfToSinglePage.tags=единична страница
|
||||
|
||||
|
||||
home.showJS.title=Показване на Javascript
|
||||
home.showJS.desc=Търси и показва всеки JS, инжектиран в PDF
|
||||
showJS.tags=JS
|
||||
|
||||
home.autoRedact.title=Автоматично редактиране
|
||||
home.autoRedact.desc=Автоматично редактира (зачернява) текст в PDF въз основа на въведен текст
|
||||
showJS.tags=Редактиране,Скриване,затъмняване,черен,маркер,скрит
|
||||
|
||||
###########################
|
||||
# #
|
||||
# WEB PAGES #
|
||||
# #
|
||||
###########################
|
||||
#login
|
||||
login.title=Вход
|
||||
login.signin=Впишете се
|
||||
login.rememberme=Запомни ме
|
||||
login.invalid=Невалидно потребителско име или парола.
|
||||
login.locked=Вашият акаунт е заключен.
|
||||
login.signinTitle=Моля впишете се
|
||||
|
||||
|
||||
#auto-redact
|
||||
autoRedact.title=Автоматично редактиране
|
||||
autoRedact.header=Автоматично редактиране
|
||||
autoRedact.colorLabel=Цвят
|
||||
autoRedact.textsToRedactLabel=Текст за редактиране (разделен с редове)
|
||||
autoRedact.textsToRedactPlaceholder=например: \nПоверително \nСтрого секретно
|
||||
autoRedact.useRegexLabel=Използване на Regex
|
||||
autoRedact.wholeWordSearchLabel=Търсене на цялата дума
|
||||
autoRedact.customPaddingLabel=Персонализирана допълнителна подложка
|
||||
autoRedact.convertPDFToImageLabel=Преобразуване на PDF към PDF-изображение (използва се за премахване на текст зад полето)
|
||||
autoRedact.submitButton=Изпращане
|
||||
|
||||
|
||||
#showJS
|
||||
showJS.title=Покажи Javascript
|
||||
showJS.header=Покажи Javascript
|
||||
showJS.downloadJS=Изтегли Javascript
|
||||
showJS.submit=Покажи
|
||||
|
||||
|
||||
#pdfToSinglePage
|
||||
pdfToSinglePage.title=PDF към единична страница
|
||||
pdfToSinglePage.header=PDF към единична страница
|
||||
pdfToSinglePage.submit=Преобразуване към единична страница
|
||||
|
||||
|
||||
#pageExtracter
|
||||
pageExtrater.title=Извличане на страници
|
||||
pageExtrater.header=Извличане на страници
|
||||
pageExtrater.submit=Извличане
|
||||
|
||||
|
||||
#getPdfInfo
|
||||
getPdfInfo.title=Вземете информация за PDF
|
||||
getPdfInfo.header=Вземете информация за PDF
|
||||
getPdfInfo.submit=Вземете информация
|
||||
getPdfInfo.downloadJson=Изтеглете JSON
|
||||
|
||||
|
||||
#markdown-to-pdf
|
||||
MarkdownToPDF.title=Markdown към PDF
|
||||
MarkdownToPDF.header=Markdown към PDF
|
||||
MarkdownToPDF.submit=Преобразуване
|
||||
MarkdownToPDF.help=Работата е в ход
|
||||
MarkdownToPDF.credit=Използва WeasyPrint
|
||||
|
||||
|
||||
|
||||
#url-to-pdf
|
||||
URLToPDF.title=URL към PDF
|
||||
URLToPDF.header=URL към PDF
|
||||
URLToPDF.submit=Преобразуване
|
||||
URLToPDF.credit=Използва WeasyPrint
|
||||
|
||||
|
||||
#html-to-pdf
|
||||
HTMLToPDF.title=HTML към PDF
|
||||
HTMLToPDF.header=HTML към PDF
|
||||
HTMLToPDF.help=Приема HTML файлове и ZIP файлове, съдържащи html/css/изображения и т.н
|
||||
HTMLToPDF.submit=Преобразуване
|
||||
HTMLToPDF.credit=Използва WeasyPrint
|
||||
|
||||
|
||||
#sanitizePDF
|
||||
sanitizePDF.title=Дезинфектирай PDF
|
||||
sanitizePDF.header=Дезинфектира PDF файл
|
||||
sanitizePDF.selectText.1=Премахва JavaScript действия
|
||||
sanitizePDF.selectText.2=Премахва вградени файлове
|
||||
sanitizePDF.selectText.3=Премахва метаданни
|
||||
sanitizePDF.selectText.4=Премахва линкове
|
||||
sanitizePDF.selectText.5=Премахва шрифтове
|
||||
sanitizePDF.submit=Дезинфектирай PDF
|
||||
|
||||
|
||||
#addPageNumbers
|
||||
addPageNumbers.title=Добавяне на номера на страници
|
||||
addPageNumbers.header=Добавяне на номера на страници
|
||||
addPageNumbers.selectText.1=Изберете PDF файл:
|
||||
addPageNumbers.selectText.2=Размер на полето
|
||||
addPageNumbers.selectText.3=Позиция
|
||||
addPageNumbers.selectText.4=Начален номер
|
||||
addPageNumbers.selectText.5=Страници към номер
|
||||
addPageNumbers.selectText.6=Персонализиран текст
|
||||
addPageNumbers.customTextDesc=Персонализиран текст
|
||||
addPageNumbers.numberPagesDesc=Кои страници да номерирате, по подразбиране 'всички', също приема 1-5 или 2,5,9 и т.н.
|
||||
addPageNumbers.customNumberDesc=По подразбиране е {n}, също приема 'Страница {n} от {total}', 'Текст-{n}', '{filename}-{n}
|
||||
addPageNumbers.submit=Добавяне на номера на страници
|
||||
|
||||
|
||||
#auto-rename
|
||||
auto-rename.title=Автоматично преименуване
|
||||
auto-rename.header=Автоматично преименуване на PDF
|
||||
auto-rename.submit=Автоматично преименуване
|
||||
|
||||
|
||||
#adjustContrast
|
||||
adjustContrast.title=Настройка на контраста
|
||||
adjustContrast.header=Коригиране на контраста
|
||||
adjustContrast.contrast=Контраст:
|
||||
adjustContrast.brightness=Яркост:
|
||||
adjustContrast.saturation=Наситеност:
|
||||
adjustContrast.download=Изтегли
|
||||
|
||||
|
||||
#crop
|
||||
crop.title=Изрязване
|
||||
crop.header=Изрязване на изображение
|
||||
crop.submit=Подайте
|
||||
|
||||
|
||||
#autoSplitPDF
|
||||
autoSplitPDF.title=Автоматично разделяне на PDF
|
||||
autoSplitPDF.header=Автоматично разделяне на PDF
|
||||
autoSplitPDF.description=Печатайте, вмъквайте, сканирайте, качвайте и ни позволете да разделим автоматично вашите документи. Не е необходимо ръчно сортиране.
|
||||
autoSplitPDF.selectText.1=Отпечатайте някои разделителни листове отдолу (Черно-бялото е добре).
|
||||
autoSplitPDF.selectText.2=Сканирайте всичките си документи наведнъж, като поставите разделителния лист между тях.
|
||||
autoSplitPDF.selectText.3=Качете единствения голям сканиран PDF файл и оставете Stirling PDF да се справи с останалото.
|
||||
autoSplitPDF.selectText.4=Разделителните страници се откриват и премахват автоматично, което гарантира чист краен документ.
|
||||
autoSplitPDF.formPrompt=Изпратете PDF, съдържащ разделители на страници на Stirling-PDF:
|
||||
autoSplitPDF.duplexMode=Дуплексен режим (сканиране отпред и отзад)
|
||||
autoSplitPDF.dividerDownload1=Изтеглете 'Автоматичен сплитер разделител (минимален).pdf'
|
||||
autoSplitPDF.dividerDownload2=Изтеглете 'Автоматичен сплитер разделител (с инструкции).pdf'
|
||||
autoSplitPDF.submit=Подайте
|
||||
|
||||
|
||||
#pipeline
|
||||
pipeline.title=Pipeline
|
||||
|
||||
|
||||
#pageLayout
|
||||
pageLayout.title=Многостранично оформление
|
||||
pageLayout.header=Оформление на няколко страници
|
||||
pageLayout.pagesPerSheet=Страници на лист:
|
||||
pageLayout.addBorder=Добавяне на граници
|
||||
pageLayout.submit=Подайте
|
||||
|
||||
|
||||
#scalePages
|
||||
scalePages.title=Коригиране на мащаба на страницата
|
||||
scalePages.header=Коригиране на мащаба на страницата
|
||||
scalePages.pageSize=Размер на страница от документа.
|
||||
scalePages.scaleFactor=Ниво на мащабиране (изрязване) на страница.
|
||||
scalePages.submit=Подайте
|
||||
|
||||
|
||||
#certSign
|
||||
certSign.title=Подписване на сертификат
|
||||
certSign.header=Подпишете PDF с вашия сертификат (В процес на работа)
|
||||
certSign.selectPDF=Изберете PDF файл за подписване:
|
||||
certSign.selectKey=Изберете вашия файл с личен ключ (формат PKCS#8, може да бъде .pem или .der):
|
||||
certSign.selectCert=Изберете вашия файл със сертификат (формат X.509, може да бъде .pem или .der):
|
||||
certSign.selectP12=Изберете вашия PKCS#12 Keystore файл (.p12 или .pfx) (По избор, ако е предоставен, трябва да съдържа вашия личен ключ и сертификат):
|
||||
certSign.certType=Тип сертификат
|
||||
certSign.password=Въведете вашата парола за Keystore за ключове или частен ключ (ако има):
|
||||
certSign.showSig=Показване на подпис
|
||||
certSign.reason=Причина
|
||||
certSign.location=Местоположение
|
||||
certSign.name=Име
|
||||
certSign.submit=Подпишете PDF
|
||||
|
||||
|
||||
#removeBlanks
|
||||
removeBlanks.title=Премахване на празни места
|
||||
removeBlanks.header=Премахване на празни страници
|
||||
removeBlanks.threshold=Праг на белота на пикселите:
|
||||
removeBlanks.thresholdDesc=Праг за определяне колко бял трябва да бъде един бял пиксел, за да бъде класифициран като 'бял'. 0 = черно, 255 чисто бяло.
|
||||
removeBlanks.whitePercent=Процент бяло (%):
|
||||
removeBlanks.whitePercentDesc=Процент от страницата, която трябва да бъде в 'бели' пиксели, които да бъдат премахнати
|
||||
removeBlanks.submit=Премахване на празни места
|
||||
|
||||
|
||||
#compare
|
||||
compare.title=Сравнявай
|
||||
compare.header=Сравнявай PDF-и
|
||||
compare.document.1=Документ 1
|
||||
compare.document.2=Документ 2
|
||||
compare.submit=Сравнявай
|
||||
|
||||
|
||||
#sign
|
||||
sign.title=Подпишете
|
||||
sign.header=Подпишете PDF-и
|
||||
sign.upload=Качи изображение
|
||||
sign.draw=Начертайте подпис
|
||||
sign.text=Въвеждане на текст
|
||||
sign.clear=Изчисти
|
||||
sign.add=Добави
|
||||
|
||||
|
||||
#repair
|
||||
repair.title=Поправи
|
||||
repair.header=Поправи PDF-и
|
||||
repair.submit=Поправи
|
||||
|
||||
|
||||
#flatten
|
||||
flatten.title=Изравнете
|
||||
flatten.header=Изравнете PDF-и
|
||||
flatten.submit=Изравнете
|
||||
|
||||
|
||||
#ScannerImageSplit
|
||||
ScannerImageSplit.selectText.1=Праг на ъгъла:
|
||||
ScannerImageSplit.selectText.2=Задава минималния абсолютен ъгъл, необходим за завъртане на изображението (по подразбиране: 10).
|
||||
ScannerImageSplit.selectText.3=Толеранс:
|
||||
ScannerImageSplit.selectText.4=Определя обхвата на цветовата вариация около предполагаемия фонов цвят (по подразбиране: 30).
|
||||
ScannerImageSplit.selectText.5=Минимална площ:
|
||||
ScannerImageSplit.selectText.6=Задава минималния праг на площ за изображение (по подразбиране: 10000).
|
||||
ScannerImageSplit.selectText.7=Минимална контурна площ:
|
||||
ScannerImageSplit.selectText.8=Задава минималния праг на контурната площ за изображение
|
||||
ScannerImageSplit.selectText.9=Размер на рамката:
|
||||
ScannerImageSplit.selectText.10=Задава размера на добавената и премахната граница, за да предотврати бели граници към изхода (по подразбиране: 1).
|
||||
|
||||
|
||||
#OCR
|
||||
ocr.title=OCR / Почистване на сканиране
|
||||
ocr.header=Почистващи сканирания / OCR (оптично разпознаване на знаци)
|
||||
ocr.selectText.1=Изберете езици, които да бъдат открити в рамките на PDF (изброените са откритите към момента):
|
||||
ocr.selectText.2=Създаване на текстов файл, съдържащ OCR текст заедно с OCR PDF
|
||||
ocr.selectText.3=Правилните страници бяха сканирани под изкривен ъгъл чрез завъртането им обратно на мястото им
|
||||
ocr.selectText.4=Чиста страница, така че е по-малко вероятно OCR да намери текст във фонов шум. (Без промяна на изхода)
|
||||
ocr.selectText.5=Чиста страница, така че е по-малко вероятно OCR да намери текст във фонов шум, поддържа почистване към изхода.
|
||||
ocr.selectText.6=Игнорира страници, които имат интерактивен текст, само OCR страници, които са изображения
|
||||
ocr.selectText.7=Принудително OCR, ще премахва чрез OCR на всяка страница всички оригинални текстови елементи
|
||||
ocr.selectText.8=Нормално (Ще има грешка, ако PDF съдържа текст)
|
||||
ocr.selectText.9=Допълнителни настройки
|
||||
ocr.selectText.10=OCR режим
|
||||
ocr.selectText.11=Премахване на изображения след OCR (Премахва ВСИЧКИ изображения, полезно само ако е част от стъпката на преобразуване)
|
||||
ocr.selectText.12=Тип изобразяване (Разширен)
|
||||
ocr.help=Моля, прочетете тази документация за това как да използвате това за други езици и/или да не използвате в docker
|
||||
ocr.credit=Тази услуга използва OCRmyPDF и Tesseract за OCR.
|
||||
ocr.submit=Обработка на PDF чрез OCR
|
||||
|
||||
|
||||
#extractImages
|
||||
extractImages.title=Извличане на изображения
|
||||
extractImages.header=Извличане на изображения
|
||||
extractImages.selectText=Изберете формат на изображението, в който да преобразувате извлечените изображения
|
||||
extractImages.submit=Извличане
|
||||
|
||||
|
||||
#File to PDF
|
||||
fileToPDF.title=Файл към PDF
|
||||
fileToPDF.header=Конвертирайте всеки файл към PDF
|
||||
fileToPDF.credit=Тази услуга използва LibreOffice и Unoconv за преобразуване на файлове.
|
||||
fileToPDF.supportedFileTypes=Поддържаните типове файлове трябва да включват по-долу, но за пълен актуализиран списък на поддържаните формати, моля, вижте документацията на LibreOffice
|
||||
fileToPDF.submit=Преобразуване към PDF
|
||||
|
||||
|
||||
#compress
|
||||
compress.title=Компресиране
|
||||
compress.header=Компресиране на PDF
|
||||
compress.credit=Тази услуга използва Ghostscript за PDF компресиране/оптимизиране.
|
||||
compress.selectText.1=Ръчен режим - От 1 до 4
|
||||
compress.selectText.2=Ниво на оптимизация:
|
||||
compress.selectText.3=4 (Ужасно за текстови изображения)
|
||||
compress.selectText.4=Автоматичен режим - Автоматично настройва качеството, за да получи PDF точен размер
|
||||
compress.selectText.5=Очакван PDF размер (напр. 25MB, 10.8MB, 25KB)
|
||||
compress.submit=Компресиране
|
||||
|
||||
|
||||
#Add image
|
||||
addImage.title=Добавяне на изображение
|
||||
addImage.header=Добавяне на изображение към PDF
|
||||
addImage.everyPage=Всяка страница?
|
||||
addImage.upload=Добавяне на изображение
|
||||
addImage.submit=Добавяне на изображение
|
||||
|
||||
|
||||
#merge
|
||||
merge.title=Обединяване
|
||||
merge.header=Обединяване на множество PDF файлове (2+)
|
||||
merge.sortByName=Сортиране по име
|
||||
merge.sortByDate=Сортиране по дата
|
||||
merge.submit=Обединяване
|
||||
|
||||
|
||||
#pdfOrganiser
|
||||
pdfOrganiser.title=Организатор на страници
|
||||
pdfOrganiser.header=Организатор на PDF страници
|
||||
pdfOrganiser.submit=Пренареждане на страниците
|
||||
|
||||
|
||||
#multiTool
|
||||
multiTool.title=PDF Мулти инструмент
|
||||
multiTool.header=PDF Мулти инструмент
|
||||
|
||||
|
||||
#pageRemover
|
||||
pageRemover.title=Премахване на страници
|
||||
pageRemover.header=Премахване на PDF страници
|
||||
pageRemover.pagesToDelete=Страници за изтриване (Въведете списък с номера на страници, разделени със запетая) :
|
||||
pageRemover.submit=Изтриване на страници
|
||||
|
||||
|
||||
#rotate
|
||||
rotate.title=Завъртане на PDF
|
||||
rotate.header=Завъртане на PDF
|
||||
rotate.selectAngle=Изберете ъгъл на въртене (кратно на 90 градуса):
|
||||
rotate.submit=Завъртане
|
||||
|
||||
|
||||
#merge
|
||||
split.title=Разделяне на PDF
|
||||
split.header=Разделяне на PDF
|
||||
split.desc.1=Числата, които избирате, са номера на страницата, на която искате да направите разделяне
|
||||
split.desc.2=Така че избирането на 1,3,7-8 ще раздели документ от 10 страници на 6 отделни PDF файла с:
|
||||
split.desc.3=Документ #1: Страница 1
|
||||
split.desc.4=Документ #2: Страница 2 и 3
|
||||
split.desc.5=Документ #3: Страница 4, 5 и 6
|
||||
split.desc.6=Документ #4: Страница 7
|
||||
split.desc.7=Документ #5: Страница 8
|
||||
split.desc.8=Документ #6: Страница 9 и 10
|
||||
split.splitPages=Въведете страници за разделяне:
|
||||
split.submit=Разделяне
|
||||
|
||||
|
||||
#merge
|
||||
imageToPDF.title=Изображение към PDF
|
||||
imageToPDF.header=Изображение към PDF
|
||||
imageToPDF.submit=Преобразуване
|
||||
imageToPDF.selectLabel=Опции за прилягане на изображението
|
||||
imageToPDF.fillPage=Попълване на страница
|
||||
imageToPDF.fitDocumentToImage=Побиране на страницата в изображението
|
||||
imageToPDF.maintainAspectRatio=Поддържане на пропорции
|
||||
imageToPDF.selectText.2=Автоматично завъртане на PDF
|
||||
imageToPDF.selectText.3=Файлова логика с много (Активирано само ако работите с множество изображения)
|
||||
imageToPDF.selectText.4=Сливане към един PDF
|
||||
imageToPDF.selectText.5=Преобразуване към отделни PDF файлове
|
||||
|
||||
|
||||
#pdfToImage
|
||||
pdfToImage.title=PDF към Изображение
|
||||
pdfToImage.header=PDF към Изображение
|
||||
pdfToImage.selectText=Формат на изображението
|
||||
pdfToImage.singleOrMultiple=Тип резултат от страница към изображение
|
||||
pdfToImage.single=Единично голямо изображение комбиниране на всички страници
|
||||
pdfToImage.multi=Множество изображения, по едно изображение на страница
|
||||
pdfToImage.colorType=Тип цвят
|
||||
pdfToImage.color=Цвят
|
||||
pdfToImage.grey=Скала на сивото
|
||||
pdfToImage.blackwhite=Черно и бяло (може да загубите данни!)
|
||||
pdfToImage.submit=Преобразуване
|
||||
|
||||
|
||||
#addPassword
|
||||
addPassword.title=Добавяне на парола
|
||||
addPassword.header=Добавяне на парола (Шифроване)
|
||||
addPassword.selectText.1=Изберете PDF, който да шифровате
|
||||
addPassword.selectText.2=Потребителска парола
|
||||
addPassword.selectText.3=Предотвратяване на сглобяването на документ
|
||||
addPassword.selectText.4=По-високите стойности са по-силни, но по-ниските стойности имат по-добра съвместимост.
|
||||
addPassword.selectText.5=Разрешения за задаване (препоръчва се да се използва заедно с паролата на собственика)
|
||||
addPassword.selectText.6=Предотвратяване на сглобяването на документ
|
||||
addPassword.selectText.7=Предотвратете извличането на съдържание
|
||||
addPassword.selectText.8=Предотвратете извличането за достъпност
|
||||
addPassword.selectText.9=Предотвратяване на попълване на формуляр
|
||||
addPassword.selectText.10=Предотвратяване на промени
|
||||
addPassword.selectText.11=Предотвратяване на промени на анотация
|
||||
addPassword.selectText.12=Предотвратяване на печат
|
||||
addPassword.selectText.13=Предотвратете отпечатването в различни формати
|
||||
addPassword.selectText.14=Парола на собственика
|
||||
addPassword.selectText.15=Ограничава какво може да се прави с документа, след като бъде отворен (не се поддържа от всички четци)
|
||||
addPassword.selectText.16=Ограничава отварянето на самия документ
|
||||
addPassword.submit=Шифроване
|
||||
|
||||
|
||||
#watermark
|
||||
watermark.title=Добавяне на воден знак
|
||||
watermark.header=Добавяне на воден знак
|
||||
watermark.selectText.1=Изберете PDF, към който да добавите воден знак:
|
||||
watermark.selectText.2=Текст на воден знак:
|
||||
watermark.selectText.3=Размер на шрифта:
|
||||
watermark.selectText.4=Завъртане (0-360):
|
||||
watermark.selectText.5=ширинаSpacer (Разстояние между всеки воден знак хоризонтално):
|
||||
watermark.selectText.6=дължинаSpacer (Разстояние между всеки воден знак вертикално):
|
||||
watermark.selectText.7=Непрозрачност (0% - 100%):
|
||||
watermark.selectText.8=Тип воден знак:
|
||||
watermark.selectText.9=Изображение за воден знак:
|
||||
watermark.submit=Добавяне на воден знак
|
||||
|
||||
|
||||
#Change permissions
|
||||
permissions.title=Промяна на правата
|
||||
permissions.header=Промени правата
|
||||
permissions.warning=Предупреждение, че тези разрешения са непроменими, препоръчва се да ги зададете с парола чрез страницата за добавяне на парола
|
||||
permissions.selectText.1=Изберете PDF, за да промените правата
|
||||
permissions.selectText.2=Разрешения за задаване
|
||||
permissions.selectText.3=Предотвратяване на сглобяването на документ
|
||||
permissions.selectText.4=Предотвратете извличането на съдържание
|
||||
permissions.selectText.5=Предотвратете извличането за достъпност
|
||||
permissions.selectText.6=Предотвратяване на попълване на формуляр
|
||||
permissions.selectText.7=Предотвратяване на модификация
|
||||
permissions.selectText.8=Предотвратяване на модификация на анотация
|
||||
permissions.selectText.9=Предотвратявам на отпечатването
|
||||
permissions.selectText.10=Предотвратете отпечатването на различни формати
|
||||
permissions.submit=Промени
|
||||
|
||||
|
||||
#remove password
|
||||
removePassword.title=Премахване на паролата
|
||||
removePassword.header=Премахване на паролата (Декриптиране)
|
||||
removePassword.selectText.1=Изберете PDF за Декриптиране
|
||||
removePassword.selectText.2=Парола
|
||||
removePassword.submit=Премахване
|
||||
|
||||
|
||||
#changeMetadata
|
||||
changeMetadata.title=Промени метаданните
|
||||
changeMetadata.header=Промени метаданните
|
||||
changeMetadata.selectText.1=Моля, редактирайте променливите, които искате да промените
|
||||
changeMetadata.selectText.2=Изтрий всички метаданни
|
||||
changeMetadata.selectText.3=Покажи персонализирани метаданни:
|
||||
changeMetadata.author=Автор:
|
||||
changeMetadata.creationDate=Дата на създаване (гггг/ММ/дд ЧЧ:мм:сс):
|
||||
changeMetadata.creator=Създател:
|
||||
changeMetadata.keywords=Ключови думи:
|
||||
changeMetadata.modDate=Дата на промяна (гггг/ММ/дд ЧЧ:мм:сс):
|
||||
changeMetadata.producer=Продуцент:
|
||||
changeMetadata.subject=Тема:
|
||||
changeMetadata.title=Заглавие:
|
||||
changeMetadata.trapped=В капан:
|
||||
changeMetadata.selectText.4=Други метаданни:
|
||||
changeMetadata.selectText.5=Добавяне на персонализиране метаданни
|
||||
changeMetadata.submit=Промени
|
||||
|
||||
|
||||
#pdfToPDFA
|
||||
pdfToPDFA.title=PDF към PDF/A
|
||||
pdfToPDFA.header=PDF към PDF/A
|
||||
pdfToPDFA.credit=Тази услуга използва OCRmyPDF за PDF/A преобразуване.
|
||||
pdfToPDFA.submit=Преобразуване
|
||||
|
||||
|
||||
#PDFToWord
|
||||
PDFToWord.title=PDF към Word
|
||||
PDFToWord.header=PDF към Word
|
||||
PDFToWord.selectText.1=Изходен файлов формат
|
||||
PDFToWord.credit=Тази услуга използва LibreOffice за преобразуване на файлове.
|
||||
PDFToWord.submit=Преобразуване
|
||||
|
||||
|
||||
#PDFToPresentation
|
||||
PDFToPresentation.title=PDF към Презентация
|
||||
PDFToPresentation.header=PDF към Презентация
|
||||
PDFToPresentation.selectText.1=Изходен файлов формат
|
||||
PDFToPresentation.credit=Тази услуга използва LibreOffice за преобразуване на файлове.
|
||||
PDFToPresentation.submit=Преобразуване
|
||||
|
||||
|
||||
#PDFToText
|
||||
PDFToText.title=PDF към RTF (Текст)
|
||||
PDFToText.header=PDF към RTF (Текст)
|
||||
PDFToText.selectText.1=Изходен файлов формат
|
||||
PDFToText.credit=Тази услуга използва LibreOffice за преобразуване на файлове.
|
||||
PDFToText.submit=Преобразуване
|
||||
|
||||
|
||||
#PDFToHTML
|
||||
PDFToHTML.title=PDF към HTML
|
||||
PDFToHTML.header=PDF към HTML
|
||||
PDFToHTML.credit=Тази услуга използва LibreOffice за преобразуване на файлове.
|
||||
PDFToHTML.submit=Преобразуване
|
||||
|
||||
|
||||
#PDFToXML
|
||||
PDFToXML.title=PDF към XML
|
||||
PDFToXML.header=PDF към XML
|
||||
PDFToXML.credit=Тази услуга използва LibreOffice за преобразуване на файлове.
|
||||
PDFToXML.submit=Преобразуване
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Multi Page Layout
|
||||
pageLayout.header=Multi Page Layout
|
||||
pageLayout.pagesPerSheet=Pages per sheet:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Submit
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=Divideix
|
||||
imageToPDF.title=Imatge a PDF
|
||||
imageToPDF.header=Imatge a PDF
|
||||
imageToPDF.submit=Converteix
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -19,7 +19,7 @@ save=Speichern
|
||||
close=Schließen
|
||||
filesSelected=Dateien ausgewählt
|
||||
noFavourites=Keine Favoriten hinzugefügt
|
||||
bored=Gelangweiltes Warten?
|
||||
bored=Langeweile beim Warten?
|
||||
alphabet=Alphabet
|
||||
downloadPdf=PDF herunterladen
|
||||
text=Text
|
||||
@@ -196,7 +196,7 @@ home.fileToPDF.title=Datei in PDF konvertieren
|
||||
home.fileToPDF.desc=Konvertieren Sie nahezu jede Datei in PDF (DOCX, PNG, XLS, PPT, TXT und mehr)
|
||||
fileToPDF.tags=transformation,format,document,picture,slide,text,conversion,office,docs,word,excel,powerpoint
|
||||
|
||||
home.ocr.title=Führe OCR auf PDF- und/oder Cleanup-Scans aus
|
||||
home.ocr.title=Führe OCR/Cleanup-Scans aus
|
||||
home.ocr.desc=Cleanup scannt und erkennt Text aus Bildern in einer PDF-Datei und fügt ihn erneut als Text hinzu.
|
||||
ocr.tags=recognition,text,image,scan,read,identify,detection,editable
|
||||
|
||||
@@ -430,7 +430,7 @@ addPageNumbers.selectText.5=Seiten zu nummerieren
|
||||
addPageNumbers.selectText.6=Benutzerdefinierter Text
|
||||
addPageNumbers.customTextDesc=Benutzerdefinierter Text
|
||||
addPageNumbers.numberPagesDesc=Welche Seiten nummeriert werden sollen, Standardeinstellung 'alle' ('all'), akzeptiert auch 1-5 oder 2,5,9 usw.
|
||||
addPageNumbers.customNumberDesc=Standardmäßig {n}, akzeptiert auch 'Seite {n} von {insgesamt}', 'Text-{n}', '{Dateiname}-{n} ('{filename}-{n})
|
||||
addPageNumbers.customNumberDesc=Standardmäßig {n}, akzeptiert auch 'Seite {n} von {total}', 'Text-{n}', '{filename}-{n}'
|
||||
addPageNumbers.submit=Seitenzahlen hinzufügen
|
||||
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Mehrseitiges Layout
|
||||
pageLayout.header=Mehrseitiges Layout
|
||||
pageLayout.pagesPerSheet=Seiten pro Blatt:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Abschicken
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=Aufteilen
|
||||
imageToPDF.title=Bild zu PDF
|
||||
imageToPDF.header=Bild zu PDF
|
||||
imageToPDF.submit=Umwandeln
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
820
src/main/resources/messages_el_GR.properties
Normal file
820
src/main/resources/messages_el_GR.properties
Normal file
@@ -0,0 +1,820 @@
|
||||
###########
|
||||
# Generic #
|
||||
###########
|
||||
# the direction that the language is written (ltr = left to right, rtl = right to left)
|
||||
language.direction=ltr
|
||||
|
||||
pdfPrompt=\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE PDF(s)
|
||||
multiPdfPrompt=\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE PDFs (2+)
|
||||
multiPdfDropPrompt=\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE (\u03AE \u03C4\u03C1\u03AC\u03B2\u03B7\u03B3\u03BC\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 \u03BA\u03B1\u03B9 \u03B1\u03C0\u03CC\u03B8\u03B5\u03C3\u03B7) \u03CC\u03BB\u03C9\u03BD \u03C4\u03C9\u03BD PDF \u03C0\u03BF\u03C5 \u03C7\u03C1\u03B5\u03B9\u03AC\u03B6\u03B5\u03C3\u03C4\u03B5
|
||||
imgPrompt=\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u0395\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2(\u0395\u03B9\u03BA\u03CC\u03BD\u03C9\u03BD)
|
||||
genericSubmit=\u03A5\u03C0\u03BF\u03B2\u03BF\u03BB\u03AE
|
||||
processTimeWarning=\u03A0\u03C1\u03BF\u03C3\u03BF\u03C7\u03AE: \u0391\u03C5\u03C4\u03AE \u03B7 \u03B4\u03B9\u03B1\u03B4\u03B9\u03BA\u03B1\u03C3\u03AF\u03B1 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03B4\u03B9\u03B1\u03C1\u03BA\u03AD\u03C3\u03B5\u03B9 \u03AD\u03C9\u03C2 \u03BA\u03B1\u03B9 \u03AD\u03BD\u03B1 \u03BB\u03B5\u03C0\u03C4\u03CC \u03B1\u03BD\u03AC\u03BB\u03BF\u03B3\u03B1 \u03BC\u03B5 \u03C4\u03BF \u03BC\u03AD\u03B3\u03B5\u03B8\u03BF\u03C2 \u03C4\u03BF\u03C5 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5
|
||||
pageOrderPrompt=\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03B7 \u03A3\u03B5\u03B9\u03C1\u03AC \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2 (\u03A0\u03C1\u03BF\u03C3\u03B8\u03AD\u03C3\u03C4\u03B5 \u03BC\u03AF\u03B1 \u03BB\u03AF\u03C3\u03C4\u03B5 \u03B1\u03C0\u03BF \u03B1\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD\u03C2 \u03C3\u03B5\u03BB\u03B9\u03B4\u03CE\u03BD, \u03C7\u03C9\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03B5\u03C2 \u03BC\u03B5 \u03BA\u03CC\u03BC\u03BC\u03B1 \u03AE \u03C3\u03C5\u03BD\u03B1\u03C1\u03C4\u03AE\u03C3\u03B5\u03B9\u03C2 \u03CC\u03C0\u03C9\u03C2 2n+1) :
|
||||
goToPage=Go
|
||||
true=\u0391\u03BB\u03B7\u03B8\u03AD\u03C2
|
||||
false=\u039B\u03B1\u03BD\u03B8\u03B1\u03C3\u03BC\u03AD\u03BD\u03BF
|
||||
unknown=\u0386\u03B3\u03BD\u03C9\u03C3\u03C4\u03BF
|
||||
save=\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7
|
||||
close=\u039A\u03BB\u03B5\u03AF\u03C3\u03B9\u03BC\u03BF
|
||||
filesSelected=\u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 \u03C0\u03BF\u03C5 \u03B5\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B1\u03BD
|
||||
noFavourites=\u039A\u03B1\u03BD\u03AD\u03BD\u03B1 \u03B1\u03B3\u03B1\u03C0\u03AE\u03BC\u03B5\u03BD\u03BF \u03B4\u03B5\u03BD \u03AD\u03C7\u03B5\u03B9 \u03C0\u03C1\u03BF\u03C3\u03C4\u03B5\u03B8\u03B5\u03AF
|
||||
bored=\u0392\u03B1\u03C1\u03B9\u03AD\u03C3\u03C4\u03B5 \u03BD\u03B1 \u03C0\u03B5\u03C1\u03B9\u03BC\u03AD\u03BD\u03B5\u03C4\u03B5;
|
||||
alphabet=\u0391\u03BB\u03C6\u03AC\u03B2\u03B7\u03C4\u03BF
|
||||
downloadPdf=\u039A\u03B1\u03C4\u03AD\u03B2\u03B1\u03C3\u03BC\u03B1 \u03C4\u03BF\u03C5 PDF
|
||||
text=\u039A\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF
|
||||
font=\u0393\u03C1\u03B1\u03BC\u03BC\u03B1\u03C4\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC
|
||||
selectFillter=-- \u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE --
|
||||
pageNum=\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2
|
||||
sizes.small=\u039C\u03B9\u03BA\u03C1\u03CC
|
||||
sizes.medium=\u039C\u03B5\u03C3\u03B1\u03AF\u03BF
|
||||
sizes.large=\u039C\u03B5\u03B3\u03AC\u03BB\u03BF
|
||||
sizes.x-large=\u03A0\u03BF\u03BB\u03CD \u039C\u03B5\u03B3\u03AC\u03BB\u03BF
|
||||
error.pdfPassword=\u03A4\u03BF PDF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BA\u03BB\u03B5\u03B9\u03B4\u03C9\u03BC\u03AD\u03BD\u03BF \u03BC\u03B5 \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03BA\u03B1\u03B9 \u03B5\u03AF\u03C4\u03B5 \u03B4\u03B5\u03BD \u03AD\u03C7\u03B5\u03C4\u03B5 \u03B5\u03B9\u03C3\u03AC\u03B3\u03B5\u03B9 \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC, \u03B5\u03AF\u03C4\u03B5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BB\u03B1\u03BD\u03B8\u03B1\u03C3\u03BC\u03AD\u03BD\u03BF\u03C2
|
||||
delete=\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE
|
||||
username=\u038C\u03BD\u03BF\u03BC\u03B1 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7
|
||||
password=\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2
|
||||
welcome=\u039A\u03B1\u03BB\u03C9\u03C2 \u0389\u03BB\u03B8\u03B1\u03C4\u03B5
|
||||
property=Property
|
||||
black=\u039C\u03B1\u03CD\u03C1\u03BF
|
||||
white=\u0386\u03C3\u03C0\u03C1\u03BF
|
||||
red=\u039A\u03CC\u03BA\u03BA\u03B9\u03BD\u03BF
|
||||
green=\u03A0\u03C1\u03AC\u03C3\u03B9\u03BD\u03BF
|
||||
blue=\u039C\u03C0\u03BB\u03AD
|
||||
custom=\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE...
|
||||
|
||||
changedCredsMessage=\u03A4\u03B1 \u03B4\u03B9\u03B1\u03C0\u03B9\u03C3\u03C4\u03B5\u03C5\u03C4\u03AE\u03C1\u03B9\u03B1 \u03AD\u03C7\u03BF\u03C5\u03BD \u03B1\u03BB\u03BB\u03AC\u03BE\u03B5\u03B9!
|
||||
notAuthenticatedMessage=\u039F \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7\u03C2 \u03B4\u03B5\u03BD \u03AD\u03C7\u03B5\u03B9 \u03B1\u03C5\u03B8\u03B5\u03BD\u03C4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03B8\u03B5\u03AF.
|
||||
userNotFoundMessage=\u039F \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7\u03C2 \u03B4\u03B5\u03BD \u03B2\u03C1\u03AD\u03B8\u03B7\u03BA\u03B5.
|
||||
incorrectPasswordMessage=\u039F \u03C4\u03C1\u03AD\u03C7\u03C9\u03BD \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BB\u03B1\u03BD\u03B8\u03B1\u03C3\u03BC\u03AD\u03BD\u03BF\u03C2.
|
||||
usernameExistsMessage=\u03A4\u03BF \u03BD\u03AD\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7 \u03C5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9 \u03AE\u03B4\u03B7.
|
||||
|
||||
|
||||
|
||||
#############
|
||||
# NAVBAR #
|
||||
#############
|
||||
navbar.convert=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
navbar.security=\u0391\u03C3\u03C6\u03AC\u03BB\u03B5\u03B9\u03B1
|
||||
navbar.other=\u0394\u03B9\u03AC\u03C6\u03BF\u03C1\u03B1
|
||||
navbar.darkmode=\u039C\u03B1\u03CD\u03C1\u03BF \u0398\u03AD\u03BC\u03B1
|
||||
navbar.pageOps=\u039B\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B5\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2
|
||||
navbar.settings=\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2
|
||||
|
||||
#############
|
||||
# SETTINGS #
|
||||
#############
|
||||
settings.title=\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2
|
||||
settings.update=\u03A5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9 \u03B4\u03B9\u03B1\u03B8\u03AD\u03C3\u03B9\u03BC\u03B7 \u03B5\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7
|
||||
settings.appVersion=\u0388\u03BA\u03B4\u03BF\u03C3\u03B7 \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE\u03C2: App Version:
|
||||
settings.downloadOption.title=\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03B5\u03C4\u03B5 \u03C4\u03B7\u03BD \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03BB\u03AE\u03C8\u03B7\u03C2 (\u0393\u03B9\u03B1 \u03BB\u03AE\u03C8\u03B5\u03B9\u03C2 \u03BC\u03B5\u03BC\u03BF\u03BD\u03C9\u03BC\u03AD\u03BD\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD \u03C7\u03C9\u03C1\u03AF\u03C2 zip):
|
||||
settings.downloadOption.1=\u0386\u03BD\u03BF\u03B9\u03B3\u03BC\u03B1 \u03C3\u03C4\u03BF \u03AF\u03B4\u03B9\u03BF \u03C0\u03B1\u03C1\u03AC\u03B8\u03C5\u03C1\u03BF
|
||||
settings.downloadOption.2=\u0386\u03BD\u03BF\u03B9\u03B3\u03BC\u03B1 \u03C3\u03B5 \u03BD\u03AD\u03BF \u03C0\u03B1\u03C1\u03AC\u03B8\u03C5\u03C1\u03BF
|
||||
settings.downloadOption.3=\u039B\u03AE\u03C8\u03B7 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5
|
||||
settings.zipThreshold=Zip \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 \u03CC\u03C4\u03B1\u03BD \u03BF \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03C4\u03C9\u03BD \u03BB\u03B7\u03C6\u03B8\u03AD\u03BD\u03C4\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF\u03C2
|
||||
settings.signOut=\u0391\u03C0\u03BF\u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7
|
||||
settings.accountSettings=\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u039B\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD
|
||||
|
||||
|
||||
|
||||
changeCreds.title=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u0394\u03B9\u03B1\u03C0\u03B9\u03C3\u03C4\u03B5\u03C5\u03C4\u03B7\u03C1\u03AF\u03C9\u03BD
|
||||
changeCreds.header=\u0395\u03BD\u03B7\u03BC\u03AD\u03C1\u03C9\u03C3\u03B7 \u03C4\u03C9\u03BD \u03BB\u03B5\u03C0\u03C4\u03BF\u03BC\u03B5\u03C1\u03B5\u03B9\u03CE\u03BD \u03C4\u03BF\u03C5 \u039B\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD \u03C3\u03B1\u03C2
|
||||
changeCreds.changeUserAndPassword=\u03A7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B5 \u03C4\u03B1 \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03B1 \u03B4\u03B9\u03B1\u03C0\u03B9\u03C3\u03C4\u03B5\u03C5\u03C4\u03AE\u03C1\u03B9\u03B1 \u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7\u03C2. \u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE \u03B5\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03BD\u03AD\u03BF \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 (\u03BA\u03B1\u03B9 \u03CC\u03BD\u03BF\u03BC\u03B1 \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7 \u03B1\u03BD \u03C4\u03BF \u03B5\u03C0\u03B9\u03B8\u03C5\u03BC\u03B5\u03AF\u03C4\u03B5)
|
||||
changeCreds.newUsername=\u039D\u03AD\u03BF \u038C\u03BD\u03BF\u03BC\u03B1 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7
|
||||
changeCreds.oldPassword=\u03A4\u03C1\u03AD\u03C7\u03C9\u03BD \u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03A0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2
|
||||
changeCreds.newPassword=\u039D\u03AD\u03BF\u03C2 \u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03A0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2
|
||||
changeCreds.confirmNewPassword=\u0395\u03C0\u03B9\u03B2\u03B5\u03B2\u03B1\u03AF\u03C9\u03C3\u03B7 \u039D\u03AD\u03BF\u03C5 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD \u03A0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2
|
||||
changeCreds.submit=\u03A5\u03C0\u03BF\u03B2\u03BF\u03BB\u03AE \u0391\u03BB\u03BB\u03B1\u03B3\u03CE\u03BD
|
||||
|
||||
|
||||
|
||||
account.title=\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u039B\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD
|
||||
account.accountSettings=\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u039B\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD
|
||||
account.adminSettings=\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u0394\u03B9\u03B1\u03C7\u03B5\u03B9\u03C1\u03B9\u03C3\u03C4\u03AE - \u03A0\u03C1\u03BF\u03B2\u03BF\u03BB\u03AE \u03BA\u03B1\u03B9 \u03C0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C7\u03C1\u03B7\u03C3\u03C4\u03CE\u03BD
|
||||
account.userControlSettings=\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u03A7\u03B5\u03B9\u03C1\u03B9\u03C3\u03BC\u03BF\u03CD \u03A7\u03C1\u03B7\u03C3\u03C4\u03CE\u03BD
|
||||
account.changeUsername=\u039D\u03AD\u03BF \u038C\u03BD\u03BF\u03BC\u03B1 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7
|
||||
account.changeUsername=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u039F\u03BD\u03CC\u03BC\u03B1\u03C4\u03BF\u03C2 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7
|
||||
account.password=\u0395\u03C0\u03B9\u03B2\u03B5\u03B2\u03B1\u03AF\u03C9\u03C3\u03B7 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD \u03A0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2
|
||||
account.oldPassword=\u03A0\u03B1\u03BB\u03B9\u03CC\u03C2 \u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03A0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2
|
||||
account.newPassword=\u039D\u03AD\u03BF\u03C2 \u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03A0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2
|
||||
account.changePassword=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD \u03A0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2
|
||||
account.confirmNewPassword=\u0395\u03C0\u03B9\u03B2\u03B5\u03B2\u03B1\u03AF\u03C9\u03C3\u03B7 \u039D\u03AD\u03BF\u03C5 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD
|
||||
account.signOut=\u0391\u03C0\u03BF\u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7
|
||||
account.yourApiKey=\u03A4\u03BF \u03BA\u03BB\u03B5\u03B9\u03B4\u03AF \u03C3\u03B1\u03C2 \u03B3\u03B9\u03B1 \u03C4\u03B7 \u03B4\u03B9\u03B5\u03C0\u03B1\u03C6\u03AE \u03C0\u03C1\u03BF\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1\u03C4\u03B9\u03C3\u03BC\u03BF\u03CD \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03CE\u03BD (API key)
|
||||
account.syncTitle=\u03A3\u03C5\u03B3\u03C7\u03C1\u03BF\u03BD\u03B9\u03C3\u03BC\u03CC\u03C2 \u03C4\u03C9\u03BD \u03C1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03C9\u03BD \u03C4\u03BF\u03C5 \u03C6\u03C5\u03BB\u03BB\u03BF\u03BC\u03B5\u03C4\u03C1\u03B7\u03C4\u03AE (Web Browser) \u03BC\u03B5 \u03C4\u03BF\u03BD \u03BB\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03CC
|
||||
account.settingsCompare=\u03A3\u03CD\u03B3\u03BA\u03C1\u03B9\u03C3\u03B7 \u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03C9\u03BD:
|
||||
account.property=Property
|
||||
account.webBrowserSettings=\u03A1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7 \u03C6\u03C5\u03BB\u03BB\u03BF\u03BC\u03B5\u03C4\u03C1\u03B7\u03C4\u03AE (Web Browser)
|
||||
account.syncToBrowser=\u03A3\u03C5\u03B3\u03C7\u03C1\u03BF\u03BD\u03B9\u03C3\u03BC\u03CC\u03C2 \u039B\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD -> \u03A6\u03C5\u03BB\u03BB\u03BF\u03BC\u03B5\u03C4\u03C1\u03B7\u03C4\u03AE (Web Browser)
|
||||
account.syncToAccount= \u03A3\u03C5\u03B3\u03C7\u03C1\u03BF\u03BD\u03B9\u03C3\u03BC\u03CC\u03C2 \u039B\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03BF\u03CD <- \u03A6\u03C5\u03BB\u03BB\u03BF\u03BC\u03B5\u03C4\u03C1\u03B7\u03C4\u03AE (Web Browser)
|
||||
|
||||
|
||||
adminUserSettings.title= \u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u03B5\u03BB\u03AD\u03B3\u03C7\u03BF\u03C5 \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7
|
||||
adminUserSettings.header=\u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2 \u03B5\u03BB\u03AD\u03B3\u03C7\u03BF\u03C5 \u0394\u03B9\u03B1\u03C7\u03B5\u03B9\u03C1\u03B9\u03C3\u03C4\u03AE
|
||||
adminUserSettings.admin=\u0394\u03B9\u03B1\u03C7\u03B5\u03B9\u03C1\u03B9\u03C3\u03C4\u03AE\u03C2
|
||||
adminUserSettings.user=\u03A7\u03C1\u03AE\u03C3\u03C4\u03B7\u03C2
|
||||
adminUserSettings.addUser=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03BD\u03AD\u03BF\u03C5 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7
|
||||
adminUserSettings.roles=\u03A1\u03CC\u03BB\u03BF\u03B9
|
||||
adminUserSettings.role=\u03A1\u03CC\u03BB\u03BF\u03C2
|
||||
adminUserSettings.actions=\u0395\u03BD\u03AD\u03C1\u03B3\u03B5\u03B9\u03B5\u03C2
|
||||
adminUserSettings.apiUser=\u03A0\u03B5\u03C1\u03B9\u03BF\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03BF\u03C2 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7\u03C2 \u03B3\u03B9\u03B1 \u03B4\u03B9\u03B5\u03C0\u03B1\u03C6\u03AE \u03C0\u03C1\u03BF\u03B3\u03C1\u03B1\u03BC\u03BC\u03B1\u03C4\u03B9\u03C3\u03BC\u03BF\u03CD \u03B5\u03C6\u03B1\u03C1\u03BC\u03BF\u03B3\u03CE\u03BD (API User)
|
||||
adminUserSettings.webOnlyUser=\u03A7\u03C1\u03AE\u03C3\u03C4\u03B7\u03C2 \u03BC\u03CC\u03BD\u03BF \u0399\u03C3\u03C4\u03BF\u03CD
|
||||
adminUserSettings.forceChange = \u0391\u03BD\u03B1\u03B3\u03BA\u03AC\u03C3\u03C4\u03B5 \u03C4\u03BF\u03BD \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7 \u03BD\u03B1 \u03B1\u03BB\u03BB\u03AC\u03BE\u03B5\u03B9 \u03C4\u03BF \u03CC\u03BD\u03BF\u03BC\u03B1 \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7/\u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03BA\u03B1\u03C4\u03AC \u03C4\u03B7 \u03C3\u03CD\u03BD\u03B4\u03B5\u03C3\u03B7
|
||||
adminUserSettings.submit=\u0391\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7
|
||||
|
||||
#############
|
||||
# HOME-PAGE #
|
||||
#############
|
||||
home.desc= \u0397 \u03C4\u03BF\u03C0\u03B9\u03BA\u03AC \u03C6\u03B9\u03BB\u03BF\u03BE\u03B5\u03BD\u03BF\u03CD\u03BC\u03B5\u03BD\u03B7 one-stop-shop \u03C3\u03B1\u03C2 \u03B3\u03B9\u03B1 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03B1\u03BD\u03AC\u03B3\u03BA\u03B5\u03C2 \u03C3\u03B1\u03C2 \u03C3\u03B5 PDF.
|
||||
|
||||
home.viewPdf.title=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 PDF
|
||||
home.viewPdf.desc=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7, \u03C0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C3\u03C7\u03B5\u03B4\u03AF\u03BF\u03C5, \u03C0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03BA\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5 \u03AE \u03B5\u03B9\u03BA\u03CC\u03BD\u03C9\u03BD
|
||||
viewPdf.tags=view,read,annotate,text,image
|
||||
|
||||
home.multiTool.title=PDF \u03A0\u03BF\u03BB\u03C5\u03B5\u03C1\u03B3\u03B1\u03BB\u03B5\u03AF\u03BF
|
||||
home.multiTool.desc=\u03A3\u03C5\u03B3\u03C7\u03CE\u03BD\u03B5\u03C5\u03C3\u03B7, \u03A0\u03B5\u03C1\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE, \u0391\u03BD\u03B1\u03B4\u03B9\u03AC\u03C4\u03B1\u03BE\u03B7 \u03BA\u03B1\u03B9 \u039A\u03B1\u03C4\u03AC\u03C1\u03B3\u03B7\u03C3\u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
multiTool.tags=Multi Tool,Multi operation,UI,click drag,front end,client side,interactive,intractable,move
|
||||
|
||||
home.merge.title=\u03A3\u03C5\u03B3\u03C7\u03CE\u03BD\u03B5\u03C5\u03C3\u03B7
|
||||
home.merge.desc=\u03A3\u03C5\u03B3\u03C7\u03CE\u03BD\u03B5\u03C5\u03C3\u03B7 \u03C0\u03BF\u03BB\u03BB\u03CE\u03BD PDF \u03C3\u03B5 \u03AD\u03BD\u03B1 \u03BC\u03B5 \u03B5\u03CD\u03BA\u03BF\u03BB\u03BF \u03C4\u03C1\u03CC\u03C0\u03BF.
|
||||
merge.tags=merge,Page operations,Back end,server side
|
||||
|
||||
home.split.title=\u0394\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03BC\u03CC\u03C2
|
||||
home.split.desc=\u0394\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03BC\u03CC\u03C2 \u03C4\u03C9\u03BD PDF \u03C3\u03B5 \u03C0\u03BF\u03BB\u03BB\u03AC \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03B1.
|
||||
split.tags=Page operations,divide,Multi Page,cut,server side
|
||||
|
||||
home.rotate.title=\u03A0\u03B5\u03C1\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE
|
||||
home.rotate.desc=\u03A0\u03B5\u03C1\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE \u03C4\u03C9\u03BD PDF \u03C3\u03B1\u03C2 \u03BC\u03B5 \u03B5\u03CD\u03BA\u03BF\u03BB\u03BF \u03C4\u03C1\u03CC\u03C0\u03BF.
|
||||
rotate.tags=server side
|
||||
|
||||
|
||||
home.imageToPdf.title=\u0395\u03B9\u03BA\u03CC\u03BD\u03B1 \u03C3\u03B5 PDF
|
||||
home.imageToPdf.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2 (PNG, JPEG, GIF) \u03C3\u03B5 PDF.
|
||||
imageToPdf.tags=conversion,img,jpg,picture,photo
|
||||
|
||||
home.pdfToImage.title=PDF \u03C3\u03B5 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1
|
||||
home.pdfToImage.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03B5\u03BD\u03CC\u03C2 PDF \u03C3\u03B5 \u03BC\u03AF\u03B1 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1. (PNG, JPEG, GIF)
|
||||
pdfToImage.tags=conversion,img,jpg,picture,photo
|
||||
|
||||
home.pdfOrganiser.title=\u039F\u03C1\u03B3\u03AC\u03BD\u03C9\u03C3\u03B7
|
||||
home.pdfOrganiser.desc=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7/\u0391\u03BD\u03B1\u03B4\u03B9\u03AC\u03C4\u03B1\u03BE\u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD \u03BC\u03B5 \u03BF\u03C0\u03BF\u03B9\u03B1\u03B4\u03AE\u03C0\u03BF\u03C4\u03B5 \u03C3\u03B5\u03B9\u03C1\u03AC
|
||||
pdfOrganiser.tags=duplex,even,odd,sort,move
|
||||
|
||||
|
||||
home.addImage.title=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u0395\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2
|
||||
home.addImage.desc=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03BC\u03B9\u03B1\u03C2 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2 \u03C3\u03B5 \u03BC\u03B9\u03B1 \u03BA\u03B1\u03B8\u03BF\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03B7 \u03B8\u03AD\u03C3\u03B7 \u03C3\u03C4\u03BF PDF
|
||||
addImage.tags=img,jpg,picture,photo
|
||||
|
||||
home.watermark.title=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A5\u03B4\u03B1\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
|
||||
home.watermark.desc=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B5\u03BD\u03CC\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF\u03C5 \u03C5\u03B4\u03B1\u03C4\u03BF\u03B3\u03C1\u03AC\u03C6\u03B7\u03BC\u03B1\u03C4\u03BF\u03C2 \u03C3\u03C4\u03BF \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03CC PDF.
|
||||
watermark.tags=Text,repeating,label,own,copyright,trademark,img,jpg,picture,photo
|
||||
|
||||
home.permissions.title=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u0394\u03B9\u03BA\u03B1\u03B9\u03C9\u03BC\u03AC\u03C4\u03C9\u03BD
|
||||
home.permissions.desc=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u03C4\u03C9\u03BD \u0394\u03B9\u03BA\u03B1\u03B9\u03C9\u03BC\u03AC\u03C4\u03C9\u03BD \u03C3\u03C4\u03BF \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF PDF
|
||||
permissions.tags=read,write,edit,print
|
||||
|
||||
|
||||
home.removePages.title=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7
|
||||
home.removePages.desc=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u03BC\u03AE \u03B5\u03C0\u03B9\u03B8\u03C5\u03BC\u03B7\u03C4\u03CE\u03BD \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD \u03B1\u03C0\u03BF \u03C4\u03BF \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF PDF.
|
||||
removePages.tags=Remove pages,delete pages
|
||||
|
||||
home.addPassword.title=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD
|
||||
home.addPassword.desc=\u039A\u03C1\u03C5\u03C0\u03C4\u03BF\u03B3\u03C1\u03AC\u03C6\u03B7\u03C3\u03B7 - \u03BA\u03BB\u03B5\u03AF\u03B4\u03C9\u03BC\u03B1 \u03C4\u03BF\u03C5 PDF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 \u03BC\u03B5 \u03AD\u03BD\u03B1\u03BD \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC.
|
||||
addPassword.tags=secure,security
|
||||
|
||||
home.removePassword.title=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD
|
||||
home.removePassword.desc=\u039A\u03B1\u03C4\u03AC\u03C1\u03B3\u03AE\u03C3\u03B7 \u03C4\u03B7\u03C2 \u03C0\u03C1\u03BF\u03C3\u03C4\u03B1\u03C3\u03AF\u03B1\u03C2 \u03BC\u03B5 \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03B1\u03C0\u03CC \u03C4\u03BF \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF PDF.
|
||||
removePassword.tags=secure,Decrypt,security,unpassword,delete password
|
||||
|
||||
home.compressPdfs.title=\u03A3\u03C5\u03BC\u03C0\u03AF\u03B5\u03C3\u03B7
|
||||
home.compressPdfs.desc=\u03A3\u03C5\u03BC\u03C0\u03AF\u03B5\u03C3\u03B7 \u03C4\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD PDF \u03B3\u03B9\u03B1 \u03C4\u03B7\u03BD \u03BC\u03B5\u03AF\u03C9\u03C3\u03B7 \u03C4\u03BF\u03C5 \u03BC\u03B5\u03B3\u03AD\u03B8\u03BF\u03C5\u03C2 \u03C4\u03BF\u03C5\u03C2.
|
||||
compressPdfs.tags=squish,small,tiny
|
||||
|
||||
|
||||
home.changeMetadata.title=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u039C\u03B5\u03C4\u03B1\u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD
|
||||
home.changeMetadata.desc=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE/\u039A\u03B1\u03C4\u03AC\u03C1\u03B3\u03B7\u03C3\u03B7/\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03BC\u03B5\u03C4\u03B1\u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD \u03B1\u03C0\u03CC \u03AD\u03BD\u03B1 \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF PDF.
|
||||
changeMetadata.tags==Title,author,date,creation,time,publisher,producer,stats
|
||||
|
||||
home.fileToPDF.title=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03B5\u03BD\u03CC\u03C2 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 \u03C3\u03B5 PDF
|
||||
home.fileToPDF.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C3\u03C7\u03B5\u03B4\u03CC\u03BD \u03BF\u03C0\u03BF\u03B9\u03BF\u03C5\u03B4\u03AE\u03C0\u03BF\u03C4\u03B5 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 \u03C3\u03B5 PDF (DOCX, PNG, XLS, PPT, TXT and more)
|
||||
fileToPDF.tags=transformation,format,document,picture,slide,text,conversion,office,docs,word,excel,powerpoint
|
||||
|
||||
home.ocr.title=\u03BF\u03C0\u03C4\u03B9\u03BA\u03AE \u03B1\u03BD\u03B1\u03B3\u03BD\u03CE\u03C1\u03B9\u03C3\u03B7 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03C9\u03BD (OCR) / \u03A3\u03B1\u03C1\u03CE\u03C3\u03B5\u03B9\u03C2 Cleanup
|
||||
home.ocr.desc=\u03A4\u03BF Cleanup \u03C3\u03B1\u03C1\u03CE\u03BD\u03B5\u03B9 \u03BA\u03B1\u03B9 \u03B1\u03BD\u03B9\u03C7\u03BD\u03B5\u03CD\u03B5\u03B9 \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03B1\u03C0\u03CC \u03B5\u03B9\u03BA\u03CC\u03BD\u03B5\u03C2 \u03BC\u03AD\u03C3\u03B1 \u03C3\u03B5 \u03AD\u03BD\u03B1 PDF \u03BA\u03B1\u03B9 \u03C4\u03BF \u03C0\u03C1\u03BF\u03C3\u03B8\u03AD\u03C4\u03B5\u03B9 \u03BE\u03B1\u03BD\u03AC \u03C9\u03C2 \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF
|
||||
ocr.tags=recognition,text,image,scan,read,identify,detection,editable
|
||||
|
||||
|
||||
home.extractImages.title=\u0395\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE \u03B5\u03B9\u03BA\u03CC\u03BD\u03C9\u03BD
|
||||
home.extractImages.desc=\u0395\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE \u03CC\u03BB\u03C9\u03BD \u03C4\u03C9\u03BD \u03B5\u03B9\u03BA\u03CC\u03BD\u03C9\u03BD \u03B1\u03C0\u03BF \u03AD\u03BD\u03B1 PDF \u03BA\u03B1\u03B9 \u03B1\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7 \u03B1\u03C5\u03C4\u03CE\u03BD \u03C3\u03B5 zip
|
||||
extractImages.tags=picture,photo,save,archive,zip,capture,grab
|
||||
|
||||
home.pdfToPDFA.title=PDF \u03C3\u03B5 PDF/A
|
||||
home.pdfToPDFA.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE PDF \u03C3\u03B5 PDF/A \u03B3\u03B9\u03B1 \u03BC\u03B1\u03BA\u03C1\u03BF\u03C7\u03C1\u03CC\u03BD\u03B9\u03B1 \u03B1\u03C0\u03BF\u03B8\u03AE\u03BA\u03B5\u03C5\u03C3\u03B7
|
||||
pdfToPDFA.tags=archive,long-term,standard,conversion,storage,preservation
|
||||
|
||||
home.PDFToWord.title=PDF \u03C3\u03B5 Word
|
||||
home.PDFToWord.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03BF\u03C5 PDF \u03C3\u03B5 Word \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF (DOC, DOCX and ODT)
|
||||
PDFToWord.tags=doc,docx,odt,word,transformation,format,conversion,office,microsoft,docfile
|
||||
|
||||
home.PDFToPresentation.title=PDF \u03C3\u03B5 Powerpoint
|
||||
home.PDFToPresentation.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03BF\u03C5 PDF \u03C3\u03B5 Powerpoint \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF (PPT, PPTX and ODP)
|
||||
PDFToPresentation.tags=slides,show,office,microsoft
|
||||
|
||||
home.PDFToText.title=PDF \u03C3\u03B5 RTF (\u039A\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF)
|
||||
home.PDFToText.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03BF\u03C5 PDF \u03C3\u03B5 \u039A\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03AE \u03C3\u03B5 \u03BC\u03BF\u03C1\u03C6\u03AE RTF
|
||||
PDFToText.tags=richformat,richtextformat,rich text format
|
||||
|
||||
home.PDFToHTML.title=PDF \u03C3\u03B5 HTML
|
||||
home.PDFToHTML.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03BF\u03C5 PDF \u03C3\u03B5 \u03BC\u03BF\u03C1\u03C6\u03AE HTML
|
||||
PDFToHTML.tags=web content,browser friendly
|
||||
|
||||
|
||||
home.PDFToXML.title=PDF \u03C3\u03B5 XML
|
||||
home.PDFToXML.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03BF\u03C5 PDF \u03C3\u03B5 \u03BC\u03BF\u03C1\u03C6\u03AE XML
|
||||
PDFToXML.tags=data-extraction,structured-content,interop,transformation,convert
|
||||
|
||||
home.ScannerImageSplit.title=\u0391\u03BD\u03AF\u03C7\u03BD\u03B5\u03C5\u03C3\u03B7/\u0394\u03B9\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u03C3\u03B1\u03C1\u03C9\u03BC\u03AD\u03BD\u03C9\u03BD \u03C6\u03C9\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03B9\u03CE\u03BD
|
||||
home.ScannerImageSplit.desc=\u0394\u03B9\u03B1\u03C7\u03C9\u03C1\u03AF\u03C3\u03BC\u03CC\u03C2 \u03C0\u03BF\u03BB\u03BB\u03CE\u03BD \u03C6\u03C9\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03CE\u03BD \u03BC\u03AD\u03C3\u03B1 \u03B1\u03C0\u03CC \u03BC\u03B9\u03B1 \u03C6\u03C9\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03B1/PDF
|
||||
ScannerImageSplit.tags=separate,auto-detect,scans,multi-photo,organize
|
||||
|
||||
home.sign.title=\u03A5\u03C0\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE
|
||||
home.sign.desc=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C5\u03C0\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03C2 \u03C3\u03C4\u03BF PDF \u03BC\u03B5 \u03C3\u03C7\u03AD\u03B4\u03B9\u03BF, \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03AE \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1.
|
||||
sign.tags=authorize,initials,drawn-signature,text-sign,image-signature
|
||||
|
||||
home.flatten.title=Flatten
|
||||
home.flatten.desc=\u039A\u03B1\u03C4\u03AC\u03C1\u03B3\u03B7\u03C3\u03B7 \u03CC\u03BB\u03C9\u03BD \u03C4\u03C9\u03BD \u03B4\u03B9\u03B1\u03B4\u03C1\u03B1\u03C3\u03C4\u03B9\u03BA\u03CE\u03BD \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03C9\u03BD \u03BA\u03B1\u03B9 \u03C6\u03BF\u03C1\u03BC\u03CE\u03BD \u03B1\u03C0\u03CC \u03AD\u03BD\u03B1 PDF
|
||||
flatten.tags=static,deactivate,non-interactive,streamline
|
||||
|
||||
home.repair.title=\u0395\u03C0\u03B9\u03B4\u03B9\u03CC\u03C1\u03B8\u03C9\u03C3\u03B7
|
||||
home.repair.desc=\u03A0\u03C1\u03BF\u03C3\u03C0\u03AC\u03B8\u03B5\u03B9\u03B1 \u03B5\u03C0\u03B9\u03B4\u03B9\u03CC\u03C1\u03B8\u03C9\u03C3\u03B7\u03C2 \u03B5\u03BD\u03CC\u03C2 \u03BA\u03B1\u03C4\u03B5\u03C3\u03C4\u03C1\u03B1\u03BC\u03BC\u03AD\u03BD\u03BF\u03C5 PDF
|
||||
repair.tags=fix,restore,correction,recover
|
||||
|
||||
home.removeBlanks.title=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u03BA\u03B5\u03BD\u03CE\u03BD \u03A3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
home.removeBlanks.desc=\u0391\u03BD\u03AF\u03C7\u03B5\u03C5\u03C3\u03B7 \u03BA\u03B1\u03B9 \u03B1\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u03BA\u03B5\u03BD\u03CE\u03BD \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD \u03B1\u03C0\u03CC \u03AD\u03BD\u03B1 \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF
|
||||
removeBlanks.tags=cleanup,streamline,non-content,organize
|
||||
|
||||
home.compare.title=\u03A3\u03CD\u03B3\u03BA\u03C1\u03B9\u03C3\u03B7
|
||||
home.compare.desc=\u03A3\u03CD\u03B3\u03BA\u03C1\u03B9\u03C3\u03B7 \u03BA\u03B1\u03B9 \u03B5\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 \u03C4\u03C9\u03BD \u03B4\u03B9\u03B1\u03C6\u03BF\u03C1\u03CE\u03BD \u03BC\u03B5\u03C4\u03B1\u03BE\u03CD \u03B4\u03CD\u03BF PDF \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD
|
||||
compare.tags=differentiate,contrast,changes,analysis
|
||||
|
||||
home.certSign.title=\u03A5\u03C0\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE \u03BC\u03B5 \u03A0\u03B9\u03C3\u03C4\u03BF\u03C0\u03BF\u03B9\u03B7\u03C4\u03B9\u03BA\u03CC
|
||||
home.certSign.desc=\u03A5\u03C0\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE \u03B5\u03BD\u03CC\u03C2 PDF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 \u03BC\u03B5 \u03AD\u03BD\u03B1 \u03A0\u03B9\u03C3\u03C4\u03BF\u03C0\u03BF\u03B9\u03B7\u03C4\u03B9\u03BA\u03CC/\u039A\u03BB\u03B5\u03B9\u03B4\u03AF (PEM/P12)
|
||||
certSign.tags=authenticate,PEM,P12,official,encrypt
|
||||
|
||||
home.pageLayout.title=\u0394\u03B9\u03AC\u03C4\u03B1\u03BE\u03B7 \u03C0\u03BF\u03BB\u03BB\u03CE\u03BD \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
home.pageLayout.desc=\u03A3\u03C5\u03B3\u03C7\u03CE\u03BD\u03B5\u03C5\u03C3\u03B7 \u03C0\u03BF\u03BB\u03BB\u03B1\u03C0\u03BB\u03CE\u03BD \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD \u03B5\u03BD\u03CC\u03C2 \u03B5\u03B3\u03B3\u03C1\u03AC\u03C6\u03BF\u03C5 PDF \u03C3\u03B5 \u03BC\u03AF\u03B1 \u03BC\u03CC\u03BD\u03BF \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
pageLayout.tags=merge,composite,single-view,organize
|
||||
|
||||
home.scalePages.title=\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE \u03C4\u03BF\u03C5 \u03BC\u03B5\u03B3\u03AD\u03B8\u03BF\u03C5\u03C2/\u03BA\u03BB\u03AF\u03BC\u03B1\u03BA\u03B1\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2
|
||||
home.scalePages.desc=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u03C4\u03BF\u03C5 \u03BC\u03B5\u03B3\u03AD\u03B8\u03BF\u03C5\u03C2/\u03BA\u03BB\u03AF\u03BC\u03B1\u03BA\u03B1\u03C2 \u03BC\u03AF\u03B1\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2 \u03BA\u03B1\u03B9/\u03B7 \u03C4\u03BF\u03C5 \u03C0\u03B5\u03C1\u03B9\u03B5\u03C7\u03BF\u03BC\u03AD\u03BD\u03BF\u03C5 \u03C4\u03B7\u03C2.
|
||||
scalePages.tags=resize,modify,dimension,adapt
|
||||
|
||||
home.pipeline.title=Pipeline (\u0393\u03B9\u03B1 \u03C0\u03C1\u03BF\u03C7\u03C9\u03C1\u03B7\u03BC\u03AD\u03BD\u03BF\u03C5\u03C2)
|
||||
home.pipeline.desc= \u0395\u03BA\u03C4\u03AD\u03BB\u03B5\u03C3\u03B7 \u03C0\u03BF\u03BB\u03BB\u03B1\u03C0\u03BB\u03CE\u03BD \u03B5\u03BD\u03B5\u03C1\u03B3\u03B5\u03B9\u03CE\u03BD \u03C3\u03B5 \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 PDF \u03BF\u03C1\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03C2 pipeline scripts
|
||||
pipeline.tags=automate,sequence,scripted,batch-process
|
||||
|
||||
home.add-page-numbers.title=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CE\u03BD \u03C3\u03B5 \u03A3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2
|
||||
home.add-page-numbers.desc=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CE\u03BD \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD \u03C3\u03B5 \u03AD\u03BD\u03B1 \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF \u03C3\u03B5 \u03BC\u03B9\u03B1 \u03BA\u03B1\u03B8\u03BF\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03B7 \u03B8\u03AD\u03C3\u03B7
|
||||
add-page-numbers.tags=paginate,label,organize,index
|
||||
|
||||
home.auto-rename.title=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u03BC\u03B5\u03C4\u03BF\u03BD\u03BF\u03BC\u03B1\u03C3\u03AF\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 PDF
|
||||
home.auto-rename.desc=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u03BC\u03B5\u03C4\u03BF\u03BD\u03BF\u03BC\u03B1\u03C3\u03AF\u03B1 \u03B5\u03BD\u03CC\u03C2 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 PDF \u03BC\u03B5 \u03B2\u03AC\u03C3\u03B7 \u03C4\u03B7\u03BD \u03BA\u03B5\u03C6\u03B1\u03BB\u03AF\u03B4\u03B1 \u03C0\u03BF\u03C5 \u03AD\u03C7\u03B5\u03B9 \u03B5\u03BD\u03C4\u03BF\u03C0\u03B9\u03C3\u03C4\u03B5\u03AF
|
||||
auto-rename.tags=auto-detect,header-based,organize,relabel
|
||||
|
||||
home.adjust-contrast.title=\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE \u03C7\u03C1\u03C9\u03BC\u03AC\u03C4\u03C9\u03BD/\u0391\u03BD\u03C4\u03AF\u03B8\u03B5\u03C3\u03B7
|
||||
home.adjust-contrast.desc=\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE \u03C4\u03B7\u03C2 \u03B1\u03BD\u03C4\u03AF\u03B8\u03B5\u03C3\u03B7\u03C2, \u03C4\u03BF\u03C5 \u03BA\u03BF\u03C1\u03B5\u03C3\u03BC\u03BF\u03CD \u03BA\u03B1\u03B9 \u03C4\u03B7\u03C2 \u03C6\u03C9\u03C4\u03B5\u03B9\u03BD\u03CC\u03C4\u03B7\u03C4\u03B1\u03C2 \u03B5\u03BD\u03CC\u03C2 PDF
|
||||
adjust-contrast.tags=color-correction,tune,modify,enhance
|
||||
|
||||
home.crop.title=\u03A0\u03B5\u03C1\u03B9\u03BA\u03BF\u03C0\u03AE PDF
|
||||
home.crop.desc=\u03A0\u03B5\u03C1\u03B9\u03BA\u03BF\u03C0\u03AE \u03B5\u03BD\u03CC\u03C2 PDF \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03BC\u03B5\u03B9\u03C9\u03B8\u03B5\u03AF \u03C4\u03BF \u03BC\u03AD\u03B3\u03B5\u03B8\u03CC\u03C2 \u03C4\u03BF\u03C5 (\u03B4\u03B9\u03B1\u03C4\u03B7\u03C1\u03B5\u03AF \u03C4\u03BF \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF!)
|
||||
crop.tags=trim,shrink,edit,shape
|
||||
|
||||
home.autoSplitPDF.title=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03BF\u03C2 \u03B4\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03BC\u03CC\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
home.autoSplitPDF.desc=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03BF\u03C2 \u03B4\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03BC\u03CC\u03C2 \u03C3\u03B1\u03C1\u03C9\u03BC\u03AD\u03BD\u03BF\u03C5 PDF \u03BC\u03B5 \u03C6\u03C5\u03C3\u03B9\u03BA\u03CC \u03C3\u03B1\u03C1\u03C9\u03BC\u03AD\u03BD\u03BF \u03B4\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03C4\u03AE \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD QR Code
|
||||
autoSplitPDF.tags=QR-based,separate,scan-segment,organize
|
||||
|
||||
home.sanitizePdf.title=\u0391\u03C0\u03BF\u03BB\u03CD\u03BC\u03B1\u03BD\u03C3\u03B7
|
||||
home.sanitizePdf.desc=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u03C3\u03B5\u03BD\u03B1\u03C1\u03AF\u03C9\u03BD \u03BA\u03B1\u03B9 \u03AC\u03BB\u03BB\u03C9\u03BD \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03C9\u03BD \u03B1\u03C0\u03CC \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 PDF
|
||||
sanitizePdf.tags=clean,secure,safe,remove-threats
|
||||
|
||||
home.URLToPDF.title=URL/\u0399\u03C3\u03C4\u03CC\u03C4\u03BF\u03C0\u03BF\u03C2 \u03C3\u03B5 PDF
|
||||
home.URLToPDF.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03BF\u03C0\u03BF\u03B9\u03B1\u03B4\u03AE\u03C0\u03BF\u03C4\u03B5 \u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7\u03C2 URL http(s) \u03C3\u03B5 PDF
|
||||
URLToPDF.tags=web-capture,save-page,web-to-doc,archive
|
||||
|
||||
home.HTMLToPDF.title=HTML \u03C3\u03B5 PDF
|
||||
home.HTMLToPDF.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03BF\u03C0\u03BF\u03B9\u03BF\u03C5\u03B4\u03AE\u03C0\u03BF\u03C4\u03B5 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 HTML \u03AE zip \u03C3\u03B5 PDF
|
||||
HTMLToPDF.tags=markup,web-content,transformation,convert
|
||||
|
||||
|
||||
home.MarkdownToPDF.title=Markdown \u03C3\u03B5 PDF
|
||||
home.MarkdownToPDF.desc=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03BF\u03C0\u03BF\u03B9\u03BF\u03C5\u03B4\u03AE\u03C0\u03BF\u03C4\u03B5 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 Markdown \u03C3\u03B5 PDF
|
||||
MarkdownToPDF.tags=markup,web-content,transformation,convert
|
||||
|
||||
|
||||
home.getPdfInfo.title=\u039B\u03AE\u03C8\u03B7 \u03CC\u03BB\u03C9\u03BD \u03C4\u03C9\u03BD \u03C0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03B9\u03CE\u03BD \u03B1\u03C0\u03CC \u03C4\u03BF PDF
|
||||
home.getPdfInfo.desc=\u039B\u03AE\u03C8\u03B7 \u03CC\u03BB\u03C9\u03BD \u03C4\u03C9\u03BD \u03C0\u03B9\u03B8\u03B1\u03BD\u03CE\u03BD \u03C0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03B9\u03CE\u03BD \u03B1\u03C0\u03CC \u03C4\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 PDF
|
||||
getPdfInfo.tags=infomation,data,stats,statistics
|
||||
|
||||
|
||||
home.extractPage.title=\u0395\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
home.extractPage.desc=\u0395\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE \u03C4\u03C9\u03BD \u03B5\u03C0\u03B9\u03BB\u03B5\u03B3\u03BC\u03AD\u03BD\u03C9\u03BD \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD \u03B1\u03C0\u03CC \u03AD\u03BD\u03B1 PDF
|
||||
extractPage.tags=extract
|
||||
|
||||
|
||||
home.PdfToSinglePage.title=PDF \u03C3\u03B5 \u03BC\u03AF\u03B1 \u03BC\u03B5\u03B3\u03AC\u03BB\u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
home.PdfToSinglePage.desc=\u03A3\u03C5\u03B3\u03C7\u03CE\u03BD\u03B5\u03C5\u03C3\u03B7 \u03CC\u03BB\u03C9\u03BD \u03C4\u03C9\u03BD \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD PDF \u03C3\u03B5 \u03BC\u03B9\u03B1 \u03BC\u03B5\u03B3\u03AC\u03BB\u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
PdfToSinglePage.tags=single page
|
||||
|
||||
|
||||
home.showJS.title=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 Javascript
|
||||
home.showJS.desc=\u0391\u03BD\u03B6\u03AE\u03C4\u03B7\u03C3\u03B7 \u03BA\u03B1\u03B9 \u03B5\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 \u03BA\u03CE\u03B4\u03B9\u03BA\u03B1 Javascript \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B5\u03BD\u03C3\u03C9\u03BC\u03B1\u03C4\u03C9\u03BC\u03AD\u03BD\u03BF \u03BC\u03AD\u03C3\u03B1 \u03C3\u03B5 \u03AD\u03BD\u03B1 PDF
|
||||
showJS.tags=JS
|
||||
|
||||
home.autoRedact.title=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03BF \u039C\u03B1\u03CD\u03C1\u03B9\u03C3\u03BC\u03B1 \u039A\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5
|
||||
home.autoRedact.desc=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u03B5\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 (\u039C\u03B1\u03CD\u03C1\u03B9\u03C3\u03BC\u03B1) \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF\u03C5 \u03C3\u03B5 PDF \u03BC\u03B5 \u03B2\u03AC\u03C3\u03B7 \u03C4\u03BF \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03B5\u03B9\u03C3\u03B1\u03B3\u03C9\u03B3\u03AE\u03C2
|
||||
showJS.tags=Redact,Hide,black out,black,marker,hidden
|
||||
|
||||
###########################
|
||||
# #
|
||||
# WEB PAGES #
|
||||
# #
|
||||
###########################
|
||||
#login
|
||||
login.title=\u0395\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2
|
||||
login.signin=\u0395\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2
|
||||
login.rememberme=\u039D\u03B1 \u039C\u03B5 \u0398\u03C5\u03BC\u03AC\u03C3\u03B1\u03B9
|
||||
login.invalid=\u039B\u03AC\u03B8\u03BF\u03C2 \u03CC\u03BD\u03BF\u03BC\u03B1 \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7 \u03AE \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2.
|
||||
login.locked=\u039F \u03BB\u03BF\u03B3\u03B1\u03C1\u03B9\u03B1\u03C3\u03BC\u03CC\u03C2 \u03C3\u03B1\u03C2 \u03AD\u03C7\u03B5\u03B9 \u03BA\u03BB\u03B5\u03B9\u03B4\u03C9\u03B8\u03B5\u03AF.
|
||||
login.signinTitle=\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03CE, \u03C3\u03C5\u03BD\u03B4\u03B5\u03B8\u03B5\u03AF\u03C4\u03B5
|
||||
|
||||
|
||||
#auto-redact
|
||||
autoRedact.title=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03BF \u039C\u03B1\u03CD\u03C1\u03B9\u03C3\u03BC\u03B1 \u039A\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5
|
||||
autoRedact.header=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03BF \u039C\u03B1\u03CD\u03C1\u03B9\u03C3\u03BC\u03B1 \u039A\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5
|
||||
autoRedact.colorLabel=\u03A7\u03C1\u03CE\u03BC\u03B1
|
||||
autoRedact.textsToRedactLabel=\u039A\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03B3\u03B9\u03B1 \u03BC\u03B1\u03CD\u03C1\u03B9\u03C3\u03BC\u03B1 (\u03B4\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03BF \u03C3\u03B5 \u03B3\u03C1\u03B1\u03BC\u03BC\u03AD\u03C2)
|
||||
autoRedact.textsToRedactPlaceholder=\u03C0.\u03C7. \n\u0395\u03BC\u03C0\u03B9\u03C3\u03C4\u03B5\u03C5\u03C4\u03B9\u03BA\u03CC \n\u0391\u03BA\u03C1\u03CE\u03C2 \u03B1\u03C0\u03CC\u03C1\u03C1\u03B7\u03C4\u03BF
|
||||
autoRedact.useRegexLabel=\u03A7\u03C1\u03AE\u03C3\u03B7 Regex
|
||||
autoRedact.wholeWordSearchLabel=\u0391\u03BD\u03B1\u03B6\u03AE\u03C4\u03B7\u03C3\u03B7 \u03BF\u03BB\u03CC\u03BA\u03BB\u03B7\u03C1\u03B7\u03C2 \u03C4\u03B7\u03C2 \u03BB\u03AD\u03BE\u03B7\u03C2
|
||||
autoRedact.customPaddingLabel=Custom Extra Padding
|
||||
autoRedact.convertPDFToImageLabel=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE PDF \u03C3\u03B5 PDF-\u0395\u03B9\u03BA\u03CC\u03BD\u03B1 (\u03A7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B1\u03B9 \u03B3\u03B9\u03B1 \u03C4\u03B7\u03BD \u03B1\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u03BA\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5 \u03C0\u03AF\u03C3\u03C9 \u03B1\u03C0\u03CC \u03C4\u03BF \u03C0\u03BB\u03B1\u03AF\u03C3\u03B9\u03BF)
|
||||
autoRedact.submitButton=\u03A5\u03C0\u03BF\u03B2\u03BF\u03BB\u03AE
|
||||
|
||||
|
||||
#showJS
|
||||
showJS.title=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 Javascript
|
||||
showJS.header=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 Javascript
|
||||
showJS.downloadJS=\u039B\u03AE\u03C8\u03B7 Javascript
|
||||
showJS.submit=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7
|
||||
|
||||
|
||||
#pdfToSinglePage
|
||||
pdfToSinglePage.title=PDF \u03C3\u03B5 \u039C\u03BF\u03BD\u03AE \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
pdfToSinglePage.header=PDF \u03C3\u03B5 \u039C\u03BF\u03BD\u03AE \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
pdfToSinglePage.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C3\u03B5 \u039C\u03BF\u03BD\u03AE \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
|
||||
|
||||
#pageExtracter
|
||||
pageExtracter.title=\u0395\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE \u03A3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
pageExtracter.header=E\u0395\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE \u03A3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
pageExtracter.submit=\u0395\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE
|
||||
|
||||
|
||||
#getPdfInfo
|
||||
getPdfInfo.title=\u0391\u03BD\u03AC\u03BA\u03C4\u03B7\u03C3\u03B7 \u03C0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03B9\u03CE\u03BD \u03B1\u03C0\u03CC \u03C4\u03BF PDF
|
||||
getPdfInfo.header=\u0391\u03BD\u03AC\u03BA\u03C4\u03B7\u03C3\u03B7 \u03C0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03B9\u03CE\u03BD \u03B1\u03C0\u03CC \u03C4\u03BF PDF
|
||||
getPdfInfo.submit=\u0391\u03BD\u03AC\u03BA\u03C4\u03B7\u03C3\u03B7 \u03C0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03B9\u03CE\u03BD
|
||||
getPdfInfo.downloadJson=\u039B\u03AE\u03C8\u03B7 JSON
|
||||
|
||||
|
||||
#markdown-to-pdf
|
||||
MarkdownToPDF.title=Markdown \u03C3\u03B5 PDF
|
||||
MarkdownToPDF.header=Markdown \u03C3\u03B5 PDF
|
||||
MarkdownToPDF.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
MarkdownToPDF.help=\u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03C3\u03B5 \u03B5\u03BE\u03AD\u03BB\u03B9\u03BE\u03B7
|
||||
MarkdownToPDF.credit=\u03A7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF WeasyPrint
|
||||
|
||||
|
||||
|
||||
#url-to-pdf
|
||||
URLToPDF.title=URL \u03C3\u03B5 PDF
|
||||
URLToPDF.header=URL \u03C3\u03B5 PDF
|
||||
URLToPDF.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
URLToPDF.credit=\u03A7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF WeasyPrint
|
||||
|
||||
|
||||
#html-to-pdf
|
||||
HTMLToPDF.title=HTML \u03C3\u03B5 PDF
|
||||
HTMLToPDF.header=HTML \u03C3\u03B5 PDF
|
||||
HTMLToPDF.help=\u0394\u03AD\u03C7\u03B5\u03C4\u03B1\u03B9 \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 \u03C4\u03CD\u03C0\u03BF\u03C5 HTML \u03BA\u03B1\u03B9 \u03C4\u03CD\u03C0\u03BF\u03C5 ZIP \u03C0\u03BF\u03C5 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03BF\u03C5\u03BD html/css/\u03B5\u03B9\u03BA\u03CC\u03BD\u03B5\u03C2 \u03BA.\u03BB\u03C0. \u03C0\u03BF\u03C5 \u03B1\u03C0\u03B1\u03B9\u03C4\u03BF\u03CD\u03BD\u03C4\u03B1\u03B9
|
||||
HTMLToPDF.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
HTMLToPDF.credit=\u03A7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF WeasyPrint
|
||||
|
||||
|
||||
#sanitizePDF
|
||||
sanitizePDF.title=\u0391\u03C0\u03BF\u03BB\u03CD\u03BC\u03B1\u03BD\u03C3\u03B7 PDF
|
||||
sanitizePDF.header=\u0391\u03C0\u03BF\u03BB\u03CD\u03BC\u03B1\u03BD\u03C3\u03B7 \u03B5\u03BD\u03CC\u03C2 PDF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5
|
||||
sanitizePDF.selectText.1=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 JavaScript
|
||||
sanitizePDF.selectText.2=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u03B5\u03BC\u03C3\u03C9\u03BC\u03B1\u03C4\u03C9\u03BC\u03AD\u03BD\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD
|
||||
sanitizePDF.selectText.3=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u03BC\u03B5\u03C4\u03B1\u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD
|
||||
sanitizePDF.selectText.4=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u03C3\u03C5\u03BD\u03B4\u03AD\u03C3\u03BC\u03C9\u03BD (links)
|
||||
sanitizePDF.selectText.5=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u03B3\u03C1\u03B1\u03BC\u03BC\u03B1\u03C4\u03BF\u03C3\u03B5\u03B9\u03C1\u03CE\u03BD
|
||||
sanitizePDF.submit=\u0391\u03C0\u03BF\u03BB\u03CD\u03BC\u03B1\u03BD\u03C3\u03B7 PDF
|
||||
|
||||
|
||||
#addPageNumbers
|
||||
addPageNumbers.title=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CE\u03BD \u03C3\u03B5 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2
|
||||
addPageNumbers.header=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CE\u03BD \u03C3\u03B5 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2
|
||||
addPageNumbers.selectText.1=\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE PDF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5:
|
||||
addPageNumbers.selectText.2=\u039C\u03AD\u03B3\u03B5\u03B8\u03BF\u03C2 \u03C0\u03B5\u03C1\u03B9\u03B8\u03C9\u03C1\u03AF\u03BF\u03C5
|
||||
addPageNumbers.selectText.3=\u0398\u03AD\u03C3\u03B7
|
||||
addPageNumbers.selectText.4=\u0391\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03C0\u03BF\u03C5 \u03BE\u03B5\u03BA\u03B9\u03BD\u03AC \u03B7 \u03B1\u03C1\u03AF\u03B8\u03BC\u03B7\u03C3\u03B7
|
||||
addPageNumbers.selectText.5=\u03A3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2 \u03C3\u03B5 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC
|
||||
addPageNumbers.selectText.6=\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF \u039A\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF
|
||||
addPageNumbers.customTextDesc=\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03BF \u039A\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF
|
||||
addPageNumbers.numberPagesDesc=\u03A0\u03BF\u03B9\u03AD\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2 \u03BD\u03B1 \u03B1\u03C1\u03B9\u03B8\u03BC\u03B7\u03B8\u03BF\u03CD\u03BD, \u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE 'all' (\u03CC\u03BB\u03B5\u03C2), \u03B5\u03C0\u03AF\u03C3\u03B7\u03C2 \u03B4\u03AD\u03C7\u03B5\u03C4\u03B1\u03B9 1-5 \u03AE 2,5,9 \u03BA.\u03BB.\u03C0
|
||||
addPageNumbers.customNumberDesc=\u03A0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03C3\u03B5 {n}, \u03B4\u03AD\u03C7\u03B5\u03C4\u03B1\u03B9 \u03B5\u03C0\u03AF\u03C3\u03B7\u03C2 "\u03A3\u03B5\u03BB\u03AF\u03B4\u03B1 {n} \u03B1\u03C0\u03CC {total}", "Text-{n}", "{filename}-{n}
|
||||
addPageNumbers.submit=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CE\u03BD \u03C3\u03B5 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2
|
||||
|
||||
|
||||
#auto-rename
|
||||
auto-rename.title=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u03BC\u03B5\u03C4\u03BF\u03BD\u03BF\u03BC\u03B1\u03C3\u03AF\u03B1
|
||||
auto-rename.header=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u03BC\u03B5\u03C4\u03BF\u03BD\u03BF\u03BC\u03B1\u03C3\u03AF\u03B1 PDF
|
||||
auto-rename.submit=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u03BC\u03B5\u03C4\u03BF\u03BD\u03BF\u03BC\u03B1\u03C3\u03AF\u03B1
|
||||
|
||||
|
||||
#adjustContrast
|
||||
adjustContrast.title=\u03A0\u03C1\u03BF\u03C3\u03C0\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE \u03C4\u03B7\u03C2 \u0391\u03BD\u03C4\u03AF\u03B8\u03B5\u03C3\u03B7\u03C2
|
||||
adjustContrast.header=\u03A0\u03C1\u03BF\u03C3\u03C0\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE \u03C4\u03B7\u03C2 \u0391\u03BD\u03C4\u03AF\u03B8\u03B5\u03C3\u03B7\u03C2
|
||||
adjustContrast.contrast=\u0391\u03BD\u03C4\u03AF\u03B8\u03B5\u03C3\u03B7:
|
||||
adjustContrast.brightness=\u03A6\u03C9\u03C4\u03B5\u03B9\u03BD\u03CC\u03C4\u03B7\u03C4\u03B1:
|
||||
adjustContrast.saturation=\u039A\u03BF\u03C1\u03B5\u03C3\u03BC\u03CC\u03C2:
|
||||
adjustContrast.download=\u039B\u03AE\u03C8\u03B7
|
||||
|
||||
|
||||
#crop
|
||||
crop.title=\u039A\u03BF\u03C0\u03AE
|
||||
crop.header=\u039A\u03BF\u03C0\u03AE \u0395\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2
|
||||
crop.submit=\u03A5\u03C0\u03BF\u03B2\u03BF\u03BB\u03AE
|
||||
|
||||
|
||||
#autoSplitPDF
|
||||
autoSplitPDF.title=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u03B4\u03B9\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 PDF
|
||||
autoSplitPDF.header=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u03B4\u03B9\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 PDF
|
||||
autoSplitPDF.description=\u0395\u03BA\u03C4\u03C5\u03C0\u03CE\u03C3\u03C4\u03B5, \u03B5\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5, \u03C3\u03B1\u03C1\u03CE\u03C3\u03C4\u03B5, \u03B1\u03BD\u03B5\u03B2\u03AC\u03C3\u03C4\u03B5 \u03BA\u03B1\u03B9 \u03B1\u03C6\u03AE\u03C3\u03C4\u03B5 \u03BC\u03B1\u03C2 \u03BD\u03B1 \u03B4\u03B9\u03B1\u03C7\u03C9\u03C1\u03AF\u03C3\u03BF\u03C5\u03BC\u03B5 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03C4\u03B1 \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03AC \u03C3\u03B1\u03C2. \u0394\u03B5\u03BD \u03B1\u03C0\u03B1\u03B9\u03C4\u03B5\u03AF\u03C4\u03B1\u03B9 \u03C7\u03B5\u03B9\u03C1\u03BF\u03BA\u03AF\u03BD\u03B7\u03C4\u03B7 \u03C4\u03B1\u03BE\u03B9\u03BD\u03CC\u03BC\u03B7\u03C3\u03B7.
|
||||
autoSplitPDF.selectText.1=\u0395\u03BA\u03C4\u03C5\u03C0\u03CE\u03C3\u03C4\u03B5 \u03BC\u03B5\u03C1\u03B9\u03BA\u03AC \u03C6\u03CD\u03BB\u03BB\u03B1 \u03B4\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03BC\u03BF\u03CD \u03B1\u03C0\u03CC \u03BA\u03AC\u03C4\u03C9 (\u03C4\u03BF \u03B1\u03C3\u03C0\u03C1\u03CC\u03BC\u03B1\u03C5\u03C1\u03BF \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BC\u03B9\u03B1 \u03C7\u03B1\u03C1\u03AC).
|
||||
autoSplitPDF.selectText.2=\u03A3\u03B1\u03C1\u03CE\u03C3\u03C4\u03B5 \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03AC \u03C3\u03B1\u03C2 \u03C4\u03B1\u03C5\u03C4\u03CC\u03C7\u03C1\u03BF\u03BD\u03B1, \u03BC\u03B5 \u03C4\u03BF \u03BD\u03B1 \u03B5\u03B9\u03C3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03C4\u03BF \u03B4\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03C4\u03B9\u03BA\u03CC \u03C6\u03CD\u03BB\u03BB\u03BF \u03BC\u03B5\u03C4\u03B1\u03BE\u03CD \u03C4\u03BF\u03C5\u03C2.
|
||||
autoSplitPDF.selectText.3=\u0391\u03BD\u03B5\u03B2\u03AC\u03C3\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF \u03C3\u03B1\u03C1\u03C9\u03BC\u03AD\u03BD\u03BF PDF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF \u03BA\u03B1\u03B9 \u03B1\u03C6\u03AE\u03C3\u03C4\u03B5 \u03C4\u03BF Stirling PDF \u03BD\u03B1 \u03C7\u03B5\u03B9\u03C1\u03B9\u03C3\u03C4\u03B5\u03AF \u03C4\u03B1 \u03C5\u03C0\u03CC\u03BB\u03BF\u03B9\u03C0\u03B1
|
||||
autoSplitPDF.selectText.4=\u039F\u03B9 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2 \u03B4\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03BC\u03BF\u03CD \u03B5\u03BD\u03C4\u03BF\u03C0\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03B9 \u03BA\u03B1\u03B9 \u03B1\u03C6\u03B1\u03B9\u03C1\u03BF\u03CD\u03BD\u03C4\u03B1\u03B9 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1, \u03B4\u03B9\u03B1\u03C3\u03C6\u03B1\u03BB\u03AF\u03B6\u03BF\u03BD\u03C4\u03B1\u03C2 \u03AD\u03BD\u03B1 \u03C0\u03C1\u03BF\u03C3\u03B5\u03B3\u03BC\u03AD\u03BD\u03BF \u03C4\u03B5\u03BB\u03B9\u03BA\u03CC \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF.
|
||||
autoSplitPDF.formPrompt=\u03A5\u03C0\u03BF\u03B2\u03BF\u03BB\u03AE PDF \u03C0\u03BF\u03C5 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03B4\u03B9\u03B1\u03B9\u03C1\u03AD\u03C4\u03B5\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD Stirling-PDF:
|
||||
autoSplitPDF.duplexMode=\u039B\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03B4\u03B9\u03C0\u03BB\u03AE\u03C2 \u03CC\u03C8\u03B7\u03C2 (\u03A3\u03AC\u03C1\u03C9\u03C3\u03B7 \u03BC\u03C0\u03C1\u03BF\u03C3\u03C4\u03AC \u03BA\u03B1\u03B9 \u03C0\u03AF\u03C3\u03C9)
|
||||
autoSplitPDF.dividerDownload1=\u039B\u03AE\u03C8\u03B7 'Auto Splitter Divider (minimal).pdf'
|
||||
autoSplitPDF.dividerDownload2=\u039B\u03AE\u03C8\u03B7 'Auto Splitter Divider (with instructions).pdf'
|
||||
autoSplitPDF.submit=\u03A5\u03C0\u03BF\u03B2\u03BF\u03BB\u03AE
|
||||
|
||||
|
||||
#pipeline
|
||||
pipeline.title=Pipeline
|
||||
|
||||
|
||||
#pageLayout
|
||||
pageLayout.title=\u0394\u03B9\u03AC\u03C4\u03B1\u03BE\u03B7 \u03C0\u03BF\u03BB\u03BB\u03CE\u03BD \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
pageLayout.header=\u0394\u03B9\u03AC\u03C4\u03B1\u03BE\u03B7 \u03C0\u03BF\u03BB\u03BB\u03CE\u03BD \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
pageLayout.pagesPerSheet=\u03A3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2 \u03B1\u03BD\u03AC \u03C6\u03CD\u03BB\u03BB\u03BF:
|
||||
pageLayout.addBorder=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C0\u03B5\u03C1\u03B9\u03B3\u03C1\u03B1\u03BC\u03BC\u03AC\u03C4\u03C9\u03BD
|
||||
pageLayout.submit=\u03A5\u03C0\u03BF\u03B2\u03BF\u03BB\u03AE
|
||||
|
||||
|
||||
#scalePages
|
||||
scalePages.title=\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE \u03BA\u03BB\u03AF\u03BC\u03B1\u03BA\u03B1\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2
|
||||
scalePages.header=\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE \u03BA\u03BB\u03AF\u03BC\u03B1\u03BA\u03B1\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2
|
||||
scalePages.pageSize=\u039C\u03AD\u03B3\u03B5\u03B8\u03BF\u03C2 \u03BC\u03B9\u03B1\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2 \u03C4\u03BF\u03C5 \u03B5\u03B3\u03B3\u03C1\u03AC\u03C6\u03BF\u03C5.
|
||||
scalePages.scaleFactor=\u0395\u03C0\u03AF\u03C0\u03B5\u03B4\u03BF \u03B6\u03BF\u03C5\u03BC (\u03C0\u03B5\u03C1\u03B9\u03BA\u03BF\u03C0\u03AE) \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2.
|
||||
scalePages.submit=\u03A5\u03C0\u03BF\u03B2\u03BF\u03BB\u03AE
|
||||
|
||||
|
||||
#certSign
|
||||
certSign.title=\u03A5\u03C0\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE \u03A0\u03B9\u03C3\u03C4\u03BF\u03C0\u03BF\u03B9\u03B7\u03C4\u03B9\u03BA\u03BF\u03CD
|
||||
certSign.header=\u03A5\u03C0\u03BF\u03B3\u03C1\u03AC\u03C8\u03C4\u03B5 \u03AD\u03BD\u03B1 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF PDF \u03BC\u03B5 \u03C4\u03BF \u03C0\u03B9\u03C3\u03C4\u03BF\u03C0\u03BF\u03B9\u03B7\u03C4\u03B9\u03BA\u03CC \u03C3\u03B1\u03C2 (\u0395\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 \u03C3\u03B5 \u03B5\u03BE\u03AD\u03BB\u03B9\u03BE\u03B7)
|
||||
certSign.selectPDF=\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 PDF \u03B3\u03B9\u03B1 \u03C5\u03C0\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE:
|
||||
certSign.selectKey=\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03C4\u03BF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF \u03C4\u03BF\u03C5 \u03B9\u03B4\u03B9\u03C9\u03C4\u03B9\u03BA\u03BF\u03CD \u03BA\u03BB\u03B5\u03B9\u03B4\u03B9\u03BF\u03CD \u03C3\u03B1\u03C2 (\u03BC\u03BF\u03C1\u03C6\u03AE PKCS#8, \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 .pem \u03AE .der):
|
||||
certSign.selectCert=\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03C4\u03BF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF \u03C0\u03B9\u03C3\u03C4\u03BF\u03C0\u03BF\u03B9\u03B7\u03C4\u03B9\u03BA\u03BF\u03CD \u03C3\u03B1\u03C2 (\u03BC\u03BF\u03C1\u03C6\u03AE X.509, \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 .pem \u03AE .der):
|
||||
certSign.selectP12=\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03C4\u03BF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF PKCS#12 Keystore (.p12 \u03AE .pfx) (\u03A0\u03C1\u03BF\u03B1\u03B9\u03C1\u03B5\u03C4\u03B9\u03BA\u03CC, \u03B5\u03AC\u03BD \u03C0\u03B1\u03C1\u03AD\u03C7\u03B5\u03C4\u03B1\u03B9, \u03B8\u03B1 \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03C4\u03BF \u03B9\u03B4\u03B9\u03C9\u03C4\u03B9\u03BA\u03CC \u03BA\u03BB\u03B5\u03B9\u03B4\u03AF \u03BA\u03B1\u03B9 \u03C4\u03BF \u03C0\u03B9\u03C3\u03C4\u03BF\u03C0\u03BF\u03B9\u03B7\u03C4\u03B9\u03BA\u03CC \u03C3\u03B1\u03C2):
|
||||
certSign.certType=\u03A4\u03CD\u03C0\u03BF\u03C2 \u03A0\u03B9\u03C3\u03C4\u03BF\u03C0\u03BF\u03B9\u03B7\u03C4\u03B9\u03BA\u03BF\u03CD
|
||||
certSign.password=\u0395\u03B9\u03C3\u03B1\u03B3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03C4\u03BF\u03BD \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C4\u03BF\u03C5 Keystore \u03AE \u03C4\u03BF\u03C5 \u0399\u03B4\u03B9\u03C9\u03C4\u03B9\u03BA\u03BF\u03CD \u039A\u03BB\u03B5\u03B9\u03B4\u03B9\u03BF\u03CD (\u03B5\u03AC\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03B5\u03B9):
|
||||
certSign.showSig=\u0395\u03BC\u03C6\u03AC\u03BD\u03B9\u03C3\u03B7 \u03A5\u03C0\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03C2
|
||||
certSign.reason=\u0391\u03B9\u03C4\u03AF\u03B1
|
||||
certSign.location=\u03A4\u03BF\u03C0\u03BF\u03B8\u03B5\u03C3\u03AF\u03B1
|
||||
certSign.name=\u038C\u03BD\u03BF\u03BC\u03B1
|
||||
certSign.submit=\u03A5\u03C0\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE PDF
|
||||
|
||||
|
||||
#removeBlanks
|
||||
removeBlanks.title=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u039A\u03B5\u03BD\u03CE\u03BD
|
||||
removeBlanks.header=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u039A\u03B5\u03BD\u03CE\u03BD \u03A3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
removeBlanks.threshold=\u038C\u03C1\u03B9\u03BF \u03BB\u03B5\u03C5\u03BA\u03CC\u03C4\u03B7\u03C4\u03B1\u03C2 pixel:
|
||||
removeBlanks.thresholdDesc=\u038C\u03C1\u03B9\u03BF \u03B3\u03B9\u03B1 \u03C4\u03BF\u03BD \u03C0\u03C1\u03BF\u03C3\u03B4\u03B9\u03BF\u03C1\u03B9\u03C3\u03BC\u03CC \u03C4\u03BF\u03C5 \u03C0\u03CC\u03C3\u03BF \u03BB\u03B5\u03C5\u03BA\u03CC \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03AD\u03BD\u03B1 \u03BB\u03B5\u03C5\u03BA\u03CC \u03B5\u03B9\u03BA\u03BF\u03BD\u03BF\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF (pixel) \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03C4\u03B1\u03BE\u03B9\u03BD\u03BF\u03BC\u03B7\u03B8\u03B5\u03AF \u03C9\u03C2 "\u039B\u03B5\u03C5\u03BA\u03CC". 0 = \u039C\u03B1\u03CD\u03C1\u03BF, 255 \u03BA\u03B1\u03B8\u03B1\u03C1\u03CC \u03BB\u03B5\u03C5\u03BA\u03CC.
|
||||
removeBlanks.whitePercent=\u03A0\u03BF\u03C3\u03BF\u03C3\u03C4\u03CC \u039B\u03B5\u03C5\u03BA\u03BF\u03CD (%):
|
||||
removeBlanks.whitePercentDesc=\u03A4\u03BF \u03C0\u03BF\u03C3\u03BF\u03C3\u03C4\u03CC \u03C4\u03B7\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2 \u03C0\u03BF\u03C5 \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 "\u03BB\u03B5\u03C5\u03BA\u03AC" pixel \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B1\u03C6\u03B1\u03B9\u03C1\u03B5\u03B8\u03B5\u03AF
|
||||
removeBlanks.submit=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u039A\u03B5\u03BD\u03CE\u03BD
|
||||
|
||||
|
||||
#compare
|
||||
compare.title=\u03A3\u03CD\u03B3\u03BA\u03C1\u03B9\u03C3\u03B7
|
||||
compare.header=\u03A3\u03CD\u03B3\u03BA\u03C1\u03B9\u03C3\u03B7 PDFs
|
||||
compare.document.1=\u0388\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF 1
|
||||
compare.document.2=\u0388\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF 2
|
||||
compare.submit=\u03A3\u03CD\u03B3\u03BA\u03C1\u03B9\u03C3\u03B7
|
||||
|
||||
|
||||
#sign
|
||||
sign.title=\u03A5\u03C0\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE
|
||||
sign.header=\u03A5\u03C0\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE PDFs
|
||||
sign.upload=\u0391\u03BD\u03AD\u03B2\u03B1\u03C3\u03BC\u03B1 \u0395\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2
|
||||
sign.draw=\u03A3\u03C7\u03B5\u03B4\u03AF\u03B1\u03C3\u03B7 \u03C5\u03C0\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03C2
|
||||
sign.text=\u0395\u03B9\u03C3\u03B1\u03B3\u03C9\u03B3\u03AE \u03BA\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5
|
||||
sign.clear=\u039A\u03B1\u03B8\u03AC\u03C1\u03B9\u03C3\u03BC\u03B1
|
||||
sign.add=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7
|
||||
|
||||
|
||||
#repair
|
||||
repair.title=\u0395\u03C0\u03B9\u03B4\u03B9\u03CC\u03C1\u03B8\u03C9\u03C3\u03B7
|
||||
repair.header=\u0395\u03C0\u03B9\u03B4\u03B9\u03CC\u03C1\u03B8\u03C9\u03C3\u03B7 PDFs
|
||||
repair.submit=\u0395\u03C0\u03B9\u03B4\u03B9\u03CC\u03C1\u03B8\u03C9\u03C3\u03B7
|
||||
|
||||
|
||||
#flatten
|
||||
flatten.title=Flatten
|
||||
flatten.header=Flatten PDFs
|
||||
flatten.submit=Flatten
|
||||
|
||||
|
||||
#ScannerImageSplit
|
||||
ScannerImageSplit.selectText.1=\u038C\u03C1\u03B9\u03BF \u03B3\u03C9\u03BD\u03AF\u03B1\u03C2:
|
||||
ScannerImageSplit.selectText.2=\u039F\u03C1\u03AF\u03B6\u03B5\u03B9 \u03C4\u03B7\u03BD \u03B5\u03BB\u03AC\u03C7\u03B9\u03C3\u03C4\u03B7 \u03B1\u03C0\u03CC\u03BB\u03C5\u03C4\u03B7 \u03B3\u03C9\u03BD\u03AF\u03B1 \u03C0\u03BF\u03C5 \u03B1\u03C0\u03B1\u03B9\u03C4\u03B5\u03AF\u03C4\u03B1\u03B9 \u03B3\u03B9\u03B1 \u03C4\u03B7\u03BD \u03C0\u03B5\u03C1\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE \u03C4\u03B7\u03C2 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2 (\u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE: 10).
|
||||
ScannerImageSplit.selectText.3=\u0391\u03BD\u03B5\u03BA\u03C4\u03B9\u03BA\u03CC\u03C4\u03B7\u03C4\u03B1 (Tolerance):
|
||||
ScannerImageSplit.selectText.4=\u039A\u03B1\u03B8\u03BF\u03C1\u03AF\u03B6\u03B5\u03B9 \u03C4\u03BF \u03B5\u03CD\u03C1\u03BF\u03C2 \u03C4\u03B7\u03C2 \u03C7\u03C1\u03C9\u03BC\u03B1\u03C4\u03B9\u03BA\u03AE\u03C2 \u03B4\u03B9\u03B1\u03BA\u03CD\u03BC\u03B1\u03BD\u03C3\u03B7\u03C2 \u03B3\u03CD\u03C1\u03C9 \u03B1\u03C0\u03CC \u03C4\u03BF \u03B5\u03BA\u03C4\u03B9\u03BC\u03CE\u03BC\u03B5\u03BD\u03BF \u03C7\u03C1\u03CE\u03BC\u03B1 \u03C6\u03CC\u03BD\u03C4\u03BF\u03C5 (\u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE: 30).
|
||||
ScannerImageSplit.selectText.5=\u0395\u03BB\u03AC\u03C7\u03B9\u03C3\u03C4\u03B7 \u03A0\u03B5\u03C1\u03B9\u03BF\u03C7\u03AE:
|
||||
ScannerImageSplit.selectText.6=\u039F\u03C1\u03AF\u03B6\u03B5\u03B9 \u03C4\u03BF \u03B5\u03BB\u03AC\u03C7\u03B9\u03C3\u03C4\u03BF \u03CC\u03C1\u03B9\u03BF \u03B5\u03C0\u03B9\u03C6\u03AC\u03BD\u03B5\u03B9\u03B1\u03C2 \u03B3\u03B9\u03B1 \u03BC\u03B9\u03B1 \u03C6\u03C9\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03B1 (\u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE: 10000).
|
||||
ScannerImageSplit.selectText.7=\u0395\u03BB\u03AC\u03C7\u03B9\u03C3\u03C4\u03B7 \u03B5\u03C0\u03B9\u03C6\u03AC\u03BD\u03B5\u03B9\u03B1 \u03C0\u03B5\u03C1\u03B9\u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03BF\u03C2:
|
||||
ScannerImageSplit.selectText.8=\u03A1\u03C5\u03B8\u03BC\u03AF\u03B6\u03B5\u03B9 \u03C4\u03BF \u03B5\u03BB\u03AC\u03C7\u03B9\u03C3\u03C4\u03BF \u03CC\u03C1\u03B9\u03BF \u03C0\u03B5\u03C1\u03B9\u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03BF\u03C2 \u03B3\u03B9\u03B1 \u03BC\u03B9\u03B1 \u03C6\u03C9\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AF\u03B1
|
||||
ScannerImageSplit.selectText.9=\u039C\u03AD\u03B3\u03B5\u03B8\u03BF\u03C2 \u03C0\u03B5\u03C1\u03B9\u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03BF\u03C2:
|
||||
ScannerImageSplit.selectText.10=\u039F\u03C1\u03AF\u03B6\u03B5\u03B9 \u03C4\u03BF \u03BC\u03AD\u03B3\u03B5\u03B8\u03BF\u03C2 \u03C4\u03BF\u03C5 \u03C0\u03B5\u03C1\u03B9\u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03BF\u03C2 \u03C0\u03BF\u03C5 \u03C0\u03C1\u03BF\u03C3\u03C4\u03AF\u03B8\u03B5\u03C4\u03B1\u03B9 \u03BA\u03B1\u03B9 \u03B1\u03C6\u03B1\u03B9\u03C1\u03B5\u03AF\u03C4\u03B1\u03B9 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B1\u03C0\u03BF\u03C4\u03C1\u03AD\u03C0\u03BF\u03BD\u03C4\u03B1\u03B9 \u03BB\u03B5\u03C5\u03BA\u03AC \u03C0\u03B5\u03C1\u03B9\u03B3\u03C1\u03AC\u03BC\u03BC\u03B1\u03C4\u03B1 \u03C3\u03C4\u03B7\u03BD \u03AD\u03BE\u03BF\u03B4\u03BF (\u03C0\u03C1\u03BF\u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE: 1).
|
||||
|
||||
|
||||
#OCR
|
||||
ocr.title=\u039F\u03C0\u03C4\u03B9\u03BA\u03AE \u03B1\u03BD\u03B1\u03B3\u03BD\u03CE\u03C1\u03B9\u03C3\u03B7 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03C9\u03BD (OCR) / \u03A3\u03B1\u03C1\u03CE\u03C3\u03B5\u03B9\u03C2 Cleanup
|
||||
ocr.header=\u03A3\u03B1\u03C1\u03CE\u03C3\u03B5\u03B9\u03C2 Cleanup / OCR (Optical Character Recognition - \u039F\u03C0\u03C4\u03B9\u03BA\u03AE \u03B1\u03BD\u03B1\u03B3\u03BD\u03CE\u03C1\u03B9\u03C3\u03B7 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03C9\u03BD)
|
||||
ocr.selectText.1=\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03B3\u03BB\u03CE\u03C3\u03C3\u03B5\u03C2 \u03C0\u03BF\u03C5 \u03C0\u03C1\u03CC\u03BA\u03B5\u03B9\u03C4\u03B1\u03B9 \u03BD\u03B1 \u03B5\u03BD\u03C4\u03BF\u03C0\u03B9\u03C3\u03C4\u03BF\u03CD\u03BD \u03C3\u03C4\u03BF PDF (\u039F\u03B9 \u03C0\u03BF\u03C5 \u03B1\u03BD\u03B1\u03C6\u03AD\u03C1\u03BF\u03BD\u03C4\u03B1\u03B9 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B1\u03C5\u03C4\u03AD\u03C2 \u03C0\u03BF\u03C5 \u03B1\u03BD\u03B9\u03C7\u03BD\u03B5\u03CD\u03BF\u03BD\u03C4\u03B1\u03B9 \u03B1\u03C5\u03C4\u03AE\u03BD \u03C4\u03B7 \u03C3\u03C4\u03B9\u03B3\u03BC\u03AE):
|
||||
ocr.selectText.2=\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AE\u03C3\u03C4\u03B5 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF \u03BA\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5 \u03C0\u03BF\u03C5 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF OCR \u03BC\u03B1\u03B6\u03AF \u03BC\u03B5 \u03C4\u03BF PDF \u03C0\u03BF\u03C5 \u03AD\u03C7\u03B5\u03B9 \u03C5\u03C0\u03BF\u03B2\u03BB\u03B7\u03B8\u03B5\u03AF \u03C3\u03B5 OCR
|
||||
ocr.selectText.3=\u039F\u03B9 \u03C3\u03C9\u03C3\u03C4\u03AD\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2 \u03C3\u03B1\u03C1\u03CE\u03B8\u03B7\u03BA\u03B1\u03BD \u03BC\u03B5 \u03BB\u03BF\u03BE\u03AE \u03B3\u03C9\u03BD\u03AF\u03B1 \u03C0\u03B5\u03C1\u03B9\u03C3\u03C4\u03C1\u03AD\u03C6\u03BF\u03BD\u03C4\u03AC\u03C2 \u03C4\u03B5\u03C2 \u03C3\u03C4\u03B7 \u03B8\u03AD\u03C3\u03B7 \u03C4\u03BF\u03C5\u03C2
|
||||
ocr.selectText.4=C\u039A\u03B1\u03B8\u03B1\u03C1\u03AF\u03C3\u03C4\u03B5 \u03C4\u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1, \u03CE\u03C3\u03C4\u03B5 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BB\u03B9\u03B3\u03CC\u03C4\u03B5\u03C1\u03BF \u03C0\u03B9\u03B8\u03B1\u03BD\u03CC \u03C4\u03BF OCR \u03BD\u03B1 \u03B2\u03C1\u03B5\u03B9 \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03C3\u03C4\u03BF \u03B8\u03CC\u03C1\u03C5\u03B2\u03BF \u03C6\u03CC\u03BD\u03C4\u03BF\u03C5 (background noise). (\u039A\u03B1\u03BC\u03AF\u03B1 \u03B1\u03BB\u03BB\u03B1\u03B3\u03AE \u03C3\u03C4\u03BF \u03B5\u03BE\u03B1\u03B3\u03CC\u03BC\u03B5\u03BD\u03BF)
|
||||
ocr.selectText.5=\u039A\u03B1\u03B8\u03B1\u03C1\u03AF\u03C3\u03C4\u03B5 \u03C4\u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1, \u03CE\u03C3\u03C4\u03B5 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BB\u03B9\u03B3\u03CC\u03C4\u03B5\u03C1\u03BF \u03C0\u03B9\u03B8\u03B1\u03BD\u03CC \u03C4\u03BF OCR \u03BD\u03B1 \u03B2\u03C1\u03B5\u03B9 \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03C3\u03C4\u03BF \u03B8\u03CC\u03C1\u03C5\u03B2\u03BF \u03C6\u03CC\u03BD\u03C4\u03BF\u03C5, \u03B4\u03B9\u03B1\u03C4\u03B7\u03C1\u03B5\u03AF \u03C4\u03B7\u03BD \u03B5\u03BA\u03BA\u03B1\u03B8\u03AC\u03C1\u03B9\u03C3\u03B7 \u03C3\u03C4\u03BF \u03C0\u03B1\u03C1\u03B1\u03B3\u03CC\u03BC\u03B5\u03BD\u03BF.
|
||||
ocr.selectText.6=\u0391\u03B3\u03BD\u03BF\u03B5\u03AF \u03C4\u03B9\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2 \u03C0\u03BF\u03C5 \u03AD\u03C7\u03BF\u03C5\u03BD \u03B4\u03B9\u03B1\u03B4\u03C1\u03B1\u03C3\u03C4\u03B9\u03BA\u03CC \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF, \u03BC\u03CC\u03BD\u03BF \u03C4\u03B9\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2 OCR \u03C0\u03BF\u03C5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B5\u03C2
|
||||
ocr.selectText.7=\u0395\u03C0\u03B9\u03B2\u03BF\u03BB\u03AE OCR, \u03B8\u03B1 \u03C0\u03C1\u03B1\u03B3\u03BC\u03B1\u03C4\u03BF\u03C0\u03BF\u03B9\u03AE\u03C3\u03B5\u03B9 \u039F\u03C0\u03C4\u03B9\u03BA\u03AE \u03B1\u03BD\u03B1\u03B3\u03BD\u03CE\u03C1\u03B9\u03C3\u03B7 \u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03C9\u03BD \u03C3\u03B5 \u03BA\u03AC\u03B8\u03B5 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1 \u03B1\u03C6\u03B1\u03B9\u03C1\u03CE\u03BD\u03C4\u03B1\u03C2 \u03CC\u03BB\u03BF \u03C4\u03B1 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1 \u03C4\u03BF\u03C5 \u03B1\u03C1\u03C7\u03B9\u03BA\u03BF\u03CD \u03BA\u03B5\u03AF\u03BC\u03AD\u03BD\u03BF\u03C5
|
||||
ocr.selectText.8=\u039A\u03B1\u03BD\u03BF\u03BD\u03B9\u03BA\u03CC (\u0398\u03B1 \u03C0\u03B1\u03C1\u03AC\u03BE\u03B5\u03B9 \u03C3\u03C6\u03AC\u03BB\u03BC\u03B1 \u03B1\u03BD \u03C4\u03BF PDF \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF)
|
||||
ocr.selectText.9=\u0395\u03C0\u03B9\u03C0\u03C1\u03CC\u03C3\u03B8\u03B5\u03C4\u03B5\u03C2 \u03A1\u03C5\u03B8\u03BC\u03AF\u03C3\u03B5\u03B9\u03C2
|
||||
ocr.selectText.10=\u039B\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 OCR
|
||||
ocr.selectText.11=\u039A\u03B1\u03C4\u03AC\u03C1\u03B3\u03B7\u03C3\u03B7 \u03B5\u03B9\u03BA\u03CC\u03BD\u03C9\u03BD \u03BC\u03B5\u03C4\u03AC \u03C4\u03BF OCR (\u039A\u03B1\u03C4\u03B1\u03C1\u03B3\u03B5\u03AF \u039F\u039B\u0395\u03A3 \u03C4\u03B9\u03C2 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B5\u03C2, \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C7\u03C1\u03AE\u03C3\u03B9\u03BC\u03BF \u03BC\u03CC\u03BD\u03BF \u03B1\u03BD \u03B1\u03C0\u03BF\u03C4\u03B5\u03BB\u03B5\u03AF \u03BC\u03AD\u03C1\u03BF\u03C2 \u03C4\u03BF\u03C5 \u03B2\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2 \u03BC\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE\u03C2)
|
||||
ocr.selectText.12=\u03A4\u03CD\u03C0\u03BF\u03C2 \u03B1\u03C0\u03CC\u03B4\u03BF\u03C3\u03B7\u03C2 (\u0393\u03B9\u03B1 \u03C0\u03C1\u03BF\u03C7\u03C9\u03C1\u03B7\u03BC\u03AD\u03BD\u03BF\u03C5\u03C2)
|
||||
ocr.help=\u0394\u03B9\u03B1\u03B2\u03AC\u03C3\u03C4\u03B5 \u03B1\u03C5\u03C4\u03AE\u03BD \u03C4\u03B7\u03BD \u03C4\u03B5\u03BA\u03BC\u03B7\u03C1\u03AF\u03C9\u03C3\u03B7 \u03C3\u03C7\u03B5\u03C4\u03B9\u03BA\u03AC \u03BC\u03B5 \u03C4\u03BF\u03BD \u03C4\u03C1\u03CC\u03C0\u03BF \u03C7\u03C1\u03AE\u03C3\u03B7\u03C2 \u03B1\u03C5\u03C4\u03AE\u03C2 \u03B3\u03B9\u03B1 \u03AC\u03BB\u03BB\u03B5\u03C2 \u03B3\u03BB\u03CE\u03C3\u03C3\u03B5\u03C2 \u03AE/\u03BA\u03B1\u03B9 \u03BC\u03B7 \u03C7\u03C1\u03AE\u03C3\u03B7\u03C2 \u03C3\u03B5 docker
|
||||
ocr.credit=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C5\u03C0\u03B7\u03C1\u03B5\u03C3\u03AF\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF OCRmyPDF \u03BA\u03B1\u03B9 Tesseract \u03B3\u03B9\u03B1 OCR.
|
||||
ocr.submit=\u0395\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 PDF \u03BC\u03B5 OCR
|
||||
|
||||
|
||||
#extractImages
|
||||
extractImages.title=\u0395\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE \u0395\u03B9\u03BA\u03CC\u03BD\u03C9\u03BD
|
||||
extractImages.header=\u0395\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE \u0395\u03B9\u03BA\u03CC\u03BD\u03C9\u03BD
|
||||
extractImages.selectText=\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 \u03BC\u03BF\u03C1\u03C6\u03AE \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03BC\u03B5\u03C4\u03B1\u03C4\u03C1\u03AD\u03C8\u03B5\u03C4\u03B5 \u03C4\u03B9\u03C2 \u03B5\u03BE\u03B1\u03B3\u03CC\u03BC\u03B5\u03BD\u03B5\u03C2 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B5\u03C2
|
||||
extractImages.submit=\u0395\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE
|
||||
|
||||
|
||||
#File to PDF
|
||||
fileToPDF.title=\u0391\u03C1\u03C7\u03B5\u03AF\u03BF \u03C3\u03B5 PDF
|
||||
fileToPDF.header=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03BF\u03C0\u03BF\u03B9\u03BF\u03C5\u03B4\u03AE\u03C0\u03BF\u03C4\u03B5 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 \u03C3\u03B5 PDF
|
||||
fileToPDF.credit=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C5\u03C0\u03B7\u03C1\u03B5\u03C3\u03AF\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF LibreOffice \u03BA\u03B1\u03B9 Unoconv \u03B3\u03B9\u03B1 \u03C4\u03B7\u03BD \u03BC\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD.
|
||||
fileToPDF.supportedFileTypes=\u039F\u03B9 \u03C5\u03C0\u03BF\u03C3\u03C4\u03B7\u03C1\u03B9\u03B6\u03CC\u03BC\u03B5\u03BD\u03BF\u03B9 \u03C4\u03CD\u03C0\u03BF\u03B9 \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD \u03B8\u03B1 \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C0\u03B5\u03C1\u03B9\u03BB\u03B1\u03BC\u03B2\u03AC\u03BD\u03BF\u03C5\u03BD \u03C4\u03B1 \u03C0\u03B1\u03C1\u03B1\u03BA\u03AC\u03C4\u03C9, \u03C9\u03C3\u03C4\u03CC\u03C3\u03BF, \u03B3\u03B9\u03B1 \u03BC\u03B9\u03B1 \u03C0\u03BB\u03AE\u03C1\u03B7 \u03B5\u03BD\u03B7\u03BC\u03B5\u03C1\u03C9\u03BC\u03AD\u03BD\u03B7 \u03BB\u03AF\u03C3\u03C4\u03B1 \u03BC\u03B5 \u03C4\u03B9\u03C2 \u03C5\u03C0\u03BF\u03C3\u03C4\u03B7\u03C1\u03B9\u03B6\u03CC\u03BC\u03B5\u03BD\u03B5\u03C2 \u03BC\u03BF\u03C1\u03C6\u03AD\u03C2, \u03B1\u03BD\u03B1\u03C4\u03C1\u03AD\u03BE\u03C4\u03B5 \u03C3\u03C4\u03B7\u03BD \u03C4\u03B5\u03BA\u03BC\u03B7\u03C1\u03AF\u03C9\u03C3\u03B7 \u03C4\u03BF\u03C5 LibreOffice
|
||||
fileToPDF.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C3\u03B5 PDF
|
||||
|
||||
|
||||
#compress
|
||||
compress.title=\u03A3\u03C5\u03BC\u03C0\u03AF\u03B5\u03C3\u03B7
|
||||
compress.header=\u03A3\u03C5\u03BC\u03C0\u03AF\u03B5\u03C3\u03B7 PDF
|
||||
compress.credit=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C5\u03C0\u03B7\u03C1\u03B5\u03C3\u03AF\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF Ghostscript \u03B3\u03B9\u03B1 PDF \u03A3\u03C5\u03BC\u03C0\u03AF\u03B5\u03C3\u03B7/\u0392\u03B5\u03BB\u03C4\u03B9\u03C3\u03C4\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7.
|
||||
compress.selectText.1=\u03A7\u03B5\u03B9\u03C1\u03BF\u03BA\u03AF\u03BD\u03B7\u03C4\u03B7 \u039B\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 - \u0391\u03C0\u03CC 1 \u03AD\u03C9\u03C2 4
|
||||
compress.selectText.2=\u0395\u03C0\u03AF\u03C0\u03B5\u03B4\u03BF \u0392\u03B5\u03BB\u03C4\u03B9\u03C3\u03C4\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7\u03C2:
|
||||
compress.selectText.3=4 (\u03A0\u03BF\u03BB\u03CD \u03BA\u03B1\u03BA\u03CC \u03B3\u03B9\u03B1 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B5\u03C2 \u03BA\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5)
|
||||
compress.selectText.4=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u039B\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 - Auto mode - \u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03CC\u03B6\u03B5\u03B9 \u03B1\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B1 \u03C4\u03B7\u03BD \u03C0\u03BF\u03B9\u03CC\u03C4\u03B7\u03C4\u03B1 \u03B3\u03B9\u03B1 \u03BB\u03AE\u03C8\u03B7 PDF \u03C3\u03C4\u03BF \u03B1\u03BA\u03C1\u03B9\u03B2\u03AD\u03C2 \u03BC\u03AD\u03B3\u03B5\u03B8\u03BF\u03C2
|
||||
compress.selectText.5=\u0391\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03BC\u03B5\u03BD\u03BF \u039C\u03AD\u03B3\u03B5\u03B8\u03BF\u03C2 PDF (\u03C0.\u03C7 25MB, 10.8MB, 25KB)
|
||||
compress.submit=\u03A3\u03C5\u03BC\u03C0\u03AF\u03B5\u03C3\u03B7
|
||||
|
||||
|
||||
#Add image
|
||||
addImage.title=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u0395\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2
|
||||
addImage.header=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u0395\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2 \u03C3\u03B5 PDF
|
||||
addImage.everyPage=\u039A\u03AC\u03B8\u03B5 \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1?
|
||||
addImage.upload=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u0395\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2
|
||||
addImage.submit=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u0395\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2
|
||||
|
||||
|
||||
#merge
|
||||
merge.title=\u03A3\u03C5\u03B3\u03C7\u03CE\u03BD\u03B5\u03C5\u03C3\u03B7
|
||||
merge.header=\u03A3\u03C5\u03B3\u03C7\u03CE\u03BD\u03B5\u03C5\u03C3\u03B7 \u03C0\u03BF\u03BB\u03BB\u03B1\u03C0\u03BB\u03CE\u03BD PDFs (2+)
|
||||
merge.sortByName=\u03A4\u03B1\u03BE\u03B9\u03BD\u03CC\u03BC\u03B7\u03C3\u03B7 \u03BC\u03B5 \u03B2\u03AC\u03C3\u03B7 \u03C4\u03BF \u038C\u03BD\u03BF\u03BC\u03B1
|
||||
merge.sortByDate=\u03A4\u03B1\u03BE\u03B9\u03BD\u03CC\u03BC\u03B7\u03C3\u03B7 \u03BC\u03B5 \u03B2\u03AC\u03C3\u03B7 \u03C4\u03B7\u03BD \u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1
|
||||
merge.submit=\u03A3\u03C5\u03B3\u03C7\u03CE\u03BD\u03B5\u03C5\u03C3\u03B7
|
||||
|
||||
|
||||
#pdfOrganiser
|
||||
pdfOrganiser.title=\u0394\u03B9\u03BF\u03C1\u03B3\u03B1\u03BD\u03C9\u03C4\u03AE\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2
|
||||
pdfOrganiser.header=\u0394\u03B9\u03BF\u03C1\u03B3\u03B1\u03BD\u03C9\u03C4\u03AE\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2 PDF
|
||||
pdfOrganiser.submit=\u0391\u03BD\u03B1\u03B4\u03B9\u03AC\u03C4\u03B1\u03BE\u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
|
||||
|
||||
#multiTool
|
||||
multiTool.title=PDF \u03A0\u03BF\u03BB\u03C5\u03B5\u03C1\u03B3\u03B1\u03BB\u03B5\u03AF\u03BF
|
||||
multiTool.header=PDF \u03A0\u03BF\u03BB\u03C5\u03B5\u03C1\u03B3\u03B1\u03BB\u03B5\u03AF\u03BF
|
||||
|
||||
|
||||
#pageRemover
|
||||
pageRemover.title=\u0391\u03C6\u03B1\u03B9\u03C1\u03B5\u03C4\u03AE\u03C2 \u03A3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
pageRemover.header=\u0391\u03C6\u03B1\u03B9\u03C1\u03B5\u03C4\u03AE\u03C2 \u03A3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD PDF
|
||||
pageRemover.pagesToDelete=\u03A3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2 \u03C0\u03C1\u03BF\u03C2 \u03B4\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE (\u0395\u03B9\u03C3\u03B1\u03B3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03BC\u03B9\u03B1 \u03BB\u03AF\u03C3\u03C4\u03B1 \u03BC\u03B5 \u03B1\u03C1\u03B9\u03B8\u03BC\u03BF\u03CD\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD \u03B4\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03BC\u03AD\u03BD\u03C9\u03BD \u03BC\u03B5 \u03BA\u03CC\u03BC\u03BC\u03B1\u03C4\u03B1):
|
||||
pageRemover.submit=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u03A3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD
|
||||
|
||||
|
||||
#rotate
|
||||
rotate.title=\u03A0\u03B5\u03C1\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE PDF
|
||||
rotate.header=\u03A0\u03B5\u03C1\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE PDF
|
||||
rotate.\u03A0\u03B5\u03C1\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE=\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE \u03B3\u03C9\u03BD\u03AF\u03B1\u03C2 \u03C0\u03B5\u03C1\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE\u03C2 (\u03C3\u03B5 \u03C0\u03BF\u03BB\u03BB\u03B1\u03C0\u03BB\u03AC\u03C3\u03B9\u03BF \u03C4\u03C9\u03BD 90 \u03BC\u03BF\u03B9\u03C1\u03CE\u03BD):
|
||||
rotate.submit=Rotate
|
||||
|
||||
|
||||
#merge
|
||||
split.title=\u0394\u03B9\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 PDF
|
||||
split.header=\u0394\u03B9\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 PDF
|
||||
split.desc.1=\u039F\u03B9 \u03B1\u03C1\u03B9\u03B8\u03BC\u03BF\u03AF \u03C0\u03BF\u03C5 \u03B5\u03C0\u03B9\u03BB\u03AD\u03B3\u03B5\u03C4\u03B5 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03BF \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2 \u03C3\u03C4\u03BF\u03BD \u03BF\u03C0\u03BF\u03AF\u03BF \u03B8\u03AD\u03BB\u03B5\u03C4\u03B5 \u03BD\u03B1 \u03BA\u03AC\u03BD\u03B5\u03C4\u03B5 \u03B4\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03BC\u03CC
|
||||
split.desc.2=\u03A9\u03C2 \u03B5\u03BA \u03C4\u03BF\u03CD\u03C4\u03BF\u03C5, \u03B7 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE 1,3,7-8 \u03B8\u03B1 \u03C7\u03C9\u03C1\u03AF\u03C3\u03B5\u03B9 \u03AD\u03BD\u03B1 \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF 10 \u03C3\u03B5\u03BB\u03AF\u03B4\u03C9\u03BD \u03C3\u03B5 6 \u03BE\u03B5\u03C7\u03C9\u03C1\u03B9\u03C3\u03C4\u03AC \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 PDF \u03BC\u03B5:
|
||||
split.desc.3=\u0388\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF #1: \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1 1
|
||||
split.desc.4=\u0388\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF #2: \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1 2 \u03BA\u03B1\u03B9 3
|
||||
split.desc.5=\u0388\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF #3: \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1 4, 5 \u03BA\u03C3\u03B9 6
|
||||
split.desc.6=\u0388\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF #4: \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1 7
|
||||
split.desc.7=\u0388\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF #5: \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1 8
|
||||
split.desc.8=\u0388\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF #6: \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1 9 \u03BA\u03B1\u03B9 10
|
||||
split.splitPages=\u0395\u03B9\u03C3\u03B1\u03B3\u03AC\u03B3\u03B5\u03C4\u03B5 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2 \u03B3\u03B9\u03B1 \u03B4\u03B9\u03B1\u03C7\u03C9\u03C1\u03B9\u03C3\u03BC\u03CC:
|
||||
split.submit=\u0394\u03B9\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7
|
||||
|
||||
|
||||
#merge
|
||||
imageToPDF.title=\u0395\u03B9\u03BA\u03CC\u03BD\u03B1 \u03C3\u03B5 PDF
|
||||
imageToPDF.header=\u0395\u03B9\u03BA\u03CC\u03BD\u03B1 \u03C3\u03B5 PDF
|
||||
imageToPDF.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
imageToPDF.selectLabel=\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AD\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE\u03C2 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2
|
||||
imageToPDF.fillPage=\u0393\u03AD\u03BC\u03B9\u03C3\u03BC\u03B1 \u03A3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2
|
||||
imageToPDF.fitDocumentToImage=\u03A0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03B3\u03AE \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2 \u03C3\u03B5 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1
|
||||
imageToPDF.maintainAspectRatio=\u0394\u03B9\u03B1\u03C4\u03AE\u03C1\u03B7\u03C3\u03B7 \u03B1\u03BD\u03B1\u03BB\u03BF\u03B3\u03B9\u03CE\u03BD \u03B4\u03B9\u03B1\u03C3\u03C4\u03AC\u03C3\u03B5\u03C9\u03BD
|
||||
imageToPDF.selectText.2=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u03C0\u03B5\u03C1\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE PDF
|
||||
imageToPDF.selectText.3=\u039B\u03BF\u03B3\u03B9\u03BA\u03AE \u03C0\u03BF\u03BB\u03BB\u03CE\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD (\u0395\u03BD\u03B5\u03C1\u03B3\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B1\u03B9 \u03BC\u03CC\u03BD\u03BF \u03B5\u03AC\u03BD \u03B5\u03C1\u03B3\u03AC\u03B6\u03B5\u03C3\u03C4\u03B5 \u03BC\u03B5 \u03C0\u03BF\u03BB\u03BB\u03AD\u03C2 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B5\u03C2)
|
||||
imageToPDF.selectText.4=\u03A3\u03C5\u03B3\u03C7\u03CE\u03BD\u03B5\u03C5\u03C3\u03B7 \u03C3\u03B5 \u03AD\u03BD\u03B1 PDF
|
||||
imageToPDF.selectText.5=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C3\u03B5 \u03BE\u03B5\u03C7\u03C9\u03C1\u03B9\u03C3\u03C4\u03AC \u03B1\u03C1\u03C7\u03B5\u03AF\u03B1 PDF
|
||||
|
||||
|
||||
#pdfToImage
|
||||
pdfToImage.title=PDF \u03C3\u03B5 \u0395\u03B9\u03BA\u03CC\u03BD\u03B1
|
||||
pdfToImage.header=PDF \u03C3\u03B5 \u0395\u03B9\u03BA\u03CC\u03BD\u03B1
|
||||
pdfToImage.selectText=\u039C\u03BF\u03C1\u03C6\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2
|
||||
pdfToImage.singleOrMultiple=\u03A4\u03CD\u03C0\u03BF\u03C2 \u03B1\u03C0\u03BF\u03C4\u03B5\u03BB\u03AD\u03C3\u03BC\u03B1\u03C4\u03BF\u03C2 \u03B1\u03C0\u03CC \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1 \u03C3\u03B5 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1
|
||||
pdfToImage.single=\u0395\u03BD\u03B9\u03B1\u03AF\u03B1 \u03BC\u03B5\u03B3\u03AC\u03BB\u03B7 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1 \u03C0\u03BF\u03C5 \u03C3\u03C5\u03BD\u03B4\u03C5\u03AC\u03B6\u03B5\u03B9 \u03CC\u03BB\u03B5\u03C2 \u03C4\u03B9\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B5\u03C2
|
||||
pdfToImage.multi=\u03A0\u03BF\u03BB\u03BB\u03B1\u03C0\u03BB\u03AD\u03C2 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B5\u03C2, \u03BC\u03AF\u03B1 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1 \u03B1\u03BD\u03AC \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1
|
||||
pdfToImage.colorType=\u03A4\u03CD\u03C0\u03BF\u03C2 \u03A7\u03C1\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
|
||||
pdfToImage.color=\u03A7\u03C1\u03CE\u03BC\u03B1
|
||||
pdfToImage.grey=\u039A\u03BB\u03AF\u03BC\u03B1\u03BA\u03B1 \u03C4\u03BF\u03C5 \u03B3\u03BA\u03C1\u03B9
|
||||
pdfToImage.blackwhite=\u0391\u03C3\u03C0\u03C1\u03CC\u03BC\u03B1\u03C5\u03C1\u03BF (\u039C\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03C7\u03B1\u03B8\u03BF\u03CD\u03BD \u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1!)
|
||||
pdfToImage.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
|
||||
|
||||
#addPassword
|
||||
addPassword.title=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD
|
||||
addPassword.header=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD (\u039A\u03C1\u03C5\u03C0\u03C4\u03BF\u03B3\u03C1\u03AC\u03C6\u03B7\u03C3\u03B7)
|
||||
addPassword.selectText.1=\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 PDF \u03B3\u03B9\u03B1 \u03BA\u03C1\u03C5\u03C0\u03C4\u03BF\u03B3\u03C1\u03AC\u03C6\u03B7\u03C3\u03B7
|
||||
addPassword.selectText.2=\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03A7\u03C1\u03AE\u03C3\u03C4\u03B7
|
||||
addPassword.selectText.3=\u039C\u03AE\u03BA\u03BF\u03C2 \u039A\u03BB\u03B5\u03B9\u03B4\u03B9\u03BF\u03CD \u039A\u03C1\u03C5\u03C0\u03C4\u03BF\u03B3\u03C1\u03AC\u03C6\u03B7\u03C3\u03B7\u03C2
|
||||
addPassword.selectText.4=\u039F\u03B9 \u03C5\u03C8\u03B7\u03BB\u03CC\u03C4\u03B5\u03C1\u03B5\u03C2 \u03C4\u03B9\u03BC\u03AD\u03C2 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B9\u03C3\u03C7\u03C5\u03C1\u03CC\u03C4\u03B5\u03C1\u03B5\u03C2, \u03B1\u03BB\u03BB\u03AC \u03BF\u03B9 \u03C7\u03B1\u03BC\u03B7\u03BB\u03CC\u03C4\u03B5\u03C1\u03B5\u03C2 \u03C4\u03B9\u03BC\u03AD\u03C2 \u03AD\u03C7\u03BF\u03C5\u03BD \u03BA\u03B1\u03BB\u03CD\u03C4\u03B5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03B1\u03C4\u03CC\u03C4\u03B7\u03C4\u03B1.
|
||||
addPassword.selectText.5=\u0394\u03B9\u03BA\u03B1\u03B9\u03CE\u03BC\u03B1\u03C4\u03B1 \u03B3\u03B9\u03B1 \u03C1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7 (\u03A3\u03C5\u03BD\u03B9\u03C3\u03C4\u03AC\u03C4\u03B1\u03B9 \u03BD\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF\u03C4\u03B1\u03B9 \u03BC\u03B1\u03B6\u03AF \u03BC\u03B5 \u03C4\u03BF\u03BD \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03BA\u03B1\u03C4\u03CC\u03C7\u03BF\u03C5 (Owner password)
|
||||
addPassword.selectText.6=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03C3\u03C5\u03BD\u03B1\u03C1\u03BC\u03BF\u03BB\u03CC\u03B3\u03B7\u03C3\u03B7\u03C2 \u03B5\u03B3\u03B3\u03C1\u03AC\u03C6\u03BF\u03C5
|
||||
addPassword.selectText.7=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03B5\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE\u03C2 \u03C0\u03B5\u03C1\u03B9\u03B5\u03C7\u03BF\u03BC\u03AD\u03BD\u03BF\u03C5
|
||||
addPassword.selectText.8=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03B5\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE\u03C2 \u03B3\u03B9\u03B1 \u03C0\u03C1\u03BF\u03C3\u03B2\u03B1\u03C3\u03B9\u03BC\u03CC\u03C4\u03B7\u03C4\u03B1
|
||||
addPassword.selectText.9=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03C3\u03C5\u03BC\u03C0\u03BB\u03AE\u03C1\u03C9\u03C3\u03B7\u03C2 \u03C6\u03CC\u03C1\u03BC\u03B1\u03C2
|
||||
addPassword.selectText.10=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03C1\u03BF\u03C0\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7\u03C2
|
||||
addPassword.selectText.11=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03C1\u03BF\u03C0\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7\u03C2 annotation
|
||||
addPassword.selectText.12=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03B5\u03BA\u03C4\u03CD\u03C0\u03C9\u03C3\u03B7\u03C2
|
||||
addPassword.selectText.13=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03B5\u03BA\u03C4\u03CD\u03C0\u03C9\u03C3\u03B7\u03C2 \u03C3\u03B5 \u03B4\u03B9\u03B1\u03C6\u03BF\u03C1\u03B5\u03C4\u03B9\u03BA\u03BF\u03CD\u03C2 \u03C4\u03CD\u03C0\u03BF\u03C5\u03C2 \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD
|
||||
addPassword.selectText.14=\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03BA\u03B1\u03C4\u03CC\u03C7\u03BF\u03C5
|
||||
addPassword.selectText.15=\u03A0\u03B5\u03C1\u03B9\u03BF\u03C1\u03AF\u03B6\u03B5\u03B9 \u03CC,\u03C4\u03B9 \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03B3\u03AF\u03BD\u03B5\u03B9 \u03BC\u03B5 \u03C4\u03BF \u03AD\u03B3\u03B3\u03C1\u03B1\u03C6\u03BF \u03BC\u03B5\u03C4\u03AC \u03C4\u03BF \u03AC\u03BD\u03BF\u03B9\u03B3\u03BC\u03B1 (\u0394\u03B5\u03BD \u03C5\u03C0\u03BF\u03C3\u03C4\u03B7\u03C1\u03AF\u03B6\u03B5\u03C4\u03B1\u03B9 \u03B1\u03C0\u03CC \u03CC\u03BB\u03BF\u03C5\u03C2 \u03C4\u03BF\u03C5\u03C2 \u03B1\u03BD\u03B1\u03B3\u03BD\u03CE\u03C3\u03C4\u03B5\u03C2 PDF)
|
||||
addPassword.selectText.16=\u03A0\u03B5\u03C1\u03B9\u03BF\u03C1\u03AF\u03B6\u03B5\u03B9 \u03C4\u03BF \u03AC\u03BD\u03BF\u03B9\u03B3\u03BC\u03B1 \u03C4\u03BF\u03C5 \u03AF\u03B4\u03B9\u03BF\u03C5 \u03C4\u03BF\u03C5 \u03B5\u03B3\u03B3\u03C1\u03AC\u03C6\u03BF\u03C5
|
||||
addPassword.submit=\u039A\u03C1\u03C5\u03C0\u03C4\u03BF\u03B3\u03C1\u03AC\u03C6\u03B7\u03C3\u03B7
|
||||
|
||||
|
||||
#watermark
|
||||
watermark.title=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A5\u03B4\u03B1\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
|
||||
watermark.header=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A5\u03B4\u03B1\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
|
||||
watermark.selectText.1=\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 PDF \u03B3\u03B9\u03B1 \u03C4\u03B7\u03BD \u03C0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C4\u03BF\u03C5 \u03C5\u03B4\u03B1\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2:
|
||||
watermark.selectText.2=\u039A\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03A5\u03B4\u03B1\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2:
|
||||
watermark.selectText.3=\u039C\u03AD\u03B3\u03B5\u03B8\u03BF\u03C2 \u039A\u03B5\u03B9\u03BC\u03AD\u03BD\u03BF\u03C5:
|
||||
watermark.selectText.4=\u03A0\u03B5\u03C1\u03B9\u03C3\u03C4\u03C1\u03BF\u03C6\u03AE (0-360):
|
||||
watermark.selectText.5=widthSpacer (\u039A\u03B5\u03BD\u03CC \u03BC\u03B5\u03C4\u03B1\u03BE\u03CD \u03BA\u03AC\u03B8\u03B5 \u03C5\u03B4\u03B1\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2 \u03BF\u03C1\u03B9\u03B6\u03CC\u03BD\u03C4\u03B9\u03B1):
|
||||
watermark.selectText.6=heightSpacer (\u039A\u03B5\u03BD\u03CC \u03BC\u03B5\u03C4\u03B1\u03BE\u03CD \u03BA\u03AC\u03B8\u03B5 \u03C5\u03B4\u03B1\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2 \u03BA\u03AC\u03B8\u03B5\u03C4\u03B1):
|
||||
watermark.selectText.7=\u0391\u03B4\u03B9\u03B1\u03C6\u03AC\u03BD\u03B5\u03B9\u03B1 (Opacity) (0% - 100%):
|
||||
watermark.selectText.8=\u03A4\u03CD\u03C0\u03BF\u03C2 \u03A5\u03B4\u03B1\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2:
|
||||
watermark.selectText.9=\u0395\u03B9\u03BA\u03CC\u03BD\u03B1 \u03A5\u03B4\u03B1\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2:
|
||||
watermark.submit=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03A5\u03B4\u03B1\u03C4\u03BF\u03B3\u03C1\u03B1\u03C6\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
|
||||
|
||||
|
||||
#Change permissions
|
||||
permissions.title=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u0394\u03B9\u03BA\u03B1\u03B9\u03C9\u03BC\u03AC\u03C4\u03C9\u03BD
|
||||
permissions.header=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u0394\u03B9\u03BA\u03B1\u03B9\u03C9\u03BC\u03AC\u03C4\u03C9\u03BD
|
||||
permissions.warning=\u03A0\u03C1\u03BF\u03B5\u03B9\u03B4\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7 \u03CC\u03C4\u03B9 \u03B1\u03C5\u03C4\u03AC \u03C4\u03B1 \u03B4\u03B9\u03BA\u03B1\u03B9\u03CE\u03BC\u03B1\u03C4\u03B1 \u03B4\u03B5\u03BD \u03B1\u03BB\u03BB\u03AC\u03B6\u03BF\u03C5\u03BD, \u03C3\u03C5\u03BD\u03B9\u03C3\u03C4\u03AC\u03C4\u03B1\u03B9 \u03BD\u03B1 \u03C4\u03B1 \u03BF\u03C1\u03AF\u03C3\u03B5\u03C4\u03B5 \u03BC\u03B5 \u03BA\u03C9\u03B4\u03B9\u03BA\u03CC \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2 \u03BC\u03AD\u03C3\u03C9 \u03C4\u03B7\u03C2 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7\u03C2 \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2
|
||||
permissions.selectText.1=\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 PDF \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B1\u03BB\u03BB\u03AC\u03BE\u03B5\u03C4\u03B5 \u03C4\u03B1 \u03B4\u03B9\u03BA\u03B1\u03B9\u03CE\u03BC\u03B1\u03C4\u03B1
|
||||
permissions.selectText.2=\u0394\u03B9\u03BA\u03B1\u03B9\u03CE\u03BC\u03B1\u03C4\u03B1 \u03B3\u03B9\u03B1 \u03C1\u03CD\u03B8\u03BC\u03B9\u03C3\u03B7
|
||||
permissions.selectText.3=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03C3\u03C5\u03BD\u03B1\u03C1\u03BC\u03BF\u03BB\u03CC\u03B3\u03B7\u03C3\u03B7\u03C2 \u03B5\u03B3\u03B3\u03C1\u03AC\u03C6\u03BF\u03C5
|
||||
permissions.selectText.4=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03B5\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE\u03C2 \u03C0\u03B5\u03C1\u03B9\u03B5\u03C7\u03BF\u03BC\u03AD\u03BD\u03BF\u03C5
|
||||
permissions.selectText.5=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03B5\u03BE\u03B1\u03B3\u03C9\u03B3\u03AE\u03C2 \u03B3\u03B9\u03B1 \u03C0\u03C1\u03BF\u03C3\u03B2\u03B1\u03C3\u03B9\u03BC\u03CC\u03C4\u03B7\u03C4\u03B1
|
||||
permissions.selectText.6=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03C3\u03C5\u03BC\u03C0\u03BB\u03AE\u03C1\u03C9\u03C3\u03B7\u03C2 \u03C6\u03CC\u03C1\u03BC\u03B1\u03C2
|
||||
permissions.selectText.7=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03C1\u03BF\u03C0\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7\u03C2
|
||||
permissions.selectText.8=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03C1\u03BF\u03C0\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7\u03C2 annotation
|
||||
permissions.selectText.9=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03B5\u03BA\u03C4\u03CD\u03C0\u03C9\u03C3\u03B7\u03C2
|
||||
permissions.selectText.10=\u0391\u03C0\u03BF\u03C4\u03C1\u03BF\u03C0\u03AE \u03B5\u03BA\u03C4\u03CD\u03C0\u03C9\u03C3\u03B7\u03C2 \u03C3\u03B5 \u03B4\u03B9\u03B1\u03C6\u03BF\u03C1\u03B5\u03C4\u03B9\u03BA\u03BF\u03CD\u03C2 \u03C4\u03CD\u03C0\u03BF\u03C5\u03C2 \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD
|
||||
permissions.submit=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE
|
||||
|
||||
|
||||
#remove password
|
||||
removePassword.title=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD
|
||||
removePassword.header=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7 \u039A\u03C9\u03B4\u03B9\u03BA\u03BF\u03CD (\u0391\u03C0\u03BF\u03BA\u03C1\u03C5\u03C0\u03C4\u03BF\u03B3\u03C1\u03AC\u03C6\u03B7\u03C3\u03B7)
|
||||
removePassword.selectText.1=\u0395\u03C0\u03B9\u03BB\u03AD\u03BE\u03C4\u03B5 PDF \u03B3\u03B9\u03B1 \u03B1\u03C0\u03BF\u03BA\u03C1\u03C5\u03C0\u03C4\u03BF\u03B3\u03C1\u03AC\u03C6\u03B7\u03C3\u03B7
|
||||
removePassword.selectText.2=\u039A\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2
|
||||
removePassword.submit=\u0391\u03C6\u03B1\u03AF\u03C1\u03B5\u03C3\u03B7
|
||||
|
||||
|
||||
#changeMetadata
|
||||
changeMetadata.title=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u039C\u03B5\u03C4\u03B1\u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD
|
||||
changeMetadata.header=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE \u039C\u03B5\u03C4\u03B1\u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD
|
||||
changeMetadata.selectText.1=\u03A0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB\u03BF\u03CD\u03BC\u03B5 \u03B5\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03C4\u03B5\u03AF\u03C4\u03B5 \u03C4\u03B9\u03C2 \u03BC\u03B5\u03C4\u03B1\u03B2\u03BB\u03B7\u03C4\u03AD\u03C2 \u03C0\u03BF\u03C5 \u03B8\u03AD\u03BB\u03B5\u03C4\u03B5 \u03BD\u03B1 \u03B1\u03BB\u03BB\u03AC\u03BE\u03B5\u03C4\u03B5
|
||||
changeMetadata.selectText.2=\u0394\u03B9\u03B1\u03B3\u03C1\u03B1\u03C6\u03AE \u03CC\u03BB\u03C9\u03BD \u03C4\u03C9\u03BD \u03BC\u03B5\u03C4\u03B1\u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD
|
||||
changeMetadata.selectText.3=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03C9\u03BD \u03BC\u03B5\u03C4\u03B1\u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD:
|
||||
changeMetadata.author=\u03A3\u03C5\u03BD\u03C4\u03AC\u03BA\u03C4\u03B7\u03C2:
|
||||
changeMetadata.creationDate=\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1\u03C2 (yyyy/MM/dd HH:mm:ss):
|
||||
changeMetadata.creator=\u0394\u03B7\u03BC\u03B9\u03BF\u03C5\u03C1\u03B3\u03CC\u03C2:
|
||||
changeMetadata.keywords=\u039B\u03AD\u03BE\u03B5\u03B9\u03C2-\u03BA\u03BB\u03B5\u03B9\u03B4\u03B9\u03AC:
|
||||
changeMetadata.modDate=\u0397\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03A4\u03C1\u03BF\u03C0\u03BF\u03C0\u03BF\u03AF\u03B7\u03C3\u03B7\u03C2 (yyyy/MM/dd HH:mm:ss):
|
||||
changeMetadata.producer=\u03A0\u03B1\u03C1\u03B1\u03B3\u03C9\u03B3\u03CC\u03C2:
|
||||
changeMetadata.subject=\u0398\u03AD\u03BC\u03B1:
|
||||
changeMetadata.title=\u03A4\u03AF\u03C4\u03BB\u03BF\u03C2:
|
||||
changeMetadata.trapped=Trapped:
|
||||
changeMetadata.selectText.4=\u0386\u03BB\u03BB\u03B1 \u03BC\u03B5\u03C4\u03B1\u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03B1:
|
||||
changeMetadata.selectText.5=\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03B5\u03B3\u03B3\u03C1\u03B1\u03C6\u03AE\u03C2 \u03C0\u03C1\u03BF\u03C3\u03B1\u03C1\u03BC\u03BF\u03C3\u03BC\u03AD\u03BD\u03C9\u03BD \u03BC\u03B5\u03C4\u03B1\u03B4\u03B5\u03B4\u03BF\u03BC\u03AD\u03BD\u03C9\u03BD
|
||||
changeMetadata.submit=\u0391\u03BB\u03BB\u03B1\u03B3\u03AE
|
||||
|
||||
|
||||
#pdfToPDFA
|
||||
pdfToPDFA.title=PDF \u03C3\u03B5 PDF/A
|
||||
pdfToPDFA.header=PDF \u03C3\u03B5 PDF/A
|
||||
pdfToPDFA.credit=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C5\u03C0\u03B7\u03C1\u03B5\u03C3\u03AF\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF OCRmyPDF \u03B3\u03B9\u03B1 PDF/A \u03BC\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
pdfToPDFA.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
|
||||
|
||||
#PDFToWord
|
||||
PDFToWord.title=PDF \u03C3\u03B5 Word
|
||||
PDFToWord.header=PDF \u03C3\u03B5 Word
|
||||
PDFToWord.selectText.1=\u03A4\u03CD\u03C0\u03BF\u03C2 \u0391\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 \u0395\u03BE\u03B1\u03B3\u03CC\u03BC\u03B5\u03BD\u03BF\u03C5
|
||||
PDFToWord.credit=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C5\u03C0\u03B7\u03C1\u03B5\u03C3\u03AF\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF LibreOffice \u03B3\u03B9\u03B1 \u03C4\u03B7 \u03BC\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD.
|
||||
PDFToWord.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
|
||||
|
||||
#PDFToPresentation
|
||||
PDFToPresentation.title=PDF \u03C3\u03B5 Powerpoint
|
||||
PDFToPresentation.header=PDF \u03C3\u03B5 Powerpoint
|
||||
PDFToPresentation.selectText.1=\u03A4\u03CD\u03C0\u03BF\u03C2 \u0391\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 \u0395\u03BE\u03B1\u03B3\u03CC\u03BC\u03B5\u03BD\u03BF\u03C5
|
||||
PDFToPresentation.credit=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C5\u03C0\u03B7\u03C1\u03B5\u03C3\u03AF\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF LibreOffice \u03B3\u03B9\u03B1 \u03C4\u03B7 \u03BC\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD.
|
||||
PDFToPresentation.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
|
||||
|
||||
#PDFToText
|
||||
PDFToText.title=PDF \u03C3\u03B5 RTF (\u039A\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF)
|
||||
PDFToText.header=PDF \u03C3\u03B5 RTF (\u039A\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF)
|
||||
PDFToText.selectText.1=\u03A4\u03CD\u03C0\u03BF\u03C2 \u0391\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 \u0395\u03BE\u03B1\u03B3\u03CC\u03BC\u03B5\u03BD\u03BF\u03C5
|
||||
PDFToText.credit=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C5\u03C0\u03B7\u03C1\u03B5\u03C3\u03AF\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF LibreOffice \u03B3\u03B9\u03B1 \u03C4\u03B7 \u03BC\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD.
|
||||
PDFToText.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
|
||||
|
||||
#PDFToHTML
|
||||
PDFToHTML.title=PDF \u03C3\u03B5 HTML
|
||||
PDFToHTML.header=PDF \u03C3\u03B5 HTML
|
||||
PDFToHTML.credit=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C5\u03C0\u03B7\u03C1\u03B5\u03C3\u03AF\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF LibreOffice \u03B3\u03B9\u03B1 \u03C4\u03B7 \u03BC\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD.
|
||||
PDFToHTML.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
|
||||
|
||||
#PDFToXML
|
||||
PDFToXML.title=PDF \u03C3\u03B5 XML
|
||||
PDFToXML.header=PDF \u03C3\u03B5 XML
|
||||
PDFToXML.credit=\u0391\u03C5\u03C4\u03AE \u03B7 \u03C5\u03C0\u03B7\u03C1\u03B5\u03C3\u03AF\u03B1 \u03C7\u03C1\u03B7\u03C3\u03B9\u03BC\u03BF\u03C0\u03BF\u03B9\u03B5\u03AF LibreOffice \u03B3\u03B9\u03B1 \u03C4\u03B7 \u03BC\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE \u03C4\u03C9\u03BD \u03B1\u03C1\u03C7\u03B5\u03AF\u03C9\u03BD.
|
||||
PDFToXML.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
|
||||
@@ -478,6 +478,7 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Multi Page Layout
|
||||
pageLayout.header=Multi Page Layout
|
||||
pageLayout.pagesPerSheet=Pages per sheet:
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Submit
|
||||
|
||||
|
||||
|
||||
@@ -126,6 +126,9 @@ adminUserSettings.submit=Save User
|
||||
# HOME-PAGE #
|
||||
#############
|
||||
home.desc=Your locally hosted one-stop-shop for all your PDF needs.
|
||||
home.viewPdf.title=View PDF
|
||||
home.viewPdf.desc=View, annotate, add text or images
|
||||
viewPdf.tags=view,read,annotate,text,image
|
||||
|
||||
|
||||
home.multiTool.title=PDF Multi Tool
|
||||
@@ -478,6 +481,10 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Multi Page Layout
|
||||
pageLayout.header=Multi Page Layout
|
||||
pageLayout.pagesPerSheet=Pages per sheet:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Submit
|
||||
|
||||
|
||||
@@ -625,7 +632,9 @@ merge.submit=Merge
|
||||
pdfOrganiser.title=Page Organizer
|
||||
pdfOrganiser.header=PDF Page Organizer
|
||||
pdfOrganiser.submit=Rearrange Pages
|
||||
|
||||
#view pdf
|
||||
viewPdf.title=View PDF
|
||||
viewPdf.header=View PDF
|
||||
|
||||
#multiTool
|
||||
multiTool.title=PDF Multi Tool
|
||||
@@ -665,9 +674,6 @@ split.submit=Split
|
||||
imageToPDF.title=Image to PDF
|
||||
imageToPDF.header=Image to PDF
|
||||
imageToPDF.submit=Convert
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -429,8 +429,8 @@ addPageNumbers.selectText.4=Número de inicio
|
||||
addPageNumbers.selectText.5=Páginas a numerar
|
||||
addPageNumbers.selectText.6=Texto personalizado
|
||||
addPageNumbers.customTextDesc=Texto personalizado
|
||||
addPageNumbers.numberPagesDesc=Qué páginas numerar, por defecto 'todas', también acepta 1-5 o 2,5,9 etc
|
||||
addPageNumbers.customNumberDesc=Por defecto a {n}, también acepta 'Página {n} de {total}', 'Texto-{n}', '{nombre de archivo}-{n}
|
||||
addPageNumbers.numberPagesDesc=Qué páginas numerar, por defecto 'all', también acepta 1-5 o 2,5,9 etc
|
||||
addPageNumbers.customNumberDesc=Por defecto a {n}, también acepta 'Página {n} de {total}', 'Texto-{n}', '{filename}-{n}
|
||||
addPageNumbers.submit=Añadir Números de Página
|
||||
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Diseño de varias páginas
|
||||
pageLayout.header=Diseño de varias páginas
|
||||
pageLayout.pagesPerSheet=Páginas por hoja:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Entregar
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=Dividir
|
||||
imageToPDF.title=Imagen a PDF
|
||||
imageToPDF.header=Imagen a PDF
|
||||
imageToPDF.submit=Convertir
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Hodia
|
||||
pageLayout.title=Hainbat orrialderen diseinua
|
||||
pageLayout.header=Hainbat orrialderen diseinua
|
||||
pageLayout.pagesPerSheet=Orrialdeak orriko:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Entregatu
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=Zatitu
|
||||
imageToPDF.title=Irudia PDF bihurtu
|
||||
imageToPDF.header=Irudia PDF bihurtu
|
||||
imageToPDF.submit=Bihurtu
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
###########
|
||||
# Generic #
|
||||
###########
|
||||
# the direction that the language is written (ltr=left to right, rtl = right to left)
|
||||
# the direction that the language is written (ltr = left to right, rtl = right to left)
|
||||
language.direction=ltr
|
||||
|
||||
pdfPrompt=Sélectionnez le(s) PDF
|
||||
@@ -43,11 +43,11 @@ green=Vert
|
||||
blue=Bleu
|
||||
custom=Personnalisé\u2026
|
||||
|
||||
changedCredsMessage=Credentials changed!
|
||||
notAuthenticatedMessage=User not authenticated.
|
||||
userNotFoundMessage=User not found.
|
||||
incorrectPasswordMessage=Current password is incorrect.
|
||||
usernameExistsMessage=New Username already exists.
|
||||
changedCredsMessage=Les identifiants ont été mis à jour\u00a0!
|
||||
notAuthenticatedMessage=Utilisateur non authentifié.
|
||||
userNotFoundMessage=Utilisateur non trouvé.
|
||||
incorrectPasswordMessage=Le mot de passe actuel est incorrect.
|
||||
usernameExistsMessage=Le nouveau nom d\u2019utilisateur existe déjà.
|
||||
|
||||
|
||||
|
||||
@@ -77,14 +77,14 @@ settings.accountSettings=Paramètres du compte
|
||||
|
||||
|
||||
|
||||
changeCreds.title=Change Credentials
|
||||
changeCreds.header=Update Your Account Details
|
||||
changeCreds.changeUserAndPassword=You are using default login credentials. Please enter a new password (and username if wanted)
|
||||
changeCreds.newUsername=New Username
|
||||
changeCreds.oldPassword=Current Password
|
||||
changeCreds.newPassword=New Password
|
||||
changeCreds.confirmNewPassword=Confirm New Password
|
||||
changeCreds.submit=Submit Changes
|
||||
changeCreds.title=Modifiez vos identifiants
|
||||
changeCreds.header=Mettez à jour vos identifiants de connexion
|
||||
changeCreds.changeUserAndPassword=Vous utilisez les identifiants de connexion par défaut. Veuillez entrer un nouveau mot de passe (et nom d\u2019utilisateur si vous le souhaitez)
|
||||
changeCreds.newUsername=Nouveau nom d\u2019utilisateur
|
||||
changeCreds.oldPassword=Mot de passe actuel
|
||||
changeCreds.newPassword=Nouveau mot de passe
|
||||
changeCreds.confirmNewPassword=Confirmer le nouveau mot de passe
|
||||
changeCreds.submit=Soumettre les modifications
|
||||
|
||||
|
||||
|
||||
@@ -119,7 +119,7 @@ adminUserSettings.role=Rôle
|
||||
adminUserSettings.actions=Actions
|
||||
adminUserSettings.apiUser=Utilisateur API limité
|
||||
adminUserSettings.webOnlyUser=Utilisateur Web uniquement
|
||||
adminUserSettings.forceChange=Force user to change username/password on login
|
||||
adminUserSettings.forceChange=Forcer l\u2019utilisateur à changer son nom d\u2019utilisateur/mot de passe lors de la connexion
|
||||
adminUserSettings.submit=Ajouter
|
||||
|
||||
#############
|
||||
@@ -478,6 +478,7 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Fusionner des pages
|
||||
pageLayout.header=Fusionner des pages
|
||||
pageLayout.pagesPerSheet=Pages par feuille
|
||||
pageLayout.addBorder=Ajouter des bordures
|
||||
pageLayout.submit=Fusionner
|
||||
|
||||
|
||||
@@ -557,7 +558,7 @@ ScannerImageSplit.selectText.8=Définit la surface de contour minimale pour une
|
||||
ScannerImageSplit.selectText.9=Taille de la bordure
|
||||
ScannerImageSplit.selectText.10=Définit la taille de la bordure ajoutée et supprimée pour éviter les bordures blanches dans la sortie (par défaut\u00a0: 1).
|
||||
|
||||
|
||||
|
||||
#OCR
|
||||
ocr.title=OCR / Nettoyage des numérisations
|
||||
ocr.header=OCR (Reconnaissance optique de caractères) / Nettoyage des numérisations
|
||||
@@ -665,19 +666,16 @@ split.submit=Diviser
|
||||
imageToPDF.title=Image en PDF
|
||||
imageToPDF.header=Image en PDF
|
||||
imageToPDF.submit=Convertir
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
imageToPDF.maintainAspectRatio=Maintain Aspect Ratios
|
||||
imageToPDF.selectLabel=Options d\u2019ajustement de l\u2019image
|
||||
imageToPDF.fillPage=Remplir la page
|
||||
imageToPDF.fitDocumentToImage=Ajuster la page à l\u2019image
|
||||
imageToPDF.maintainAspectRatio=Maintenir les proportions
|
||||
imageToPDF.selectText.2=Rotation automatique du PDF
|
||||
imageToPDF.selectText.3=Logique multi-fichiers (uniquement activée si vous travaillez avec plusieurs images)
|
||||
imageToPDF.selectText.4=Fusionner en un seul PDF
|
||||
imageToPDF.selectText.5=Convertir en PDF séparés
|
||||
|
||||
|
||||
|
||||
|
||||
#pdfToImage
|
||||
pdfToImage.title=Image en PDF
|
||||
pdfToImage.header=Image en PDF
|
||||
|
||||
@@ -429,8 +429,8 @@ addPageNumbers.selectText.4=Numero di partenza
|
||||
addPageNumbers.selectText.5=Pagine da numerare
|
||||
addPageNumbers.selectText.6=Testo personalizzato
|
||||
addPageNumbers.customTextDesc=Testo personalizzato
|
||||
addPageNumbers.numberPagesDesc=Quali pagine numerare, impostazione predefinita "tutte", accetta anche 1-5 o 2,5,9 ecc
|
||||
addPageNumbers.customNumberDesc=Il valore predefinito è {n}, accetta anche 'Pagina {n} di {totale}', 'Testo-{n}', '{nomefile}-{n}
|
||||
addPageNumbers.numberPagesDesc=Quali pagine numerare, impostazione predefinita "all", accetta anche 1-5 o 2,5,9 ecc
|
||||
addPageNumbers.customNumberDesc=Il valore predefinito è {n}, accetta anche 'Pagina {n} di {total}', 'Testo-{n}', '{filename}-{n}
|
||||
addPageNumbers.submit=Aggiungi numeri di pagina
|
||||
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Layout multipagina
|
||||
pageLayout.header=Layout multipagina
|
||||
pageLayout.pagesPerSheet=Pagine per foglio:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Invia
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=Dividi
|
||||
imageToPDF.title=Immagine a PDF
|
||||
imageToPDF.header=Immagine a PDF
|
||||
imageToPDF.submit=Converti
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=パイプライン
|
||||
pageLayout.title=マルチページレイアウト
|
||||
pageLayout.header=マルチページレイアウト
|
||||
pageLayout.pagesPerSheet=1枚あたりのページ数:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=送信
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=分割
|
||||
imageToPDF.title=画像をPDFに変換
|
||||
imageToPDF.header=画像をPDFに変換
|
||||
imageToPDF.submit=変換
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Multi Page Layout
|
||||
pageLayout.header=Multi Page Layout
|
||||
pageLayout.pagesPerSheet=Pages per sheet:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Submit
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=분할
|
||||
imageToPDF.title=이미지를 PDF로 변환
|
||||
imageToPDF.header=이미지를 PDF로 변환
|
||||
imageToPDF.submit=변환하기
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Pijplijn
|
||||
pageLayout.title=Meerdere pagina indeling
|
||||
pageLayout.header=Meerdere pagina indeling
|
||||
pageLayout.pagesPerSheet=Pagina''s per vel:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Indienen
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=Splitsen
|
||||
imageToPDF.title=Afbeelding naar PDF
|
||||
imageToPDF.header=Afbeelding naar PDF
|
||||
imageToPDF.submit=Omzetten
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Układ wielu stron
|
||||
pageLayout.header=Układ wielu stron
|
||||
pageLayout.pagesPerSheet=Stron na jednym arkuszu:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Wykonaj
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=Podziel
|
||||
imageToPDF.title=Obraz na PDF
|
||||
imageToPDF.header=Obraz na PDF
|
||||
imageToPDF.submit=Konwertuj
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Layout de Múltiplas Páginas
|
||||
pageLayout.header=Layout de Múltiplas Páginas
|
||||
pageLayout.pagesPerSheet=Páginas por folha:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Enviar
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=Dividir
|
||||
imageToPDF.title=Imagem para PDF
|
||||
imageToPDF.header=Converter Imagem para PDF
|
||||
imageToPDF.submit=Converter
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Multi Page Layout
|
||||
pageLayout.header=Multi Page Layout
|
||||
pageLayout.pagesPerSheet=Pages per sheet:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Submit
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=Împarte
|
||||
imageToPDF.title=Imagine în PDF
|
||||
imageToPDF.header=Imagine în PDF
|
||||
imageToPDF.submit=Convertă
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -20,7 +20,7 @@ close=Закрыть
|
||||
filesSelected=файлов выбрано
|
||||
noFavourites=Нет избранного
|
||||
bored=Скучно ждать?
|
||||
alphabet=\u0430\u043B\u0444\u0430\u0432\u0438\u0442
|
||||
alphabet=Алфавит
|
||||
downloadPdf=Скачать PDF
|
||||
text=Текст
|
||||
font=Шрифт
|
||||
@@ -58,7 +58,7 @@ navbar.convert=Конвертировать
|
||||
navbar.security=Безопасность
|
||||
navbar.other=Другое
|
||||
navbar.darkmode=Темный режим
|
||||
navbar.pageOps=Операции со страницей
|
||||
navbar.pageOps=Операции с страницей
|
||||
navbar.settings=Настройки
|
||||
|
||||
#############
|
||||
@@ -254,77 +254,77 @@ home.compare.title=Сравнение
|
||||
home.compare.desc=Сравнивает и показывает различия между двумя PDF-документами
|
||||
compare.tags=differentiate,contrast,changes,analysis
|
||||
|
||||
home.certSign.title=Sign with Certificate
|
||||
home.certSign.desc=Signs a PDF with a Certificate/Key (PEM/P12)
|
||||
home.certSign.title=Подписать сертификатом
|
||||
home.certSign.desc=Подписать PDF сертификатом/ключом (PEM/P12)
|
||||
certSign.tags=authenticate,PEM,P12,official,encrypt
|
||||
|
||||
home.pageLayout.title=Multi-Page Layout
|
||||
home.pageLayout.desc=Merge multiple pages of a PDF document into a single page
|
||||
home.pageLayout.title=Объединить страницы
|
||||
home.pageLayout.desc=Объединение нескольких страниц документа PDF в одну страницу
|
||||
pageLayout.tags=merge,composite,single-view,organize
|
||||
|
||||
home.scalePages.title=Adjust page size/scale
|
||||
home.scalePages.desc=Change the size/scale of page and/or its contents.
|
||||
home.scalePages.title=Изменить размер/масштаб страницы
|
||||
home.scalePages.desc=Изменить размер/масштаб страницы и/или ее содержимого.
|
||||
scalePages.tags=resize,modify,dimension,adapt
|
||||
|
||||
home.pipeline.title=Pipeline (Advanced)
|
||||
home.pipeline.desc=Run multiple actions on PDFs by defining pipeline scripts
|
||||
home.pipeline.title=Конвейер (расширенный)
|
||||
home.pipeline.desc=Выполняйте несколько действий с PDF-файлами, определяя конвейерные сценарии.
|
||||
pipeline.tags=automate,sequence,scripted,batch-process
|
||||
|
||||
home.add-page-numbers.title=Add Page Numbers
|
||||
home.add-page-numbers.desc=Add Page numbers throughout a document in a set location
|
||||
home.add-page-numbers.title=Добавить номера страниц
|
||||
home.add-page-numbers.desc=Добавляйте номера страниц по всему документу в заданном месте
|
||||
add-page-numbers.tags=paginate,label,organize,index
|
||||
|
||||
home.auto-rename.title=Auto Rename PDF File
|
||||
home.auto-rename.desc=Auto renames a PDF file based on its detected header
|
||||
home.auto-rename.title=Автоматическое переименование PDF-файла
|
||||
home.auto-rename.desc=Автоматическое переименование файла PDF на основе его обнаруженного заголовка
|
||||
auto-rename.tags=auto-detect,header-based,organize,relabel
|
||||
|
||||
home.adjust-contrast.title=Adjust Colors/Contrast
|
||||
home.adjust-contrast.desc=Adjust Contrast, Saturation and Brightness of a PDF
|
||||
home.adjust-contrast.title=Настройка цветов/контрастности
|
||||
home.adjust-contrast.desc=Настройка контрастность, насыщенность и яркость PDF-файла
|
||||
adjust-contrast.tags=color-correction,tune,modify,enhance
|
||||
|
||||
home.crop.title=Crop PDF
|
||||
home.crop.desc=Crop a PDF to reduce its size (maintains text!)
|
||||
home.crop.title=Обрезать PDF-файл
|
||||
home.crop.desc=Обрезать PDF-файл, чтобы уменьшить его размер (текст сохраняется!)
|
||||
crop.tags=trim,shrink,edit,shape
|
||||
|
||||
home.autoSplitPDF.title=Auto Split Pages
|
||||
home.autoSplitPDF.desc=Auto Split Scanned PDF with physical scanned page splitter QR Code
|
||||
home.autoSplitPDF.title=Автоматическое разделение страниц
|
||||
home.autoSplitPDF.desc=Автоматическое разделение отсканированного PDF-файла с помощью физического разделителя отсканированных страниц QR-кода
|
||||
autoSplitPDF.tags=QR-based,separate,scan-segment,organize
|
||||
|
||||
home.sanitizePdf.title=Sanitize
|
||||
home.sanitizePdf.desc=Remove scripts and other elements from PDF files
|
||||
home.sanitizePdf.title=Дезинфицировать
|
||||
home.sanitizePdf.desc=Удаление скриптов и других элементов из PDF-файлов
|
||||
sanitizePdf.tags=clean,secure,safe,remove-threats
|
||||
|
||||
home.URLToPDF.title=URL/Website To PDF
|
||||
home.URLToPDF.desc=Converts any http(s)URL to PDF
|
||||
home.URLToPDF.title=URL/сайт в PDF
|
||||
home.URLToPDF.desc=Конвертирует любой http(s)URL в PDF
|
||||
URLToPDF.tags=web-capture,save-page,web-to-doc,archive
|
||||
|
||||
home.HTMLToPDF.title=HTML to PDF
|
||||
home.HTMLToPDF.desc=Converts any HTML file or zip to PDF
|
||||
home.HTMLToPDF.title=HTML в PDF
|
||||
home.HTMLToPDF.desc=Конвертирует любой HTML-файл или zip-файл в PDF.
|
||||
HTMLToPDF.tags=markup,web-content,transformation,convert
|
||||
|
||||
|
||||
home.MarkdownToPDF.title=Markdown to PDF
|
||||
home.MarkdownToPDF.desc=Converts any Markdown file to PDF
|
||||
home.MarkdownToPDF.title=Markdown в PDF
|
||||
home.MarkdownToPDF.desc=Конвертирует любой файл Markdown в PDF
|
||||
MarkdownToPDF.tags=markup,web-content,transformation,convert
|
||||
|
||||
|
||||
home.getPdfInfo.title=Get ALL Info on PDF
|
||||
home.getPdfInfo.desc=Grabs any and all information possible on PDFs
|
||||
home.getPdfInfo.title=Получите ВСЮ информацию в формате PDF
|
||||
home.getPdfInfo.desc=Собирает любую возможную информацию в PDF-файлах.
|
||||
getPdfInfo.tags=infomation,data,stats,statistics
|
||||
|
||||
|
||||
home.extractPage.title=Extract page(s)
|
||||
home.extractPage.desc=Extracts select pages from PDF
|
||||
home.extractPage.title=Извлечь страницу(ы)
|
||||
home.extractPage.desc=Извлекает выбранные страницы из PDF
|
||||
extractPage.tags=extract
|
||||
|
||||
|
||||
home.PdfToSinglePage.title=PDF to Single Large Page
|
||||
home.PdfToSinglePage.desc=Merges all PDF pages into one large single page
|
||||
home.PdfToSinglePage.title=PDF в одну большую страницу
|
||||
home.PdfToSinglePage.desc=Объединяет все страницы PDF в одну большую страницу.
|
||||
PdfToSinglePage.tags=single page
|
||||
|
||||
|
||||
home.showJS.title=Show Javascript
|
||||
home.showJS.desc=Searches and displays any JS injected into a PDF
|
||||
home.showJS.title=Показать Javascript
|
||||
home.showJS.desc=Ищет и отображает любой JS, внедренный в PDF-файл.
|
||||
showJS.tags=JS
|
||||
|
||||
home.autoRedact.title=Auto Redact
|
||||
@@ -359,115 +359,116 @@ autoRedact.submitButton=Submit
|
||||
|
||||
|
||||
#showJS
|
||||
showJS.title=Show Javascript
|
||||
showJS.header=Show Javascript
|
||||
showJS.downloadJS=Download Javascript
|
||||
showJS.submit=Show
|
||||
showJS.title=Показать Javascript
|
||||
showJS.header=Показать Javascript
|
||||
showJS.downloadJS=Скачать Javascript
|
||||
showJS.submit=Показать
|
||||
|
||||
|
||||
|
||||
#pdfToSinglePage
|
||||
pdfToSinglePage.title=PDF To Single Page
|
||||
pdfToSinglePage.header=PDF To Single Page
|
||||
pdfToSinglePage.submit=Convert To Single Page
|
||||
pdfToSinglePage.title=PDF на одну страницу
|
||||
pdfToSinglePage.header=PDF на одну страницу
|
||||
pdfToSinglePage.submit=Преобразовать в одну страницу
|
||||
|
||||
|
||||
#pageExtracter
|
||||
pageExtracter.title=Extract Pages
|
||||
pageExtracter.header=Extract Pages
|
||||
pageExtracter.submit=Extract
|
||||
pageExtracter.title=Извлечь страницы
|
||||
pageExtracter.header=Извлечь страницы
|
||||
pageExtracter.submit=Извлечь
|
||||
|
||||
|
||||
#getPdfInfo
|
||||
getPdfInfo.title=Get Info on PDF
|
||||
getPdfInfo.header=Get Info on PDF
|
||||
getPdfInfo.submit=Get Info
|
||||
getPdfInfo.downloadJson=Download JSON
|
||||
getPdfInfo.title=Получить информацию в PDF
|
||||
getPdfInfo.header=Получить информацию в PDF
|
||||
getPdfInfo.submit=Получить информацию
|
||||
getPdfInfo.downloadJson=Скачать JSON
|
||||
|
||||
|
||||
#markdown-to-pdf
|
||||
MarkdownToPDF.title=Markdown To PDF
|
||||
MarkdownToPDF.header=Markdown To PDF
|
||||
MarkdownToPDF.submit=Convert
|
||||
MarkdownToPDF.help=Work in progress
|
||||
MarkdownToPDF.credit=Uses WeasyPrint
|
||||
MarkdownToPDF.title=Markdown в PDF
|
||||
MarkdownToPDF.header=Markdown в PDF
|
||||
MarkdownToPDF.submit=Конвертировать
|
||||
MarkdownToPDF.help=Работа в процессе
|
||||
MarkdownToPDF.credit=Использует WeasyPrint
|
||||
|
||||
|
||||
|
||||
#url-to-pdf
|
||||
URLToPDF.title=URL To PDF
|
||||
URLToPDF.header=URL To PDF
|
||||
URLToPDF.submit=Convert
|
||||
URLToPDF.credit=Uses WeasyPrint
|
||||
URLToPDF.title=URL в PDF
|
||||
URLToPDF.header=URL в PDF
|
||||
URLToPDF.submit=Конвертировать
|
||||
URLToPDF.credit=Использует WeasyPrint
|
||||
|
||||
|
||||
#html-to-pdf
|
||||
HTMLToPDF.title=HTML To PDF
|
||||
HTMLToPDF.header=HTML To PDF
|
||||
HTMLToPDF.help=Accepts HTML files and ZIPs containing html/css/images etc required
|
||||
HTMLToPDF.submit=Convert
|
||||
HTMLToPDF.credit=Uses WeasyPrint
|
||||
HTMLToPDF.title=HTML в PDF
|
||||
HTMLToPDF.header=HTML в PDF
|
||||
HTMLToPDF.help=Принимает файлы HTML и ZIP-файлы, содержащие html/css/изображения и т. д.
|
||||
HTMLToPDF.submit=Конвертировать
|
||||
HTMLToPDF.credit=Использует WeasyPrint
|
||||
|
||||
|
||||
#sanitizePDF
|
||||
sanitizePDF.title=Sanitize PDF
|
||||
sanitizePDF.header=Sanitize a PDF file
|
||||
sanitizePDF.selectText.1=Remove JavaScript actions
|
||||
sanitizePDF.selectText.2=Remove embedded files
|
||||
sanitizePDF.selectText.3=Remove metadata
|
||||
sanitizePDF.selectText.4=Remove links
|
||||
sanitizePDF.selectText.5=Remove fonts
|
||||
sanitizePDF.submit=Sanitize PDF
|
||||
sanitizePDF.title=Дезинфицировать PDF
|
||||
sanitizePDF.header=Дезинфицировать PDF файл
|
||||
sanitizePDF.selectText.1=Удалить JavaScript
|
||||
sanitizePDF.selectText.2=Удалить встроенные файлы
|
||||
sanitizePDF.selectText.3=Удалить метаданные
|
||||
sanitizePDF.selectText.4=Удалить ссылки
|
||||
sanitizePDF.selectText.5=Удалить шрифты
|
||||
sanitizePDF.submit=Дезинфицировать
|
||||
|
||||
|
||||
#addPageNumbers
|
||||
addPageNumbers.title=Add Page Numbers
|
||||
addPageNumbers.header=Add Page Numbers
|
||||
addPageNumbers.selectText.1=Select PDF file:
|
||||
addPageNumbers.selectText.2=Margin Size
|
||||
addPageNumbers.selectText.3=Position
|
||||
addPageNumbers.selectText.4=Starting Number
|
||||
addPageNumbers.selectText.5=Pages to Number
|
||||
addPageNumbers.selectText.6=Custom Text
|
||||
addPageNumbers.title=Добавить номера страниц
|
||||
addPageNumbers.header=Добавить номера страниц
|
||||
addPageNumbers.selectText.1=Выберите PDF-файл:
|
||||
addPageNumbers.selectText.2=Размер поля
|
||||
addPageNumbers.selectText.3=Позиция
|
||||
addPageNumbers.selectText.4=Стартовый номер
|
||||
addPageNumbers.selectText.5=Страницы для нумерации
|
||||
addPageNumbers.selectText.6=Свой текст
|
||||
addPageNumbers.customTextDesc=Custom Text
|
||||
addPageNumbers.numberPagesDesc=Which pages to number, default 'all', also accepts 1-5 or 2,5,9 etc
|
||||
addPageNumbers.customNumberDesc=Defaults to {n}, also accepts 'Page {n} of {total}', 'Text-{n}', '{filename}-{n}
|
||||
addPageNumbers.submit=Add Page Numbers
|
||||
addPageNumbers.submit=Добавить номера страниц
|
||||
|
||||
|
||||
#auto-rename
|
||||
auto-rename.title=Auto Rename
|
||||
auto-rename.header=Auto Rename PDF
|
||||
auto-rename.submit=Auto Rename
|
||||
auto-rename.title=Автоматическое переименование
|
||||
auto-rename.header=Автоматическое переименование PDF
|
||||
auto-rename.submit=Автоматическое переименование
|
||||
|
||||
|
||||
#adjustContrast
|
||||
adjustContrast.title=Adjust Contrast
|
||||
adjustContrast.header=Adjust Contrast
|
||||
adjustContrast.contrast=Contrast:
|
||||
adjustContrast.brightness=Brightness:
|
||||
adjustContrast.saturation=Saturation:
|
||||
adjustContrast.download=Download
|
||||
adjustContrast.title=Настройка контрастности
|
||||
adjustContrast.header=Настройка контрастности
|
||||
adjustContrast.contrast=Контраст:
|
||||
adjustContrast.brightness=Яркость:
|
||||
adjustContrast.saturation=Насыщенность:
|
||||
adjustContrast.download=Скачать
|
||||
|
||||
|
||||
#crop
|
||||
crop.title=Crop
|
||||
crop.header=Crop Image
|
||||
crop.submit=Submit
|
||||
crop.title=Обрезать
|
||||
crop.header=Обрезать изображение
|
||||
crop.submit=Отправить
|
||||
|
||||
|
||||
#autoSplitPDF
|
||||
autoSplitPDF.title=Auto Split PDF
|
||||
autoSplitPDF.header=Auto Split PDF
|
||||
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||
autoSplitPDF.duplexMode=Duplex Mode (Front and back scanning)
|
||||
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||
autoSplitPDF.submit=Submit
|
||||
autoSplitPDF.title=Автоматическое разделение PDF
|
||||
autoSplitPDF.header=Автоматическое разделение PDF
|
||||
autoSplitPDF.description=Распечатывайте, вставляйте, сканируйте, загружайте и позволяйте нам автоматически разделять ваши документы. Никакой ручной сортировки работы не требуется.
|
||||
autoSplitPDF.selectText.1=Печатайте несколько раздельных листов (подойдет черно-белый вариант).
|
||||
autoSplitPDF.selectText.2=Сканируйте все документы одновременно, вставив между ними разделительный лист.
|
||||
autoSplitPDF.selectText.3=Загрузите один большой отсканированный PDF-файл, и пусть Stirling PDF сделает все остальное.
|
||||
autoSplitPDF.selectText.4=Разделительные страницы автоматически обнаруживаются и удаляются, гарантируя аккуратный окончательный документ.
|
||||
autoSplitPDF.formPrompt=Отравить PDF-файл, содержащий разделители страниц Stirling-PDF:
|
||||
autoSplitPDF.duplexMode=Дуплексный режим (сканирование спереди и сзади)
|
||||
autoSplitPDF.dividerDownload1=Скачать 'Auto Splitter Divider (minimal).pdf'
|
||||
autoSplitPDF.dividerDownload2=Скачать 'Auto Splitter Divider (with instructions).pdf'
|
||||
autoSplitPDF.submit=Отравить
|
||||
|
||||
|
||||
#pipeline
|
||||
@@ -475,18 +476,21 @@ pipeline.title=Pipeline
|
||||
|
||||
|
||||
#pageLayout
|
||||
pageLayout.title=Multi Page Layout
|
||||
pageLayout.header=Multi Page Layout
|
||||
pageLayout.pagesPerSheet=Pages per sheet:
|
||||
pageLayout.title=Многостраничный макет
|
||||
pageLayout.header=Многостраничный макет
|
||||
pageLayout.pagesPerSheet=Страниц на одном листе:
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Submit
|
||||
pageLayout.submit=Отправить
|
||||
|
||||
|
||||
|
||||
#scalePages
|
||||
scalePages.title=Adjust page-scale
|
||||
scalePages.header=Adjust page-scale
|
||||
scalePages.pageSize=Size of a page of the document.
|
||||
scalePages.scaleFactor=Zoom level (crop) of a page.
|
||||
scalePages.submit=Submit
|
||||
scalePages.title=Отрегулировать масштаб страницы
|
||||
scalePages.header=Отрегулировать масштаб страницы
|
||||
scalePages.pageSize=Размер страницы документа.
|
||||
scalePages.scaleFactor=Уровень масштабирования (обрезки) страницы.
|
||||
scalePages.submit=Отправить
|
||||
|
||||
|
||||
#certSign
|
||||
@@ -665,9 +669,6 @@ split.submit=Разделить
|
||||
imageToPDF.title=Изображение в PDF
|
||||
imageToPDF.header=Изображение в PDF
|
||||
imageToPDF.submit=Конвертировать
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -478,6 +478,10 @@ pipeline.title=Pipeline
|
||||
pageLayout.title=Multi Page Layout
|
||||
pageLayout.header=Multi Page Layout
|
||||
pageLayout.pagesPerSheet=Pages per sheet:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=Add Borders
|
||||
pageLayout.submit=Submit
|
||||
|
||||
|
||||
@@ -665,9 +669,6 @@ split.submit=Dela
|
||||
imageToPDF.title=Bild till PDF
|
||||
imageToPDF.header=Bild till PDF
|
||||
imageToPDF.submit=Konvertera
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
|
||||
@@ -12,30 +12,30 @@ genericSubmit=提交
|
||||
processTimeWarning=警告:此过程可能需要多达一分钟,具体时间取决于文件大小
|
||||
pageOrderPrompt=页面顺序(输入逗号分隔的页码列表):
|
||||
goToPage=到
|
||||
true=True
|
||||
false=False
|
||||
true=对
|
||||
false=错
|
||||
unknown=未知
|
||||
save=保存
|
||||
close=关闭
|
||||
filesSelected=\u9009\u62E9\u7684\u6587\u4EF6
|
||||
noFavourites=\u6CA1\u6709\u6DFB\u52A0\u6536\u85CF\u5939
|
||||
bored=\u65E0\u804A\u7B49\u5F85\uFF1F
|
||||
alphabet=\u5B57\u6BCD\u8868
|
||||
downloadPdf=\u4E0B\u8F7DPDF
|
||||
text=\u6587\u672C
|
||||
font=\u5B57\u4F53
|
||||
filesSelected=选中的文件
|
||||
noFavourites=没有添加收藏夹
|
||||
bored=无聊等待吗?
|
||||
alphabet=字母表
|
||||
downloadPdf=下载PDF
|
||||
text=文本
|
||||
font=字体
|
||||
selectFillter=-- 选择--
|
||||
pageNum=页码
|
||||
sizes.small=Small
|
||||
sizes.medium=Medium
|
||||
sizes.large=Large
|
||||
sizes.x-large=X-Large
|
||||
error.pdfPassword=The PDF Document is passworded and either the password was not provided or was incorrect
|
||||
delete=Delete
|
||||
username=Username
|
||||
password=Password
|
||||
welcome=Welcome
|
||||
property=Property
|
||||
sizes.small=小型尺寸
|
||||
sizes.medium=中型尺寸
|
||||
sizes.large=大型尺寸
|
||||
sizes.x-large=稍大型尺寸
|
||||
error.pdfPassword=PDF 文档有密码,未提供密码或密码不正确
|
||||
delete=删除
|
||||
username=用户名
|
||||
password=密码
|
||||
welcome=欢迎
|
||||
property=资产
|
||||
black=Black
|
||||
white=White
|
||||
red=Red
|
||||
@@ -43,11 +43,11 @@ green=Green
|
||||
blue=Blue
|
||||
custom=Custom...
|
||||
|
||||
changedCredsMessage=Credentials changed!
|
||||
notAuthenticatedMessage=User not authenticated.
|
||||
userNotFoundMessage=User not found.
|
||||
incorrectPasswordMessage=Current password is incorrect.
|
||||
usernameExistsMessage=New Username already exists.
|
||||
changedCredsMessage=凭证已更改!
|
||||
notAuthenticatedMessage=用户未经过身份验证。
|
||||
userNotFoundMessage=未找到用户。
|
||||
incorrectPasswordMessage=当前密码不正确。
|
||||
usernameExistsMessage=新用户名已存在。
|
||||
|
||||
|
||||
|
||||
@@ -72,264 +72,254 @@ settings.downloadOption.1=在同一窗口打开
|
||||
settings.downloadOption.2=在新窗口中打开
|
||||
settings.downloadOption.3=下载文件
|
||||
settings.zipThreshold=当下载的文件数量超过限制时,将文件压缩。
|
||||
settings.signOut=Sign Out
|
||||
settings.accountSettings=Account Settings
|
||||
settings.signOut=登出
|
||||
settings.accountSettings=帐号设定
|
||||
|
||||
|
||||
|
||||
changeCreds.title=Change Credentials
|
||||
changeCreds.header=Update Your Account Details
|
||||
changeCreds.changeUserAndPassword=You are using default login credentials. Please enter a new password (and username if wanted)
|
||||
changeCreds.newUsername=New Username
|
||||
changeCreds.oldPassword=Current Password
|
||||
changeCreds.newPassword=New Password
|
||||
changeCreds.confirmNewPassword=Confirm New Password
|
||||
changeCreds.submit=Submit Changes
|
||||
changeCreds.title=更改凭证
|
||||
changeCreds.header=更新您的账户详情
|
||||
changeCreds.changeUserAndPassword=您正在使用默认登录凭据。请输入新密码(如果需要,还可以输入新用户名)
|
||||
changeCreds.newUsername=新用户名
|
||||
changeCreds.oldPassword=当前密码
|
||||
changeCreds.newPassword=新密码
|
||||
changeCreds.confirmNewPassword=确认新密码
|
||||
changeCreds.submit=提交更改
|
||||
|
||||
|
||||
|
||||
account.title=Account Settings
|
||||
account.accountSettings=Account Settings
|
||||
account.adminSettings=Admin Settings - View and Add Users
|
||||
account.userControlSettings=User Control Settings
|
||||
account.changeUsername=Change Username
|
||||
account.changeUsername=Change Username
|
||||
account.password=Confirmation Password
|
||||
account.oldPassword=Old password
|
||||
account.newPassword=New Password
|
||||
account.changePassword=Change Password
|
||||
account.confirmNewPassword=Confirm New Password
|
||||
account.signOut=Sign Out
|
||||
account.yourApiKey=Your API Key
|
||||
account.syncTitle=Sync browser settings with Account
|
||||
account.settingsCompare=Settings Comparison:
|
||||
account.property=Property
|
||||
account.webBrowserSettings=Web Browser Setting
|
||||
account.syncToBrowser=Sync Account -> Browser
|
||||
account.syncToAccount=Sync Account <- Browser
|
||||
account.title=帐号设定
|
||||
account.accountSettings=帐号设定
|
||||
account.adminSettings=管理员设置 - 查看和添加用户
|
||||
account.userControlSettings=用户控制设置
|
||||
account.changeUsername=更改用户名
|
||||
account.password=确认密码
|
||||
account.oldPassword=旧密码
|
||||
account.newPassword=新密码
|
||||
account.changePassword=更改密码
|
||||
account.confirmNewPassword=确认新密码
|
||||
account.signOut=退出登录
|
||||
account.yourApiKey=您的 API 密钥
|
||||
account.syncTitle=将浏览器设置与账户同步
|
||||
account.settingsCompare=设置比较:
|
||||
account.property=属性
|
||||
account.webBrowserSettings=Web 浏览器设置
|
||||
account.syncToBrowser=同步账户 -> 浏览器
|
||||
account.syncToAccount=同步账户 <- 浏览器
|
||||
|
||||
|
||||
adminUserSettings.title=User Control Settings
|
||||
adminUserSettings.header=Admin User Control Settings
|
||||
adminUserSettings.admin=Admin
|
||||
adminUserSettings.user=User
|
||||
adminUserSettings.addUser=Add New User
|
||||
adminUserSettings.roles=Roles
|
||||
adminUserSettings.role=Role
|
||||
adminUserSettings.actions=Actions
|
||||
adminUserSettings.apiUser=Limited API User
|
||||
adminUserSettings.webOnlyUser=Web Only User
|
||||
adminUserSettings.forceChange=Force user to change username/password on login
|
||||
adminUserSettings.submit=Save User
|
||||
adminUserSettings.title=用户控制设置
|
||||
adminUserSettings.header=管理员用户控制设置
|
||||
adminUserSettings.admin=管理员
|
||||
adminUserSettings.user=用户
|
||||
adminUserSettings.addUser=添加新用户
|
||||
adminUserSettings.roles=角色
|
||||
adminUserSettings.role=角色
|
||||
adminUserSettings.actions=操作
|
||||
adminUserSettings.apiUser=有限 API 用户
|
||||
adminUserSettings.webOnlyUser=仅限 Web 用户
|
||||
adminUserSettings.forceChange=强制用户在登录时更改用户名/密码
|
||||
adminUserSettings.submit=保存用户
|
||||
|
||||
#############
|
||||
# HOME-PAGE #
|
||||
#############
|
||||
home.desc=您的本地托管一站式服务,满足您的所有PDF需求。
|
||||
home.desc=CZL一站式服务,满足您的所有PDF需求。
|
||||
|
||||
|
||||
home.multiTool.title=PDF多功能工具
|
||||
home.multiTool.desc=合并、旋转、重新排列和删除PDF页面
|
||||
multiTool.tags=Multi Tool,Multi operation,UI,click drag,front end,client side
|
||||
multiTool.tags=多工具,多操作,用户界面,点击拖动,前端,客户端
|
||||
|
||||
home.merge.title=合并
|
||||
home.merge.desc=轻松合并多个PDF为一个。
|
||||
merge.tags=merge,Page operations,Back end,server side
|
||||
merge.tags=合并,页面操作,后端,服务器端
|
||||
|
||||
home.split.title=拆分
|
||||
home.split.desc=将 PDF 拆分为多个文档。
|
||||
split.tags=Page operations,divide,Multi Page,cut,server side
|
||||
split.tags=页面操作,划分,多页面,剪切,服务器端
|
||||
|
||||
home.rotate.title=旋转
|
||||
home.rotate.desc=旋转PDF。
|
||||
rotate.tags=server side
|
||||
rotate.tags=服务器端
|
||||
|
||||
|
||||
home.imageToPdf.title=转换图像到PDF
|
||||
home.imageToPdf.desc=转换图像(PNG, JPEG, GIF)到 PDF。
|
||||
imageToPdf.tags=conversion,img,jpg,picture,photo
|
||||
home.imageToPdf.desc=将图像(PNG、JPEG、GIF)转换为PDF。
|
||||
imageToPdf.tags=转换、图像、JPG、图片、照片
|
||||
|
||||
home.pdfToImage.title=转换PDF到图像
|
||||
home.pdfToImage.desc=转换PDF到图像(PNG, JPEG, GIF)
|
||||
pdfToImage.tags=conversion,img,jpg,picture,photo
|
||||
home.pdfToImage.desc=将PDF转换为图像(PNG、JPEG、GIF)。
|
||||
pdfToImage.tags=转换、图像、JPG、图片、照片
|
||||
|
||||
home.pdfOrganiser.title=整理
|
||||
home.pdfOrganiser.desc=按任何顺序删除/重新排列页面。
|
||||
pdfOrganiser.tags=duplex,even,odd,sort,move
|
||||
|
||||
home.pdfOrganiser.desc=按任意顺序删除/重新排列页面。
|
||||
pdfOrganiser.tags=双面、偶数、奇数、排序、移动
|
||||
|
||||
home.addImage.title=在PDF中添加图片
|
||||
home.addImage.desc=将图像添加到PDF的设定位置上
|
||||
addImage.tags=img,jpg,picture,photo
|
||||
home.addImage.desc=将图像添加到PDF的指定位置。
|
||||
addImage.tags=图像、JPG、图片、照片
|
||||
|
||||
home.watermark.title=添加水印
|
||||
home.watermark.desc=在PDF中添加一个自定义的水印。
|
||||
watermark.tags=Text,repeating,label,own,copyright,trademark,img,jpg,picture,photo
|
||||
home.watermark.desc=在PDF中添加自定义水印。
|
||||
watermark.tags=文本、重复、标签、自定义、版权、商标、图像、JPG、图片、照片
|
||||
|
||||
home.permissions.title=更改权限
|
||||
home.permissions.desc=改变你的PDF文档的权限。
|
||||
permissions.tags=read,write,edit,print
|
||||
|
||||
home.permissions.desc=更改PDF文档的权限。
|
||||
permissions.tags=阅读、写入、编辑、打印
|
||||
|
||||
home.removePages.title=删除
|
||||
home.removePages.desc=从你的PDF文档中删除不需要的页面。
|
||||
removePages.tags=Remove pages,delete pages
|
||||
home.removePages.desc=从PDF文档中删除不需要的页面。
|
||||
removePages.tags=删除页面、删除
|
||||
|
||||
home.addPassword.title=添加密码
|
||||
home.addPassword.desc=用密码来加密你的PDF文档。
|
||||
addPassword.tags=secure,security
|
||||
home.addPassword.desc=使用密码对PDF文档进行加密。
|
||||
addPassword.tags=安全、密码、加密
|
||||
|
||||
home.removePassword.title=删除密码
|
||||
home.removePassword.desc=从你的PDF文档中移除密码保护。
|
||||
removePassword.tags=secure,Decrypt,security,unpassword,delete password
|
||||
home.removePassword.desc=从PDF文档中移除密码保护。
|
||||
removePassword.tags=安全、解密、密码、安全性、删除密码
|
||||
|
||||
home.compressPdfs.title=压缩
|
||||
home.compressPdfs.desc=压缩PDF文件以减少其文件大小。
|
||||
compressPdfs.tags=squish,small,tiny
|
||||
|
||||
home.compressPdfs.desc=压缩PDF文件以减小文件大小。
|
||||
compressPdfs.tags=压缩、小、微小
|
||||
|
||||
home.changeMetadata.title=更改元数据
|
||||
home.changeMetadata.desc=更改/删除/添加PDF文档的元数据。
|
||||
changeMetadata.tags==Title,author,date,creation,time,publisher,producer,stats
|
||||
changeMetadata.tags=标题、作者、日期、创建、时间、发布者、制作人、统计数据
|
||||
|
||||
home.fileToPDF.title=将文件转换为PDF文件
|
||||
home.fileToPDF.desc=将几乎所有文件转换为PDF(DOCX、PNG、XLS、PPT、TXT等)
|
||||
fileToPDF.tags=transformation,format,document,picture,slide,text,conversion,office,docs,word,excel,powerpoint
|
||||
home.fileToPDF.desc=将几乎所有文件转换为PDF(DOCX、PNG、XLS、PPT、TXT等)。
|
||||
fileToPDF.tags=转换、格式、文档、图片、幻灯片、文本、转换、办公室、文档、Word、Excel、PowerPoint
|
||||
|
||||
home.ocr.title=运行OCR/清理扫描
|
||||
home.ocr.desc=清理和检测PDF中的文本图像,并将其重新添加为文本。
|
||||
ocr.tags=recognition,text,image,scan,read,identify,detection,editable
|
||||
home.ocr.desc=清理和识别PDF中的图像文本,并将其转换为可编辑文本。
|
||||
ocr.tags=识别、文本、图像、扫描、阅读、识别、检测、可编辑
|
||||
|
||||
|
||||
home.extractImages.title=提取图像
|
||||
home.extractImages.desc=从PDF中提取所有的图像并将其保存到压缩包中。
|
||||
extractImages.tags=picture,photo,save,archive,zip,capture,grab
|
||||
home.extractImages.desc=从PDF中提取所有图像并保存到压缩包中。
|
||||
extractImages.tags=图片、照片、保存、归档、压缩包、截取、抓取
|
||||
|
||||
home.pdfToPDFA.title=PDF To PDF/A
|
||||
home.pdfToPDFA.desc=将PDF转换为PDF/A以便长期保存
|
||||
pdfToPDFA.tags=archive,long-term,standard,conversion,storage,preservation
|
||||
home.pdfToPDFA.desc=将PDF转换为PDF/A以进行长期保存。
|
||||
pdfToPDFA.tags=归档、长期、标准、转换、存储、保存
|
||||
|
||||
home.PDFToWord.title=PDF to Word
|
||||
home.PDFToWord.title=PDF转Word
|
||||
home.PDFToWord.desc=将PDF转换为Word格式(DOC、DOCX和ODT)。
|
||||
PDFToWord.tags=doc,docx,odt,word,transformation,format,conversion,office,microsoft,docfile
|
||||
PDFToWord.tags=doc、docx、odt、word、转换、格式、办公、Microsoft、文档
|
||||
|
||||
home.PDFToPresentation.title=PDF To Presentation
|
||||
home.PDFToPresentation.desc=将PDF转换成演示文稿格式(PPT、PPTX和ODP)。
|
||||
PDFToPresentation.tags=slides,show,office,microsoft
|
||||
home.PDFToPresentation.title=PDF转演示文稿
|
||||
home.PDFToPresentation.desc=将PDF转换为演示文稿格式(PPT、PPTX和ODP)。
|
||||
PDFToPresentation.tags=幻灯片、展示、办公、Microsoft
|
||||
|
||||
home.PDFToText.title=PDF to RTF (Text)
|
||||
home.PDFToText.desc=将PDF转换为文本或RTF格式
|
||||
PDFToText.tags=richformat,richtextformat,rich text format
|
||||
home.PDFToText.title=PDF转RTF(文本)
|
||||
home.PDFToText.desc=将PDF转换为文本或RTF格式。
|
||||
PDFToText.tags=富文本格式、RTF、富文本格式
|
||||
|
||||
home.PDFToHTML.title=PDF To HTML
|
||||
home.PDFToHTML.desc=将PDF转换为HTML格式
|
||||
PDFToHTML.tags=web content,browser friendly
|
||||
home.PDFToHTML.title=PDF转HTML
|
||||
home.PDFToHTML.desc=将PDF转换为HTML格式。
|
||||
PDFToHTML.tags=网页内容、浏览器友好
|
||||
|
||||
home.PDFToXML.title=PDF转XML
|
||||
home.PDFToXML.desc=将PDF转换为XML格式。
|
||||
PDFToXML.tags=数据提取、结构化内容、互操作、转换
|
||||
|
||||
home.PDFToXML.title=PDF To XML
|
||||
home.PDFToXML.desc=将PDF转换为XML格式
|
||||
PDFToXML.tags=data-extraction,structured-content,interop,transformation,convert
|
||||
home.ScannerImageSplit.title=检测/分割扫描图像
|
||||
home.ScannerImageSplit.desc=从一张照片或PDF中分割出多张照片。
|
||||
ScannerImageSplit.tags=分离、自动检测、扫描、多张照片、整理
|
||||
|
||||
home.ScannerImageSplit.title=检测/分割扫描的照片
|
||||
home.ScannerImageSplit.desc=从一张照片/PDF中分割出多张照片
|
||||
ScannerImageSplit.tags=separate,auto-detect,scans,multi-photo,organize
|
||||
home.sign.title=标志
|
||||
home.sign.desc=通过绘图、文字或图像向PDF添加签名
|
||||
sign.tags=授权、缩写、手绘签名、文本签名、图像签名
|
||||
|
||||
home.sign.title=\u6807\u5FD7
|
||||
home.sign.desc=\u901A\u8FC7\u7ED8\u56FE\u3001\u6587\u672C\u6216\u56FE\u50CF\u5411 PDF \u6DFB\u52A0\u7B7E\u540D
|
||||
sign.tags=authorize,initials,drawn-signature,text-sign,image-signature
|
||||
home.flatten.title=展平
|
||||
home.flatten.desc=从PDF中删除所有互动元素和表单
|
||||
flatten.tags=静态、停用、非交互、简化
|
||||
|
||||
home.flatten.title=\u5C55\u5E73
|
||||
home.flatten.desc=\u4ECE PDF \u4E2D\u5220\u9664\u6240\u6709\u4EA4\u4E92\u5143\u7D20\u548C\u8868\u5355
|
||||
flatten.tags=static,deactivate,non-interactive,streamline
|
||||
home.repair.title=修复
|
||||
home.repair.desc=尝试修复损坏/损坏的PDF
|
||||
repair.tags=修复、恢复、纠正、恢复
|
||||
|
||||
home.repair.title=\u4FEE\u590D
|
||||
home.repair.desc=\u5C1D\u8BD5\u4FEE\u590D\u635F\u574F/\u635F\u574F\u7684 PDF
|
||||
repair.tags=fix,restore,correction,recover
|
||||
home.removeBlanks.title=删除空白页
|
||||
home.removeBlanks.desc=检测并删除文档中的空白页
|
||||
removeBlanks.tags=清理、简化、非内容、整理
|
||||
|
||||
home.removeBlanks.title=\u5220\u9664\u7A7A\u767D\u9875
|
||||
home.removeBlanks.desc=\u68C0\u6D4B\u5E76\u5220\u9664\u6587\u6863\u4E2D\u7684\u7A7A\u767D\u9875
|
||||
removeBlanks.tags=cleanup,streamline,non-content,organize
|
||||
home.compare.title=比较
|
||||
home.compare.desc=比较并显示两个PDF文档之间的差异
|
||||
compare.tags=区分、对比、更改、分析
|
||||
|
||||
home.compare.title=\u6BD4\u8F83
|
||||
home.compare.desc=\u6BD4\u8F83\u5E76\u663E\u793A 2 \u4E2A PDF \u6587\u6863\u4E4B\u95F4\u7684\u5DEE\u5F02
|
||||
compare.tags=differentiate,contrast,changes,analysis
|
||||
home.certSign.title=使用证书签署
|
||||
home.certSign.desc=使用证书/密钥(PEM/P12)对PDF进行签署
|
||||
certSign.tags=身份验证、PEM、P12、官方、加密
|
||||
|
||||
home.certSign.title=Sign with Certificate
|
||||
home.certSign.desc=Signs a PDF with a Certificate/Key (PEM/P12)
|
||||
certSign.tags=authenticate,PEM,P12,official,encrypt
|
||||
home.pageLayout.title=多页布局
|
||||
home.pageLayout.desc=将PDF文档的多个页面合并成一页
|
||||
pageLayout.tags=合并、组合、单视图、整理
|
||||
|
||||
home.pageLayout.title=Multi-Page Layout
|
||||
home.pageLayout.desc=Merge multiple pages of a PDF document into a single page
|
||||
pageLayout.tags=merge,composite,single-view,organize
|
||||
home.scalePages.title=调整页面尺寸/缩放
|
||||
home.scalePages.desc=调整页面及/或其内容的尺寸/缩放
|
||||
scalePages.tags=调整大小、修改、尺寸、适应
|
||||
|
||||
home.scalePages.title=Adjust page size/scale
|
||||
home.scalePages.desc=Change the size/scale of page and/or its contents.
|
||||
scalePages.tags=resize,modify,dimension,adapt
|
||||
home.pipeline.title=管道(高级版)
|
||||
home.pipeline.desc=通过定义管道脚本在PDF上运行多个操作
|
||||
pipeline.tags=自动化、顺序、脚本化、批处理
|
||||
|
||||
home.pipeline.title=Pipeline (Advanced)
|
||||
home.pipeline.desc=Run multiple actions on PDFs by defining pipeline scripts
|
||||
pipeline.tags=automate,sequence,scripted,batch-process
|
||||
home.add-page-numbers.title=添加页码
|
||||
home.add-page-numbers.desc=在文档的指定位置添加页码
|
||||
add-page-numbers.tags=分页、标签、整理、索引
|
||||
|
||||
home.add-page-numbers.title=Add Page Numbers
|
||||
home.add-page-numbers.desc=Add Page numbers throughout a document in a set location
|
||||
add-page-numbers.tags=paginate,label,organize,index
|
||||
home.auto-rename.title=自动重命名PDF文件
|
||||
home.auto-rename.desc=根据检测到的标题自动对PDF文件进行重命名
|
||||
auto-rename.tags=自动检测、基于标题、整理、重新标记
|
||||
|
||||
home.auto-rename.title=Auto Rename PDF File
|
||||
home.auto-rename.desc=Auto renames a PDF file based on its detected header
|
||||
auto-rename.tags=auto-detect,header-based,organize,relabel
|
||||
home.adjust-contrast.title=调整颜色/对比度
|
||||
home.adjust-contrast.desc=调整PDF的对比度、饱和度和亮度
|
||||
adjust-contrast.tags=颜色校正、调节、修改、增强
|
||||
|
||||
home.adjust-contrast.title=Adjust Colors/Contrast
|
||||
home.adjust-contrast.desc=Adjust Contrast, Saturation and Brightness of a PDF
|
||||
adjust-contrast.tags=color-correction,tune,modify,enhance
|
||||
home.crop.title=裁剪PDF
|
||||
home.crop.desc=裁剪PDF以减小其文件大小(保留文本!)
|
||||
crop.tags=修剪、缩小、编辑、形状
|
||||
|
||||
home.crop.title=Crop PDF
|
||||
home.crop.desc=Crop a PDF to reduce its size (maintains text!)
|
||||
crop.tags=trim,shrink,edit,shape
|
||||
home.autoSplitPDF.title=自动拆分页面
|
||||
home.autoSplitPDF.desc=使用物理扫描页面分割器QR代码自动拆分扫描的PDF
|
||||
autoSplitPDF.tags=基于QR码、分离、扫描分割、整理
|
||||
|
||||
home.autoSplitPDF.title=Auto Split Pages
|
||||
home.autoSplitPDF.desc=Auto Split Scanned PDF with physical scanned page splitter QR Code
|
||||
autoSplitPDF.tags=QR-based,separate,scan-segment,organize
|
||||
home.sanitizePdf.title=清理
|
||||
home.sanitizePdf.desc=从PDF文件中删除脚本和其他元素
|
||||
sanitizePdf.tags=清理、安全、安全、删除威胁
|
||||
|
||||
home.sanitizePdf.title=Sanitize
|
||||
home.sanitizePdf.desc=Remove scripts and other elements from PDF files
|
||||
sanitizePdf.tags=clean,secure,safe,remove-threats
|
||||
home.URLToPDF.title=URL/网站转PDF
|
||||
home.URLToPDF.desc=将任何http(s)URL转换为PDF
|
||||
URLToPDF.tags=网页捕获、保存网页、网页转文档、归档
|
||||
|
||||
home.URLToPDF.title=URL/Website To PDF
|
||||
home.URLToPDF.desc=Converts any http(s)URL to PDF
|
||||
URLToPDF.tags=web-capture,save-page,web-to-doc,archive
|
||||
home.HTMLToPDF.title=HTML转PDF
|
||||
home.HTMLToPDF.desc=将任何HTML文件或zip文件转换为PDF
|
||||
HTMLToPDF.tags=标记、网页内容、转换、转换
|
||||
|
||||
home.HTMLToPDF.title=HTML to PDF
|
||||
home.HTMLToPDF.desc=Converts any HTML file or zip to PDF
|
||||
HTMLToPDF.tags=markup,web-content,transformation,convert
|
||||
home.MarkdownToPDF.title=Markdown转PDF
|
||||
home.MarkdownToPDF.desc=将任何Markdown文件转换为PDF
|
||||
MarkdownToPDF.tags=标记、网页内容、转换、转换
|
||||
|
||||
home.getPdfInfo.title=获取PDF的所有信息
|
||||
home.getPdfInfo.desc=获取PDF的所有可能的信息
|
||||
getPdfInfo.tags=信息、数据、统计、统计数据
|
||||
|
||||
home.MarkdownToPDF.title=Markdown to PDF
|
||||
home.MarkdownToPDF.desc=Converts any Markdown file to PDF
|
||||
MarkdownToPDF.tags=markup,web-content,transformation,convert
|
||||
home.extractPage.title=提取页面
|
||||
home.extractPage.desc=从PDF中提取选定的页面
|
||||
extractPage.tags=提取
|
||||
|
||||
home.PdfToSinglePage.title=PDF转单一大页
|
||||
home.PdfToSinglePage.desc=将所有PDF页面合并为一个大的单页
|
||||
PdfToSinglePage.tags=单页
|
||||
|
||||
home.getPdfInfo.title=Get ALL Info on PDF
|
||||
home.getPdfInfo.desc=Grabs any and all information possible on PDFs
|
||||
getPdfInfo.tags=infomation,data,stats,statistics
|
||||
home.showJS.title=显示JavaScript
|
||||
home.showJS.desc=搜索并显示嵌入到PDF中的任何JavaScript代码
|
||||
showJS.tags=JavaScript
|
||||
|
||||
|
||||
home.extractPage.title=Extract page(s)
|
||||
home.extractPage.desc=Extracts select pages from PDF
|
||||
extractPage.tags=extract
|
||||
|
||||
|
||||
home.PdfToSinglePage.title=PDF to Single Large Page
|
||||
home.PdfToSinglePage.desc=Merges all PDF pages into one large single page
|
||||
PdfToSinglePage.tags=single page
|
||||
|
||||
|
||||
home.showJS.title=Show Javascript
|
||||
home.showJS.desc=Searches and displays any JS injected into a PDF
|
||||
showJS.tags=JS
|
||||
|
||||
home.autoRedact.title=Auto Redact
|
||||
home.autoRedact.desc=Auto Redacts(Blacks out) text in a PDF based on input text
|
||||
showJS.tags=JS
|
||||
home.autoRedact.title=自动删除
|
||||
home.autoRedact.desc=根据输入文本自动删除(覆盖)PDF中的文本
|
||||
showJS.tags=JavaScript
|
||||
|
||||
###########################
|
||||
# #
|
||||
@@ -337,156 +327,160 @@ showJS.tags=JS
|
||||
# #
|
||||
###########################
|
||||
#login
|
||||
login.title=Sign in
|
||||
login.signin=Sign in
|
||||
login.rememberme=Remember me
|
||||
login.invalid=Invalid username or password.
|
||||
login.locked=Your account has been locked.
|
||||
login.signinTitle=Please sign in
|
||||
login.title=登录
|
||||
login.signin=登录
|
||||
login.rememberme=记住我
|
||||
login.invalid=用户名或密码无效。
|
||||
login.locked=您的账户已被锁定。
|
||||
login.signinTitle=请登录
|
||||
|
||||
|
||||
#auto-redact
|
||||
autoRedact.title=Auto Redact
|
||||
autoRedact.header=Auto Redact
|
||||
autoRedact.colorLabel=Colour
|
||||
autoRedact.textsToRedactLabel=Text to Redact (line-separated)
|
||||
autoRedact.textsToRedactPlaceholder=e.g. \nConfidential \nTop-Secret
|
||||
autoRedact.useRegexLabel=Use Regex
|
||||
autoRedact.wholeWordSearchLabel=Whole Word Search
|
||||
autoRedact.customPaddingLabel=Custom Extra Padding
|
||||
autoRedact.convertPDFToImageLabel=Convert PDF to PDF-Image (Used to remove text behind the box)
|
||||
autoRedact.submitButton=Submit
|
||||
autoRedact.title=自动删除
|
||||
autoRedact.header=自动删除
|
||||
autoRedact.colorLabel=颜色
|
||||
autoRedact.textsToRedactLabel=要删除的文本(每行一个)
|
||||
autoRedact.textsToRedactPlaceholder=例如:\n保密\n绝密
|
||||
autoRedact.useRegexLabel=使用正则表达式
|
||||
autoRedact.wholeWordSearchLabel=全字匹配
|
||||
autoRedact.customPaddingLabel=自定义额外间距
|
||||
autoRedact.convertPDFToImageLabel=将PDF转换为PDF-Image(用于删除方框后面的文本)
|
||||
autoRedact.submitButton=提交
|
||||
|
||||
|
||||
#showJS
|
||||
showJS.title=Show Javascript
|
||||
showJS.header=Show Javascript
|
||||
showJS.downloadJS=Download Javascript
|
||||
showJS.submit=Show
|
||||
showJS.title=显示 JavaScript
|
||||
showJS.header=显示 JavaScript
|
||||
showJS.downloadJS=下载 JavaScript
|
||||
showJS.submit=显示
|
||||
|
||||
|
||||
#pdfToSinglePage
|
||||
pdfToSinglePage.title=PDF To Single Page
|
||||
pdfToSinglePage.header=PDF To Single Page
|
||||
pdfToSinglePage.submit=Convert To Single Page
|
||||
pdfToSinglePage.title=PDF转为单页
|
||||
pdfToSinglePage.header=PDF转为单页
|
||||
pdfToSinglePage.submit=转为单页
|
||||
|
||||
|
||||
#pageExtracter
|
||||
pageExtracter.title=Extract Pages
|
||||
pageExtracter.header=Extract Pages
|
||||
pageExtracter.submit=Extract
|
||||
pageExtracter.title=提取页面
|
||||
pageExtracter.header=提取页面
|
||||
pageExtracter.submit=提取
|
||||
|
||||
|
||||
#getPdfInfo
|
||||
getPdfInfo.title=Get Info on PDF
|
||||
getPdfInfo.header=Get Info on PDF
|
||||
getPdfInfo.submit=Get Info
|
||||
getPdfInfo.downloadJson=Download JSON
|
||||
getPdfInfo.title=获取PDF信息
|
||||
getPdfInfo.header=获取PDF信息
|
||||
getPdfInfo.submit=获取信息
|
||||
getPdfInfo.downloadJson=下载JSON
|
||||
|
||||
|
||||
#markdown-to-pdf
|
||||
MarkdownToPDF.title=Markdown To PDF
|
||||
MarkdownToPDF.header=Markdown To PDF
|
||||
MarkdownToPDF.submit=Convert
|
||||
MarkdownToPDF.help=Work in progress
|
||||
MarkdownToPDF.credit=Uses WeasyPrint
|
||||
MarkdownToPDF.title=Markdown转PDF
|
||||
MarkdownToPDF.header=Markdown转PDF
|
||||
MarkdownToPDF.submit=转换
|
||||
MarkdownToPDF.help=正在努力中
|
||||
MarkdownToPDF.credit=使用WeasyPrint
|
||||
|
||||
|
||||
|
||||
#url-to-pdf
|
||||
URLToPDF.title=URL To PDF
|
||||
URLToPDF.header=URL To PDF
|
||||
URLToPDF.submit=Convert
|
||||
URLToPDF.credit=Uses WeasyPrint
|
||||
URLToPDF.title=URL转PDF
|
||||
URLToPDF.header=URL转PDF
|
||||
URLToPDF.submit=转换
|
||||
URLToPDF.credit=使用WeasyPrint
|
||||
|
||||
|
||||
#html-to-pdf
|
||||
HTMLToPDF.title=HTML To PDF
|
||||
HTMLToPDF.header=HTML To PDF
|
||||
HTMLToPDF.help=Accepts HTML files and ZIPs containing html/css/images etc required
|
||||
HTMLToPDF.submit=Convert
|
||||
HTMLToPDF.credit=Uses WeasyPrint
|
||||
HTMLToPDF.title=HTML转PDF
|
||||
HTMLToPDF.header=HTML转PDF
|
||||
HTMLToPDF.help=接受HTML文件和包含所需的html/css/images等的ZIP文件
|
||||
HTMLToPDF.submit=转换
|
||||
HTMLToPDF.credit=使用WeasyPrint
|
||||
|
||||
|
||||
#sanitizePDF
|
||||
sanitizePDF.title=Sanitize PDF
|
||||
sanitizePDF.header=Sanitize a PDF file
|
||||
sanitizePDF.selectText.1=Remove JavaScript actions
|
||||
sanitizePDF.selectText.2=Remove embedded files
|
||||
sanitizePDF.selectText.3=Remove metadata
|
||||
sanitizePDF.selectText.4=Remove links
|
||||
sanitizePDF.selectText.5=Remove fonts
|
||||
sanitizePDF.submit=Sanitize PDF
|
||||
sanitizePDF.title=清理PDF
|
||||
sanitizePDF.header=清理PDF文件
|
||||
sanitizePDF.selectText.1=移除JavaScript操作
|
||||
sanitizePDF.selectText.2=移除嵌入的文件
|
||||
sanitizePDF.selectText.3=移除元数据
|
||||
sanitizePDF.selectText.4=移除链接
|
||||
sanitizePDF.selectText.5=移除字体
|
||||
sanitizePDF.submit=清理PDF
|
||||
|
||||
|
||||
#addPageNumbers
|
||||
addPageNumbers.title=Add Page Numbers
|
||||
addPageNumbers.header=Add Page Numbers
|
||||
addPageNumbers.selectText.1=Select PDF file:
|
||||
addPageNumbers.selectText.2=Margin Size
|
||||
addPageNumbers.selectText.3=Position
|
||||
addPageNumbers.selectText.4=Starting Number
|
||||
addPageNumbers.selectText.5=Pages to Number
|
||||
addPageNumbers.selectText.6=Custom Text
|
||||
addPageNumbers.customTextDesc=Custom Text
|
||||
addPageNumbers.numberPagesDesc=Which pages to number, default 'all', also accepts 1-5 or 2,5,9 etc
|
||||
addPageNumbers.customNumberDesc=Defaults to {n}, also accepts 'Page {n} of {total}', 'Text-{n}', '{filename}-{n}
|
||||
addPageNumbers.submit=Add Page Numbers
|
||||
addPageNumbers.title=添加页码
|
||||
addPageNumbers.header=添加页码
|
||||
addPageNumbers.selectText.1=选择PDF文件:
|
||||
addPageNumbers.selectText.2=边距大小
|
||||
addPageNumbers.selectText.3=位置
|
||||
addPageNumbers.selectText.4=起始页码
|
||||
addPageNumbers.selectText.5=添加页码的页数
|
||||
addPageNumbers.selectText.6=自定义文本
|
||||
addPageNumbers.customTextDesc=自定义文本
|
||||
addPageNumbers.numberPagesDesc=要添加页码的页数,默认为“所有”,也可以接受1-5或2,5,9等
|
||||
addPageNumbers.customNumberDesc=默认为{n},也可以接受“第{n}页/共{total}页”,“文本-{n}”,“{filename}-{n}”
|
||||
addPageNumbers.submit=添加页码
|
||||
|
||||
|
||||
#auto-rename
|
||||
auto-rename.title=Auto Rename
|
||||
auto-rename.header=Auto Rename PDF
|
||||
auto-rename.submit=Auto Rename
|
||||
auto-rename.title=自动重命名
|
||||
auto-rename.header=自动重命名PDF
|
||||
auto-rename.submit=自动重命名
|
||||
|
||||
|
||||
#adjustContrast
|
||||
adjustContrast.title=Adjust Contrast
|
||||
adjustContrast.header=Adjust Contrast
|
||||
adjustContrast.contrast=Contrast:
|
||||
adjustContrast.brightness=Brightness:
|
||||
adjustContrast.saturation=Saturation:
|
||||
adjustContrast.download=Download
|
||||
adjustContrast.title=调整对比度
|
||||
adjustContrast.header=调整对比度
|
||||
adjustContrast.contrast=对比度:
|
||||
adjustContrast.brightness=亮度:
|
||||
adjustContrast.saturation=饱和度:
|
||||
adjustContrast.download=下载
|
||||
|
||||
|
||||
#crop
|
||||
crop.title=Crop
|
||||
crop.header=Crop Image
|
||||
crop.submit=Submit
|
||||
crop.title=裁剪
|
||||
crop.header=裁剪图像
|
||||
crop.submit=提交
|
||||
|
||||
|
||||
#autoSplitPDF
|
||||
autoSplitPDF.title=Auto Split PDF
|
||||
autoSplitPDF.header=Auto Split PDF
|
||||
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||
autoSplitPDF.duplexMode=Duplex Mode (Front and back scanning)
|
||||
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||
autoSplitPDF.submit=Submit
|
||||
autoSplitPDF.title=自动拆分PDF
|
||||
autoSplitPDF.header=自动拆分PDF
|
||||
autoSplitPDF.description=打印、插入、扫描、上传,让我们自动分离您的文档。无需手动排序。
|
||||
autoSplitPDF.selectText.1=从下面打印一些分隔页(黑白打印即可)。
|
||||
autoSplitPDF.selectText.2=在文档之间插入分隔页,一次性扫描所有文档。
|
||||
autoSplitPDF.selectText.3=上传单个大型扫描的PDF文件,让Stirling PDF处理剩下的事情。
|
||||
autoSplitPDF.selectText.4=分隔页会自动检测和删除,确保最终文档整洁。
|
||||
autoSplitPDF.formPrompt=提交包含Stirling-PDF分隔页的PDF:
|
||||
autoSplitPDF.duplexMode=双面模式(正反面扫描)
|
||||
autoSplitPDF.dividerDownload1=下载“自动拆分分隔页(最小化).pdf”
|
||||
autoSplitPDF.dividerDownload2=下载“自动拆分分隔页(带指导说明).pdf”
|
||||
autoSplitPDF.submit=提交
|
||||
|
||||
|
||||
#pipeline
|
||||
pipeline.title=Pipeline
|
||||
pipeline.title=流水线
|
||||
|
||||
|
||||
#pageLayout
|
||||
pageLayout.title=Multi Page Layout
|
||||
pageLayout.header=Multi Page Layout
|
||||
pageLayout.pagesPerSheet=Pages per sheet:
|
||||
pageLayout.submit=Submit
|
||||
pageLayout.title=多页布局
|
||||
pageLayout.header=多页布局
|
||||
pageLayout.pagesPerSheet=每页的页面数:
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
pageLayout.addBorder=添加边框
|
||||
pageLayout.submit=提交
|
||||
|
||||
|
||||
#scalePages
|
||||
scalePages.title=Adjust page-scale
|
||||
scalePages.header=Adjust page-scale
|
||||
scalePages.pageSize=Size of a page of the document.
|
||||
scalePages.scaleFactor=Zoom level (crop) of a page.
|
||||
scalePages.submit=Submit
|
||||
scalePages.title=调整页面缩放比例
|
||||
scalePages.header=调整页面缩放比例
|
||||
scalePages.pageSize=文档页面的尺寸。
|
||||
scalePages.scaleFactor=页面的缩放级别(裁剪)。
|
||||
scalePages.submit=提交
|
||||
|
||||
|
||||
#certSign
|
||||
@@ -506,43 +500,43 @@ certSign.submit=签署 PDF
|
||||
|
||||
|
||||
#removeBlanks
|
||||
removeBlanks.title=\u5220\u9664\u7A7A\u767D
|
||||
removeBlanks.header=\u5220\u9664\u7A7A\u767D\u9875
|
||||
removeBlanks.threshold=\u9608\u503C\uFF1A
|
||||
removeBlanks.thresholdDesc=\u786E\u5B9A\u767D\u8272\u50CF\u7D20\u5FC5\u987B\u6709\u591A\u767D\u7684\u9608\u503C
|
||||
removeBlanks.whitePercent=\u767D\u8272\u767E\u5206\u6BD4\uFF08%\uFF09\uFF1A
|
||||
removeBlanks.whitePercentDesc=\u5FC5\u987B\u4E3A\u767D\u8272\u624D\u80FD\u5220\u9664\u7684\u9875\u9762\u767E\u5206\u6BD4
|
||||
removeBlanks.submit=\u5220\u9664\u7A7A\u767D
|
||||
removeBlanks.title=删除空白
|
||||
removeBlanks.header=删除空白页
|
||||
removeBlanks.threshold=阈值:
|
||||
removeBlanks.thresholdDesc=确定白色像素必须有多白的阈值
|
||||
removeBlanks.whitePercent=白色百分比(%):
|
||||
removeBlanks.whitePercentDesc=必须为白色才能删除的页面百分比
|
||||
removeBlanks.submit=删除空白
|
||||
|
||||
|
||||
#compare
|
||||
compare.title=\u6BD4\u8F83
|
||||
compare.header=\u6BD4\u8F83 PDF
|
||||
compare.document.1=\u6587\u6863 1
|
||||
compare.document.2=\u6587\u6863 2
|
||||
compare.submit=\u6BD4\u8F83
|
||||
compare.title=比较
|
||||
compare.header=比较 PDF
|
||||
compare.document.1=文档 1
|
||||
compare.document.2=文档 2
|
||||
compare.submit=比较
|
||||
|
||||
|
||||
#sign
|
||||
sign.title=\u7B7E\u540D
|
||||
sign.header=\u7B7E\u7F72 PDF
|
||||
sign.upload=\u4E0A\u4F20\u56FE\u7247
|
||||
sign.draw=\u7ED8\u5236\u7B7E\u540D
|
||||
sign.text=\u6587\u672C\u8F93\u5165
|
||||
sign.clear=\u6E05\u9664
|
||||
sign.add=\u6DFB\u52A0
|
||||
sign.title=签名
|
||||
sign.header=签署 PDF
|
||||
sign.upload=上传图片
|
||||
sign.draw=绘制签名
|
||||
sign.text=文本输入
|
||||
sign.clear=清除
|
||||
sign.add=添加
|
||||
|
||||
|
||||
#repair
|
||||
repair.title=\u4FEE\u590D
|
||||
repair.header=\u4FEE\u590D PDF
|
||||
repair.submit=\u4FEE\u590D
|
||||
repair.title=修复
|
||||
repair.header=修复 PDF
|
||||
repair.submit=修复
|
||||
|
||||
|
||||
#flatten
|
||||
flatten.title=\u5C55\u5E73
|
||||
flatten.header=\u5C55\u5E73 PDF
|
||||
flatten.submit=\u5C55\u5E73
|
||||
flatten.title=展平
|
||||
flatten.header=展平 PDF
|
||||
flatten.submit=展平
|
||||
|
||||
|
||||
#ScannerImageSplit
|
||||
@@ -607,7 +601,7 @@ compress.submit=压缩
|
||||
|
||||
#Add image
|
||||
addImage.title=添加图像
|
||||
addImage.header=添加图片到PDF (Work in progress)
|
||||
addImage.header=添加图片到PDF(正在进行中)
|
||||
addImage.everyPage=每一页?
|
||||
addImage.upload=添加图片
|
||||
addImage.submit=添加图片
|
||||
@@ -616,8 +610,8 @@ addImage.submit=添加图片
|
||||
#merge
|
||||
merge.title=合并
|
||||
merge.header=合并多个PDF(2个以上)。
|
||||
merge.sortByName=Sort by name
|
||||
merge.sortByDate=Sort by date
|
||||
merge.sortByName=按名称排序
|
||||
merge.sortByDate=按日期排序
|
||||
merge.submit=合并
|
||||
|
||||
|
||||
@@ -651,12 +645,12 @@ split.title=拆分PDF
|
||||
split.header=拆分PDF
|
||||
split.desc.1=选择希望进行分割的页数
|
||||
split.desc.2=如选择1,3,7-8将把一个10页的文件分割成6个独立的PDF:
|
||||
split.desc.3=Document #1: Page 1
|
||||
split.desc.4=Document #2: Page 2 and 3
|
||||
split.desc.5=Document #3: Page 4, 5 and 6
|
||||
split.desc.6=Document #4: Page 7
|
||||
split.desc.7=Document #5: Page 8
|
||||
split.desc.8=Document #6: Page 9 and 10
|
||||
split.desc.3=文档 #1:第1页
|
||||
split.desc.4=文档 #2:第2页和第3页
|
||||
split.desc.5=文档 #3:第4页、第5页和第6页
|
||||
split.desc.6=文档 #4:第7页
|
||||
split.desc.7=文档 #5:第8页
|
||||
split.desc.8=文档 #6:第9页和第10页
|
||||
split.splitPages=输入要分割的页面:
|
||||
split.submit=拆分
|
||||
|
||||
@@ -665,13 +659,10 @@ split.submit=拆分
|
||||
imageToPDF.title=图片转PDF
|
||||
imageToPDF.header=图像转为PDF
|
||||
imageToPDF.submit=转换
|
||||
##########################
|
||||
### TODO: Translate ###
|
||||
##########################
|
||||
imageToPDF.selectLabel=Image Fit Options
|
||||
imageToPDF.fillPage=Fill Page
|
||||
imageToPDF.fitDocumentToImage=Fit Page to Image
|
||||
imageToPDF.maintainAspectRatio=Maintain Aspect Ratios
|
||||
imageToPDF.selectLabel=图片适应选项
|
||||
imageToPDF.fillPage=填充页面
|
||||
imageToPDF.fitDocumentToImage=适应图片大小
|
||||
imageToPDF.maintainAspectRatio=保持纵横比例
|
||||
imageToPDF.selectText.2=自动旋转PDF
|
||||
imageToPDF.selectText.3=多文件逻辑(仅在处理多个图像时启用)
|
||||
imageToPDF.selectText.4=合并成一个PDF文件
|
||||
@@ -707,10 +698,10 @@ addPassword.selectText.9=防止填写表格
|
||||
addPassword.selectText.10=防止修改
|
||||
addPassword.selectText.11=防止修改注释
|
||||
addPassword.selectText.12=防止打印
|
||||
addPassword.selectText.13=防止打印不同的格<EFBFBD>
|
||||
addPassword.selectText.14=Owner Password
|
||||
addPassword.selectText.15=Restricts what can be done with the document once it is opened (Not supported by all readers)
|
||||
addPassword.selectText.16=Restricts the opening of the document itself<6C>
|
||||
addPassword.selectText.13=防止打印不同的格式
|
||||
addPassword.selectText.14=所有者密码
|
||||
addPassword.selectText.15=限制打开后对文档的操作(不被所有阅读器支持)
|
||||
addPassword.selectText.16=限制打开文档本身
|
||||
addPassword.submit=加密
|
||||
|
||||
|
||||
@@ -721,11 +712,11 @@ watermark.selectText.1=选择要添加水印的PDF:
|
||||
watermark.selectText.2=水印文本:
|
||||
watermark.selectText.3=字体大小:
|
||||
watermark.selectText.4=旋转(0-360):
|
||||
watermark.selectText.5=widthSpacer(水平方向上每个水印之间的空间):
|
||||
watermark.selectText.6=heightSpacer(每个水印之间的垂直空间):
|
||||
watermark.selectText.5=水平间距(每个水印之间的水平距离):
|
||||
watermark.selectText.6=垂直间距(每个水印之间的垂直距离):
|
||||
watermark.selectText.7=透明度(0% - 100%):
|
||||
watermark.selectText.8=Watermark Type:
|
||||
watermark.selectText.9=Watermark Image:
|
||||
watermark.selectText.8=水印类型:
|
||||
watermark.selectText.9=水印图片:
|
||||
watermark.submit=添加水印
|
||||
|
||||
|
||||
@@ -775,8 +766,8 @@ changeMetadata.submit=更改
|
||||
|
||||
|
||||
#pdfToPDFA
|
||||
pdfToPDFA.title=PDF To PDF/A
|
||||
pdfToPDFA.header=PDF to PDF/A
|
||||
pdfToPDFA.title=将PDF转换为PDF/A
|
||||
pdfToPDFA.header=PDF转换为PDF/A
|
||||
pdfToPDFA.credit=此服务使用OCRmyPDF进行PDF/A转换
|
||||
pdfToPDFA.submit=转换
|
||||
|
||||
@@ -790,7 +781,7 @@ PDFToWord.submit=转换
|
||||
|
||||
|
||||
#PDFToPresentation
|
||||
PDFToPresentation.title=PDF To Presentation
|
||||
PDFToPresentation.title=PDF转换为演示文稿
|
||||
PDFToPresentation.header=将PDF转为演示文稿
|
||||
PDFToPresentation.selectText.1=输出文件格式
|
||||
PDFToPresentation.credit=该服务使用LibreOffice进行文件转换。
|
||||
|
||||
@@ -91,3 +91,26 @@ hr {
|
||||
border-color: rgba(255, 255, 255, 0.6); /* semi-transparent white */
|
||||
background-color: rgba(255, 255, 255, 0.6); /* for some browsers that might use background instead of border for <hr> */
|
||||
}
|
||||
|
||||
#global-buttons-container input {
|
||||
background-color: #323948;
|
||||
caret-color: #ffffff;
|
||||
color: #ffffff;
|
||||
}
|
||||
#global-buttons-container input::placeholder {
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
#global-buttons-container input:disabled::-webkit-input-placeholder { /* WebKit browsers */
|
||||
color: #6E6865;
|
||||
}
|
||||
#global-buttons-container input:disabled:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
|
||||
color: #6E6865;
|
||||
}
|
||||
#global-buttons-container input:disabled::-moz-placeholder { /* Mozilla Firefox 19+ */
|
||||
color: #6E6865;
|
||||
}
|
||||
#global-buttons-container input:disabled:-ms-input-placeholder { /* Internet Explorer 10+ */
|
||||
color: #6E6865;
|
||||
}
|
||||
|
||||
|
||||
@@ -2,4 +2,23 @@
|
||||
body {
|
||||
--body-background-color: 255, 255, 255;
|
||||
--base-font-color: 33, 37, 41;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#global-buttons-container input {
|
||||
background-color: #ffffff;
|
||||
/*caret-color: #ffffff;*/
|
||||
/*color: #ffffff;*/
|
||||
}
|
||||
/*#global-buttons-container input:disabled::-webkit-input-placeholder { !* WebKit browsers *!*/
|
||||
/* color: #98A0AB;*/
|
||||
/*}*/
|
||||
/*#global-buttons-container input:disabled:-moz-placeholder { !* Mozilla Firefox 4 to 18 *!*/
|
||||
/* color: #98A0AB;*/
|
||||
/*}*/
|
||||
/*#global-buttons-container input:disabled::-moz-placeholder { !* Mozilla Firefox 19+ *!*/
|
||||
/* color: #98A0AB;*/
|
||||
/*}*/
|
||||
/*#global-buttons-container input:disabled:-ms-input-placeholder { !* Internet Explorer 10+ *!*/
|
||||
/* color: #98A0AB;*/
|
||||
/*}*/
|
||||
|
||||
18
src/main/resources/static/images/book-opened.svg
Normal file
18
src/main/resources/static/images/book-opened.svg
Normal file
@@ -0,0 +1,18 @@
|
||||
<svg fill="#000000" version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg"
|
||||
width="800px" height="800px" viewBox="0 0 318.336 318.336"
|
||||
xml:space="preserve">
|
||||
<g>
|
||||
<g>
|
||||
<path d="M302.137,74.432h-21.031c-30.496-13.614-56.389-20.611-77.028-20.611c-26.731,0-39.245,11.649-44.906,20.535
|
||||
c-5.658-8.886-18.17-20.535-44.906-20.535c-20.638,0-46.533,7.003-77.037,20.611H16.2c-8.946,0-16.2,7.253-16.2,16.2v157.684
|
||||
c0,8.949,7.254,16.2,16.2,16.2h285.937c8.948,0,16.199-7.251,16.199-16.2V90.632C318.336,81.686,311.085,74.432,302.137,74.432z
|
||||
M154.786,84.265c-0.048,0.25-0.069,0.503-0.069,0.757V233.74c-7.084-8.18-18.95-14.438-38.804-14.438
|
||||
c-35.44,0-79.927,19.432-95.813,26.947V91.528c13.608-6.927,26.31-12.587,38.156-17.096c21.745-8.271,40.526-12.511,56.004-12.511
|
||||
c18.992,0,29.37,6.354,34.986,12.511c3.241,3.554,4.91,7.038,5.698,9.192C154.852,83.985,154.791,84.243,154.786,84.265z
|
||||
M298.234,246.249c-15.884-7.516-60.371-26.947-95.809-26.947c-19.859,0-31.72,6.254-38.805,14.438
|
||||
c-0.261,0.3-0.562,0.58-0.804,0.886V85.48c0.084-0.351,0.269-0.981,0.583-1.825c0.799-2.149,2.499-5.647,5.776-9.218
|
||||
c5.648-6.157,16.026-12.512,34.9-12.512c15.478,0,34.251,4.24,56.004,12.512c11.854,4.509,24.548,10.17,38.153,17.097V246.249
|
||||
L298.234,246.249z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.2 KiB |
7
src/main/resources/static/images/flags/bg.svg
Normal file
7
src/main/resources/static/images/flags/bg.svg
Normal file
@@ -0,0 +1,7 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-bg" viewBox="0 0 640 480">
|
||||
<g fill-rule="evenodd" stroke-width="1pt">
|
||||
<path fill="#d62612" d="M0 320h640v160H0z"/>
|
||||
<path fill="#fff" d="M0 0h640v160H0z"/>
|
||||
<path fill="#00966e" d="M0 160h640v160H0z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 283 B |
16
src/main/resources/static/images/flags/gr.svg
Normal file
16
src/main/resources/static/images/flags/gr.svg
Normal file
@@ -0,0 +1,16 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-gr" viewBox="0 0 640 480">
|
||||
<path fill="#0d5eaf" fill-rule="evenodd" d="M0 0h640v53.3H0z"/>
|
||||
<path fill="#fff" fill-rule="evenodd" d="M0 53.3h640v53.4H0z"/>
|
||||
<path fill="#0d5eaf" fill-rule="evenodd" d="M0 106.7h640V160H0z"/>
|
||||
<path fill="#fff" fill-rule="evenodd" d="M0 160h640v53.3H0z"/>
|
||||
<path fill="#0d5eaf" d="M0 0h266.7v266.7H0z"/>
|
||||
<path fill="#0d5eaf" fill-rule="evenodd" d="M0 213.3h640v53.4H0z"/>
|
||||
<path fill="#fff" fill-rule="evenodd" d="M0 266.7h640V320H0z"/>
|
||||
<path fill="#0d5eaf" fill-rule="evenodd" d="M0 320h640v53.3H0z"/>
|
||||
<path fill="#fff" fill-rule="evenodd" d="M0 373.3h640v53.4H0z"/>
|
||||
<g fill="#fff" fill-rule="evenodd" stroke-width="1.3">
|
||||
<path d="M106.7 0H160v266.7h-53.3z"/>
|
||||
<path d="M0 106.7h266.7V160H0z"/>
|
||||
</g>
|
||||
<path fill="#0d5eaf" d="M0 426.7h640V480H0z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 868 B |
@@ -55,6 +55,17 @@ class PdfActionsManager {
|
||||
deletePageButtonCallback(e) {
|
||||
var imgContainer = this.getPageContainer(e.target);
|
||||
this.pagesContainer.removeChild(imgContainer);
|
||||
if (this.pagesContainer.childElementCount === 0) {
|
||||
const filenameInput = document.getElementById('filename-input');
|
||||
const filenameParagraph = document.getElementById('filename');
|
||||
const downloadBtn = document.getElementById('export-button');
|
||||
|
||||
filenameInput.disabled = true;
|
||||
filenameInput.value = "";
|
||||
filenameParagraph.innerText = "";
|
||||
|
||||
downloadBtn.disabled = true;
|
||||
}
|
||||
};
|
||||
|
||||
insertFileButtonCallback(e) {
|
||||
|
||||
@@ -3,17 +3,21 @@ class PdfContainer {
|
||||
pagesContainer;
|
||||
pagesContainerWrapper;
|
||||
pdfAdapters;
|
||||
downloadLink;
|
||||
|
||||
constructor(id, wrapperId, pdfAdapters) {
|
||||
this.fileName = null;
|
||||
this.pagesContainer = document.getElementById(id)
|
||||
this.pagesContainerWrapper = document.getElementById(wrapperId);
|
||||
this.downloadLink = null;
|
||||
this.movePageTo = this.movePageTo.bind(this);
|
||||
this.addPdfs = this.addPdfs.bind(this);
|
||||
this.addPdfsFromFiles = this.addPdfsFromFiles.bind(this);
|
||||
this.rotateElement = this.rotateElement.bind(this);
|
||||
this.rotateAll = this.rotateAll.bind(this);
|
||||
this.exportPdf = this.exportPdf.bind(this);
|
||||
this.updateFilename = this.updateFilename.bind(this);
|
||||
this.setDownloadAttribute = this.setDownloadAttribute.bind(this);
|
||||
this.preventIllegalChars = this.preventIllegalChars.bind(this);
|
||||
|
||||
this.pdfAdapters = pdfAdapters;
|
||||
|
||||
@@ -28,6 +32,15 @@ class PdfContainer {
|
||||
window.addPdfs = this.addPdfs;
|
||||
window.exportPdf = this.exportPdf;
|
||||
window.rotateAll = this.rotateAll;
|
||||
|
||||
const filenameInput = document.getElementById('filename-input');
|
||||
const downloadBtn = document.getElementById('export-button');
|
||||
|
||||
filenameInput.onkeyup = this.updateFilename;
|
||||
filenameInput.onkeydown = this.preventIllegalChars;
|
||||
filenameInput.disabled = true;
|
||||
filenameInput.innerText = "";
|
||||
downloadBtn.disabled = true;
|
||||
}
|
||||
|
||||
movePageTo(startElement, endElement, scrollTo = false) {
|
||||
@@ -60,6 +73,29 @@ class PdfContainer {
|
||||
input.setAttribute("accept", "application/pdf");
|
||||
input.onchange = async(e) => {
|
||||
const files = e.target.files;
|
||||
if (files.length > 0) {
|
||||
const filenameInput = document.getElementById('filename-input');
|
||||
const pagesContainer = document.getElementById('pages-container');
|
||||
const downloadBtn = document.getElementById('export-button');
|
||||
|
||||
filenameInput.disabled = false;
|
||||
|
||||
if (pagesContainer.childElementCount === 0) {
|
||||
filenameInput.value = "";
|
||||
this.filename = null;
|
||||
downloadBtn.disabled = true;
|
||||
} else {
|
||||
this.filename = filenameInput.value;
|
||||
}
|
||||
|
||||
if (this.filename === null || this.filename === undefined) {
|
||||
filenameInput.value = files[0].name;
|
||||
} else {
|
||||
filenameInput.value = this.filename;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
this.addPdfsFromFiles(files, nextSiblingElement);
|
||||
}
|
||||
|
||||
@@ -192,6 +228,27 @@ class PdfContainer {
|
||||
const url = URL.createObjectURL(pdfBlob);
|
||||
const downloadOption = localStorage.getItem('downloadOption');
|
||||
|
||||
const filenameInput = document.getElementById('filename-input');
|
||||
|
||||
let inputArr = filenameInput.value.split('.');
|
||||
|
||||
if (inputArr !== null && inputArr !== undefined && inputArr.length > 0) {
|
||||
|
||||
inputArr = inputArr.filter(n => n); // remove all empty strings, nulls or undefined
|
||||
|
||||
if (inputArr.length > 1) {
|
||||
inputArr.pop(); // remove right part after last dot
|
||||
}
|
||||
|
||||
filenameInput.value = inputArr.join('');
|
||||
this.filename = filenameInput.value;
|
||||
}
|
||||
|
||||
if (!filenameInput.value.includes('.pdf')) {
|
||||
filenameInput.value = filenameInput.value + '.pdf';
|
||||
this.filename = filenameInput.value;
|
||||
}
|
||||
|
||||
if (downloadOption === 'sameWindow') {
|
||||
// Open the file in the same window
|
||||
window.location.href = url;
|
||||
@@ -200,12 +257,45 @@ class PdfContainer {
|
||||
window.open(url, '_blank');
|
||||
} else {
|
||||
// Download the file
|
||||
const downloadLink = document.createElement('a');
|
||||
downloadLink.href = url;
|
||||
downloadLink.download = this.fileName ? this.fileName : 'managed.pdf';
|
||||
downloadLink.click();
|
||||
this.downloadLink = document.createElement('a');
|
||||
this.downloadLink.id = 'download-link';
|
||||
this.downloadLink.href = url;
|
||||
// downloadLink.download = this.fileName ? this.fileName : 'managed.pdf';
|
||||
// downloadLink.download = this.fileName;
|
||||
this.downloadLink.setAttribute('download', this.filename ? this.fileName : 'managed.pdf');
|
||||
this.downloadLink.setAttribute('target', '_blank');
|
||||
this.downloadLink.onclick = this.setDownloadAttribute;
|
||||
this.downloadLink.click();
|
||||
}
|
||||
}
|
||||
|
||||
setDownloadAttribute() {
|
||||
this.downloadLink.setAttribute("download", this.filename ? this.filename : 'managed.pdf');
|
||||
}
|
||||
|
||||
updateFilename() {
|
||||
const filenameInput = document.getElementById('filename-input');
|
||||
const downloadBtn = document.getElementById('export-button');
|
||||
|
||||
if (filenameInput.value === "") {
|
||||
downloadBtn.disabled = true;
|
||||
return;
|
||||
}
|
||||
|
||||
downloadBtn.disabled = false;
|
||||
this.filename = filenameInput.value;
|
||||
}
|
||||
|
||||
preventIllegalChars(e) {
|
||||
// const filenameInput = document.getElementById('filename-input');
|
||||
//
|
||||
// filenameInput.value = filenameInput.value.replace('.pdf', '');
|
||||
//
|
||||
// // prevent .
|
||||
// if (filenameInput.value.includes('.')) {
|
||||
// filenameInput.value.replace('.','');
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
export default PdfContainer;
|
||||
|
||||
BIN
src/main/resources/static/pdfjs/cmaps/78-EUC-H.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/78-EUC-H.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/78-EUC-V.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/78-EUC-V.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/78-H.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/78-H.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/78-RKSJ-H.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/78-RKSJ-H.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/78-RKSJ-V.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/78-RKSJ-V.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/78-V.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/78-V.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/78ms-RKSJ-H.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/78ms-RKSJ-H.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/78ms-RKSJ-V.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/78ms-RKSJ-V.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/83pv-RKSJ-H.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/83pv-RKSJ-H.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/90ms-RKSJ-H.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/90ms-RKSJ-H.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/90ms-RKSJ-V.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/90ms-RKSJ-V.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/90msp-RKSJ-H.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/90msp-RKSJ-H.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/90msp-RKSJ-V.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/90msp-RKSJ-V.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/90pv-RKSJ-H.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/90pv-RKSJ-H.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/90pv-RKSJ-V.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/90pv-RKSJ-V.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Add-H.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Add-H.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Add-RKSJ-H.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Add-RKSJ-H.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Add-RKSJ-V.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Add-RKSJ-V.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Add-V.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Add-V.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-0.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-0.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-1.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-1.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-2.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-2.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-3.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-3.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-4.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-4.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-5.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-5.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-6.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-6.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-UCS2.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-CNS1-UCS2.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-0.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-0.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-1.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-1.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-2.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-2.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-3.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-3.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-4.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-4.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-5.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-5.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-UCS2.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-GB1-UCS2.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-0.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-0.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-1.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-1.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-2.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-2.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-3.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-3.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-4.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-4.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-5.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-5.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-6.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-6.bcmap
vendored
Normal file
Binary file not shown.
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-UCS2.bcmap
vendored
Normal file
BIN
src/main/resources/static/pdfjs/cmaps/Adobe-Japan1-UCS2.bcmap
vendored
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user