From 779d9028fe5ed9a3123dd0c31d620945c63ce499 Mon Sep 17 00:00:00 2001 From: sbplat <71648843+sbplat@users.noreply.github.com> Date: Mon, 25 Dec 2023 15:34:16 -0500 Subject: [PATCH 01/39] fix(multitool): hide dragged pdf page at the start so it doesn't teleport --- .../static/js/multitool/DragDropManager.js | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/src/main/resources/static/js/multitool/DragDropManager.js b/src/main/resources/static/js/multitool/DragDropManager.js index 93fbbdf10..887cda71f 100644 --- a/src/main/resources/static/js/multitool/DragDropManager.js +++ b/src/main/resources/static/js/multitool/DragDropManager.js @@ -1,5 +1,3 @@ - - class DragDropManager { dragContainer; wrapper; @@ -47,16 +45,15 @@ class DragDropManager { const img = div.querySelector('img'); div.classList.add('drag-manager_dragging'); const imageSrc = img.src; - + const imgEl = document.createElement('img'); imgEl.classList.add('dragged-img'); imgEl.src = imageSrc; this.draggedImageEl = imgEl; - imgEl.style.left = screenX; - imgEl.style.right = screenY; + imgEl.style.visibility = 'hidden'; imgEl.style.transform = `rotate(${img.style.rotate === '' ? '0deg' : img.style.rotate}) translate(-50%, -50%)`; this.dragContainer.appendChild(imgEl); - + window.addEventListener('mouseup', this.stopDraggingPage) window.addEventListener('mousemove', this.onDragEl) this.wrapper.classList.add('drag-manager_dragging-container'); @@ -66,12 +63,13 @@ class DragDropManager { onDragEl(mouseEvent) { const { clientX, clientY } = mouseEvent; if(this.draggedImageEl) { + this.draggedImageEl.style.visibility = 'visible'; this.draggedImageEl.style.left = `${clientX}px`; - this.draggedImageEl.style.top = `${clientY}px`; + this.draggedImageEl.style.top = `${clientY}px`; } } - + stopDraggingPage() { window.removeEventListener('mousemove', this.onDragEl); this.wrapper.classList.remove('drag-manager_dragging-container'); @@ -103,7 +101,7 @@ class DragDropManager { const onDragStart = () => { this.startDraggingPage(div); } - + const onMouseEnter = () => { if (this.pageDragging) { this.hoveredEl = div; @@ -124,4 +122,4 @@ class DragDropManager { } } -export default DragDropManager; \ No newline at end of file +export default DragDropManager; From fb18d0d04db51e5c255532872aa68f0f7aaead74 Mon Sep 17 00:00:00 2001 From: dkaitantzidis Date: Mon, 25 Dec 2023 22:36:08 +0200 Subject: [PATCH 02/39] WIP: Fixes issue - needs refactor --- .../SPDF/controller/api/MergeController.java | 161 +++++++++--------- 1 file changed, 85 insertions(+), 76 deletions(-) diff --git a/src/main/java/stirling/software/SPDF/controller/api/MergeController.java b/src/main/java/stirling/software/SPDF/controller/api/MergeController.java index 4727e195b..cc890ee94 100644 --- a/src/main/java/stirling/software/SPDF/controller/api/MergeController.java +++ b/src/main/java/stirling/software/SPDF/controller/api/MergeController.java @@ -1,7 +1,6 @@ package stirling.software.SPDF.controller.api; -import java.io.IOException; -import java.io.InputStream; +import java.io.*; import java.nio.file.Files; import java.nio.file.Paths; import java.nio.file.attribute.BasicFileAttributes; @@ -10,10 +9,15 @@ import java.util.Arrays; import java.util.Comparator; import java.util.List; +import org.apache.pdfbox.io.MemoryUsageSetting; +import org.apache.pdfbox.multipdf.PDFMergerUtility; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.PDPage; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PostMapping; @@ -34,82 +38,87 @@ public class MergeController { private static final Logger logger = LoggerFactory.getLogger(MergeController.class); -private PDDocument mergeDocuments(List documents) throws IOException { - PDDocument mergedDoc = new PDDocument(); - for (PDDocument doc : documents) { - for (PDPage page : doc.getPages()) { - mergedDoc.addPage(page); - } - } - return mergedDoc; -} - -private Comparator getSortComparator(String sortType) { - switch (sortType) { - case "byFileName": - return Comparator.comparing(MultipartFile::getOriginalFilename); - case "byDateModified": - return (file1, file2) -> { - try { - BasicFileAttributes attr1 = Files.readAttributes(Paths.get(file1.getOriginalFilename()), BasicFileAttributes.class); - BasicFileAttributes attr2 = Files.readAttributes(Paths.get(file2.getOriginalFilename()), BasicFileAttributes.class); - return attr1.lastModifiedTime().compareTo(attr2.lastModifiedTime()); - } catch (IOException e) { - return 0; // If there's an error, treat them as equal - } - }; - case "byDateCreated": - return (file1, file2) -> { - try { - BasicFileAttributes attr1 = Files.readAttributes(Paths.get(file1.getOriginalFilename()), BasicFileAttributes.class); - BasicFileAttributes attr2 = Files.readAttributes(Paths.get(file2.getOriginalFilename()), BasicFileAttributes.class); - return attr1.creationTime().compareTo(attr2.creationTime()); - } catch (IOException e) { - return 0; // If there's an error, treat them as equal - } - }; - case "byPDFTitle": - return (file1, file2) -> { - try (PDDocument doc1 = PDDocument.load(file1.getInputStream()); - PDDocument doc2 = PDDocument.load(file2.getInputStream())) { - String title1 = doc1.getDocumentInformation().getTitle(); - String title2 = doc2.getDocumentInformation().getTitle(); - return title1.compareTo(title2); - } catch (IOException e) { - return 0; - } - }; - case "orderProvided": - default: - return (file1, file2) -> 0; // Default is the order provided - } -} - -@PostMapping(consumes = "multipart/form-data", value = "/merge-pdfs") -@Operation(summary = "Merge multiple PDF files into one", - description = "This endpoint merges multiple PDF files into a single PDF file. The merged file will contain all pages from the input files in the order they were provided. Input:PDF Output:PDF Type:MISO") -public ResponseEntity mergePdfs(@ModelAttribute MergePdfsRequest form) throws IOException { - - MultipartFile[] files = form.getFileInput(); - Arrays.sort(files, getSortComparator(form.getSortType())); - - List documents = new ArrayList<>(); - for (MultipartFile file : files) { - try (InputStream is = file.getInputStream()) { - documents.add(PDDocument.load(is)); - } - } - - try (PDDocument mergedDoc = mergeDocuments(documents)) { - ResponseEntity response = WebResponseUtils.pdfDocToWebResponse(mergedDoc, files[0].getOriginalFilename().replaceFirst("[.][^.]+$", "") + "_merged.pdf"); - return response; - } finally { + private PDDocument mergeDocuments(List documents) throws IOException { + PDDocument mergedDoc = new PDDocument(); for (PDDocument doc : documents) { - if (doc != null) { - doc.close(); + for (PDPage page : doc.getPages()) { + mergedDoc.addPage(page); } } + return mergedDoc; + } + + private Comparator getSortComparator(String sortType) { + switch (sortType) { + case "byFileName": + return Comparator.comparing(MultipartFile::getOriginalFilename); + case "byDateModified": + return (file1, file2) -> { + try { + BasicFileAttributes attr1 = Files.readAttributes(Paths.get(file1.getOriginalFilename()), BasicFileAttributes.class); + BasicFileAttributes attr2 = Files.readAttributes(Paths.get(file2.getOriginalFilename()), BasicFileAttributes.class); + return attr1.lastModifiedTime().compareTo(attr2.lastModifiedTime()); + } catch (IOException e) { + return 0; // If there's an error, treat them as equal + } + }; + case "byDateCreated": + return (file1, file2) -> { + try { + BasicFileAttributes attr1 = Files.readAttributes(Paths.get(file1.getOriginalFilename()), BasicFileAttributes.class); + BasicFileAttributes attr2 = Files.readAttributes(Paths.get(file2.getOriginalFilename()), BasicFileAttributes.class); + return attr1.creationTime().compareTo(attr2.creationTime()); + } catch (IOException e) { + return 0; // If there's an error, treat them as equal + } + }; + case "byPDFTitle": + return (file1, file2) -> { + try (PDDocument doc1 = PDDocument.load(file1.getInputStream()); + PDDocument doc2 = PDDocument.load(file2.getInputStream())) { + String title1 = doc1.getDocumentInformation().getTitle(); + String title2 = doc2.getDocumentInformation().getTitle(); + return title1.compareTo(title2); + } catch (IOException e) { + return 0; + } + }; + case "orderProvided": + default: + return (file1, file2) -> 0; // Default is the order provided + } + } + + @PostMapping(consumes = "multipart/form-data", value = "/merge-pdfs") + @Operation(summary = "Merge multiple PDF files into one", + description = "This endpoint merges multiple PDF files into a single PDF file. The merged file will contain all pages from the input files in the order they were provided. Input:PDF Output:PDF Type:MISO") + public ResponseEntity mergePdfs(@ModelAttribute MergePdfsRequest form) throws IOException { + + try { + MultipartFile[] files = form.getFileInput(); + Arrays.sort(files, getSortComparator(form.getSortType())); + + PDFMergerUtility mergedDoc = new PDFMergerUtility(); + ByteArrayOutputStream docOutputstream = new ByteArrayOutputStream(); + + for (MultipartFile file : files) { + mergedDoc.addSource(new ByteArrayInputStream(file.getBytes())); + } + + mergedDoc.setDestinationFileName(files[0].getOriginalFilename().replaceFirst("[.][^.]+$", "")); + mergedDoc.setDestinationStream(docOutputstream); + mergedDoc.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly()); + + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_PDF); + + // Here you have to set the actual filename of your pdf + headers.setContentDispositionFormData(mergedDoc.getDestinationFileName(), mergedDoc.getDestinationFileName()); + headers.setCacheControl("must-revalidate, post-check=0, pre-check=0"); + return new ResponseEntity<>(docOutputstream.toByteArray(), headers, HttpStatus.OK); + } catch (Exception ex) { + logger.error("Error in merge pdf process", ex); + throw ex; + } } } - -} \ No newline at end of file From cf3693186a2c3cdcf0325cdd762ef42aba2379df Mon Sep 17 00:00:00 2001 From: dkaitantzidis Date: Mon, 25 Dec 2023 23:27:08 +0200 Subject: [PATCH 03/39] Fixes headers issue in merge pdfs. --- .../SPDF/controller/api/MergeController.java | 38 +++++++------------ 1 file changed, 14 insertions(+), 24 deletions(-) diff --git a/src/main/java/stirling/software/SPDF/controller/api/MergeController.java b/src/main/java/stirling/software/SPDF/controller/api/MergeController.java index cc890ee94..7db00a314 100644 --- a/src/main/java/stirling/software/SPDF/controller/api/MergeController.java +++ b/src/main/java/stirling/software/SPDF/controller/api/MergeController.java @@ -1,35 +1,32 @@ package stirling.software.SPDF.controller.api; -import java.io.*; -import java.nio.file.Files; -import java.nio.file.Paths; -import java.nio.file.attribute.BasicFileAttributes; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Comparator; -import java.util.List; - +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; import org.apache.pdfbox.io.MemoryUsageSetting; import org.apache.pdfbox.multipdf.PDFMergerUtility; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.PDPage; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.http.HttpHeaders; -import org.springframework.http.HttpStatus; -import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; - -import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.tags.Tag; import stirling.software.SPDF.model.api.general.MergePdfsRequest; import stirling.software.SPDF.utils.WebResponseUtils; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Paths; +import java.nio.file.attribute.BasicFileAttributes; +import java.util.Arrays; +import java.util.Comparator; +import java.util.List; + @RestController @RequestMapping("/api/v1/general") @Tag(name = "General", description = "General APIs") @@ -93,7 +90,6 @@ public class MergeController { @Operation(summary = "Merge multiple PDF files into one", description = "This endpoint merges multiple PDF files into a single PDF file. The merged file will contain all pages from the input files in the order they were provided. Input:PDF Output:PDF Type:MISO") public ResponseEntity mergePdfs(@ModelAttribute MergePdfsRequest form) throws IOException { - try { MultipartFile[] files = form.getFileInput(); Arrays.sort(files, getSortComparator(form.getSortType())); @@ -105,17 +101,11 @@ public class MergeController { mergedDoc.addSource(new ByteArrayInputStream(file.getBytes())); } - mergedDoc.setDestinationFileName(files[0].getOriginalFilename().replaceFirst("[.][^.]+$", "")); + mergedDoc.setDestinationFileName(files[0].getOriginalFilename().replaceFirst("[.][^.]+$", "") + "_merged.pdf"); mergedDoc.setDestinationStream(docOutputstream); mergedDoc.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly()); - HttpHeaders headers = new HttpHeaders(); - headers.setContentType(MediaType.APPLICATION_PDF); - - // Here you have to set the actual filename of your pdf - headers.setContentDispositionFormData(mergedDoc.getDestinationFileName(), mergedDoc.getDestinationFileName()); - headers.setCacheControl("must-revalidate, post-check=0, pre-check=0"); - return new ResponseEntity<>(docOutputstream.toByteArray(), headers, HttpStatus.OK); + return WebResponseUtils.bytesToWebResponse(docOutputstream.toByteArray(), mergedDoc.getDestinationFileName()); } catch (Exception ex) { logger.error("Error in merge pdf process", ex); throw ex; From cf42ef7faa9d9b3185649b1f2b4a9236bff8c495 Mon Sep 17 00:00:00 2001 From: Aan Date: Tue, 26 Dec 2023 12:38:27 +0700 Subject: [PATCH 04/39] Intial Draft #1 --- .DS_Store | Bin 0 -> 6148 bytes src/.DS_Store | Bin 0 -> 6148 bytes src/main/.DS_Store | Bin 0 -> 6148 bytes src/main/resources/.DS_Store | Bin 0 -> 6148 bytes src/main/resources/messages_id_ID.properties | 895 ++++++++++++++++++ src/main/resources/static/.DS_Store | Bin 0 -> 8196 bytes src/main/resources/static/images/.DS_Store | Bin 0 -> 6148 bytes src/main/resources/static/images/flags/id.svg | 4 + .../templates/fragments/languages.html | 3 + 9 files changed, 902 insertions(+) create mode 100644 .DS_Store create mode 100644 src/.DS_Store create mode 100644 src/main/.DS_Store create mode 100644 src/main/resources/.DS_Store create mode 100644 src/main/resources/messages_id_ID.properties create mode 100644 src/main/resources/static/.DS_Store create mode 100644 src/main/resources/static/images/.DS_Store create mode 100644 src/main/resources/static/images/flags/id.svg diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..c3c40f2c74a0891914b5dccde8a7ae478356b716 GIT binary patch literal 6148 zcmeHKOG-mQ5Ue&q0@-Bga<1SFh7eDX3#f^R5DEBj|5l#MqgnlN5udJtn@|lsHPh2I z!_?ySYXG)>-`@f&01LV!K75#(@4HXzsv?dSXFOrp54*$T@pzbI{~mDeHD2(F2R!2k ze}(~X*nJ<#J7iKo3P=GdAO)nrnF>@rT`bQ$M|3G51ujnk|2{OjV=o*NQsBQ8_yRk28YTb$ literal 0 HcmV?d00001 diff --git a/src/.DS_Store b/src/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..7b0d36729e2ee777a660f9e8c6709dd97bc2fb68 GIT binary patch literal 6148 zcmeH~F>V4u3`M`g7D#EfOgRk)$PGpaPQV2S&>%r5BKkQx-ySzvsH0W%E!l7ES!;KH zv9ktX>-*^w7y&HlPOLmk%$N_j;tOYdpMH*)!|itQBJHgMp3+B5_H$d10#ZNMM4T9irw zDe%t}uwk>?toc%Twm!X{*Y{cVb)%DUIm54?049DEf6&9YUwlE`oJkx{qD-+~ zi-^uHyQxScA|tq=Ty5x@?VES3mk|ZRamHS@yVLftIUWz4?AHO~4&@|gS;HUrwn3u; zRDcRl0V+TRKCVEP*wOgoC-XomKm~qX0sB4_xM59f1O3y1!CL^}0AV-Gy_WzM3jk|k z8;A%@g9;3)W{aUgN4#WSO>6^$E}G4U=FOTNiu&z1zj(T64dh4#sKB!V{a7|u{}=E# z{r@wGD=I(*{z?HI%$M^So|Lt<^Ej)u1-^n?&JAvcxl=HBIR<(;#=^?+#FHYg*c|&c Vu?=)O;!X$hXTWr!QGstOa0m456^#G@ literal 0 HcmV?d00001 diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties new file mode 100644 index 000000000..120b9d197 --- /dev/null +++ b/src/main/resources/messages_id_ID.properties @@ -0,0 +1,895 @@ +########### +# Generic # +########### +# the direction that the language is written (ltr = left to right, rtl = right to left) +language.direction=ltr + +pdfPrompt=Pilih PDF +multiPdfPrompt=Pilih PDF (2+) +multiPdfDropPrompt=Pilih (atau seret & letakkan)) semua PDF yang Anda butuhkan +imgPrompt=Pilih Gambar +genericSubmit=Kirim +processTimeWarning=Peringatan: Proses ini dapat memakan waktu hingga satu menit, tergantung pada ukuran file +pageOrderPrompt=Urutan Halaman Khusus (Masukkan daftar nomor halaman yang dipisahkan dengan koma atau Fungsi seperti 2n + 1) : +goToPage=Ke +true=Benar +false=Salah +unknown=Tidak diketahui +save=Simpan +close=Tutup +filesSelected=berkas dipilih +noFavourites=Tidak ada favorit yang ditambahkan +bored=Bosan Menunggu? +alphabet=Abjad +downloadPdf=Unduh PDF +text=Teks +font=Jenis huruf +selectFillter=-- Pilih -- +pageNum=Nomor Halaman +sizes.small=Kecil +sizes.medium=Sedang +sizes.large=Besar +sizes.x-large=Sangat Besar +error.pdfPassword=Dokumen PDF disandikan dan kata sandi tidak diberikan atau kata sandi salah +delete=Hapus +username=Nama pengguna +password=Kata sandi +welcome=Selamat Datang +property=Properti +black=Hitam +white=Putih +red=Merah +green=Hijau +blue=Biru +custom=Kustom... + +changedCredsMessage=Kredensial berubah!! +notAuthenticatedMessage=Pengguna tidak ter-autentikasi. +userNotFoundMessage=Pengguna tidak ditemukan. +incorrectPasswordMessage=Kata sandi saat ini salah. +usernameExistsMessage=Nama pengguna baru sudah ada. + + + +############# +# NAVBAR # +############# +navbar.convert=Konversi +navbar.security=Keamanan +navbar.other=Lain-lain +navbar.darkmode=Mode Gelap +navbar.pageOps=Operasi Halaman +navbar.settings=Pengaturan + +############# +# SETTINGS # +############# +settings.title=Pengaturan +settings.update=Pembaruan tersedia +settings.appVersion=Versi Aplikasi: +settings.downloadOption.title=Pilih opsi unduhan (Untuk unduhan file tunggal non zip): +settings.downloadOption.1=Buka di jendela yang sama +settings.downloadOption.2=Buka di jendela baru +settings.downloadOption.3=Unduh berkas +settings.zipThreshold=Berkas zip ketika jumlah file yang diunduh melebihi +settings.signOut=Keluar +settings.accountSettings=Pengaturan Akun + + + +changeCreds.title=Ubah Kredensial +changeCreds.header=Perbarui Detail Akun Anda +changeCreds.changeUserAndPassword=Anda menggunakan kredensial masuk default. Masukkan kata sandi baru (dan nama pengguna jika diinginkan) +changeCreds.newUsername=Nama Pengguna Baru +changeCreds.oldPassword=Kata Sandi Saat Ini +changeCreds.newPassword=Kata Sandi Baru +changeCreds.confirmNewPassword=Konfirmasi Kata Sandi Baru +changeCreds.submit=Kirim Perubahan + + + +account.title=Pengaturan Akun +account.accountSettings=Pengaturan Akun +account.adminSettings=Pengaturan Admin - Melihat dan Menambahkan Pengguna +account.userControlSettings=Pengaturan Kontrol Pengguna +account.changeUsername=Nama Pengguna Baru +account.changeUsername=Ubah Nama Pengguna +account.password=Konfirmasi Kata sandi +account.oldPassword=Kata sandi lama +account.newPassword=Kata Sandi Baru +account.changePassword=Ubah Kata Sandi +account.confirmNewPassword=Konfirmasi Kata Sandi Baru +account.signOut=Keluar +account.yourApiKey=API Key Anda +account.syncTitle=Menyinkronkan pengaturan browser dengan Akun +account.settingsCompare=Perbandingan Pengaturan: +account.property=Properti +account.webBrowserSettings=Pengaturan Peramban Web +account.syncToBrowser=Sinkronisasi Akun -> Browser +account.syncToAccount=Sinkronisasi Akun <- Browser + + +adminUserSettings.title=Pengaturan Kontrol Pengguna +adminUserSettings.header=Pengaturan Kontrol Admin +adminUserSettings.admin=Admin +adminUserSettings.user=Pengguna +adminUserSettings.addUser=Tambahkan Pengguna Baru +adminUserSettings.roles=Peran +adminUserSettings.role=Peran +adminUserSettings.actions=Tindakan +adminUserSettings.apiUser=Pengguna API Terbatas +adminUserSettings.webOnlyUser=Pengguna Khusus Web +adminUserSettings.forceChange = Memaksa pengguna untuk mengubah nama pengguna/kata sandi saat masuk +adminUserSettings.submit=Simpan Pengguna + +############# +# HOME-PAGE # +############# +home.desc=Your locally hosted one-stop-shop for all your PDF needs. +home.searchBar=Search for features... + + +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 +home.multiTool.desc=Merge, Rotate, Rearrange, and Remove pages +multiTool.tags=Multi Tool,Multi operation,UI,click drag,front end,client side,interactive,intractable,move + +home.merge.title=Merge +home.merge.desc=Easily merge multiple PDFs into one. +merge.tags=merge,Page operations,Back end,server side + +home.split.title=Split +home.split.desc=Split PDFs into multiple documents +split.tags=Page operations,divide,Multi Page,cut,server side + +home.rotate.title=Rotate +home.rotate.desc=Easily rotate your PDFs. +rotate.tags=server side + + +home.imageToPdf.title=Image to PDF +home.imageToPdf.desc=Convert a image (PNG, JPEG, GIF) to PDF. +imageToPdf.tags=conversion,img,jpg,picture,photo + +home.pdfToImage.title=PDF to Image +home.pdfToImage.desc=Convert a PDF to a image. (PNG, JPEG, GIF) +pdfToImage.tags=conversion,img,jpg,picture,photo + +home.pdfOrganiser.title=Organise +home.pdfOrganiser.desc=Remove/Rearrange pages in any order +pdfOrganiser.tags=duplex,even,odd,sort,move + + +home.addImage.title=Add image +home.addImage.desc=Adds a image onto a set location on the PDF +addImage.tags=img,jpg,picture,photo + +home.watermark.title=Add Watermark +home.watermark.desc=Add a custom watermark to your PDF document. +watermark.tags=Text,repeating,label,own,copyright,trademark,img,jpg,picture,photo + +home.permissions.title=Change Permissions +home.permissions.desc=Change the permissions of your PDF document +permissions.tags=read,write,edit,print + + +home.removePages.title=Remove +home.removePages.desc=Delete unwanted pages from your PDF document. +removePages.tags=Remove pages,delete pages + +home.addPassword.title=Add Password +home.addPassword.desc=Encrypt your PDF document with a password. +addPassword.tags=secure,security + +home.removePassword.title=Remove Password +home.removePassword.desc=Remove password protection from your PDF document. +removePassword.tags=secure,Decrypt,security,unpassword,delete password + +home.compressPdfs.title=Compress +home.compressPdfs.desc=Compress PDFs to reduce their file size. +compressPdfs.tags=squish,small,tiny + + +home.changeMetadata.title=Change Metadata +home.changeMetadata.desc=Change/Remove/Add metadata from a PDF document +changeMetadata.tags==Title,author,date,creation,time,publisher,producer,stats + +home.fileToPDF.title=Convert file to PDF +home.fileToPDF.desc=Convert nearly any file to 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=OCR / Cleanup scans +home.ocr.desc=Cleanup scans and detects text from images within a PDF and re-adds it as text. +ocr.tags=recognition,text,image,scan,read,identify,detection,editable + + +home.extractImages.title=Extract Images +home.extractImages.desc=Extracts all images from a PDF and saves them to zip +extractImages.tags=picture,photo,save,archive,zip,capture,grab + +home.pdfToPDFA.title=PDF to PDF/A +home.pdfToPDFA.desc=Convert PDF to PDF/A for long-term storage +pdfToPDFA.tags=archive,long-term,standard,conversion,storage,preservation + +home.PDFToWord.title=PDF to Word +home.PDFToWord.desc=Convert PDF to Word formats (DOC, DOCX and ODT) +PDFToWord.tags=doc,docx,odt,word,transformation,format,conversion,office,microsoft,docfile + +home.PDFToPresentation.title=PDF to Presentation +home.PDFToPresentation.desc=Convert PDF to Presentation formats (PPT, PPTX and ODP) +PDFToPresentation.tags=slides,show,office,microsoft + +home.PDFToText.title=PDF to RTF (Text) +home.PDFToText.desc=Convert PDF to Text or RTF format +PDFToText.tags=richformat,richtextformat,rich text format + +home.PDFToHTML.title=PDF to HTML +home.PDFToHTML.desc=Convert PDF to HTML format +PDFToHTML.tags=web content,browser friendly + + +home.PDFToXML.title=PDF to XML +home.PDFToXML.desc=Convert PDF to XML format +PDFToXML.tags=data-extraction,structured-content,interop,transformation,convert + +home.ScannerImageSplit.title=Detect/Split Scanned photos +home.ScannerImageSplit.desc=Splits multiple photos from within a photo/PDF +ScannerImageSplit.tags=separate,auto-detect,scans,multi-photo,organize + +home.sign.title=Sign +home.sign.desc=Adds signature to PDF by drawing, text or image +sign.tags=authorize,initials,drawn-signature,text-sign,image-signature + +home.flatten.title=Flatten +home.flatten.desc=Remove all interactive elements and forms from a PDF +flatten.tags=static,deactivate,non-interactive,streamline + +home.repair.title=Repair +home.repair.desc=Tries to repair a corrupt/broken PDF +repair.tags=fix,restore,correction,recover + +home.removeBlanks.title=Remove Blank pages +home.removeBlanks.desc=Detects and removes blank pages from a document +removeBlanks.tags=cleanup,streamline,non-content,organize + +home.removeAnnotations.title=Remove Annotations +home.removeAnnotations.desc=Removes all comments/annotations from a PDF +removeAnnotations.tags=comments,highlight,notes,markup,remove + +home.compare.title=Compare +home.compare.desc=Compares and shows the differences between 2 PDF Documents +compare.tags=differentiate,contrast,changes,analysis + +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=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=Adjust page size/scale +home.scalePages.desc=Change the size/scale of a page and/or its contents. +scalePages.tags=resize,modify,dimension,adapt + +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=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=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=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=Crop PDF +home.crop.desc=Crop a PDF to reduce its size (maintains text!) +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 +autoSplitPDF.tags=QR-based,separate,scan-segment,organize + +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/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 to PDF +home.HTMLToPDF.desc=Converts any HTML file or zip to PDF +HTMLToPDF.tags=markup,web-content,transformation,convert + + +home.MarkdownToPDF.title=Markdown to PDF +home.MarkdownToPDF.desc=Converts any Markdown file to 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 +getPdfInfo.tags=infomation,data,stats,statistics + + +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=Redact,Hide,black out,black,marker,hidden + +home.tableExtraxt.title=PDF to CSV +home.tableExtraxt.desc=Extracts Tables from a PDF converting it to CSV +tableExtraxt.tags=CSV,Table Extraction,extract,convert + + +home.autoSizeSplitPDF.title=Auto Split by Size/Count +home.autoSizeSplitPDF.desc=Split a single PDF into multiple documents based on size, page count, or document count +autoSizeSplitPDF.tags=pdf,split,document,organization + + +home.overlay-pdfs.title=Overlay PDFs +home.overlay-pdfs.desc=Overlays PDFs on-top of another PDF +overlay-pdfs.tags=Overlay + +home.split-by-sections.title=Split PDF by Sections +home.split-by-sections.desc=Divide each page of a PDF into smaller horizontal and vertical sections +split-by-sections.tags=Section Split, Divide, Customize + +########################### +# # +# WEB PAGES # +# # +########################### +#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 + + +#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 + + +#showJS +showJS.title=Show Javascript +showJS.header=Show Javascript +showJS.downloadJS=Download Javascript +showJS.submit=Show + + +#pdfToSinglePage +pdfToSinglePage.title=PDF To Single Page +pdfToSinglePage.header=PDF To Single Page +pdfToSinglePage.submit=Convert To Single Page + + +#pageExtracter +pageExtracter.title=Extract Pages +pageExtracter.header=Extract Pages +pageExtracter.submit=Extract + + +#getPdfInfo +getPdfInfo.title=Get Info on PDF +getPdfInfo.header=Get Info on PDF +getPdfInfo.submit=Get Info +getPdfInfo.downloadJson=Download 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 + + + +#url-to-pdf +URLToPDF.title=URL To PDF +URLToPDF.header=URL To PDF +URLToPDF.submit=Convert +URLToPDF.credit=Uses 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 + + +#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 + + +#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 + + +#auto-rename +auto-rename.title=Auto Rename +auto-rename.header=Auto Rename PDF +auto-rename.submit=Auto Rename + + +#adjustContrast +adjustContrast.title=Adjust Contrast +adjustContrast.header=Adjust Contrast +adjustContrast.contrast=Contrast: +adjustContrast.brightness=Brightness: +adjustContrast.saturation=Saturation: +adjustContrast.download=Download + + +#crop +crop.title=Crop +crop.header=Crop Image +crop.submit=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 + + +#pipeline +pipeline.title=Pipeline + + +#pageLayout +pageLayout.title=Multi Page Layout +pageLayout.header=Multi Page Layout +pageLayout.pagesPerSheet=Pages per sheet: +pageLayout.addBorder=Add Borders +pageLayout.submit=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 + + +#certSign +certSign.title=Certificate Signing +certSign.header=Sign a PDF with your certificate (Work in progress) +certSign.selectPDF=Select a PDF File for Signing: +certSign.selectKey=Select Your Private Key File (PKCS#8 format, could be .pem or .der): +certSign.selectCert=Select Your Certificate File (X.509 format, could be .pem or .der): +certSign.selectP12=Select Your PKCS#12 Keystore File (.p12 or .pfx) (Optional, If provided, it should contain your private key and certificate): +certSign.certType=Certificate Type +certSign.password=Enter Your Keystore or Private Key Password (If Any): +certSign.showSig=Show Signature +certSign.reason=Reason +certSign.location=Location +certSign.name=Name +certSign.submit=Sign PDF + + +#removeBlanks +removeBlanks.title=Remove Blanks +removeBlanks.header=Remove Blank Pages +removeBlanks.threshold=Pixel Whiteness Threshold: +removeBlanks.thresholdDesc=Threshold for determining how white a white pixel must be to be classed as 'White'. 0 = Black, 255 pure white. +removeBlanks.whitePercent=White Percent (%): +removeBlanks.whitePercentDesc=Percent of page that must be 'white' pixels to be removed +removeBlanks.submit=Remove Blanks + + +#removeAnnotations +removeAnnotations.title=Remove Annotations +removeAnnotations.header=Remove Annotations +removeAnnotations.submit=Remove + + +#compare +compare.title=Compare +compare.header=Compare PDFs +compare.document.1=Document 1 +compare.document.2=Document 2 +compare.submit=Compare + + +#sign +sign.title=Sign +sign.header=Sign PDFs +sign.upload=Upload Image +sign.draw=Draw Signature +sign.text=Text Input +sign.clear=Clear +sign.add=Add + + +#repair +repair.title=Repair +repair.header=Repair PDFs +repair.submit=Repair + + +#flatten +flatten.title=Flatten +flatten.header=Flatten PDFs +flatten.submit=Flatten + + +#ScannerImageSplit +ScannerImageSplit.selectText.1=Angle Threshold: +ScannerImageSplit.selectText.2=Sets the minimum absolute angle required for the image to be rotated (default: 10). +ScannerImageSplit.selectText.3=Tolerance: +ScannerImageSplit.selectText.4=Determines the range of color variation around the estimated background color (default: 30). +ScannerImageSplit.selectText.5=Minimum Area: +ScannerImageSplit.selectText.6=Sets the minimum area threshold for a photo (default: 10000). +ScannerImageSplit.selectText.7=Minimum Contour Area: +ScannerImageSplit.selectText.8=Sets the minimum contour area threshold for a photo +ScannerImageSplit.selectText.9=Border Size: +ScannerImageSplit.selectText.10=Sets the size of the border added and removed to prevent white borders in the output (default: 1). + + +#OCR +ocr.title=OCR / Scan Cleanup +ocr.header=Cleanup Scans / OCR (Optical Character Recognition) +ocr.selectText.1=Select languages that are to be detected within the PDF (Ones listed are the ones currently detected): +ocr.selectText.2=Produce text file containing OCR text alongside the OCR'ed PDF +ocr.selectText.3=Correct pages were scanned at a skewed angle by rotating them back into place +ocr.selectText.4=Clean page so its less likely that OCR will find text in background noise. (No output change) +ocr.selectText.5=Clean page so its less likely that OCR will find text in background noise, maintains cleanup in output. +ocr.selectText.6=Ignores pages that have interactive text on them, only OCRs pages that are images +ocr.selectText.7=Force OCR, will OCR Every page removing all original text elements +ocr.selectText.8=Normal (Will error if PDF contains text) +ocr.selectText.9=Additional Settings +ocr.selectText.10=OCR Mode +ocr.selectText.11=Remove images after OCR (Removes ALL images, only useful if part of conversion step) +ocr.selectText.12=Render Type (Advanced) +ocr.help=Please read this documentation on how to use this for other languages and/or use not in docker +ocr.credit=This service uses OCRmyPDF and Tesseract for OCR. +ocr.submit=Process PDF with OCR + + +#extractImages +extractImages.title=Extract Images +extractImages.header=Extract Images +extractImages.selectText=Select image format to convert extracted images to +extractImages.submit=Extract + + +#File to PDF +fileToPDF.title=File to PDF +fileToPDF.header=Convert any file to PDF +fileToPDF.credit=This service uses LibreOffice and Unoconv for file conversion. +fileToPDF.supportedFileTypes=Supported file types should include the below however for a full updated list of supported formats, please refer to the LibreOffice documentation +fileToPDF.submit=Convert to PDF + + +#compress +compress.title=Compress +compress.header=Compress PDF +compress.credit=This service uses Ghostscript for PDF Compress/Optimisation. +compress.selectText.1=Manual Mode - From 1 to 4 +compress.selectText.2=Optimization level: +compress.selectText.3=4 (Terrible for text images) +compress.selectText.4=Auto mode - Auto adjusts quality to get PDF to exact size +compress.selectText.5=Expected PDF Size (e.g. 25MB, 10.8MB, 25KB) +compress.submit=Compress + + +#Add image +addImage.title=Add Image +addImage.header=Add image to PDF +addImage.everyPage=Every Page? +addImage.upload=Add image +addImage.submit=Add image + + +#merge +merge.title=Merge +merge.header=Merge multiple PDFs (2+) +merge.sortByName=Sort by name +merge.sortByDate=Sort by date +merge.submit=Merge + + +#pdfOrganiser +pdfOrganiser.title=Page Organiser +pdfOrganiser.header=PDF Page Organiser +pdfOrganiser.submit=Rearrange Pages + + +#multiTool +multiTool.title=PDF Multi Tool +multiTool.header=PDF Multi Tool + +#view pdf +viewPdf.title=View PDF +viewPdf.header=View PDF + +#pageRemover +pageRemover.title=Page Remover +pageRemover.header=PDF Page remover +pageRemover.pagesToDelete=Pages to delete (Enter a comma-separated list of page numbers) : +pageRemover.submit=Delete Pages + + +#rotate +rotate.title=Rotate PDF +rotate.header=Rotate PDF +rotate.selectAngle=Select rotation angle (in multiples of 90 degrees): +rotate.submit=Rotate + + +#merge +split.title=Split PDF +split.header=Split PDF +split.desc.1=The numbers you select are the page number you wish to do a split on +split.desc.2=As such selecting 1,3,7-8 would split a 10 page document into 6 separate PDFS with: +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.splitPages=Enter pages to split on: +split.submit=Split + + +#merge +imageToPDF.title=Image to PDF +imageToPDF.header=Image to PDF +imageToPDF.submit=Convert +imageToPDF.selectLabel=Image Fit Options +imageToPDF.fillPage=Fill Page +imageToPDF.fitDocumentToImage=Fit Page to Image +imageToPDF.maintainAspectRatio=Maintain Aspect Ratios +imageToPDF.selectText.2=Auto rotate PDF +imageToPDF.selectText.3=Multi file logic (Only enabled if working with multiple images) +imageToPDF.selectText.4=Merge into single PDF +imageToPDF.selectText.5=Convert to separate PDFs + + +#pdfToImage +pdfToImage.title=PDF to Image +pdfToImage.header=PDF to Image +pdfToImage.selectText=Image Format +pdfToImage.singleOrMultiple=Page to Image result type +pdfToImage.single=Single Big Image Combing all pages +pdfToImage.multi=Multiple Images, one image per page +pdfToImage.colorType=Colour type +pdfToImage.color=Colour +pdfToImage.grey=Greyscale +pdfToImage.blackwhite=Black and White (May lose data!) +pdfToImage.submit=Convert + + +#addPassword +addPassword.title=Add Password +addPassword.header=Add password (Encrypt) +addPassword.selectText.1=Select PDF to encrypt +addPassword.selectText.2=User Password +addPassword.selectText.3=Encryption Key Length +addPassword.selectText.4=Higher values are stronger, but lower values have better compatibility. +addPassword.selectText.5=Permissions to set (Recommended to be used along with Owner password) +addPassword.selectText.6=Prevent assembly of document +addPassword.selectText.7=Prevent content extraction +addPassword.selectText.8=Prevent extraction for accessibility +addPassword.selectText.9=Prevent filling in form +addPassword.selectText.10=Prevent modification +addPassword.selectText.11=Prevent annotation modification +addPassword.selectText.12=Prevent printing +addPassword.selectText.13=Prevent printing different formats +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 +addPassword.submit=Encrypt + + +#watermark +watermark.title=Add Watermark +watermark.header=Add Watermark +watermark.selectText.1=Select PDF to add watermark to: +watermark.selectText.2=Watermark Text: +watermark.selectText.3=Font Size: +watermark.selectText.4=Rotation (0-360): +watermark.selectText.5=widthSpacer (Space between each watermark horizontally): +watermark.selectText.6=heightSpacer (Space between each watermark vertically): +watermark.selectText.7=Opacity (0% - 100%): +watermark.selectText.8=Watermark Type: +watermark.selectText.9=Watermark Image: +watermark.submit=Add Watermark + + +#Change permissions +permissions.title=Change Permissions +permissions.header=Change Permissions +permissions.warning=Warning to have these permissions be unchangeable it is recommended to set them with a password via the add-password page +permissions.selectText.1=Select PDF to change permissions +permissions.selectText.2=Permissions to set +permissions.selectText.3=Prevent assembly of document +permissions.selectText.4=Prevent content extraction +permissions.selectText.5=Prevent extraction for accessibility +permissions.selectText.6=Prevent filling in form +permissions.selectText.7=Prevent modification +permissions.selectText.8=Prevent annotation modification +permissions.selectText.9=Prevent printing +permissions.selectText.10=Prevent printing different formats +permissions.submit=Change + + +#remove password +removePassword.title=Remove password +removePassword.header=Remove password (Decrypt) +removePassword.selectText.1=Select PDF to Decrypt +removePassword.selectText.2=Password +removePassword.submit=Remove + + +#changeMetadata +changeMetadata.title=Change Metadata +changeMetadata.header=Change Metadata +changeMetadata.selectText.1=Please edit the variables you wish to change +changeMetadata.selectText.2=Delete all metadata +changeMetadata.selectText.3=Show Custom Metadata: +changeMetadata.author=Author: +changeMetadata.creationDate=Creation Date (yyyy/MM/dd HH:mm:ss): +changeMetadata.creator=Creator: +changeMetadata.keywords=Keywords: +changeMetadata.modDate=Modification Date (yyyy/MM/dd HH:mm:ss): +changeMetadata.producer=Producer: +changeMetadata.subject=Subject: +changeMetadata.title=Title: +changeMetadata.trapped=Trapped: +changeMetadata.selectText.4=Other Metadata: +changeMetadata.selectText.5=Add Custom Metadata Entry +changeMetadata.submit=Change + + +#pdfToPDFA +pdfToPDFA.title=PDF To PDF/A +pdfToPDFA.header=PDF To PDF/A +pdfToPDFA.credit=This service uses OCRmyPDF for PDF/A conversion +pdfToPDFA.submit=Convert + + +#PDFToWord +PDFToWord.title=PDF to Word +PDFToWord.header=PDF to Word +PDFToWord.selectText.1=Output file format +PDFToWord.credit=This service uses LibreOffice for file conversion. +PDFToWord.submit=Convert + + +#PDFToPresentation +PDFToPresentation.title=PDF to Presentation +PDFToPresentation.header=PDF to Presentation +PDFToPresentation.selectText.1=Output file format +PDFToPresentation.credit=This service uses LibreOffice for file conversion. +PDFToPresentation.submit=Convert + + +#PDFToText +PDFToText.title=PDF to RTF (Text) +PDFToText.header=PDF to RTF (Text) +PDFToText.selectText.1=Output file format +PDFToText.credit=This service uses LibreOffice for file conversion. +PDFToText.submit=Convert + + +#PDFToHTML +PDFToHTML.title=PDF to HTML +PDFToHTML.header=PDF to HTML +PDFToHTML.credit=This service uses LibreOffice for file conversion. +PDFToHTML.submit=Convert + + +#PDFToXML +PDFToXML.title=PDF to XML +PDFToXML.header=PDF to XML +PDFToXML.credit=This service uses LibreOffice for file conversion. +PDFToXML.submit=Convert + +#PDFToCSV +PDFToCSV.title=PDF to CSV +PDFToCSV.header=PDF to CSV +PDFToCSV.prompt=Choose page to extract table +PDFToCSV.submit=Extract + +#split-by-size-or-count +split-by-size-or-count.header=Split PDF by Size or Count +split-by-size-or-count.type.label=Select Split Type +split-by-size-or-count.type.size=By Size +split-by-size-or-count.type.pageCount=By Page Count +split-by-size-or-count.type.docCount=By Document Count +split-by-size-or-count.value.label=Enter Value +split-by-size-or-count.value.placeholder=Enter size (e.g., 2MB or 3KB) or count (e.g., 5) +split-by-size-or-count.submit=Submit + + +#overlay-pdfs +overlay-pdfs.header=Overlay PDF Files +overlay-pdfs.baseFile.label=Select Base PDF File +overlay-pdfs.overlayFiles.label=Select Overlay PDF Files +overlay-pdfs.mode.label=Select Overlay Mode +overlay-pdfs.mode.sequential=Sequential Overlay +overlay-pdfs.mode.interleaved=Interleaved Overlay +overlay-pdfs.mode.fixedRepeat=Fixed Repeat Overlay +overlay-pdfs.counts.label=Overlay Counts (for Fixed Repeat Mode) +overlay-pdfs.counts.placeholder=Enter comma-separated counts (e.g., 2,3,1) +overlay-pdfs.position.label=Select Overlay Position +overlay-pdfs.position.foreground=Foreground +overlay-pdfs.position.background=Background +overlay-pdfs.submit=Submit + + +#split-by-sections +split-by-sections.title=Split PDF by Sections +split-by-sections.header=Split PDF into Sections +split-by-sections.horizontal.label=Horizontal Divisions +split-by-sections.vertical.label=Vertical Divisions +split-by-sections.horizontal.placeholder=Enter number of horizontal divisions +split-by-sections.vertical.placeholder=Enter number of vertical divisions +split-by-sections.submit=Split PDF diff --git a/src/main/resources/static/.DS_Store b/src/main/resources/static/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..a9c696b9e9e434a95a703880fbd2f846e3c05d5c GIT binary patch literal 8196 zcmeHMTWl0n7(U;$v@>*|1GLg&M>buEfGxB|Y`G=dn{qF*E!~#FGP^U^SUz4)Lg`lx7vF+N~4ULG{j7nKM9nKKJ^3o$Xqh|Wpo{PW+= zIsbpYe`e1tV+>t+y_K;##+XQ#N0ln-uF*Wbcg<=-ASovb@@LFoZfe{eOIc28mUSoy zGZ1DV%s`ldFau!*{tX$RcedBW>%8~5HtfR;gcX25$sMCkHpETGez`i~Ck{38HS z?+D;Gx~Fr1?-L1VETGez`mQu4KRqCDMR3FbcPD+sGbb7g=rpI?oq@YE1T!Nzp}?P= z{35J&EV0H$)@~L1Z%P@@{DmlNunHsZ9H`mhgDTK1}ITe+aQe{=;{`jaf z9?xmHyxXN^_jz2u<5;QUy_VW*8skZ&rrWV|nrRzZ-@()kG8q{(ZQU8~a`LwB`o3|l zkR(w`D)p0-ZR_u7inO+_pK6LswzjNW+Z1VUZJU~s#MlP;Bg>$7O;6G zah)s;%5n?c{G&u!ycpDHK~SPJw@RL;4km_%<&mVaut2Nt8_SuF?d~v}5HnwwqKIq%|v@x3rwmX<2deUV~)SZaV8&)^5i&y1L@C z!>*Ifb^C)Q6(#Q)dkh-OEEqjBqMI;jO3$&TBtS@K<}Y5lY(;Zh`=(g$)}41>s8$v% zTqM`Z!<0@tXWnBP*&)qM8@6uRhX%$?JvTa7FkLfc8U41FF{A}(k}g!&)i1fZK~=fI zRfnQ!BA+sk=FQwOB`S*k91*oq9?@xWJ00DdMHiK`G!D(aTy0eMd7AF5LA@S0tWlyx}@^-H%~OU46A0R|iDpBaybqvvPpJ|J;qM6SJ^rC9{YrS!MXpSNw*{!W?0-P$$$2jY5;qEUXsVg$`kZuu<40^a%+;6AlZGFviy}6w7UY zF~C56jOdJK2$fs#4Ny39?Q(0lYs=Pc@{Sv(+%C@d3#_L0rp1xvtJd7!vAOdK5IJ&- zVEtnW__&`@Ek5pjT$Et;f?tX9ElZ1~ceNOKaSl+y7!#sbw@PJT9bG0;!6L%Y3Gxp{JLIIj@L+ z7t$}XOY9r=BfCsUpN~bT!>wo`e0O0BcKHa8V*m$`#6hH>BLf=_juO_7V+!|S8ut^@ zPZHK2#v^zfPvA+y`*V06FW@v@BDBAbH}DqT!Miwz_XFI2PN@G5-_a3kqJO5#jm(wt#n*Y~|K96=|G$w#4A&lJAk4s@WB}zo@t!U+y51wsJ8MVi zI!Kq-JiBR5eHZHd<2X_OI8OA+ABJ=vAydyM7SL%S5Z>*NX(&Pt3VK`cTCl086fdFH7cim+m7366gE3p0)*MP9cYPsW#OHBl zcLOa3k0N#kcE8#A+0A^A{b7vp-hAjX<}k(@&=5H)C4%NsSH%P)ay3U9X6Yo1Wmq!J z-!$R3*V!YBS-{3@_4_} + + + diff --git a/src/main/resources/templates/fragments/languages.html b/src/main/resources/templates/fragments/languages.html index 1983c9824..dadc9d9a5 100644 --- a/src/main/resources/templates/fragments/languages.html +++ b/src/main/resources/templates/fragments/languages.html @@ -29,6 +29,9 @@ icon Français + + icon Indonesia + icon Italiano From 960af83f1158138fa8b3112b884dc7b20033d8bb Mon Sep 17 00:00:00 2001 From: farwill Date: Tue, 26 Dec 2023 14:30:18 +0800 Subject: [PATCH 05/39] Fix README.md typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d72c98596..ff362f5af 100644 --- a/README.md +++ b/README.md @@ -267,7 +267,7 @@ For API usage you must provide a header with 'X-API-Key' and the associated API - 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 configuration. 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;`` From 4d3e442eccb4935a5f823c1dff183d57bda6fc01 Mon Sep 17 00:00:00 2001 From: sbplat <71648843+sbplat@users.noreply.github.com> Date: Tue, 26 Dec 2023 13:26:37 -0500 Subject: [PATCH 06/39] fix: add default value for the position in Add Page Numbers --- src/main/resources/templates/misc/add-page-numbers.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/templates/misc/add-page-numbers.html b/src/main/resources/templates/misc/add-page-numbers.html index 1ede15f8c..8d8af86cd 100644 --- a/src/main/resources/templates/misc/add-page-numbers.html +++ b/src/main/resources/templates/misc/add-page-numbers.html @@ -93,7 +93,7 @@ + max="9" value="8" required />
Date: Tue, 26 Dec 2023 13:31:33 -0500 Subject: [PATCH 07/39] fix: add selectedPosition style to the Add Page Number position selector default value --- src/main/resources/templates/misc/add-page-numbers.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/templates/misc/add-page-numbers.html b/src/main/resources/templates/misc/add-page-numbers.html index 8d8af86cd..a92841265 100644 --- a/src/main/resources/templates/misc/add-page-numbers.html +++ b/src/main/resources/templates/misc/add-page-numbers.html @@ -87,7 +87,7 @@
5
6
7
-
8
+
8
9
From 2a5fe2bd74382d5fe87e41dfd6c7a1a1b53c9e40 Mon Sep 17 00:00:00 2001 From: Aan Date: Wed, 27 Dec 2023 10:06:09 +0700 Subject: [PATCH 08/39] 27/12/2023 --- src/main/resources/messages_id_ID.properties | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties index 120b9d197..6ecc2545e 100644 --- a/src/main/resources/messages_id_ID.properties +++ b/src/main/resources/messages_id_ID.properties @@ -125,21 +125,21 @@ adminUserSettings.submit=Simpan Pengguna ############# # HOME-PAGE # ############# -home.desc=Your locally hosted one-stop-shop for all your PDF needs. +home.desc=Semua kebutuhan PDF Anda, langsung dari komputer lokal Anda. home.searchBar=Search for features... -home.viewPdf.title=View PDF -home.viewPdf.desc=View, annotate, add text or images -viewPdf.tags=view,read,annotate,text,image +home.viewPdf.title=Lihat PDF +home.viewPdf.desc=Melihat, membuat anotasi, menambahkan teks atau gambar +viewPdf.tags=melihat,membaca,membuat anotasi,teks,gambar -home.multiTool.title=PDF Multi Tool -home.multiTool.desc=Merge, Rotate, Rearrange, and Remove pages -multiTool.tags=Multi Tool,Multi operation,UI,click drag,front end,client side,interactive,intractable,move +home.multiTool.title=Alat Multi PDF +home.multiTool.desc=Menggabungkan, Memutar, Mengatur Ulang, dan Menghapus halaman +multiTool.tags=Alat multi,Operasi multi,UI,klik seret,front end,sisi klien,interaktif,sulit diatur,pindah -home.merge.title=Merge -home.merge.desc=Easily merge multiple PDFs into one. -merge.tags=merge,Page operations,Back end,server side +home.merge.title=Menggabungkan +home.merge.desc=Gabungkan beberapa PDF dengan mudah menjadi satu. +merge.tags=menggabungkan,Pengoperasian halaman,Back end,sisi server home.split.title=Split home.split.desc=Split PDFs into multiple documents From 1d3cf2bdc32fb318b6232cb4fe73d70d3410ca12 Mon Sep 17 00:00:00 2001 From: Aan Date: Wed, 27 Dec 2023 10:27:39 +0700 Subject: [PATCH 09/39] Remove DS_Store --- .DS_Store | Bin 6148 -> 0 bytes .gitignore | 6 +++++- src/.DS_Store | Bin 6148 -> 0 bytes src/main/.DS_Store | Bin 6148 -> 0 bytes src/main/resources/.DS_Store | Bin 6148 -> 0 bytes src/main/resources/static/.DS_Store | Bin 8196 -> 0 bytes src/main/resources/static/images/.DS_Store | Bin 6148 -> 0 bytes 7 files changed, 5 insertions(+), 1 deletion(-) delete mode 100644 .DS_Store delete mode 100644 src/.DS_Store delete mode 100644 src/main/.DS_Store delete mode 100644 src/main/resources/.DS_Store delete mode 100644 src/main/resources/static/.DS_Store delete mode 100644 src/main/resources/static/images/.DS_Store diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index c3c40f2c74a0891914b5dccde8a7ae478356b716..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHKOG-mQ5Ue&q0@-Bga<1SFh7eDX3#f^R5DEBj|5l#MqgnlN5udJtn@|lsHPh2I z!_?ySYXG)>-`@f&01LV!K75#(@4HXzsv?dSXFOrp54*$T@pzbI{~mDeHD2(F2R!2k ze}(~X*nJ<#J7iKo3P=GdAO)nrnF>@rT`bQ$M|3G51ujnk|2{OjV=o*NQsBQ8_yRk28YTb$ diff --git a/.gitignore b/.gitignore index 14f1c1399..67a9a4b5e 100644 --- a/.gitignore +++ b/.gitignore @@ -120,4 +120,8 @@ watchedFolders/ /build /.vscode -/.idea \ No newline at end of file +/.idea + +# Ignore Mac DS_Store files +.DS_Store +**/.DS_Store \ No newline at end of file diff --git a/src/.DS_Store b/src/.DS_Store deleted file mode 100644 index 7b0d36729e2ee777a660f9e8c6709dd97bc2fb68..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeH~F>V4u3`M`g7D#EfOgRk)$PGpaPQV2S&>%r5BKkQx-ySzvsH0W%E!l7ES!;KH zv9ktX>-*^w7y&HlPOLmk%$N_j;tOYdpMH*)!|itQBJHgMp3+B5_H$d10#ZNMM4T9irw zDe%t}uwk>?toc%Twm!X{*Y{cVb)%DUIm54?049DEf6&9YUwlE`oJkx{qD-+~ zi-^uHyQxScA|tq=Ty5x@?VES3mk|ZRamHS@yVLftIUWz4?AHO~4&@|gS;HUrwn3u; zRDcRl0V+TRKCVEP*wOgoC-XomKm~qX0sB4_xM59f1O3y1!CL^}0AV-Gy_WzM3jk|k z8;A%@g9;3)W{aUgN4#WSO>6^$E}G4U=FOTNiu&z1zj(T64dh4#sKB!V{a7|u{}=E# z{r@wGD=I(*{z?HI%$M^So|Lt<^Ej)u1-^n?&JAvcxl=HBIR<(;#=^?+#FHYg*c|&c Vu?=)O;!X$hXTWr!QGstOa0m456^#G@ diff --git a/src/main/resources/static/.DS_Store b/src/main/resources/static/.DS_Store deleted file mode 100644 index a9c696b9e9e434a95a703880fbd2f846e3c05d5c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8196 zcmeHMTWl0n7(U;$v@>*|1GLg&M>buEfGxB|Y`G=dn{qF*E!~#FGP^U^SUz4)Lg`lx7vF+N~4ULG{j7nKM9nKKJ^3o$Xqh|Wpo{PW+= zIsbpYe`e1tV+>t+y_K;##+XQ#N0ln-uF*Wbcg<=-ASovb@@LFoZfe{eOIc28mUSoy zGZ1DV%s`ldFau!*{tX$RcedBW>%8~5HtfR;gcX25$sMCkHpETGez`i~Ck{38HS z?+D;Gx~Fr1?-L1VETGez`mQu4KRqCDMR3FbcPD+sGbb7g=rpI?oq@YE1T!Nzp}?P= z{35J&EV0H$)@~L1Z%P@@{DmlNunHsZ9H`mhgDTK1}ITe+aQe{=;{`jaf z9?xmHyxXN^_jz2u<5;QUy_VW*8skZ&rrWV|nrRzZ-@()kG8q{(ZQU8~a`LwB`o3|l zkR(w`D)p0-ZR_u7inO+_pK6LswzjNW+Z1VUZJU~s#MlP;Bg>$7O;6G zah)s;%5n?c{G&u!ycpDHK~SPJw@RL;4km_%<&mVaut2Nt8_SuF?d~v}5HnwwqKIq%|v@x3rwmX<2deUV~)SZaV8&)^5i&y1L@C z!>*Ifb^C)Q6(#Q)dkh-OEEqjBqMI;jO3$&TBtS@K<}Y5lY(;Zh`=(g$)}41>s8$v% zTqM`Z!<0@tXWnBP*&)qM8@6uRhX%$?JvTa7FkLfc8U41FF{A}(k}g!&)i1fZK~=fI zRfnQ!BA+sk=FQwOB`S*k91*oq9?@xWJ00DdMHiK`G!D(aTy0eMd7AF5LA@S0tWlyx}@^-H%~OU46A0R|iDpBaybqvvPpJ|J;qM6SJ^rC9{YrS!MXpSNw*{!W?0-P$$$2jY5;qEUXsVg$`kZuu<40^a%+;6AlZGFviy}6w7UY zF~C56jOdJK2$fs#4Ny39?Q(0lYs=Pc@{Sv(+%C@d3#_L0rp1xvtJd7!vAOdK5IJ&- zVEtnW__&`@Ek5pjT$Et;f?tX9ElZ1~ceNOKaSl+y7!#sbw@PJT9bG0;!6L%Y3Gxp{JLIIj@L+ z7t$}XOY9r=BfCsUpN~bT!>wo`e0O0BcKHa8V*m$`#6hH>BLf=_juO_7V+!|S8ut^@ zPZHK2#v^zfPvA+y`*V06FW@v@BDBAbH}DqT!Miwz_XFI2PN@G5-_a3kqJO5#jm(wt#n*Y~|K96=|G$w#4A&lJAk4s@WB}zo@t!U+y51wsJ8MVi zI!Kq-JiBR5eHZHd<2X_OI8OA+ABJ=vAydyM7SL%S5Z>*NX(&Pt3VK`cTCl086fdFH7cim+m7366gE3p0)*MP9cYPsW#OHBl zcLOa3k0N#kcE8#A+0A^A{b7vp-hAjX<}k(@&=5H)C4%NsSH%P)ay3U9X6Yo1Wmq!J z-!$R3*V!YBS-{3@_4_} Date: Wed, 27 Dec 2023 12:28:31 +0700 Subject: [PATCH 10/39] add web-pages translation --- src/main/resources/messages_id_ID.properties | 742 +++++++++---------- 1 file changed, 369 insertions(+), 373 deletions(-) diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties index 6ecc2545e..336831c00 100644 --- a/src/main/resources/messages_id_ID.properties +++ b/src/main/resources/messages_id_ID.properties @@ -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=Pilih PDF @@ -119,7 +119,7 @@ adminUserSettings.role=Peran adminUserSettings.actions=Tindakan adminUserSettings.apiUser=Pengguna API Terbatas adminUserSettings.webOnlyUser=Pengguna Khusus Web -adminUserSettings.forceChange = Memaksa pengguna untuk mengubah nama pengguna/kata sandi saat masuk +adminUserSettings.forceChange=Memaksa pengguna untuk mengubah nama pengguna/kata sandi saat masuk adminUserSettings.submit=Simpan Pengguna ############# @@ -364,532 +364,528 @@ split-by-sections.tags=Section Split, Divide, Customize # # ########################### #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=Masuk +login.signin=Masuk +login.rememberme=Ingat saya +login.invalid=Nama pengguna atau kata sandi tidak valid. +login.locked=Akun Anda telah dikunci. +login.signinTitle=Silakan masuk #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=Redaksional Otomatis +autoRedact.header=Redaksional Otomatis +autoRedact.colorLabel=Warna +autoRedact.textsToRedactLabel=Teks untuk Disunting (dipisahkan baris) +autoRedact.textsToRedactPlaceholder=misalnya \nRahasia \nRahasia Tertinggi +autoRedact.useRegexLabel=Gunakan Regex +autoRedact.wholeWordSearchLabel=Pencarian Seluruh Kata +autoRedact.customPaddingLabel=Padding Ekstra Kustom +autoRedact.convertPDFToImageLabel=Konversi PDF ke PDF-Gambar (Digunakan untuk menghapus teks di belakang kotak) +autoRedact.submitButton=Kirim #showJS -showJS.title=Show Javascript -showJS.header=Show Javascript -showJS.downloadJS=Download Javascript -showJS.submit=Show +showJS.title=Tampilkan Javascript +showJS.header=Tampilkan Javascript +showJS.downloadJS=Unduh Javascript +showJS.submit=Tampilkan #pdfToSinglePage -pdfToSinglePage.title=PDF To Single Page -pdfToSinglePage.header=PDF To Single Page -pdfToSinglePage.submit=Convert To Single Page +pdfToSinglePage.title=PDF Ke Halaman Tunggal +pdfToSinglePage.header=PDF Ke Halaman Tunggal +pdfToSinglePage.submit=Konversi ke Halaman Tunggal #pageExtracter -pageExtracter.title=Extract Pages -pageExtracter.header=Extract Pages -pageExtracter.submit=Extract +pageExtracter.title=Ekstrak Halaman +pageExtracter.header=Ekstrak Halaman +pageExtracter.submit=Ekstrak #getPdfInfo -getPdfInfo.title=Get Info on PDF -getPdfInfo.header=Get Info on PDF -getPdfInfo.submit=Get Info -getPdfInfo.downloadJson=Download JSON - +getPdfInfo.title=Dapatkan Info tentang PDF +getPdfInfo.header=Dapatkan Info tentang PDF +getPdfInfo.submit=Dapatkan Info +getPdfInfo.downloadJson=Unduh 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 ke PDF +MarkdownToPDF.header=Markdown Ke PDF +MarkdownToPDF.submit=Konversi +MarkdownToPDF.help=Pekerjaan sedang berlangsung +MarkdownToPDF.credit=Menggunakan WeasyPrint #url-to-pdf -URLToPDF.title=URL To PDF -URLToPDF.header=URL To PDF -URLToPDF.submit=Convert -URLToPDF.credit=Uses WeasyPrint +URLToPDF.title=URL ke PDF +URLToPDF.header=URL Ke PDF +URLToPDF.submit=Konversi +URLToPDF.credit=Menggunakan 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 Ke PDF +HTMLToPDF.header=HTML Ke PDF +HTMLToPDF.help=Menerima file HTML dan ZIP yang berisi html / css / gambar, dll yang diperlukan +HTMLToPDF.submit=Konversi +HTMLToPDF.credit=Menggunakan 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=Bersihkan PDF +sanitizePDF.header=Membersihkan file PDF +sanitizePDF.selectText.1=Hapus tindakan JavaScript +sanitizePDF.selectText.2=Hapus file yang disematkan +sanitizePDF.selectText.3=Hapus metadata +sanitizePDF.selectText.4=Hapus tautan +sanitizePDF.selectText.5=Hapus font +sanitizePDF.submit=Membersihkan 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=Tambahkan Nomor Halaman +addPageNumbers.header=Tambahkan Nomor Halaman +addPageNumbers.selectText.1=Pilih file PDF: +addPageNumbers.selectText.2=Ukuran Margin +addPageNumbers.selectText.3=Posisi +addPageNumbers.selectText.4=Nomor Awal +addPageNumbers.selectText.5=Halaman ke Nomor +addPageNumbers.selectText.6=Teks Khusus +addPageNumbers.customTextDesc=Teks Khusus +addPageNumbers.numberPagesDesc=Halaman mana yang akan diberi nomor, default 'semua', juga menerima 1-5 atau 2,5,9, dll. +addPageNumbers.customNumberDesc=Default untuk {n}, juga menerima 'Halaman {n} dari {total}', 'Teks-{n}', '{nama file}-{n} +addPageNumbers.submit=Tambahkan Nomor Halaman #auto-rename -auto-rename.title=Auto Rename -auto-rename.header=Auto Rename PDF -auto-rename.submit=Auto Rename +auto-rename.title=Ganti Nama Otomatis +auto-rename.header=Ganti Nama PDF Otomatis +auto-rename.submit=Ganti Nama Otomatis #adjustContrast -adjustContrast.title=Adjust Contrast -adjustContrast.header=Adjust Contrast -adjustContrast.contrast=Contrast: -adjustContrast.brightness=Brightness: -adjustContrast.saturation=Saturation: -adjustContrast.download=Download +adjustContrast.title=Sesuaikan Kontras +adjustContrast.header=Sesuaikan Kontras +adjustContrast.contrast=Kontras: +adjustContrast.brightness=Kecerahan: +adjustContrast.saturation=Saturasi: +adjustContrast.download=Unduh #crop -crop.title=Crop -crop.header=Crop Image -crop.submit=Submit +crop.title=Pangkas +crop.header=Pangkas Gambar +crop.submit=Kirim #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 Pisah Otomatis +autoSplitPDF.header=Pisahkan PDF secara otomatis +autoSplitPDF.description=Cetak, Sisipkan, Pindai, unggah, dan biarkan kami memisahkan dokumen Anda secara otomatis. Tidak perlu menyortir secara manual. +autoSplitPDF.selectText.1=Cetak beberapa lembar pembatas dari bawah (Hitam putih tidak masalah). +autoSplitPDF.selectText.2=Pindai semua dokumen Anda sekaligus dengan memasukkan lembar pembatas di antaranya. +autoSplitPDF.selectText.3=Unggah satu file PDF besar yang dipindai dan biarkan Stirling PDF menangani sisanya. +autoSplitPDF.selectText.4=Halaman pembatas secara otomatis terdeteksi dan dihapus, menjamin dokumen akhir yang rapi. +autoSplitPDF.formPrompt=Kirimkan PDF yang berisi pembagi Halaman Stirling-PDF: +autoSplitPDF.duplexMode=Mode Dupleks (Pemindaian depan dan belakang) +autoSplitPDF.dividerDownload1=Unduh 'Pembagi Pembagi Otomatis (minimal).pdf' +autoSplitPDF.dividerDownload2=Unduh 'Pembagi Pembagi Otomatis (dengan instruksi).pdf' +autoSplitPDF.submit=Kirim #pipeline pipeline.title=Pipeline #pageLayout -pageLayout.title=Multi Page Layout -pageLayout.header=Multi Page Layout -pageLayout.pagesPerSheet=Pages per sheet: -pageLayout.addBorder=Add Borders -pageLayout.submit=Submit +pageLayout.title=Tata Letak Multi Halaman +pageLayout.header=Tata Letak Multi Halaman +pageLayout.pagesPerSheet=Halaman per lembar: +pageLayout.addBorder=Menambahkan Batas +pageLayout.submit=Kirim #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=Sesuaikan skala halaman +scalePages.header=Sesuaikan skala halaman +scalePages.pageSize=Ukuran halaman dokumen. +scalePages.scaleFactor=Tingkat zoom (potong) halaman. +scalePages.submit=Kirim #certSign -certSign.title=Certificate Signing -certSign.header=Sign a PDF with your certificate (Work in progress) -certSign.selectPDF=Select a PDF File for Signing: -certSign.selectKey=Select Your Private Key File (PKCS#8 format, could be .pem or .der): -certSign.selectCert=Select Your Certificate File (X.509 format, could be .pem or .der): -certSign.selectP12=Select Your PKCS#12 Keystore File (.p12 or .pfx) (Optional, If provided, it should contain your private key and certificate): -certSign.certType=Certificate Type -certSign.password=Enter Your Keystore or Private Key Password (If Any): -certSign.showSig=Show Signature -certSign.reason=Reason -certSign.location=Location -certSign.name=Name -certSign.submit=Sign PDF +certSign.title=Penandatanganan Sertifikat +certSign.header=Menandatangani PDF dengan sertifikat Anda (Sedang dalam proses) +certSign.selectPDF=Pilih File PDF untuk Penandatanganan: +certSign.selectKey=Pilih File Kunci Pribadi Anda (format PKCS # 8, bisa .pem atau .der): +certSign.selectCert=Pilih File Sertifikat Anda (format X.509, bisa .pem atau .der): +certSign.selectP12=Pilih File Keystore PKCS #12 Anda (.p12 atau .pfx) (Opsional, Jika disediakan, file tersebut harus berisi kunci pribadi dan sertifikat Anda): +certSign.certType=Jenis Sertifikat +certSign.password=Masukkan Kata Sandi Kunci atau Kunci Pribadi Anda (Jika Ada): +certSign.showSig=Tampilkan Tanda Tangan +certSign.reason=Alasan +certSign.location=Lokasi +certSign.name=Nama +certSign.submit=Tanda tangani PDF #removeBlanks -removeBlanks.title=Remove Blanks -removeBlanks.header=Remove Blank Pages -removeBlanks.threshold=Pixel Whiteness Threshold: -removeBlanks.thresholdDesc=Threshold for determining how white a white pixel must be to be classed as 'White'. 0 = Black, 255 pure white. -removeBlanks.whitePercent=White Percent (%): -removeBlanks.whitePercentDesc=Percent of page that must be 'white' pixels to be removed -removeBlanks.submit=Remove Blanks +removeBlanks.title=Hapus Halaman Kosong +hapusKosong.header=Hapus Halaman Kosong +removeBlanks.threshold=Ambang Batas Keputihan Piksel: +removeBlanks.thresholdDesc=Ambang batas untuk menentukan seberapa putih piksel putih yang harus diklasifikasikan sebagai 'Putih'. 0=Hitam, 255 putih murni. +removeBlanks.whitePercent=Persen Putih (%): +removeBlanks.whitePercentDesc=Persentase halaman yang harus berupa piksel 'putih' yang akan dihapus +removeBlanks.submit=Hapus Kosong #removeAnnotations -removeAnnotations.title=Remove Annotations -removeAnnotations.header=Remove Annotations -removeAnnotations.submit=Remove +removeAnnotations.title=Hapus Anotasi +removeAnnotations.header=Hapus Anotasi +removeAnnotations.submit=Hapus #compare -compare.title=Compare -compare.header=Compare PDFs -compare.document.1=Document 1 -compare.document.2=Document 2 -compare.submit=Compare - +compare.title=Bandingkan +compare.header=Bandingkan PDF +compare.document.1=Dokumen 1 +compare.document.2=Dokumen 2 +compare.submit=Bandingkan #sign -sign.title=Sign -sign.header=Sign PDFs -sign.upload=Upload Image -sign.draw=Draw Signature -sign.text=Text Input -sign.clear=Clear -sign.add=Add +sign.title=Tanda +sign.header=Tandatangani PDF +sign.upload=Unggah Gambar +sign.draw=Gambar Tanda Tangan +sign.text=Masukan Teks +sign.clear=Hapus +sign.add=Tambah #repair -repair.title=Repair -repair.header=Repair PDFs -repair.submit=Repair +repair.title=Perbaiki +repair.header=Perbaiki PDF +repair.submit=Perbaiki #flatten -flatten.title=Flatten -flatten.header=Flatten PDFs -flatten.submit=Flatten +flatten.title=Ratakan +flatten.header=Ratakan PDF +flatten.submit=Ratakan #ScannerImageSplit -ScannerImageSplit.selectText.1=Angle Threshold: -ScannerImageSplit.selectText.2=Sets the minimum absolute angle required for the image to be rotated (default: 10). -ScannerImageSplit.selectText.3=Tolerance: -ScannerImageSplit.selectText.4=Determines the range of color variation around the estimated background color (default: 30). -ScannerImageSplit.selectText.5=Minimum Area: -ScannerImageSplit.selectText.6=Sets the minimum area threshold for a photo (default: 10000). -ScannerImageSplit.selectText.7=Minimum Contour Area: -ScannerImageSplit.selectText.8=Sets the minimum contour area threshold for a photo -ScannerImageSplit.selectText.9=Border Size: -ScannerImageSplit.selectText.10=Sets the size of the border added and removed to prevent white borders in the output (default: 1). +ScannerImageSplit.selectText.1=Ambang Batas Sudut: +ScannerImageSplit.selectText.2=Menetapkan sudut absolut minimum yang diperlukan agar gambar dapat diputar (default: 10). +ScannerImageSplit.selectText.3=Toleransi: +ScannerImageSplit.selectText.4=Menentukan kisaran variasi warna di sekitar perkiraan warna latar belakang (default: 30). +ScannerImageSplit.selectText.5=Area Minimum: +ScannerImageSplit.selectText.6=Menetapkan ambang batas area minimum untuk foto (default: 10000). +ScannerImageSplit.selectText.7=Area Kontur Minimum: +ScannerImageSplit.selectText.8=Menetapkan ambang batas area kontur minimum untuk foto +ScannerImageSplit.selectText.9=Ukuran Batas: +ScannerImageSplit.selectText.10=Menetapkan ukuran batas yang ditambahkan dan dihapus untuk mencegah batas putih pada output (default: 1). #OCR -ocr.title=OCR / Scan Cleanup -ocr.header=Cleanup Scans / OCR (Optical Character Recognition) -ocr.selectText.1=Select languages that are to be detected within the PDF (Ones listed are the ones currently detected): -ocr.selectText.2=Produce text file containing OCR text alongside the OCR'ed PDF -ocr.selectText.3=Correct pages were scanned at a skewed angle by rotating them back into place -ocr.selectText.4=Clean page so its less likely that OCR will find text in background noise. (No output change) -ocr.selectText.5=Clean page so its less likely that OCR will find text in background noise, maintains cleanup in output. -ocr.selectText.6=Ignores pages that have interactive text on them, only OCRs pages that are images -ocr.selectText.7=Force OCR, will OCR Every page removing all original text elements -ocr.selectText.8=Normal (Will error if PDF contains text) -ocr.selectText.9=Additional Settings -ocr.selectText.10=OCR Mode -ocr.selectText.11=Remove images after OCR (Removes ALL images, only useful if part of conversion step) -ocr.selectText.12=Render Type (Advanced) -ocr.help=Please read this documentation on how to use this for other languages and/or use not in docker -ocr.credit=This service uses OCRmyPDF and Tesseract for OCR. -ocr.submit=Process PDF with OCR - +ocr.title=OCR / Pembersihan Pindaian +ocr.header=Pemindaian Pembersihan / OCR (Pengenalan Karakter Optik) +ocr.selectText.1=Pilih bahasa yang akan dideteksi di dalam PDF (Bahasa yang terdaftar adalah bahasa yang saat ini terdeteksi): +ocr.selectText.2=Menghasilkan file teks yang berisi teks OCR di samping PDF yang di-OCR +ocr.selectText.3=Halaman yang benar dipindai pada sudut miring dengan memutarnya kembali ke tempatnya +ocr.selectText.4=Halaman yang bersih sehingga kecil kemungkinan OCR akan menemukan teks dalam kebisingan latar belakang. (Tidak ada perubahan output) +ocr.selectText.5=Bersihkan halaman sehingga kecil kemungkinan OCR akan menemukan teks dalam kebisingan latar belakang, mempertahankan pembersihan pada keluaran. +ocr.selectText.6=Mengabaikan halaman yang memiliki teks interaktif, hanya halaman OCR yang berupa gambar +ocr.selectText.7=Memaksa OCR, akan meng-OCR setiap halaman dengan menghapus semua elemen teks asli +ocr.selectText.8=Normal (Akan terjadi kesalahan jika PDF berisi teks) +ocr.selectText.9=Pengaturan Tambahan +ocr.selectText.10=Mode OCR +ocr.selectText.11=Hapus gambar setelah OCR (Menghapus SEMUA gambar, hanya berguna jika merupakan bagian dari langkah konversi) +ocr.selectText.12=Jenis Render (Lanjutan) +ocr.help=Silakan baca dokumentasi ini tentang cara menggunakan ini untuk bahasa lain dan/atau penggunaan yang tidak ada di docker +ocr.credit=Layanan ini menggunakan OCRmyPDF dan Tesseract untuk OCR. +ocr.submit=Memproses PDF dengan OCR #extractImages -extractImages.title=Extract Images -extractImages.header=Extract Images -extractImages.selectText=Select image format to convert extracted images to -extractImages.submit=Extract +extractImages.title=Ekstrak Gambar +extractImages.header=Mengekstrak Gambar +extractImages.selectText=Pilih format gambar yang akan dikonversi +extractImages.submit=Ekstrak #File to PDF -fileToPDF.title=File to PDF -fileToPDF.header=Convert any file to PDF -fileToPDF.credit=This service uses LibreOffice and Unoconv for file conversion. -fileToPDF.supportedFileTypes=Supported file types should include the below however for a full updated list of supported formats, please refer to the LibreOffice documentation -fileToPDF.submit=Convert to PDF +fileToPDF.title=File ke PDF +fileToPDF.header=Mengonversi file apa pun ke PDF +fileToPDF.credit=Layanan ini menggunakan LibreOffice dan Unoconv untuk konversi file. +fileToPDF.supportedFileTypes=Jenis file yang didukung harus mencakup yang di bawah ini, namun untuk daftar lengkap format yang didukung, silakan lihat dokumentasi LibreOffice +fileToPDF.submit=Konversi ke PDF #compress -compress.title=Compress -compress.header=Compress PDF -compress.credit=This service uses Ghostscript for PDF Compress/Optimisation. -compress.selectText.1=Manual Mode - From 1 to 4 -compress.selectText.2=Optimization level: -compress.selectText.3=4 (Terrible for text images) -compress.selectText.4=Auto mode - Auto adjusts quality to get PDF to exact size -compress.selectText.5=Expected PDF Size (e.g. 25MB, 10.8MB, 25KB) -compress.submit=Compress +compress.title=Kompres +compress.header=Kompres PDF +compress.credit=Layanan ini menggunakan Ghostscript untuk Kompresi/Optimalisasi PDF. +compress.selectText.1=Mode Manual - Dari 1 hingga 4 +compress.selectText.2=Tingkat Optimalisasi: +compress.selectText.3=4 (Buruk untuk gambar teks) +compress.selectText.4=Mode Otomatis - Menyesuaikan kualitas secara otomatis untuk mendapatkan PDF dengan ukuran yang tepat +compress.selectText.5=Ukuran PDF yang diharapkan (mis. 25MB, 10,8MB, 25KB) +compress.submit=Kompres #Add image -addImage.title=Add Image -addImage.header=Add image to PDF -addImage.everyPage=Every Page? -addImage.upload=Add image -addImage.submit=Add image +addImage.title=Tambahkan Gambar +addImage.header=Tambahkan Gambar ke PDF +addImage.everyPage=Setiap Halaman? +addImage.upload=Tambahkan Gambar +addImage.submit=Tambahkan Gambar #merge -merge.title=Merge -merge.header=Merge multiple PDFs (2+) -merge.sortByName=Sort by name -merge.sortByDate=Sort by date -merge.submit=Merge +merge.title=Gabungkan +merge.header=Gabungkan beberapa PDFs (2+) +merge.sortByName=Sortir berdasarkan nama +merge.sortByDate=Sortir berdasrkan tanggal +merge.submit=Gabungkan #pdfOrganiser -pdfOrganiser.title=Page Organiser -pdfOrganiser.header=PDF Page Organiser -pdfOrganiser.submit=Rearrange Pages +pdfOrganiser.title=Pengaturan Halaman +pdfOrganiser.header=Pengaturan Halaman PDF +pdfOrganiser.submit=Susun ulang halaman #multiTool -multiTool.title=PDF Multi Tool -multiTool.header=PDF Multi Tool +multiTool.title=Alat Multi PDF +multiTool.header=Alat Multi PDF #view pdf -viewPdf.title=View PDF -viewPdf.header=View PDF +viewPdf.title=Lihat PDF +viewPdf.header=Lihat PDF #pageRemover -pageRemover.title=Page Remover -pageRemover.header=PDF Page remover -pageRemover.pagesToDelete=Pages to delete (Enter a comma-separated list of page numbers) : -pageRemover.submit=Delete Pages +pageRemover.title=Penghapus Halaman +pageRemover.header=Penghapus Halaman PDF +pageRemover.pagesToDelete=Halaman yang akan dihapus (Masukkan daftar nomor halaman yang dipisahkan dengan koma) : +pageRemover.submit=Hapus Halaman #rotate -rotate.title=Rotate PDF -rotate.header=Rotate PDF -rotate.selectAngle=Select rotation angle (in multiples of 90 degrees): -rotate.submit=Rotate +rotate.title=Rotasi PDF +rotate.header=Rotasi PDF +rotate.selectAngle=Pilih sudut rotasi (dalam kelipatan 90 derajat): +rotate.submit=Rotasi #merge -split.title=Split PDF -split.header=Split PDF -split.desc.1=The numbers you select are the page number you wish to do a split on -split.desc.2=As such selecting 1,3,7-8 would split a 10 page document into 6 separate PDFS with: -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.splitPages=Enter pages to split on: -split.submit=Split +split.title=Membagi PDF +split.header=Membagi PDF +split.desc.1=Angka yang Anda pilih adalah nomor halaman yang ingin Anda pisahkan +split.desc.2=Dengan demikian, memilih 1,3,7-8 akan membagi dokumen 10 halaman menjadi 6 PDF terpisah: +split.desc.3=Dokumen #1: Halaman 1 +split.desc.4=Dokumen #2: Halaman 2 dan 3 +split.desc.5=Dokumen #3: Halaman 4, 5 dan 6 +split.desc.6=Dokumen #4: Halaman 7 +split.desc.7=Dokumen #5: Halaman 8 +split.desc.8=Dokumen #6: Halaman 9 dan 10 +split.splitPages=Masukkan halaman yang akan dibagi: +split.submit=Pisahkan #merge -imageToPDF.title=Image to PDF -imageToPDF.header=Image to PDF -imageToPDF.submit=Convert -imageToPDF.selectLabel=Image Fit Options -imageToPDF.fillPage=Fill Page -imageToPDF.fitDocumentToImage=Fit Page to Image -imageToPDF.maintainAspectRatio=Maintain Aspect Ratios -imageToPDF.selectText.2=Auto rotate PDF -imageToPDF.selectText.3=Multi file logic (Only enabled if working with multiple images) -imageToPDF.selectText.4=Merge into single PDF -imageToPDF.selectText.5=Convert to separate PDFs +imageToPDF.title=Gambar ke PDF +imageToPDF.header=Gambar ke PDF +imageToPDF.submit=Konversi +imageToPDF.selectLabel=Opsi Kesesuaian Gambar +imageToPDF.fillPage=Isi Halaman +imageToPDF.fitDocumentToImage=Isi Dokumen dengan Gambar +imageToPDF.maintainAspectRatio=Pertahankan aspek rasio +imageToPDF.selectText.2=Putar PDF secara otomatis +imageToPDF.selectText.3=Logika multi file (Hanya diaktifkan jika bekerja dengan banyak gambar) +imageToPDF.selectText.4=Gabungkan menjadi satu PDF +imageToPDF.selectText.5=Mengonversi ke PDF yang terpisah #pdfToImage -pdfToImage.title=PDF to Image -pdfToImage.header=PDF to Image -pdfToImage.selectText=Image Format -pdfToImage.singleOrMultiple=Page to Image result type -pdfToImage.single=Single Big Image Combing all pages -pdfToImage.multi=Multiple Images, one image per page -pdfToImage.colorType=Colour type -pdfToImage.color=Colour +pdfToImage.title=PDF ke Gambar +pdfToImage.header=PDF ke Gambar +pdfToImage.selectText=Format Gambar +pdfToImage.singleOrMultiple=Tipe hasil halaman ke gambar +pdfToImage.single=Gambar Besar Tunggal Menggabungkan semua halaman +pdfToImage.multi=Beberapa Gambar, satu gambar per halaman +pdfToImage.colorType=Tipe warna +pdfToImage.color=Warna pdfToImage.grey=Greyscale -pdfToImage.blackwhite=Black and White (May lose data!) -pdfToImage.submit=Convert +pdfToImage.blackwhite=Black and White (Bisa kehilangan data!) +pdfToImage.submit=Konversi #addPassword -addPassword.title=Add Password -addPassword.header=Add password (Encrypt) -addPassword.selectText.1=Select PDF to encrypt -addPassword.selectText.2=User Password -addPassword.selectText.3=Encryption Key Length -addPassword.selectText.4=Higher values are stronger, but lower values have better compatibility. -addPassword.selectText.5=Permissions to set (Recommended to be used along with Owner password) -addPassword.selectText.6=Prevent assembly of document -addPassword.selectText.7=Prevent content extraction -addPassword.selectText.8=Prevent extraction for accessibility -addPassword.selectText.9=Prevent filling in form -addPassword.selectText.10=Prevent modification -addPassword.selectText.11=Prevent annotation modification -addPassword.selectText.12=Prevent printing -addPassword.selectText.13=Prevent printing different formats -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 -addPassword.submit=Encrypt +addPassword.title=Tambahkan kata sandi +addPassword.header=Tambahkan kata sandi (Encrypt) +addPassword.selectText.1=Pilih PDF untuk enkripsi +addPassword.selectText.2=Kata sandi Pengguna +addPassword.selectText.3=Panjang kunci enkripsi +addPassword.selectText.4=Nilai yang lebih tinggi lebih kuat, tetapi nilai yang lebih rendah memiliki kompatibilitas yang lebih baik. +addPassword.selectText.5=Perizinan untuk diubah (Disarankan untuk digunakan bersama dengan kata sandi Pemilik) +addPassword.selectText.6=Pencegahan untuk penyusunan dokumen +addPassword.selectText.7=Pencegahan untuk ekstraksi konten +addPassword.selectText.8=Pencegahan ekstraksi untuk aksesibilitas +addPassword.selectText.9=Pencegahan untuk mengisi formulir +addPassword.selectText.10=Pencegahan untuk pengubahan +addPassword.selectText.11=Pencegahan untuk perubahan anotasi +addPassword.selectText.12=Pencegahan untuk mencetak +addPassword.selectText.13=Pencegahan untuk mencetak format yang berbeda +addPassword.selectText.14=Kata sandi Pemilik +addPassword.selectText.15=Membatasi apa yang dapat dilakukan dengan dokumen setelah dibuka (Tidak didukung oleh semua pembaca) +addPassword.selectText.16=Membatasi pembukaan dokumen itu sendiri +addPassword.submit=Enkripsi #watermark -watermark.title=Add Watermark -watermark.header=Add Watermark -watermark.selectText.1=Select PDF to add watermark to: -watermark.selectText.2=Watermark Text: -watermark.selectText.3=Font Size: -watermark.selectText.4=Rotation (0-360): -watermark.selectText.5=widthSpacer (Space between each watermark horizontally): -watermark.selectText.6=heightSpacer (Space between each watermark vertically): +watermark.title=Tambahkan tanda air +watermark.header=Tambahkan tanda air +watermark.selectText.1=Pilih PDF untuk menambahkan tanda air: +watermark.selectText.2=Text tanda air: +watermark.selectText.3=Ukuran Font: +watermark.selectText.4=Rotasi (0-360): +watermark.selectText.5=widthSpacer (Spasi diantara setiap tanda air horisontal): +watermark.selectText.6=heightSpacer (Spasi diantara setiap tanda air vertikal): watermark.selectText.7=Opacity (0% - 100%): -watermark.selectText.8=Watermark Type: -watermark.selectText.9=Watermark Image: -watermark.submit=Add Watermark +watermark.selectText.8=Tipe tanda air: +watermark.selectText.9=Gambar tanda air: +watermark.submit=Tambahkan tanda air #Change permissions -permissions.title=Change Permissions -permissions.header=Change Permissions -permissions.warning=Warning to have these permissions be unchangeable it is recommended to set them with a password via the add-password page -permissions.selectText.1=Select PDF to change permissions -permissions.selectText.2=Permissions to set -permissions.selectText.3=Prevent assembly of document -permissions.selectText.4=Prevent content extraction -permissions.selectText.5=Prevent extraction for accessibility -permissions.selectText.6=Prevent filling in form -permissions.selectText.7=Prevent modification -permissions.selectText.8=Prevent annotation modification -permissions.selectText.9=Prevent printing -permissions.selectText.10=Prevent printing different formats -permissions.submit=Change +permissions.title=Ganti Perizinan +permissions.header=Ganti Perizinan +permissions.warning=Peringatan untuk menyetel izin yang tidak dapat diubah, disarankan untuk menyetel izin dengan kata sandi melalui halaman tambah kata sandi +permissions.selectText.1=Pilih PDF untuk mengubah izin +permissions.selectText.2=Perizinan untuk diubah +permissions.selectText.3=Pencegahan untuk penyusunan dokumen +permissions.selectText.4=Pencegahan untuk ekstraksi konten +permissions.selectText.5=Pencegahan ekstraksi untuk aksesibilitas +permissions.selectText.6=Pencegahan untuk mengisi formulir +permissions.selectText.7=Pencegahan untuk pengubahan +permissions.selectText.8=Pencegahan untuk perubahan anotasi +permissions.selectText.9=Pencegahan untuk mencetak +permissions.selectText.10=Pencegahan untuk mencetak format yang berbeda +permissions.submit=Ganti #remove password -removePassword.title=Remove password -removePassword.header=Remove password (Decrypt) -removePassword.selectText.1=Select PDF to Decrypt -removePassword.selectText.2=Password -removePassword.submit=Remove +removePassword.title=Hapus kata sandi +removePassword.header=Hapus kata sandi (Decrypt) +removePassword.selectText.1=Pilih PDF untuk proses Decrypt +removePassword.selectText.2=Kata Sandi +removePassword.submit=Hapus #changeMetadata -changeMetadata.title=Change Metadata -changeMetadata.header=Change Metadata -changeMetadata.selectText.1=Please edit the variables you wish to change -changeMetadata.selectText.2=Delete all metadata -changeMetadata.selectText.3=Show Custom Metadata: -changeMetadata.author=Author: -changeMetadata.creationDate=Creation Date (yyyy/MM/dd HH:mm:ss): -changeMetadata.creator=Creator: -changeMetadata.keywords=Keywords: -changeMetadata.modDate=Modification Date (yyyy/MM/dd HH:mm:ss): -changeMetadata.producer=Producer: -changeMetadata.subject=Subject: -changeMetadata.title=Title: -changeMetadata.trapped=Trapped: -changeMetadata.selectText.4=Other Metadata: -changeMetadata.selectText.5=Add Custom Metadata Entry -changeMetadata.submit=Change +changeMetadata.title=Ganti Metadata +changeMetadata.header=Ganti Metadata +changeMetadata.selectText.1=Silakan edit variabel yang ingin Anda ubah +changeMetadata.selectText.2=Hapus semua metadata +changeMetadata.selectText.3=Tampilkan Metadata Khusus: +changeMetadata.author=Penulis: +changeMetadata.creationDate=Tanggal Dibuat (yyyy/MM/dd HH:mm:ss): +changeMetadata.creator=Pencipta: +changeMetadata.keywords=Kata kunci: +changeMetadata.modDate=Tangal Diupdate (yyyy/MM/dd HH:mm:ss): +changeMetadata.producer=Produser: +changeMetadata.subject=Subjek: +changeMetadata.title=Judul: +changeMetadata.trapped=Terperangkap: +changeMetadata.selectText.4=Metadata Lain-lain: +changeMetadata.selectText.5=Tambahkan Metadata Khusus +changeMetadata.submit=Ganti #pdfToPDFA -pdfToPDFA.title=PDF To PDF/A -pdfToPDFA.header=PDF To PDF/A -pdfToPDFA.credit=This service uses OCRmyPDF for PDF/A conversion -pdfToPDFA.submit=Convert +pdfToPDFA.title=PDF Ke PDF/A +pdfToPDFA.header=PDF ke PDF/A +pdfToPDFA.credit=Layanan ini menggunakan OCRmyPDF untuk konversi PDF/A. +pdfToPDFA.submit=Konversi #PDFToWord -PDFToWord.title=PDF to Word -PDFToWord.header=PDF to Word -PDFToWord.selectText.1=Output file format -PDFToWord.credit=This service uses LibreOffice for file conversion. -PDFToWord.submit=Convert +PDFToWord.title=PDF Ke Word +PDFToWord.header=PDF ke Word +PDFToWord.selectText.1=Format file hasil +PDFToWord.credit=Layanan ini menggunakan LibreOffice untuk konversi file. +PDFToWord.submit=Konversi #PDFToPresentation -PDFToPresentation.title=PDF to Presentation -PDFToPresentation.header=PDF to Presentation -PDFToPresentation.selectText.1=Output file format -PDFToPresentation.credit=This service uses LibreOffice for file conversion. -PDFToPresentation.submit=Convert +PDFToPresentation.title=PDF Ke Presentation +PDFToPresentation.header=PDF ke Presentation +PDFToPresentation.selectText.1=Format file hasil +PDFToPresentation.credit=Layanan ini menggunakan LibreOffice untuk konversi file. +PDFToPresentation.submit=Konversi #PDFToText -PDFToText.title=PDF to RTF (Text) -PDFToText.header=PDF to RTF (Text) -PDFToText.selectText.1=Output file format -PDFToText.credit=This service uses LibreOffice for file conversion. -PDFToText.submit=Convert +PDFToText.title=PDF Ke RTF (Text) +PDFToText.header=PDF ke RTF (Text) +PDFToText.selectText.1=Format file hasil +PDFToText.credit=Layanan ini menggunakan LibreOffice untuk konversi file. +PDFToText.submit=Konversi #PDFToHTML -PDFToHTML.title=PDF to HTML -PDFToHTML.header=PDF to HTML -PDFToHTML.credit=This service uses LibreOffice for file conversion. -PDFToHTML.submit=Convert +PDFToHTML.title=PDF Ke HTML +PDFToHTML.header=PDF ke HTML +PDFToHTML.credit=Layanan ini menggunakan LibreOffice untuk konversi file. +PDFToHTML.submit=Konversi #PDFToXML -PDFToXML.title=PDF to XML -PDFToXML.header=PDF to XML -PDFToXML.credit=This service uses LibreOffice for file conversion. -PDFToXML.submit=Convert +PDFToXML.title=PDF Ke XML +PDFToXML.header=PDF ke XML +PDFToXML.credit=Layanan ini menggunakan LibreOffice untuk konversi file. +PDFToXML.submit=Konversi #PDFToCSV -PDFToCSV.title=PDF to CSV -PDFToCSV.header=PDF to CSV -PDFToCSV.prompt=Choose page to extract table -PDFToCSV.submit=Extract +PDFToCSV.title=PDF Ke CSV +PDFToCSV.header=PDF ke CSV +PDFToCSV.prompt=Pilih halaman untuk mengambil tabel +PDFToCSV.submit=Ektraksi #split-by-size-or-count -split-by-size-or-count.header=Split PDF by Size or Count -split-by-size-or-count.type.label=Select Split Type -split-by-size-or-count.type.size=By Size -split-by-size-or-count.type.pageCount=By Page Count -split-by-size-or-count.type.docCount=By Document Count -split-by-size-or-count.value.label=Enter Value -split-by-size-or-count.value.placeholder=Enter size (e.g., 2MB or 3KB) or count (e.g., 5) -split-by-size-or-count.submit=Submit +split-by-size-or-count.header=Pisahkan PDF berdasarkan ukuran atau jumlah +split-by-size-or-count.type.label= Pilih Tipe Split +split-by-size-or-count.type.size=Berdasarkan Ukuran +split-by-size-or-count.type.pageCount=Berdasarkan Jumlah Halaman +split-by-size-or-count.type.docCount=Berdasarkan Jumlah Dokumen +split-by-size-or-count.value.label=Masukkan Jumlah +split-by-size-or-count.value.placeholder=Masukkan ukuran (e.g., 2MB or 3KB) atau hitungan (e.g., 5) +split-by-size-or-count.submit=Kirim #overlay-pdfs -overlay-pdfs.header=Overlay PDF Files -overlay-pdfs.baseFile.label=Select Base PDF File -overlay-pdfs.overlayFiles.label=Select Overlay PDF Files -overlay-pdfs.mode.label=Select Overlay Mode -overlay-pdfs.mode.sequential=Sequential Overlay -overlay-pdfs.mode.interleaved=Interleaved Overlay -overlay-pdfs.mode.fixedRepeat=Fixed Repeat Overlay -overlay-pdfs.counts.label=Overlay Counts (for Fixed Repeat Mode) -overlay-pdfs.counts.placeholder=Enter comma-separated counts (e.g., 2,3,1) -overlay-pdfs.position.label=Select Overlay Position -overlay-pdfs.position.foreground=Foreground -overlay-pdfs.position.background=Background -overlay-pdfs.submit=Submit +overlay-pdfs.header=Hamparan file PDF +overlay-pdfs.baseFile.label=Pilih basis file PDF +overlay-pdfs.overlayFiles.label=Pilih hamparan file PDF +overlay-pdfs.mode.label=Pilih Mode Hamparan +overlay-pdfs.mode.sequential=Hamparan Sequential +overlay-pdfs.mode.interleaved=Hamparan Interleaved +overlay-pdfs.mode.fixedRepeat=Hamparan Fixed Repeat +overlay-pdfs.counts.label=Jumlah Overlay (Untuk hamparan fixed repeat) +overlay-pdfs.counts.placeholder=Masukkan hitungan yang dipisahkan oleh koma (e.g., 2,3,1) +overlay-pdfs.position.label=Pilih posisi hamparan +overlay-pdfs.position.foreground=Latar depan +overlay-pdfs.position.background=Latar belakang +overlay-pdfs.submit=Kirim #split-by-sections -split-by-sections.title=Split PDF by Sections -split-by-sections.header=Split PDF into Sections -split-by-sections.horizontal.label=Horizontal Divisions -split-by-sections.vertical.label=Vertical Divisions -split-by-sections.horizontal.placeholder=Enter number of horizontal divisions -split-by-sections.vertical.placeholder=Enter number of vertical divisions -split-by-sections.submit=Split PDF +split-by-sections.title=Pisahkan PDF berdasarkan bagian +split-by-sections.header=Pisahkan PDF menjadi bagian +split-by-sections.horizontal.label=Pembagian Horizontal +split-by-sections.vertical.label=Pembagian Vertikal +split-by-sections.horizontal.placeholder=Input angka untuk pembagian horizontal +split-by-sections.vertical.placeholder=Input angka untuk pembagian vertikal +split-by-sections.submit=Pisahkan PDF From 32b009b11f93cb832a63c675dc1ba00a7a07438d Mon Sep 17 00:00:00 2001 From: Perdana Hadi Date: Wed, 27 Dec 2023 12:38:17 +0700 Subject: [PATCH 11/39] remove extra line, add white space --- src/main/resources/messages_id_ID.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties index 336831c00..f6904fd53 100644 --- a/src/main/resources/messages_id_ID.properties +++ b/src/main/resources/messages_id_ID.properties @@ -481,7 +481,6 @@ crop.submit=Kirim #autoSplitPDF -autoSplitPDF.title=Auto Split PDF autoSplitPDF.title=PDF Pisah Otomatis autoSplitPDF.header=Pisahkan PDF secara otomatis autoSplitPDF.description=Cetak, Sisipkan, Pindai, unggah, dan biarkan kami memisahkan dokumen Anda secara otomatis. Tidak perlu menyortir secara manual. @@ -495,6 +494,7 @@ autoSplitPDF.dividerDownload1=Unduh 'Pembagi Pembagi Otomatis (minimal).pdf' autoSplitPDF.dividerDownload2=Unduh 'Pembagi Pembagi Otomatis (dengan instruksi).pdf' autoSplitPDF.submit=Kirim + #pipeline pipeline.title=Pipeline From aec85ddd66d7a8aca56b7ca1e57efffcf4afce77 Mon Sep 17 00:00:00 2001 From: Aan Date: Wed, 27 Dec 2023 14:09:57 +0700 Subject: [PATCH 12/39] missing quote --- src/main/resources/messages_id_ID.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties index f6904fd53..e6559be86 100644 --- a/src/main/resources/messages_id_ID.properties +++ b/src/main/resources/messages_id_ID.properties @@ -455,7 +455,7 @@ addPageNumbers.selectText.5=Halaman ke Nomor addPageNumbers.selectText.6=Teks Khusus addPageNumbers.customTextDesc=Teks Khusus addPageNumbers.numberPagesDesc=Halaman mana yang akan diberi nomor, default 'semua', juga menerima 1-5 atau 2,5,9, dll. -addPageNumbers.customNumberDesc=Default untuk {n}, juga menerima 'Halaman {n} dari {total}', 'Teks-{n}', '{nama file}-{n} +addPageNumbers.customNumberDesc=Default untuk {n}, juga menerima 'Halaman {n} dari {total}', 'Teks-{n}', '{nama file}-{n}' addPageNumbers.submit=Tambahkan Nomor Halaman From d325020e22dfeeff8558f5a50e3f1c808b972fcb Mon Sep 17 00:00:00 2001 From: Aan Date: Wed, 27 Dec 2023 14:37:25 +0700 Subject: [PATCH 13/39] home page section done, todo tags extractImages.tags --- src/main/resources/messages_id_ID.properties | 236 +++++++++---------- 1 file changed, 118 insertions(+), 118 deletions(-) diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties index e6559be86..9181c8cea 100644 --- a/src/main/resources/messages_id_ID.properties +++ b/src/main/resources/messages_id_ID.properties @@ -126,7 +126,7 @@ adminUserSettings.submit=Simpan Pengguna # HOME-PAGE # ############# home.desc=Semua kebutuhan PDF Anda, langsung dari komputer lokal Anda. -home.searchBar=Search for features... +home.searchBar=Mencari fitur... home.viewPdf.title=Lihat PDF @@ -141,221 +141,221 @@ home.merge.title=Menggabungkan home.merge.desc=Gabungkan beberapa PDF dengan mudah menjadi satu. merge.tags=menggabungkan,Pengoperasian halaman,Back end,sisi server -home.split.title=Split -home.split.desc=Split PDFs into multiple documents -split.tags=Page operations,divide,Multi Page,cut,server side +home.split.title=Membagi +home.split.desc=Membagi PDF menjadi beberapa dokumen +split.tags=Pengoperasian halaman,membagi,Multi Halaman,memotong,sisi server -home.rotate.title=Rotate -home.rotate.desc=Easily rotate your PDFs. -rotate.tags=server side +home.rotate.title=Putar +home.rotate.desc=Memutar PDF Anda dengan mudah. +rotate.tags=sisi server -home.imageToPdf.title=Image to PDF -home.imageToPdf.desc=Convert a image (PNG, JPEG, GIF) to PDF. -imageToPdf.tags=conversion,img,jpg,picture,photo +home.imageToPdf.title=Gambar ke PDF +home.imageToPdf.desc=Mengonversi gambar (PNG, JPEG, GIF) ke PDF. +imageToPdf.tags=konversi,img,jpg,gambar,foto -home.pdfToImage.title=PDF to Image -home.pdfToImage.desc=Convert a PDF to a image. (PNG, JPEG, GIF) -pdfToImage.tags=conversion,img,jpg,picture,photo +home.pdfToImage.title=PDF ke Gambar +home.pdfToImage.desc=Mengonversi PDF ke gambar. (PNG, JPEG, GIF) +pdfToImage.tags=konversi,img,jpg,gambar,foto -home.pdfOrganiser.title=Organise -home.pdfOrganiser.desc=Remove/Rearrange pages in any order -pdfOrganiser.tags=duplex,even,odd,sort,move +home.pdfOrganiser.title=Mengatur +home.pdfOrganiser.desc=Menghapus/Mengatur ulang halaman dalam urutan apa pun +pdfOrganiser.tags=dupleks,genap,ganjil,sortir,pindah -home.addImage.title=Add image -home.addImage.desc=Adds a image onto a set location on the PDF -addImage.tags=img,jpg,picture,photo +home.addImage.title=Tambahkan gambar +home.addImage.desc=Menambahkan gambar ke lokasi yang ditentukan pada PDF +addImage.tags=img,jpg,gambar,foto -home.watermark.title=Add Watermark -home.watermark.desc=Add a custom watermark to your PDF document. -watermark.tags=Text,repeating,label,own,copyright,trademark,img,jpg,picture,photo +home.watermark.title=Tambahkan penanda +home.watermark.desc=Menambahkan penanda khusus ke dokumen PDF Anda. +watermark.tags=Teks,berulang,label,sendiri,hak cipta,penanda,img,jpg,picture,photo -home.permissions.title=Change Permissions -home.permissions.desc=Change the permissions of your PDF document -permissions.tags=read,write,edit,print +home.permissions.title=Izin Perubahan +home.permissions.desc=Mengubah izin dokumen PDF Anda +permissions.tags=baca,tulis,sunting,cetak -home.removePages.title=Remove -home.removePages.desc=Delete unwanted pages from your PDF document. -removePages.tags=Remove pages,delete pages +home.removePages.title=Menghapus +home.removePages.desc=Menghapus halaman yang tidak diinginkan dari dokumen PDF Anda. +removePages.tags=Menghapus halaman,menghapus halaman -home.addPassword.title=Add Password -home.addPassword.desc=Encrypt your PDF document with a password. -addPassword.tags=secure,security +home.addPassword.title=Tambahkan Kata Sandi +home.addPassword.desc=Enkripsi dokumen PDF Anda dengan kata sandi. +addPassword.tags=aman,Keamanan -home.removePassword.title=Remove Password -home.removePassword.desc=Remove password protection from your PDF document. -removePassword.tags=secure,Decrypt,security,unpassword,delete password +home.removePassword.title=Hapus Kata Sandi +home.removePassword.desc=Menghapus perlindungan kata sandi dari dokumen PDF Anda. +removePassword.tags=aman,Dekripsi,keamanan,buka kata sandi,hapus kata sandi -home.compressPdfs.title=Compress -home.compressPdfs.desc=Compress PDFs to reduce their file size. -compressPdfs.tags=squish,small,tiny +home.compressPdfs.title=Kompres +home.compressPdfs.desc=Kompres PDF untuk mengurangi ukuran berkas. +compressPdfs.tags=squish, kecil, kecil -home.changeMetadata.title=Change Metadata -home.changeMetadata.desc=Change/Remove/Add metadata from a PDF document -changeMetadata.tags==Title,author,date,creation,time,publisher,producer,stats +home.changeMetadata.title=Ubah Metadata +home.changeMetadata.desc=Mengubah/Menghapus/Menambahkan metadata dari dokumen PDF +changeMetadata.tags==Judul,penulis,tanggal,pembuatan,waktu,penerbit,produser,statistik -home.fileToPDF.title=Convert file to PDF -home.fileToPDF.desc=Convert nearly any file to PDF (DOCX, PNG, XLS, PPT, TXT and more) -fileToPDF.tags=transformation,format,document,picture,slide,text,conversion,office,docs,word,excel,powerpoint +home.fileToPDF.title=Mengonversi file ke PDF +home.fileToPDF.desc=Mengonversi hampir semua file ke PDF (DOCX, PNG, XLS, PPT, TXT dan lain-lain) +fileToPDF.tags=transformasi,format,dokumen,gambar,slide,text,konversi,office,docs,word,excel,powerpoint -home.ocr.title=OCR / Cleanup scans -home.ocr.desc=Cleanup scans and detects text from images within a PDF and re-adds it as text. -ocr.tags=recognition,text,image,scan,read,identify,detection,editable +home.ocr.title=Pemindaian/Pembersihan OCR +home.ocr.desc=Memindai dan mendeteksi teks dari gambar di dalam PDF dan menambahkannya kembali sebagai teks. +ocr.tags=rekognisi,teks,gambar,pindai,baca,identifikasi,deteksi,dapat diedit -home.extractImages.title=Extract Images -home.extractImages.desc=Extracts all images from a PDF and saves them to zip +home.extractImages.title=Ekstrak Gambar +home.extractImages.desc=Mengekstrak semua gambar dari PDF dan menyimpannya ke zip extractImages.tags=picture,photo,save,archive,zip,capture,grab -home.pdfToPDFA.title=PDF to PDF/A -home.pdfToPDFA.desc=Convert PDF to PDF/A for long-term storage +home.pdfToPDFA.title=PDF ke PDF/A +home.pdfToPDFA.desc=Konversi PDF ke PDF/A untuk penyimpanan jangka panjang pdfToPDFA.tags=archive,long-term,standard,conversion,storage,preservation -home.PDFToWord.title=PDF to Word -home.PDFToWord.desc=Convert PDF to Word formats (DOC, DOCX and ODT) +home.PDFToWord.title=PDF ke Word +home.PDFToWord.desc=Mengonversi format PDF ke Word (DOC, DOCX, dan ODT) PDFToWord.tags=doc,docx,odt,word,transformation,format,conversion,office,microsoft,docfile -home.PDFToPresentation.title=PDF to Presentation -home.PDFToPresentation.desc=Convert PDF to Presentation formats (PPT, PPTX and ODP) +home.PDFToPresentation.title=PDF ke Presentasi +home.PDFToPresentation.desc=Mengonversi PDF ke format Presentasi (PPT, PPTX, dan ODP) PDFToPresentation.tags=slides,show,office,microsoft -home.PDFToText.title=PDF to RTF (Text) -home.PDFToText.desc=Convert PDF to Text or RTF format +home.PDFToText.title=PDF ke RTF (Teks) +home.PDFToText.desc=Konversi PDF ke format Teks atau RTF PDFToText.tags=richformat,richtextformat,rich text format -home.PDFToHTML.title=PDF to HTML -home.PDFToHTML.desc=Convert PDF to HTML format +home.PDFToHTML.title=PDF ke HTML +home.PDFToHTML.desc=Mengonversi PDF ke format HTML PDFToHTML.tags=web content,browser friendly -home.PDFToXML.title=PDF to XML -home.PDFToXML.desc=Convert PDF to XML format +home.PDFToXML.title=PDF ke XML +home.PDFToXML.desc=Mengonversi PDF ke format XML PDFToXML.tags=data-extraction,structured-content,interop,transformation,convert -home.ScannerImageSplit.title=Detect/Split Scanned photos -home.ScannerImageSplit.desc=Splits multiple photos from within a photo/PDF +home.ScannerImageSplit.title=Mendeteksi/Memisahkan foto yang dipindai +home.ScannerImageSplit.desc=Memisahkan beberapa foto dari dalam sebuah foto/PDF ScannerImageSplit.tags=separate,auto-detect,scans,multi-photo,organize -home.sign.title=Sign -home.sign.desc=Adds signature to PDF by drawing, text or image +home.sign.title=Tanda Tangan +home.sign.desc=Menambahkan tanda tangan ke PDF dengan gambar, teks, atau gambar sign.tags=authorize,initials,drawn-signature,text-sign,image-signature -home.flatten.title=Flatten -home.flatten.desc=Remove all interactive elements and forms from a PDF +home.flatten.title=Meratakan +home.flatten.desc=Menghapus semua elemen dan formulir interaktif dari PDF flatten.tags=static,deactivate,non-interactive,streamline -home.repair.title=Repair -home.repair.desc=Tries to repair a corrupt/broken PDF +home.repair.title=Perbaikan +home.repair.desc=Melakukan perbaikan PDF yang rusak/rusak repair.tags=fix,restore,correction,recover -home.removeBlanks.title=Remove Blank pages -home.removeBlanks.desc=Detects and removes blank pages from a document +home.removeBlanks.title=Menghapus halaman kosong +home.removeBlanks.desc=Mendeteksi dan menghapus halaman kosong dari dokumen removeBlanks.tags=cleanup,streamline,non-content,organize -home.removeAnnotations.title=Remove Annotations -home.removeAnnotations.desc=Removes all comments/annotations from a PDF +home.removeAnnotations.title=Menghapus Anotasi +home.removeAnnotations.desc=Menghapus semua komentar/anotasi dari PDF removeAnnotations.tags=comments,highlight,notes,markup,remove -home.compare.title=Compare -home.compare.desc=Compares and shows the differences between 2 PDF Documents +home.compare.title=Bandingkan +home.compare.desc=Membandingkan dan menunjukkan perbedaan antara 2 Dokumen 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=Tanda tangani dengan Sertifikat +home.certSign.desc=Menandatangani PDF dengan Certificate/Key (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=Tata Letak Multi-Halaman +home.pageLayout.desc=Menggabungkan beberapa halaman dokumen PDF menjadi satu halaman pageLayout.tags=merge,composite,single-view,organize -home.scalePages.title=Adjust page size/scale -home.scalePages.desc=Change the size/scale of a page and/or its contents. +home.scalePages.title=Menyesuaikan ukuran/skala halaman +home.scalePages.desc=Mengubah ukuran/skala halaman dan/atau isinya. 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=Pipeline (Lanjutan) +home.pipeline.desc=Menjalankan beberapa tindakan pada PDF dengan mendefinisikan skrip pipeline 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=Tambahkan Nomor Halaman +home.add-page-numbers.desc=Menambahkan nomor Halaman di seluruh dokumen di lokasi yang ditetapkan 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=Ubah Nama File PDF Secara Otomatis +home.auto-rename.desc=Mengganti nama file PDF secara otomatis berdasarkan tajuk yang terdeteksi 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=Menyesuaikan Warna/Kontras +home.adjust-contrast.desc=Sesuaikan Kontras, Saturasi, dan Kecerahan 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=Pangkas PDF +home.crop.desc=Pangkas PDF untuk memperkecil ukurannya (mempertahankan teks!) 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=Membagi Halaman Secara Otomatis +home.autoSplitPDF.desc=Membagi PDF yang dipindai secara otomatis dengan Kode QR pembagi halaman yang dipindai secara fisik 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=Sanitasi +home.sanitizePdf.desc=Menghapus skrip dan elemen lain dari file 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/Situs Web ke PDF +home.URLToPDF.desc=Mengonversi URL http apa pun ke 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 ke PDF +home.HTMLToPDF.desc=Mengonversi file HTML atau zip ke 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=Penurunan harga ke PDF +home.MarkdownToPDF.desc=Mengonversi file Markdown apa pun ke 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=Dapatkan Semua Info tentang PDF +home.getPdfInfo.desc=Mengambil setiap dan semua informasi yang mungkin ada pada PDF getPdfInfo.tags=infomation,data,stats,statistics -home.extractPage.title=Extract page(s) -home.extractPage.desc=Extracts select pages from PDF +home.extractPage.title=Ekstrak halaman +home.extractPage.desc=Mengekstrak halaman tertentu dari 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 ke Satu Halaman Besar +home.PdfToSinglePage.desc=Menggabungkan semua halaman PDF menjadi satu halaman besar PdfToSinglePage.tags=single page -home.showJS.title=Show Javascript -home.showJS.desc=Searches and displays any JS injected into a PDF +home.showJS.title=Tampilkan Javascript +home.showJS.desc=Mencari dan menampilkan JS apa pun yang disuntikkan ke dalam PDF showJS.tags=JS -home.autoRedact.title=Auto Redact -home.autoRedact.desc=Auto Redacts(Blacks out) text in a PDF based on input text +home.autoRedact.title=Redaksional Otomatis +home.autoRedact.desc=Menyunting Otomatis (Menghitamkan) teks dalam PDF berdasarkan teks masukan showJS.tags=Redact,Hide,black out,black,marker,hidden -home.tableExtraxt.title=PDF to CSV -home.tableExtraxt.desc=Extracts Tables from a PDF converting it to CSV +home.tableExtraxt.title=PDF ke CSV +home.tableExtraxt.desc=Mengekstrak Tabel dari PDF yang mengonversinya menjadi CSV tableExtraxt.tags=CSV,Table Extraction,extract,convert -home.autoSizeSplitPDF.title=Auto Split by Size/Count -home.autoSizeSplitPDF.desc=Split a single PDF into multiple documents based on size, page count, or document count +home.autoSizeSplitPDF.title=Pemisahan Otomatis berdasarkan Ukuran/Hitungan +home.autoSizeSplitPDF.desc=Membagi satu PDF menjadi beberapa dokumen berdasarkan ukuran, jumlah halaman, atau jumlah dokumen autoSizeSplitPDF.tags=pdf,split,document,organization -home.overlay-pdfs.title=Overlay PDFs -home.overlay-pdfs.desc=Overlays PDFs on-top of another PDF +home.overlay-pdfs.title=Tumpuk PDF +home.overlay-pdfs.desc=Menumpuk PDF di atas PDF lain overlay-pdfs.tags=Overlay -home.split-by-sections.title=Split PDF by Sections -home.split-by-sections.desc=Divide each page of a PDF into smaller horizontal and vertical sections +home.split-by-sections.title=Membagi PDF berdasarkan Bagian +home.split-by-sections.desc=Membagi setiap halaman PDF menjadi beberapa bagian horizontal dan vertikal yang lebih kecil split-by-sections.tags=Section Split, Divide, Customize ########################### From 964f22e3e08fc1ad03a64fd51035bdb3856ccb8a Mon Sep 17 00:00:00 2001 From: Aan Date: Wed, 27 Dec 2023 14:43:32 +0700 Subject: [PATCH 14/39] Add Bahasa Indonesia --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d72c98596..3aa815c4d 100644 --- a/README.md +++ b/README.md @@ -169,6 +169,7 @@ Stirling PDF currently supports 20! - Dutch (Nederlands) (nl_NL) - Greek (el_GR) - Turkish (Türkçe) (tr_TR) +- Indonesia (Bahasa Indonesia) (id_ID) If you want to add your own language to Stirling-PDF please refer https://github.com/Frooodle/Stirling-PDF/blob/main/HowToAddNewLanguage.md From 2d6bf43bdb255b71d0b95cd34da564b986dc546b Mon Sep 17 00:00:00 2001 From: Perdana Hadi Date: Wed, 27 Dec 2023 15:52:11 +0700 Subject: [PATCH 15/39] update tags translations --- src/main/resources/messages_id_ID.properties | 69 ++++++++++---------- 1 file changed, 34 insertions(+), 35 deletions(-) diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties index 9181c8cea..30b199c9b 100644 --- a/src/main/resources/messages_id_ID.properties +++ b/src/main/resources/messages_id_ID.properties @@ -208,129 +208,128 @@ ocr.tags=rekognisi,teks,gambar,pindai,baca,identifikasi,deteksi,dapat diedit home.extractImages.title=Ekstrak Gambar home.extractImages.desc=Mengekstrak semua gambar dari PDF dan menyimpannya ke zip -extractImages.tags=picture,photo,save,archive,zip,capture,grab +extractImages.tags=gambar, foto, simpan, arsip, zip, tangkap, ambil home.pdfToPDFA.title=PDF ke PDF/A home.pdfToPDFA.desc=Konversi PDF ke PDF/A untuk penyimpanan jangka panjang -pdfToPDFA.tags=archive,long-term,standard,conversion,storage,preservation +pdfToPDFA.tags=arsip, jangka panjang, standar, konversi, penyimpanan, pelestarian home.PDFToWord.title=PDF ke Word home.PDFToWord.desc=Mengonversi format PDF ke Word (DOC, DOCX, dan ODT) -PDFToWord.tags=doc,docx,odt,word,transformation,format,conversion,office,microsoft,docfile +PDFToWord.tags=doc, docx, odt, kata, transformasi, format, konversi, kantor, microsoft, docfile home.PDFToPresentation.title=PDF ke Presentasi home.PDFToPresentation.desc=Mengonversi PDF ke format Presentasi (PPT, PPTX, dan ODP) -PDFToPresentation.tags=slides,show,office,microsoft +PDFToPresentation.tags=slide, pertunjukan, kantor, microsoft home.PDFToText.title=PDF ke RTF (Teks) home.PDFToText.desc=Konversi PDF ke format Teks atau RTF -PDFToText.tags=richformat,richtextformat,rich text format +PDFToText.tags=format kaya, format teks kaya, format teks kaya home.PDFToHTML.title=PDF ke HTML home.PDFToHTML.desc=Mengonversi PDF ke format HTML -PDFToHTML.tags=web content,browser friendly +PDFToHTML.tags=konten web, ramah browser home.PDFToXML.title=PDF ke XML home.PDFToXML.desc=Mengonversi PDF ke format XML -PDFToXML.tags=data-extraction,structured-content,interop,transformation,convert +PDFToXML.tags=ekstraksi data, konten terstruktur, interop, transformasi, konversi home.ScannerImageSplit.title=Mendeteksi/Memisahkan foto yang dipindai home.ScannerImageSplit.desc=Memisahkan beberapa foto dari dalam sebuah foto/PDF -ScannerImageSplit.tags=separate,auto-detect,scans,multi-photo,organize +ScannerImageSplit.tags=pisahkan, deteksi otomatis, pindai, multi-foto, atur home.sign.title=Tanda Tangan home.sign.desc=Menambahkan tanda tangan ke PDF dengan gambar, teks, atau gambar -sign.tags=authorize,initials,drawn-signature,text-sign,image-signature +sign.tags=mengesahkan, inisial, tanda tangan yang digambar, tanda tangan teks, tanda tangan gambar home.flatten.title=Meratakan home.flatten.desc=Menghapus semua elemen dan formulir interaktif dari PDF -flatten.tags=static,deactivate,non-interactive,streamline +flatten.tags=statis, nonaktif, non-interaktif, ramping home.repair.title=Perbaikan home.repair.desc=Melakukan perbaikan PDF yang rusak/rusak -repair.tags=fix,restore,correction,recover +repair.tags=perbaiki, pulihkan, koreksi, pulihkan home.removeBlanks.title=Menghapus halaman kosong home.removeBlanks.desc=Mendeteksi dan menghapus halaman kosong dari dokumen -removeBlanks.tags=cleanup,streamline,non-content,organize +removeBlanks.tags=membersihkan, merampingkan, non-konten, mengatur home.removeAnnotations.title=Menghapus Anotasi home.removeAnnotations.desc=Menghapus semua komentar/anotasi dari PDF -removeAnnotations.tags=comments,highlight,notes,markup,remove +removeAnnotations.tags=komentar, sorot, catatan, markup, hapus home.compare.title=Bandingkan home.compare.desc=Membandingkan dan menunjukkan perbedaan antara 2 Dokumen PDF -compare.tags=differentiate,contrast,changes,analysis +compare.tags=membedakan, kontras, perubahan, analisis home.certSign.title=Tanda tangani dengan Sertifikat home.certSign.desc=Menandatangani PDF dengan Certificate/Key (PEM/P12) -certSign.tags=authenticate,PEM,P12,official,encrypt +certSign.tags=mengotentikasi, PEM, P12, resmi, mengenkripsi home.pageLayout.title=Tata Letak Multi-Halaman home.pageLayout.desc=Menggabungkan beberapa halaman dokumen PDF menjadi satu halaman -pageLayout.tags=merge,composite,single-view,organize +pageLayout.tags=menggabungkan, komposit, tampilan tunggal, mengatur home.scalePages.title=Menyesuaikan ukuran/skala halaman home.scalePages.desc=Mengubah ukuran/skala halaman dan/atau isinya. -scalePages.tags=resize,modify,dimension,adapt +scalePages.tags=mengubah ukuran, memodifikasi, dimensi, mengadaptasi home.pipeline.title=Pipeline (Lanjutan) home.pipeline.desc=Menjalankan beberapa tindakan pada PDF dengan mendefinisikan skrip pipeline -pipeline.tags=automate,sequence,scripted,batch-process +pipeline.tags=mengotomatiskan, mengurutkan, menulis, proses batch home.add-page-numbers.title=Tambahkan Nomor Halaman home.add-page-numbers.desc=Menambahkan nomor Halaman di seluruh dokumen di lokasi yang ditetapkan -add-page-numbers.tags=paginate,label,organize,index +add-page-numbers.tags=beri halaman, beri label, atur, indeks home.auto-rename.title=Ubah Nama File PDF Secara Otomatis home.auto-rename.desc=Mengganti nama file PDF secara otomatis berdasarkan tajuk yang terdeteksi -auto-rename.tags=auto-detect,header-based,organize,relabel +auto-rename.tags=deteksi otomatis, berbasis tajuk, atur, beri label ulang home.adjust-contrast.title=Menyesuaikan Warna/Kontras home.adjust-contrast.desc=Sesuaikan Kontras, Saturasi, dan Kecerahan PDF -adjust-contrast.tags=color-correction,tune,modify,enhance +adjust-contrast.tags=koreksi warna, menyetel, memodifikasi, meningkatkan home.crop.title=Pangkas PDF home.crop.desc=Pangkas PDF untuk memperkecil ukurannya (mempertahankan teks!) -crop.tags=trim,shrink,edit,shape +crop.tags=memangkas, mengecilkan, mengedit, membentuk home.autoSplitPDF.title=Membagi Halaman Secara Otomatis home.autoSplitPDF.desc=Membagi PDF yang dipindai secara otomatis dengan Kode QR pembagi halaman yang dipindai secara fisik -autoSplitPDF.tags=QR-based,separate,scan-segment,organize +autoSplitPDF.tags=Berbasis QR, pisahkan, pindai segmen, atur home.sanitizePdf.title=Sanitasi home.sanitizePdf.desc=Menghapus skrip dan elemen lain dari file PDF -sanitizePdf.tags=clean,secure,safe,remove-threats +sanitizePdf.tags=bersih, terlindungi, aman, menghilangkan ancaman home.URLToPDF.title=URL/Situs Web ke PDF home.URLToPDF.desc=Mengonversi URL http apa pun ke PDF -URLToPDF.tags=web-capture,save-page,web-to-doc,archive +URLToPDF.tags=tangkap web, simpan halaman, web-ke-dok, arsip home.HTMLToPDF.title=HTML ke PDF home.HTMLToPDF.desc=Mengonversi file HTML atau zip ke PDF -HTMLToPDF.tags=markup,web-content,transformation,convert +HTMLToPDF.tags=markup, konten web, transformasi, konversi home.MarkdownToPDF.title=Penurunan harga ke PDF home.MarkdownToPDF.desc=Mengonversi file Markdown apa pun ke PDF -MarkdownToPDF.tags=markup,web-content,transformation,convert +MarkdownToPDF.tags=markup, konten web, transformasi, konversi home.getPdfInfo.title=Dapatkan Semua Info tentang PDF home.getPdfInfo.desc=Mengambil setiap dan semua informasi yang mungkin ada pada PDF -getPdfInfo.tags=infomation,data,stats,statistics +getPdfInfo.tags=informasi, data, statistik, statistik home.extractPage.title=Ekstrak halaman home.extractPage.desc=Mengekstrak halaman tertentu dari PDF -extractPage.tags=extract +extractPage.tags=ekstrak home.PdfToSinglePage.title=PDF ke Satu Halaman Besar home.PdfToSinglePage.desc=Menggabungkan semua halaman PDF menjadi satu halaman besar -PdfToSinglePage.tags=single page - +PdfToSinglePage.tags=halaman tunggal home.showJS.title=Tampilkan Javascript home.showJS.desc=Mencari dan menampilkan JS apa pun yang disuntikkan ke dalam PDF @@ -338,16 +337,16 @@ showJS.tags=JS home.autoRedact.title=Redaksional Otomatis home.autoRedact.desc=Menyunting Otomatis (Menghitamkan) teks dalam PDF berdasarkan teks masukan -showJS.tags=Redact,Hide,black out,black,marker,hidden +showJS.tags=Hapus, Sembunyikan, padamkan, hitam, hitam, penanda, tersembunyi home.tableExtraxt.title=PDF ke CSV home.tableExtraxt.desc=Mengekstrak Tabel dari PDF yang mengonversinya menjadi CSV -tableExtraxt.tags=CSV,Table Extraction,extract,convert +tableExtraxt.tags=CSV, Ekstraksi Tabel, ekstrak, konversi home.autoSizeSplitPDF.title=Pemisahan Otomatis berdasarkan Ukuran/Hitungan home.autoSizeSplitPDF.desc=Membagi satu PDF menjadi beberapa dokumen berdasarkan ukuran, jumlah halaman, atau jumlah dokumen -autoSizeSplitPDF.tags=pdf,split,document,organization +autoSizeSplitPDF.tags=pdf, membagi, dokumen, organisasi home.overlay-pdfs.title=Tumpuk PDF @@ -356,7 +355,7 @@ overlay-pdfs.tags=Overlay home.split-by-sections.title=Membagi PDF berdasarkan Bagian home.split-by-sections.desc=Membagi setiap halaman PDF menjadi beberapa bagian horizontal dan vertikal yang lebih kecil -split-by-sections.tags=Section Split, Divide, Customize +split-by-sections.tags=Membagi Bagian, Membagi, Menyesuaikan ########################### # # From d79db6f3da82d43a1dd74f578a17ab043163b8bf Mon Sep 17 00:00:00 2001 From: albanobattistella <34811668+albanobattistella@users.noreply.github.com> Date: Wed, 27 Dec 2023 16:01:00 +0100 Subject: [PATCH 16/39] Update messages_it_IT.properties --- src/main/resources/messages_it_IT.properties | 78 ++++++++++---------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/src/main/resources/messages_it_IT.properties b/src/main/resources/messages_it_IT.properties index 158272564..b301ff304 100644 --- a/src/main/resources/messages_it_IT.properties +++ b/src/main/resources/messages_it_IT.properties @@ -336,23 +336,23 @@ home.autoRedact.title=Redazione automatica home.autoRedact.desc=Redige automaticamente (oscura) il testo in un PDF in base al testo immesso showJS.tags=JS -home.tableExtraxt.title=PDF to CSV -home.tableExtraxt.desc=Extracts Tables from a PDF converting it to CSV -tableExtraxt.tags=CSV,Table Extraction,extract,convert +home.tableExtraxt.title=Da PDF a CSV +home.tableExtraxt.desc=Estrae tabelle da un PDF convertendolo in CSV +tableExtraxt.tags=CSV,Estrazione tabella,estrai,converti -home.autoSizeSplitPDF.title=Auto Split by Size/Count -home.autoSizeSplitPDF.desc=Split a single PDF into multiple documents based on size, page count, or document count -autoSizeSplitPDF.tags=pdf,split,document,organization +home.autoSizeSplitPDF.title=Divisione automatica per dimensione/numero +home.autoSizeSplitPDF.desc=Dividi un singolo PDF in più documenti in base alle dimensioni, al numero di pagine o al numero di documenti +autoSizeSplitPDF.tags=pdf,diviso,documento,organizzazione home.overlay-pdfs.title=Overlay PDFs home.overlay-pdfs.desc=Overlays PDFs on-top of another PDF overlay-pdfs.tags=Overlay -home.split-by-sections.title=Split PDF by Sections -home.split-by-sections.desc=Divide each page of a PDF into smaller horizontal and vertical sections -split-by-sections.tags=Section Split, Divide, Customize +home.split-by-sections.title=Dividi PDF per sezioni +home.split-by-sections.desc=Dividi ciascuna pagina di un PDF in sezioni orizzontali e verticali più piccole +split-by-sections.tags=Dividi sezione, dividi, personalizza ########################### # # @@ -692,10 +692,10 @@ split.submit=Dividi imageToPDF.title=Immagine a PDF imageToPDF.header=Immagine a PDF imageToPDF.submit=Converti -imageToPDF.selectLabel=Image Fit Options -imageToPDF.fillPage=Fill Page -imageToPDF.fitDocumentToImage=Fit Page to Image -imageToPDF.maintainAspectRatio=Maintain Aspect Ratios +imageToPDF.selectLabel=Opzioni di adattamento immagine +imageToPDF.fillPage=Riempi la pagina +imageToPDF.fitDocumentToImage=Adatta la pagina all'immagine +imageToPDF.maintainAspectRatio=Mantieni le proporzioni imageToPDF.selectText.2=Ruota automaticamente PDF imageToPDF.selectText.3=Logica multi-file (funziona solo se ci sono più immagini) imageToPDF.selectText.4=Unisci in un unico PDF @@ -845,41 +845,41 @@ PDFToXML.submit=Converti #PDFToCSV PDFToCSV.title=Da PDF a CSV PDFToCSV.header=Da PDF a CSV -PDFToCSV.prompt=Choose page to extract table +PDFToCSV.prompt=Scegli la pagina per estrarre la tabella PDFToCSV.submit=Estratto #split-by-size-or-count -split-by-size-or-count.header=Split PDF by Size or Count -split-by-size-or-count.type.label=Select Split Type -split-by-size-or-count.type.size=By Size -split-by-size-or-count.type.pageCount=By Page Count -split-by-size-or-count.type.docCount=By Document Count -split-by-size-or-count.value.label=Enter Value -split-by-size-or-count.value.placeholder=Enter size (e.g., 2MB or 3KB) or count (e.g., 5) -split-by-size-or-count.submit=Submit +split-by-size-or-count.header=Dividi il PDF per dimensione o numero +split-by-size-or-count.type.label=Seleziona il tipo di divisione +split-by-size-or-count.type.size=Per dimensione +split-by-size-or-count.type.pageCount=Per numero di pagine +split-by-size-or-count.type.docCount=Per numero di documento +split-by-size-or-count.value.label=Inserire il valore +split-by-size-or-count.value.placeholder=Inserisci la dimensione (ad esempio, 2 MB o 3 KB) o il numero (ad esempio, 5) +split-by-size-or-count.submit=Separa #overlay-pdfs -overlay-pdfs.header=Overlay PDF Files -overlay-pdfs.baseFile.label=Select Base PDF File -overlay-pdfs.overlayFiles.label=Select Overlay PDF Files -overlay-pdfs.mode.label=Select Overlay Mode -overlay-pdfs.mode.sequential=Sequential Overlay +overlay-pdfs.header=Invia file PDF in sovrapposizione +overlay-pdfs.baseFile.label=Seleziona File PDF di base +overlay-pdfs.overlayFiles.label=Seleziona sovrapposizione file PDF +overlay-pdfs.mode.label=Seleziona la modalità di sovrapposizione +overlay-pdfs.mode.sequential=Sovrapposizione sequenziale overlay-pdfs.mode.interleaved=Interleaved Overlay overlay-pdfs.mode.fixedRepeat=Fixed Repeat Overlay overlay-pdfs.counts.label=Overlay Counts (for Fixed Repeat Mode) -overlay-pdfs.counts.placeholder=Enter comma-separated counts (e.g., 2,3,1) -overlay-pdfs.position.label=Select Overlay Position -overlay-pdfs.position.foreground=Foreground -overlay-pdfs.position.background=Background -overlay-pdfs.submit=Submit +overlay-pdfs.counts.placeholder=Inserisci i numeri separati da virgole (ad esempio, 2,3,1) +overlay-pdfs.position.label=Seleziona posizione di sovrapposizione +overlay-pdfs.position.foreground=Primo piano +overlay-pdfs.position.background=Sfondo +overlay-pdfs.submit=Sovrapponi #split-by-sections -split-by-sections.title=Split PDF by Sections -split-by-sections.header=Split PDF into Sections -split-by-sections.horizontal.label=Horizontal Divisions -split-by-sections.vertical.label=Vertical Divisions -split-by-sections.horizontal.placeholder=Enter number of horizontal divisions -split-by-sections.vertical.placeholder=Enter number of vertical divisions -split-by-sections.submit=Split PDF +split-by-sections.title=Dividi PDF per sezioni +split-by-sections.header=Dividi il PDF in sezioni +split-by-sections.horizontal.label=Divisioni orizzontali +split-by-sections.vertical.label=Divisioni verticali +split-by-sections.horizontal.placeholder=Inserire il numero di divisioni orizzontali +split-by-sections.vertical.placeholder=Inserire il numero di divisioni verticlai +split-by-sections.submit=Dividi PDF From 78ac9231c5fe39c53273d75d9cdc4d44b34e03bf Mon Sep 17 00:00:00 2001 From: Ikko Eltociear Ashimine Date: Thu, 28 Dec 2023 00:34:30 +0900 Subject: [PATCH 17/39] Update README.md temporay -> temporary --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ff362f5af..351380ea5 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ This is a powerful locally hosted web based PDF manipulation tool using docker t Stirling PDF makes no outbound calls for any record keeping or tracking. -All files and PDFs are either purely client side, in server memory only during the execution of the task or within a temporay file only for execution of the task. +All files and PDFs are either purely client side, in server memory only during the execution of the task or within a temporary file only for execution of the task. Any file which has been downloaded by the user will have already been deleted from the server by that time. Feel free to request any features or bug fixes either in github issues or our [Discord](https://discord.gg/Cn8pWhQRxZ) From aa671b8bd6b29167253f9b4716af41a8bdccff83 Mon Sep 17 00:00:00 2001 From: manuelkamp <48356947+manuelkamp@users.noreply.github.com> Date: Wed, 27 Dec 2023 18:46:37 +0100 Subject: [PATCH 18/39] Update LocalRunGuide.md --- LocalRunGuide.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LocalRunGuide.md b/LocalRunGuide.md index 782e8b695..9df7dd435 100644 --- a/LocalRunGuide.md +++ b/LocalRunGuide.md @@ -20,7 +20,7 @@ Install the following software, if not already installed: - Git -- Python 3 (with pip) +- Python 3.8 (with pip) - Make From c769a0298293be34b3f72c422eafa3c4d4f62f02 Mon Sep 17 00:00:00 2001 From: manuelkamp <48356947+manuelkamp@users.noreply.github.com> Date: Wed, 27 Dec 2023 18:51:51 +0100 Subject: [PATCH 19/39] Update LocalRunGuide.md Edited run via java, since on previous step we moved the jar-file to /opt/Stirling-PDF --- LocalRunGuide.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LocalRunGuide.md b/LocalRunGuide.md index 782e8b695..b38419229 100644 --- a/LocalRunGuide.md +++ b/LocalRunGuide.md @@ -176,7 +176,7 @@ rpm -qa | grep tesseract-langpack | sed 's/tesseract-langpack-//g' ```bash ./gradlew bootRun or -java -jar build/libs/app.jar +java -jar /opt/Stirling-PDF/Stirling-PDF-*.jar ``` ### Step 8: Adding a Desktop icon From 7b44cf77d6cf92533dab9f5ff03708bbd12fc573 Mon Sep 17 00:00:00 2001 From: manuelkamp <48356947+manuelkamp@users.noreply.github.com> Date: Wed, 27 Dec 2023 18:54:55 +0100 Subject: [PATCH 20/39] Update LocalRunGuide.md Added "WeasyPrint" to pip3 install section --- LocalRunGuide.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/LocalRunGuide.md b/LocalRunGuide.md index 782e8b695..535384c54 100644 --- a/LocalRunGuide.md +++ b/LocalRunGuide.md @@ -95,14 +95,14 @@ For Debian-based systems, you can use the following command: ```bash sudo apt-get install -y libreoffice-writer libreoffice-calc libreoffice-impress unpaper ocrmypdf -pip3 install uno opencv-python-headless unoconv pngquant +pip3 install uno opencv-python-headless unoconv pngquant WeasyPrint ``` For Fedora: ```bash sudo dnf install -y libreoffice-writer libreoffice-calc libreoffice-impress unpaper ocrmypdf -pip3 install uno opencv-python-headless unoconv pngquant +pip3 install uno opencv-python-headless unoconv pngquant WeasyPrint ``` ### Step 4: Clone and Build Stirling-PDF From dfda474ba5e90bb09dc2213796f262d861367168 Mon Sep 17 00:00:00 2001 From: manuelkamp <48356947+manuelkamp@users.noreply.github.com> Date: Wed, 27 Dec 2023 19:30:28 +0100 Subject: [PATCH 21/39] Update LocalRunGuide.md Added option to set up Stirling-PDF as a service --- LocalRunGuide.md | 51 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/LocalRunGuide.md b/LocalRunGuide.md index 315ee46c4..7126969f4 100644 --- a/LocalRunGuide.md +++ b/LocalRunGuide.md @@ -202,6 +202,57 @@ EOF Note: Currently the app will run in the background until manually closed. +### Optional: Run Stirling-PDF as a service + +Create a new file where we store our service settings and open it with nano editor: +``` +nano /etc/systemd/system/stirlingpdf.service +``` + +Paste this content, make sure to update the filename of the jar-file. Press Ctrl+S and Ctrl+X to save and exit the nano editor: +``` +[Unit] +Description=Stirling-PDF service +After=syslog.target network.target + +[Service] +SuccessExitStatus=143 + +User=root +Group=root + +Type=simple + +WorkingDirectory=/opt/Stirling-PDF +ExecStart=/usr/bin/java -jar Stirling-PDF-0.17.2.jar +ExecStop=/bin/kill -15 $MAINPID + +[Install] +WantedBy=multi-user.target +``` + +Notify systemd that it has to rebuild its internal service database (you have to run this command every time you make a change in the service file): +``` +sudo systemctl daemon-reload +``` + +Enable the service to tell the service to start it automatically: +``` +sudo systemctl enable stirlingpdf.service +``` + +See the status of the service: +``` +sudo systemctl status stirlingpdf.service +``` + +Manually start/stop/restart the service: +``` +sudo systemctl start stirlingpdf.service +sudo systemctl stop stirlingpdf.service +sudo systemctl restart stirlingpdf.service +``` + --- Remember to set the necessary environment variables before running the project if you want to customize the application the list can be seen in the main readme. From 54859ac3baede8293acdac1737dfe80fca5092ad Mon Sep 17 00:00:00 2001 From: manuelkamp <48356947+manuelkamp@users.noreply.github.com> Date: Wed, 27 Dec 2023 19:52:51 +0100 Subject: [PATCH 22/39] Update LocalRunGuide.md Improved optional service section regarding environment variables in a separate .env file --- LocalRunGuide.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/LocalRunGuide.md b/LocalRunGuide.md index 7126969f4..c7eaca0be 100644 --- a/LocalRunGuide.md +++ b/LocalRunGuide.md @@ -204,6 +204,12 @@ Note: Currently the app will run in the background until manually closed. ### Optional: Run Stirling-PDF as a service +First create a .env file, where you can store environment variables: +``` +touch /opt/Stirling-PDF/.env +``` +In this file you can add all variables, one variable per line, as stated in the main readme (for example SYSTEM_DEFAULTLOCALE="de-DE"). + Create a new file where we store our service settings and open it with nano editor: ``` nano /etc/systemd/system/stirlingpdf.service @@ -223,6 +229,7 @@ Group=root Type=simple +EnvironmentFile=/opt/Stirling-PDF/.env WorkingDirectory=/opt/Stirling-PDF ExecStart=/usr/bin/java -jar Stirling-PDF-0.17.2.jar ExecStop=/bin/kill -15 $MAINPID From d01473aceb3728edaa57be5cefb736304fca2269 Mon Sep 17 00:00:00 2001 From: Muhammad Sani Ibrahim <87580367+Saneeitas@users.noreply.github.com> Date: Thu, 28 Dec 2023 01:27:25 +0100 Subject: [PATCH 23/39] Update README.md made the english more standard --- README.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 351380ea5..809590d7e 100644 --- a/README.md +++ b/README.md @@ -14,10 +14,9 @@ This is a powerful locally hosted web based PDF manipulation tool using docker t Stirling PDF makes no outbound calls for any record keeping or tracking. -All files and PDFs are either purely client side, in server memory only during the execution of the task or within a temporary file only for execution of the task. -Any file which has been downloaded by the user will have already been deleted from the server by that time. +All files and PDFs exist either exclusively on the client side, reside in server memory only during task execution, or temporarily reside in a file solely for the execution of the task. Any file downloaded by the user will have been deleted from the server by that point. -Feel free to request any features or bug fixes either in github issues or our [Discord](https://discord.gg/Cn8pWhQRxZ) +Please feel free to submit feature requests or report bugs either through GitHub issues or on our [Discord](https://discord.gg/Cn8pWhQRxZ) ![stirling-home](images/stirling-home.png) From b7f62a635d59697bedac3b3bb340fd795119e7b8 Mon Sep 17 00:00:00 2001 From: EmadEldin Osman Date: Thu, 28 Dec 2023 04:51:50 +0300 Subject: [PATCH 24/39] Optimized the code in detect-blank-pages.py Made use of Numpy arrays --- scripts/detect-blank-pages.py | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) diff --git a/scripts/detect-blank-pages.py b/scripts/detect-blank-pages.py index 474c27352..4ca724c28 100644 --- a/scripts/detect-blank-pages.py +++ b/scripts/detect-blank-pages.py @@ -1,10 +1,11 @@ import cv2 import sys import argparse +import numpy as np def is_blank_image(image_path, threshold=10, white_percent=99, white_value=255, blur_size=5): image = cv2.imread(image_path, cv2.IMREAD_GRAYSCALE) - + if image is None: print(f"Error: Unable to read the image file: {image_path}") return False @@ -15,19 +16,11 @@ def is_blank_image(image_path, threshold=10, white_percent=99, white_value=255, _, thresholded_image = cv2.threshold(blurred_image, white_value - threshold, white_value, cv2.THRESH_BINARY) # Calculate the percentage of white pixels in the thresholded image - white_pixels = 0 - total_pixels = thresholded_image.size - for i in range(0, thresholded_image.shape[0], 2): - for j in range(0, thresholded_image.shape[1], 2): - if thresholded_image[i, j] == white_value: - white_pixels += 1 - white_pixel_percentage = (white_pixels / (i * thresholded_image.shape[1] + j + 1)) * 100 - if white_pixel_percentage < white_percent: - return False + white_pixels = np.sum(thresholded_image == white_value) + white_pixel_percentage = (white_pixels / thresholded_image.size) * 100 print(f"Page has white pixel percent of {white_pixel_percentage}") - return True - + return white_pixel_percentage >= white_percent if __name__ == "__main__": @@ -39,9 +32,6 @@ if __name__ == "__main__": blank = is_blank_image(args.image_path, args.threshold, args.white_percent) - if blank: - # Return code 1: The image is considered blank. - sys.exit(1) - else: - # Return code 0: The image is not considered blank. - sys.exit(0) + # Return code 1: The image is considered blank. + # Return code 0: The image is not considered blank. + sys.exit(int(blank)) From 1f10693eafdd60c34443a44c22641773496e77ee Mon Sep 17 00:00:00 2001 From: sbplat <71648843+sbplat@users.noreply.github.com> Date: Thu, 28 Dec 2023 03:23:55 +0000 Subject: [PATCH 25/39] fix: sequentially convert each pdf page into a BufferedImage to avoid getting MLE for large pdf files --- .../stirling/software/SPDF/utils/PdfUtils.java | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/src/main/java/stirling/software/SPDF/utils/PdfUtils.java b/src/main/java/stirling/software/SPDF/utils/PdfUtils.java index 22e09d6a9..000a8294c 100644 --- a/src/main/java/stirling/software/SPDF/utils/PdfUtils.java +++ b/src/main/java/stirling/software/SPDF/utils/PdfUtils.java @@ -205,11 +205,6 @@ public class PdfUtils { int pageCount = document.getNumberOfPages(); List images = new ArrayList<>(); - // Create images of all pages - for (int i = 0; i < pageCount; i++) { - images.add(pdfRenderer.renderImageWithDPI(i, DPI, colorType)); - } - // Create a ByteArrayOutputStream to save the image(s) to ByteArrayOutputStream baos = new ByteArrayOutputStream(); @@ -226,8 +221,8 @@ public class PdfUtils { writer.setOutput(ios); writer.prepareWriteSequence(null); - for (int i = 0; i < images.size(); ++i) { - BufferedImage image = images.get(i); + for (int i = 0; i < pageCount; ++i) { + BufferedImage image = pdfRenderer.renderImageWithDPI(i, DPI, colorType); writer.writeToSequence(new IIOImage(image, null, null), param); } @@ -240,8 +235,9 @@ public class PdfUtils { BufferedImage combined = new BufferedImage(images.get(0).getWidth(), images.get(0).getHeight() * pageCount, BufferedImage.TYPE_INT_RGB); Graphics g = combined.getGraphics(); - for (int i = 0; i < images.size(); i++) { - g.drawImage(images.get(i), 0, i * images.get(0).getHeight(), null); + for (int i = 0; i < pageCount; ++i) { + BufferedImage image = pdfRenderer.renderImageWithDPI(i, DPI, colorType); + g.drawImage(image, 0, i * image.getHeight(), null); } // Write the image to the output stream @@ -253,8 +249,8 @@ public class PdfUtils { } else { // Zip the images and return as byte array try (ZipOutputStream zos = new ZipOutputStream(baos)) { - for (int i = 0; i < images.size(); i++) { - BufferedImage image = images.get(i); + for (int i = 0; i < pageCount; ++i) { + BufferedImage image = pdfRenderer.renderImageWithDPI(i, DPI, colorType); try (ByteArrayOutputStream baosImage = new ByteArrayOutputStream()) { ImageIO.write(image, imageType, baosImage); From 1d243a0ca5c62a7812531d981d92feaf819551f4 Mon Sep 17 00:00:00 2001 From: sbplat <71648843+sbplat@users.noreply.github.com> Date: Wed, 27 Dec 2023 22:43:30 -0500 Subject: [PATCH 26/39] fix: clean up redundant variable --- src/main/java/stirling/software/SPDF/utils/PdfUtils.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/stirling/software/SPDF/utils/PdfUtils.java b/src/main/java/stirling/software/SPDF/utils/PdfUtils.java index 000a8294c..7ae91cf9c 100644 --- a/src/main/java/stirling/software/SPDF/utils/PdfUtils.java +++ b/src/main/java/stirling/software/SPDF/utils/PdfUtils.java @@ -203,7 +203,6 @@ public class PdfUtils { try (PDDocument document = PDDocument.load(new ByteArrayInputStream(inputStream))) { PDFRenderer pdfRenderer = new PDFRenderer(document); int pageCount = document.getNumberOfPages(); - List images = new ArrayList<>(); // Create a ByteArrayOutputStream to save the image(s) to ByteArrayOutputStream baos = new ByteArrayOutputStream(); @@ -232,7 +231,8 @@ public class PdfUtils { writer.dispose(); } else { // Combine all images into a single big image - BufferedImage combined = new BufferedImage(images.get(0).getWidth(), images.get(0).getHeight() * pageCount, BufferedImage.TYPE_INT_RGB); + BufferedImage image = pdfRenderer.renderImageWithDPI(0, DPI, colorType); + BufferedImage combined = new BufferedImage(image.getWidth(), image.getHeight() * pageCount, BufferedImage.TYPE_INT_RGB); Graphics g = combined.getGraphics(); for (int i = 0; i < pageCount; ++i) { From d405b7a810dcf973ddbce5819d2e239b9105b152 Mon Sep 17 00:00:00 2001 From: sbplat <71648843+sbplat@users.noreply.github.com> Date: Wed, 27 Dec 2023 22:46:55 -0500 Subject: [PATCH 27/39] perf: avoid re-rendering the first pdf page --- src/main/java/stirling/software/SPDF/utils/PdfUtils.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/stirling/software/SPDF/utils/PdfUtils.java b/src/main/java/stirling/software/SPDF/utils/PdfUtils.java index 7ae91cf9c..2be68d088 100644 --- a/src/main/java/stirling/software/SPDF/utils/PdfUtils.java +++ b/src/main/java/stirling/software/SPDF/utils/PdfUtils.java @@ -236,7 +236,9 @@ public class PdfUtils { Graphics g = combined.getGraphics(); for (int i = 0; i < pageCount; ++i) { - BufferedImage image = pdfRenderer.renderImageWithDPI(i, DPI, colorType); + if (i != 0) { + image = pdfRenderer.renderImageWithDPI(i, DPI, colorType); + } g.drawImage(image, 0, i * image.getHeight(), null); } From 79e2683cbed4b33b03a04ba54bd80cf57d3b9fbf Mon Sep 17 00:00:00 2001 From: Aan Date: Thu, 28 Dec 2023 15:12:18 +0700 Subject: [PATCH 28/39] Keep watermark translation --- src/main/resources/messages_id_ID.properties | 28 ++++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties index 30b199c9b..15c687053 100644 --- a/src/main/resources/messages_id_ID.properties +++ b/src/main/resources/messages_id_ID.properties @@ -167,9 +167,9 @@ home.addImage.title=Tambahkan gambar home.addImage.desc=Menambahkan gambar ke lokasi yang ditentukan pada PDF addImage.tags=img,jpg,gambar,foto -home.watermark.title=Tambahkan penanda -home.watermark.desc=Menambahkan penanda khusus ke dokumen PDF Anda. -watermark.tags=Teks,berulang,label,sendiri,hak cipta,penanda,img,jpg,picture,photo +home.watermark.title=Tambahkan watermark +home.watermark.desc=Menambahkan watermark khusus ke dokumen PDF Anda. +watermark.tags=Teks,berulang,label,sendiri,hak cipta,watermark,img,jpg,picture,photo home.permissions.title=Izin Perubahan home.permissions.desc=Mengubah izin dokumen PDF Anda @@ -744,18 +744,18 @@ addPassword.submit=Enkripsi #watermark -watermark.title=Tambahkan tanda air -watermark.header=Tambahkan tanda air -watermark.selectText.1=Pilih PDF untuk menambahkan tanda air: -watermark.selectText.2=Text tanda air: +watermark.title=Tambahkan watermark +watermark.header=Tambahkan watermark +watermark.selectText.1=Pilih PDF untuk menambahkan watermark: +watermark.selectText.2=Text watermark: watermark.selectText.3=Ukuran Font: watermark.selectText.4=Rotasi (0-360): -watermark.selectText.5=widthSpacer (Spasi diantara setiap tanda air horisontal): -watermark.selectText.6=heightSpacer (Spasi diantara setiap tanda air vertikal): +watermark.selectText.5=widthSpacer (Spasi diantara setiap watermark horisontal): +watermark.selectText.6=heightSpacer (Spasi diantara setiap watermark vertikal): watermark.selectText.7=Opacity (0% - 100%): -watermark.selectText.8=Tipe tanda air: -watermark.selectText.9=Gambar tanda air: -watermark.submit=Tambahkan tanda air +watermark.selectText.8=Tipe watermark: +watermark.selectText.9=Gambar watermark: +watermark.submit=Tambahkan watermark #Change permissions @@ -777,8 +777,8 @@ permissions.submit=Ganti #remove password removePassword.title=Hapus kata sandi -removePassword.header=Hapus kata sandi (Decrypt) -removePassword.selectText.1=Pilih PDF untuk proses Decrypt +removePassword.header=Hapus kata sandi (Dekrip) +removePassword.selectText.1=Pilih PDF untuk proses Dekrip removePassword.selectText.2=Kata Sandi removePassword.submit=Hapus From d349aea1bef6e0f6d1e2074d8f37415e4d5c1692 Mon Sep 17 00:00:00 2001 From: Aan Date: Thu, 28 Dec 2023 15:30:36 +0700 Subject: [PATCH 29/39] Translate file word --- src/main/resources/messages_id_ID.properties | 24 ++++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties index 15c687053..57bd6263b 100644 --- a/src/main/resources/messages_id_ID.properties +++ b/src/main/resources/messages_id_ID.properties @@ -689,7 +689,7 @@ split.desc.5=Dokumen #3: Halaman 4, 5 dan 6 split.desc.6=Dokumen #4: Halaman 7 split.desc.7=Dokumen #5: Halaman 8 split.desc.8=Dokumen #6: Halaman 9 dan 10 -split.splitPages=Masukkan halaman yang akan dibagi: +split.splitPages=Masukkan halaman yang akan dipisah: split.submit=Pisahkan @@ -716,14 +716,14 @@ pdfToImage.single=Gambar Besar Tunggal Menggabungkan semua halaman pdfToImage.multi=Beberapa Gambar, satu gambar per halaman pdfToImage.colorType=Tipe warna pdfToImage.color=Warna -pdfToImage.grey=Greyscale +pdfToImage.grey=Skala abu-abu pdfToImage.blackwhite=Black and White (Bisa kehilangan data!) pdfToImage.submit=Konversi #addPassword addPassword.title=Tambahkan kata sandi -addPassword.header=Tambahkan kata sandi (Encrypt) +addPassword.header=Tambahkan kata sandi (Enkrip) addPassword.selectText.1=Pilih PDF untuk enkripsi addPassword.selectText.2=Kata sandi Pengguna addPassword.selectText.3=Panjang kunci enkripsi @@ -744,18 +744,18 @@ addPassword.submit=Enkripsi #watermark -watermark.title=Tambahkan watermark -watermark.header=Tambahkan watermark +watermark.title=Tambahkan Watermark +watermark.header=Tambahkan Watermark watermark.selectText.1=Pilih PDF untuk menambahkan watermark: -watermark.selectText.2=Text watermark: -watermark.selectText.3=Ukuran Font: +watermark.selectText.2=Text Watermark: +watermark.selectText.3=Ukuran Huruf: watermark.selectText.4=Rotasi (0-360): watermark.selectText.5=widthSpacer (Spasi diantara setiap watermark horisontal): watermark.selectText.6=heightSpacer (Spasi diantara setiap watermark vertikal): watermark.selectText.7=Opacity (0% - 100%): -watermark.selectText.8=Tipe watermark: -watermark.selectText.9=Gambar watermark: -watermark.submit=Tambahkan watermark +watermark.selectText.8=Tipe Watermark: +watermark.selectText.9=Gambar Watermark: +watermark.submit=Tambahkan Watermark #Change permissions @@ -778,7 +778,7 @@ permissions.submit=Ganti #remove password removePassword.title=Hapus kata sandi removePassword.header=Hapus kata sandi (Dekrip) -removePassword.selectText.1=Pilih PDF untuk proses Dekrip +removePassword.selectText.1=Pilih PDF yang akan di Dekrip removePassword.selectText.2=Kata Sandi removePassword.submit=Hapus @@ -882,7 +882,7 @@ overlay-pdfs.submit=Kirim #split-by-sections split-by-sections.title=Pisahkan PDF berdasarkan bagian -split-by-sections.header=Pisahkan PDF menjadi bagian +split-by-sections.header=Pisahkan PDF menjadi beberapa bagian split-by-sections.horizontal.label=Pembagian Horizontal split-by-sections.vertical.label=Pembagian Vertikal split-by-sections.horizontal.placeholder=Input angka untuk pembagian horizontal From 6ba84a190f3cbe9eef84c6ad653b36fe9e404542 Mon Sep 17 00:00:00 2001 From: Aan Date: Thu, 28 Dec 2023 15:34:50 +0700 Subject: [PATCH 30/39] translate file word to indonesia --- src/main/resources/messages_id_ID.properties | 74 ++++++++++---------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties index 57bd6263b..7c01ced18 100644 --- a/src/main/resources/messages_id_ID.properties +++ b/src/main/resources/messages_id_ID.properties @@ -9,7 +9,7 @@ multiPdfPrompt=Pilih PDF (2+) multiPdfDropPrompt=Pilih (atau seret & letakkan)) semua PDF yang Anda butuhkan imgPrompt=Pilih Gambar genericSubmit=Kirim -processTimeWarning=Peringatan: Proses ini dapat memakan waktu hingga satu menit, tergantung pada ukuran file +processTimeWarning=Peringatan: Proses ini dapat memakan waktu hingga satu menit, tergantung pada ukuran berkas pageOrderPrompt=Urutan Halaman Khusus (Masukkan daftar nomor halaman yang dipisahkan dengan koma atau Fungsi seperti 2n + 1) : goToPage=Ke true=Benar @@ -67,11 +67,11 @@ navbar.settings=Pengaturan settings.title=Pengaturan settings.update=Pembaruan tersedia settings.appVersion=Versi Aplikasi: -settings.downloadOption.title=Pilih opsi unduhan (Untuk unduhan file tunggal non zip): +settings.downloadOption.title=Pilih opsi unduhan (Untuk unduhan berkas tunggal non zip): settings.downloadOption.1=Buka di jendela yang sama settings.downloadOption.2=Buka di jendela baru settings.downloadOption.3=Unduh berkas -settings.zipThreshold=Berkas zip ketika jumlah file yang diunduh melebihi +settings.zipThreshold=Berkas zip ketika jumlah berkas yang diunduh melebihi settings.signOut=Keluar settings.accountSettings=Pengaturan Akun @@ -197,8 +197,8 @@ home.changeMetadata.title=Ubah Metadata home.changeMetadata.desc=Mengubah/Menghapus/Menambahkan metadata dari dokumen PDF changeMetadata.tags==Judul,penulis,tanggal,pembuatan,waktu,penerbit,produser,statistik -home.fileToPDF.title=Mengonversi file ke PDF -home.fileToPDF.desc=Mengonversi hampir semua file ke PDF (DOCX, PNG, XLS, PPT, TXT dan lain-lain) +home.fileToPDF.title=Mengonversi berkas ke PDF +home.fileToPDF.desc=Mengonversi hampir semua berkas ke PDF (DOCX, PNG, XLS, PPT, TXT dan lain-lain) fileToPDF.tags=transformasi,format,dokumen,gambar,slide,text,konversi,office,docs,word,excel,powerpoint home.ocr.title=Pemindaian/Pembersihan OCR @@ -283,8 +283,8 @@ home.add-page-numbers.title=Tambahkan Nomor Halaman home.add-page-numbers.desc=Menambahkan nomor Halaman di seluruh dokumen di lokasi yang ditetapkan add-page-numbers.tags=beri halaman, beri label, atur, indeks -home.auto-rename.title=Ubah Nama File PDF Secara Otomatis -home.auto-rename.desc=Mengganti nama file PDF secara otomatis berdasarkan tajuk yang terdeteksi +home.auto-rename.title=Ubah Nama Berkas PDF Secara Otomatis +home.auto-rename.desc=Mengganti nama berkas PDF secara otomatis berdasarkan tajuk yang terdeteksi auto-rename.tags=deteksi otomatis, berbasis tajuk, atur, beri label ulang home.adjust-contrast.title=Menyesuaikan Warna/Kontras @@ -308,12 +308,12 @@ home.URLToPDF.desc=Mengonversi URL http apa pun ke PDF URLToPDF.tags=tangkap web, simpan halaman, web-ke-dok, arsip home.HTMLToPDF.title=HTML ke PDF -home.HTMLToPDF.desc=Mengonversi file HTML atau zip ke PDF +home.HTMLToPDF.desc=Mengonversi berkas HTML atau zip ke PDF HTMLToPDF.tags=markup, konten web, transformasi, konversi home.MarkdownToPDF.title=Penurunan harga ke PDF -home.MarkdownToPDF.desc=Mengonversi file Markdown apa pun ke PDF +home.MarkdownToPDF.desc=Mengonversi berkas Markdown apa pun ke PDF MarkdownToPDF.tags=markup, konten web, transformasi, konversi @@ -427,16 +427,16 @@ URLToPDF.credit=Menggunakan WeasyPrint #html-to-pdf HTMLToPDF.title=HTML Ke PDF HTMLToPDF.header=HTML Ke PDF -HTMLToPDF.help=Menerima file HTML dan ZIP yang berisi html / css / gambar, dll yang diperlukan +HTMLToPDF.help=Menerima berkas HTML dan ZIP yang berisi html / css / gambar, dll yang diperlukan HTMLToPDF.submit=Konversi HTMLToPDF.credit=Menggunakan WeasyPrint #sanitizePDF sanitizePDF.title=Bersihkan PDF -sanitizePDF.header=Membersihkan file PDF +sanitizePDF.header=Membersihkan berkas PDF sanitizePDF.selectText.1=Hapus tindakan JavaScript -sanitizePDF.selectText.2=Hapus file yang disematkan +sanitizePDF.selectText.2=Hapus berkas yang disematkan sanitizePDF.selectText.3=Hapus metadata sanitizePDF.selectText.4=Hapus tautan sanitizePDF.selectText.5=Hapus font @@ -446,7 +446,7 @@ sanitizePDF.submit=Membersihkan PDF #addPageNumbers addPageNumbers.title=Tambahkan Nomor Halaman addPageNumbers.header=Tambahkan Nomor Halaman -addPageNumbers.selectText.1=Pilih file PDF: +addPageNumbers.selectText.1=Pilih berkas PDF: addPageNumbers.selectText.2=Ukuran Margin addPageNumbers.selectText.3=Posisi addPageNumbers.selectText.4=Nomor Awal @@ -454,7 +454,7 @@ addPageNumbers.selectText.5=Halaman ke Nomor addPageNumbers.selectText.6=Teks Khusus addPageNumbers.customTextDesc=Teks Khusus addPageNumbers.numberPagesDesc=Halaman mana yang akan diberi nomor, default 'semua', juga menerima 1-5 atau 2,5,9, dll. -addPageNumbers.customNumberDesc=Default untuk {n}, juga menerima 'Halaman {n} dari {total}', 'Teks-{n}', '{nama file}-{n}' +addPageNumbers.customNumberDesc=Default untuk {n}, juga menerima 'Halaman {n} dari {total}', 'Teks-{n}', '{nama berkas}-{n}' addPageNumbers.submit=Tambahkan Nomor Halaman @@ -485,7 +485,7 @@ autoSplitPDF.header=Pisahkan PDF secara otomatis autoSplitPDF.description=Cetak, Sisipkan, Pindai, unggah, dan biarkan kami memisahkan dokumen Anda secara otomatis. Tidak perlu menyortir secara manual. autoSplitPDF.selectText.1=Cetak beberapa lembar pembatas dari bawah (Hitam putih tidak masalah). autoSplitPDF.selectText.2=Pindai semua dokumen Anda sekaligus dengan memasukkan lembar pembatas di antaranya. -autoSplitPDF.selectText.3=Unggah satu file PDF besar yang dipindai dan biarkan Stirling PDF menangani sisanya. +autoSplitPDF.selectText.3=Unggah satu berkas PDF besar yang dipindai dan biarkan Stirling PDF menangani sisanya. autoSplitPDF.selectText.4=Halaman pembatas secara otomatis terdeteksi dan dihapus, menjamin dokumen akhir yang rapi. autoSplitPDF.formPrompt=Kirimkan PDF yang berisi pembagi Halaman Stirling-PDF: autoSplitPDF.duplexMode=Mode Dupleks (Pemindaian depan dan belakang) @@ -517,10 +517,10 @@ scalePages.submit=Kirim #certSign certSign.title=Penandatanganan Sertifikat certSign.header=Menandatangani PDF dengan sertifikat Anda (Sedang dalam proses) -certSign.selectPDF=Pilih File PDF untuk Penandatanganan: -certSign.selectKey=Pilih File Kunci Pribadi Anda (format PKCS # 8, bisa .pem atau .der): -certSign.selectCert=Pilih File Sertifikat Anda (format X.509, bisa .pem atau .der): -certSign.selectP12=Pilih File Keystore PKCS #12 Anda (.p12 atau .pfx) (Opsional, Jika disediakan, file tersebut harus berisi kunci pribadi dan sertifikat Anda): +certSign.selectPDF=Pilih Berkas PDF untuk Penandatanganan: +certSign.selectKey=Pilih Berkas Kunci Pribadi Anda (format PKCS # 8, bisa .pem atau .der): +certSign.selectCert=Pilih Berkas Sertifikat Anda (format X.509, bisa .pem atau .der): +certSign.selectP12=Pilih Berkas Keystore PKCS #12 Anda (.p12 atau .pfx) (Opsional, Jika disediakan, berkas tersebut harus berisi kunci pribadi dan sertifikat Anda): certSign.certType=Jenis Sertifikat certSign.password=Masukkan Kata Sandi Kunci atau Kunci Pribadi Anda (Jika Ada): certSign.showSig=Tampilkan Tanda Tangan @@ -592,7 +592,7 @@ ScannerImageSplit.selectText.10=Menetapkan ukuran batas yang ditambahkan dan dih ocr.title=OCR / Pembersihan Pindaian ocr.header=Pemindaian Pembersihan / OCR (Pengenalan Karakter Optik) ocr.selectText.1=Pilih bahasa yang akan dideteksi di dalam PDF (Bahasa yang terdaftar adalah bahasa yang saat ini terdeteksi): -ocr.selectText.2=Menghasilkan file teks yang berisi teks OCR di samping PDF yang di-OCR +ocr.selectText.2=Menghasilkan berkas teks yang berisi teks OCR di samping PDF yang di-OCR ocr.selectText.3=Halaman yang benar dipindai pada sudut miring dengan memutarnya kembali ke tempatnya ocr.selectText.4=Halaman yang bersih sehingga kecil kemungkinan OCR akan menemukan teks dalam kebisingan latar belakang. (Tidak ada perubahan output) ocr.selectText.5=Bersihkan halaman sehingga kecil kemungkinan OCR akan menemukan teks dalam kebisingan latar belakang, mempertahankan pembersihan pada keluaran. @@ -601,7 +601,7 @@ ocr.selectText.7=Memaksa OCR, akan meng-OCR setiap halaman dengan menghapus semu ocr.selectText.8=Normal (Akan terjadi kesalahan jika PDF berisi teks) ocr.selectText.9=Pengaturan Tambahan ocr.selectText.10=Mode OCR -ocr.selectText.11=Hapus gambar setelah OCR (Menghapus SEMUA gambar, hanya berguna jika merupakan bagian dari langkah konversi) +ocr.selectText.11=Hapus gambar setelah OCR (Menghapus Semua gambar, hanya berguna jika merupakan bagian dari langkah konversi) ocr.selectText.12=Jenis Render (Lanjutan) ocr.help=Silakan baca dokumentasi ini tentang cara menggunakan ini untuk bahasa lain dan/atau penggunaan yang tidak ada di docker ocr.credit=Layanan ini menggunakan OCRmyPDF dan Tesseract untuk OCR. @@ -615,10 +615,10 @@ extractImages.submit=Ekstrak #File to PDF -fileToPDF.title=File ke PDF -fileToPDF.header=Mengonversi file apa pun ke PDF -fileToPDF.credit=Layanan ini menggunakan LibreOffice dan Unoconv untuk konversi file. -fileToPDF.supportedFileTypes=Jenis file yang didukung harus mencakup yang di bawah ini, namun untuk daftar lengkap format yang didukung, silakan lihat dokumentasi LibreOffice +fileToPDF.title=Berkas ke PDF +fileToPDF.header=Mengonversi berkas apa pun ke PDF +fileToPDF.credit=Layanan ini menggunakan LibreOffice dan Unoconv untuk konversi berkas. +fileToPDF.supportedFileTypes=Jenis berkas yang didukung harus mencakup yang di bawah ini, namun untuk daftar lengkap format yang didukung, silakan lihat dokumentasi LibreOffice fileToPDF.submit=Konversi ke PDF @@ -702,7 +702,7 @@ imageToPDF.fillPage=Isi Halaman imageToPDF.fitDocumentToImage=Isi Dokumen dengan Gambar imageToPDF.maintainAspectRatio=Pertahankan aspek rasio imageToPDF.selectText.2=Putar PDF secara otomatis -imageToPDF.selectText.3=Logika multi file (Hanya diaktifkan jika bekerja dengan banyak gambar) +imageToPDF.selectText.3=Logika multi berkas (Hanya diaktifkan jika bekerja dengan banyak gambar) imageToPDF.selectText.4=Gabungkan menjadi satu PDF imageToPDF.selectText.5=Mengonversi ke PDF yang terpisah @@ -813,38 +813,38 @@ pdfToPDFA.submit=Konversi #PDFToWord PDFToWord.title=PDF Ke Word PDFToWord.header=PDF ke Word -PDFToWord.selectText.1=Format file hasil -PDFToWord.credit=Layanan ini menggunakan LibreOffice untuk konversi file. +PDFToWord.selectText.1=Hasil format berkas +PDFToWord.credit=Layanan ini menggunakan LibreOffice untuk konversi berkas. PDFToWord.submit=Konversi #PDFToPresentation PDFToPresentation.title=PDF Ke Presentation PDFToPresentation.header=PDF ke Presentation -PDFToPresentation.selectText.1=Format file hasil -PDFToPresentation.credit=Layanan ini menggunakan LibreOffice untuk konversi file. +PDFToPresentation.selectText.1=Hasil format berkas +PDFToPresentation.credit=Layanan ini menggunakan LibreOffice untuk konversi berkas. PDFToPresentation.submit=Konversi #PDFToText PDFToText.title=PDF Ke RTF (Text) PDFToText.header=PDF ke RTF (Text) -PDFToText.selectText.1=Format file hasil -PDFToText.credit=Layanan ini menggunakan LibreOffice untuk konversi file. +PDFToText.selectText.1=Hasil format berkas +PDFToText.credit=Layanan ini menggunakan LibreOffice untuk konversi berkas. PDFToText.submit=Konversi #PDFToHTML PDFToHTML.title=PDF Ke HTML PDFToHTML.header=PDF ke HTML -PDFToHTML.credit=Layanan ini menggunakan LibreOffice untuk konversi file. +PDFToHTML.credit=Layanan ini menggunakan LibreOffice untuk konversi berkas. PDFToHTML.submit=Konversi #PDFToXML PDFToXML.title=PDF Ke XML PDFToXML.header=PDF ke XML -PDFToXML.credit=Layanan ini menggunakan LibreOffice untuk konversi file. +PDFToXML.credit=Layanan ini menggunakan LibreOffice untuk konversi berkas. PDFToXML.submit=Konversi #PDFToCSV @@ -865,9 +865,9 @@ split-by-size-or-count.submit=Kirim #overlay-pdfs -overlay-pdfs.header=Hamparan file PDF -overlay-pdfs.baseFile.label=Pilih basis file PDF -overlay-pdfs.overlayFiles.label=Pilih hamparan file PDF +overlay-pdfs.header=Hamparan berkas PDF +overlay-pdfs.baseFile.label=Pilih basis berkas PDF +overlay-pdfs.overlayFiles.label=Pilih hamparan berkas PDF overlay-pdfs.mode.label=Pilih Mode Hamparan overlay-pdfs.mode.sequential=Hamparan Sequential overlay-pdfs.mode.interleaved=Hamparan Interleaved From e2c5027311b7137f96618f8898ed6db374daf4eb Mon Sep 17 00:00:00 2001 From: albanobattistella <34811668+albanobattistella@users.noreply.github.com> Date: Thu, 28 Dec 2023 10:28:21 +0100 Subject: [PATCH 31/39] Update messages_it_IT.properties --- src/main/resources/messages_it_IT.properties | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/main/resources/messages_it_IT.properties b/src/main/resources/messages_it_IT.properties index b301ff304..52f106a35 100644 --- a/src/main/resources/messages_it_IT.properties +++ b/src/main/resources/messages_it_IT.properties @@ -295,7 +295,7 @@ home.autoSplitPDF.title=Pagine divise automaticamente home.autoSplitPDF.desc=Dividi automaticamente il PDF scansionato con il codice QR dello divisore di pagina fisico scansionato autoSplitPDF.tags=Basato su QR,separato,scansiona segmenti,organizza -home.sanitizePdf.title=Igienizzare +home.sanitizePdf.title=Pulire home.sanitizePdf.desc=Rimuovi script e altri elementi dai file PDF sanitizePdf.tags=pulire,proteggere,rimuovere le minacce @@ -346,9 +346,9 @@ home.autoSizeSplitPDF.desc=Dividi un singolo PDF in più documenti in base alle autoSizeSplitPDF.tags=pdf,diviso,documento,organizzazione -home.overlay-pdfs.title=Overlay PDFs -home.overlay-pdfs.desc=Overlays PDFs on-top of another PDF -overlay-pdfs.tags=Overlay +home.overlay-pdfs.title=Sovrapposizione di PDF +home.overlay-pdfs.desc=Sovrappone i PDF sopra un altro PDF +overlay-pdfs.tags=Svrapponi home.split-by-sections.title=Dividi PDF per sezioni home.split-by-sections.desc=Dividi ciascuna pagina di un PDF in sezioni orizzontali e verticali più piccole @@ -432,14 +432,14 @@ HTMLToPDF.credit=Utilizza WeasyPrint #sanitizePDF -sanitizePDF.title=Disinfetta PDF -sanitizePDF.header=Disinfettare un file PDF +sanitizePDF.title=Pulire PDF +sanitizePDF.header=Pulisci un file PDF sanitizePDF.selectText.1=Rimuovi le azioni JavaScript sanitizePDF.selectText.2=Rimuovi i file incorporati sanitizePDF.selectText.3=Rimuovi i metadati sanitizePDF.selectText.4=Rimuovi collegamenti sanitizePDF.selectText.5=Rimuovi i fonts -sanitizePDF.submit=Disinfetta PDF +sanitizePDF.submit=Pulisci PDF #addPageNumbers @@ -881,5 +881,5 @@ split-by-sections.header=Dividi il PDF in sezioni split-by-sections.horizontal.label=Divisioni orizzontali split-by-sections.vertical.label=Divisioni verticali split-by-sections.horizontal.placeholder=Inserire il numero di divisioni orizzontali -split-by-sections.vertical.placeholder=Inserire il numero di divisioni verticlai +split-by-sections.vertical.placeholder=Inserire il numero di divisioni verticali split-by-sections.submit=Dividi PDF From c3f501d7018ae182953e6c16419c04fae38fb2b0 Mon Sep 17 00:00:00 2001 From: Ikko Eltociear Ashimine Date: Fri, 29 Dec 2023 00:34:56 +0900 Subject: [PATCH 32/39] chore: update README.md a -> an --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ad6f04c65..5a37bb300 100644 --- a/README.md +++ b/README.md @@ -267,7 +267,7 @@ For API usage you must provide a header with 'X-API-Key' and the associated API - Fill forms mannual and automatic ### Q2: Why is my application downloading .htm files? -This is a issue caused commonly by your NGINX configuration. 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 an issue caused commonly by your NGINX configuration. 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;`` From 3e3f4a0188ff7751e96e33e787e1e12fa570cdd5 Mon Sep 17 00:00:00 2001 From: vivekmaru36 Date: Thu, 28 Dec 2023 23:09:38 +0530 Subject: [PATCH 33/39] Add hindi Translation --- src/main/resources/messages_hi_IN.properties | 895 ++++++++++++++++++ src/main/resources/static/images/flags/in.svg | 25 + .../templates/fragments/languages.html | 3 + 3 files changed, 923 insertions(+) create mode 100644 src/main/resources/messages_hi_IN.properties create mode 100644 src/main/resources/static/images/flags/in.svg diff --git a/src/main/resources/messages_hi_IN.properties b/src/main/resources/messages_hi_IN.properties new file mode 100644 index 000000000..7ffcf6772 --- /dev/null +++ b/src/main/resources/messages_hi_IN.properties @@ -0,0 +1,895 @@ +########### +# Generic # +########### +# the direction that the language is written (ltr = left to right, rtl = right to left) +language.direction=ltr + +pdfPrompt=पीडीएफ़(फ़ाइलें) चुनें +multiPdfPrompt=पीडीएफ़(फ़ाइलें) चुनें (2+) +multiPdfDropPrompt=सभी पीडीएफ़(फ़ाइलें) को चुनें (या खींचें और छोड़ें) +imgPrompt=छवियों का चयन करें +genericSubmit=प्रस्तुत करें +processTimeWarning=चेतावनी: यह प्रक्रिया फ़ाइल के आकार पर निर्भर करती है और यह से एक मिनट तक लग सकती है +pageOrderPrompt=कस्टम पेज क्रम (पेज नंबरों या 2n+1 जैसे कार्यों की एक कॉमा से अलग-अलग सूची दर्ज करें): +goToPage=जाएँ +true=सही +false=गलत +unknown=अज्ञात +save=सहेजें +close=बंद करें +filesSelected=फ़ाइलें चयनित हैं +noFavourites=कोई पसंदीदा जोड़ा नहीं गया है +bored=बोर हो रहे हैं? +alphabet=वर्णमाला +downloadPdf=पीडीएफ़ डाउनलोड करें +text=टेक्स्ट +font=फ़ॉन्ट +selectFillter=-- चुनें -- +pageNum=पृष्ठ संख्या +sizes.small=छोटा +sizes.medium=मध्यम +sizes.large=बड़ा +sizes.x-large=बहुत बड़ा +error.pdfPassword=पीडीएफ़ दस्तावेज़ पासवर्ड से सुरक्षित है और या तो पासवर्ड नहीं दिया गया था या गलत था +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=आपकी स्थानीय होस्ट की एक स्थानीय सेवा जहां आपकी सभी पीडीएफ़ आवश्यकताओं के लिए है। +home.searchBar=विशेषताओं की खोज करें... + + +home.viewPdf.title=पीडीएफ़ देखें +home.viewPdf.desc=देखें, टिप्पणी करें, पाठ या छवियों को जोड़ें +viewPdf.tags=देखें, पढ़ें, टिप्पणी, पाठ, छवि + +home.multiTool.title=पीडीएफ़ मल्टी टूल +home.multiTool.desc=पृष्ठ जोड़ें, घुमाएं, व्यवस्थित करें, और हटाएं +multiTool.tags=मल्टी टूल, मल्टी ऑपरेशन, यूआई, क्लिक और खींचें, फ्रंट एंड, क्लाइंट साइड, इंटरैक्टिव, हिलनेवाला + +home.merge.title=मर्ज +home.merge.desc=आसानी से कई पीडीएफ़ को एक में मर्ज करें। +merge.tags=मर्ज, पेज कार्य, बैक एंड, सर्वर साइड + +home.split.title=विभाजन +home.split.desc=पीडीएफ़ को कई दस्तावेज़ों में विभाजित करें +split.tags=पेज कार्य, विभाजित करें, मल्टी पेज, कट, सर्वर साइड + +home.rotate.title=रोटेट +home.rotate.desc=आसानी से अपने पीडीएफ़ को घुमाएँ। +rotate.tags=सर्वर साइड + + +home.imageToPdf.title=छवि से पीडीएफ़ तक +home.imageToPdf.desc=छवि (PNG, JPEG, GIF) को पीडीएफ़ में बदलें। +imageToPdf.tags=परिवर्तन, छवि, jpg, चित्र, फोटो + +home.pdfToImage.title=पीडीएफ़ से छवि तक +home.pdfToImage.desc=पीडीएफ़ को छवि में बदलें। (PNG, JPEG, GIF) +pdfToImage.tags=परिवर्तन, छवि, jpg, चित्र, फोटो + +home.pdfOrganiser.title=संगठन करें +home.pdfOrganiser.desc=किसी भी क्रम में पृष्ठ हटाएं/पुनःव्यवस्थित करें +pdfOrganiser.tags=डुप्लेक्स, सम, विषम, क्रमबद्ध करें, विस्थापित + + +home.addImage.title=छवि जोड़ें +home.addImage.desc=पीडीएफ़ पर एक छवि को एक सेट स्थान पर जोड़ता है। +addImage.tags=छवि, jpg, चित्र, फोटो + +home.watermark.title=वॉटरमार्क जोड़ें +home.watermark.desc=अपने पीडीएफ़ दस्तावेज़ में एक कस्टम वॉटरमार्क जोड़ें। +watermark.tags=पाठ, बार-बार, लेबल, अपना, कॉपीराइट, ट्रेडमार्क, छवि, jpg, चित्र, फोटो + +home.permissions.title=अनुमतियाँ बदलें +home.permissions.desc=अपने पीडीएफ़ दस्तावेज़ की अनुमतियाँ बदलें +permissions.tags=पढ़ें, लिखें, संपादित करें, प्रिंट + +home.removePages.title=हटाएं +home.removePages.desc=अपने पीडीएफ़ दस्तावेज़ से अनचाहे पृष्ठों को हटाएं। +removePages.tags=पृष्ठ हटाएं, पृष्ठ मिटाएं +home.addPassword.title=पासवर्ड जोड़ें +home.addPassword.desc=अपने पीडीएफ़ दस्तावेज़ को एक पासवर्ड से एन्क्रिप्ट करें। +addPassword.tags=सुरक्षित, सुरक्षा +home.removePassword.title=पासवर्ड हटाएं +home.removePassword.desc=अपने पीडीएफ़ दस्तावेज़ से पासवर्ड सुरक्षा को हटाएं। +removePassword.tags=सुरक्षित, डिक्रिप्ट, सुरक्षा, पासवर्ड हटाएं, पासवर्ड मिटाएं +home.compressPdfs.title=Compress +home.compressPdfs.desc=Compress PDFs to reduce their file size. +compressPdfs.tags=squish,small,tiny + + +home.compressPdfs.title=कम्प्रेस +home.compressPdfs.desc=फ़ाइल का आकार कम करने के लिए PDF को कम्प्रेस करें। +compressPdfs.tags=स्क्विश, छोटा, छोटा + +home.changeMetadata.title=मेटाडेटा बदलें +home.changeMetadata.desc=PDF दस्तावेज़ से मेटाडेटा बदलें/हटाएं/जोड़ें। +changeMetadata.tags=शीर्षक, लेखक, तारीख, निर्माण, समय, प्रकाशक, उत्पादक, आँकड़े + +home.fileToPDF.title=फ़ाइल को पीडीएफ़ में रूपांतरित करें +home.fileToPDF.desc=लगभग किसी भी फ़ाइल को पीडीएफ़ में रूपांतरित करें (DOCX, PNG, XLS, PPT, TXT और अधिक) +fileToPDF.tags=परिवर्तन, प्रारूप, दस्तावेज़, चित्र, स्लाइड, पाठ, परिवर्तन, ऑफिस, डॉक्स, वर्ड, एक्सेल, पावरपॉइंट + +home.ocr.title=OCR / स्कैन को साफ करें +home.ocr.desc=स्कैन को साफ करता है और पीडीएफ़ में छवियों से पाठ को पहचानता है और टेक्स्ट के रूप में फिर से जोड़ता है। +ocr.tags=पहचान, टेक्स्ट, छवि, स्कैन, पढ़ें, पहचान, पता लगाना, संपादनीय + +home.extractImages.title=छवियां निकालें +home.extractImages.desc=पीडीएफ़ से सभी छवियों को निकालता है और उन्हें ज़िप में सहेजता है +extractImages.tags=चित्र, फोटो, सहेजें, संग्रह, ज़िप, कैप्चर, ग्रैब + +home.pdfToPDFA.title=PDF से PDF/A में +home.pdfToPDFA.desc=लंबे समय के लिए स्टोरेज के लिए पीडीएफ़ को पीडीएफ़/ए में रूपांतरित करें +pdfToPDFA.tags=संग्रह, लंबे समय के लिए, मानक, परिवर्तन, स्टोरेज, संरक्षण + + +home.PDFToWord.title=PDF से वर्ड में +home.PDFToWord.desc=PDF को वर्ड प्रारूपों में रूपांतरित करें (DOC, DOCX और ODT) +PDFToWord.tags=doc,docx,odt,word,परिवर्तन,प्रारूप,रूपांतरण,ऑफिस,माइक्रोसॉफ्ट,डॉक फ़ाइल + +home.PDFToPresentation.title=PDF से प्रस्तुति में +home.PDFToPresentation.desc=PDF को प्रस्तुति प्रारूपों में रूपांतरित करें (PPT, PPTX और ODP) +PDFToPresentation.tags=स्लाइड,दिखाना,ऑफिस,माइक्रोसॉफ्ट + +home.PDFToText.title=PDF से RTF (पाठ) में +home.PDFToText.desc=PDF को पाठ या RTF प्रारूप में रूपांतरित करें +PDFToText.tags=रिचफॉर्मेट, रिचटेक्स्टफॉर्मेट, रिच टेक्स्ट फॉर्मेट + +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=हस्ताक्षर को ड्राइंग, पाठ या छवि के रूप में पीडीएफ़ में जोड़ता है। +sign.tags=अधिकृत करें, आदेश, ड्राइंग-हस्ताक्षर, पाठ-हस्ताक्षर, छवि-हस्ताक्षर + +home.flatten.title=समतल करें +home.flatten.desc=पीडीएफ़ से सभी इंटरैक्टिव तत्वों और फ़ॉर्म को हटाएं। +flatten.tags=स्थैतिक, निष्क्रिय करें, गैर-इंटरैक्टिव, सरलीकृत + +home.repair.title=मरम्मत +home.repair.desc=किसी कोरप्ट/टूटे हुए पीडीएफ़ को मरम्मत करने का प्रयास करता है। +repair.tags=ठीक करें, पुनर्स्थापित करें, सुधार, पुनर्प्राप्ति + +home.removeBlanks.title=खाली पृष्ठ हटाएं +home.removeBlanks.desc=दस्तावेज़ से खाली पृष्ठों का पता लगाता है और हटाता है +removeBlanks.tags=सफ़ाई, सरलीकरण, गैर-सामग्री, संगठित + +home.removeAnnotations.title=टिप्पणियाँ हटाएं +home.removeAnnotations.desc=पीडीएफ़ से सभी टिप्पणियाँ/एनोटेशन्स को हटाता है +removeAnnotations.tags=टिप्पणियाँ, हाइलाइट, नोट्स, मार्कअप, हटाएं + +home.compare.title=तुलना करें +home.compare.desc=2 पीडीएफ़ दस्तावेज़ों के बीच अंतर को तुलना करता है और दिखाता है +compare.tags=भिन्नता, विविधता, परिवर्तन, विश्लेषण + +home.certSign.title=प्रमाणपत्र के साथ हस्ताक्षर करें +home.certSign.desc=पीडीएफ़ को प्रमाणपत्र/कुंजी (PEM/P12) के साथ हस्ताक्षरित करता है। +certSign.tags=प्रमाणीकरण, PEM, P12, आधिकारिक, एन्क्रिप्ट + +home.pageLayout.title=मल्टी-पेज लेआउट +home.pageLayout.desc=पीडीएफ़ दस्तावेज़ के कई पेजों को एक ही पेज में मर्ज करता है। +pageLayout.tags=मर्ज, संयोजित, एकल दृश्य, संगठित + +home.scalePages.title=पेज का आकार/स्केल समायोजित करें +home.scalePages.desc=पेज और/या उसकी सामग्री का आकार/स्केल बदलें। +scalePages.tags=रीसाइज़, संशोधित, आयाम, अनुकूल + +home.pipeline.title=पाइपलाइन (उन्नत) +home.pipeline.desc=पाइपलाइन स्क्रिप्ट्स को परिभाषित करके पीडीएफ़ पर कई क्रियाएँ चलाएं +pipeline.tags=स्वचालित करें, क्रम, स्क्रिप्टित, बैच-प्रक्रिया + +home.add-page-numbers.title=पेज नंबर जोड़ें +home.add-page-numbers.desc=एक सेट स्थान पर दस्तावेज़ के लिए पेज नंबर जोड़ें +add-page-numbers.tags=पृष्ठांकन, लेबल, संगठन, सूचीकरण + +home.auto-rename.title=ऑटो रिनेम पीडीएफ़ फ़ाइल +home.auto-rename.desc=पाया गया है हैडर के आधार पर पीडीएफ़ फ़ाइल को ऑटोमैटिक रूप से नामांकित करता है +auto-rename.tags=ऑटो-डिटेक्ट, हेडर-आधारित, संगठन, नया नाम देना + +home.adjust-contrast.title=रंग/कंट्रास्ट समायोजित करें +home.adjust-contrast.desc=पीडीएफ़ का कंट्रास्ट, सैट्युरेशन और ब्राइटनेस समायोजित करें +adjust-contrast.tags=रंग सुधार, ट्यूनिंग, संशोधित करें, बेहतर + +home.crop.title=क्रॉप पीडीएफ़ +home.crop.desc=पीडीएफ़ का साइज़ कम करने के लिए क्रॉप करें (पाठ को संरक्षित रखें!) +crop.tags=ट्रिम, छोटा करें, संपादित करें, आकार + +home.autoSplitPDF.title=ऑटो स्प्लिट पेज्स +home.autoSplitPDF.desc=फिजिकल स्कैन किए गए पेज स्प्लिटर QR कोड के साथ ऑटो स्प्लिट स्कैन किया गया पीडीएफ़ +autoSplitPDF.tags=क्यूआर-आधारित, अलग करें, स्कैन-खंड, संगठित + +home.sanitizePdf.title=सैनिटाइज़ +home.sanitizePdf.desc=पीडीएफ़ फ़ाइलों से स्क्रिप्ट और अन्य तत्वों को हटाता है +sanitizePdf.tags=साफ, सुरक्षित, सुरक्षित, हटाएँ-खतरे + +home.URLToPDF.title=URL/वेबसाइट से पीडीएफ़ +home.URLToPDF.desc=किसी भी http(s) URL को पीडीएफ़ में रूपांतरित करता है +URLToPDF.tags=वेब-कैप्चर, पेज सहेजें, वेब-से-डॉक, संग्रह + +home.HTMLToPDF.title=HTML से पीडीएफ़ +home.HTMLToPDF.desc=किसी भी HTML फ़ाइल या ज़िप को पीडीएफ़ में रूपांतरित करता है +HTMLToPDF.tags=मार्कअप, वेब-सामग्री, परिवर्तन, रूपांतरण + + +home.MarkdownToPDF.title=मार्कडाउन से पीडीएफ़ +home.MarkdownToPDF.desc=किसी भी मार्कडाउन फ़ाइल को पीडीएफ़ में रूपांतरित करता है +MarkdownToPDF.tags=मार्कअप, वेब-सामग्री, परिवर्तन, रूपांतरण + + +home.getPdfInfo.title=पीडीएफ़ पर सभी जानकारी प्राप्त करें +home.getPdfInfo.desc=पीडीएफ़ पर संभावना से सभी सूचना को प्राप्त करता है +getPdfInfo.tags=जानकारी, डेटा, स्टैट्स, सांख्यिकी + + +home.extractPage.title=पृष्ठ(ओं) को निकालें +home.extractPage.desc=पीडीएफ़ से चयनित पेजों को निकालता है +extractPage.tags=निकालें + + +home.PdfToSinglePage.title=पीडीएफ़ से एक बड़े पृष्ठ में +home.PdfToSinglePage.desc=सभी पीडीएफ़ पेजों को एक बड़े एकल पृष्ठ में मर्ज करता है +PdfToSinglePage.tags=एकल पृष्ठ + +home.showJS.title=जावास्क्रिप्ट दिखाएं +home.showJS.desc=पीडीएफ़ में डाला गया कोई भी जावास्क्रिप्ट खोजता है और प्रदर्शित करता है +showJS.tags=जेएस + + +home.autoRedact.title=स्वतः गोपनीयकरण +home.autoRedact.desc=प्रविष्ट पाठ के आधार पर पीडीएफ़ में पाठ को स्वतः गोपनीयकरित(काला करें) +showJS.tags=गोपनीयकरण, छिपाना, काला करना, काला, मार्कर, छिपा हुआ + +home.tableExtraxt.title=PDF से CSV में +home.tableExtraxt.desc=CSV में बदलते हुए पीडीएफ़ से तालिकाएँ निकालता है +tableExtraxt.tags=CSV, तालिका निकालना, निकालना, परिवर्तित करना + + +home.autoSizeSplitPDF.title=साइज़/गणना के आधार पर स्वतः विभाजित करें +home.autoSizeSplitPDF.desc=आकार, पृष्ठ संख्या या दस्तावेज़ संख्या के आधार पर एक पीडीएफ़ को विभाजित करें +autoSizeSplitPDF.tags=पीडीएफ़, विभाजन, दस्तावेज़, संगठन + + +home.overlay-pdfs.title=पीडीएफ़ ओवरले +home.overlay-pdfs.desc=एक पीडीएफ़ के ऊपर दूसरे पीडीएफ़ को ओवरले करता है +overlay-pdfs.tags=ओवरले + +home.split-by-sections.title=खंडों से पीडीएफ़ विभाजित करें +home.split-by-sections.desc=पीडीएफ़ के प्रत्येक पृष्ठ को छोटे से छोटे क्षैतिज और ऊर्ध्वाधर खंडों में विभाजित करें +split-by-sections.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=रेगेक्स का प्रयोग करें +autoRedact.wholeWordSearchLabel=पूरे शब्द की खोज +autoRedact.customPaddingLabel=कस्टम अतिरिक्त पैडिंग +autoRedact.convertPDFToImageLabel=PDF को छवि में बदलें (बॉक्स के पीछे पाठ को हटाने के लिए प्रयोग किया जाता है) +autoRedact.submitButton=प्रस्तुत करें + + +#showJS +showJS.title=जावास्क्रिप्ट दिखाएं +showJS.header=जावास्क्रिप्ट दिखाएं +showJS.downloadJS=जावास्क्रिप्ट डाउनलोड करें +showJS.submit=दिखाएं + + +#pdfToSinglePage +pdfToSinglePage.title=पीडीएफ़ से एकल पृष्ठ +pdfToSinglePage.header=पीडीएफ़ से एकल पृष्ठ +pdfToSinglePage.submit=एकल पृष्ठ में परिवर्तित करें + + +#pageExtracter +pageExtracter.title=पृष्ठों को निकालें +pageExtracter.header=पृष्ठों को निकालें +pageExtracter.submit=निकालें + + +#getPdfInfo +getPdfInfo.title=पीडीएफ़ पर जानकारी प्राप्त करें +getPdfInfo.header=पीडीएफ़ पर जानकारी प्राप्त करें +getPdfInfo.submit=जानकारी प्राप्त करें +getPdfInfo.downloadJson=JSON डाउनलोड करें + + +#markdown-to-pdf +MarkdownToPDF.title=मार्कडाउन से पीडीएफ़ +MarkdownToPDF.header=मार्कडाउन से पीडीएफ़ +MarkdownToPDF.submit=रूपांतरित करें +MarkdownToPDF.help=काम चल रहा है +MarkdownToPDF.credit=WeasyPrint का प्रयोग होता है + + + +#url-to-pdf +URLToPDF.title=URL से पीडीएफ़ +URLToPDF.header=URL से पीडीएफ़ +URLToPDF.submit=रूपांतरित करें +URLToPDF.credit=WeasyPrint का प्रयोग होता है + + +#html-to-pdf +HTMLToPDF.title=HTML से पीडीएफ़ +HTMLToPDF.header=HTML से पीडीएफ़ +HTMLToPDF.help=HTML फ़ाइलों और html/css/images आदि को आत्मसात करने वाले ZIPs को स्वीकार करता है +HTMLToPDF.submit=रूपांतरित करें +HTMLToPDF.credit=WeasyPrint का प्रयोग होता है + + +#sanitizePDF +sanitizePDF.title=पीडीएफ़ को सफाई करें +sanitizePDF.header=एक पीडीएफ़ फ़ाइल को सफाई करें +sanitizePDF.selectText.1=जावास्क्रिप्ट क्रियाएँ हटाएं +sanitizePDF.selectText.2=एम्बेडेड फ़ाइलें हटाएं +sanitizePDF.selectText.3=मेटाडेटा हटाएं +sanitizePDF.selectText.4=लिंक हटाएं +sanitizePDF.selectText.5=फ़ॉन्ट्स हटाएं +sanitizePDF.submit=पीडीएफ़ को सफाई करें + + +#addPageNumbers +addPageNumbers.title=पृष्ठ संख्या जोड़ें +addPageNumbers.header=पृष्ठ संख्या जोड़ें +addPageNumbers.selectText.1=पीडीएफ़ फ़ाइल का चयन करें: +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 + + +#adjustContrast +adjustContrast.title=कंट्रास्ट समायोजित करें +adjustContrast.header=कंट्रास्ट समायोजित करें +adjustContrast.contrast=कंट्रास्ट: +adjustContrast.brightness=चमक: +adjustContrast.saturation=संतृप्ति: +adjustContrast.download=डाउनलोड + + +#crop +crop.title=कटौती +crop.header=छवि काटो +crop.submit=प्रस्तुत करें + + +#autoSplitPDF +autoSplitPDF.title=ऑटो स्प्लिट पीडीएफ +autoSplitPDF.header=ऑटो स्प्लिट पीडीएफ +autoSplitPDF.description=प्रिंट, इंसर्ट, स्कैन, अपलोड करें, और हमें आपके दस्तावेजों को स्वत: अलग करने दें। कोई मैनुअल सॉर्टिंग की आवश्यकता नहीं है। +autoSplitPDF.selectText.1=नीचे से कुछ विभाजक शीट्स प्रिंट करें (काला और सफेद ठीक है)। +autoSplitPDF.selectText.2=सभी दस्तावेजों को एक साथ स्कैन करें, उनके बीच में विभाजक शीट डालें। +autoSplitPDF.selectText.3=एक ही बड़ी स्कैन की गई पीडीएफ फ़ाइल अपलोड करें और स्टर्लिंग पीडीएफ से बाकी का संबोधन करें। +autoSplitPDF.selectText.4=विभाजक पृष्ठ स्वत: पहचाने जाते हैं और हटाए जाते हैं, एक साफ़ अंतिम दस्तावेज़ की गारंटी करते हैं। +autoSplitPDF.formPrompt=स्टर्लिंग-पीडीएफ पेज विभाजक शामिल पीडीएफ प्रस्तुत करें: +autoSplitPDF.duplexMode=डुप्लेक्स मोड (सामने और पीछे स्कैनिंग) +autoSplitPDF.dividerDownload1='ऑटो स्प्लिटर विभाजक (न्यूनतम).pdf' डाउनलोड करें +autoSplitPDF.dividerDownload2='ऑटो स्प्लिटर विभाजक (निर्देशों के साथ).pdf' डाउनलोड करें +autoSplitPDF.submit=प्रस्तुत करें + + +#pipeline +pipeline.title=पाइपलाइन + + +#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=अपने प्रमाणपत्र के साथ एक पीडीएफ़ पर हस्ताक्षर करें (काम जारी है) +certSign.selectPDF=साइन करने के लिए एक पीडीएफ़ फ़ाइल का चयन करें: +certSign.selectKey=अपनी निजी कुंजी फ़ाइल का चयन करें (PKCS#8 प्रारूप, .pem या .der हो सकता है): +certSign.selectCert=अपनी प्रमाणपत्र फ़ाइल का चयन करें (X.509 प्रारूप, .pem या .der हो सकता है): +certSign.selectP12=अपनी PKCS#12 कीस्टोर फ़ाइल का चयन करें (.p12 या .pfx) (वैकल्पिक, यदि प्रदान की गई हो, तो इसमें आपकी निजी कुंजी और प्रमाणपत्र होना चाहिए): +certSign.certType=प्रमाणपत्र प्रकार +certSign.password=अपनी कीस्टोर या निजी कुंजी पासवर्ड दर्ज करें (यदि कोई हो): +certSign.showSig=हस्ताक्षर दिखाएं +certSign.reason=कारण +certSign.location=स्थान +certSign.name=नाम +certSign.submit=पीडीएफ़ पर हस्ताक्षर करें + + +#removeBlanks +removeBlanks.title=खाली पेज हटाएं +removeBlanks.header=खाली पेज हटाएं +removeBlanks.threshold=पिक्सेल गोराई थ्रेशोल्ड: +removeBlanks.thresholdDesc='सफेद' क्लास बनाने के लिए पिक्सेल कितना सफेद होना चाहिए यह तय करने के लिए थ्रेशोल्ड। 0 = काला, 255 पूरी सफेद। +removeBlanks.whitePercent=सफेद प्रतिशत (%): +removeBlanks.whitePercentDesc='सफेद' पिक्सेल हटाए जाने के लिए पृष्ठ का प्रतिशत। +removeBlanks.submit=खाली पेज हटाएं + + +#removeAnnotations +removeAnnotations.title=एनोटेशन्स हटाएं +removeAnnotations.header=एनोटेशन्स हटाएं +removeAnnotations.submit=हटाएं + + +#compare +compare.title=तुलना करें +compare.header=पीडीएफ़ तुलना करें +compare.document.1=दस्तावेज़ 1 +compare.document.2=दस्तावेज़ 2 +compare.submit=तुलना करें + + +#sign +sign.title=हस्ताक्षर +sign.header=पीडीएफ़ पर हस्ताक्षर करें +sign.upload=छवि अपलोड करें +sign.draw=हस्ताक्षर बनाएँ +sign.text=पाठ इनपुट +sign.clear=साफ़ करें +sign.add=जोड़ें + + +#repair +repair.title=मरम्मत +repair.header=पीडीएफ़ मरम्मत करें +repair.submit=मरम्मत + + +#flatten +flatten.title=समतल करें +flatten.header=पीडीएफ़ समतल करें +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 टेक्स्ट को सहित टेक्स्ट फ़ाइल बनाएँ +ocr.selectText.3=यहाँ चयन करें की क्या आप OCR'ed पीडीएफ़ के साथ स्क्यूड एंगल पर स्कैन किये गए पेज को सही करना चाहते हैं। +ocr.selectText.4=पेज को साफ करें ताकि OCR बैकग्राउंड नॉइज़ में टेक्स्ट न ढूंढे। (कोई आउटपुट परिवर्तन नहीं होगा) +ocr.selectText.5=पेज को साफ करें ताकि OCR बैकग्राउंड नॉइज़ में टेक्स्ट कम से कम ढूंढे, आउटपुट में सफाई बनाए रखता है। +ocr.selectText.6=यह पेज को अन्दर्स्टैंड करने वाले पेज को छोड़ देगा, जो सिर्फ़ इमेजेस पर OCR करेगा +ocr.selectText.7=जब OCR चालू होता है, तो हर पेज को OCR करेगा और सभी मूल टेक्स्ट तत्वों को हटा देगा +ocr.selectText.8=सामान्य (यदि पीडीएफ़ में टेक्स्ट है तो त्रुटि होगी) +ocr.selectText.9=अतिरिक्त सेटिंग्स +ocr.selectText.10=OCR मोड +ocr.selectText.11=OCR के बाद छवियां हटाएँ (सभी छवियां हटाएँ, केवल परिवर्तन चरण का हिस्सा होता है) +ocr.selectText.12=रेंडर टाइप (उन्नत) +ocr.help=कृपया इस डॉक्यूमेंटेशन को पढ़ें कि इसे अन्य भाषाओं के लिए कैसे उपयोग किया जाता है और/या डॉकर में नहीं हैं +ocr.credit=इस सेवा में OCRmyPDF और टेसरेक्ट का उपयोग होता है। +ocr.submit=OCR के साथ PDF प्रोसेस करें + + +#extractImages +extractImages.title=छवियां निकालें +extractImages.header=छवियां निकालें +extractImages.selectText=निकाली गई छवियों को कन्वर्ट करने के लिए छवि प्रारूप चुनें +extractImages.submit=निकालें + + +#File to PDF +fileToPDF.title=फ़ाइल से पीडीएफ़ +fileToPDF.header=किसी भी फ़ाइल को पीडीएफ़ में बदलें +fileToPDF.credit=यह सेवा फ़ाइल परिवर्तन के लिए LibreOffice और Unoconv का उपयोग करती है। +fileToPDF.supportedFileTypes=समर्थित फ़ाइल प्रकार नीचे दिए गए होने चाहिए हालांकि समर्थित प्रारूपों की पूरी अद्यतन सूची के लिए कृपया LibreOffice दस्तावेज़ीकरण से संदर्भित करें +fileToPDF.submit=पीडीएफ़ में बदलें + + +#compress +compress.title=संकुचित करें +compress.header=PDF को संकुचित करें +compress.credit=यह सेवा PDF संकुचन/अनुकूलन के लिए Ghostscript का उपयोग करती है। +compress.selectText.1=मैनुअल मोड - 1 से 4 तक +compress.selectText.2=अनुकूलन स्तर: +compress.selectText.3=4 (पाठ छवियों के लिए अत्यधिक) +compress.selectText.4=स्वत: मोड - निर्धारित आकार पाने के लिए गुणवत्ता को स्वत: समायोजित करता है +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=पीडीएफ मल्टी टूल +multiTool.header=पीडीएफ मल्टी टूल + +#view pdf +viewPdf.title=पीडीएफ देखें +viewPdf.header=पीडीएफ देखें + +#pageRemover +pageRemover.title=पेज हटाने वाला +pageRemover.header=पीडीएफ पेज हटाने वाला +pageRemover.pagesToDelete=हटाने के पेज (पृष्ठ संख्याओं की व्यवस्था के लिए एक कॉमा से अलग संख्याओं की सूची दर्ज करें): +pageRemover.submit=पेज हटाएं + + +#rotate +rotate.title=पीडीएफ घुमाएं +rotate.header=पीडीएफ घुमाएं +rotate.selectAngle=चुनें घुमाने का कोण (90 डिग्री के गुणकों में): +rotate.submit=घुमाएं + + +#merge +split.title=पीडीएफ को विभाजित करें +split.header=पीडीएफ को विभाजित करें +split.desc.1=जिन नंबरों को आप चुनते हैं, वे पृष्ठ संख्या होती हैं जिन पर आप विभाजन करना चाहते हैं। +split.desc.2=इसलिए, 1,3,7-8 का चयन करना एक 10 पृष्ठों के दस्तावेज़ को 6 अलग-अलग पीडीएफ में विभाजित करेगा जैसे: +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=छवि से पीडीएफ में +imageToPDF.header=छवि से पीडीएफ में +imageToPDF.submit=परिवर्तित करें +imageToPDF.selectLabel=छवि फिट विकल्प +imageToPDF.fillPage=पेज भरें +imageToPDF.fitDocumentToImage=पेज को छवि के आकार में फिट करें +imageToPDF.maintainAspectRatio=प्रमाण अनुपात बनाए रखें +imageToPDF.selectText.2=पीडीएफ को ऑटो रोटेट करें +imageToPDF.selectText.3=मल्टी फ़ाइल तर्क (केवल यदि कई छवियों के साथ काम किया जा रहा है) +imageToPDF.selectText.4=एक ही पीडीएफ में मर्ज करें +imageToPDF.selectText.5=अलग-अलग पीडीएफ में परिवर्तित करें + + +#pdfToImage +pdfToImage.title=पीडीएफ से छवि +pdfToImage.header=पीडीएफ से छवि +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=एन्क्रिप्ट करने के लिए पीडीएफ चुनें +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=वॉटरमार्क जोड़ने के लिए पीडीएफ चुनें: +watermark.selectText.2=वॉटरमार्क टेक्स्ट: +watermark.selectText.3=फ़ॉन्ट साइज़: +watermark.selectText.4=रोटेशन (0-360): +watermark.selectText.5=चौड़ाई स्पेसर (प्रत्येक वॉटरमार्क के बीच की जगह आंतरिक रूप से): +watermark.selectText.6=ऊंचाई स्पेसर (प्रत्येक वॉटरमार्क के बीच की जगह लंबवती रूप से): +watermark.selectText.7=अपारदर्शिता (0% - 100%): +watermark.selectText.8=वॉटरमार्क प्रकार: +watermark.selectText.9=वॉटरमार्क छवि: +watermark.submit=वॉटरमार्क जोड़ें + + +#Change permissions +permissions.title=अनुमतियाँ बदलें +permissions.header=अनुमतियाँ बदलें +permissions.warning=इन अनुमतियों को अथवा इन्हें बदलने से बचाने के लिए, यह सुनिश्चित करने के लिए सुझाव दिया जाता है कि आप इन्हें एक पासवर्ड के साथ जोड़े, जैसे कि विशेषज्ञता जोड़ने पृष्ठ पर +permissions.selectText.1=अनुमतियाँ बदलने के लिए पीडीएफ चुनें +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=डिक्रिप्ट करने के लिए पीडीएफ चुनें +removePassword.selectText.2=पासवर्ड +removePassword.submit=हटाएं + + +#changeMetadata +changeMetadata.title=मेटाडेटा बदलें +changeMetadata.header=मेटाडेटा बदलें +changeMetadata.selectText.1=कृपया उन चरों को संपादित करें जिन्हें आप बदलना चाहते हैं +changeMetadata.selectText.2=सभी मेटाडेटा हटाएं +changeMetadata.selectText.3=कस्टम मेटाडेटा दिखाएं: +changeMetadata.author=लेखक: +changeMetadata.creationDate=निर्माण तिथि (yyyy/MM/dd HH:mm:ss): +changeMetadata.creator=निर्माता: +changeMetadata.keywords=कीवर्ड्स: +changeMetadata.modDate=संशोधन तिथि (yyyy/MM/dd HH:mm:ss): +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=इस सेवा में PDF/A परिवर्तन के लिए OCRmyPDF का उपयोग किया जाता है। +pdfToPDFA.submit=परिवर्तित करें + + +#PDFToWord +PDFToWord.title=PDF से वर्ड +PDFToWord.header=PDF से वर्ड +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=परिवर्तित करें + +#PDFToCSV +PDFToCSV.title=PDF से CSV +PDFToCSV.header=PDF से CSV +PDFToCSV.prompt=टेबल निकालने के लिए पृष्ठ चुनें +PDFToCSV.submit=निकालें + +#split-by-size-or-count +split-by-size-or-count.header=आकार या गणना द्वारा PDF को विभाजित करें +split-by-size-or-count.type.label=स्प्लिट प्रकार चुनें +split-by-size-or-count.type.size=आकार द्वारा +split-by-size-or-count.type.pageCount=पृष्ठ गणना द्वारा +split-by-size-or-count.type.docCount=दस्तावेज़ गणना द्वारा +split-by-size-or-count.value.label=मूल्य दर्ज करें +split-by-size-or-count.value.placeholder=आकार दर्ज करें (उदाहरण के लिए, 2MB या 3KB) या गणना (उदाहरण के लिए, 5) +split-by-size-or-count.submit=प्रस्तुत करें + + +#overlay-pdfs +overlay-pdfs.header=PDF फ़ाइलों को ओवरले करें +overlay-pdfs.baseFile.label=मूल PDF फ़ाइल का चयन करें +overlay-pdfs.overlayFiles.label=ओवरले करने वाली PDF फ़ाइलें चुनें +overlay-pdfs.mode.label=ओवरले मोड का चयन करें +overlay-pdfs.mode.sequential=क्रमशः ओवरले करें +overlay-pdfs.mode.interleaved=इंटरलीव्ड ओवरले करें +overlay-pdfs.mode.fixedRepeat=निश्चित पुनरावृत्ति ओवरले करें +overlay-pdfs.counts.label=ओवरले की संख्या (निश्चित पुनरावृत्ति मोड के लिए) +overlay-pdfs.counts.placeholder=कमा-विराम दिया गया संख्या दर्ज करें (उदाहरण के लिए, 2,3,1) +overlay-pdfs.position.label=ओवरले की स्थिति का चयन करें +overlay-pdfs.position.foreground=पृष्ठरेखा +overlay-pdfs.position.background=पृष्ठमाध्य +overlay-pdfs.submit=प्रस्तुत करें + + +#split-by-sections +split-by-sections.title=अनुभागों में PDF को विभाजित करें +split-by-sections.header=खंडों में PDF को विभाजित करें +split-by-sections.horizontal.label=क्षैतिज विभाजन +split-by-sections.vertical.label=लंबवत विभाजन +split-by-sections.horizontal.placeholder=क्षैतिज विभाजन की संख्या दर्ज करें +split-by-sections.vertical.placeholder=लंबवत विभाजन की संख्या दर्ज करें +split-by-sections.submit=PDF को विभाजित करें diff --git a/src/main/resources/static/images/flags/in.svg b/src/main/resources/static/images/flags/in.svg new file mode 100644 index 000000000..bc47d7491 --- /dev/null +++ b/src/main/resources/static/images/flags/in.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/resources/templates/fragments/languages.html b/src/main/resources/templates/fragments/languages.html index dadc9d9a5..ce95c55c5 100644 --- a/src/main/resources/templates/fragments/languages.html +++ b/src/main/resources/templates/fragments/languages.html @@ -68,4 +68,7 @@ icon Hungarian + + icon हिन्दी + From 44e3556382460b2d982f95044d392177dec9993a Mon Sep 17 00:00:00 2001 From: Anthony Stirling <77850077+Frooodle@users.noreply.github.com> Date: Thu, 28 Dec 2023 23:13:47 +0000 Subject: [PATCH 34/39] Create CODEOWNERS --- .github/CODEOWNERS | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .github/CODEOWNERS diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 000000000..7c81b9b77 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,2 @@ +# All PRs to V1 must be approved by Frooodle +* @Frooodle From 6f3cbe0caed32448d00f262d5c5f664caecd4a6c Mon Sep 17 00:00:00 2001 From: Satyam Kashyap Date: Fri, 29 Dec 2023 06:05:48 +0000 Subject: [PATCH 35/39] added missing hindi (hi_IN) translations and fixed some broken translations - also updated readme to reflect the newly added translations --- README.md | 3 ++- src/main/resources/messages_hi_IN.properties | 12 ++++-------- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 5a37bb300..d9515ca67 100644 --- a/README.md +++ b/README.md @@ -147,7 +147,7 @@ Note: Podman is CLI-compatible with Docker, so simply replace "docker" with "pod Please view https://github.com/Frooodle/Stirling-PDF/blob/main/HowToUseOCR.md ## Want to add your own language? -Stirling PDF currently supports 20! +Stirling PDF currently supports 21! - English (English) (en_GB) - English (US) (en_US) - Arabic (العربية) (ar_AR) @@ -169,6 +169,7 @@ Stirling PDF currently supports 20! - Greek (el_GR) - Turkish (Türkçe) (tr_TR) - Indonesia (Bahasa Indonesia) (id_ID) +- Hindi (हिंदी) (hi_IN) If you want to add your own language to Stirling-PDF please refer https://github.com/Frooodle/Stirling-PDF/blob/main/HowToAddNewLanguage.md diff --git a/src/main/resources/messages_hi_IN.properties b/src/main/resources/messages_hi_IN.properties index 7ffcf6772..fe400e663 100644 --- a/src/main/resources/messages_hi_IN.properties +++ b/src/main/resources/messages_hi_IN.properties @@ -184,12 +184,8 @@ addPassword.tags=सुरक्षित, सुरक्षा home.removePassword.title=पासवर्ड हटाएं home.removePassword.desc=अपने पीडीएफ़ दस्तावेज़ से पासवर्ड सुरक्षा को हटाएं। removePassword.tags=सुरक्षित, डिक्रिप्ट, सुरक्षा, पासवर्ड हटाएं, पासवर्ड मिटाएं -home.compressPdfs.title=Compress -home.compressPdfs.desc=Compress PDFs to reduce their file size. -compressPdfs.tags=squish,small,tiny - -home.compressPdfs.title=कम्प्रेस +home.compressPdfs.title=संकुचित करें (कम्प्रेस) home.compressPdfs.desc=फ़ाइल का आकार कम करने के लिए PDF को कम्प्रेस करें। compressPdfs.tags=स्क्विश, छोटा, छोटा @@ -462,9 +458,9 @@ 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=स्वतः नाम परिवर्तन पीडीएफ़ +auto-rename.submit=स्वतः नाम परिवर्तन #adjustContrast From a43e13cf9466deb115e29aaf700960ad4592bbc8 Mon Sep 17 00:00:00 2001 From: Andrey Voronkov Date: Fri, 29 Dec 2023 12:35:02 +0300 Subject: [PATCH 36/39] Set java file.encoding to support non-latin customizations with UI_APPNAME, UI_HOMEDESCRIPTION, etc --- Dockerfile | 2 +- Dockerfile-lite | 2 +- Dockerfile-ultra-lite | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 6d8303466..657db0b5f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -42,4 +42,4 @@ EXPOSE 8080 # Set user and run command ##USER stirlingpdfuser ENTRYPOINT ["/scripts/init.sh"] -CMD ["java", "-jar", "/app.jar"] +CMD ["java", "-Dfile.encoding=UTF-8", "-jar", "/app.jar"] diff --git a/Dockerfile-lite b/Dockerfile-lite index 9d7349429..068e04cad 100644 --- a/Dockerfile-lite +++ b/Dockerfile-lite @@ -60,4 +60,4 @@ ENV DOCKER_ENABLE_SECURITY=false # Run the application #USER stirlingpdfuser ENTRYPOINT ["/scripts/init-without-ocr.sh"] -CMD ["java", "-jar", "/app.jar"] +CMD ["java", "-Dfile.encoding=UTF-8", "-jar", "/app.jar"] diff --git a/Dockerfile-ultra-lite b/Dockerfile-ultra-lite index b49b90231..621ed58a6 100644 --- a/Dockerfile-ultra-lite +++ b/Dockerfile-ultra-lite @@ -42,4 +42,4 @@ ENV ENDPOINTS_GROUPS_TO_REMOVE=CLI ENTRYPOINT ["/scripts/init-without-ocr.sh"] # Run the application -CMD ["java", "-jar", "/app.jar"] +CMD ["java", "-Dfile.encoding=UTF-8", "-jar", "/app.jar"] From a7b4e44e6d1a601f76c74936bcfebf0e4bc67535 Mon Sep 17 00:00:00 2001 From: TieStone <416138794@qq.com> Date: Sat, 30 Dec 2023 00:20:06 +0800 Subject: [PATCH 37/39] remove duplicated property keys --- src/main/resources/messages_zh_CN.properties | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/main/resources/messages_zh_CN.properties b/src/main/resources/messages_zh_CN.properties index f5ec23393..707a64915 100644 --- a/src/main/resources/messages_zh_CN.properties +++ b/src/main/resources/messages_zh_CN.properties @@ -93,7 +93,6 @@ account.accountSettings=帐号设定 account.adminSettings=管理员设置 - 查看和添加用户 account.userControlSettings=用户控制设置 account.changeUsername=更改用户名 -account.changeUsername=更改用户名 account.password=确认密码 account.oldPassword=旧密码 account.newPassword=新密码 @@ -334,7 +333,7 @@ showJS.tags=JavaScript home.autoRedact.title=自动删除 home.autoRedact.desc=根据输入文本自动删除(覆盖)PDF中的文本 -showJS.tags=JavaScript +autoRedact.tags=删除、覆盖、清理、清除、清除 home.tableExtraxt.title=PDF to CSV home.tableExtraxt.desc=Extracts Tables from a PDF converting it to CSV @@ -791,7 +790,6 @@ changeMetadata.keywords=关键词: changeMetadata.modDate=修改日期(yyyy/MM/dd HH:mm:ss): changeMetadata.producer=生产者: changeMetadata.subject=主题: -changeMetadata.title=标题: changeMetadata.trapped=被困: changeMetadata.selectText.4=其他元数据: changeMetadata.selectText.5=添加自定义元数据条目 From dc297644d108e700c3a2aee2c3cbde4c33042d03 Mon Sep 17 00:00:00 2001 From: TieStone <416138794@qq.com> Date: Sat, 30 Dec 2023 00:38:20 +0800 Subject: [PATCH 38/39] add more Chinese Translations --- src/main/resources/messages_zh_CN.properties | 96 ++++++++++---------- 1 file changed, 50 insertions(+), 46 deletions(-) diff --git a/src/main/resources/messages_zh_CN.properties b/src/main/resources/messages_zh_CN.properties index 707a64915..90e58d6c0 100644 --- a/src/main/resources/messages_zh_CN.properties +++ b/src/main/resources/messages_zh_CN.properties @@ -128,9 +128,9 @@ home.desc=CZL一站式服务,满足您的所有PDF需求。 home.searchBar=Search for features... -home.viewPdf.title=View PDF -home.viewPdf.desc=View, annotate, add text or images -viewPdf.tags=view,read,annotate,text,image +home.viewPdf.title=浏览PDF +home.viewPdf.desc=浏览、注释、添加文本或图像 +viewPdf.tags=浏览、阅读、注释、文本、图像 home.multiTool.title=PDF多功能工具 home.multiTool.desc=合并、旋转、重新排列和删除PDF页面 @@ -336,22 +336,22 @@ home.autoRedact.desc=根据输入文本自动删除(覆盖)PDF中的文本 autoRedact.tags=删除、覆盖、清理、清除、清除 home.tableExtraxt.title=PDF to CSV -home.tableExtraxt.desc=Extracts Tables from a PDF converting it to CSV -tableExtraxt.tags=CSV,Table Extraction,extract,convert +home.tableExtraxt.desc=从PDF中提取表格并将其转换为CSV +tableExtraxt.tags=CSV、表格提取、提取、转换 -home.autoSizeSplitPDF.title=Auto Split by Size/Count -home.autoSizeSplitPDF.desc=Split a single PDF into multiple documents based on size, page count, or document count -autoSizeSplitPDF.tags=pdf,split,document,organization +home.autoSizeSplitPDF.title= 自动根据大小/数目拆分PDF +home.autoSizeSplitPDF.desc=将单个PDF拆分为多个文档,基于大小、页数或文档数 +autoSizeSplitPDF.tags=pdf、拆分、文件、组织 -home.overlay-pdfs.title=Overlay PDFs -home.overlay-pdfs.desc=Overlays PDFs on-top of another PDF -overlay-pdfs.tags=Overlay +home.overlay-pdfs.title=叠加PDF +home.overlay-pdfs.desc=将PDF叠加在另一个PDF上 +overlay-pdfs.tags=叠加 -home.split-by-sections.title=Split PDF by Sections -home.split-by-sections.desc=Divide each page of a PDF into smaller horizontal and vertical sections -split-by-sections.tags=Section Split, Divide, Customize +home.split-by-sections.title=根据章节(Section)拆分PDF +home.split-by-sections.desc=将PDF的每一页分割成更小的水平和垂直的部分 +split-by-sections.tags=章节拆分、分割、自定义 ########################### # # @@ -537,6 +537,10 @@ removeBlanks.whitePercent=白色百分比(%): removeBlanks.whitePercentDesc=必须为白色才能删除的页面百分比 removeBlanks.submit=删除空白 +# removeAnnotations +home.removeAnnotations.title=删除标注 +home.removeAnnotations.desc=删除PDF中的所有标注/评论 +removeAnnotations.tags=评论、高亮、笔记、标注、删除 #compare compare.title=比较 @@ -841,43 +845,43 @@ PDFToXML.credit=此服务使用LibreOffice进行文件转换。 PDFToXML.submit=转换 #PDFToCSV -PDFToCSV.title=PDF ? CSV -PDFToCSV.header=PDF ? CSV -PDFToCSV.prompt=Choose page to extract table -PDFToCSV.submit=?? +PDFToCSV.title=PDF To CSV +PDFToCSV.header=将 PDF 转换为 CSV +PDFToCSV.prompt=选择需要提取表格的页面 +PDFToCSV.submit=提取 #split-by-size-or-count -split-by-size-or-count.header=Split PDF by Size or Count -split-by-size-or-count.type.label=Select Split Type -split-by-size-or-count.type.size=By Size -split-by-size-or-count.type.pageCount=By Page Count -split-by-size-or-count.type.docCount=By Document Count -split-by-size-or-count.value.label=Enter Value -split-by-size-or-count.value.placeholder=Enter size (e.g., 2MB or 3KB) or count (e.g., 5) -split-by-size-or-count.submit=Submit +split-by-size-or-count.header=按照大小或数目拆分PDF +split-by-size-or-count.type.label=选择拆分类型 +split-by-size-or-count.type.size=按照大小 +split-by-size-or-count.type.pageCount=按照页数 +split-by-size-or-count.type.docCount=按照文档数 +split-by-size-or-count.value.label=输入数值 +split-by-size-or-count.value.placeholder=输入大小(例如,2MB或3KB)或数目(例如,5) +split-by-size-or-count.submit=提交 #overlay-pdfs -overlay-pdfs.header=Overlay PDF Files -overlay-pdfs.baseFile.label=Select Base PDF File -overlay-pdfs.overlayFiles.label=Select Overlay PDF Files -overlay-pdfs.mode.label=Select Overlay Mode -overlay-pdfs.mode.sequential=Sequential Overlay -overlay-pdfs.mode.interleaved=Interleaved Overlay -overlay-pdfs.mode.fixedRepeat=Fixed Repeat Overlay -overlay-pdfs.counts.label=Overlay Counts (for Fixed Repeat Mode) -overlay-pdfs.counts.placeholder=Enter comma-separated counts (e.g., 2,3,1) -overlay-pdfs.position.label=Select Overlay Position -overlay-pdfs.position.foreground=Foreground -overlay-pdfs.position.background=Background -overlay-pdfs.submit=Submit +overlay-pdfs.header=叠加PDF文件 +overlay-pdfs.baseFile.label=选择基础PDF文件 +overlay-pdfs.overlayFiles.label=选择需要叠加在基础上的PDF文件 +overlay-pdfs.mode.label=选择叠加模式 +overlay-pdfs.mode.sequential=按顺序叠加 +overlay-pdfs.mode.interleaved=交错叠加 +overlay-pdfs.mode.fixedRepeat=固定重复叠加 +overlay-pdfs.counts.label=叠加次数(仅限固定重复叠加模式) +overlay-pdfs.counts.placeholder=输入用逗号分隔的次数(例如,2,3,1) +overlay-pdfs.position.label=选择叠加位置 +overlay-pdfs.position.foreground=前面(上面) +overlay-pdfs.position.background=后面(下面) +overlay-pdfs.submit=提交 #split-by-sections -split-by-sections.title=Split PDF by Sections -split-by-sections.header=Split PDF into Sections -split-by-sections.horizontal.label=Horizontal Divisions -split-by-sections.vertical.label=Vertical Divisions -split-by-sections.horizontal.placeholder=Enter number of horizontal divisions -split-by-sections.vertical.placeholder=Enter number of vertical divisions -split-by-sections.submit=Split PDF +split-by-sections.title=按照章节(Section)拆分PDF +split-by-sections.header=将PDF拆分成章节(Section) +split-by-sections.horizontal.label=水平分割 +split-by-sections.vertical.label=垂直分割 +split-by-sections.horizontal.placeholder=输入水平分割数 +split-by-sections.vertical.placeholder=输入垂直分割数 +split-by-sections.submit=分割PDF From cd49d7ffa2b173c290152bb5043a43558aa0006e Mon Sep 17 00:00:00 2001 From: TieStone <416138794@qq.com> Date: Sat, 30 Dec 2023 00:41:16 +0800 Subject: [PATCH 39/39] add more Chinese Translations --- src/main/resources/messages_zh_CN.properties | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/resources/messages_zh_CN.properties b/src/main/resources/messages_zh_CN.properties index 90e58d6c0..345002586 100644 --- a/src/main/resources/messages_zh_CN.properties +++ b/src/main/resources/messages_zh_CN.properties @@ -125,7 +125,7 @@ adminUserSettings.submit=保存用户 # HOME-PAGE # ############# home.desc=CZL一站式服务,满足您的所有PDF需求。 -home.searchBar=Search for features... +home.searchBar=搜索您需要的功能... home.viewPdf.title=浏览PDF @@ -349,7 +349,7 @@ home.overlay-pdfs.title=叠加PDF home.overlay-pdfs.desc=将PDF叠加在另一个PDF上 overlay-pdfs.tags=叠加 -home.split-by-sections.title=根据章节(Section)拆分PDF +home.split-by-sections.title=拆分PDF成小块 home.split-by-sections.desc=将PDF的每一页分割成更小的水平和垂直的部分 split-by-sections.tags=章节拆分、分割、自定义 @@ -878,8 +878,8 @@ overlay-pdfs.submit=提交 #split-by-sections -split-by-sections.title=按照章节(Section)拆分PDF -split-by-sections.header=将PDF拆分成章节(Section) +split-by-sections.title=按照块(Section)拆分PDF +split-by-sections.header=将PDF拆分成块 split-by-sections.horizontal.label=水平分割 split-by-sections.vertical.label=垂直分割 split-by-sections.horizontal.placeholder=输入水平分割数