This commit is contained in:
Anthony Stirling 2023-12-10 16:33:44 +00:00
parent a94808fd19
commit 8b55ffff96
22 changed files with 245 additions and 52 deletions

View file

@ -1,4 +1,4 @@
package stirling.software.SPDF.controller.api;
package stirling.software.SPDF.controller.api.converters;
import com.opencsv.CSVWriter;
import io.swagger.v3.oas.annotations.Operation;
@ -12,27 +12,28 @@ import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import stirling.software.SPDF.controller.api.CropController;
import stirling.software.SPDF.controller.api.strippers.PDFTableStripper;
import stirling.software.SPDF.model.api.extract.PDFFilePage;
import java.awt.*;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.StringWriter;
import java.util.ArrayList;
import java.util.List;
@RestController
@RequestMapping("/api/v1/extract/pdf-to-csv")
@RequestMapping("/api/v1/convert")
@Tag(name = "General", description = "General APIs")
public class ExtractController {
private static final Logger logger = LoggerFactory.getLogger(CropController.class);
@PostMapping(consumes = "multipart/form-data")
@PostMapping(value = "/pdf-to-csv", consumes = "multipart/form-data")
@Operation(summary = "Extracts a PDF document to csv", description = "This operation takes an input PDF file and returns CSV file of whole page. Input:PDF Output:CSV Type:SISO")
public ResponseEntity<String> PdfToCsv(@ModelAttribute PDFFilePage form)
throws IOException {
throws Exception {
ArrayList<String> tableData = new ArrayList<>();
int columnsCount = 0;
@ -40,13 +41,9 @@ public class ExtractController {
try (PDDocument document = PDDocument.load(new ByteArrayInputStream(form.getFileInput().getBytes()))) {
final double res = 72; // PDF units are at 72 DPI
PDFTableStripper stripper = new PDFTableStripper();
stripper.setSortByPosition(true);
stripper.setRegion(new Rectangle((int) Math.round(1.0 * res), (int) Math.round(1 * res), (int) Math.round(6 * res), (int) Math.round(9.0 * res)));
PDPage pdPage = document.getPage(form.getPageId() - 1);
stripper.extractTable(pdPage);
columnsCount = stripper.getColumns();
for (int c = 0; c < columnsCount; ++c) {
for(int r=0; r<stripper.getRows(); ++r) {
tableData.add(stripper.getText(r, c));
@ -71,8 +68,11 @@ public class ExtractController {
ArrayList<String> headersList = getTableHeaders(columnsCount,fullTable);
ArrayList<String> recordList = getRecordsList(rowsCount,fullTable);
if(headersList.size() == 0 && recordList.size() == 0) {
throw new Exception("No table detected, no headers or records found");
}
StringWriter writer = new StringWriter();
try (CSVWriter csvWriter = new CSVWriter(writer)) {
csvWriter.writeNext(headersList.toArray(new String[0]));

View file

@ -336,6 +336,13 @@ home.autoRedact.title=Auto Redact
home.autoRedact.desc=Auto Redacts(Blacks out) text in a PDF based on input text
showJS.tags=JS
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #
@ -825,6 +832,6 @@ PDFToXML.credit=تستخدم هذه الخدمة LibreOffice لتحويل الم
PDFToXML.submit=تحويل
#PDFToCSV
PDFToCSV.title= PDF ??? CSV
PDFToCSV.title=PDF ??? CSV
PDFToCSV.header=PDF ??? CSV
PDFToCSV.submit=??????
PDFToCSV.submit=??????

View file

@ -336,6 +336,13 @@ home.autoRedact.title=Автоматично редактиране
home.autoRedact.desc=Автоматично редактира (зачернява) текст в PDF въз основа на въведен текст
showJS.tags=Редактиране,Скриване,затъмняване,черен,маркер,скрит
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #
@ -827,4 +834,4 @@ PDFToXML.submit=Преобразуване
#PDFToCSV
PDFToCSV.title=PDF ??? CSV
PDFToCSV.header=PDF ??? CSV
PDFToCSV.submit=????????
PDFToCSV.submit=????????

View file

@ -336,6 +336,13 @@ home.autoRedact.title=Auto Redact
home.autoRedact.desc=Auto Redacts(Blacks out) text in a PDF based on input text
showJS.tags=JS
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #
@ -827,4 +834,4 @@ PDFToXML.submit=Converteix
#PDFToCSV
PDFToCSV.title=PDF a CSV
PDFToCSV.header=PDF a CSV
PDFToCSV.submit=Extracte
PDFToCSV.submit=Extracte

View file

@ -93,6 +93,7 @@ account.accountSettings=Kontoeinstellungen
account.adminSettings=Admin Einstellungen - Benutzer anzeigen und hinzufügen
account.userControlSettings=Benutzerkontrolle
account.changeUsername=Benutzername ändern
account.changeUsername=Benutzername ändern
account.password=Bestätigungspasswort
account.oldPassword=Altes Passwort
account.newPassword=Neues Passwort
@ -566,7 +567,7 @@ ScannerImageSplit.selectText.8=Legt den minimalen Konturbereichsschwellenwert f
ScannerImageSplit.selectText.9=Randgröße:
ScannerImageSplit.selectText.10=Legt die Größe des hinzugefügten und entfernten Randes fest, um weiße Ränder in der Ausgabe zu verhindern (Standard: 1).
#OCR
ocr.title=OCR / Scan-Bereinigung
ocr.header=Scans bereinigen / OCR (Optical Character Recognition)
@ -685,8 +686,8 @@ imageToPDF.selectText.2=PDF automatisch drehen
imageToPDF.selectText.3=Mehrere Dateien verarbeiten (nur aktiv, wenn Sie mit mehreren Bildern arbeiten)
imageToPDF.selectText.4=In ein einziges PDF zusammenführen
imageToPDF.selectText.5=In separate PDFs konvertieren
#pdfToImage
pdfToImage.title=PDF zu Bild
pdfToImage.header=PDF zu Bild
@ -830,4 +831,4 @@ PDFToXML.submit=Konvertieren
#PDFToCSV
PDFToCSV.title=PDF zu CSV
PDFToCSV.header=PDF zu CSV
PDFToCSV.submit=Extrakt
PDFToCSV.submit=Extrakt

View file

@ -336,6 +336,13 @@ home.autoRedact.title=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03BF \u039C\u0
home.autoRedact.desc=\u0391\u03C5\u03C4\u03CC\u03BC\u03B1\u03C4\u03B7 \u03B5\u03C0\u03B5\u03BE\u03B5\u03C1\u03B3\u03B1\u03C3\u03AF\u03B1 (\u039C\u03B1\u03CD\u03C1\u03B9\u03C3\u03BC\u03B1) \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF\u03C5 \u03C3\u03B5 PDF \u03BC\u03B5 \u03B2\u03AC\u03C3\u03B7 \u03C4\u03BF \u03BA\u03B5\u03AF\u03BC\u03B5\u03BD\u03BF \u03B5\u03B9\u03C3\u03B1\u03B3\u03C9\u03B3\u03AE\u03C2
showJS.tags=Redact,Hide,black out,black,marker,hidden
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #
@ -827,4 +834,4 @@ PDFToXML.submit=\u039C\u03B5\u03C4\u03B1\u03C4\u03C1\u03BF\u03C0\u03AE
#PDFToCSV
PDFToCSV.title=PDF ?? CSV
PDFToCSV.header=PDF ?? CSV
PDFToCSV.submit=?????????
PDFToCSV.submit=?????????

View file

@ -336,6 +336,10 @@ 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
###########################
# #
# WEB PAGES #

View file

@ -93,6 +93,7 @@ account.accountSettings=Account Settings
account.adminSettings=Admin Settings - View and Add Users
account.userControlSettings=User Control Settings
account.changeUsername=Change Username
account.changeUsername=Change Username
account.password=Confirmation Password
account.oldPassword=Old password
account.newPassword=New Password
@ -333,12 +334,11 @@ showJS.tags=JS
home.autoRedact.title=Auto Redact
home.autoRedact.desc=Auto Redacts(Blacks out) text in a PDF based on input text
autoRedact.tags=JS
home.tableExtraxt.title=Table Extraction
home.tableExtraxt.desc=Table Extraction from PDF to CSV
tableExtraxt.tags=CSV
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
###########################
# #
@ -567,7 +567,7 @@ ScannerImageSplit.selectText.8=Sets the minimum contour area threshold for a pho
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)
@ -686,8 +686,8 @@ 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
@ -777,6 +777,7 @@ 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

View file

@ -336,6 +336,13 @@ home.autoRedact.title=Auto Redactar
home.autoRedact.desc=Redactar automáticamente (ocultar) texto en un PDF según el texto introducido
showJS.tags=JS
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #

View file

@ -336,6 +336,13 @@ home.autoRedact.title=Auto Idatzi
home.autoRedact.desc=Auto Idatzi testua pdf fitxategian sarrerako testuan oinarritua
showJS.tags=JS
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #
@ -827,4 +834,4 @@ PDFToXML.submit=Bihurtu
#PDFToCSV
PDFToCSV.title=PDF a CSV
PDFToCSV.header=PDF a CSV
PDFToCSV.submit=Extracto
PDFToCSV.submit=Extracto

View file

@ -336,6 +336,13 @@ home.autoRedact.title=Caviarder automatiquement
home.autoRedact.desc=Caviardez automatiquement les informations sensibles d\u2019un PDF.
showJS.tags=caviarder,redact,auto
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #
@ -827,4 +834,4 @@ PDFToXML.submit=Convertir
#PDFToCSV
PDFToCSV.title=PDF en CSV
PDFToCSV.header=PDF en CSV
PDFToCSV.submit=Extrait
PDFToCSV.submit=Extrait

View file

@ -336,6 +336,13 @@ home.autoRedact.title=Redazione automatica
home.autoRedact.desc=Redige automaticamente (oscura) il testo in un PDF in base al testo immesso
showJS.tags=JS
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #

View file

@ -336,6 +336,13 @@ home.autoRedact.title=自動塗りつぶし
home.autoRedact.desc=入力したテキストに基づいてPDF内のテキストを自動で塗りつぶし(黒塗り)します。
showJS.tags=JS
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #
@ -827,4 +834,4 @@ PDFToXML.submit=変換
#PDFToCSV
PDFToCSV.title=PDF??CSV?
PDFToCSV.header=PDF??CSV?
PDFToCSV.submit=????
PDFToCSV.submit=????

View file

@ -336,6 +336,13 @@ home.autoRedact.title=자동 검열
home.autoRedact.desc=PDF 문서에서 입력된 텍스트들을 자동으로 검열(모자이크)합니다.
showJS.tags=JS
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #

View file

@ -336,6 +336,13 @@ home.autoRedact.title=Auto Redact
home.autoRedact.desc=Auto Redacts(Blacks out) text in a PDF based on input text
showJS.tags=JS
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #
@ -827,4 +834,4 @@ PDFToXML.submit=Converteren
#PDFToCSV
PDFToCSV.title=PDF naar CSV
PDFToCSV.header=PDF naar CSV
PDFToCSV.submit=Extract
PDFToCSV.submit=Extract

View file

@ -336,6 +336,13 @@ home.autoRedact.title=Auto Redact
home.autoRedact.desc=Auto Redacts(Blacks out) text in a PDF based on input text
showJS.tags=JS
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #

View file

@ -336,6 +336,13 @@ home.autoRedact.title=Auto Redact
home.autoRedact.desc=Auto Redacts(Blacks out) text in a PDF based on input text
showJS.tags=JS
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #
@ -827,4 +834,4 @@ PDFToXML.submit=Конвертировать
#PDFToCSV
PDFToCSV.title=PDF ? CSV
PDFToCSV.header=PDF ? CSV
PDFToCSV.submit=???????
PDFToCSV.submit=???????

View file

@ -336,6 +336,13 @@ home.autoRedact.title=Auto Redact
home.autoRedact.desc=Auto Redacts(Blacks out) text in a PDF based on input text
showJS.tags=JS
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #
@ -827,4 +834,4 @@ PDFToXML.submit=Konvertera
#PDFToCSV
PDFToCSV.title=PDF till CSV
PDFToCSV.header=PDF till CSV
PDFToCSV.submit=Navvit
PDFToCSV.submit=Navvit

View file

@ -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=PDF(leri) seçin
@ -92,7 +92,7 @@ account.title=Hesap Ayarları
account.accountSettings=Hesap Ayarları
account.adminSettings=Yönetici Ayarları - Kullanıcıları Görüntüle ve Ekle
account.userControlSettings=Kullanıcı Kontrol Ayarları
account.changeUsername=Yeni Kullanıcı Adı
account.changeUsername=Kullanıcı Adını Değiştir
account.changeUsername=Kullanıcı Adını Değiştir
account.password=Onay Şifresi
account.oldPassword=Eski Şifre
@ -122,11 +122,22 @@ adminUserSettings.webOnlyUser=Sadece Web Kullanıcısı
adminUserSettings.forceChange=Kullanıcının girişte kullanıcı adı/şifre değiştirmesini zorla
adminUserSettings.submit=Kullanıcıyı Kaydet
#############
# HOME-PAGE #
#############
home.desc=Yerel olarak barındırılan tüm PDF ihtiyaçlarınız için tek durak noktanız.
##########################
### TODO: Translate ###
##########################
home.searchBar=Search for features...
##########################
### TODO: Translate ###
##########################
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 Çoklu Araç
home.multiTool.desc=Birleştir, Döndür, Yeniden Düzenle ve Sayfaları Kaldır
@ -144,6 +155,7 @@ home.rotate.title=Döndür
home.rotate.desc=PDF'lerinizi kolayca döndürün.
rotate.tags=sunucu tarafı
home.imageToPdf.title=Resimden PDF'e
home.imageToPdf.desc=Bir resmi (PNG, JPEG, GIF) PDF'e dönüştürün.
imageToPdf.tags=dönüşüm,img,jpg,fotoğraf,resim
@ -156,6 +168,7 @@ home.pdfOrganiser.title=Düzenle
home.pdfOrganiser.desc=Sayfaları herhangi bir sırayla kaldırın/düzenleyin
pdfOrganiser.tags=çift,çift,yan,yana,sırala,taşı
home.addImage.title=Resim Ekle
home.addImage.desc=PDF'e belirli bir konuma resim ekler
addImage.tags=img,jpg,fotoğraf,resim
@ -168,6 +181,7 @@ home.permissions.title=İzinleri Değiştir
home.permissions.desc=PDF belgenizin izinlerini değiştirin
permissions.tags=oku,yaz,düzenle,yazdır
home.removePages.title=Kaldır
home.removePages.desc=PDF belgenizden istenmeyen sayfaları silin.
removePages.tags=Sayfaları kaldır,sayfaları sil
@ -184,6 +198,7 @@ home.compressPdfs.title=Sıkıştır
home.compressPdfs.desc=PDF'lerin dosya boyutunu azaltmak için sıkıştırın.
compressPdfs.tags=sıkıştır,küçük,minik
home.changeMetadata.title=Metaveriyi Değiştir
home.changeMetadata.desc=Bir PDF belgesinden metaveriyi değiştir/kaldır/ekle
changeMetadata.tags=Başlık,yazar,tarih,oluşturma,zaman,yayıncı,üretici,istatistikler
@ -196,6 +211,7 @@ home.ocr.title=OCR / Taramaları Temizle
home.ocr.desc=Taramaları temizler ve bir PDF içindeki resimlerden metni algılar ve tekrar metin olarak ekler.
ocr.tags=tanıma,metin,resim,tarama,okuma,tanımlama,algılama,düzenlenebilir
home.extractImages.title=Resimleri Çıkar
home.extractImages.desc=Bir PDF'ten tüm resimleri çıkarır ve bunları zip olarak kaydeder.
extractImages.tags=fotoğraf,resim,kaydet,arşiv,zip,yakala,al
@ -211,6 +227,7 @@ PDFToWord.tags=doc,docx,odt,word,dönüşüm,format,dönüşüm,ofis,microsoft,d
home.PDFToPresentation.title=PDF'den Sunuma
home.PDFToPresentation.desc=PDF'yi Sunum formatlarına dönüştürün (PPT, PPTX ve ODP)
PDFToPresentation.tags=slaytlar,show,ofis,microsoft
home.PDFToText.title=PDF'den RTF (Metin)'e
home.PDFToText.desc=PDF'i Metin veya RTF formatına dönüştür
PDFToText.tags=zenginformat,zenginmetinformatı,zengin metin formatı
@ -219,6 +236,7 @@ home.PDFToHTML.title=PDF'den HTML'e
home.PDFToHTML.desc=PDF'i HTML formatına dönüştür
PDFToHTML.tags=web içeriği,tarayıcı dostu
home.PDFToXML.title=PDF'den XML'e
home.PDFToXML.desc=PDF'i XML formatına dönüştür
PDFToXML.tags=veri-çıkarımı,yapılandırılmış-içerik,entegrasyon,dönüşüm,dönüştür
@ -295,30 +313,41 @@ home.HTMLToPDF.title=HTML'den PDF'e
home.HTMLToPDF.desc=Herhangi bir HTML dosyasını veya zip'i PDF'e dönüştürür
HTMLToPDF.tags=biçimlendirme,web-içeriği,dönüşüm,dönüştür
home.MarkdownToPDF.title=Markdown'dan PDF'e
home.MarkdownToPDF.desc=Herhangi bir Markdown dosyasını PDF'e dönüştürür
MarkdownToPDF.tags=biçimlendirme,web-içeriği,dönüşüm,dönüştür
home.getPdfInfo.title=PDF Hakkında TÜM Bilgiyi Al
home.getPdfInfo.desc=PDF'ler hakkında mümkün olan her türlü bilgiyi toplar
getPdfInfo.tags=bilgi,veri,istatistikler,istatistik
home.extractPage.title=Sayfa(ları) Çıkar
home.extractPage.desc=PDF'ten seçili sayfaları çıkarır
extractPage.tags=çıkar
home.PdfToSinglePage.title=PDF'i Tek Büyük Sayfaya
home.PdfToSinglePage.desc=Tüm PDF sayfalarını tek büyük bir sayfada birleştirir
PdfToSinglePage.tags=tek sayfa
home.showJS.title=Javascript'i Göster
home.showJS.desc=Bir PDF'e enjekte edilen herhangi bir JS'i araştırır ve gösterir
showJS.tags=JS
showJS.tags=Karart,Gizle,karartma,siyah,markör,gizli
home.autoRedact.title=Otomatik Karartma
home.autoRedact.desc=Giriş metnine dayanarak bir PDF'teki metni Otomatik Karartır (Redakte)
showJS.tags=Karart,Gizle,karartma,siyah,markör,gizli
##########################
### TODO: Translate ###
##########################
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
###########################
# #
@ -333,6 +362,7 @@ login.invalid=Geçersiz kullanıcı adı veya şifre.
login.locked=Hesabınız kilitlendi.
login.signinTitle=Lütfen giriş yapınız.
#auto-redact
autoRedact.title=Otomatik Karartma
autoRedact.header=Otomatik Karartma
@ -345,28 +375,33 @@ autoRedact.customPaddingLabel=Özel Ekstra Dolgu
autoRedact.convertPDFToImageLabel=PDF'i PDF-Görüntü'ye dönüştür (Kutunun arkasındaki metni kaldırmak için kullanılır)
autoRedact.submitButton=Gönder
#showJS
showJS.title=Javascript'i Göster
showJS.header=Javascript'i Göster
showJS.downloadJS=Javascript İndir
showJS.submit=Göster
#pdfToSinglePage
pdfToSinglePage.title=PDF'i Tek Sayfaya
pdfToSinglePage.header=PDF'i Tek Sayfaya
pdfToSinglePage.submit=Tek Sayfaya Dönüştür
#pageExtracter
pageExtracter.title=Sayfaları Çıkar
pageExtracter.header=Sayfaları Çıkar
pageExtracter.submit=Çıkar
#getPdfInfo
getPdfInfo.title=PDF Hakkında Bilgi Al
getPdfInfo.header=PDF Hakkında Bilgi Al
getPdfInfo.submit=Bilgi Al
getPdfInfo.downloadJson=JSON İndir
#markdown-to-pdf
MarkdownToPDF.title=Markdown'dan PDF'e
MarkdownToPDF.header=Markdown'dan PDF'e
@ -374,12 +409,15 @@ MarkdownToPDF.submit=Dönüştür
MarkdownToPDF.help=Devam eden iş
MarkdownToPDF.credit=WeasyPrint Kullanıyor
#url-to-pdf
URLToPDF.title=URL'den PDF'e
URLToPDF.header=URL'den PDF'e
URLToPDF.submit=Dönüştür
URLToPDF.credit=WeasyPrint Kullanıyor
#html-to-pdf
HTMLToPDF.title=HTML'den PDF'e
HTMLToPDF.header=HTML'den PDF'e
@ -387,6 +425,7 @@ HTMLToPDF.help=HTML dosyalarını ve html/css/görsel vb. içeren ZIP'leri kabul
HTMLToPDF.submit=Dönüştür
HTMLToPDF.credit=WeasyPrint Kullanıyor
#sanitizePDF
sanitizePDF.title=PDF'i Temizle
sanitizePDF.header=PDF dosyasını temizle
@ -397,6 +436,7 @@ sanitizePDF.selectText.4=Linkleri kaldır
sanitizePDF.selectText.5=Fontları kaldır
sanitizePDF.submit=PDF'i Temizle
#addPageNumbers
addPageNumbers.title=Sayfa Numaraları Ekle
addPageNumbers.header=Sayfa Numaraları Ekle
@ -411,11 +451,13 @@ addPageNumbers.numberPagesDesc=Hangi sayfaların numaralandırılacağını, var
addPageNumbers.customNumberDesc=Varsayılan {n}, ayrıca 'Sayfa {n} / {total}', 'Metin-{n}', '{filename}-{n} kabul eder
addPageNumbers.submit=Sayfa Numaraları Ekle
#auto-rename
auto-rename.title=Otomatik Yeniden Adlandır
auto-rename.header=PDF'i Otomatik Yeniden Adlandır
auto-rename.submit=Otomatik Yeniden Adlandır
#adjustContrast
adjustContrast.title=Kontrastı Ayarla
adjustContrast.header=Kontrastı Ayarla
@ -424,11 +466,13 @@ adjustContrast.brightness=Parlaklık:
adjustContrast.saturation=Doygunluk:
adjustContrast.download=İndir
#crop
crop.title=Kırp
crop.header=Resmi Kırp
crop.submit=Gönder
#autoSplitPDF
autoSplitPDF.title=PDF'i Otomatik Böl
autoSplitPDF.header=PDF'i Otomatik Böl
@ -455,6 +499,7 @@ pageLayout.pagesPerSheet=Sayfa başına sayfalar:
pageLayout.addBorder=Kenarlık Ekle
pageLayout.submit=Gönder
#scalePages
scalePages.title=Sayfa Ölçeğini Ayarla
scalePages.header=Sayfa Ölçeğini Ayarla
@ -462,6 +507,7 @@ scalePages.pageSize=Belgenin bir sayfa boyutu.
scalePages.scaleFactor=Bir sayfanın yakınlaştırma seviyesi (kırpma).
scalePages.submit=Gönder
#certSign
certSign.title=Sertifika İmzalama
certSign.header=Sertifikanızla bir PDF imzalayın (Devam eden iş)
@ -477,6 +523,7 @@ certSign.location=Konum
certSign.name=İsim
certSign.submit=PDF'i İmzala
#removeBlanks
removeBlanks.title=Boşları Kaldır
removeBlanks.header=Boş Sayfaları Kaldır
@ -486,6 +533,7 @@ removeBlanks.whitePercent=Beyaz Yüzde (%):
removeBlanks.whitePercentDesc=Bir sayfanın 'beyaz' pixel olması gereken yüzdesi
removeBlanks.submit=Boşları Kaldır
#compare
compare.title=Karşılaştır
compare.header=PDF'leri Karşılaştır
@ -503,16 +551,19 @@ sign.text=Metin Girişi
sign.clear=Temizle
sign.add=Ekle
#repair
repair.title=Onar
repair.header=PDF'leri Onar
repair.submit=Onar
#flatten
flatten.title=Düzleştir
flatten.header=PDF'leri Düzleştir
flatten.submit=Düzleştir
#ScannerImageSplit
ScannerImageSplit.selectText.1=ı Eşiği:
ScannerImageSplit.selectText.2=Resmin döndürülmesi için gereken minimum mutlak açıyı ayarlar (varsayılan: 10).
@ -525,6 +576,7 @@ ScannerImageSplit.selectText.8=Bir fotoğraf için minimum kontur alanı eşiği
ScannerImageSplit.selectText.9=Kenar Boyutu:
ScannerImageSplit.selectText.10=Çıktıda beyaz kenarların önlenmesi için eklenen ve kaldırılan kenarın boyutunu ayarlar (varsayılan: 1).
#OCR
ocr.title=OCR / Tarama Temizleme
ocr.header=Taramaları Temizle / OCR (Optik Karakter Tanıma)
@ -551,6 +603,7 @@ extractImages.header=Resimleri Çıkar
extractImages.selectText=Çıkarılan resimleri dönüştürmek için resim formatını seçin
extractImages.submit=Çıkar
#File to PDF
fileToPDF.title=Dosyadan PDF'e
fileToPDF.header=Herhangi bir dosyayı PDF'e dönüştür
@ -558,6 +611,7 @@ fileToPDF.credit=Bu hizmet dosya dönüşümü için LibreOffice ve Unoconv'u ku
fileToPDF.supportedFileTypes=Desteklenen dosya türleri aşağıdakileri içermelidir ancak desteklenen formatların tam güncellenmiş listesi için lütfen LibreOffice dokümantasyonuna başvurun
fileToPDF.submit=PDF'e Dönüştür
#compress
compress.title=Sıkıştır
compress.header=PDF'i Sıkıştır
@ -569,6 +623,7 @@ compress.selectText.4=Otomatik mod - PDF'in tam boyutuna ulaşmak için kaliteyi
compress.selectText.5=Beklenen PDF Boyutu (örn. 25MB, 10.8MB, 25KB)
compress.submit=Sıkıştır
#Add image
addImage.title=Resim Ekle
addImage.header=PDF'e resim ekle
@ -576,6 +631,7 @@ addImage.everyPage=Her Sayfa?
addImage.upload=Resim ekle
addImage.submit=Resim ekle
#merge
merge.title=Birleştir
merge.header=Çoklu PDF'leri Birleştir (2+)
@ -583,15 +639,24 @@ merge.sortByName=İsme göre sırala
merge.sortByDate=Tarihe göre sırala
merge.submit=Birleştir
#pdfOrganiser
pdfOrganiser.title=Sayfa Organizatörü
pdfOrganiser.header=PDF Sayfa Organizatörü
pdfOrganiser.submit=Sayfaları Yeniden Düzenle
#multiTool
multiTool.title=PDF Çoklu Araç
multiTool.header=PDF Çoklu Araç
#view pdf
##########################
### TODO: Translate ###
##########################
viewPdf.title=View PDF
viewPdf.header=View PDF
#pageRemover
pageRemover.title=Sayfa Silici
pageRemover.header=PDF Sayfa silici
@ -605,7 +670,8 @@ rotate.header=PDF Döndür
rotate.selectAngle=Döndürme açısını seçin (90 derecenin katları olarak):
rotate.submit=Döndür
#split
#merge
split.title=PDF Ayır
split.header=PDF Ayır
split.desc.1=Seçtiğiniz numaralar, bir ayrım yapmak istediğiniz sayfa numarasıdır
@ -619,7 +685,8 @@ split.desc.8=Belge #6: Sayfa 9 ve 10
split.splitPages=Ayrılacak sayfaları girin:
split.submit=Ayır
#imageToPDF
#merge
imageToPDF.title=Resimden PDF'e
imageToPDF.header=Resimden PDF'e
imageToPDF.submit=Dönüştür
@ -631,7 +698,8 @@ imageToPDF.selectText.2=PDF'yi otomatik döndür
imageToPDF.selectText.3=Çoklu dosya mantığı (Yalnızca birden fazla resimle çalışırken etkinleştirilir)
imageToPDF.selectText.4=Tek bir PDF'e birleştir
imageToPDF.selectText.5=Ayrı PDF'lere dönüştür
#pdfToImage
pdfToImage.title=PDF'den Resme
pdfToImage.header=PDF'den Resme
@ -645,6 +713,7 @@ pdfToImage.grey=Gri tonlama
pdfToImage.blackwhite=Siyah ve Beyaz (Veri kaybolabilir!)
pdfToImage.submit=Dönüştür
#addPassword
addPassword.title=Parola Ekle
addPassword.header=Parola Ekle (Şifrele)
@ -681,6 +750,7 @@ watermark.selectText.8=Filigran Türü:
watermark.selectText.9=Filigran Resmi:
watermark.submit=Filigran Ekle
#Change permissions
permissions.title=İzinleri Değiştir
permissions.header=İzinleri Değiştir
@ -697,6 +767,7 @@ permissions.selectText.9=Yazdırmayı önle
permissions.selectText.10=Farklı formatlarda yazdırmayı önle
permissions.submit=Değiştir
#remove password
removePassword.title=Parola Kaldır
removePassword.header=Parola Kaldır (Şifre Çöz)
@ -704,8 +775,9 @@ removePassword.selectText.1=Şifreyi Çözmek için PDF Seçin
removePassword.selectText.2=Parola
removePassword.submit=Kaldır
#changeMetadata
changeMetadata.title=Metaveriyi Değiştir
changeMetadata.title=Başlık:
changeMetadata.header=Metaveriyi Değiştir
changeMetadata.selectText.1=Değiştirmek istediğiniz değişkenleri düzenleyin
changeMetadata.selectText.2=Tüm metaveriyi sil
@ -723,12 +795,14 @@ changeMetadata.selectText.4=Diğer Metaveri:
changeMetadata.selectText.5=Özel Metaveri Girişi Ekle
changeMetadata.submit=Değiştir
#pdfToPDFA
pdfToPDFA.title=PDF'den PDF/A'ya
pdfToPDFA.header=PDF'den PDF/A'ya
pdfToPDFA.credit=Bu hizmet PDF/A dönüşümü için OCRmyPDF kullanır
pdfToPDFA.submit=Dönüştür
#PDFToWord
PDFToWord.title=PDF'den Word'e
PDFToWord.header=PDF'den Word'e
@ -736,6 +810,7 @@ PDFToWord.selectText.1=Çıktı dosya formatı
PDFToWord.credit=Bu hizmet dosya dönüşümü için LibreOffice kullanır.
PDFToWord.submit=Dönüştür
#PDFToPresentation
PDFToPresentation.title=PDF'den Sunuma
PDFToPresentation.header=PDF'den Sunuma
@ -743,6 +818,7 @@ PDFToPresentation.selectText.1=Çıktı dosya formatı
PDFToPresentation.credit=Bu hizmet dosya dönüşümü için LibreOffice kullanır.
PDFToPresentation.submit=Dönüştür
#PDFToText
PDFToText.title=PDF'den RTF (Metin)'e
PDFToText.header=PDF'den RTF (Metin)'e
@ -750,14 +826,24 @@ PDFToText.selectText.1=Çıktı dosya formatı
PDFToText.credit=Bu hizmet dosya dönüşümü için LibreOffice kullanır.
PDFToText.submit=Dönüştür
#PDFToHTML
PDFToHTML.title=PDF'den HTML'e
PDFToHTML.header=PDF'den HTML'e
PDFToHTML.credit=Bu hizmet dosya dönüşümü için LibreOffice kullanır.
PDFToHTML.submit=Dönüştür
#PDFToXML
PDFToXML.title=PDF'den XML'e
PDFToXML.header=PDF'den XML'e
PDFToXML.credit=Bu hizmet dosya dönüşümü için LibreOffice kullanır.
PDFToXML.submit=Dönüştür
PDFToXML.submit=Dönüştür
#PDFToCSV
##########################
### TODO: Translate ###
##########################
PDFToCSV.title=PDF to CSV
PDFToCSV.header=PDF to CSV
PDFToCSV.submit=Extract

View file

@ -336,6 +336,13 @@ home.autoRedact.title=自动删除
home.autoRedact.desc=根据输入文本自动删除覆盖PDF中的文本
showJS.tags=JavaScript
##########################
### TODO: Translate ###
##########################
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
###########################
# #
# WEB PAGES #
@ -827,4 +834,4 @@ PDFToXML.submit=转换
#PDFToCSV
PDFToCSV.title=PDF ? CSV
PDFToCSV.header=PDF ? CSV
PDFToCSV.submit=??
PDFToCSV.submit=??

View file

@ -7,12 +7,13 @@
<body>
<div id="page-container">
<div id="content-wrap">
<div th:insert="~{fragments/navbar.html :: navbar}"></div>
</br></br>
<div class="container">
<div class="row justify-content-center">
<div class="col-md-6">
<h2 th:text="#{PDFToCSV.header}"></h2>
<form id="PDFToCSVForm" th:action="@{api/v1/extract/pdf-to-csv}" method="post" enctype="multipart/form-data">
<form id="PDFToCSVForm" th:action="@{api/v1/convert/pdf-to-csv}" method="post" enctype="multipart/form-data">
<input id="pageId" type="hidden" name="pageId" />
<div th:replace="~{fragments/common :: fileSelector(name='fileInput', multiple=false, accept='application/pdf')}"></div>
<button type="submit" class="btn btn-primary" th:text="#{PDFToCSV.submit}"></button>

View file

@ -84,10 +84,7 @@
<div th:replace="~{fragments/navbarEntry :: navbarEntry ('pdf-to-html', 'images/filetype-html.svg', 'home.PDFToHTML.title', 'home.PDFToHTML.desc', 'PDFToHTML.tags')}"></div>
<div th:replace="~{fragments/navbarEntry :: navbarEntry ('pdf-to-xml', 'images/filetype-xml.svg', 'home.PDFToXML.title', 'home.PDFToXML.desc', 'PDFToXML.tags')}"></div>
<div th:replace="~{fragments/navbarEntry :: navbarEntry ('pdf-to-pdfa', 'images/file-earmark-pdf.svg', 'home.pdfToPDFA.title', 'home.pdfToPDFA.desc', 'pdfToPDFA.tags')}"></div>
<div th:replace="~{fragments/navbarEntry :: navbarEntry ('pdf-to-csv', 'images/pdf-csv.svg', 'home.tableExtraxt.title', 'home.tableExtraxt.desc', 'pdfToPDFA.tags')}"></div>
</div>
</li>
@ -105,8 +102,6 @@
<div th:replace="~{fragments/navbarEntry :: navbarEntry ('cert-sign', 'images/award.svg', 'home.certSign.title', 'home.certSign.desc', 'certSign.tags')}"></div>
<div th:replace="~{fragments/navbarEntry :: navbarEntry ('sanitize-pdf', 'images/sanitize.svg', 'home.sanitizePdf.title', 'home.sanitizePdf.desc', 'sanitizePdf.tags')}"></div>
<div th:replace="~{fragments/navbarEntry :: navbarEntry ('auto-redact', 'images/eraser-fill.svg', 'home.autoRedact.title', 'home.autoRedact.desc', 'autoRedact.tags')}"></div>
<div th:replace="~{fragments/navbarEntry :: navbarEntry ('auto-extract', 'images/eraser-fill.svg', 'home.tableExtraxt.title', 'home.tableExtraxt.desc', 'tableExtraxt.tags')}"></div>
</div>
</li>