THotPDF.RegisterSeparation Méthode

 

THotPDF.RegisterSeparation

THotPDF

 

Haut

Déclare un espace colorimétrique Separation pour PDF 1.3+ destiné aux flux d'impression en couleurs d'accompagnement (ISO 32000-1 8.6.6.4). Chaque appel enregistre une encre d'accompagnement et renvoie un nom d'espace colorimétrique généré automatiquement (Sep1, Sep2, ...) utilisable avec THPDFPage.SetFillColorSpace / SetStrokeColorSpace + SetFillColor([tint]) / SetStrokeColor([tint])

 

Syntaxe Delphi :

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

 

Syntaxe C++ :

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

 

Description

Un espace colorimétrique Separation permet à un PDF de référencer une encre d'accompagnement, par exemple une couleur Pantone, par son nom. Les périphériques d'impression conformes utilisent l'encre réelle; les visionneuses à l'écran et les aperçus numériques se replient sur la couleur AlternateCS fournie à tint = 1.0, avec interpolation linéaire vers "aucune encre" à tint = 0

 

ColorantName - le nom de l'encre, par exemple 'Pantone 185 C'. Les espaces sont échappés en #20 dans le nom PDF de sortie conformément à PDF 1.7 7.3.5; les autres caractères délimiteurs PDF (parenthèses, crochets, barres obliques, signes de pourcentage) doivent être évités

AlternateCS - 'DeviceGray' (1 composante), 'DeviceRGB' (3) ou 'DeviceCMYK' (4). Toute autre valeur déclenche une exception

TintC1 - composantes de l'espace alternatif à pleine intensité d'encre (tint = 1.0). Le nombre de composantes doit correspondre à AlternateCS; les valeurs sont dans [0..1]. Notez que pour DeviceGray, la convention est 0 = noir et 1 = blanc, à l'inverse de la valeur par défaut BlackIs1 de l'image

 

Valeur de retour : un nom généré automatiquement (Sep1, Sep2, ...). Renvoie une chaîne vide lorsque StrictVersionLock est activé et que la Version active est inférieure à PDF 1.3, sinon la version du document passe automatiquement à 1.3

 

Exemple de code

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

 

Voir aussi

RegisterDeviceN, RegisterLabColorSpace, Version, Prise en charge des filtres PDF