Показать сообщение отдельно
Старый 19.05.2009, 09:50   #46
AVIZO
Нуждающийся
 
Регистрация: 16.11.2006
Сообщений: 56
Написано 9 полезных сообщений
(для 29 пользователей)
Ответ: Lib_font32: Графические шрифты

Сам пользую такую функцию вывода текста с принудительными переносами. В архиве мидлет в котором используется такая функция.

//многострочное отображение длинной строки
//st - строка; x, y координаты вывода; w, h - ширина и высота в буквах!!!; dlt - пропустить строк
function DrawLongStr(st : string; x, y : integer; w, h : integer; dlt : integer) : boolean;
var
s, ss : string;
i, j, n : integer;
prn : integer;
begin
DrawLongStr := true;
if dlt > 0 then
begin
n := w * dlt;
s := Copy(st, n, Length(st));
end
else
s := st;

for i := 1 to h do
begin
if Length(s) < w then
begin
DrawString(s, x, y + ((i - 1) * h_ltr));
DrawLongStr := false;
Break;
end;
ss := Copy(s, 0, w);

//принудительные переносы!!!
prn := -1;
prn := pos(ss, perenos);
if prn > -1 then
begin
ss := Copy(s, 0, prn);
prn := prn + 1;
end
else
prn := w;

s := Copy(s, prn{w}, Length(s));
DrawString(ss, x, y + ((i - 1) * h_ltr));
end;
end;
Вложения
Тип файла: zip AUTOVIN.zip (38.3 Кб, 674 просмотров)
(Offline)
 
Ответить с цитированием