Codecs natifs FPC et rendu parallèle

Les builds FPC Windows peuvent utiliser HotPDFFPCCodecs.dll pour le TIFF, le JPEG, le JPEG 2000, la conversion de couleurs LittleCMS, l'encodage/décodage JBIG2 et la compression Zopfli

Le pont est construit à partir des sources tierces embarquées du dépôt avec un runtime C statique ; utilisez Lib/thirdparty/FPC/Build-Codecs.ps1 pour générer les binaires Win32 ou Win64 correspondants

Déployez la DLL correspondante à côté de l'exécutable de l'application ; le loader utilise ce chemin explicite et vérifie la version d'ABI, la largeur des pointeurs et le jeu d'exports complet avant d'activer les codecs natifs

Des bibliothèques natives absentes ou incompatibles désactivent leurs capacités en toute sécurité ; les fallbacks Pascal pris en charge restent disponibles et les appels de codecs non pris en charge échouent explicitement

Rendu PDF parallèle

Le rendu FPC de pages, de pages ordonnées, de tuiles et de bandes utilise désormais des threads worker explicites, avec la même admission mémoire, les mêmes files de sortie bornées, la livraison ordonnée au thread appelant, l'annulation et le nettoyage d'exceptions que le pipeline Delphi

La configuration d'opération, les tableaux ICC et les références de token d'annulation sont capturés au démarrage ; chaque worker possède son renderer tandis que les display lists immuables et les caches synchronisés sont partagés

Gardez le document en vie et ne modifiez pas le contenu de ses pages pendant qu'un rendu parallèle s'exécute

Le décodage tuilé JPEG 2000 utilise aussi des threads worker FPC explicites, avec équivalence de pixels série/parallèle et annulation coopérative

Vérification

Tests/FPC/Run-NativeCodecTests.ps1 exerce les deux architectures, les allers-retours de codecs natifs, les DLL absentes/incompatibles, le décodage JPEG réduit, le chevauchement réel de threads, l'égalité de pixels série/parallèle, l'ordre des callbacks, les budgets, l'annulation et la récupération après erreurs de callbacks