При печати изменяются поля текстового поля

Обсуждение Stimulsoft Reports.WPF
Ivan
Сообщения: 641
Зарегистрирован: 10 авг 2006, 05:40
Откуда: Stimulsoft Office

Re: При печати изменяются поля текстового поля

Сообщение Ivan »

Здравствуйте.

Сначала немного информации.
В каждой технологии (WinForms, Wpf, Flex, JS) используются свои методы отрисовки текста.
Даже в WinForms есть три режима отображения текста (Standard, Typographic, Wysiwyg).
Обычно разница в ширине символов, т.е. одна и та же строка текста в разных технологиях рисуется разной длины.
В зависимости от шрифта и символов разница может быть от доли миллиметра до сантиметров.
И это может значительно влиять на построение отчета.
Так, в вашем случае строка "Sierras de Granada 9993" при отрисовке методами Wpf помещается в ячейку, а при отрисовке методами WinForms уже не помещается, и число "9993" переносится на вторую строку.
Соответственно при рендеринге отчёта средствами Wpf ячейка получается высотой в одну строку, а при рендеринге отчёта средствами WinForms ячейка получается высотой в две строки.
Далее, если отрендерить отчёт в Wpf и потом отобразить его в WinForms - мы получим ситуацию как в первом посте: ячейка имеет высоту в одну строку, но текст в ней отображается в две строки.
Если отрендерить отчёт в WinForms и потом отобразить его в Wpf - ячейка будет высотой две строки, но текст в ней отображается в одну строку.

Теперь о проблемах.
Проблема при экспорте в формат изображений - подтверждаем.
Экспорт в формат изображений был реализован только средствами WinForms.
Поэтому при экспорте из Wpf и возникала указанная выше проблема с переносом текста.
На данный момент проблема решена, сделана необходимая доработка для Wpf.
Патч будет включён в следующий билд.

Проблема при печати на реальный принтер - в дизайнере воспроизвести не можем.
Но такая проблема возможна, если вы отрендерили отчёт средствами Wpf, затем загрузили его в WinForms вьювер и печатали оттуда.
При печати отчёта из кода - например, так делать неправильно:

Код: Выделить всё

report.RenderWithWpf();
report.Print();
Правильные варианты:

Код: Выделить всё

report.Render();
report.Print();

Код: Выделить всё

report.RenderWithWpf();
report.PrintWithWpf();
Спасибо.
Quirco
Сообщения: 148
Зарегистрирован: 22 авг 2016, 11:12

Re: При печати изменяются поля текстового поля

Сообщение Quirco »

Будем пробовать.
Спасибо за подробный ответ.
Andrew
Сообщения: 586
Зарегистрирован: 09 июн 2006, 12:22

Re: При печати изменяются поля текстового поля

Сообщение Andrew »

Здравствуйте,

Дайте знать о результатах.

Спасибо.
Quirco
Сообщения: 148
Зарегистрирован: 22 авг 2016, 11:12

Re: При печати изменяются поля текстового поля

Сообщение Quirco »

Здравствуйте!
Проблема продолжает преследовать.

При отображении на экране, экспорте в PDF/Word - всё отлично.
При печати на физический принтер (на разных ПК, на разных принтерах/моделях/производителях принтеров), либо печати в .oxps получаем артефакт - последняя строка не умещается. Приходится центровать текст по высоте по центру, чтобы было видно часть верхней строки и часть нижней.
2020-02-14_18-36-07.png
2020-02-14_18-36-07.png (117.96 КБ) 3166 просмотров
Пример отчёта с набором данных для воспроизведения ситуации прилагаем
reportTest.7z
(269.39 КБ) 166 скачиваний
Windows Server 2016, версия 1607 сборка 14393.3504
.NET Framework 4.6.2 / .NET Framework 4.7.2
Stimulsoft 2020.1.1 (В версии Стимулсофта 2019.3.6 ситуация воспроизводилась чаще, сейчас лучше, но всё ещё есть проблема)

В качестве решения проблемы пытались включить в нужных полях "AlloHtmlTags = 1", это решает проблему умещения данных в ячейку, но текст и при печати и на экране визуально отличается от текста обычных ячеек, словно это изображение.
Quirco
Сообщения: 148
Зарегистрирован: 22 авг 2016, 11:12

Re: При печати изменяются поля текстового поля

Сообщение Quirco »

Здравствуйте. К предыдущему сообщению добавлю, что используются методы
report.RenderWithWpf();
report.PrintWithWpf();
При этом баг воспроизводится.
Aleksey
Сообщения: 2752
Зарегистрирован: 22 апр 2010, 06:57

Re: При печати изменяются поля текстового поля

Сообщение Aleksey »

Здравствуйте,

Необходимо некоторое время для анализа проблемы.

Спасибо.
Quirco
Сообщения: 148
Зарегистрирован: 22 авг 2016, 11:12

Re: При печати изменяются поля текстового поля

Сообщение Quirco »

Здравствуйте!
Коллеги, у вас есть какие-то новости по вопросу? Или сроки поступления решения?
Aleksey
Сообщения: 2752
Зарегистрирован: 22 апр 2010, 06:57

Re: При печати изменяются поля текстового поля

Сообщение Aleksey »

Здравствуйте,

К сожалению, пока что никаких результатов.

Спасибо.
Ответить