是否可以在不使用 CMYKColorSep 类的情况下使用 CMYK 叠印,该类总是在打印机设置中生成新的单独颜色,我只想使用标准 4 CMYK 墨水的叠印(颜色分离的 PDF 输出,如 2.4 更改日志中所述)
这是我的示例代码(需要reportlab 2.4):
from reportlab.graphics.shapes import Rect
from reportlab.lib.colors import PCMYKColor, PCMYKColorSep
from reportlab.pdfgen.canvas import Canvas
black = PCMYKColor(0, 0, 0, 100)
blue = PCMYKColor(91.0, 43.0, 0.0, 0.0)
red = PCMYKColorSep( 0.0, 100.0, 91.0, 0.0, spotName='PANTONE 485 CV',density=100)
red2 = PCMYKColor( 0.0, 100.0, 91.0, 0.0, knockout=0) #knockout does nothing?
c = Canvas('test.pdf', (420,200))
c.setFillColor(black)
c.setFont('Helvetica', 10)
c.drawString(25,180, 'overprint w. CMYKColorSep')
c.setFillOverprint(True)
c.setFillColor(blue)
c.rect(25,25,100,100, fill=True, stroke=False)
c.setFillColor(red)
c.rect(100,75,100,100, fill=True, stroke=False)
c.setFillColor(black)
c.drawString(225,180, 'overprint w. plain CMYKColor (does not work)')
c.setFillColor(blue)
c.rect(225,25,100,100, fill=True, stroke=False)
c.setFillColor(red2)
c.rect(300,75,100,100, fill=True, stroke=False)
c.save()
注意:您需要在 acrobat reader pro 中启用叠印预览才能正确查看。
如果这不适用于reportlab,您是否知道生成pdf的任何其他服务器端替代方案,其中叠印有效?
非常感谢你