2015-06-17 52 views
4

我試圖在lotus.domino包Java API中使用Rich Text格式在Notes文檔中插入一些內嵌圖像和內聯附件,併發送它。使用lotus.domino在Notes文檔中插入圖像/文件

插入的代碼如下。

// Insertion by RichTextItem.embedObject() 

RichTextItem rti = (RichTextItem) doc.getFirstItem("Body"); 
RichTextNavigator rtnav; 
rtnav = rti.createNavigator(); 
rtnav.findFirstElement(.../*Somewhere inside document*/); 
rti.beginInsert(rtnav); 
rti.embedObject(EmbeddedObject.EMBED_ATTACHMENT,null, "C:\\TEMP\\abc.jpg", "InlineImageOrAttachment"); // insert file which is jpg/png/pdf/doc...etc 
rti.endInsert(); 

現在我已經得到了: enter image description here

我想擁有的是:提前 enter image description here

感謝。

+0

也許如果您創建郵件爲MIME?否則,我看不到在後端創建郵件的小機會...... – umeli

+0

哪裏會運行代碼?服務器端還是客戶端?如果我記得附件顯示的圖標(如果擴展名爲.rar,則爲winrar圖標)取決於本地配置。如果代碼在未安裝winrar的服務器上運行,則永遠不會有winrar圖標。 –

+0

代碼將在服務器端運行。在開發環境中,安裝Domino,Notes和所有類型的pdf/png/rar軟件。 – Nozomi

回答

0

這是我在網上找到的LotusScript函數。 Java應該提供相同的類:

Function EmbedPictureIntoRichText(doc As NotesDocument,strFilePath As String) 
     EmbedPictureIntoRichText = False 
     Dim session As New NotesSession 
     Dim db As NotesDatabase 
     Dim body As NotesMIMEEntity 
     Dim header As NotesMIMEHeader 
     Dim child As NotesMIMEEntity 
     Dim stream As NotesStream 
     Dim fileFormat As String 
     Dim rtitemA As NotesRichTextItem 
     Dim rtitemB As NotesRichTextItem 

     session.Convertmime = True 
     Set db = doc.parentdatabase 
     Set stream = session.CreateStream 
     Call stream.Open(strFilePath) 
     Set body = doc.CreateMIMEEntity("DummyRichText") 
     Set header = body.CreateHeader("Content-Type") 
     Call header.SetHeaderVal("multipart/mixed") 
     Set child = body.CreateChildEntity() 
     fileFormat = "image/jpeg" 
     Call child.Setcontentfrombytes(stream, fileFormat, 1730) 
     Call stream.Close() 
     Call doc.save(False, False) 
     Set rtitemA = New NotesRichTextItem(doc,"Photo") 
     Set rtitemB = doc.GetFirstItem("DummyRichText") 
     Call rtitemA.AppendRTItem(rtitemB) 
     Call rtitemB.Remove() 
     Call doc.save(False, False) 
     EmbedPictureIntoRichText = True 
End Function 
相關問題