function SaveAsPdfUaToStream(Stream: TStream; const Options: TPdfUaSaveOptions): Boolean;
SaveAsPdfUaToStream는 SaveAsPdfUa의 스트리밍 대응 함수입니다 —
동일한 PDF/UA-1 출력을 생성하지만 호출자가 제공한 임의의 탐색 가능한 TStream에 결과를 기록합니다.
HTTP 업로드 파이프라인, BLOB 컬럼, 메모리 내 캐시 계층, 아카이브 컨테이너(ZIP / TAR),
또는 PDF/UA 바이트가 디스크에 닿을 필요가 없는 모든 워크플로에 유용합니다
후처리 논리는 SaveAsPdfUa(FileName, Options)와 동일합니다. 기본 SaveAs가
먼저 실행된 뒤, 증분 업데이트가 XMP 메타데이터 스트림(ISO 14289-1 §7.1에 따른 필수
dc:title과 pdfuaid 확장 스키마 설명 포함), 원본에 없을 때 카탈로그
/MarkInfo와 /ViewerPreferences, 호출자가 BCP 47 태그를 제공했을 때
카탈로그 /Lang, 트레일러 /ID 배열을 주입합니다. 비어 있는 Options
필드는 PDFium 리더(FPDF_GetMetaText, FPDF_GetFileIdentifier,
FPDFCatalog_GetLanguage)에서 자동으로 채워지므로 일반적인 호출자는 필요한 경우
DocumentTitle 또는 Language만 설정합니다
성공 시 True를 반환합니다. 출력 스트림은 마지막으로 기록된 바이트 다음 위치에 남습니다.
기본 SaveAs가 실패했거나 후처리를 추가할 수 없으면(일반적으로 암호화된 원본) False를 반환합니다
saRemoveSecurity가 필요합니다
var
Stream: TMemoryStream;
Opts: TPdfUaSaveOptions;
begin
Stream := TMemoryStream.Create;
try
Opts := TPdfUaSaveOptions.Default;
Opts.DocumentTitle := 'Quarterly Report';
Opts.Language := 'en';
if Pdf1.SaveAsPdfUaToStream(Stream, Opts) then
begin
Stream.Position := 0;
UploadToArchive(Stream);
end;
finally
Stream.Free;
end;
end;