Package de.elo.mover.main.tiff
Class TiffFileHelper
java.lang.Object
de.elo.mover.main.tiff.TiffFileHelper
public class TiffFileHelper
extends java.lang.Object
Überschrift: TiffFileHelper.
Beschreibung: Hilfsmethoden für TIFF-Dateien.
Copyright: Copyright (c) ELO Digital Office GmbH 2018 - 2020
-
Constructor Summary
Constructors Constructor Description TiffFileHelper()
-
Method Summary
Modifier and Type Method Description static void
appendPictureToTiff(java.io.File sourceFile, java.io.File targetFile, boolean appendStart)
Fügt das Bild am Anfang oder am Ende der angegebenen Datei ein.static java.lang.String
getExifTag(java.io.File sourceFile, java.lang.String tagName)
Liefert den Wert eines EXIF-Tags zurück.static java.util.Enumeration<java.lang.String>
getExifTagNames(java.io.File sourceFile)
Liefert eine Liste mit den EXIF-Tags zurück.static java.lang.String
getImageFormats()
Liefert einen String mit allen ImageReader-Formaten (getrennt durch ein Komma) zurück.static int
getNumBarcodeImages(IXconnect ixConnect, java.io.File file)
Liefert die Anzahl der Barcodeseiten in der angegebenen Datei zurück.static int
getNumBlankImages(java.io.File file)
Liefert die Anzahl der Leerseiten in der angegebenen Datei zurück.static int
getNumImages(java.io.File file)
Liefert die Anzahl der Images zurück.static int
getNumSeparatorImages(java.io.File file)
Liefert die Anzahl der Trennseiten in der angegebenen Datei zurück.static java.awt.image.BufferedImage
getPage(java.io.File imageFile, int page)
Liefert die angegebene Dokumentenseite der Bilddatei zurück.static boolean
hasTiffExtension(java.io.File file)
Meldet zurück, ob die angegebene Datei eine TIFF-Dateiendung hat.static void
insertPictureInTiff(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
insertTextInTiff(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 angegebenen Text in der angegebenen TIFF-Datei ein.static void
insertTextInTiff2(java.lang.String text, java.io.File targetFile, int page, int x, int y, int textSize, java.lang.String textFont, int colorRed, int colorGreen, int colorBlue, float transpar, int skew)
Fügt den angegebenen Text in der angegebenen TIFF-Datei ein.static boolean
isAllTiffs(java.util.List<java.io.File> files)
Liefert true zurück, wenn die angegebene Liste nur TIFF-Dateien enthält.static boolean
isLandscape(java.io.File tiffFile)
Meldet zurück, ob die angegebene TIFF-Datei einen Querformat hat.static boolean
isTiff(java.io.File file)
Sniffs an incoming byte array to see if the starting value is 0x4949 (little endian) or 0x4D4D (big endian) which is the "header" for TIFF data The TIFF standards supports both endians.static java.io.File
joinTiffFiles(java.io.File sourceFile, java.io.File targetFile)
Hängt das Bild an die angegebene Datei an.static void
removePage(java.io.File imageFile, int page)
Löscht die Seite in der angegebenen Datei.static void
saveFilePage(java.io.File sourceTiffFile, int pageNr, java.io.File targetFile)
Speichert die Seite der TIFF-Datei in der angegebenen Zieldatei.static void
saveTiffAsPdf(java.io.File sourceFile, java.io.File targetFile)
Speichert die TIFF-Datei in der angegebenen PDF-Datei.static java.io.File[]
writeImages(java.lang.Iterable<WriteableImage> images, java.util.Iterator<java.io.File> iterator)
Schreibt eine Liste von Images in gleichviele Dateien.static java.io.File[]
writeImagesByPage(IXconnect ixConnect, java.lang.Iterable<WriteableImage> images, java.util.Iterator<java.io.File> iterator, SplitHelper.SPLIT_CONDITION splitCondition)
Schreibt eine Liste von Images in Ausgabedateien.static void
writeImagesToFile(java.lang.Iterable<WriteableImage> images, java.io.File file)
Schreibt mehrere Bilder als Seiten in eine Datei.
-
Constructor Details
-
TiffFileHelper
public TiffFileHelper()
-
-
Method Details
-
getNumImages
public static int getNumImages(java.io.File file) throws java.io.IOException, java.lang.ExceptionLiefert die Anzahl der Images zurück.- Parameters:
file
- Quelldatei- Returns:
- Anzahl der Images
- Throws:
java.io.IOException
java.lang.Exception
-
isTiff
public static boolean isTiff(java.io.File file) throws java.io.IOException, java.lang.ExceptionSniffs an incoming byte array to see if the starting value is 0x4949 (little endian) or 0x4D4D (big endian) which is the "header" for TIFF data The TIFF standards supports both endians. See http://palimpsest.stanford.edu/bytopic/imaging/std/tiff5.html for more details. Note: This method only really needs the first 2 bytes.- Parameters:
file
- Datei- Returns:
- TIFF-Datei
- Throws:
java.io.IOException
java.lang.Exception
-
hasTiffExtension
public static boolean hasTiffExtension(java.io.File file) throws java.lang.ExceptionMeldet zurück, ob die angegebene Datei eine TIFF-Dateiendung hat.- Parameters:
file
- Datei- Returns:
- Datei hat die Dateiendung "tif" oder "tiff"
- Throws:
java.lang.Exception
-
isAllTiffs
public static boolean isAllTiffs(java.util.List<java.io.File> files) throws java.lang.ExceptionLiefert true zurück, wenn die angegebene Liste nur TIFF-Dateien enthält.- Parameters:
files
- Liste mit Dateien- Returns:
- Nur TIFF-Dateien enthalten
- Throws:
java.lang.Exception
-
getNumBlankImages
public static int getNumBlankImages(java.io.File file) throws java.lang.ExceptionLiefert die Anzahl der Leerseiten in der angegebenen Datei zurück.- Parameters:
file
- TIFF-Datei- Returns:
- Anzahl der Leerseiten
- Throws:
java.lang.Exception
-
getNumSeparatorImages
public static int getNumSeparatorImages(java.io.File file) throws java.lang.ExceptionLiefert die Anzahl der Trennseiten in der angegebenen Datei zurück.- Parameters:
file
- TIFF-Datei- Returns:
- Anzahl der Trennseiten
- Throws:
java.lang.Exception
-
getNumBarcodeImages
public static int getNumBarcodeImages(IXconnect ixConnect, java.io.File file) throws java.lang.ExceptionLiefert die Anzahl der Barcodeseiten in der angegebenen Datei zurück.- Parameters:
ixConnect
- Indexserver-Verbindungfile
- TIFF-Datei- Returns:
- Anzahl der Barcodeseiten
- Throws:
java.lang.Exception
-
writeImages
public static java.io.File[] writeImages(java.lang.Iterable<WriteableImage> images, java.util.Iterator<java.io.File> iterator) throws java.io.IOException, java.lang.ExceptionSchreibt eine Liste von Images in gleichviele Dateien.- Parameters:
images
- Liste mit Imagesiterator
- Iterator- Returns:
- Liste mit Dateien
- Throws:
java.io.IOException
java.lang.Exception
-
writeImagesByPage
public static java.io.File[] writeImagesByPage(IXconnect ixConnect, java.lang.Iterable<WriteableImage> images, java.util.Iterator<java.io.File> iterator, SplitHelper.SPLIT_CONDITION splitCondition) throws java.io.IOException, java.lang.ExceptionSchreibt eine Liste von Images in Ausgabedateien. Das letzte Parameter enthält die Bedingung für das Trennen der Datei.- Parameters:
ixConnect
- Indexserver-Verbindung oder null, wenn nicht benötigtimages
- Liste mit Imagesiterator
- Iterator für die AusgabedateiensplitCondition
- Bedingung für das Trennen der Datei- Returns:
- Liste mit getrennten Dateien
- Throws:
java.io.IOException
java.lang.Exception
-
writeImagesToFile
public static void writeImagesToFile(java.lang.Iterable<WriteableImage> images, java.io.File file) throws java.io.IOException, java.lang.ExceptionSchreibt mehrere Bilder als Seiten in eine Datei.- Parameters:
images
- Liste mit Imagesfile
- Datei- Throws:
java.io.IOException
java.lang.Exception
-
insertPictureInTiff
public static void insertPictureInTiff(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
-
appendPictureToTiff
public static void appendPictureToTiff(java.io.File sourceFile, java.io.File targetFile, boolean appendStart) throws java.io.IOException, java.lang.ExceptionFügt das Bild am Anfang oder am Ende der angegebenen Datei ein.- Parameters:
sourceFile
- Bild, das angehängt wirdtargetFile
- Zieldatei, an der das Bild angehängt wirdappendStart
- Am Dokumentanfang anfügen- Throws:
java.io.IOException
java.lang.Exception
-
joinTiffFiles
public static java.io.File joinTiffFiles(java.io.File sourceFile, java.io.File targetFile) throws java.io.IOException, java.lang.ExceptionHängt das Bild an die angegebene Datei an.- Parameters:
sourceFile
- Bild, das angehängt wirdtargetFile
- Zieldatei, an der das Bild angehängt wird- Returns:
- Ergebnisdatei
- Throws:
java.io.IOException
java.lang.Exception
-
insertTextInTiff
public static void insertTextInTiff(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 angegebenen Text in der angegebenen TIFF-Datei ein.- Parameters:
text
- Text, der eingefügt wirdtargetFile
- Datei, in der der Text eingefügt wirdpage
- Dokumentseite, 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öße (Eingabe zwischen 0 und 1)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
- Transparenzskew
- Drehwinkel- Throws:
java.lang.Exception
-
insertTextInTiff2
public static void insertTextInTiff2(java.lang.String text, java.io.File targetFile, int page, int x, int y, int textSize, java.lang.String textFont, int colorRed, int colorGreen, int colorBlue, float transpar, int skew) throws java.lang.ExceptionFügt den angegebenen Text in der angegebenen TIFF-Datei ein.- Parameters:
text
- Text, der eingefügt wirdtargetFile
- Datei, in der der Text eingefügt wirdpage
- Dokumentseite, 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öße (Eingabe zwischen 0 und 1)textFont
- Schriftart vom Text oder nullcolorRed
- 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
- Transparenzskew
- Drehwinkel- Throws:
java.lang.Exception
-
saveTiffAsPdf
public static void saveTiffAsPdf(java.io.File sourceFile, java.io.File targetFile) throws java.io.IOException, java.lang.ExceptionSpeichert die TIFF-Datei in der angegebenen PDF-Datei.- Parameters:
sourceFile
- TIFF-Datei, die nach PDF konvertiert wirdtargetFile
- PDF-Datei mit dem Konvertierungsergebnis- Throws:
java.io.IOException
java.lang.Exception
-
getPage
public static java.awt.image.BufferedImage getPage(java.io.File imageFile, int page) throws java.io.IOException, java.lang.ExceptionLiefert die angegebene Dokumentenseite der Bilddatei zurück.- Parameters:
imageFile
- Bilddateipage
- Nummer der Dokumentenseite- Returns:
- Dokumentenseite
- Throws:
java.io.IOException
java.lang.Exception
-
removePage
public static void removePage(java.io.File imageFile, int page) throws java.lang.ExceptionLöscht die Seite in der angegebenen Datei.- Parameters:
imageFile
- Bilddateipage
- Zu löschende Seite- Throws:
java.lang.Exception
-
getExifTag
public static java.lang.String getExifTag(java.io.File sourceFile, java.lang.String tagName) throws java.lang.ExceptionLiefert den Wert eines EXIF-Tags zurück.- Parameters:
sourceFile
- Zu analysierende TIFF/JPEG-DateitagName
- Name des EXIF-Tags- Returns:
- Wert des EXIF-Tags
- Throws:
java.lang.Exception
- Wenn das Dokument nicht gelesen werden kann
-
getExifTagNames
public static java.util.Enumeration<java.lang.String> getExifTagNames(java.io.File sourceFile) throws java.lang.ExceptionLiefert eine Liste mit den EXIF-Tags zurück.- Parameters:
sourceFile
- Zu analysierende TIFF/JPEG-Datei- Returns:
- Enumeration der EXIF-Tag Namen
- Throws:
java.lang.Exception
- Wenn das Dokument nicht gelesen werden kann
-
getImageFormats
public static java.lang.String getImageFormats()Liefert einen String mit allen ImageReader-Formaten (getrennt durch ein Komma) zurück.- Returns:
- String mit ImageReader-Formaten
-
saveFilePage
public static void saveFilePage(java.io.File sourceTiffFile, int pageNr, java.io.File targetFile) throws java.lang.ExceptionSpeichert die Seite der TIFF-Datei in der angegebenen Zieldatei.- Parameters:
sourceTiffFile
- TIFF-Datei, deren Seite gespeichert wirdpageNr
- Nummer der DokumentenseitetargetFile
- Zieldatei- Throws:
java.lang.Exception
-
isLandscape
public static boolean isLandscape(java.io.File tiffFile) throws java.lang.ExceptionMeldet zurück, ob die angegebene TIFF-Datei einen Querformat hat.- Parameters:
tiffFile
- TIFF-Datei- Returns:
- TIFF-Datei im Querformat
- Throws:
java.lang.Exception
-