【发布时间】:2014-04-17 17:09:49
【问题描述】:
我希望能够解析 Excel 保存在 XLSX zip 存档中 xl\printerSettings\printerSettingsNN.bin 中的打印机设置二进制文件。大量搜索文档无济于事。
这是我无法识别的常见格式,还是 Excel 特有的格式?有人知道在哪里可以找到有关格式的详细信息吗?
【问题讨论】:
标签: excel documentation file-format
我希望能够解析 Excel 保存在 XLSX zip 存档中 xl\printerSettings\printerSettingsNN.bin 中的打印机设置二进制文件。大量搜索文档无济于事。
这是我无法识别的常见格式,还是 Excel 特有的格式?有人知道在哪里可以找到有关格式的详细信息吗?
【问题讨论】:
标签: excel documentation file-format
它看起来是一个 Windows 设备特定的结构,DEVMODE。
通过 http://blogs.msdn.com/b/chrisrae/archive/2010/10/06/where-is-the-documentation-for-office-s-docx-xlsx-pptx-formats-part-2-office-2010.aspx 追踪到它,该链接从 www.ecma-international.org 链接到 ECMA-376, Second Edition, Part 1 - Fundamentals And Markup Language reference。
第 160 页的相关 §15.2.15 除外:
此部件类型的实例包含有关 打印机或显示设备的初始化和环境。这 此信息的布局是应用程序定义的。
[注意:建议打印机设置部分包含有据可查的 XML 内容,以提高互操作性; 但是,对内容的格式没有要求 包含在打印机设置部分中。 结束说明]
[示例:办公室 Windows 上的 Open XML 生成器可能会存储定义的 DEVMODE 结构 这里: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/prntspol_8nle.asp, 而 Mac OS 上的应用程序可能会选择存储打印 记录定义 这里:http://developer.apple.com/documentation/Printing/index.html。 结束 例子]
(即使是 5,568 个页面标准也会遭受链接损坏 - 请参阅 DEVMODE structure。)
这意味着,例如在 C# 中,您可以利用 PrinterSettings 的 GetHdevmode 和 SetHdevmode 方法与结构进行互操作。
【讨论】: