|
Deklarerer et Separation-fargerom for spotfarge-baserte utskriftsarbeidsflyter i PDF 1.3+ (ISO 32000-1 8.6.6.4). Hvert kall registrerer én spotblekkfarge og returnerer et automatisk generert fargeromsnavn (Sep1, Sep2, ...) som kan brukes med THPDFPage.SetFillColorSpace / SetStrokeColorSpace + SetFillColor([tint]) / SetStrokeColor([tint])
Delphi-syntaks:
function RegisterSeparation(const ColorantName: AnsiString; const AlternateCS: AnsiString; const TintC1: array of Extended): AnsiString;
C++-syntaks:
AnsiString RegisterSeparation(const AnsiString& ColorantName, const AnsiString& AlternateCS, const Extended* TintC1, int TintC1Count);
Beskrivelse
Et Separation-fargerom lar en PDF referere til et spotblekk (for eksempel en Pantone-farge) ved navn. Enheter som følger spesifikasjonen bruker det faktiske blekket; visere på skjerm og digitale forhåndsvisere faller tilbake til den leverte AlternateCS-fargen ved tint = 1.0, med lineær interpolasjon mot "ingen blekk" ved tint = 0
ColorantName - blekknavnet, for eksempel 'Pantone 185 C'. Mellomrom escapes til #20 i det utgående PDF-navnet per PDF 1.7 7.3.5; andre PDF-delimitertegn (parenteser, klammer, skråstreker, prosenttegn) bør unngås
AlternateCS - 'DeviceGray' (1 komponent), 'DeviceRGB' (3) eller 'DeviceCMYK' (4). Enhver annen verdi utløser et unntak
TintC1 - alternate-CS-komponenter ved full blekkstyrke (tint = 1.0). Komponentantallet må samsvare med AlternateCS; verdiene ligger i [0..1]. Merk at for DeviceGray er konvensjonen 0 = svart og 1 = hvit (motsatt av standardverdien BlackIs1 for bilder)
Returverdi: et automatisk generert navn (Sep1, Sep2, ...). Returnerer en tom streng når StrictVersionLock er på og den aktive Version er under PDF 1.3 (ellers oppgraderes dokumentversjonen automatisk til 1.3)
Kodeeksempel
// 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;
Se også
RegisterDeviceN, RegisterLabColorSpace, Version, Støtte for PDF-filtre
|