C#を使用してPDFからフォントを抽出する

この記事では、C#を使用してPDFからフォントを抽出する方法を説明し、さらなる分析、編集、デバッグを行います。IDEの設定、アプリケーション開発の手順のリスト、およびC#を使用してPDF Acrobatからフォントを抽出するための動作コードを提供します。抽出したフォントのすべてのプロパティにアクセスして表示し、必要に応じてディスクに保存できます。

C#を使用してPDFからフォントファイルを抽出する手順

  1. フォントを抽出するためにAspose.PDFを使用するようにIDEを設定する
  2. PDFファイル名を設定してDocumentクラスオブジェクトでソースPDFファイルを読み込む
  3. FontUtilitiesクラスを使用して読み込まれたPDF内のすべてのフォントを取得する
  4. フォントのコレクションを反復処理する
  5. メモリストリームを作成し、必要に応じて抽出したフォントをディスクに保存する
  6. コンソールにフォントのさまざまなプロパティを表示する

これらの手順は、C#を使用してPDFファイルからフォントを抽出する方法を説明しています。PDFファイルをDocumentクラスオブジェクトに読み込み、FontUtilitiesクラスを使用してすべてのフォントのリストを取得します。リスト内のすべてのフォントを反復処理し、そのプロパティを表示し、必要に応じてメモリストリームに保存してディスク上にフォントファイルを作成します。

C#を使用してPDFファイルからフォントを抽出するコード

// Create a new instance of the License class
var pdfLic = new License();
// Set the license using the provided license file ("license.lic").
pdfLic.SetLicense("license.lic");
// Open the PDF document
using (var document = new Aspose.Pdf.Document("Test.pdf"))
{
// Retrieve all fonts used in the PDF document
Aspose.Pdf.Text.Font[] fonts = document.FontUtilities.GetAllFonts();
// Iterate through each font in the fonts array.
foreach (Aspose.Pdf.Text.Font font in fonts)
{
// Create a MemoryStream to temporarily store the font data.
using (MemoryStream memoryStream = new MemoryStream())
{
// Save the font data into the MemoryStream.
font.Save(memoryStream);
// Write the font data from the MemoryStream to a .TTF file.
// The file is named after the font's name.
File.WriteAllBytes($"{font.FontName}.TTF", memoryStream.ToArray());
// Print the font name
Console.WriteLine(font.FontName);
}
}
}

このコードは、C#を使用してPDFからフォントを抽出するプロセスを示しています。埋め込みフォントを抽出したい場合は、各フォントに対してIsEmbeddedフラグを使用し、それに応じて処理します。Fontクラスは、システムにフォントがインストールされているかどうかを示すIsAccessibleフラグや、最後のフォント埋め込みエラーの取得など、さまざまなプロパティを公開しています。

この記事では、PDFファイル内のフォントにアクセスして表示する方法を学びました。URLをPDFに変換するには、C#を使用してURLをPDFに変換するの記事を参照してください。

 日本語