PDF ファイル内のメタデータには、タイトル、作成者、作成日、変更日、キーワードなど、ドキュメントに関する重要な情報が含まれています。このメタデータの抽出は、ドキュメント管理システム、データ分析、自動化タスクなどのさまざまなアプリケーションにとって非常に有益です。この記事では、C# を使用して PDF からメタデータを読み取る方法について詳しく説明します。 C# を使用して PDF のメタデータを読み取る方法を理解するのに役立つサンプルコードを使用してプロセスを詳しく説明します。
C# を使用して PDF からメタデータを読み取る手順
- PDF ファイルからメタデータを抽出するために GroupDocs.Metadata for .NET を使用するように IDE を構成します
- PDF ファイルのファイルパスをコンストラクターのパラメーターとして使用して、Metadata オブジェクトを作成します
- 収集されたメタデータ情報を検証するための基準を確立する
- Metadata.FindProperties メソッドを使用するための条件を指定します
- 各プロパティを 1 つずつループします
C# を使用して PDF ファイルからメタデータを抽出すると、タイトル、作成者、作成日、変更日、キーワードなどのドキュメントのプロパティに関する貴重な洞察が開発者に提供されます。この情報は、文書管理システム、データ分析、自動化されたワークフローにとって非常に重要です。 .NET がインストールされている限り、Windows、macOS、または Linux で上記の手順に従うことができます。 C# で PDF のメタデータを抽出するために追加のソフトウェアをインストールする必要はありません。推奨ライブラリをセットアップし、それに応じてファイル パスを調整すると、問題や複雑さを伴うことなく、次のコードをプロジェクトに簡単に統合できます。
C# を使用して PDF からメタデータを読み取るコード
using GroupDocs.Metadata; | |
using GroupDocs.Metadata.Common; | |
using GroupDocs.Metadata.Tagging; | |
using System.Text.RegularExpressions; | |
namespace ReadMetadataFromPDFUsingCSharp | |
{ | |
internal class Program | |
{ | |
static void Main(string[] args) | |
{ | |
// Set License to avoid the limitations of Metadata library | |
License lic = new License(); | |
lic.SetLicense(@"GroupDocs.Metadata.lic"); | |
// Pass absolute or relative path of document to Metadata's constructor | |
using (Metadata metadata = new Metadata(@"input.pdf")) | |
{ | |
if (metadata.FileFormat != FileFormat.Unknown && !metadata.GetDocumentInfo().IsEncrypted) | |
{ | |
Console.WriteLine(); | |
// Fetch all metadata properties that fall into a particular category | |
var properties = metadata.FindProperties(p => p.Tags.Any(t => t.Category == Tags.Content)); | |
Console.WriteLine("The metadata properties describing some characteristics of the file content: title, keywords, language, etc."); | |
foreach (var property in properties) | |
{ | |
Console.WriteLine("{0} = {1}", property.Name, property.Value); | |
} | |
// Fetch all properties having a specific type and value | |
var year = DateTime.Today.Year; | |
properties = metadata.FindProperties(p => p.Value.Type == MetadataPropertyType.DateTime && | |
p.Value.ToStruct(DateTime.MinValue).Year == year); | |
Console.WriteLine("All datetime properties with the year value equal to the current year"); | |
foreach (var property in properties) | |
{ | |
Console.WriteLine("{0} = {1}", property.Name, property.Value); | |
} | |
// Fetch all properties whose names match the specified regex | |
const string pattern = "^author|company|(.+date.*)$"; | |
Regex regex = new Regex(pattern, RegexOptions.IgnoreCase); | |
properties = metadata.FindProperties(p => regex.IsMatch(p.Name)); | |
Console.WriteLine("All properties whose names match the following regex: {0}", pattern); | |
foreach (var property in properties) | |
{ | |
Console.WriteLine("{0} = {1}", property.Name, property.Value); | |
} | |
} | |
} | |
} | |
} | |
} |
結論として、この記事は、C# プログラミングで *PDF のメタデータを取得する方法に関する包括的なガイドを提供しました。メタデータ ライブラリを活用することで、開発者は PDF ドキュメントからドキュメントのタイトル、作成者、作成日、変更日、キーワードなどの重要な情報を効率的に抽出できます。 C# のメタデータ抽出技術を理解して活用することで、開発者はドキュメント管理、データ分析、自動化タスクのための堅牢なアプリケーションを構築できるようになります。さまざまな PDF ファイルを試してみることをお勧めします。追加のメタデータ プロパティを調べることで、C# アプリケーションでのメタデータ抽出の機能をさらに強化できます。
前回の説明では、C# を使用して PPTX ファイルからメタデータを抽出するための詳細なチュートリアルを提供しました。このトピックをより深く理解するには、C# を使用して PPTX からメタデータを読み取る の方法に関する広範なガイドを参照することをお勧めします。