Zuschneiden von Regionen und Rechtecken mit IronOCR
wie kann ich mit IronOCR Inhaltsbereiche in PDFs festlegen?
ContentAreas und PDFs
OcrInput.LoadPdf
- und LoadPdfPage
-Methoden bieten alle die Möglichkeit, einen ContentArea hinzuzufügen.
Die Frage - Woher weiß ich, wie groß mein Inhaltsbereich ist, da PDFs nicht in Pixeln gemessen werden, Inhaltsbereiche aber im Allgemeinen in Pixeln gemessen werden?
Option 1
OcrInput.TargetDPI Standardwert ist 225 - gibt die Größe des PDF-Bildes in Pixeln an. IronOCR wird dies lesen.
Option 2 (idealer Anwendungsfall)
Verwenden Sie OcrInput.LoadPdf() mit Ihrer PDF-Vorlage
Verwenden Sie OcrInput.GetPages(), um die Breite und Höhe der Eingabe zu erhalten
Verwenden Sie OcrInput.GetPages().First().ToBitmap(), um das genaue Bild zu erhalten, das die OCR-Engine lesen wird.
Sie können nun ContentAreas in Pixeln des exportierten Bildes messen
Die gezielten Koordinaten können für einen bestimmten OCR-Bereich verwendet werden (siehe im Endergebnis).
Um Ihre Informationen zu erhalten:
using IronOcr;
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
input.LoadPdf("example.pdf");
input.GetPages().First().ToBitmap().SaveAs("measure-me.bmp");
var width = input.GetPages().First().Width;
var height = input.GetPages().First().Height;
}
using IronOcr;
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
input.LoadPdf("example.pdf");
input.GetPages().First().ToBitmap().SaveAs("measure-me.bmp");
var width = input.GetPages().First().Width;
var height = input.GetPages().First().Height;
}
Imports IronOcr
Private ocr = New IronTesseract()
Using input = New OcrInput()
input.LoadPdf("example.pdf")
input.GetPages().First().ToBitmap().SaveAs("measure-me.bmp")
Dim width = input.GetPages().First().Width
Dim height = input.GetPages().First().Height
End Using
Endgültiges Ergebnis:
using IronOcr;
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
var contentArea = new IronSoftware.Drawing.Rectangle()
{ X = 215, Y = 1250, Height = 280, Width = 1335 }; //<-- the area you want in px
input.LoadPdf("example.pdf", ContentArea: contentArea);
var result = ocr.Read(input);
}
using IronOcr;
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
var contentArea = new IronSoftware.Drawing.Rectangle()
{ X = 215, Y = 1250, Height = 280, Width = 1335 }; //<-- the area you want in px
input.LoadPdf("example.pdf", ContentArea: contentArea);
var result = ocr.Read(input);
}
Imports IronOcr
Private ocr = New IronTesseract()
Using input = New OcrInput()
Dim contentArea = New IronSoftware.Drawing.Rectangle() With {
.X = 215,
.Y = 1250,
.Height = 280,
.Width = 1335
}
input.LoadPdf("example.pdf", ContentArea:= contentArea)
Dim result = ocr.Read(input)
End Using
API-Referenz: OcrInput OcrInput.Page