THPDFPage.UserWidth

THPDFPage

 

Arriba  Anterior  Siguiente

Devuelve el ancho de la página en unidades de dibujo, 1/THotPDF.Resolution de pulgada

 

Sintaxis Delphi:

property UserWidth: Single; // read-only

 

Sintaxis C++:

__property float UserWidth = {read=GetUserWidth};

 

Descripción

Las coordenadas X, los márgenes, los tamaños de font y los valores que devuelven TextWidth y TextHeight están en 1/Resolution de pulgada. Width guarda el ancho de la página en points y acepta points al asignarlo, así que con una Resolution distinta de 72 no coincide con las coordenadas con las que dibujan. Lean UserWidth siempre que comparen o combinen el ancho de la página con coordenadas de dibujo, por ejemplo para ubicar el borde del margen derecho, centrar un bloque o decidir cuándo el contenido debe pasar a la página siguiente

Con la Resolution por defecto de 72, UserWidth es igual a Width. Una página dimensionada asignando Width y Height dibuja en points sin importar la Resolution, y UserWidth también queda igual a Width

 

Ejemplo de código

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.

 

Ver también: Width, UserHeight, THotPDF.Resolution