Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];
ВнизПечать из делфи (вертикально) Найти похожие ветки
← →
Shrek (2002-10-12 20:01) [0]Народ помогите напечатать текст вертикально.
← →
Pat (2002-10-12 22:01) [1]Если используешь QReport - альбомное расположение листа
← →
Song (2002-10-13 10:31) [2]В каком компоненте? или на принтер?
← →
Shrek (2002-10-13 15:41) [3]
> Pat
Есть тектс горизонтальный и вертикальный на одном листе!
> Song
На принтер!!
← →
Song (2002-10-13 15:53) [4]TCanvas.TextOut()
← →
Shrek (2002-10-13 16:00) [5]
> Song
TCanvas.TextOut() - мы наверно не понимаем друг друга и это моя вина, надо текст повернуть на 90 градусов.
← →
alxx (2002-10-13 16:03) [6]Вот. Списал кое-откуда, но не пробовал работает ли.
var
Hfont: Thandle;
logfont:TLogFont;
font: Thandle;
count: integer;
begin
LogFont.lfheight:=30;
logfont.lfwidth:=10;
logfont.lfweight:=900;
LogFont.lfEscapement:=-200;
logfont.lfcharset:=1;
logfont.lfoutprecision:=out_tt_precis;
logfont.lfquality:=draft_quality;
logfont.lfpitchandfamily:=FF_Modern;
font:=createfontindirect(logfont);
Selectobject(Form1.canvas.handle,font);
SetTextColor(Form1.canvas.handle,rgb(0,0,200));
SetBKmode(Form1.canvas.handle,transparent);
{textout(form1.canvas.handle,10,10,"Повернутый",7);}
for count:=1 to 100 do
begin
canvas.textout(Random(form1.width),Random(form1.height),"Повернутый");
SetTextColor(form1.canvas.handle,rgb(Random(255),Random(255),Random(255)));
end;
deleteobject(font);
end;
← →
Shrek (2002-10-13 17:12) [7]>> alxx Большое спасибо тебе, проси шо хоч.
немного поработал и получилось процедура:
procedure TextOutVer(x, y: Integer; Text: String; Rotate: Integer);
var
Hfont: Thandle;
LogFont: TLogFont;
Font: Thandle;
begin
Logfont.lfUnderline := 0;
Logfont.lfStrikeOut := 0;
Logfont.lfItalic := 0;
Logfont.lfWeight := 5;
Logfont.lfHeight := 100;
Logfont.lfwidth := 0;
LogFont.lfEscapement := Rotate * 10;
Logfont.lfcharset := 1;
Font := CreateFontIndirect(LogFont);
Printer.BeginDoc;
Selectobject(Printer.Canvas.Handle, Font);
Printer.Canvas.textout(x, y, Text);
Printer.EndDoc;
Deleteobject(Font);
end;
здесь можно делать много настроек.
это для принтера, а для формы тоже самое главное выбрать handle.
Использование:
TextOutVer(1000, 1000, "Этот текст пичатается по углом 45 градусов", 45);
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c