Package de.elo.mover.main.pdf
Class PdfFileHelper
java.lang.Object
de.elo.mover.main.pdf.PdfFileHelper
public class PdfFileHelper
extends java.lang.Object
Überschrift: PdfFileHelper.
Beschreibung: Hilfsmethoden für PDF-Dateien.
Copyright: Copyright (c) ELO Digital Office GmbH 2018 - 2020
-
Constructor Summary
Constructors Constructor Description PdfFileHelper()
-
Method Summary
Modifier and Type Method Description static void
addFileAttachment(java.io.File pdfFile, java.io.File attachFile, java.lang.String attachName)
Fügt die Datei als Anhang in der PDF-Datei ein.static void
appendPdfToPdf(java.io.File sourceFile, java.io.File targetFile, boolean appendStart)
Hängt die PDF-Datei an der angegebenen PDF-Datei an.static java.util.ArrayList<java.io.File>
exportFileAttachments(java.io.File pdfFile, java.io.File targetDir)
Extrahiert die Dateianhänge der angegebenen PDF-Datei im angegebenen Verzeichnis und liefert die Liste mit den Anhängen zurück.static java.awt.Dimension
getDefaultResolution()
Liefert die Default-Auflösung (300 dpi) für PDF-Dateien zurück.static java.util.HashMap<java.lang.String,java.lang.String>
getMetadata(java.io.File pdfFile)
Liefert eine HashMap mit den Metadaten der angegebenen PDF-Datei zurück.static int
getNumberOfPages(java.io.File pdfFile)
Liefert die Seitenanzahl der angegebenen PDF-Datei zurück.static java.awt.image.BufferedImage
getPage(java.io.File pdfFile, int page)
Liefert die angegebene Dokumentenseite der PDF-Datei zurück.static java.lang.String
getPdfFilePageText(java.io.File file, int page)
Liefert den Text aus der angegebenen PDF-Seite zurück.static java.lang.String
getPdfFileText(java.io.File file)
Liefert den Text der angegebenen PDF-Datei als String zurück.static java.awt.Dimension
getResolution(java.io.File pdfFile)
Liefert die Auflösung der angegebenen PDF-Datei zurück.static boolean
hasPdfExtension(java.io.File file)
Meldet zurück, ob die angegebene Datei eine PDF-Dateiendung hat.static void
insertPictureInPdf(java.io.File sourceFile, java.io.File targetFile, int page, int x, int y)
Fügt das angegebene Bild in der angegebenen Datei ein.static void
insertPictureInPdf2(java.io.File sourceFile, java.io.File targetFile, int page, int x, int y, int width, int height)
Fügt das angegebene Bild in der angegebenen PDF-Datei ein.static void
insertTextInPdf(java.lang.String text, java.io.File targetFile, int page, int x, int y, int textSize, int colorRed, int colorGreen, int colorBlue, float transpar, int skew)
Fügt den Text in der angegebenen PDF-Datei ein.static void
insertTextInPdf2(java.lang.String text, java.io.File targetFile, int page, int x, int y, int textSize, java.io.File textFontFile, int colorRed, int colorGreen, int colorBlue, float transpar, int skew)
Fügt den Text in der angegebenen PDF-Datei ein.static boolean
isAllPdfs(java.util.List<java.io.File> files)
Liefert true zurück, wenn die Liste nur PDF-Dateien enthält.static void
mergePdfFiles(java.io.File[] sourcePdfFiles, java.io.File outputFile)
Klammert die angegebenen PDF-Dateien in der angegebenen Ausgabedatei.static void
removePage(java.io.File pdfFile, int page)
Löscht die Seite in der angegebenen Datei.static void
saveFilePage(java.io.File sourcePdfFile, int pageNr, java.io.File targetFile)
Speichert die Seite der PDF-Datei in der angegebenen Zieldatei.static void
setCropBox(java.io.File pdfFile, float lowerLeftX, float lowerLeftY, float upperRightX, float upperRightY)
Setzt den angegebenen abzuschneidenden Rechteck für alle Dokumentseiten.static java.io.File[]
splitPdfFile(java.io.File pdfFile)
Entklammert die angegebene PDF-Datei und liefert eine Liste mit einseitigen Dateien oder null zurück.static java.io.File[]
splitPdfFileBySeparPage(java.io.File pdfFile)
Trennt die angegebene PDF-Datei nach ELO-Trennseiten und liefert eine Liste mit den Ergebnisdateien zurück.
-
Constructor Details
-
PdfFileHelper
public PdfFileHelper()
-
-
Method Details
-
mergePdfFiles
public static void mergePdfFiles(java.io.File[] sourcePdfFiles, java.io.File outputFile) throws java.io.IOException, java.lang.ExceptionKlammert die angegebenen PDF-Dateien in der angegebenen Ausgabedatei.- Parameters:
sourcePdfFiles
- Liste mit PDF-DateienoutputFile
- Ausgabedatei- Throws:
java.io.IOException
java.lang.Exception
-
splitPdfFile
public static java.io.File[] splitPdfFile(java.io.File pdfFile) throws java.io.IOException, java.lang.ExceptionEntklammert die angegebene PDF-Datei und liefert eine Liste mit einseitigen Dateien oder null zurück.- Parameters:
pdfFile
- PDF-Datei- Returns:
- Liste mit einseitigen PDF-Dateien
- Throws:
java.io.IOException
java.lang.Exception
-
splitPdfFileBySeparPage
public static java.io.File[] splitPdfFileBySeparPage(java.io.File pdfFile) throws java.lang.ExceptionTrennt die angegebene PDF-Datei nach ELO-Trennseiten und liefert eine Liste mit den Ergebnisdateien zurück.- Parameters:
pdfFile
- PDF-Datei- Returns:
- Liste mit getrennten PDF-Dateien
- Throws:
java.lang.Exception
-
hasPdfExtension
public static boolean hasPdfExtension(java.io.File file) throws java.lang.ExceptionMeldet zurück, ob die angegebene Datei eine PDF-Dateiendung hat.- Parameters:
file
- Datei- Returns:
- Datei hat die Dateiendung pdf
- Throws:
java.lang.Exception
-
isAllPdfs
public static boolean isAllPdfs(java.util.List<java.io.File> files) throws java.lang.ExceptionLiefert true zurück, wenn die Liste nur PDF-Dateien enthält.- Parameters:
files
- Liste mit Dateien- Returns:
- Nur PDF-Dateien enthalten
- Throws:
java.lang.Exception
-
insertPictureInPdf
public static void insertPictureInPdf(java.io.File sourceFile, java.io.File targetFile, int page, int x, int y) throws java.io.IOException, java.lang.ExceptionFügt das angegebene Bild in der angegebenen Datei ein.- Parameters:
sourceFile
- Datei, die eingebettet wirdtargetFile
- Zieldateipage
- Dokumentenseite, in der die angegebene Datei eingebettet wirdx
- Relative x-Position (Eingabe zwischen 0 und 1000)y
- Relative y-Position (Eingabe zwischen 0 und 1000)- Throws:
java.io.IOException
java.lang.Exception
-
insertPictureInPdf2
public static void insertPictureInPdf2(java.io.File sourceFile, java.io.File targetFile, int page, int x, int y, int width, int height) throws java.io.IOException, java.lang.ExceptionFügt das angegebene Bild in der angegebenen PDF-Datei ein.- Parameters:
sourceFile
- Datei, die eingebettet wirdtargetFile
- Zieldateipage
- Dokumentenseite, in der die angegebene Datei eingebettet wirdx
- Relative x-Position (Eingabe zwischen 0 und 1000)y
- Relative y-Position (Eingabe zwischen 0 und 1000)width
- Breite des Bildesheight
- Höhe des Bildes- Throws:
java.io.IOException
java.lang.Exception
-
insertTextInPdf
public static void insertTextInPdf(java.lang.String text, java.io.File targetFile, int page, int x, int y, int textSize, int colorRed, int colorGreen, int colorBlue, float transpar, int skew) throws java.lang.ExceptionFügt den Text in der angegebenen PDF-Datei ein.- Parameters:
text
- Einzufügender TexttargetFile
- PDF-Datei, in der der Text eingefügt wirdpage
- Dokumentenseite, in der der Text eingefügt wirdx
- Relative x-Position (Eingabe zwischen 0 und 1000)y
- Relative y-Position (Eingabe zwischen 0 und 1000)textSize
- TextgrößecolorRed
- Anteil der roten Farbe (Eingabe zwischen 0 und 255)colorGreen
- Anteil der grünen Farbe (Eingabe zwischen 0 und 255)colorBlue
- Anteil der blauen Farbe (Eingabe zwischen 0 und 255)transpar
- Transparenz (Eingabe zwischen 0 und 1)skew
- Drehwinkel- Throws:
java.lang.Exception
-
insertTextInPdf2
public static void insertTextInPdf2(java.lang.String text, java.io.File targetFile, int page, int x, int y, int textSize, java.io.File textFontFile, int colorRed, int colorGreen, int colorBlue, float transpar, int skew) throws java.lang.ExceptionFügt den Text in der angegebenen PDF-Datei ein.- Parameters:
text
- Einzufügender TexttargetFile
- PDF-Datei, in der der Text eingefügt wirdpage
- Dokumentenseite, in der der Text eingefügt wirdx
- Relative x-Position (Eingabe zwischen 0 und 1000)y
- Relative y-Position (Eingabe zwischen 0 und 1000)textSize
- TextgrößetextFontFile
- Datei mit der SchriftartcolorRed
- Anteil der roten Farbe (Eingabe zwischen 0 und 255)colorGreen
- Anteil der grünen Farbe (Eingabe zwischen 0 und 255)colorBlue
- Anteil der blauen Farbe (Eingabe zwischen 0 und 255)transpar
- Transparenz (Eingabe zwischen 0 und 1)skew
- Drehwinkel- Throws:
java.lang.Exception
-
getPdfFileText
public static java.lang.String getPdfFileText(java.io.File file) throws java.io.IOException, java.lang.ExceptionLiefert den Text der angegebenen PDF-Datei als String zurück.- Parameters:
file
- PDF-Datei- Returns:
- Text in der Datei
- Throws:
java.io.IOException
java.lang.Exception
-
getPdfFilePageText
public static java.lang.String getPdfFilePageText(java.io.File file, int page) throws java.io.IOException, java.lang.ExceptionLiefert den Text aus der angegebenen PDF-Seite zurück.- Parameters:
file
- PDF-Dateipage
- Dokumentseite- Returns:
- Text aus der Dokumentseite
- Throws:
java.io.IOException
java.lang.Exception
-
appendPdfToPdf
public static void appendPdfToPdf(java.io.File sourceFile, java.io.File targetFile, boolean appendStart) throws java.lang.ExceptionHängt die PDF-Datei an der angegebenen PDF-Datei an.- Parameters:
sourceFile
- PDF-Datei, die angehängt wirdtargetFile
- Ziel-Datei, an der die PDF-Datei angehängt wirdappendStart
- Am Dokumentanfang anhängen- Throws:
java.lang.Exception
-
getNumberOfPages
public static int getNumberOfPages(java.io.File pdfFile) throws java.lang.ExceptionLiefert die Seitenanzahl der angegebenen PDF-Datei zurück.- Parameters:
pdfFile
- PDF-Datei- Returns:
- Seitenanzahl
- Throws:
java.lang.Exception
-
removePage
public static void removePage(java.io.File pdfFile, int page) throws java.lang.ExceptionLöscht die Seite in der angegebenen Datei.- Parameters:
pdfFile
- PDF-Dateipage
- Seite- Throws:
java.lang.Exception
-
getResolution
public static java.awt.Dimension getResolution(java.io.File pdfFile) throws java.lang.ExceptionLiefert die Auflösung der angegebenen PDF-Datei zurück.- Parameters:
pdfFile
- PDF-Datei- Returns:
- Auflösung der Datei
- Throws:
java.lang.Exception
-
getDefaultResolution
public static java.awt.Dimension getDefaultResolution()Liefert die Default-Auflösung (300 dpi) für PDF-Dateien zurück.- Returns:
- Default-Auflösung
-
addFileAttachment
public static void addFileAttachment(java.io.File pdfFile, java.io.File attachFile, java.lang.String attachName) throws java.lang.ExceptionFügt die Datei als Anhang in der PDF-Datei ein.- Parameters:
pdfFile
- PDF-DateiattachFile
- AnhangdateiattachName
- Name des Dateianhangs- Throws:
java.lang.Exception
-
exportFileAttachments
public static java.util.ArrayList<java.io.File> exportFileAttachments(java.io.File pdfFile, java.io.File targetDir) throws java.lang.ExceptionExtrahiert die Dateianhänge der angegebenen PDF-Datei im angegebenen Verzeichnis und liefert die Liste mit den Anhängen zurück.- Parameters:
pdfFile
- PDF-DateitargetDir
- Zielverzeichnis- Returns:
- Liste mit den Dateianhängen
- Throws:
java.lang.Exception
-
getPage
public static java.awt.image.BufferedImage getPage(java.io.File pdfFile, int page) throws java.lang.ExceptionLiefert die angegebene Dokumentenseite der PDF-Datei zurück.- Parameters:
pdfFile
- PDF-Dateipage
- Nummer der Dokumentenseite- Returns:
- Dokumentenseite als BufferedImage
- Throws:
java.lang.Exception
-
setCropBox
public static void setCropBox(java.io.File pdfFile, float lowerLeftX, float lowerLeftY, float upperRightX, float upperRightY) throws java.lang.ExceptionSetzt den angegebenen abzuschneidenden Rechteck für alle Dokumentseiten.- Parameters:
pdfFile
- PDF-DateilowerLeftX
- Untere linke horizontale PositionlowerLeftY
- Untere linke vertikale PositionupperRightX
- Obere rechte horizontale PositionupperRightY
- Obere rechte vertikale Position- Throws:
java.lang.Exception
-
saveFilePage
public static void saveFilePage(java.io.File sourcePdfFile, int pageNr, java.io.File targetFile) throws java.lang.ExceptionSpeichert die Seite der PDF-Datei in der angegebenen Zieldatei.- Parameters:
sourcePdfFile
- PDF-Datei, deren Seite gespeichert wirdpageNr
- Nummer der DokumentenseitetargetFile
- Zieldatei- Throws:
java.lang.Exception
-
getMetadata
public static java.util.HashMap<java.lang.String,java.lang.String> getMetadata(java.io.File pdfFile) throws java.lang.ExceptionLiefert eine HashMap mit den Metadaten der angegebenen PDF-Datei zurück.- Parameters:
pdfFile
- PDF-Datei- Returns:
- HashMap mit den Metadaten
- Throws:
java.lang.Exception
-