Domaines d'activité et régions de culture avec PDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

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)

  1. Utiliser OcrInput.LoadPdf() avec votre modèle PDF

  2. Utiliser OcrInput.GetPages() pour obtenir la largeur et la hauteur de l'entrée

  3. Utiliser OcrInput.GetPages().premier().ToBitmap() pour obtenir l'image exacte, le moteur OCR lira

  4. Vous pouvez désormais mesurer les zones de contenu en pixels à partir de l'image exportée

  5. 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
VB   C#

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
VB   C#

Référence API : OcrInput OcrInput.Page