Python で PDF にウォーターマークを追加する方法
Contents
[
Hide
]
PDF へのウォーターマークアーティファクトの追加 Document .NET 経由で Python 用 Aspose.PDF を使用する。ウォーターマークは、ブランディング、セキュリティ、または情報提供を目的としてページに適用される視覚的なオーバーレイです。この例は設定方法を示しています。 TextState 外観、位置決め HorizontalAlignment そして VerticalAlignment、ウォーターマークを適用する前の回転、透明度 Page.
PDF からウォーターマークを抽出
- PDF ドキュメントをロードします。
- ページアーティファクトにアクセスします。
- ウォーターマークアーティファクトをフィルタリングします。
- ウォーターマークの要素を集めましょう。
- ウォーターマークプロパティを抽出します。
- ウォーターマーク情報を出力します。
from os import path
import sys
import aspose.pdf as ap
def extract_watermark_from_pdf(infile):
with ap.Document(infile) as document:
watermarks = [
artifact
for artifact in document.pages[1].artifacts
if artifact.type == ap.Artifact.ArtifactType.PAGINATION
and artifact.subtype == ap.Artifact.ArtifactSubtype.WATERMARK
]
for watermark in watermarks:
print(f"{watermark.text} {watermark.rectangle}")
PDF にウォーターマークを追加
Python 用 Aspose.PDF を使用して PDF ドキュメントにテキストウォーターマークを追加します。
- PDF ドキュメントをロードします。
- テキストステートを作成します。
- ウォーターマークアーティファクトを作成します。
- ウォーターマークのテキストとスタイルを設定します。
- ポジショニングとローテーションを設定します。
- 不透明度と背景の動作を設定します。
- ウォーターマークをページに添付します。
- 更新した文書を保存します。
from os import path
import sys
import aspose.pdf as ap
def add_watermark_artifact(infile, outfile):
with ap.Document(infile) as document:
text_state = ap.text.TextState()
text_state.font_size = 72
text_state.foreground_color = ap.Color.blue_violet
text_state.font_style = ap.text.FontStyles.BOLD
text_state.font = ap.text.FontRepository.find_font("Arial")
watermark = ap.WatermarkArtifact()
watermark.set_text_and_state("WATERMARK", text_state)
watermark.artifact_horizontal_alignment = ap.HorizontalAlignment.CENTER
watermark.artifact_vertical_alignment = ap.VerticalAlignment.CENTER
watermark.rotation = 60
watermark.opacity = 0.2
watermark.is_background = True
document.pages[1].artifacts.append(watermark)
document.save(outfile)
PDF ページからウォーターマークアーティファクトを削除
Aspose.PDF for Python API を使用して、PDF ドキュメントの特定のページからウォーターマークアーティファクトを削除します。このアプローチは、ページアーティファクトとして保存されているウォーターマーク要素(特にページネーションウォーターマークサブタイプとして分類されたもの)を対象とし、それらを繰り返し処理して、更新された文書を保存する前に削除します。
- PDF ドキュメントをロードします。
- ページアーティファクトにアクセスします。
- ウォーターマークアーティファクトをフィルタリングします。
- ウォーターマークアーティファクトを削除します。
- 更新した文書を保存します。
from os import path
import sys
import aspose.pdf as ap
def delete_watermark_artifact(infile, outfile):
with ap.Document(infile) as document:
watermarks = [
artifact
for artifact in document.pages[1].artifacts
if artifact.type == ap.Artifact.ArtifactType.PAGINATION
and artifact.subtype == ap.Artifact.ArtifactSubtype.WATERMARK
]
for watermark in watermarks:
document.pages[1].artifacts.delete(watermark)
document.save(outfile)