THPDFPage.UserWidth

THPDFPage

 

Top  Previous  Next

Возвращает ширину страницы в единицах рисования — 1/THotPDF.Resolution дюйма

 

Синтаксис Delphi:

property UserWidth: Single; // read-only

 

Синтаксис C++:

__property float UserWidth = {read=GetUserWidth};

 

Описание

Координаты X, отступы, размеры шрифтов и значения, которые возвращают TextWidth и TextHeight, задаются в 1/Resolution дюйма. Width хранит ширину страницы в пунктах и принимает пункты при установке, поэтому при Resolution, отличном от 72, она не совпадает с координатами, которыми вы рисуете. Читайте UserWidth всегда, когда сравниваете ширину страницы с координатами рисования или комбинируете их: например, чтобы найти правую границу поля, отцентрировать блок или решить, когда контент должен перейти на следующую страницу

При Resolution по умолчанию 72 UserWidth равен Width. Страница, размер которой задан установкой Width и Height, рисуется в пунктах при любом Resolution, и UserWidth тогда тоже равен Width

 

Пример кода

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