PDFium Delphi Component Docs

SaveAsEncryptedToStream метод

Component: TPdf  ·  Unit: PDFium
Варіант SaveAsEncrypted у пам'яті — записує зашифрований вихідний PDF у будь-який seekable TStream без збереження на диску

Syntax

function SaveAsEncryptedToStream(Stream: TStream; const Options: TPdfEncryptOptions): Boolean;

StreamTStream. Цільовий потік, що приймає зашифровані байти
OptionsTPdfEncryptOptions. Запис конфігурації, що визначає паролі, дозволи, прапорці шифрування метаданих та редакцію шифрування

Return Value

Повертає True, якщо зашифрований PDF успішно записано в потік, або False у разі невдачі

Description

SaveAsEncryptedToStream є потоковим аналогом SaveAsEncrypted — він застосовує шифрування AES-256-CBC відповідно до ISO 32000-2 §7.6, але записує результати безпосередньо в будь-який TStream із підтримкою позиціонування (як-от TMemoryStream або TFileStream) замість запису через файловий шлях

Remarks

Example

var
  Stream: TMemoryStream;
  Opts: TPdfEncryptOptions;
begin
  Stream := TMemoryStream.Create;
  try
    Opts := TPdfEncryptOptions.Default;
    Opts.UserPassword := 'user123';
    Opts.OwnerPassword := 'owner123';
    Opts.Permissions := $FFFFFFF0;
    Opts.EncryptMetadata := True;
    Opts.Revision := erR6;
    if Pdf1.SaveAsEncryptedToStream(Stream, Opts) then
    begin
      Stream.Position := 0;
      SendToNetwork(Stream);
    end;
  finally
    Stream.Free;
  end;
end;

See Also

SaveAsEncrypted, SaveAs