Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.04.2010, 02:14   #1
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию Черная заливка вместо изображения

Есть своя реализация предпросмотра перед печатью, все работает как надо, потом когда юзер меняет в настройках принтера размер бумаги, начинают происходить чудеса, часть изображения просто черная, а видимая часть отмасштабирована с неправильным коэффициентом, меньше чем нужно, остальная часть собственно вся черная. Также артефакты от прошлых отрисовок откуда-то берутся. Создаю на базе принтера метафайл, обязательно заливаю белым цветом целиком его для очистки перед рисованием, однако не срабатывает. Делал отладку, проверял все параметры, все в норме, однако глюки не могу найти откуда.

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

А, да, забыл, самое интересное, при печати все идеально, глюки только на экране.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 11.04.2010, 13:51   #2
IWTK
 
Регистрация: 28.07.2009
Сообщений: 4
По умолчанию

У меня была проблема с принтером. При печати на лист бумаги наносился тот же текст только с прозрачностью и с предыдущих распечаток тоже наносился. Хоть и не понял поможет тебе это или нет, но все же. Исправил заменой картриджа или как там его, не чернильный а порошковый.
Не бейте ногами я всего лишь учусь.
IWTK вне форума Ответить с цитированием
Старый 12.04.2010, 22:51   #3
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Вот скрин проблемы, здесь была смена размера страницы (в настройках принтера) с А4 на А5, если менять на больший размер, тоже приводит к багам. Нет бага только если закрыть программу, поменять размер бумаги и потом запустить опять, в этом случае корректно. Печатает корректно в любом случае.
http://www.imagebar.net/out.php/i76118_bug.png
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 13.04.2010, 10:07   #4
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Нашел источник проблемы. Хотя нек-рые настройки TPrinter обновляются (PageHeight и т.п.), метаканва TMetaCanvas.Create(Metafile, Printer) создается как будто из предыдущего состояния Printer, т.е. на эту часть Printer обновление не распространяется. Можно ли как-то полностью обновить TPrinter, без перезапуска программы?
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заливка Гуро Alenkakiss C++ Builder 1 07.03.2010 12:48
Черная полоса nitrous Компьютерное железо 1 18.05.2009 19:42
Чтение изображения из базы данных, Вместо изображения - "System.Byte[]" ruelCrow Общие вопросы .NET 3 10.07.2008 23:29
Заливка с допуском devi409 Общие вопросы Delphi 11 15.10.2007 06:57