我想在电子邮件中附上一张图片。图片由 API 从移动应用程序发送。收到的图片为字符串类型 (base64),将显示在电子邮件正文 (HTML) 中。问题是,电子邮件已成功发送,但图片未显示。
CALL FUNCTION 'SCMS_STRING_TO_XSTRING'
EXPORTING
text = i_pict
IMPORTING
buffer = p_bmp_xstream
EXCEPTIONS
failed = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
PT_SOLIX = CL_BCS_CONVERT=>XSTRING_TO_SOLIX( P_BMP_XSTREAM ).
我尝试的是先将其转换为XSTRING,然后将其转换为SOLIX格式。
我以前遇到过同样的要求,我从下面的这个链接中得到了帮助,它对我有用。
要显示图像以及电子邮件文本,需要做两件重要的事情(注意:图像不得作为附件传递,这会强制用户打开附件以查看图像):
- 您的文本必须以 HTML 格式传递
- 在HTML中,你可以用base64定义图像,如下所示:
<img src="data:image/gif;base64,iVBORw0KG...>
(iVBORw0KG...替换为您的图像基数64个字符)
以下链接中用于创建电子邮件的主要方法是:
cl_document_bcs=>create_document(
i_type = 'HTM'
i_text = table_of_HTML_code
... ).
看看下面的链接,如果它没有帮助,让我们进一步讨论。http://saptechnical.com/Tutorials/ABAP/email/Index.htm