THotPDF.RegisterLabColorSpace Method

 

THotPDF.RegisterLabColorSpace

THotPDF

 

Atas

Mendaftarkan color space CIELab PDF 1.3 (ISO 32000-1 8.6.5.3) di bawah nama resource yang dihasilkan otomatis (Lab1, Lab2, ...). Gunakan nama yang dikembalikan dengan THPDFPage.SetFillColorSpace / SetStrokeColorSpace lalu SetFillColor / SetStrokeColor sambil meneruskan tiga komponen L*a*b*

 

Sintaks Delphi:

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

 

Sintaks C++:

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

 

Deskripsi

Color space CIELab mendeskripsikan warna secara independen dari perangkat tampilan atau cetak apa pun: L* menyatakan kecerahan dalam [0..100], a* sumbu hijau/merah, dan b* sumbu biru/kuning (biasanya [-128..127]). Penampil PDF yang patuh mengonversi L*a*b* ke warna perangkat menggunakan iluminan WhitePoint yang dikonfigurasi. Iluminan umum:

 

D50  - standar cetak ICC. WhitePoint = [0.9505, 1.0, 1.089]

D65  - standar sRGB / tampilan. WhitePoint = [0.95047, 1.0, 1.08883]

 

WhitePoint Y harus sama dengan 1.0 menurut tabel 64 spesifikasi; X dan Z harus positif. Jika keempat parameter Range diisi nol, sistem kembali ke default implisit spesifikasi [-100 100 -100 100]; gunakan kombinasi non-nol apa pun untuk menimpanya

 

Nilai kembali: nama resource yang dihasilkan otomatis (Lab1, Lab2, ...). Mengembalikan string kosong ketika StrictVersionLock aktif dan Version aktif berada di bawah PDF 1.3 (jika tidak, versi dinaikkan otomatis ke 1.3)

 

Contoh kode

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

 

Lihat juga

Version, Compression, PDF Filter Support