THotPDF.RegisterLabColorSpace metódus

 

THotPDF.RegisterLabColorSpace

THotPDF

 

Tetejére

Regisztrál egy PDF 1.3 CIELab színteret (ISO 32000-1 8.6.5.3) egy automatikusan generált erőforrásnév alatt (Lab1, Lab2, ...). Használja a visszakapott nevet a THPDFPage.SetFillColorSpace / SetStrokeColorSpace metódussal, amelyet a SetFillColor / SetStrokeColor követ, átadva a három L*a*b* komponenst

 

Delphi szintaxis:

function RegisterLabColorSpace(WhitePointX, WhitePointY, WhitePointZ: Single; RangeAMin, RangeAMax, RangeBMin, RangeBMax: Single): AnsiString;

 

C++ szintaxis:

AnsiString RegisterLabColorSpace(float WhitePointX, float WhitePointY, float WhitePointZ, float RangeAMin, float RangeAMax, float RangeBMin, float RangeBMax);

 

Leírás

A CIELab színtér a megjelenítő vagy nyomtató eszközöktől függetlenül írja le a színeket: az L* a fényerőt fejezi ki a [0..100] tartományban, az a* a zöld/piros tengelyt, a b* a kék/sárga tengelyt (jellemzően a [-128..127] tartományban). A megfelelő PDF-megjelenítők a konfigurált WhitePoint fényforrás használatával konvertálják át az L*a*b* értékeket az eszköz színére. Gyakori fényforrások:

 

D50 - ICC nyomtatási szabvány. WhitePoint = [0.9505, 1.0, 1.089]

D65 - sRGB / kijelző szabvány. WhitePoint = [0.95047, 1.0, 1.08883]

 

A WhitePoint Y értékének a specifikáció 64. táblázata szerint 1.0-nak kell lennie; az X és Z értékeknek pozitívnak kell lenniük. Mind a négy Range paraméter nullaként történő átadása a specifikáció implicit alapértelmezett [-100 100 -100 100] értékére áll vissza; ettől eltérő érték megadásához adjon meg bármilyen nem nulla kombinációt

 

Visszatérési érték: egy automatikusan generált erőforrásnév (Lab1, Lab2, ...). Üres karakterláncot ad vissza, ha a StrictVersionLock be van kapcsolva, és az aktív Version a PDF 1.3 alatt van (egyébként a verzió automatikusan 1.3-ra növekszik)

 

Code Example

// Register a D50 Lab space for print, paint a magenta swatch
var
  CSName: AnsiString;
begin
  HPDF.Version := pdf14;
  HPDF.BeginDoc;
  CSName := HPDF.RegisterLabColorSpace(
    0.9505, 1.0, 1.089,        // D50 WhitePoint
    -128, 127, -128, 127);     // standard a* and b* range
  HPDF.CurrentPage.SetFillColorSpace(CSName);
  HPDF.CurrentPage.SetFillColor([50.0, 60.0, -50.0]);  // L* a* b*
  HPDF.CurrentPage.Rectangle(60, 60, 200, 100);
  HPDF.CurrentPage.Fill;
  HPDF.EndDoc;
end;

 

Lásd még

Version, Compression, PDF Filter Support