HPDFTransferStream Function
Transfère les octets de la position source actuelle vers la position destination actuelle et évite une copie intermédiaire pour les types de stockage pris en charge
Déclaration
function HPDFTransferStream(
Source, Destination: TStream;
Count: Int64 = -1): Int64;
Unité
HPDFObjs
Chemins de transfert
TMemoryStreamécrit directement depuis son pointeur de sauvegarde sans allouer de tampon de transfertTFileStreamécrit directement depuis des vues mappées en lecture seule et restreintes, puis recule automatiquement lorsque le mappage n'est pas disponibleTHPDFMappedFileStreametTHPDFLazyFileStreamadossé à une source écrivent directement depuis des fenêtres mappées résidentes- Les flux à accès aléatoire délèguent à
THPDFRandomAccessSource.TransferAt, tandis queTHPDFCoalescingRandomAccessSourceécrit directement les blocs de cache conservés - Les autres classes de flux utilisent un tampon de secours borné de 64 Ko
Nombre et positions
Un Count de -1 transfère tous les octets restants depuis la position source actuelle, zéro ne transfère rien et une valeur positive est plafonnée au nombre d'octets disponibles ; les valeurs inférieures à -1 sont rejetées
Les deux positions de flux avancent du nombre d'octets retourné ; la source et la destination doivent être des objets non nuls différents
Intégration de l'écrivain PDF
Les corps de flux PDF non chiffrés, la sortie décodée sans filtre, l'export d'images chargées brutes, la matérialisation des flux paresseux et le déversement de flux temporaire adaptatif utilisent automatiquement cette couche de transfert
Les corps de flux chiffrés nécessitent encore une étape de transformation, car leurs octets et leur longueur changent avant la sérialisation