THPDFPage.UserWidth

THPDFPage

 

傳回頂部  上一頁  下一頁

以繪圖單位傳回頁面寬度,單位是 1/THotPDF.Resolution 英吋

 

Delphi 語法:

property UserWidth: Single; // read-only

 

C++ syntax:

__property float UserWidth = {read=GetUserWidth};

 

說明

X 座標、邊界、字型大小,以及 TextWidth 和 TextHeight 的傳回值,都以 1/Resolution 英吋為單位。Width 用 point 記錄頁面寬度,設定時吃的也是 point,所以 Resolution 不是 72 時,它跟繪圖用的座標對不上。只要要把頁面寬度拿來跟繪圖座標比較或混算,就該讀 UserWidth,例如找出右邊界的位置、把區塊置中,或判斷內容什麼時候該搬到下一頁

Resolution 是預設值 72 時,UserWidth 等於 Width。靠設定 Width 和 Height 決定大小的頁面,不管 Resolution 是多少都用 point 繪製,這時 UserWidth 同樣等於 Width

 

Code Example

program RightAlignedText;
{$APPTYPE CONSOLE}
uses
  SysUtils,
  HPDFDoc;

var
  HPDF: THotPDF;
  Text: AnsiString;
  X: Single;

begin
  HPDF:= THotPDF.Create(nil);
  try
    HPDF.FileName:= 'RightAlignedText.pdf';
    HPDF.Resolution:= 144;                    // Coordinates in 1/144 inch
    HPDF.BeginDoc;
    HPDF.CurrentPage.SetFont('Arial', [], 24); // 12 pt
    Text:= 'Right aligned with a one inch margin';
    // UserWidth is 1190 on an A4 page here; Width stays 595 points
    X:= HPDF.CurrentPage.UserWidth- 144- HPDF.CurrentPage.TextWidth(Text);
    HPDF.CurrentPage.TextOut(X, 144, 0, Text);
    HPDF.EndDoc;
  finally
    HPDF.Free;
  end;
end.

 

請參閱: Width, UserHeight, THotPDF.Resolution