ExportAsFixedFileFormat 突然不从 Excel 文档中导出图像和格式有啥想法吗?
Posted
技术标签:
【中文标题】ExportAsFixedFileFormat 突然不从 Excel 文档中导出图像和格式有啥想法吗?【英文标题】:ExportAsFixedFileFormat is suddenly not exporting images and formatting from the Excel Document Any ideas?ExportAsFixedFileFormat 突然不从 Excel 文档中导出图像和格式有什么想法吗? 【发布时间】:2019-12-04 04:44:59 【问题描述】:Microsoft.Office.Interop.Excel 中的 ExportAsFixedFormat 方法不再将任何图形或格式导出到 PDF 文件。代码没有改变。
此方法在我最近于 2019 年 7 月 9 日使用 Visual Studio 2017 中的互操作库(版本 15)在我的开发调试环境中工作。
直到 7 月 16 日,它还在使用 Office 2013 安装的生产环境中工作,并且自 4 月以来一直在生产环境中工作。
我正在 Excel 中使用图表、logo.jpg 图像构建报告,我正在格式化列宽、行高,并在一些单元格周围添加加厚边框。这都是先保存在Excel文档中,然后使用上述方法导出为PDF。
当我在 7 月 23 日被要求为新客户手动生成报告时,我确定上述图表、图像和格式都已从 PDF 的输出中排除,尽管数据和字体更改已导出.还是挺丑的。
到目前为止...
我确认它不再在任何一个环境(开发或生产)中工作,所以无论发生什么变化,不仅改变了 Office 2013 安装,还改变了 Visual Studio 中的互操作库。 (也许是 MS 更新?)
我尝试将库降级到版本 14(而不是 15),然后尝试将其升级到 15.4795.1000,但这些都不起作用。
在 Excel 2013 中手动使用 SaveAs 具有相同的结果,但不是真正有效的测试,因为我一开始从未手动尝试过。
我搜索了有关 Microsoft 更新的文档,他们确实更新了 Excel 2013 以修复两个远程代码执行漏洞,但我不确定在哪里可以看到方法 ExportAsFixedFileFormat 已更改,现在需要“X”。尽管我确实重新阅读了有关该方法的文档,以查看是否遗漏了任何内容。
我没有使用 XLFixedFormatQuality,但添加它以防万一,这对问题没有影响。
代码相当简单,如前所述,它工作得很好,它仍然导出并创建一个 PDF 文件,但该文件只是文本数据,只有字体格式通过导出。
xlWorkBook.ExportAsFixedFormat(Excel.XlFixedFormatType.xlTypePDF, ParamValues(3), Excel.XlFixedFormatQuality.xlQualityStandard)
文件名存储在 ParamValues(3) 中。
没有错误,没有生成异常,除了最终产品中的格式、图表和图像丢失之外,应用程序的行为与往常一样。
【问题讨论】:
【参考方案1】:经过进一步推测和测试,我们确定它与打印机驱动程序有关。我安装了一个通用的文本/纯打印机来测试我一直在做的事情,Win10 被设置为“管理”我的默认打印机,方法是将我的默认设置设置为我最近使用的任何打印机。
在生产机器中使用 RDP 将这台默认打印机带入设置中,而导出方法使用该打印机驱动程序生成 PDF
【讨论】:
以上是关于ExportAsFixedFileFormat 突然不从 Excel 文档中导出图像和格式有啥想法吗?的主要内容,如果未能解决你的问题,请参考以下文章