RecolorPage
Kolor
Opis
Przenosi wybraną stronę do jednej przestrzeni kolorów
Składnia
Delphi
Function TPDFlib.RecolorPage(TargetSpace: Integer): Integer;Parametry
| TargetSpace | 1 szarość, 2 RGB, 3 CMYK |
|---|
Wartości zwracane
| Count | Liczba kolorów przekonwertowanych na tej stronie |
|---|---|
| 0 | Nic nie wymagało konwersji albo TargetSpace było poza zakresem od 1 do 3. Strona zachowuje wtedy pierwotne bajty |
Uwagi
Konwersja używa zwykłej arytmetyki urządzenia, a nie zarządzania kolorami: dokument zawierający tylko DeviceRGB nie ma profilu, przez który można konwertować. RGB jest przekształcane w szarość według wag luminancji ITU-R BT.601, a CMYK zgodnie z ISO 32000-1 §8.6.4.4, czyli tak samo jak robi to przeglądarka podczas wyświetlania dokumentu CMYK na ekranie
Kolory ustawione za pomocą przestrzeni ICCBased, Separation, Indexed lub Pattern pozostają bez zmian. Odczyt ich składowych bez profilu zmieniłby wygląd strony zamiast go zachować, dlatego taki dokument jest konwertowany tylko w częściach, które bezpośrednio wskazują przestrzeń urządzenia
To wywołanie nie konwertuje obrazów: obraz może być rysowany na więcej niż jednej stronie, dlatego jego konwersja zmieniłaby strony, których kod wywołujący nie wskazał. Użyj RecolorDocument, aby przekonwertować również obrazy
Geometria, tekst, przycinanie i wszystkie pozostałe operatory są zapisywane bez zmian
Warstwy strony (ang. page's layers) są łączone przed przebiegiem, ponieważ kolor ustawiony na jednej warstwie pozostaje aktywny na następnej, a ich oddzielny odczyt utraciłby ten stan
Przykład
PDF.SelectPage(1);
PDF.RecolorPage(1); // this page in grey