Как распечатать кириллицу?

  • Автор темы maksimus
  • Дата начала
M

maksimus

Необходимо печатать текст с помощью:

var
f:textfile;
begin
assignfile(f,'lpt1');
rewrite(f);
writeln(f,'хххххх');
closefile(f);
end.

где ххххххх- текст написанный русскими буквами.
Но при распечатке получается абракадабра.
Подскажите, кто знает, плиз, каким образом с помощью этой процедуры распечатать русские буквы.
 
A

admin

maksimus
это ты на поскале делаешьь?
просто не все принтеры печатают кириллицу из DOS насколько я знаю.
 
M

maksimus

<!--QuoteBegin-QUOTE+Серёга-->
<span class="vbquote">(QUOTE @ Серёга)</span><!--QuoteEBegin-->maksimus
это ты на поскале делаешьь?[/quote]
Нет это в Delphi
 
B

Barmutik

Ну тогда есть такой объект TPrinter... который заведует принтерами.. через него всё можно и печатать...

У меня вроде не было проблем с русскими буквами .. попробуй .. если останутся спрашивай подробнее ...
 
M

maksimus

<!--QuoteBegin-Barmutik+30:01:2005, 11:15 -->
<span class="vbquote">(Barmutik @ 30:01:2005, 11:15 )</span><!--QuoteEBegin-->Ну тогда есть такой объект TPrinter... который заведует принтерами.. через него всё можно и печатать...

У меня вроде не было проблем с русскими буквами .. попробуй .. если останутся спрашивай подробнее ...[/quote]
TPrinter печатает строку за два прохода, а мне нужно печатать одну строку в один проход (при возврате каретки должна печататься вторая строка).
 
A

admin

maksimus
странно
может это зависит не от Tprinter а от качества печати которое стоит?
по умолчанию на каждом принтере струином винда ставит среднее качество печати за 2 прохода, за 1 проход - низкое.
я с печатью особо не заморачивался никогда, но может просто TPrinter берет дефолтные драиверовые настройки Windows?
 
M

maksimus

<!--QuoteBegin-Серёга+30:01:2005, 15:00 -->
<span class="vbquote">(Серёга @ 30:01:2005, 15:00 )</span><!--QuoteEBegin-->maksimus
странно
может это зависит не от Tprinter а от качества печати которое стоит?
по умолчанию на каждом принтере струином винда ставит среднее качество печати за 2 прохода, за 1 проход - низкое.
я с печатью особо не заморачивался никогда, но может просто TPrinter берет дефолтные драиверовые настройки Windows?[/quote]
Забыл отметить: программа будет работать в банке, принтер матричный, печать на рулонах, заранее не известен объем печатаемой информации
 
B

Barmutik

TPrinter сам конкретно ничего не печатает .. он лиш передаёт виндозному объекту принтера упралвющие команды ..

Так что он непосредственно ниrак не управляет сколькими проходами печатать .. судя по всему (как уже выше указали Вам) это
зависит от настроек качества печати Вашего принтера.. Никто Вам не мешает конкретно на Ваш сеанс печати ставить другие настройки
через тот же объект TPrinter
 
M

maksimus

<!--QuoteBegin-Barmutik+30:01:2005, 18:27 -->
<span class="vbquote">(Barmutik @ 30:01:2005, 18:27 )</span><!--QuoteEBegin-->TPrinter сам конкретно ничего не печатает .. он лиш передаёт виндозному объекту принтера упралвющие команды ..

Так что он непосредственно ниrак не управляет сколькими проходами печатать .. судя по всему (как уже выше указали Вам) это
зависит от настроек качества печати Вашего принтера.. Никто Вам не мешает конкретно на Ваш сеанс печати ставить другие настройки
через тот же объект TPrinter[/quote]
Подскажите, пожалуйста, каким образом можно настроить качество печати? Может есть какой-нибудь исходничек?
 
B

Barmutik

Установка качества печати задача специфичная для каждого вида принтера .. я бы сказал даже для каждого драйвера принтера..

Я если мне нужно было настроить размер бумаги и качество печати обычно просто вызывал диалог опций принтера, там настраивал требуемые настройки и потом печатал...

Я думаю что если требуется настраивать конкретно один параметр то следует ковыряться в низкоуровневых виндозных функциях и драйвере принтера.
 
M

maksimus

Всем огромное спасибо за помощь.
Я уже разобрался сам.
Это оказалось элементарно: chartooem(х,b), а дальше writeln(f,b).
 
A

admin

maksimus
одна фигня
у тебя это не будет на USB принтерах тогда работать по идее :)
 
B

Barmutik

Да нет .. вопрос вообще не в том ... он просто из ДОС в Виндовс кодировку перевёл и всё ...

К принтеру и вообще к печати это никакого отношения не имеет ...
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!