十月已来,.NET版Aspose.Words也为大家带来了10月的新版本!Aspose.Words for .Net是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。
主要特点如下:
- 添加了对加载CHM文档的支持
- 引入了Document.ExtractPages()功能
- 实施了用于将特定页面导出为固定页面格式的新API
- 发布了SmartArt Cold Rendering的第一个版本
>>你可以点击下载Aspose.Words for .NET v20.10测试体验。(安装包仅提供部分功能,并设置限制,如需试用完整功能请申请免费授权)
具体更新内容
| KEY | 概要 | 类别 |
| WORDSNET-3110 | 允许将非顺序页面导出为渲染格式 | 新功能 |
| WORDSNET-17788 | 考虑支持CHM格式 | 新功能 |
| WORDSNET-11143 | 带有SmartArt渲染的DOCX到HTML问题 | 新功能 |
| WORDSNET-19983 | 改善.NET Standard中的文本效果渲染 | 新功能 |
| WORDSNET-20820 | 支持将特定页面导出为PDF | 新功能 |
| WORDSNET-20702 | 添加功能以将OLE作为“包”插入并插入正确的文档类型图标 | 新功能 |
| WORDSNET-21062 | 通过/从StructuredDocumentTagRangeStart绑定或获取映射的XML数据(CustomXmlPart) | 新功能 |
| WORDSNET-21029 | 提供在“ id”属性不同的情况下将图像标记为相等的选项 | 新功能 |
| WORDSNET-16228 | 在Aspose.Words中集成页面拆分功能 | 新功能 |
| WORDSNET-3522 | 考虑添加一个选项以使页面引用在渲染时保持不变 | 新功能 |
| WORDSNET-20623 | PDF至DOCX-段落拆分 | 增强功能 |
| WORDSNET-20174 | 如何在AWS Lambda中使用Noto字体 | 增强功能 |
新功能解析
①WORDSNET-20221——添加了新的公共选项LayoutOptions.IgnorePrinterMetrics
Word 2019会忽略“使用打印机度量标准对文档进行布局”兼容性选项,尽管该选项仍存在于Word选项->高级下的“兼容性选项”对话框中,并且仍可以通过Word VBA中的Document.Compatibility属性进行访问。与早期的Word版本相比,Word 2019为启用此兼容性选项的文档生成了不同的布局。
Aspose.Words的新默认行为是忽略“使用打印机度量标准对文档进行布局”兼容性选项,而仍可以将文档作为早期Word版本进行布局。
新的公共属性IgnorePrinterMetrics已添加到LayoutOptions类。
Document doc = new Document(fileName); doc.LayoutOptions.IgnorePrinterMetrics = false; doc.Save(outFileName);
②WORDSNET-20702——添加新的公共重载方法InsertOleObjectAsIcon
新的公共重载方法'InsertOleObjectAsIIcon'已添加到'DocumentBuilder'类中:
用例。说明如何将OLE对象作为“包”插入并插入正确文档类型的图标:
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.InsertOleObjectAsIcon("C:\\embedded.xlsx", "Package", false, "C:\\icon.ico", "My embedded file");
doc.Save("C:\\output.docx");
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
using (MemoryStream stream = new MemoryStream(File.ReadAllBytes("C:\\embedded.xlsx")))
builder.InsertOleObjectAsIcon(stream, "Package", "C:\\icon.ico", "My embedded file");
doc.Save("C:\\output.docx");
③WORDSNET-20809——添加新的公共属性LoadOptions.ConvertMetafilesToPng
这个新的LoadOption可以减少内存使用。
用例:
LoadOptions lo = new LoadOptions(); lo.ConvertMetafilesToPng = true; Document doc = new Document(fielName, lo);
④添加了对加载CHM文档的支持
现在,Aspose.Words可以加载CHM文档。CHM文档是称为“主题”的HTML文档的集合。当前,Aspose.Words始终按其在目录中出现的顺序从CHM文档中加载所有主题。还支持没有目录的CHM文档。加载此类文档时,Aspose.Words会加载默认主题,然后通过递归跟踪已加载主题中的超链接来查找其他主题。
添加了以下公共可见的枚举值:
FileFormat.Chm LoadFormat.Chm WarningSource.Chm
现在,可以使用FileFormatUtil类确定文件是否为CHM文档。例如,以下调用
FileFormatInfo info = FileFormatUtil.DetectFileFormat("help.chm");
在所有加载选项中,只有LoadOptions.Encoding当前会影响使用CHM文档。这对于加载未在其HTML主题中指定编码的CHM文档非常有用。加载CHM文档时不会调用LoadOptions.ResourceLoadingCallback。Aspose.Words希望所有引用的资源文件与主题文件一起存储在CHM文档中。不支持外部资源文件。加载CHM文档的用例如下:
Document doc = new Document("help.chm");
LoadOptions options = new LoadOptions
{
Encoding = Encoding.GetEncoding("windows-1251")
};
Document doc = new Document("help.chm", options);
⑤实施了用于将特定页面导出为固定页面格式的新API
以前,您只能指定一个连续的渲染范围,但是现在,您可以基于不同的页面范围或任意顺序的单个页面指定一组复杂的页面。这提供了一种灵活的方式,可以将页面组合成固定页面格式的最终文档。为此,在FixedPageSaveOptions类中引入了一个新属性:
FixedPageSaveOptions.PageIndex和FixedPageSaveOptions.PageCount现在标记为过时。通过新的PageSet类指定页面:
一个页面集可以包含用PageRange类指定的页面范围:
示例用例:
// Export even pages to PDF.
PdfSaveOptions pdfOptions = new PdfSaveOptions();
pdfOptions.PageSet = PageSet.Even;
doc.Save("out.pdf", pdfOptions);
// Export various page ranges to multipage TIFF image.
ImageSaveOptions imageOptions = new ImageSaveOptions(SaveFormat.Tiff);
PageSet pageSet = new PageSet(
new PageRange(1, 1),
new PageRange(5, 6),
new PageRange(1, 3),
new PageRange(2, 5),
new PageRange(1, 1));
imageOptions.PageSet = pageSet;
doc.Save("out.tiff", imageOptions);
// Export exact pages to XPS.
XpsSaveOptions xpsOptions = new XpsSaveOptions();
xpsOptions.PageSet = new PageSet(0, 1, 2, 5, 1, 3, 2, 3);
doc.Save("out.xps", xpsOptions);
如果您有任何疑问或需求,请随时加入Aspose技术交流群(642018183),我们很高兴为您提供查询和咨询。