THotPDF.RegisterSeparation Método

 

THotPDF.RegisterSeparation

THotPDF

 

Arriba

Declara un espacio de color Separation de PDF 1.3+ para flujos de impresión con tintas directas (ISO 32000-1 8.6.6.4) Cada llamada registra una tinta directa y devuelve un nombre de espacio de color generado automáticamente (Sep1, Sep2, ...) que puede usarse con THPDFPage.SetFillColorSpace / SetStrokeColorSpace + SetFillColor([tint]) / SetStrokeColor([tint])

 

Sintaxis Delphi:

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

 

Sintaxis C++:

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

 

Descripción

Un espacio de color Separation permite que un PDF haga referencia por nombre a una tinta directa (por ejemplo, un color Pantone). Los dispositivos de impresión conformes usan la tinta real; los visores en pantalla y las vistas previas digitales retroceden al color AlternateCS proporcionado con tint = 1.0 e interpolan linealmente hacia "sin tinta" cuando tint = 0

 

ColorantName - el nombre de la tinta, por ejemplo 'Pantone 185 C'. Los espacios se escapan como #20 en el nombre PDF de salida según PDF 1.7 7.3.5; deben evitarse otros caracteres delimitadores de PDF, como paréntesis, corchetes, barras y signos de porcentaje

AlternateCS - 'DeviceGray' (1 componente), 'DeviceRGB' (3) o 'DeviceCMYK' (4). Cualquier otro valor provoca una excepción

TintC1 - componentes del espacio alternativo con tinta completa (tint = 1.0). El número de componentes debe coincidir con AlternateCS; los valores están en [0..1]. Tenga en cuenta que para DeviceGray, la convención es 0 = negro y 1 = blanco, lo contrario del valor predeterminado BlackIs1 de la imagen

 

Valor devuelto: un nombre generado automáticamente (Sep1, Sep2, ...). Devuelve una cadena vacía cuando StrictVersionLock está activado y la Version activa es inferior a PDF 1.3; en caso contrario la versión del documento sube automáticamente a 1.3

 

Ejemplo de código

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

 

Véase también

RegisterDeviceN, RegisterLabColorSpace, Version, Soporte de filtros PDF