Aspose词样式从模板复制

时间:2017-08-24 22:18:44

标签: java ms-word aspose

我正在尝试使用具有预定义样式,字体和字体大小的模板,因此当我创建新文档时,它具有样式,我的模板中定义了字体。

这是我的代码:

private static byte[] joinSections(Document document, List<byte[]> list) throws Exception {
if (list != null && list.size() > 0) {

    document.removeAllChildren();

    for (byte[] item : list) {
        ByteArrayInputStream partInStream = new ByteArrayInputStream(item);
        Document target = new Document(partInStream);
        // Make the document appear straight after the destination documents content.
        target.getFirstSection().getPageSetup().setSectionStart(SectionStart.CONTINUOUS);
        document.appendDocument(target, ImportFormatMode.USE_DESTINATION_STYLES);
    }
    ByteArrayOutputStream bs = new ByteArrayOutputStream();
    document.save(bs, SaveFormat.DOCX);
    return bs.toByteArray();
}

   return null;
}

文档是定义样式的模板。 该列表是我要插入空模板的段落列表。在调用此函数之前填充该列表

我有两个问题:

  1. 在结果文档中,我的样式被应用,但字体名称和字体大小是从源段落继承的,甚至我设置为使用USE_DESTINATION_STYLES。例如,如果我的模板有标题1的Arial 14和源文档,我从那里提取该段落,对于标题1有字体Times New Roman,在结果文档中它将是Times New Roman吗?我在这里缺少什么

  2. 无论我做什么,我总是在结果文档中获得样式Normal_0。不确定如何忽略源并避免在结果文档中使用Normal_0?

  3. 谢谢

0 个答案:

没有答案