内容提要
微软8月更新后,Windows 11上WPF应用生成的PDF或XPS文档打印异常,主要影响使用Calibri等特定字体的文件。临时解决方法是更换字体,或修改配置文件禁用安全措施,微软正寻求永久修复。
延伸解读
影响范围与典型场景
此次问题主要影响Windows 11上使用WPF应用生成的PDF或XPS文档,且文档中使用了Calibri、Cambria、Constantia或Corbel字体。如果文档使用其他字体,则打印正常。用户在实际打印时可能遇到System.IO.FileFormatException等错误。
临时解决方案的权衡
微软提供了两种临时方案:一是通过WPF应用修改文档字体为其他不受影响的字体,操作简单但每次都需要手动调整;二是修改应用配置文件,禁用8月更新中的安全措施,但此方法会降低系统安全性,需谨慎使用。
问题根源与后续修复
初步调查显示,问题与微软在8月更新中部署的安全措施有关。微软正在寻找永久解决方案,预计后续会发布更新彻底修复。在此之前,用户可参考上述临时方案解决打印问题。
Q&A
Windows 11安装.NET Framework 8月更新后打印异常,具体表现是什么?
安装更新后,某些WPF应用生成的PDF或XPS文档无法正常打印,打印时可能抛出System.IO.FileFormatException等错误。
哪些字体受.NET Framework 8月更新打印问题影响?
主要影响使用Calibri、Cambria、Constantia或Corbel字体的文档,其他字体不受影响。
如何临时解决.NET Framework更新导致的打印问题?
有两种临时方案:一是通过WPF应用将文档字体改为其他不受影响的字体;二是修改WPF应用的app.config文件,添加AppContextSwitchOverrides配置,但会禁用安全措施。
微软提供的临时解决方案中,修改配置文件会有什么影响?
修改配置文件会禁用微软在8月更新中部署的安全措施,因此属于不安全方案,建议谨慎使用。
微软是否已提供永久修复?
微软正在寻找永久解决方案,目前仅提供临时方案,后续会发布更新彻底解决问题。
为什么会出现这个打印问题?
初步调查显示与微软在8月更新中部署的安全措施有关,具体机制尚未完全公开。