Wordファイル(Doc、Docx)とPDFファイルは、広く使用されている文書フォーマットです。Word文書フォーマットは、コンテンツの編集時に明らかな利点があり、さまざまな編集ニーズに対応することができます。ただし、文書の完全性とフォーマットの一貫性を保証し、文書をクロスプラットフォームで互換性のある形式にするためには、PDF形式の方が適しています。PDF文書は、さまざまなプラットフォームやデバイスで開くことができ、文書のフォーマットと外観を一貫して維持することができます。また、セキュリティ面でも優れています。そのため、Word文書をPDFファイルに変換することは一般的な要求となっています。この記事では、Spire.Doc for Pythonを使用してWord文書をPDFファイルに変換する方法、およびバッチ変換やさまざまな変換パラメータの設定について説明します。
Spire.Doc for Pythonの導入
このチュートリアルでは、Spire.Doc for Pythonを使用する必要があります。以下のpipコマンドを使用して、それらを簡単にVSコードにインストールすることができます。
pip install Spire.Doc
1つのWord文書をPDFファイルに変換する
Spire.Doc for PythonのDocument.SaveToFile() メソッドを使用すると、WordをPDF、XPS、HTML、RTFなどの形式で保存できます。 以下は、Wordドキュメントを直接PDFファイルの手順として保存したものです:
- Document クラスのオブジェクトを作成します。
- Document.LoadFromFile() メソッドを使用してサンプル Word 文書を読み込みます。
- Doucment.SaveToFile() メソッドを使用して、ドキュメントを PDF ファイルとして保存します。
Python
from spire.doc import *
from spire.doc.common import *
# Documentクラスのオブジェクトを作成する
document = Document()
# Word文書を読み込む
document.LoadFromFile("G:/文書/例1.docx")
# 文書をPDFファイルとして保存する
document.SaveToFile("出力/PDF1.pdf", FileFormat.PDF)
document.Close()
Word文書をPDFファイルに一括変換
以下は、Word文書を一括でPDFファイルに変換する手順です。DocおよびDocx形式のWord文書に対応しています:
- Document クラスのオブジェクトを作成します。
- 指定されたフォルダ内のすべてのファイルを繰り返し処理し、接尾辞が .doc と .docx のファイルを特定します。
- Document.LoadFromFile() メソッドを使用して、ドキュメントを 1 つずつ読み込みます。
- Document.SaveToFile() メソッドを使用して、ドキュメントを PDF 形式に変換し、指定されたパスに保存します。
Python
import os
from spire.doc import *
from spire.doc.common import *
# フォルダパスを取得する
folder_path = "G:/文書"
# Documentクラスのオブジェクトを作成する
document = Document()
# フォルダ内のすべてのファイルを繰り返し処理する
for file_name in os.listdir(folder_path):
if file_name.endswith(".doc") or file_name.endswith(".docx"):
# ファイルのフルパスを構築する
file_path = os.path.join(folder_path, file_name)
# Word文書を読み込む
document.LoadFromFile(file_path)
# 出力ファイルのパスを生成する
output_path = os.path.join("出力1", os.path.splitext(file_name)[0] + ".pdf")
# 文書をPDFファイルとして保存する
document.SaveToFile(output_path, FileFormat.PDF)
document.Close()
else:
print(f"Ignoring file: {file_name}")
変換中に変換パラメータを設定する(暗号化、ブックマークの組み込み、フォントの埋め込み、画質の設定)
また、Spire.Doc for Pythonは、ToPdfParameterList クラスのプロパティと Document.JPEGQuality プロパティによって、Word文書を変換する際の暗号化、ブックマークの追加、フォントの埋め込み、画質の設定などをサポートしています。 詳しい手順は以下の通りです:
- Document クラスのオブジェクトを作成します。
- Document.LoadFromFile() メソッドを使用して、サンプル Word 文書を読み込みます。
- ToPdfParameterList クラスのオブジェクトを作成します。
- ToPdfParameterList.PdfSecurity.Encrypt() メソッドを使用して、閲覧パスワードと権限パスワードを設定します。
- ToPdfParameterList.CreateWordBookmarksUsingHeadings プロパティ設定を使用して、すべてのレベルの見出しからPDFブックマークを生成することもできます。また、ToPdfParameterList.CreateWordBookmarks プロパティの設定を使用して、Word文書のブックマークをPDFブックマークに直接変換することもできます。
- フォント埋め込みを設定するには、ToPdfParameterList.IsEmbeddedAllFonts プロパティを使用します。
- 画質を設定するには、Document.JPEGQuality プロパティを使用します。
- Doucment.SaveToFile() メソッドを使用してパラメータを適用し、ドキュメントをPDFファイルとして保存します。
Python
from spire.doc import *
from spire.doc.common import *
# Documentクラスのオブジェクトを作成する
document = Document()
# Word文書をロードする
document.LoadFromFile("G:/文書/例1.docx")
# ToPdfParameterListクラスのオブジェクトを作成する
parameter = ToPdfParameterList()
# 閲覧パスワードと権限パスワードを設定する
openpsd = "password"
permissionpsd = "permission"
parameter.PdfSecurity.Encrypt(openpsd, permissionpsd, PdfPermissionsFlags.Default, PdfEncryptionKeySize.Key128Bit)
# 見出しを使用してブックマークを作成する
parameter.CreateWordBookmarksUsingHeadings = True
# ブックマークを含める
# parameter.CreateWordBookmarks = True
# フォントを埋め込む
parameter.IsEmbeddedAllFonts = True
# 画像の品質を設定する
document.JPEGQuality = 40
# 文書をPDFファイルとして保存する
document.SaveToFile("出力/PDF2.pdf", parameter)
document.Close()
Spire.Doc for Pythonの使用は、PDF文書に変換されますWord文書の操作方法は上記のとおりです。 操作方法についてご不明な点や詳細をお知りになりたい場合は、Spire.Docのフォーラムで議論することができます。