program GeneratingInMemory;

{$APPTYPE CONSOLE}

uses

SysUtils, Graphics, Classes, HPDFDoc;

 

var

HPDF: THotPDF;

MemStream: TMemoryStream;

OutputStream: TFileStream;

begin

HPDF:= THotPDF.Create(nil);

try

MemStream := TMemoryStream.Create; // Memóriafolyam létrehozása

HPDF.OutputStream := MemStream; // Kimeneti folyam beállítása

HPDF.Compression := cmFlateDecode; // Flate tömörítés beállítása

HPDF.BeginDoc; // PDF generálás indítása

 

HPDF.CurrentPage.TextOut(10, 10, 0, 'Hello World!'); // Szöveg kiírása az oldalra

HPDF.EndDoc; // PDF véglegesítése a memóriában

MemStream.Position := 0; // Visszatekerés a fájlfolyamba történő másolás előtt

 

OutputStream := TFileStream.Create( 'Memory.pdf', fmCreate ) ; // Kimeneti fájlfolyam létrehozása

 

OutputStream.CopyFrom( MemStream, MemStream.Size ); // A generált PDF másolása a memóriából

finally

OutputStream.Free; // Kimeneti fájlfolyam lezárása

end;

MemStream.Free; // Memóriafolyam felszabadítása

HPDF.Free;

end.

          MemStream.Free;                            // Release the memory stream

      end;

  finally

      HPDF.Free;

  end;

end.