図形の描画
このガイドでは、Aspose.PDF FOSS for Java における幾何学的シェイプの描画方法と、グラフィカルなページ装飾の管理方法を示します。CircleAnnotation を使用して円を描く方法や、透かしやヘッダーなどの Artifact オブジェクトを列挙または削除する方法を学びます。
シェイプ描画
Aspose.PDF FOSS for Java は、主にアノテーションレイヤーを通じて幾何学的シェイプを提供します。CircleAnnotation はページ上の指定された Rectangle に楕円を描画します。setColor() で塗りつぶし色を設定し、ページのアノテーションコレクションに追加します。
try (Document doc = new Document()) {
PageCollection pages = doc.getPages();
Page page = pages.add();
CircleAnnotation circle = new CircleAnnotation(page,
new Rectangle(100, 100, 200, 200));
circle.setColor(Color.fromRgb(0, 0, 1));
page.getAnnotations().add(circle);
doc.save("shapes.pdf");
}Rectangle コンストラクタは、PDF 座標単位(ページ左下隅を基準としたポイント)で (x1, y1, x2, y2) を受け取ります。
Artifacts
Artifact クラスはページ装飾(ヘッダー、フッター、透かし、背景画像)をモデル化します。ページリソースからアクセスできる ArtifactCollection は、既存のアーティファクトオブジェクトの列挙と削除を可能にします。
try (Document doc = new Document("input.pdf")) {
PageCollection pages = doc.getPages();
Page page = pages.get(1);
// Enumerate artifacts (watermarks, headers, footers)
for (Artifact artifact : page.getArtifacts()) {
System.out.println(artifact.getArtifactType());
}
}ページコンテンツストリームを直接変更せずに、特定のアーティファクトを削除するには ArtifactCollection.delete(artifact) を使用します。
ウォーターマークの削除
ページからウォーターマークのアーティファクトを除去するには、アーティファクトコレクションを反復処理し、タイプでウォーターマークを特定し、保存する前に削除します:
try (Document doc = new Document("watermarked.pdf")) {
PageCollection pages = doc.getPages();
Page page = pages.get(1);
for (Artifact artifact : page.getArtifacts()) {
if ("Watermark".equals(artifact.getArtifactType())) {
page.getArtifacts().delete(artifact);
break;
}
}
doc.save("clean.pdf");
}