THotPDF.BeginDoc Method

 

THotPDF.BeginDoc

THotPDF

 

Üst  Önceki  Sonraki

Creates new document.

 

Delphi sözdizimi:

procedure BeginDoc ( Initial: boolean = false );

 

C++ sözdizimi:

void __fastcall BeginDoc ( bool Initial = false );

 

Açıklama

BeginDoc yeni bir PDF belgesi başlatır ve ilk sayfayı oluşturur. Normal kullanımda BeginDoc öğesini varsayılan parametre değeriyle çağırın ve ardından CurrentPage üzerinde çizim yapın

Tek bir THotPDF örneği art arda istendiği kadar belge yazabiliyor. EndDoc dosyayı yazdıktan sonra belge için kaydedilen her şeyi bırakır: görüntüler, fontlar, form alanları, outline'lar, belge JavaScript'i, named destination'lar, sayfa etiketleri, ICC profil'leri, output intent'ler ve diğer kaynaklar. Yazılan belgenin sayfaları ve nesneleri bellekte kalır; ValidatePDFUA2Structure gibi denetimler, bir sonraki BeginDoc onları serbest bırakana dek EndDoc sonrasında da çalışır. Böylece sonraki belge temiz başlar ve önceki dosyanın içeriğinden ona hiçbir şey taşınmaz

FileName, Version, Compression, PDFACompliance, Author ve Title gibi property'ler, sayfa katmanları, font fallback zincirleri ve değişken font ekseni seçimleriyle birlikte değerlerini sonraki belge için korur. EndDoc ile bir sonraki BeginDoc arasında kaydedilen her şey — örneğin AddPDFAOutputIntent ile eklenen bir output intent veya Names üzerinden eklenen bir betik — sonraki belgeye aittir. Yazılan belgenin CurrentPageNumber, PagesCount ve layout tanılamaları da bir sonraki BeginDoc'a kadar okunabilir kalır

EndDoc, UserPassword ve OwnerPassword değerlerini temizler. ActivateProtection hâlâ açıkken bir sonraki BeginDoc öncesinde parolaları yeniden ayarlayın; aksi hâlde BeginDoc, boş parolalarla korunan bir belge yazmak yerine istisna fırlatır. Bir belgede bazı özellikler PDF sürümünü otomatik yükselttiyse (örneğin bir output intent için PDF 1.4'e), EndDoc sürümü Version property'sinin değerine geri çeker

 

Kod Örneği


HPDF := THotPDF.Create( nil );
try
  HPDF.FileName := '.\Output.pdf';
  HPDF.BeginDoc;   // Start PDF document creation
  HPDF.CurrentPage.TextOut( 100, 100, 0, 'Hello World!' );
  HPDF.EndDoc;     // Finish and save PDF document

  HPDF.FileName := '.\Second.pdf';
  HPDF.BeginDoc;   // Same instance, new independent document
  HPDF.CurrentPage.TextOut( 100, 100, 0, 'Second document' );
  HPDF.EndDoc;
finally
  HPDF.Free;
end;

 

Ayrıca bkz.: EndDoc