この記事では、** JavaでプログラムによってPDFドキュメントを解析し、PDFフォームから値を抽出する方法**について説明します。多くの状況で、多数の聴衆からのPDF形式のいくつかの記入済み調査フォームまたはフィードバックがあります。埋められたデータ値を簡単に抽出して分析に使用できます。次に、これらのPDFフォームを読み、Javaアプリケーション内で入力されたデータフィールド値を抽出します。
この記事では、ドキュメント解析.NET APIを使用して、C#アプリケーションでPDF、Excel、PowerPoint、およびWordドキュメントからプログラムで画像を抽出する方法を学習します。 [GroupDocs.Parser for .NET][1]は、ドキュメントの解析とデータ抽出の.NETAPIです。 ドキュメントの解析と画像、テキストの抽出、ワードプロセッシングドキュメント、スプレッドシート、プレゼンテーション、アーカイブからのメタデータをサポートします。 メールドキュメント。
今日は、** Javaを使用してPDF、Excel、PowerPoint、およびWordドキュメントからプログラムで画像を抽出する方法を学習します。画像の抽出には、[GroupDocs.Parser forJava][1]を使用します。このJavaAPIは、ドキュメントの解析と、ワードプロセッシングドキュメント、スプレッドシート、プレゼンテーション、アーカイブ、および電子メールドキュメントからの画像、テキスト、およびメタデータの抽出をサポートします。抽出された画像は、 BMP 、 GIF 、 JPEG 、 PNG 、およびWebP**形式で保存できます。
データベース は、ほとんどのアプリケーションの不可欠な部分であると見なされています。デスクトップ、Web、またはモバイルアプリケーションのいずれであっても、データベースはデータの保存、アクセス、および操作において重要な役割を果たします。あなたのためにデータベースを作成して管理することを可能にする多くのデータベース管理システムがあります。
ただし、データベース管理システムをインストールしたり、SQLクエリを記述したりせずに、データベースファイル(**。db **ファイル) からデータを抽出する方法が必要な場合があります。このような場合、データベースファイルをどのように解析し、そこからデータを取得しますか?
この記事では、SQLクエリを記述せずにSQLiteデータベースのテーブルからデータを簡単に抽出できることを示します。 ADO.NET。
SQLiteデータベース(.db) のテーブルからデータを抽出する手順 1. VisualStudioで新しいプロジェクトを作成します。
2. NuGet から GroupDocs.Parser for.NET をインストールします。
3. 次の名前空間を追加します。
using System; using System.Collections.Generic; using System.IO; using GroupDocs.Parser.Data; using GroupDocs.Parser.Options; 4. 接続文字列を準備します。
string connectionString = string.Format("Provider=System.Data.Sqlite;Data Source={0};Version=3;", "sqlite.db"); 5. パーサー オブジェクトにデータベースファイルをロードします。
using (Parser parser = new Parser(connectionString, new LoadOptions(FileFormat.Database))) { // あなたのコードはここに行きます } 6. Parser.GetToc メソッドを使用して、データベース内のテーブルのリストを取得します。
// テーブルのリストを取得する IEnumerable toc = parser.GetToc(); 7. テーブルを繰り返し処理し、データを抽出します。
// テーブルを反復処理します foreach (TocItem i in toc) { // テーブル名を印刷する Console.
請求書および領収書は、サービスまたは商品の売買が関係する場合に、特定の形式で取引を記録するために使用される文書です。物事はデジタル化され、オンラインショッピングの人気により、デジタル請求書が広く使用されています。多数のデジタル請求書を処理し、情報を手動で抽出することは、複雑で時間のかかるプロセスです。したがって、このような場合には、より高速で効率的な方法が必要です。したがって、この記事では、** GroupDocsを使用して、PDF請求書またはC#でプログラムでデータを抽出する方法を紹介します。 .NETのパーサー API。
PDF請求書からデータを抽出するためのワークフロー 以下は、GroupDocs.Parserfor.NETを使用してPDF請求書からデータを抽出する方法のワークフローです。
テーブルからデータを抽出するためのテーブルパラメータを作成します。 フィールドからデータを抽出するためのテンプレートアイテムを作成します。 指定されたテンプレートに従って請求書を解析します。 データを抽出します。 請求書 以下は、データの抽出に使用するサンプルPDF請求書のスクリーンショットです。この請求書は、GitHubリポジトリ からダウンロードできます。
コード 指定された請求書のテンプレートを作成します(続きを読む テンプレートについて) 。 // 「詳細」テーブルの検出器パラメータを作成します TemplateTableParameters detailsTableParameters = new TemplateTableParameters(new Rectangle(new Point(35, 320), new Size(530, 55)), null); // 「概要」テーブルの検出器パラメータを作成します TemplateTableParameters summaryTableParameters = new TemplateTableParameters(new Rectangle(new Point(330, 385), new Size(220, 65)), null); // テンプレートアイテムのコレクションを作成する TemplateItem[] templateItems = new TemplateItem[] { new TemplateField(new TemplateFixedPosition(new Rectangle(new Point(35, 135), new Size(100, 10))), "FromCompany"), new TemplateField(new TemplateFixedPosition(new Rectangle(new Point(35, 150), new Size(100, 35))), "FromAddress"), new TemplateField(new TemplateFixedPosition(new Rectangle(new Point(35, 190), new Size(150, 2))), "FromEmail"), new TemplateField(new TemplateFixedPosition(new Rectangle(new Point(35, 250), new Size(100, 2))), "ToCompany"), new TemplateField(new TemplateFixedPosition(new Rectangle(new Point(35, 260), new Size(100, 15))), "ToAddress"), new TemplateField(new TemplateFixedPosition(new Rectangle(new Point(35, 290), new Size(150, 2))), "ToEmail"), new TemplateField(new TemplateRegexPosition("Invoice Number"), "InvoiceNumber"), new TemplateField(new TemplateLinkedPosition( "InvoiceNumber", new Size(200, 15), new TemplateLinkedPositionEdges(false, false, true, false)), "InvoiceNumberValue"), new TemplateField(new TemplateRegexPosition("Order Number"), "InvoiceOrder"), new TemplateField(new TemplateLinkedPosition( "InvoiceOrder", new Size(200, 15), new TemplateLinkedPositionEdges(false, false, true, false)), "InvoiceOrderValue"), new TemplateField(new TemplateRegexPosition("Invoice Date"), "InvoiceDate"), new TemplateField(new TemplateLinkedPosition( "InvoiceDate", new Size(200, 15), new TemplateLinkedPositionEdges(false, false, true, false)), "InvoiceDateValue"), new TemplateField(new TemplateRegexPosition("Due Date"), "DueDate"), new TemplateField(new TemplateLinkedPosition( "DueDate", new Size(200, 15), new TemplateLinkedPositionEdges(false, false, true, false)), "DueDateValue"), new TemplateField(new TemplateRegexPosition("Total Due"), "TotalDue"), new TemplateField(new TemplateLinkedPosition( "TotalDue", new Size(200, 15), new TemplateLinkedPositionEdges(false, false, true, false)), "TotalDueValue"), new TemplateTable(detailsTableParameters, "details", null), new TemplateTable(summaryTableParameters, "summary", null) }; // ドキュメントテンプレートを作成する Template template = new Template(templateItems); 請求書を解析し、データを抽出します。 // パーサークラスのインスタンスを作成します using (Parser parser = new Parser("invoice.