Recadrer des régions et des rectangles avec IronOCR
comment définir des zones de contenu sur les PDF avec IronOCR ?
Domaines de contenu et PDF
les méthodes OcrInput.LoadPdf
et LoadPdfPage
ont toutes l'option d'ajouter une ContentArea.
La question - Comment puis-je savoir quelle est la taille de ma zone de contenu ? Les PDF ne sont pas dimensionnés en pixels, alors que les zones de contenu sont généralement mesurées en pixels
Option 1
OcrInput.TargetDPI La valeur par défaut est 225 - dicte la taille de l'image PDF en pixels. IronOCR lira ceci.
Option 2(cas d'utilisation idéal)
Utiliser OcrInput.LoadPdf() avec votre modèle PDF
Utiliser OcrInput.GetPages() pour obtenir la largeur et la hauteur de l'entrée
Utiliser OcrInput.GetPages().premier().ToBitmap() pour obtenir l'image exacte, le moteur OCR lira
Vous pouvez désormais mesurer les zones de contenu en pixels à partir de l'image exportée
Les coordonnées ciblées peuvent être utilisées pour une région spécifique de l'OCR(voir dans Résultat final)
Pour obtenir vos informations :
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
Résultat final :
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
Référence API :OcrInput OcrInput.Page