Главная страница
    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.008 c
14-78617
Calmterror
2002-10-01 16:16
2002.10.24
Новый форум


14-78637
Troll
2002-10-03 18:04
2002.10.24
Console???


1-78360
Rammst
2002-10-14 21:04
2002.10.24
Form


3-78253
Prooksius
2002-10-02 10:25
2002.10.24
Не работает запрос...


3-78295
Fishka
2002-09-30 12:06
2002.10.24
Добавить новый лист в EXCEL





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский