Class ELOAsPdfUtils


  • public class ELOAsPdfUtils
    extends java.lang.Object

    Überschrift: ELOAsPdfUtils.

    Beschreibung: Hilfsmethoden für das Klammern und Entklammern von PDF-Dateien.

    Copyright: Copyright (c) ELO Digital Office GmbH 2018

    • Constructor Summary

      Constructors 
      Constructor Description
      ELOAsPdfUtils()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      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 Zieldatei an.
      static java.util.ArrayList<java.io.File> exportFileAttachments​(java.io.File pdfFile, java.io.File targetDir)
      Extrahiert die Dateianhänge der angegebenen Datei im angegebenen Verzeichnis und liefert eine Liste mit den Dateianhängen 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 Inhalt 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 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 rotatePdfFile​(java.io.File pdfFile, int angle)
      Dreht die PDF-Datei um den angegebenen Winkel.
      static void rotatePdfFile​(java.io.File pdfFile, java.io.File targetFile, int angle)
      Dreht die PDF-Datei um den angegebenen Winkel.
      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.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ELOAsPdfUtils

        public ELOAsPdfUtils()
    • Method Detail

      • mergePdfFiles

        public static void mergePdfFiles​(java.io.File[] sourcePdfFiles,
                                         java.io.File outputFile)
                                  throws java.lang.Exception
        Klammert die angegebenen PDF-Dateien in der angegebenen Ausgabedatei.
        Parameters:
        sourcePdfFiles - Liste mit PDF-Dateien
        outputFile - Ausgabedatei
        Throws:
        java.lang.Exception
      • splitPdfFile

        public static java.io.File[] splitPdfFile​(java.io.File pdfFile)
                                           throws java.io.IOException,
                                                  java.lang.Exception
        Entklammert 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
      • isAllPdfs

        public static boolean isAllPdfs​(java.util.List<java.io.File> files)
                                 throws java.lang.Exception
        Liefert 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
      • getNumberOfPages

        public static int getNumberOfPages​(java.io.File pdfFile)
                                    throws java.lang.Exception
        Liefert 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.Exception
        Löscht die Seite in der angegebenen Datei.
        Parameters:
        pdfFile - PDF-Datei
        page - Seite
        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.lang.Exception
        Fügt das angegebene Bild in der angegebenen Datei ein.
        Parameters:
        sourceFile - Datei, die eingebettet wird
        targetFile - Zieldatei
        page - Dokumentenseite, in der die angegebene Datei eingebettet wird
        x - Relative x-Position (Eingabe zwischen 0 und 1000)
        y - Relative y-Position (Eingabe zwischen 0 und 1000)
        Throws:
        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.Exception
        Fügt das angegebene Bild in der angegebenen PDF-Datei ein.
        Parameters:
        sourceFile - Datei, die eingebettet wird
        targetFile - Zieldatei
        page - Dokumentenseite, in der die angegebene Datei eingebettet wird
        x - Relative x-Position (Eingabe zwischen 0 und 1000)
        y - Relative y-Position (Eingabe zwischen 0 und 1000)
        width - Breite des Bildes
        height - 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.Exception
        Fügt den Text in der angegebenen PDF-Datei ein.
        Parameters:
        text - Einzufügender Text
        targetFile - PDF-Datei, in der der Text eingefügt wird
        page - Dokumentenseite, in der der Text eingefügt wird
        x - Relative x-Position (Eingabe zwischen 0 und 1000)
        y - Relative y-Position (Eingabe zwischen 0 und 1000)
        textSize - Textgröße
        colorRed - 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.Exception
        Fügt den Text in der angegebenen PDF-Datei ein.
        Parameters:
        text - Einzufügender Text
        targetFile - PDF-Datei, in der der Text eingefügt wird
        page - Dokumentenseite, in der der Text eingefügt wird
        x - Relative x-Position (Eingabe zwischen 0 und 1000)
        y - Relative y-Position (Eingabe zwischen 0 und 1000)
        textSize - Textgröße
        textFontFile - Datei mit der Schriftart
        colorRed - 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.Exception
        Liefert den Inhalt der angegebenen PDF-Datei als String zurück.
        Parameters:
        file - PDF-Datei
        Returns:
        Dateiinhalt oder null
        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.Exception
        Liefert den Text aus der angegebenen PDF-Seite zurück.
        Parameters:
        file - PDF-Datei
        page - 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.Exception
        Hängt die PDF-Datei an der angegebenen Zieldatei an.
        Parameters:
        sourceFile - PDF-Datei, die angehängt wird
        targetFile - Datei, an der die PDF-Datei angehängt wird
        appendStart - Am Dokumentanfang anhängen
        Throws:
        java.lang.Exception
      • rotatePdfFile

        public static void rotatePdfFile​(java.io.File pdfFile,
                                         int angle)
                                  throws java.lang.Exception
        Dreht die PDF-Datei um den angegebenen Winkel.
        Parameters:
        pdfFile - PDF-Datei
        angle - Rotationswinkel
        Throws:
        java.lang.Exception
      • rotatePdfFile

        public static void rotatePdfFile​(java.io.File pdfFile,
                                         java.io.File targetFile,
                                         int angle)
                                  throws java.lang.Exception
        Dreht die PDF-Datei um den angegebenen Winkel. Das Ergebnis wird in der Zieldatei geschrieben.
        Parameters:
        pdfFile - PDF-Datei
        targetFile - Zieldatei
        angle - Rotationswinkel
        Throws:
        java.lang.Exception
      • getResolution

        public static java.awt.Dimension getResolution​(java.io.File pdfFile)
                                                throws java.lang.Exception
        Liefert die Auflösung der angegebenen PDF-Datei zurück.
        Parameters:
        pdfFile - PDF-Datei
        Returns:
        Auflösung der Datei
        Throws:
        java.lang.Exception
      • addFileAttachment

        public static void addFileAttachment​(java.io.File pdfFile,
                                             java.io.File attachFile,
                                             java.lang.String attachName)
                                      throws java.lang.Exception
        Fügt die Datei als Anhang in der PDF-Datei ein.
        Parameters:
        pdfFile - PDF-Datei
        attachFile - Anhangdatei
        attachName - 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.Exception
        Extrahiert die Dateianhänge der angegebenen Datei im angegebenen Verzeichnis und liefert eine Liste mit den Dateianhängen zurück.
        Parameters:
        pdfFile - PDF-Datei
        targetDir - Zielverzeichnis
        Returns:
        Liste mit den exportierten Dateianhängen
        Throws:
        java.lang.Exception
      • getPage

        public static java.awt.image.BufferedImage getPage​(java.io.File pdfFile,
                                                           int page)
                                                    throws java.lang.Exception
        Liefert die angegebene Dokumentenseite der PDF-Datei zurück.
        Parameters:
        pdfFile - PDF-Datei
        page - 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.Exception
        Setzt den angegebenen abzuschneidenden Rechteck für alle Dokumentseiten.
        Parameters:
        pdfFile - PDF-Datei
        lowerLeftX - Untere linke horizontale Position
        lowerLeftY - Untere linke vertikale Position
        upperRightX - Obere rechte horizontale Position
        upperRightY - 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.Exception
        Speichert die Seite der PDF-Datei in der angegebenen Zieldatei.
        Parameters:
        sourcePdfFile - PDF-Datei, deren Seite gespeichert wird
        pageNr - Nummer der Dokumentenseite
        targetFile - 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.Exception
        Liefert eine HashMap mit den Metadaten der angegebenen PDF-Datei zurück.
        Parameters:
        pdfFile - PDF-Datei
        Returns:
        HashMap mit den Metadaten
        Throws:
        java.lang.Exception