Сообщение от PassCall
А вообще мне кажется что стандартный шрифт не поддерживает нормального переноса. Я както пытался совими силами сделать перенос - тоже квадратик. Вывод - юзай фонт_32.
|
На самом деле р̶у̶к̶и̶-̶б̶е̶л̶к̶и прямые руки (и MP3.x) рулят.
Процедура которая внедряет поддержку юниксовых (0x0D \ 10ый символ) переносов строк:
procedure DrawTextF(text: string; x, y: integer);
var s: string;
begin debug(text);
if Pos(text, #10) = -1 then DrawText(text, x, y)
else begin
s := Copy(text, 0, Pos(text, #10));
DrawText(s, x, y);
DrawTextF(Copy(text, Length(s)+1, Length(text)), x, y + GetStringHeight(s));
end;
end;
Пример использования:
begin
DrawTextF('Hello'#10'World!', 4, 4);
RePaint;
Delay(5000);
end.
Для MP2.x прийдется заменить <#10> на константу\переменную-строку и потом прибавлять ее через <+>.
__________________
Мой сайт-блог. Игры, обновления, примеры для Haxe, JavaScript(+HTML5), GameMaker, Love2d...