iTextSharp.text.pdf.PdfContentByte メソッドを使用して、svg から pdf へのいくつかのパスを描画します: moveTo、LineTo、CurveTo。単純なパスでは問題なく機能しますが、一部のパスには切り取られた四角形があります。例えば
<path
style="fill:#1034ff;fill-opacity:1;fill-rule:evenodd;stroke:none"
d="m 128.5625,106.65625 c -54.285714,37.14286 -54.285714,174.28571 0,260 100,51.42857 434.29464,34.28571 511.4375,0 31.42857,-31.42857 25.71429,-217.14286 0,-260 -31.42857,-34.285714 -460.00893,-42.857143 -511.4375,0 z M 611.4375,232.375 c -1.10965,39.4333 -70.01443,99.97768 -150,71.40625 -78.01486,-27.86748 -164.28571,16.61409 -150,-71.40625 6.31987,-38.93939 67.15729,-71.4375 150,-71.4375 75.65298,0.52477 151.5294,17.08767 150,71.4375 z"
id="rect3774"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccssccs" />
現在のパスには、z=closepath で終了する am=moveto および c=curveto ポイントがあります。次にM、C、Zで図に穴を開けます。
iTextSharpを使用してPDFで描画するにはどうすればよいですか? ContentByte.Fill(); で埋めるために、既存のパスから内部パスを切り取るにはどうすればよいですか?