Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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.007 c
7-78696
cdaDmitriy
2002-08-15 15:12
2002.10.24
TRAY


3-78270
yaJohn
2002-10-02 13:15
2002.10.24
Оптимизация МИДАС.


1-78396
Эрик
2002-10-12 09:37
2002.10.24
Edit.Text?


1-78465
Sego
2002-10-12 18:54
2002.10.24
TreeView


14-78597
Карлсон
2002-10-01 21:37
2002.10.24
мужики, и дамы тоже....





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский