我正在使用PDFAnnotation()类和子类型墨水将墨水注释添加到PDFDocument中。目的是捕获使用触摸绘制的签名。
受UberSignature启发,我的UIBezierPath是一系列应该填充颜色的矩形。然而,当我将注释添加到PDFDocument时,它没有被填充。
当UIBezierPath添加到PDFAnnotation中时,似乎UIBezierPath的fill()方法根本没有起作用?
如果我使用相同的UIBezierPath并在UIImage上绘制它,则会正确地填充为实色。
有什么想法可能出了什么问题吗?
有问题的代码:
受UberSignature启发,我的UIBezierPath是一系列应该填充颜色的矩形。然而,当我将注释添加到PDFDocument时,它没有被填充。
当UIBezierPath添加到PDFAnnotation中时,似乎UIBezierPath的fill()方法根本没有起作用?
如果我使用相同的UIBezierPath并在UIImage上绘制它,则会正确地填充为实色。
有什么想法可能出了什么问题吗?
有问题的代码:
UIColor.red.setStroke()
UIColor.red.setFill()
var path = UIBezierPath()
path.append(myRectangles)
path.fill()
var annotation = PDFAnnotation(bounds: path.bounds, forType: .ink, withProperties: nil)
annotation.add(path)
myPDFPage.addAnnotation(annotation)
在截图中,我尝试编写正常文本和两个示例行。左侧行绘制缓慢,右侧行绘制快速。这个想法是使线条宽度根据其绘制速度变化,从而使签名看起来更加自然/逼真。