我正在使用PDFsharp在PDF中绘制形状。遗憾的是,在这种情况下,我找不到有关使用自定义图案(45度条纹)填充形状的任何信息。
我认为没有可用的工具来做到这一点。如何获得相同的效果?
可能的解决方案可能是裁剪手动绘制的线条或使用非PDFsharp的库,但我只是在此猜测。
答案 0 :(得分:0)
为形状创建路径。然后,只需用所需的图案填充围绕形状的矩形即可。
请参阅Graphics示例中的“ Clip through path”:
http://www.pdfsharp.net/wiki/Graphics-sample.ashx#Clip_through_path_16
该示例使用文本作为形状,但是路径可以是您可以绘制的任何内容。
XGraphicsPath path = new XGraphicsPath();
path.AddString("Clip!", new XFontFamily("Verdana"), XFontStyle.Bold, 90,
new XRect(0, 0, 250, 140), XStringFormats.Center);
gfx.IntersectClip(path);
// Draw a beam of dotted lines
XPen pen = XPens.DarkRed.Clone();
pen.DashStyle = XDashStyle.Dot;
for (double r = 0; r <= 90; r += 0.5)
gfx.DrawLine(pen, 0, 0,
250 * Math.Cos(r / 90 * Math.PI), 250 * Math.Sin(r / 90 Math.PI));