function SaveAs(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): Boolean;
| Stream | Valeur TStream qui reçoit les données PDF |
| Option | TSaveOption. Option de sauvegarde : saNone pour une sauvegarde normale, saIncremental pour une mise à jour incrémentale, saNoIncremental pour forcer une réécriture complète, ou saRemoveSecurity pour supprimer la sécurité pendant la sauvegarde |
| PdfVersion | Cible TPdfVersion ; utilisez pvUnknown pour préserver la version courante |
function SaveAs(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): Boolean;
| FileName | string. Le chemin de fichier de sortie. Un fichier temporaire frère est terminé d’abord, puis remplace atomiquement la destination |
| Option | TSaveOption. Save option: saNone, saIncremental, saNoIncremental, or saRemoveSecurity |
| PdfVersion | Cible TPdfVersion ; utilisez pvUnknown pour préserver la version courante |
True si le document a été sauvegardé avec succès, ou False en cas d’échecSauvegarde le document courant vers un chemin de fichier ou un TStream
Le paramètre PdfVersion spécifie la version PDF de sortie ; passez pvUnknown pour garder la version existante du document
La propriété Compressed contrôle la compression des flux. Les entrées à référence hybride, flux xref et flux d’objet sont préservées lorsqu’une réécriture à xref classique ne peut pas retenir leur sémantique de références croisées complète
Chaque sauvegarde complète (non incrémentale) répare les CMap ToUnicode des polices subset dont les éléments de plage de tableau contredisent leurs mappages de caractères, si bien qu’un document rechargé extrait les espaces et traits d’union d’origine au lieu de U+00A0 et U+00AD ; les révisions incrémentales, les mises à jour éparses et les documents à flux de références croisées passent sans modification
Les vérifications de version PDF explicites suivent la chaîne de révision de références croisées active et les membres de flux d’objet actifs, afin que les corps d’objet périmés ou non référencés n’affectent pas la porte de version demandée
La surcharge fichier laisse une destination existante inchangée si la compression, le post-traitement ou la validation de version échoue
La mise à jour V8 de Windows v3.125.2 répare la persistance exacte des valeurs de champs pour les tableaux de paquets testés et le sous-ensemble XDP monoflux pris en charge ; les runtimes plus anciens peuvent perdre des éditions monoflux ou introduire des sauts de ligne supplémentaires
Rouvrez la sortie XFA et comparez exactement les valeurs de champ requises avant de l’accepter ; ne supprimez pas les espaces pour masquer une différence de persistance
pv13 normalise les ressources de page héritées, canonise /ProcSet et ne supprime que les valeurs d’état de transparence initiales, y compris /BM /Normal, /SMask /None, /CA 1, /ca 1, /AIS false et /TK truepv13 rejette les flux de métadonnées actifs car /Type /Metadata et les métadonnées de composant XMP requièrent PDF 1.4 ou plus récentpv13 rejette les arbres de noms /EmbeddedFiles du document tout en conservant les anciennes références de flux de fichier intégré qui n’utilisent pas l’entrée d’arbre de noms PDF 1.4pv13 rejette l’entrée /Lang du catalogue de document car l’identification de langue naturelle au niveau document requiert PDF 1.4 ou plus récentpv14 et les cibles plus anciennes rejettent les valeurs /PageLayout /TwoPageLeft et /TwoPageRight du catalogue de document car les dispositions à deux pages requièrent PDF 1.5 ou plus récentpv14 et les cibles plus anciennes rejettent les XObjects d’image avec /BitsPerComponent 16 car les composants d’image 16 bits requièrent PDF 1.5 ou plus récentpv14 et les cibles plus anciennes rejettent les entrées /SMaskInData d’XObject d’image car les canaux de masque doux JPEG 2000 intégrés requièrent PDF 1.5 ou plus récentpv13 avec saIncremental lève EPdfError car la normalisation ne peut pas préserver les révisions antérieures signéesEPdfError ; les appelants doivent supprimer la sécurité avant de demander une cible de version de cœur/ADBE avec /BaseVersion /1.7 et /ExtensionLevel 1 ou plus récent ; une simple déclaration PDF 1.7 est insuffisanteRichMediaExecute exigent une extension développeur /ADBE avec /BaseVersion /1.7 et /ExtensionLevel 3 ou plus récent/Type /Measure /Subtype /GEO et les annotations Projection exigent une extension développeur /ADBE avec /BaseVersion /1.7 et /ExtensionLevel 3 ou plus récent/Annots doit contenir les entrées requises /Subtype et /Rect/OCProperties du catalogue exige un tableau /OCGs, un dictionnaire /D, des valeurs par défaut valides /BaseState /ON et /Intent /View lorsqu’elles sont présentes, et des entrées à valeur tableau /Configs, /ON, /OFF, /AS et /Order/DecodeParms direct du flux ou dans son tableau de paramètres à entrée unique, y compris les flux de références croisées compressés par prédicteur dans les formulaires multipages ; les clés imbriquées sans rapport ne remplacent pas les paramètres de décodage du flux
// Save to file
Pdf.SaveAs('output.pdf');
// Save to stream
var MS: TMemoryStream;
MS := TMemoryStream.Create;
try
Pdf.SaveAs(MS);
MS.SaveToFile('output.pdf');
finally
MS.Free;
end;