На codeguru был пример класса, который печатает по одной строчке по мере поступления этих строчек (типа записи в лог — только на бумагу). соответсвенно напечатал — и ждет пока ему не скажут еще ченить печатать, страницу не крутит. Поищи, может это оно
Re[3]: Помогите с печатью !!!
От:
Аноним
Дата:
28.02.03 05:31
Оценка:
Здравствуйте, CVB, Вы писали:
CVB>после отработки ф-ции EndDocPrinter идет прокрутка . Если же ф-цию убрать то не печатает.
Непонятно, чего вы хотите?
Напечатать строку, но оставить бумагу в принтере? Так это невозможно, например, с лазерниками. Он не печатает построчно, он печатает только страницу целиком и сразу после этого ее выплевывает.
Пока не закончите страницу/документи явно об этом не сообщите вызовом EndDocument, принтер ничего печатать не будет, а будет ждать, когда же вы закончите.
Уточните задание
Re[4]: Помогите с печатью !!!
От:
Аноним
Дата:
28.02.03 05:35
Оценка:
Здравствуйте, IPv6, Вы писали:
IP>На codeguru был пример класса, который печатает по одной строчке по мере поступления этих строчек (типа записи в лог — только на бумагу). соответсвенно напечатал — и ждет пока ему не скажут еще ченить печатать, страницу не крутит. Поищи, может это оно
Прикольно. И с лазерниками эта программа тоже работает? Интересно, как? Лазерник же целиком страницу печатает и сразу же ее выплевывает. Может, страницу сразу после того надо снова заправлять в принтер?
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, IPv6, Вы писали:
IP>>На codeguru был пример класса, который печатает по одной строчке по мере поступления А>Прикольно. И с лазерниками эта программа тоже работает? Интересно, как? Лазерник же целиком страницу печатает и сразу же ее выплевывает. Может, страницу сразу после того надо снова заправлять в принтер?
ХЗ я помню что читал описание
На каком принтере печатаешь? Ибо, к примеру, на лазернике ето просто не возможно, "page oriented model", так скать. Даже более низкоуровненые средства типа HPGL, PCL, PCL XL не помогут.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, CVB, Вы писали:
CVB>>после отработки ф-ции EndDocPrinter идет прокрутка . Если же ф-цию убрать то не печатает. А>Непонятно, чего вы хотите? А>Напечатать строку, но оставить бумагу в принтере? Так это невозможно, например, с лазерниками. Он не печатает построчно, он печатает только страницу целиком и сразу после этого ее выплевывает. А>Пока не закончите страницу/документи явно об этом не сообщите вызовом EndDocument, принтер ничего печатать не будет, а будет ждать, когда же вы закончите. А>Уточните задание
Я печатаю на Матричном принтере.
Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.
Здравствуйте, CVB, Вы писали:
CVB>Как напечатать 1-ну строчку на формате А4 без прокрутки до конца листа после печати!!!
Я печатаю на Матричном принтере.
Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.
Здравствуйте, Patalog, Вы писали:
P>Здравствуйте, CVB, Вы писали:
P>[]
P>Хм, а сразу задать страницу нужного размера не подходит?
Пока так и реализовано.
Но это немного не то.
Может кто знает как через DEVMODE можно задать размер.
В MSDN-не написано надо поставить dmPaperSize = 0 и тогра через dmPaperLength и dmPaperWidth можно задавать размер.
При изменении этих пораметров ничего не происходит. Какая бумага до этого была такая и осталась.
Здравствуйте, CVB, Вы писали:
CVB>Здравствуйте, Аноним, Вы писали:
А>>Здравствуйте, CVB, Вы писали:
CVB>>>после отработки ф-ции EndDocPrinter идет прокрутка . Если же ф-цию убрать то не печатает. А>>Непонятно, чего вы хотите? А>>Напечатать строку, но оставить бумагу в принтере? Так это невозможно, например, с лазерниками. Он не печатает построчно, он печатает только страницу целиком и сразу после этого ее выплевывает. А>>Пока не закончите страницу/документи явно об этом не сообщите вызовом EndDocument, принтер ничего печатать не будет, а будет ждать, когда же вы закончите. А>>Уточните задание
CVB>Я печатаю на Матричном принтере. CVB>Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.
Понятно. Никогда с таким заданием не сталкивался, могу дать только общий совет. Если у тебя не работает, то либо принтер это не поддерживает, либо ты что-то неправильно делаешь. Я бы на твоем месте внимательно читал Help на каждую вызываемую функцию и пытался анализировать возвращаемые ошибки.
Например, DeleteForm возвращает BOOL и об ошибке можно узнать, вызвав GetLastError. Пробовал? Что GetLastError говорит?
Здравствуйте, Serguei666, Вы писали:
S>Здравствуйте, CVB, Вы писали:
CVB>>Здравствуйте, Аноним, Вы писали:
А>>>Здравствуйте, CVB, Вы писали:
CVB>>>>после отработки ф-ции EndDocPrinter идет прокрутка . Если же ф-цию убрать то не печатает. А>>>Непонятно, чего вы хотите? А>>>Напечатать строку, но оставить бумагу в принтере? Так это невозможно, например, с лазерниками. Он не печатает построчно, он печатает только страницу целиком и сразу после этого ее выплевывает. А>>>Пока не закончите страницу/документи явно об этом не сообщите вызовом EndDocument, принтер ничего печатать не будет, а будет ждать, когда же вы закончите. А>>>Уточните задание
CVB>>Я печатаю на Матричном принтере. CVB>>Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.
S>Понятно. Никогда с таким заданием не сталкивался, могу дать только общий совет. Если у тебя не работает, то либо принтер это не поддерживает, либо ты что-то неправильно делаешь. Я бы на твоем месте внимательно читал Help на каждую вызываемую функцию и пытался анализировать возвращаемые ошибки. S>Например, DeleteForm возвращает BOOL и об ошибке можно узнать, вызвав GetLastError. Пробовал? Что GetLastError говорит?
Пробовал... Говорит неправьльно задан параметр. А что именно неправильно заданоо не понятно так как те пораметры которые задаются в них ошибиться никак не возможно .
Здравствуйте, CVB, Вы писали:
CVB>Я печатаю на Матричном принтере. CVB>Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.
А почему не используеися raw text? Или есть ограничения?
Здравствуйте, CVB, Вы писали:
S>>Понятно. Никогда с таким заданием не сталкивался, могу дать только общий совет. Если у тебя не работает, то либо принтер это не поддерживает, либо ты что-то неправильно делаешь. Я бы на твоем месте внимательно читал Help на каждую вызываемую функцию и пытался анализировать возвращаемые ошибки. S>>Например, DeleteForm возвращает BOOL и об ошибке можно узнать, вызвав GetLastError. Пробовал? Что GetLastError говорит?
CVB>Пробовал... Говорит неправьльно задан параметр. А что именно неправильно заданоо не понятно так как те пораметры которые задаются в них ошибиться никак не возможно .
Есть еще функция FormatMessage — вы просите систему дать вам описание ошибки — и система вам дает внятный текст. Попробуйте посмотреть, чего эта фунция вам вернет. Может, какую полезную инфу, по которой можно будет догадаться
Здравствуйте, v_su, Вы писали:
VS>Здравствуйте, CVB, Вы писали:
CVB>>Я печатаю на Матричном принтере. CVB>>Например если я вручную добавлю страницу через AddForm 20х5 см то печатая даже на на листе формата А4 принтер не прокручивает лист доконца а только на 5 см.Единственный недостаток этого способа, это неотробатывание ф-ции DeleteForm на матричном принтере (на лазерном работает).Ко мне поступает текс различной длинны (от 5 до 100 строк).Мне нужно его распечатать на матричном принтере (с перфорацией — рулон) так чтоб между различным текстом был отступ 2-ве строки без прокрутки по формату страницы.
VS>А почему не используеися raw text? Или есть ограничения?
VS>