THotPDF.RegisterSeparation Method

 

THotPDF.RegisterSeparation

THotPDF

 

Sus

Declară un spațiu de culoare Separation PDF 1.3+ pentru fluxuri de lucru de tip print cu culori spot (ISO 32000-1 8.6.6.4). Fiecare apel înregistrează o cerneală spot și returnează un nume de spațiu de culoare generat automat (Sep1, Sep2, ...) care poate fi folosit cu THPDFPage.SetFillColorSpace / SetStrokeColorSpace + SetFillColor([tint]) / SetStrokeColor([tint])

 

Delphi syntax:

function RegisterSeparation(const ColorantName: AnsiString; const AlternateCS: AnsiString; const TintC1: array of Extended): AnsiString;

 

C++ syntax:

AnsiString RegisterSeparation(const AnsiString& ColorantName, const AnsiString& AlternateCS, const Extended* TintC1, int TintC1Count);

 

Descriere

Un spațiu de culoare Separation îi permite unui PDF să refere o cerneală spot (de exemplu o culoare Pantone) după nume. Dispozitivele de imprimare conforme folosesc cerneala reală; vizualizatoarele de pe ecran și previzualizatoarele digitale cad înapoi la culoarea AlternateCS furnizată la tint = 1.0, interpolând liniar spre "fără cerneală" la tint = 0

 

ColorantName - numele cernelii, de exemplu 'Pantone 185 C'. Spațiile sunt escapate la #20 în numele PDF de ieșire conform PDF 1.7 7.3.5; alte caractere delimitatoare PDF (paranteze, paranteze drepte, slash-uri, semne procentuale) ar trebui evitate

AlternateCS - 'DeviceGray' (1 componentă), 'DeviceRGB' (3) sau 'DeviceCMYK' (4). Orice altă valoare generează o excepție

TintC1 - componentele AlternateCS la intensitate maximă a cernelii (tint = 1.0). Numărul de componente trebuie să corespundă cu AlternateCS; valorile sunt în [0..1]. Rețineți că pentru DeviceGray, convenția este 0 = negru și 1 = alb (opusul valorii implicite a imaginii BlackIs1)

 

Valoare returnată: un nume generat automat (Sep1, Sep2, ...). Returnează un șir gol când StrictVersionLock este activ și Version curentă este sub PDF 1.3 (în caz contrar versiunea documentului este ridicată automat la 1.3)

 

Exemplu de cod

// 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;

 

Vezi și

RegisterDeviceN, RegisterLabColorSpace, Version, PDF Filter Support