我该如何将Excel电子表格导出为PDF/A(ISO 19005-1)?
编辑:我要求的是PDF/A,而不是默认导出的普通PDF 1.5。我甚至在原始问题中强调了A。
我已经可以使用
我似乎找不到任何使用COM Interop导出PDF/A的方法。
以下是我用于从docx导出的代码:
编辑:我要求的是PDF/A,而不是默认导出的普通PDF 1.5。我甚至在原始问题中强调了A。
我已经可以使用
ExportAsFixedFormat()
函数将Word和PowerPoint文档导出为PDF/A,因为Word和PowerPoint函数都有一个可选的UseISO19005_1
参数,但是Excel版本非常不同,并且缺少许多参数。我似乎找不到任何使用COM Interop导出PDF/A的方法。
以下是我用于从docx导出的代码:
Dim ExportFormat As WdExportFormat = WdExportFormat.wdExportFormatPDF
Dim OpenAfterExport As Boolean = False
Dim OptimizeFor As WdExportOptimizeFor = WdExportOptimizeFor.wdExportOptimizeForPrint
Dim Range As WdExportRange = WdExportRange.wdExportAllDocument
Dim Item As WdExportItem = WdExportItem.wdExportDocumentWithMarkup
Dim IncludeDocProps As Boolean = True
Dim KeepIRM As Boolean = False
Dim CreateBookmarks As WdExportCreateBookmarks = WdExportCreateBookmarks.wdExportCreateWordBookmarks
Dim DocStructureTags As Boolean = True
Dim BitmapMissingFonts As Boolean = True
Dim UseISO19005_1 As Boolean = False
If exportPDFA Then
UseISO19005_1 = True
Dim wordApp As New Word.Application()
Dim doc As Word.Document = wordApp.Documents.Open(FileName)
doc.ExportAsFixedFormat(pathToDestFile, ExportFormat, OpenAfterExport, OptimizeFor, Range, 0, 0, Item, IncludeDocProps, KeepIRM, CreateBookmarks, DocStructureTags, BitmapMissingFonts, UseISO19005_1)
End If
但是对于xlsx格式,ExportAsFixedFormat()
函数接受非常不同的参数(这是直接从Microsoft.Office.Interop.Excel类中获取的):
Sub ExportAsFixedFormat(Type As XlFixedFormatType, Optional Filename As Object = Nothing, Optional Quality As Object = Nothing, Optional IncludeDocProperties As Object = Nothing, Optional IgnorePrintAreas As Object = Nothing, Optional From As Object = Nothing, Optional [To] As Object = Nothing, Optional OpenAfterPublish As Object = Nothing, Optional FixedFormatExtClassPtr As Object = Nothing)