使用 Opened property 開啟(true value)outline item 或關閉(false value)outline item

THPDFDocOutlineObject

 

傳回頂部  上一頁  下一頁

Determines whether the current outline item is opened.

 

Delphi 語法:

property Opened : boolean;

 

C++ 語法:

__property bool Opened;

 

說明

使用 Opened property 開啟(true value)或關閉(false value)outline item

狀態可以在加入子項目之前或之後設定。寫出文件時,開啟的項目會記錄可見後代的數量,收合的項目則記錄展開時會顯示數量的負值,大綱根節點則記錄一開始可見的項目數

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.