Форум: "Основная";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];
ВнизЗагнулась кисть канвы принтера Найти похожие ветки
← →
Danja12 (2006-07-06 09:19) [0]При печати полигонов со стилем кисти отличным от bsSolid или bsClear заливка всегда одна и та же (непонятно какая). При этом на изображение не влияют также: CopyMode, Brush.Color, Brush.Bitmap. Хотя на экране все нормально, а процедура вывода информации на экран и на принтер одна и таже. Но Канвы то разные... Код практически не менялся, а вот на машине ПО обгрейчивалось, браузеры и т.д. Если кто сталкивался, помогите. Заранее благодарен.
← →
MBo © (2006-07-06 10:16) [1]это фундаментальная проблема - узорные кисти используют разрешение устройства, при этом 8 пикселов на экране - нормально, а на лазернике с 600dpi - сливаются.
← →
Danja12 (2006-07-06 11:33) [2]Да, проблема то втом, что аппаратная часть не менялась, и какое то время назад все работало. Тем паче, что программа стоит на десятках рабочих мест с разными (струйными и лазерными) принтерами. И все было нормально. Сейчас провел эксперимент: откопал exe-шник 2003 г. запустил - глюк присутствует, хотя в 2003 заведомо все работало. Т.е. дело в Виндах или каких либо библиотеках. Все равно, спасибо за ответ. Я редко здесь бываю, но каждый раз, первый ответ Ваш, еще раз спасибо.
← →
MBo © (2006-07-06 11:57) [3]>Т.е. дело в Виндах или каких либо библиотеках.
Возможно, драйвер принтера поддерживал правильное рисование узорных кистей, а теперь сменился.
← →
Danja12 (2006-07-06 12:11) [4]>Возможно, драйвер принтера поддерживал правильное рисование узорных кистей, а теперь сменился.
Сразу у всех? Я в чудеса такого порядка не верю. А вот в то что вышел какой-нибудь новый DirectX, и все его тут же поставили - верю. Причем лично наблюдал такую картину: приношу свой проект на новенький ноутбук в организацию, там компилирую, печатаю - все Ок. Через пару дней его работы в сети, он печатает как и остальные. Кто и что на него ставил отследить затруднительно - раздолбайство в бюджетных контторах российской глубинки то еще.
Вопрос: а не хранится ли информация о кистях где-нибудь отдельно? Я dll-ки и шрифты просто пишу в каталог запуска и не имею никаких проблем, а в реестр никогда ничего не пишу. Вот бы и с кистями файлик таскать вместе с exe-шником.
← →
MBo © (2006-07-06 12:25) [5]Ну не знаю. С принтером у меня опыт минимальный.
Для вывода картинок с узорными кистями использовал растяжение картинки StretchBlt, а также писал когда-то свою процедуру вывода заштрихованных многоугольников.
← →
Danja12 (2006-07-06 13:58) [6]У меня картографический редактор. Печать идет в точном масштабе (очень точном :) Стрейчи впринципе использовать нельзя. Штриховки, поначалу, использовались для печати карт в черно-белом варианте. Специально держались как минимум два цветовых набора: цветной для работы и ч\б для печати "оперативных выкопировок". Впоследствии штриховки использовали и в цвете: меньше чернил, меньше аляповатости на экране. Ну, на экране то, и сейчас все нормально, а некоторое время не печатали, и вдруг глюк. Софт (мой) все время корректируется, добавляются новые функции, которые требуются начальству. Но систему печати как написал один раз, так больше и не трогал. Удачная получилась, много удачней чем в Автокаде, для карт по крайней мере.
А какова основная идея своей процедуры вывода заштрихованных многоугольников, если это не технологический секрет и не коммерческая тайна? Я то стандартными методами канвы обходился до этого. Но сейчас заказали для линейных объектов нестандартные типы линий - произвольные как в Автокаде. Может и площадные самостоятельно обрабатывать.
Извиняюсь что так много. Редко когда меня инструментарий так достает, но вот сейчас, действительно прижало.
← →
MBo © (2006-07-06 14:20) [7]>А какова основная идея своей процедуры вывода заштрихованных многоугольников
По набору вершин строится регион CreatePolygonRgn
Для графического контекста устанавливается регион отсечения SelectClipRgn
Далее просто рисование линий (наклонных или каких нужно) в ограничивающем прямоугольнике региона (GetRgnBox) с заданным шагом (рассчитывается из dpi)
← →
danja12 (2006-07-06 15:08) [8]Да, действительно. Я этот метод использую для впечатывания куска карты в какой-либо документ. Надо будет попробовать. Не скажется ли, вот только, на скорости отрисовки. Иногда приходится оперировать десятками и сотнями тысяч объектов. С другой стороны, больше чем на А3 не печатаем, а на больших масштабах (1:500, 1:100) объектов меньше десятка.
Спасибо. Как глоток свежего воздуха, в смысле, пообщаться с умным человеком. А то у меня периодически возникает ощущение, что у нас в городе я - единственный программист. Остальные либо только базы данных, либо то, что удается в визуальной среде натаскать, не залезая в код, либо уж совсем "крутые хакеры", которым не интересны подобные проблемы.
← →
danja12 (2006-07-06 16:18) [9]Кстати, пробовал печатать с меньшим разрешением и 300 и 150 и 75. Те же яйца, только в профиль. Результат стабильный, отличающийся от разрешения в 600, но, увы, неверный, а жаль :(
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.044 c