Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.07.24;
Скачать: [xml.tar.bz2];

Вниз

Печать на плоттер   Найти похожие ветки 

 
Maverick   (2003-05-14 09:38) [0]

Проблема в том, что при очередном выводе в Printer.Canvas программа вроде как зависает. Перед этим всё благополучно уходит. Может быть при выводе на плоттер есть какие-то свои особенности? Может быть стоит делать NextPage? А как тогда узнать, сколько элементов может влезть в этот плоттер?
Ещё одна проблема в том, что юзер с плоттером находится далеко и посмотреть, как всё это выглядит, я не могу. :(


 
Слесарь Матерящийся   (2003-05-14 11:32) [1]

IMHO, надо проверить на каком-либо принтере (не-плоттере, лучше поставить какой-нибудь "Epson Compatible 24pin", etc), предварительно перенаправив вывод в файл (порт FILE: спулера печати). Если всё пройдёт гладко (получим файл с данными печати), и ничего не повиснет, значит, в первом приближении, код не виноват.
Если код не виноват, то, возможно, дело в режиме вывода.
Постарайтесь не использовать операции таких типов, какие рендер не поддерживает (например, вывод растровой картинки на векторный плоттер).
Какие операции плоттер поддерживает - можно узнать с помощью ф-и GetDeviceCaps() WinAPI.
Ещё одна возможность - не использовать TCanvas, а рисовать прямо на hdc. IMHO, гораздо проще.

Плюс - если плоттер доступен через сеть, поставить его на локальном компе и перенаправить вывод в тот же порт FILE: - эта проверка поможет понять, всё ли в порядке с транспортом данных по сети.

Разумеется, всё это лишь предположения, делать именно так не обязательно, одним словом, IMHO...


 
Maverick   (2003-05-15 11:02) [2]

Да в том-то и дело, что у меня всё печатает прекрасно. В сетке несколько принтеров и проблем никаких не наблюдается.
В канвас же я вывожу как раз векторную графику (moveTo, lineTo).
А рисовать на hdc, как я понимаю, можно так же, как и на канвас, теми же функциями?


 
Слесарь Матерящийся   (2003-05-15 11:54) [3]

На hdc можно рисовать с помощью MoveToEx() и LineTo(), для создания пера - CreatePen() и для выбора пера - SelectObject(). Все функции - WinAPI. В остальном всё то же самое.


 
Maverick   (2003-05-16 10:19) [4]

Вы таки будете смеяться, но мне удалось уговорить пользователя переустановить драйвера и проблема вроде как исчезла! :)
Одно не понятно, другой софт, например AutoCAD, выводил на этот плоттер не смотря на кривость драйверов. Наверное, использовать winAPI лучше, чем tPrinter.



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.07.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
4-78202
vitall
2003-05-22 20:32
2003.07.24
ToolBar (ComCtrls)


4-78195
Zevsus
2003-05-22 11:33
2003.07.24
отловить WM_SPOOLERSTATUS


1-77996
Kostya
2003-07-11 17:54
2003.07.24
Помогите заставить IMAGE в дельфи принять размер


8-78010
pasha676
2003-04-02 10:58
2003.07.24
Торможу с рисованием в канвасе...


14-78050
Rulja
2003-07-08 14:15
2003.07.24
DCOM





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