THotPDF.FlattenLoadedPageComplexGraphics

Spłaszcza cieniowania mesh i złożone zasoby Pattern w najniższej rozdzielczości, jaka mieści się w zmierzonym budżecie błędu wizualnego

Deklaracja

function FlattenLoadedPageComplexGraphics(PageIndex, MinimumDPI,
    MaximumDPI, DPIIncrement: Integer;
    MaximumPerceptualError: Double;
    MaxRasterPixels, MaxTilePixels: Int64;
    out Info: THPDFComplexGraphicsFlattenInfo): Boolean;

Model wyboru

Metoda wykrywa w słownikach zasobów strony cieniowania mesh typu 4–7, patterny tiling oraz patterny cieniowania oparte na mesh

Najpierw renderowana jest deterministyczna siatka 4×4 ograniczonych regionów próbkowania w rozdzielczości MaximumDPI, po czym testowane są rozdzielczości od MinimumDPI w górę z krokiem DPIIncrement. Próbki kandydackie są porównywane z referencją przez odległość RGB ważoną luminancją, przeskalowaną do zera-sto na skali błędu percepcyjnego

Wybrany zostaje pierwszy kandydat o wartości nieprzekraczającej MaximumPerceptualError. MaximumDPI zawsze pozostaje bezstratnym fallbackiem referencyjnym

Wynik i ograniczenia

Wybrany render strony jest zapisywany jako kafle CalRGB D65 kompresowane Flate, bez szwów. MaxRasterPixels ogranicza łączną rozdzielczość wyjściową, a MaxTilePixels — roboczy zestaw danych każdego renderu, konwersji i kompresji

Strony używające Separation lub DeviceN pozostają treścią wektorową przy cgfsSpotColorPreserved, bo rasteryzacja zniszczyłaby semantykę separacji procesowych

THPDFComplexGraphicsFlattenInfo raportuje liczbę wykrytych zasobów, wybrane i referencyjne DPI, zmierzony błąd, liczbę porównanych próbek, liczbę kafli, szczytową liczbę pikseli kafla, szczytowy rozmiar danych roboczych, przestrzeń barw wyjściową i składniki spot

Zobacz też FlattenLoadedPageTransparency oraz Display Lists and Print Production