Форум: "Основная";
Текущий архив: 2003.12.19;
Скачать: [xml.tar.bz2];
ВнизПринтер Найти похожие ветки
← →
hooky-mars (2003-12-02 18:50) [0]Saluer!
Есть к примеру текст. В блокноте но выглядит вот так:
......................................
| Наименование | ФИО |
......................................
|sadasdaDASasd |dsfsdfsdfsdfsd |
|sadasdasdasdasdad |asdasdasd |
Но при пичати такого текста, когда принтер открывается как текстовый, поля сбиваются, как решить эту проблему, а принтер надо открывать именно как текстовый. Из блокнота нормально печетает(но там принтер может открыватся как графический файл).
← →
Тимохов (2003-12-02 18:51) [1]Печатай шрифтом courier
← →
hooky-mars (2003-12-02 18:56) [2]
> Тимохов (02.12.03 18:51) [1]
Я печатаю так:
AssignPrn(f);Rewrite(f);
for i:=1 to Length(FileList.Text) do
Write(f,FileList.Text[i]);
CloseFile(f);
Как тут задать шрифт?
← →
hooky-mars (2003-12-02 19:01) [3]Кстати про текст, когда вставлял в форум был нормальный а теперь посбивался.
← →
Тимохов (2003-12-02 19:04) [4]если хочется печатать с сохранением ширины то, нужно печатать соответствующим шрифтом. Одним из таких шрифтов является courier. Как ты печатаешь, я никогда не печатал - печать всегда делал через Printer.Canvas. Поэтому ответить как сделать в твоем случае не могу - не знаю.
← →
panov (2003-12-02 19:05) [5]http://delphimaster.net/view/7-1069845942/
← →
hooky-mars (2003-12-02 19:15) [6]
> panov © (02.12.03 19:05) [5]
Ни когда так не работал, можно самый захудалый примерчик?
← →
Тимохов (2003-12-02 19:18) [7]Во, блин, готовые решения им подавай :(((
← →
hooky-mars (2003-12-02 19:21) [8]
> Тимохов (02.12.03 19:18) [7]
Мне достаточно вывода на печать одной строки по вашему методу. Нехочееш пример писать обясти напальцах.
← →
panov (2003-12-02 19:23) [9]>hooky-mars (02.12.03 19:21) [8]
По ссылке ведь есть пример.
← →
Тимохов (2003-12-02 19:24) [10]1. uses Printers
2. printer.canvas.textout(X, Y: Integer; const Text: string);
3. При этом изучаешь много всякого добра (типа GetDeviceCaps(Printer.Handle, ...)) с целью выяснения как правильно рассчитывать координаты и т.д.
← →
hooky-mars (2003-12-02 19:26) [11]Printer.Fonts.Text:="courier" Если шрифт устанавивается так, то помогло не намного, только размещени выравнялось
← →
hooky-mars (2003-12-02 19:36) [12]
> panov © (02.12.03 19:23) [9]
В глаза не вижу, там только рекомендации
← →
hooky-mars (2003-12-02 19:48) [13]
> Тимохов (02.12.03 19:24) [10]
А ето разве не печать как графику? Мне надо печатать как под досом
← →
Тимохов (2003-12-02 19:51) [14]1. Ну в общем-то, да - это графическая печать.
Ну в общем не силен я в текстовой печати по windows - никогда не делал.
2. Panov привел ссылку, где описано как печатать. Один из ответов там "3. Использовать ESC-последовательности для управления выводом н печать для онкретного принтера." Так что, изучайте указанные последовательности и вперед!
← →
hooky-mars (2003-12-02 19:52) [15]
> Тимохов (02.12.03 19:24) [10]
Такой инфы у меня на винте выше крыши, но мне надо, опять таки, чтобы скорость печати была такаяже как и под Досом, а печатается все это на матричном принторе Epson!
← →
hooky-mars (2003-12-02 19:54) [16]
> Тимохов (02.12.03 19:51) [14]
Спасибо на добром слове. Я хотябы надеюсь что у Epson`овских принтеров эти последовательности одинаковые
← →
hooky-mars (2003-12-02 19:57) [17]
> ESC-последовательности для управления выводом н печать
А иде по этому найти инфу, что оце такок вообще?
← →
Anatoly Podgoretsky (2003-12-02 20:03) [18]Оставь надежду всяк сюда входящий, ищи документацию на принтер.
← →
hooky-mars (2003-12-05 17:58) [19]Проблему с выравниванием я решил так:
AssignFile(f, "LPT1");
try
Rewrite(f);
for i:=0 to Memo1.Lines.Count-1 do
Writeln(f, Memo1.Lines.Strings[i]);
finally
CloseFile(f);
end;
Но появляется другая проблема,за место русских символов пичатает оброкодабру, но преревод в дос кодировку не помогает(CharToOem). Что можно придумать?
← →
Amoeba (2003-12-05 18:57) [20]А если вспомнить про AssignPrn?
F1
← →
hooky-mars (2003-12-05 19:00) [21]
> Amoeba © (05.12.03 18:57) [20]
СМ. выше. Печатает по русски, но пробла с выравниванием(а с ECS возится не охота);
← →
Amoeba (2003-12-05 19:06) [22]Наверное придется все-таки повозиться. Без труда не вытащишь и рыбку из пруда.
← →
panov (2003-12-05 19:43) [23]Могу посоветовать еще воспользоваться системными функциями копирования - copy /b <FileName> <Path to printer>
Ещевариант - использовать Generic-драйвер для принтера
← →
hooky-mars (2003-12-06 12:44) [24]
> panov © (05.12.03 19:43) [23]
Cлышал об этом но опять таки не незнаю что тут делать(всмысле написать свой драйвер для работы под дос). Где искать инфу?
← →
panov (2003-12-06 16:27) [25]>hooky-mars (06.12.03 12:44) [24]
Не надо писать свой драйвер.
В диалогу установки нового принтера выбери среди списка производителей "Generic". Установи и экспериментируй.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.12.19;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.015 c