如何为CKEditor转换MIME,使其与NotesClient上的外观相同?

问题描述 投票:0回答:1

保存文档邮件后,我使用POP3通过Java3下载邮件:

            Document doc = db.createDocument();

            MIMEEntity body = doc.createMIMEEntity("Body");
            MIMEHeader header;

            for (String key : messages.get(index).getHeaders().keySet()) {
                header = body.createHeader(key);
                header.setHeaderVal(messages.get(index).getHeaders().get(key).get(0));
            }

            if (messages.get(index).getBody().length() > 0) {
                if (body.getContentType().equals("multipart")) {
                    // Create first child MIMEEntity
                    MIMEEntity child = body.createChildEntity();
                    stream.writeText(messages.get(index).getBody());
                    child.setContentFromText(stream, "", body.getEncoding());

                } else {

                    stream.writeText(messages.get(index).getBody());
                    body.setContentFromText(stream, messages.get(index).getHeaders().get("Content-Type").get(0),
                    body.getEncoding());

                }
            }


            stream.close();
            doc.replaceItemValue("Form", "Mail");
            doc.save(true, true);
            doc.closeMIMEEntities(true);

Convert MIME to RichText同样的问题“我可以使用前端的Notes客户端(打开并保存文档)进行此转换,而不会出现任何问题。”如果我在客户端上打开并保存文档,则CKEditor的mime字段与客户端上的相同。字段主体未转换为RichText,对于CKEditor来说效果很好。

我曾尝试通过添加代码来做到这一点:

session.setConvertMime(true);
RichTextItem rtitem = (RichTextItem)doc.getFirstItem("Body");
if (rtitem!=null) {
  rtitem.compact();
  doc.save(); 
}

还有这个:

doc.convertToMIME(3);
doc.save(true, true);

结果与在Notes Client上保存后的结果不同。

感谢您的帮助!

xpages lotus-domino lotus
1个回答
1
投票

IBM / Lotus有两个非常不同的MIME转换例程。它们都不提供完美的保真度。如果您希望通过高保真度转换获得一致的结果,可以使用名为Genii Software的第三方公司来提供满足您需要的软件。它不是免费的,但是可以为您节省大量的工作。

© www.soinside.com 2019 - 2024. All rights reserved.