THPDFHeadlessRenderOptions

Déclaré dans HPDFHeadlessCairoDevice ; initialisez avec Default avant de changer les limites individuelles

ChampSignificationDéfaut
Scale: DoublePixels par point de page effectif, UserUnit inclus1
MaxPixels: Int64Nombre maximal arrondi de pixels de surface de page ou d'image16,777,216
MaxWorkingBytes: Int64Admission conservatrice des buffers managés et surfaces actifs134,217,728
MaxDecodedBytes: Int64Octets cumulés de contenu décodé, d'images et de streams de polices33,554,432
MaxPNGBytes: Int64Taille du PNG encodé en privé33,554,432
MaxTokens: IntegerTravail de tokens borné et comptages de tableaux sélectionnés500,000
MaxOperations: IntegerOpérations de contenu dispatchées cumulées500,000
MaxDepth: IntegerProfondeur récursive, de tableaux de polices et de graphics stack32
RenderAnnotations: BooleanRend les streams d'apparences normales disponiblesTrue
Usage: THPDFHeadlessRenderUsageVisibilité des annotations pour une sortie raster view ou printhruView
ViewerState: THPDFHeadlessOptionalContentStateÉtat de viewer d'optional-content explicite emprunté, vivant et inchangé pendant le renderingnil

Toutes les limites numériques doivent être positives ; Scale doit être fini et d'au plus 64, MaxDepth ne doit pas dépasser 256, et MaxPNGBytes doit tenir dans une valeur signée 32 bits positive

Usage doit valoir hruView ou hruPrint, même quand RenderAnnotations est false ; une valeur d'enum invalide échoue avant le callback de permission d'extraction ou la publication de sortie

Usage change uniquement la visibilité et les transforms des annotations ; le renderer conserve son contrat de permission d'extraction et n'autorise pas l'impression

Les lectures décodées individuelles sont aussi plafonnées par la limite de l'accès emprunté, l'allocation de mémoire restante et la taille de callback signée 32 bits, même quand l'allocation cumulée MaxDecodedBytes est plus grande

Le décodage de polices réserve une capacité transitoire prudente avant le parsing, incluant une allocation de base de 32 Mio, 64 fois la taille du stream de police décodé, des allocations de tableaux vérifiées récursivement et le double des estimations du décodeur retenues

Même une petite police peut être rejetée sous un petit budget mémoire ; les caches des bibliothèques natives et le RSS du système d'exploitation sont hors de la comptabilité managée

Les limites d'octets décodés et de profondeur de l'accès emprunté peuvent imposer des bornes supplémentaires ; l'annulation vient de son token détenu par l'appelant

Voir le renderer Cairo Linux natif pour le profil pris en charge et les contrats de sortie