Beispiel 7.27. Einlesen von Dokumenten mit OCR Informationen
Dieses Codebeispiel zeigt das Einlesen von Dokument plus hOCR-Daten.
Reader reader = new Reader();
InputStream defaultLayerInputStream = …;
reader.read(defaultLayerInputStream);
reader.setTargetIndex(0);
reader.setFormat(new HocrFormat());
InputStream hocrInputStream = …;
reader.read(hocrInputStream);
reader.complete();
Document document = reader.getDocument();
|
Einlesen des Dokuments ohne Text-Informationen. |
|
Setzen des TargetIndex auf den Anfang des Dokuments ohne Text-Informationen. |
|
Explizites Setzen des Formats auf hOCR. |
|
Einlesen der OCR-Daten aus hOCR-File. |
Beispiel 7.28. Einlesen mit ResolutionDetector
Dieses Beispiel zeigt die Arbeit mit eigenen ResolutionDetector
Implementationen. Zunächst wird ein ResolutionDetector
definiert, der stets
dieselbe Auflösung zurückgibt. Sie wird initial über den Konstruktor gesetzt.
/**
* Always returns a pre-determined resolution.
*/
public class FixedResolutionDetector implements ResolutionDetector {
private final Resolution preDeterminedResolution;
public FixedResolutionDetector(Resolution preDeterminedResolution) {
this.preDeterminedResolution = preDeterminedResolution;
}
@Override
public Resolution detectResolution() {
return preDeterminedResolution;
}
}
Der somit definierte ResolutionDetector
wird daraufhin im Lesevorgang
verwendet. Da der FixedResolutionDetector
unabhängig von
anderen Seitensegmenten ist, müssten die Bilddaten für den Default Layer nicht
zwingend vor den hOCR Daten eingelesen werden.
Reader reader = new Reader(); InputStream defaultLayerInputStream = …; reader.read(defaultLayerInputStream); reader.getSettings(HocrReaderSettings.class).setResolutionDetector( new FixedResolutionDetector(new Resolution(200))); reader.setTargetIndex(0); reader.setFormat(new HocrFormat()); InputStream hocrInputStream = …; reader.read(hocrInputStream); reader.complete(); Document document = reader.getDocument();
|
Dokumentauflösung als 200 DPI definieren. |