Ошибка шрифтов
Ошибка шрифтов
После последнего обновления Win10, Win11 невозможно распечатать отчеты и печатные формы
Обновление Windows: KB5101684, KB5121003
файл Stimulsoft.Report.dll версии 2024.4.4.0
файл Stimulsoft.Report.dll версии 2024.4.4.0
Re: Ошибка шрифтов
Здравствуйте,
Ни разу не встречали такую ошибку.
Можете нажать Report и предоставить полный стек ошибки. Также, попробуйте проверить последнюю версию 2026.3.1
Спасибо.
Ни разу не встречали такую ошибку.
Можете нажать Report и предоставить полный стек ошибки. Также, попробуйте проверить последнюю версию 2026.3.1
Спасибо.
Re: Ошибка шрифтов
Что Вы имеете в виду под нажатием Report? Можете пояснить?
Aleksey писал(а): 13 авг 2026, 17:03 Здравствуйте,
Ни разу не встречали такую ошибку.
Можете нажать Report и предоставить полный стек ошибки. Также, попробуйте проверить последнюю версию 2026.3.1
Спасибо.
Re: Ошибка шрифтов
Здравствуйте,
На вашем скриншоте есть кнопка Report и Continue, нажмите Report.
Спасибо.
На вашем скриншоте есть кнопка Report и Continue, нажмите Report.
Спасибо.
Re: Ошибка шрифтов
Собрали информацию об ошибке и версии Windows
https://dropmefiles.com/OKQUt
https://dropmefiles.com/OKQUt
Re: Ошибка шрифтов
Здравствуйте,
Спасибо за информацию. Проблему воспроизвели, решаем.
Как обходное решение, перед печатью задайте опцию PrintDialogType:
report.PrinterSettings.PrintDialogType = StiPrintDialogType.Extended;
report.PrintWithWpf();
Спасибо.
#21056
Спасибо за информацию. Проблему воспроизвели, решаем.
Как обходное решение, перед печатью задайте опцию PrintDialogType:
report.PrinterSettings.PrintDialogType = StiPrintDialogType.Extended;
report.PrintWithWpf();
Спасибо.
#21056
Re: Ошибка шрифтов
Подскажите, где и как эту опцию надо задавать?
Re: Ошибка шрифтов
Здравствуйте,
> Подскажите, где и как эту опцию надо задавать?
Задавать опцию и вызывать печать из кода вашего приложения.
Оп проблеме:
Проблема в самом WPF, не в наших компонентах. Августовское обновление (KB5120708 -> PresentationCore 4.8.9344 для .NET Framework 4.8.1; .NET 8.0.30 / 9.0.19 / 10.0.11)
ужесточило проверки в TTF-сабсеттере. У перечисленных системных шрифтов таблица kern больше 64 КБ, при этом поле длины подтаблицы 16-битное и переполнено (у Calibri реальная длина 160250, в поле записано 29178). Новый сабсеттер отвергает такой шрифт целиком, и вся XPS-сериализация, через которую идёт WPF-печать, прерывается.
Шрифты ни при чём: файлы 2019 года ведут себя так же, а на .NET 6.0.36 / 7.0.20 / 8.0.21 / 9.0.10 те же шрифты печатаются.
Заведено у Microsoft: https://github.com/dotnet/wpf/issues/11834.
Мы сделали доработки -
Новая опция StiOptions.Print.AllowPrintWithoutFontSubsetting, по умолчанию true.
Выключает запасной путь и возвращает прежнее поведение с исключением.
Поведение -
Штатная печать не изменилась - запасной путь включается только там, где сейчас гарантированная ошибка. Плата за него - размер задания: шрифт вкладывается целиком вместо сабсета (тестовая страница с Arial: 73 КБ против 563 КБ). После выхода фикса Microsoft ветка перестанет вызываться сама, отключать её не нужно.
Спасибо.
> Подскажите, где и как эту опцию надо задавать?
Задавать опцию и вызывать печать из кода вашего приложения.
Оп проблеме:
Проблема в самом WPF, не в наших компонентах. Августовское обновление (KB5120708 -> PresentationCore 4.8.9344 для .NET Framework 4.8.1; .NET 8.0.30 / 9.0.19 / 10.0.11)
ужесточило проверки в TTF-сабсеттере. У перечисленных системных шрифтов таблица kern больше 64 КБ, при этом поле длины подтаблицы 16-битное и переполнено (у Calibri реальная длина 160250, в поле записано 29178). Новый сабсеттер отвергает такой шрифт целиком, и вся XPS-сериализация, через которую идёт WPF-печать, прерывается.
Шрифты ни при чём: файлы 2019 года ведут себя так же, а на .NET 6.0.36 / 7.0.20 / 8.0.21 / 9.0.10 те же шрифты печатаются.
Заведено у Microsoft: https://github.com/dotnet/wpf/issues/11834.
Мы сделали доработки -
Новая опция StiOptions.Print.AllowPrintWithoutFontSubsetting, по умолчанию true.
Выключает запасной путь и возвращает прежнее поведение с исключением.
Поведение -
Штатная печать не изменилась - запасной путь включается только там, где сейчас гарантированная ошибка. Плата за него - размер задания: шрифт вкладывается целиком вместо сабсета (тестовая страница с Arial: 73 КБ против 563 КБ). После выхода фикса Microsoft ветка перестанет вызываться сама, отключать её не нужно.
Спасибо.
Re: Ошибка шрифтов
В какой версии доступны доработки?
-
Max Shamanov
- Сообщения: 153
- Зарегистрирован: 07 сен 2021, 13:18
Re: Ошибка шрифтов
Здравствуйте,
Исправления будут доступны в версии 2026.3.4.
Спасибо.
Исправления будут доступны в версии 2026.3.4.
Спасибо.