システム.Drawing オブジェクトから読み取る方法
System.Drawing.Bitmapは、ビットマップ画像を操作するために使用される.NET Frameworkのクラスです。 ビットマップ画像を作成、操作、および表示するためのメソッドとプロパティを提供します。
System.Drawing.Image は、.NET フレームワークにおけるすべての GDI+ イメージ オブジェクトのベースクラスです。 これは、System.Drawing.Bitmap を含むさまざまな画像タイプの親クラスです。
IronSoftware.Drawing.AnyBitmapは、BitmapクラスですIronDrawing, Iron Software によって最初に開発されたオープンソースライブラリ。 それは C# ソフトウェアエンジニアが Windows、macOS、および Linux プラットフォーム上の .NET プロジェクトで System.Drawing.Common
を置き換えるのに役立ちます。
IronOCRを始めましょう
今日から無料トライアルでIronOCRをあなたのプロジェクトで使い始めましょう。
システム.Drawing オブジェクトから読み取る方法
- System.Drawing オブジェクトを読み取るための C# ライブラリをダウンロード
- BitmapやImageのようなSystem.Drawingオブジェクトを取得する
- 取得したデータを使用して、OcrImageInputクラスを構築します
- LinuxとmacOS向けのIron Softwareから提供されるAnyBitmapを活用する
- クロップ領域を指定して読み取り領域を定義します
System.Drawing.Bitmap
の読み取り例
まず、OCRを実行するためにIronTesseractクラスをインスタンス化します。 さまざまな方法の一つを使用して、System.Drawing.Bitmapを作成します。 コード例では、ファイルパスを使用することにしました。
次に、'using'ステートメントを使用してOcrImageInputオブジェクトを作成し、System.Drawing.Bitmapオブジェクトから画像を渡します。 最後に、OCRを実行するためにRead
メソッドを使用します。
:path=/static-assets/ocr/content-code-examples/how-to/input-system-drawing-read-bitmap.cs
using IronOcr;
using System.Drawing;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Read image file to Bitmap
Bitmap bitmap = new Bitmap("Potter.tiff");
// Import System.Drawing.Bitmap
using var imageInput = new OcrImageInput(bitmap);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
Imports IronOcr
Imports System.Drawing
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Read image file to Bitmap
Private bitmap As New Bitmap("Potter.tiff")
' Import System.Drawing.Bitmap
Private imageInput = New OcrImageInput(bitmap)
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)
システムの System.Drawing.Image を読み込む例
System.Drawing.Imageからの読み取りは、画像を使用してOcrImageInputオブジェクトを作成し、標準的なOCRプロセスをRead
メソッドで実行するだけで簡単に行うことができます。
:path=/static-assets/ocr/content-code-examples/how-to/input-system-drawing-read-image.cs
using IronOcr;
using Image = System.Drawing.Image;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Open image file as Image
Image image = Image.FromFile("Potter.tiff");
// Import System.Drawing.Image
using var imageInput = new OcrImageInput(image);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
Imports IronOcr
Imports Image = System.Drawing.Image
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Open image file as Image
Private image As Image = Image.FromFile("Potter.tiff")
' Import System.Drawing.Image
Private imageInput = New OcrImageInput(image)
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)
IronSoftware.Drawing.AnyBitmap 例を読む
同様に、AnyBitmapオブジェクトを作成または取得した後、OcrImageInputクラスを構築できます。 コンストラクタは、データのインポートに必要なすべての手順を処理します。 以下のコード例はこれを示しています。
:path=/static-assets/ocr/content-code-examples/how-to/input-system-drawing-read-anybitmap.cs
using IronOcr;
using IronSoftware.Drawing;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Open image file as AnyBitmap
AnyBitmap anyBitmap = AnyBitmap.FromFile("Potter.tiff");
// Import IronSoftware.Drawing.AnyBitmap
using var imageInput = new OcrImageInput(anyBitmap);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
Imports IronOcr
Imports IronSoftware.Drawing
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Open image file as AnyBitmap
Private anyBitmap As AnyBitmap = AnyBitmap.FromFile("Potter.tiff")
' Import IronSoftware.Drawing.AnyBitmap
Private imageInput = New OcrImageInput(anyBitmap)
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)
スキャン領域の指定
OCRImageInput クラスの構築では、スキャンする領域を指定できます。 これにより、OCRのための画像ドキュメントの特定の領域を定義することができます。 画像ドキュメントによっては、スキャン領域を指定することでパフォーマンスが大幅に向上する場合があります。 提供されたコード例では、章の番号とタイトルのみを抽出するように指定しています。
:path=/static-assets/ocr/content-code-examples/how-to/input-images-read-specific-region.cs
using IronOcr;
using IronSoftware.Drawing;
using System;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Specify crop region
Rectangle scanRegion = new Rectangle(800, 200, 900, 400);
// Add image
using var imageInput = new OcrImageInput("Potter.tiff", ContentArea: scanRegion);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
// Output the result to console
Console.WriteLine(ocrResult.Text);
Imports IronOcr
Imports IronSoftware.Drawing
Imports System
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Specify crop region
Private scanRegion As New Rectangle(800, 200, 900, 400)
' Add image
Private imageInput = New OcrImageInput("Potter.tiff", ContentArea:= scanRegion)
' Perform OCR
Private ocrResult As OcrResult = ocrTesseract.Read(imageInput)
' Output the result to console
Console.WriteLine(ocrResult.Text)