THPDFDocOutlineObject.Opened

THPDFDocOutlineObject

 

الأعلى  السابق  التالي

يحدّد ما إذا كان عنصر المخطط التفصيلي الحالي مفتوحًا.

 

Delphi syntax:

property Opened : boolean;

 

C++ syntax:

__property bool Opened;

 

الوصف

استخدم خاصية Opened لفتح عنصر المخطط التفصيلي ( القيمة true ) أو إغلاقه ( القيمة false )

يمكن ضبط الحالة قبل إضافة الأبناء أو بعدها؛ فعند كتابة المستند يسجّل العنصر المفتوح عدد فروعه المرئية، ويسجّل العنصر المغلق العدد نفسه بالسالب كما سيظهر لو فُتح، ويسجّل جذر المخطط التفصيلي عدد العناصر المرئية في البداية

Default value: false

 

Code Example

program Outlines;
{$APPTYPE CONSOLE}
uses
  SysUtils,
  Graphics,
  Classes,
  HPDFDoc;
var
   I: Integer;
   HPDF: THotPDF;
   OutlineRoot: THPDFDocOutlineObject;
   CurrnetOutline: THPDFDocOutlineObject;
begin
  HPDF:= THotPDF.Create(nil);
  try
    HPDF.AutoLaunch := true;                                     // PDF file will be shown automatically
    HPDF.FileName := '.\Outlines.pdf';                           // Set PDF filename
    HPDF.BeginDoc( true );                                       // Create PDF file with outlines
    OutlineRoot := HPDF.OutlineRoot;                             // Get Outlines Root
    HPDF.CurrentPage.TextOut(0, 5, 0, '  Page 1 top');           // Mark first page top
    HPDF.CurrentPage.TextOut(0, 830, 0, '  Page 1 bottom');      // Mark first page bottom
    for I := 2 to 100 do
    begin
        CurrnetOutline := OutlineRoot.AddChild( 'Page ' + IntToStr(I - 1) );        // Add Outline block linked to 0,0 in current page
        CurrnetOutline.Opened := true;                                              // This outline is opened
        CurrnetOutline.AddChild( 'Top ' );                                          // Add Outline linked to 0,0 in current page
        CurrnetOutline.AddChild( 'Bottom ', 0, 800 );                               // Add Outline linked to 0,800 in current page
        HPDF.AddPage;                                                               // ADD Next Page
        HPDF.CurrentPage.TextOut( 0, 5,  0,'  Page ' + IntToStr(I) + ' top' );      // Mark Next page top
        HPDF.CurrentPage.TextOut( 0, 830,  0,'  Page ' + IntToStr(I) + ' bottom' ); // Mark Next page bottom
    end;
    CurrnetOutline := OutlineRoot.AddChild( 'Page 10 ' );        // ADD last  Page
    CurrnetOutline.AddChild( 'Top ' );                           // Add Outline linked to 0,0 in last page
    CurrnetOutline.AddChild( 'Bottom ', 0, 830 );                // Add Outline linked to 0,830 in last page
    HPDF.EndDoc;                                                 // Close PDF file
  finally
      HPDF.Free;
  end;
end.