Печатаются черные полосы вместо текста | |
---|---|
ou Автор Сообщений: 118 Дата регистрации: 07.08.2007 |
Здравствуйте, уважаемые коллеги!
Юзер жалуется, что вместо текста в одном репорте печатаются черные прямоугольники. Другие репорты печатаются нормально. Visual FoxPro 9.0. Принтер Konica Minolta C558. С точки зрения фокса единственная разница между проблемным и нормальными репортами в том, что проблемный выводится с reportbehavior 90, а остальные - с reportbehavior 80. Юзер говорит, что в превью всё видно нормально, черные прямоугольники - только на печати. Шрифт - самый что ни на есть обыкновенный Arial. Никаких экзотических настроек нет. Не может ли кто-нибудь подсказать, в какую сторону думать? |
Re: Печатаются черные полосы вместо текста | |
---|---|
of63 Сообщений: 25161 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
С шрифтами принтера что-то. А на другом принтере если печатать, то все нормально?
() Тексты русские, вероятно. Может, локаль нерусская |
Re: Печатаются черные полосы вместо текста | |
---|---|
ou Автор Сообщений: 118 Дата регистрации: 07.08.2007 |
Спасибо.
Язык везде английский. Шрифт в других репортах, действительно, другой. В основном, Franklin Gothic Medium. Мне всегда казалось, что обыкновеннее и распространённее Arial вряд ли что-нибудь есть... На каком-то другом принтере получили то же самое, но пока не сказали, что за принтер второй.До сих пор с этой репортовской формой вообще проблем не было. |
Re: Печатаются черные полосы вместо текста | |
---|---|
of63 Сообщений: 25161 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
По шрифтам я не в курсе, если честно. Я до сих пор считаю, что если оставить имя шрифта по умолчанию (в дизайнере рипорта, в поле, этот шрифт выглядит нежирным, т.е. не измененным разработчиком, то вроде бы проблем не будет, т.е. на конкретном компе юзера VFP подберет первый попавшийся шрифт (?). А вот если указать явно (хоть тот же Ариал, но явно), то я не понимаю, как ОС подбирает похожий при отсутствии оного на машине конкретного юзера...
|
Re: Печатаются черные полосы вместо текста | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Принтер (его драйвер) может пытаться выводить "широкоизвестный" шрифт своими силами, и обламываться на этом по самым разным причинам. Обычно сие происходит с кириллицей, и замена идёт на "абракадабру" а не на чёрную заливку.
Попробуй пошаманить с TTOPTION в самом отчёте (подробности есть в FAQ, да и поиском несложно найти). Попробуй ещё настройки принтера (драйвера) подёргать - может там собака порылась. ------------------ WBR, Igor |
Re: Печатаются черные полосы вместо текста | |
---|---|
akvvohinc Сообщений: 4201 Откуда: Москва Дата регистрации: 11.11.2008 |
Чтобы что-то подсказать, было бы неплохо глянуть на исходники этого отчета - frx- и frt-файлы. А так я бы экспериментировал с отчетом - для начала убрал бы из него все, кроме какого-то одного проблемного поля, а далее: 1) если результат нормальный, то добавил бы еще одно и т.д. 2) если результат ненормальный, то начал бы играть со значением и свойствами поля. Здесь можно также попробовать заново (с нуля) создать этот отчет с этим, пока единственным, проблемным полем. При этом не пользоваться копипастом из старого отчета. Фантастики не бывает (или бывает, но очень редко) - в какой-то момент при этих экспериментах что-нибудь да "сыграет", а ошибка может уйти, даже если вы не поймете почему. Исправлено 2 раз(а). Последнее : akvvohinc, 08.06.18 01:55 |
Re: Печатаются черные полосы вместо текста | |
---|---|
Sawradym Сообщений: 2244 Откуда: Винница Дата регистрации: 15.05.2007 |
Если мне память не изменяет, то такой эффект проявляется если в настройках экрана включено масштабировниие.
------------------ |
Re: Печатаются черные полосы вместо текста | |
---|---|
ry Сообщений: 2113 Дата регистрации: 24.09.2007 |
Первое подозрение все-таки на шрифт. Если есть возможность поменять его в отчете, то лучше начать именно с этого. Можно еще поискать в настройках принтера и включить (при наличии) опцию типа "Печатать шрифты как растр" - иногда это помогает при проблемах с неправильной печатью текста.
|
Re: Печатаются черные полосы вместо текста | |
---|---|
Sawradym Сообщений: 2244 Откуда: Винница Дата регистрации: 15.05.2007 |
Вспомнил. Была такая проблема с одним принтером, в принципе она и осталась.
При печати через oListener.OnPreviewClose() документ выводится нормально, если же печатать Report Form ... To Printer, то получается то что описывает ТС. ------------------ |
Re: Печатаются черные полосы вместо текста | |
---|---|
akvvohinc Сообщений: 4201 Откуда: Москва Дата регистрации: 11.11.2008 |
Проблема же не в принтере как таковом, а с одним единственным отчетом (остальные-то на этом же принтере печатаются нормально). Значит, надо понять, что не нравится принтеру в этом отчете. Последовательным, поэлементным созданием этого отчета с нуля (с проверкой печати на каждом шаге) можно понять, какой объект приводит к проблеме, а далее играть с выводимым значением и свойствами, чтобы понять что именно вызывает подобный глюк принтера. Конечно, для скорости проверки лучше не по одному объекту добавлять, а по принципу бинарного поиска. Исправлено 1 раз(а). Последнее : akvvohinc, 08.06.18 17:41 |
Re: Печатаются черные полосы вместо текста | |
---|---|
Sawradym Сообщений: 2244 Откуда: Винница Дата регистрации: 15.05.2007 |
Цитирую ТС:
Вангую что по oListener.OnPreviewClose() документ напечатается нормально. ------------------ |
Re: Печатаются черные полосы вместо текста | |
---|---|
akvvohinc Сообщений: 4201 Откуда: Москва Дата регистрации: 11.11.2008 |
ТС пишет, что единственная разница - в настройке Set ReportBehavior. Ни о каком Report Listener'е речи у него нет. И если это действительно так, то я бы еще попробовал просто получить этот же отчет при Set ReportBehavior 80. |
Re: Печатаются черные полосы вместо текста | |
---|---|
ou Автор Сообщений: 118 Дата регистрации: 07.08.2007 |
Добрый день, уважаемые коллеги!
Спасибо за высказанные предположения. Пробую варианты с другим шрифтом и TTOPTION = 1. Доступа к принтеру не имею, так что жду ответа от заказчика - что у него там получится. Report Listener не используется. Разница в reportbehavior и в шрифтах. Тот, который нормально виден, - Franklin Gothic Medium, тот, который зачерняется, - Arial. |
Re: Печатаются черные полосы вместо текста | |
---|---|
ssa Сообщений: 12999 Откуда: Москва Дата регистрации: 23.03.2005 |
При reportbehavior 90? И как вам сие удалось? То, что вы его не вызываете явно в своем коде, совсем не означает его неиспользование при указанной настройке. Учите матчасть. ------------------ Лень - это неосознанная мудрость. |
Re: Печатаются черные полосы вместо текста | |
---|---|
akvvohinc Сообщений: 4201 Откуда: Москва Дата регистрации: 11.11.2008 |
Скажу, как я понял автора: Использовать Report Listener можно при любой настройке ReportBehavior, разница лишь в том, что при 80 он может не использоваться. Когда он пишет, что не использует Report Listener при 90, то это означает лишь то, что он не делает ничего явного с этим объектом. Одновременно с этим он пишет, что никакой другой существенной разницы в отчетах он не видит (не помнит). Но для каких-то целей настройка Set ReportBehavior 90 все же делается, ведь иначе зачем она нужна, и почему бы и этот отчет не получать при Set ReportBehavior 80? Значит, разница в отчетах какая-то все же должна быть и помимо шрифтов, и надо бы выяснить, в чем она. Может, тогда и возможная причина "глюка" чуть прояснится. Исправлено 1 раз(а). Последнее : akvvohinc, 09.06.18 20:05 |
Re: Печатаются черные полосы вместо текста | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Смотря что понимать под "использовать". Создать экземпляр этого класса - да, вполне. Использовать его как средство рендеринга отчёта (для чего он, собственно говоря и предназначен) - нет. Только при REPORTBEHAVIOR 90 экземпляры этого класса используются движком отчётности для того что и называется object-assisted reporting. Это вполне очевидно. Но надо понимать что несмотря на "явное неиспользование", на самом деле фокс создаст экземпляр класса reportlistener и будет его использовать незаметно для программиста (раз уж он не парится настройками, дополнительными возможностями и т.п.). ------------------ WBR, Igor |
Re: Печатаются черные полосы вместо текста | |
---|---|
ou Автор Сообщений: 118 Дата регистрации: 07.08.2007 |
Вы абсолютно правы Верно, причина есть, но, подозреваю, что отношения к глюку это не имеет. При 80 не работает Trim to nearest character, то есть, если фраза не влезает в поле по ширине, то откусываются не только лишние символы, а целое слово. Именно из-за этого для группы репортов используется 90. Для остального 90 не используется, потому что заказчик любит длинные многостраничные отчеты (не спрашивайте меня почему - я не знаю, и переубедить его мне не удалось), а в 90 они рендерятся очень заметное время. |
Re: Печатаются черные полосы вместо текста | |
---|---|
akvvohinc Сообщений: 4201 Откуда: Москва Дата регистрации: 11.11.2008 |
Не могу сказать, что четко знаю, в чем отличие команд при настройке Set ReportBehavior 80:
В то же время отличий команды
Вот это (OBJECT TYPE) я, в частности, и имел в виду, когда писал об использовании RL при Set ReportBehavior 80. Надеюсь, ты прояснишь суть написанного мной в свете твоего уточнения, которое я процитировал. |
Re: Печатаются черные полосы вместо текста | |
---|---|
akvvohinc Сообщений: 4201 Откуда: Москва Дата регистрации: 11.11.2008 |
Не совсем так. На это влияет не сама по себе настройка SET REPORTBEHAVIOR, а использование/не использование новых возможностей отчетов (другой вариант рендеринга, я так понимаю). Например, запустите приложенный отчет командой:
А вот при запуске отчета командой:
[attachment 29537 rpt1.rar] Исправлено 1 раз(а). Последнее : akvvohinc, 10.06.18 03:31 |
Re: Печатаются черные полосы вместо текста | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Да, как-то совсем проглядел фразу из хелпа
Сказывается что фоксовыми отчётами ещё со времён 7-ки не пользуюсь ------------------ WBR, Igor |
© 2000-2024 Fox Club  |