PDFium Delphi Component Docs

SaveAsPdfEToStream الطريقة

Component: TPdf  ·  Unit: PDFium
النسخة العاملة في الذاكرة من SaveAsPdfE — تكتب مخرجات PDF/E-1 في أي TStream من دون المرور عبر القرص

Syntax

function SaveAsPdfEToStream(Stream: TStream; const Options: TPdfESaveOptions): Boolean;

Description

SaveAsPdfEToStream هو النظير التدفقي لـ SaveAsPdfE — فهو ينتج إخراج PDF/E-1 نفسه، لكنه يكتب النتيجة في أي TStream قابل للبحث يزوّده المستدعي. وهو مفيد لدمج سير العمل الهندسي حيث تُدفع مخرجات PDF/E مباشرة إلى أنظمة PLM / PDM، وأعمدة BLOB، وحاويات الأرشفة، أو خطوط أنابيب رفع HTTP دون لمس القرص

منطق المعالجة اللاحقة مطابق لـ SaveAsPdfE(FileName, Options): يُنفَّذ SaveAs الأساسي أولًا، ثم يحقن تحديث تزايدي تدفق البيانات الوصفية XMP (مع pdfe:ISO_PDFEVersion ووصف مخطط الامتداد)، ويعيد كتابة قاموس معلومات المستند لإضافة مدخل /ISO_PDFEVersion (PDF/E-1) الإلزامي، ويحدّث الكتالوج ليشير إلى XMP الجديد، ويُصدر تذييلًا بمصفوفة /ID جديدة. وتُملأ حقول Options المتروكة فارغة تلقائيًا من قارئات PDFium (FPDF_GetMetaText وFPDF_GetFileIdentifier)، لذا لا يحتاج المستدعي النموذجي إلا إلى تجاوز حقل Version لقيم Part / Amd / Corr غير الافتراضية

يُرجع True عند النجاح. ويُترك تدفق الإخراج عند الموضع بعد آخر وحدة بايت مكتوبة. ويُرجع False إذا فشل SaveAs الأساسي أو إذا تعذّر إرفاق المعالجة اللاحقة

Remarks

Example

var
  Stream: TMemoryStream;
  Opts: TPdfESaveOptions;
begin
  Stream := TMemoryStream.Create;
  try
    Opts := TPdfESaveOptions.Default;
    Opts.Producer := 'CAD-Workflow 2026';
    if Pdf1.SaveAsPdfEToStream(Stream, Opts) then
    begin
      Stream.Position := 0;
      PushToPLM(Stream);
    end;
  finally
    Stream.Free;
  end;
end;

See Also

SaveAsPdfE, ValidatePdfE, PdfEConformance, SaveAs