Fill (f)
fill演算子(f)は、PDFコンテンツストリームにおける基本的なパス描画演算子であり、非ゼロワインディング数規則を使用して現在のパスの内部を塗りつぶします。
fill演算子(f)は、PDFコンテンツストリームにおける基本的なパス描画演算子であり、非ゼロワインディング数規則を使用して現在のパスの内部を塗りつぶします。 ( Citation: N.A., 2020 (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html ) 中核的なグラフィックス演算子の一つとして、パスで囲まれた領域に現在の塗りつぶし色を適用し、PDF文書内の図形、テキスト、ベクターグラフィックスのレンダリングに不可欠です。この演算子は現在のパスを消費します。つまり、塗りつぶし操作が完了した後、パスはクリアされます。
f演算子は、非ゼロワインディング数規則を使用して、現在のパスで囲まれた領域を塗りつぶすコンテンツストリームコマンドです。この規則により、複雑なパスや自己交差するパスを扱う際に、どの領域がパスの「内側」と見なされるかが決定されます。f演算子はf*(偶奇規則による塗りつぶし)演算子とは、パスの内部を計算する方法が異なります。f演算子はF演算子(大文字)と同等であり、どちらも同じ非ゼロワインディング数規則を実装しています。実行されると、グラフィックス状態から現在の塗りつぶし色をすべての内部領域に適用し、その後、現在のパスをメモリからクリアします。ストローク演算子(Sなど)とは異なり、fill演算子はパスの輪郭に沿って描画するのではなく、囲まれた空間を色で塗りつぶします。
PDF生成または操作を行う開発者にとって、fill演算子を理解することは、図形やベクターグラフィックスを正しくレンダリングするために不可欠です。f(非ゼロワインディング)とf*(偶奇規則)の選択は、重なり合うパスや自己交差するパスのレンダリング方法に影響し、複雑なグラフィックスの視覚的出力に影響を与えます。プログラムによってPDFコンテンツストリームを作成する際、開発者はfill演算子を適用する前に、m(moveto)、l(lineto)、c(curveto)などの演算子を使用してパスを構築する必要があります。fill演算子の適切な使用は、PDFアクセシビリティやTagged PDF実装においても重要です。塗りつぶされた領域は、論理構造要素と適切に関連付けられる必要がある視覚的プレゼンテーション層に寄与するためです。
(
Citation: PDF Association, 2023
PDF Association(2023). Retrieved from
https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/
)
fill演算子は、まず現在のパスを評価し、非ゼロワインディング数規則を使用してどの領域が内部でどの領域が外部かを決定します。この規則は、パスがある点の周りを何回巻いているかを数えます。任意の点について、任意の方向に光線を投射し、左から右に光線を横切る各パスセグメントは1を加算し、右から左に横切るセグメントは1を減算します。最終的なカウントがゼロでなければ、その点は内側にあり、ゼロであれば外側にあります。内部領域が特定されると、演算子はグラフィックス状態から現在の塗りつぶし色(異なる色空間に対してg、rg、kなどの演算子によって設定)をそれらの領域に適用します。レンダリングプロセスは、現在の変換マトリックスや現在のクリッピングパスなど、他のグラフィックス状態パラメータを尊重します。塗りつぶし操作が完了すると、現在のパスはクリアされ、後続の操作のために再構築する必要があります。f演算子は、次のようなシーケンスでパス構築演算子と組み合わせて使用されることがよくあります:x y m(開始点への移動)、x2 y2 l(次の点への直線)、追加のパスセグメント、最後にf(構築されたパスの塗りつぶし)。
- Stroke (S) – パスの内部を塗りつぶすのではなく、パスの輪郭に沿って描画する演算子
- Fill Even-Odd (f)* – 非ゼロワインディング数規則の代わりに偶奇規則を使用する代替fill演算子
- Path Construction Operators – 塗りつぶされるジオメトリを定義するmoveto(m)、lineto(l)、curveto(c)などのコマンド
- Graphics State – レンダリング操作に影響を与える塗りつぶし色、ストローク色、変換マトリックスなどを含むパラメータの集合
- Clipping Path – ペイントを適用できる場所を制限し、塗りつぶし操作と交差するパス
- (N.A.) (2020)
- (N.A.). (2020). Document management — Portable document format — Part 2: PDF 2.0 . International Organization for Standardization Retrieved from https://www.iso.org/standard/75839.html
- PDF Association (2023)
- PDF Association(2023). Retrieved from https://pdfa.org/resource/tagged-pdf-best-practice-guide-syntax/
