0

プリンタ設定で常に新しい個別の色を生成するCMYKColorSepクラスを使用せずにCMYKオーバープリントを使用することは可能ですか?標準の4つのCMYKインク(2.4変更ログに記載されているように色分けされたPDF出力)でオーバープリントを使用したいだけです)。

ここに私のサンプルコード(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()

注:これを正しく表示するには、acrobatReaderProでオーバープリントプレビューを有効にする必要があります。

これがreportlabで機能しない場合、オーバープリントが機能するpdfを生成する他のサーバー側の代替手段を知っていますか?

どうもありがとうございます

4

2 に答える 2

3

オーバープリントは CMYKColorSep でのみ使用できます。現在 2.4 で利用可能ですが、安定していません (Robin はまだコードをいじっています :) )。

reportlab の Web サイトhttp://www.reportlab.com/snippets/10/には非公開のスニペットがあり、デモを行っていますが、機能はまだ開発中であり、スニペットはリストされていません。

メイサム

于 2010-08-10T10:32:50.717 に答える
0

この機能は Reportlab 2.4 には実装されていません。しかし、彼らは次のメジャー リリースでそれを行うでしょう。

于 2010-07-22T09:34:34.120 に答える