1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

PythonでPDFのプロパティを管理し、より良いPDF文書を作成

Posted at

PDF文書プロパティとは、 文書に埋め込まれている文書関連情報として、 作成者・作成日・タイトルなどが挙げられます。PDF文書プロパティには、デフォルトプロパティとカスタムプロパティがあります。デフォルトプロパティには、設定可能な部分と自動的に生成される部分があります。ユーザは、PDFリーダで文書のプロパティを表示することにより、文書に関する重要な情報に素早くアクセスすることができます。この文書情報の設定方法と取得方法を理解することは、 ユーザーフリーな文書を作成したり、多くの文書を扱うために非常に有用です。この記事では、Pythonプログラムを通してPDFのプロパティを設定・取得する方法を紹介します。

この記事で使用する方法は、Spire.PDF for Pythonを必要とします。これは公式ウェブサイトからダウンロードするか、pip経由で直接インストールすることができます:

pip install Spire.PDF

PDF文書のプロパティの設定

Spire.PDF for Pythonは、PDFドキュメントのプロパティを処理するために PdfDocumentInformation クラスを提供しています。このクラスには、作成者、テーマ、キーワードなどのドキュメントのデフォルトプロパティを設定するための複数のプロパティが存在します。さらに、PdfDocumentInformation.SetCustomProperty() メソッドを使用して、PDF ドキュメントのカスタムプロパティを設定することもできます。以下に、PDF プロパティを設定する詳細な手順を示します:

  • PdfDocument クラスのオブジェクトを作成し、PdfDocument.LoadFromFile() メソッドを使用してPDFドキュメントを読み込みます。
  • PdfDocument.DocumentInformation プロパティを使用して、PDFドキュメントのプロパティを取得します。
  • PdfDocumentInformation クラスのプロパティを使用して、ドキュメントのデフォルトプロパティを設定します。
  • PdfDocumentInformation.SetCustomProperty() メソッドを使用して、ドキュメントのカスタムプロパティを設定します。
  • PdfDocument.SaveToFile() メソッドを使用して、ドキュメントを保存します。

コード例
Python

from spire.pdf import *
from spire.pdf.common import *

# クラスPdfDocumentのオブジェクトを作成し、PDFドキュメントをロードします
pdf = PdfDocument()
pdf.LoadFromFile("サンプル.pdf")

# ドキュメントのプロパティを取得します
properties = pdf.DocumentInformation

# 組み込みのプロパティを設定します
properties.Author = "John"
properties.Creator = "Spire.PDF"
properties.Keywords = "クラウドサービス、デジタルビジネス"
properties.Subject = "クラウドサービスの導入とその利点"
properties.Title = "クラウドサービスの力:デジタル企業の強化"
properties.Producer = "Spire.PDF for Python"

# ユーザー定義のプロパティを設定します
properties.SetCustomProperty("会社", "E-iceblue")
properties.SetCustomProperty("タグ", "クラウド、デジタルビジネス、サーバー")

# ドキュメントを保存します
pdf.SaveToFile("output/PDFプロパティの設定.pdf")
pdf.Close()

結果文書

PDF文書のプロパティの設定

PDF文書のプロパティの取得

デフォルトのPDFプロパティの情報は、PdfDocumentInformation クラスのプロパティを使用して取得できますが、カスタムのPDFプロパティの情報は、PdfDocumentInformation.GetCustomProperty() メソッドを使用して取得する必要があります。PDF プロパティを取得する具体的な手順は以下の通りです:

  • PdfDocument クラスのオブジェクトを作成し、PdfDocument.LoadFromFile() メソッドを使用してPDFドキュメントを読み込みます。
  • PdfDocument.DocumentInformation プロパティを使用して、文書のプロパティを取得します。
  • PdfDocumentInformation クラスのプロパティを使用して、組み込みの属性の情報を取得します。例えば、作成者、タイトル、キーワードなどです。これらのプロパティには直接アクセスできます。
  • PdfDocumentInformation.GetCustomProperty() メソッドを使用して、カスタム属性の情報を取得します。このメソッドには属性名を指定する必要があります。カスタム属性の内容を取得するために、このメソッドを使用します。
  • 取得したプロパティの内容を出力します。

コード例
Python

from spire.pdf import *
from spire.pdf.common import *

# クラスPdfDocumentのオブジェクトを作成し、PDFドキュメントをロードします
pdf = PdfDocument()
pdf.LoadFromFile("output/PDFプロパティの設定.pdf")

# ドキュメントのプロパティを取得します
properties = pdf.DocumentInformation

# 文字列を作成します
information = ""

# 組み込みのプロパティを取得します
information += "作成者: " + properties.Author
information += "\nタイトル: " + properties.Title
information += "\nサブタイトル: " + properties.Subject
information += "\nキーワード: " + properties.Keywords
information += "\nアプリケーション: " + properties.Creator
information += "\nPDF 変換: " + properties.Producer

# ユーザー定義のプロパティを取得します
information += "\n会社: " + properties.GetCustomProperty("会社")
information += "\nタグ: " + properties.GetCustomProperty("タグ")

# ドキュメントのプロパティを出力します
print(information)
pdf.Close()

結果文書

2023-11-10_174543.png

上記は、Pythonを通してPDF文書のプロパティ情報を設定または取得する方法について説明しています。 その他の機能については、Spire.PDF for Pythonチュートリアルをご覧ください。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?