Word处理控件Aspose.Words功能演示:在 Java 中将宏从一个 Word 文档复制到另一个文档

您所在的位置:网站首页 javaapi文档官网 Word处理控件Aspose.Words功能演示:在 Java 中将宏从一个 Word 文档复制到另一个文档

Word处理控件Aspose.Words功能演示:在 Java 中将宏从一个 Word 文档复制到另一个文档

2023-05-02 00:42| 来源: 网络整理| 查看: 265

aspose下载

Aspose.Words 是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。此外,

Aspose API支持流行文件格式处理,并允许将各类文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。

Aspose.words 最新下载

将 VBA 宏从一个 Word 文档复制到 Java 中的另一个文档

Word 文档中的宏是用 VBA (Visual Basic for Applications) 编写的,用于自动执行常用任务。MS Word 宏包含一组代码语句,这些语句在单击工具栏中的特定按钮或按下组合键时执行。

在上一版Aspose.Words for Java中,我们引入了在Word文档中为VBA项目或VBA模块添加宏的功能。但是,在某些情况下,您需要克隆 VBA 模块或整个 VBA 项目以编程方式将 Word 宏从一个文档复制到另一个文档。为了使其成为可能,我们向VABModule和VBAProject类添加了deepClone()方法,以从特定的 VBA 模块或项目复制 Word 宏。

现在让我们看看如何使用Aspose.Words for Java在 Java 中将 Word 宏从一个文档复制到另一个文档。

克隆 VBA 模块

Document doc = new Document(dataDir + "test.docm"); VbaProject project = doc.getVbaProject(); Document destDoc = new Document(); destDoc.setVbaProject(new VbaProject()); // Clone a single module. VbaModule copyModule = doc.getVbaProject().getModules().get("Module1").deepClone(); destDoc.getVbaProject().getModules().add(copyModule); destDoc.save(dataDir + "output.docm"); 克隆 VBA 项目

以下 Java 代码示例显示如何通过在 Word 文档中克隆完整的 VBA 项目来复制宏。

Document doc = new Document(dataDir + "test.docm"); VbaProject project = doc.getVbaProject(); Document destDoc = new Document(); // Clone the whole project. destDoc.setVbaProject(doc.getVbaProject().deepClone()); destDoc.save(dataDir + "output.docm"); 在 Java 中将 Word 转换为 PDF 1.7 标准

PDF 文档可能符合各种标准或 PDF 规范的版本。PDF 1.7 是 PDF 规范的第六版,它包含一些仅由 Adobe 定义的专有技术。Aspose.Words for Java已经支持Word 到 PDF 的转换,但是,我们已经扩展了这种支持,现在您可以将 Word 文档转换为 PDF 1.7。为此,我们已将PDF_17选项添加到PdfCompliance枚举中。

以下 Java 代码示例显示了如何通过指定PdfCompliance将 Word 转换为 PDF 。

// For complete examples and data files, please go to // https://github.com/aspose-words/Aspose.Words-for-Java // The path to the documents directory. Document originalDoc = new Document(dataDir + "Document.docx"); // Provide PDFSaveOption compliance to PDF17 // or just convert without SaveOptions PdfSaveOptions pso = new PdfSaveOptions(); pso.setCompliance(PdfCompliance.PDF_17); originalDoc.save(dataDir + "Output.pdf", pso); 在 Windows 10 上为 SystemFontSource 使用用户安装的字体

在以前版本的Aspose.Words for Java中,API 仅用于扫描SystemFontSource的系统安装字体。这种方法不适用于 Windows 10,其中字体可能安装到所有用户的系统文件夹“ %windir%\fonts ”或用户文件夹“ %userprofile%\AppData\Local\Microsoft\Windows\Fonts” ” 对于当前用户。我们增强了这个功能,现在Aspose.Words for Java也可以扫描用户安装的字体。

新的查找和替换选项

Aspose.Words for Java提供查找和替换选项来替换 Word 文档中所需的单词或短语。在以前版本的 API 中,查找/替换功能用于与文档内容分开分析文本框。此行为是根据 MS Word 的行为设计的,但是,在某些情况下,您可能需要按顺序查找和替换内容,包括文本框中的文本。对于这种情况,我们在FindReplaceOptions类中引入了一个新选项UseLegacyOrder。以下 Java 代码示例显示了在 Word 文档中查找和替换文本时如何使用此选项。

public static void FineReplaceUsingLegacyOrder(String dataDir) throws Exception { // Open the document. Document doc = new Document(dataDir + "source.docx"); FindReplaceOptions options = new FindReplaceOptions(); options.setReplacingCallback(new ReplacingCallback()); options.setUseLegacyOrder(true); doc.getRange().replace(Pattern.compile("\\[(.*?)\\]"), "", options); dataDir = dataDir + "usingLegacyOrder_out.doc"; doc.save(dataDir); } private static class ReplacingCallback implements IReplacingCallback { public int replacing(ReplacingArgs args) { System.out.print(args.getMatch().group()); return ReplaceAction.REPLACE; } }

以上便是如何在 Java 中将宏从一个 Word 文档复制到另一个文档 ,要是您还有其他关于产品方面的问题,欢迎咨询我们,或者加入我们官方技术交流群。

欢迎下载|体验更多Aspose产品

点此获取更多Aspose产品信息 或 加入Aspose技术交流群(761297826) 标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至[email protected]

上一篇:报表生成器FastReport .Net用户指南(二十一):"Barcode"对象 下一篇:Node.js + SpreadJS!从服务端生成Excel电子表格


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3