Otevřít hlavní menu

Změny

TextWidth

Přidáno 1 490 bajtů, 4. 10. 2012, 17:40
Created page with "Vrací šířku řetězce v pixelech. ;Deklarace function TextWidth(TextString: string): Word; ;Režim :Reálný, Chráněný ;Poznámky :Zjišťuje šířku [[TextString]..."
Vrací šířku řetězce v pixelech.

;Deklarace
function TextWidth(TextString: string): Word;

;Režim
:Reálný, Chráněný

;Poznámky
:Zjišťuje šířku [[TextString]] na základě délky řetězce, velikosti aktuálního fontu a případného násobícího činitele zvětšení. Výsledek můžete použít pro určení velikosti výřezu a pro jakékoli vkládání textu do plochy s omezením vodorovného rozměru.

:Například s bitmapovým fontem 8x8 a s násobícím činitelem 1 (nastaveným pomocí [[SetTextStyle]]) bude řetězec Turbo 40 pixelů široký.

:Používejte tuto funkci místo manuálních propočtů i v takovýchto jednoduchých případech, ušetříte si práci při případné změně fontu (nebude nutné upravovat zdrojový text).

;Omezení
:Je nutno být v grafickém režimu.

;Viz také
:[[OutText]]

:[[OutTextXY]]

:[[SetTextStyle]]

:[[TextHeight]]


Vzorový příklad

{Txtwidth.PAS}
{Vzorový příklad pro funkci TextWidth.}
uses Graph;
var
Gd, Gm: Integer;
Row: Integer;
Title: String;
Size: Integer;
begin
Gd := Detect;
InitGraph(Gd, Gm, ' ');
if GraphResult <> grOk then
Halt(1);
Row := 0;
Title := 'Turbo Graphics';
Size := 1;
while TextWidth(Title) < GetMaxX do
begin
OutTextXY(0, Row, Title);
Inc(Row, TextHeight('M'));
Inc(Size);
SetTextStyle(DefaultFont, HorizDir, Size);
end;
Readln;
CloseGraph;
end.
[[Category:Graph]]
[[Category:Procedúry Graph]]