|
スポットカラー印刷ワークフロー向けに、PDF 1.3+ の Separation カラースペースを宣言します(ISO 32000-1 8.6.6.4)。呼び出しごとに 1 つのスポットインキを登録し、THPDFPage.SetFillColorSpace / SetStrokeColorSpace + SetFillColor([tint]) / SetStrokeColor([tint]) で使える自動生成のカラースペース名(Sep1、Sep2、...)を返します
Delphi 構文:
function RegisterSeparation(const ColorantName: AnsiString; const AlternateCS: AnsiString; const TintC1: array of Extended): AnsiString;
C++ 構文:
AnsiString RegisterSeparation(const AnsiString& ColorantName, const AnsiString& AlternateCS, const Extended* TintC1, int TintC1Count);
Description
Separation カラースペースにより、PDF はスポットインキ(たとえば Pantone 色)を名前で参照できます。対応する印刷デバイスは実際のインキを使い、画面ビューアやデジタルプレビューアは tint = 1.0 で指定された AlternateCS の色にフォールバックし、tint = 0 の「インキなし」へ線形に補間します
ColorantName - インキ名。たとえば 'Pantone 185 C'。スペースは PDF 1.7 7.3.5 に従い、出力 PDF 名では #20 にエスケープされます。その他の PDF デリミタ文字(括弧、角括弧、スラッシュ、パーセント)は避けるべきです
AlternateCS - 'DeviceGray'(1 コンポーネント)、'DeviceRGB'(3)、'DeviceCMYK'(4)。その他の値は例外を発生させます
TintC1 - インキ全強度(tint = 1.0)での代替 CS コンポーネント。コンポーネント数は AlternateCS と一致しなければならず、値は [0..1] です。DeviceGray の場合は 0 = 黒、1 = 白という規約になります(画像の BlackIs1 デフォルトとは逆)
戻り値: 自動生成された名前(Sep1、Sep2、...)。StrictVersionLock が有効で、アクティブな Version が PDF 1.3 未満の場合は空文字列を返します(それ以外はドキュメントバージョンが 1.3 に自動引き上げされます)
コード例
// Register a Pantone-style spot ink backed by CMYK, paint four tint
// swatches showing the linear progression from no ink to full ink
var
SpotName: AnsiString;
T: Integer;
begin
HPDF.Version := pdf14;
HPDF.BeginDoc;
SpotName := HPDF.RegisterSeparation(
'Pantone 185 C', // ink name (spaces auto-escaped)
'DeviceCMYK', // alternate CS for screen / digital
[0.0, 0.95, 0.75, 0.0]); // CMYK at tint = 1.0
HPDF.CurrentPage.SetFillColorSpace(SpotName);
for T := 1 to 4 do
begin
HPDF.CurrentPage.SetFillColor([T * 0.25]);
HPDF.CurrentPage.Rectangle(60 + (T - 1) * 100, 100, 80, 60);
HPDF.CurrentPage.Fill;
end;
HPDF.EndDoc;
end;
関連項目
RegisterDeviceN, RegisterLabColorSpace, Version, PDF Filter Support
|