如何将建好的HTML格式的图片插入邮件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将建好的HTML格式的图片插入邮件相关的知识,希望对你有一定的参考价值。

为MyWeb。备注:网站中所用的文件都要用英文名。
2、打开Dreamweaver,选择“站点—新建站点”,打开对话框。在站点名称中输入网站的名称(可用中文),在本地根文件夹中选择刚才创建的文件夹(E:web)。然后确定即可。
备注:再次打开Dreamweaver,会自动找到刚才设立的站点。如果有多个站点,可以在菜单“站点—打开站点”中去选择。

二、创建页面

1、在本地文件夹E:\MyWeb下面的空白处,按右键选“新建文件”,这样就建好了一个页面,默认的文件名为untitled.htm。htm就表示这个网页文件是一个静态的html文件。给它改名为index.htm。网站第一页的名字通常是index.htm或index.html。其它页面的名字可以自己取。
2、双击index.htm进入该页面的编辑状态。在标题空格里输入网页名称,按右键选页面属性,打开“页面属性”窗口。在这里可以设置网站的标题、背景颜色或背影图像,超级链接的颜色(一般默认即可),其他都保持默认即可。
3.此时光标位于左上角,可输入一句话,如“欢迎来到我的主页”。选取文字,用菜单“窗口/属性”打开属性面板,选取文字大小为6,再使文字居中,然后在文字前用几个回车使其位于页面中间。
4.如要选取字体,则选择字体中的最后一项:编辑字体列表。然后在对话框中选+号,接着在“可用字体”栏中选择需要加入到字体列表中的一种字体,点击中间的按钮就可以加入了。
在网页上最常用的是宋体字。不要将特殊的字体加到列表中使用,因为别人电脑上未装就看不到。如果需要用的话,要做成图片后再使用。在网页上打入空格的办法是:把输入法调为全角。在网页上换行的办法是:shift+Enter。只按Enter则为换段。

三、为页面添加图片

1、在本地文件夹E:\MyWeb下面的空白处,按右键选“新建文件夹”,这样建立了一个文件夹,用它来放图片,可以改名为tu或pic或images都可以。
2、用菜单“窗口/对象”打开对象面板,点击“插入图像”,在对话框里选要插入的图片。如果会出现对话框:“你愿意将该文件复制到根文件夹中吗?”,必须选“是”,然后将它保存到刚建好的文件夹里。
3、选中该图片,打开属性面板,可以在上面为图片取名,重新设置图片的高、宽,拖住图片角上的点可以变大小。按住shift键,再拖动角上的点,可以使图片保持宽高比例拉伸。如要恢复这原始大小,则单击右下角的“重设大小”按钮。
4、“链接”可以直接在这里输入地址。“替代”是图片的说明,即鼠标指向图片所显示的文字;“边框”是图片边框宽度,“对齐”是对齐方式。

四、添加超级链接

1、为文字添加链接。
比如,在页面上输入“我的文章”,然后将其选中,打开属性面板,在“链接”一格中,选择它所要链接到的页面即可。后面一格“目标”我们一般常用的是self即打开的新窗口代替了现开的窗口;或是选择blank即打开新窗口。
2、为图片添加链接
与上面文字的链接同理,插入图片,然后在属性面板中的链接一格中选择即可。图片可以创建不同的多个链接。方法如下:在属性面板中的“地图”一项下面有一些图形,比如点击方形,光标变成十字,在图片上画一个蓝色矩形的热区,此时在属性面板上可以为这个热区设置链接地址,鼠标指向会显示。同样,再用圆形设置一个热区,就可以再为该图片设置其他链接了。
3、添加E-mail链接
选中需要添加E-mail链接的文字或图片,打开属性面板,在“链接”一格中输入填写邮件地址。格式如下:mailto:邮件地址。注意中间不空格。
4、如果链接到浏览器无法打开的文件,例如exe、Zip等文件,那么浏览者在点击这个链接的时候,就会实现文件下载、或是在线播放的功能。

五、表格的使用

1、点击插入/表格,打开表格面板进行设置。行数、列数、宽度、边框等,“单元格填充”为单元格内侧与内容的距离;“单元格间距”为单元格之间的距离,单位均为像素。
2、插入表格后,在表格的边框上点击一下,可以全选整个表格。然后在下面的属性面板里可以进行各种设置。
3、把光标移到其中一个单元格,此时看到的属性面板,就是单元格的属性面板。也可以进行各种关于单元格的操作。如背景色、背景图、边框、合并、拆分等。

六、关于表格的其他操作
(一)制作细线表格 原理:
1、选中整个表格,设置其背景为黑色(该颜色即表格线的颜色)。
2、选中所有单元格,设置其背景为白色。
(二)自动格式化表格
1、先制作好一张表格,然后选中。
2、选菜单中的命令/格式化表格。即可以其中选择预设好的一些表格样式。
(三)一像素分割条
1、插入一个1行1列,宽为200像素,边框边距均为0的表格。
2、选中表格,设置表格高为1像素,并设置一个背景色(即所要的线条颜色)。
3、切换到代码和设计窗口,将代码 删除。

七、用表格构建完整的页面
(一)网页顶部(一般包括图标、广告、导航菜单)
1、创建一个1行2列,宽为760像素,边框及边距均为0的表格。
2、选中表格,设置排列方式为居中对齐,背景色为#3366CC。
3、将光标置于左边单元格中,设置其水平排列为左对齐,垂直排列为顶端对齐,然后插入一张图像,一般在此插入的是网站的图标,即logo。
4、将光标置于右边单元格中,设置其宽度为500,水平排列为居中对齐,垂直排列为中间,然后插入图像,一般是网页广告,即banner。
5、将光标置于刚完成的表格之后,插入/表格,创建一个1行1列,宽为760像素,边框及边距均为0的表格。
6、选中刚创建的表格,设置排列方式为居中对齐,背景色为#005173。
7、在该表格中依次插入多个图像,作为导航条菜单。
(二)网页中部(左边栏目列表、中间网站新闻、右边栏目列表)
1、 在导航条表格后面,插入/表格,创建一个1行3列,宽为760像素,边框及边距均为0的表格。并设置排列方式为居中对齐,背景色为#FFFFFFF。
2、 将光标置于左边单元格中,设置其宽度为18%,水平排列为居中对齐,垂直排列为顶端对齐,然后插入一张图像,插入一个导航条。
3、 将光标置于刚插入的图片后,插入/表格,插入一个12行1列,宽为90%的表格。设置其单元格间距为1,背景色为#CCCCCC。
4、 将光标放在表格第一个单元中,设置其高为20,背景色为#FFFFFF。插入/图像,插入一个导航文字前面的小点。同样设置其他11个单元格,这样左边的栏目分类列表就完成了。
5、 将光标置于主体表格的中间单元格中,设置其宽度为66%,水平排列为居中对齐,垂直排列为顶端对齐,然后插入/图像,插入一个导航条。
6、 将光标置于图像后,插入/表格,插入一个4行1列,宽为95%的表格。设置其单元格间距为1,背景色为#CCCCCC。
7、 将光标置于表格的第一个单元格中,拖动鼠标,将4个单元格都选中,设置高为60,背景色为#FFFFFF。
8、 将光标置于主体表格右边的单元格中,设置其宽度为16%,水平排列为居中对齐,垂直排列为顶端对齐,插入/图像,插入一个导航条。
9、 将光标置于图像后,插入/表格,插入一个7行一列,宽为90%的表格。设置其间距为1,背景色为#CCCCCC。
10、按住Ctrl键,用鼠标点击刚插入的表格的第1、3、5、7单元格,然后设置它们的高为55,背景色为#FFFFFF。
11、选中第2、4、6单元格,设置其高为6,背景色为#FFFFFF。
12、切换到源代码窗口,将第2、4、6单元格中的空格符号“ ”删除。
(三)网页底部(一般包括版权信息及其他相关内容)
1、 将光标置于主表格后,插入/表格,创建一个2行2列,宽为760像素,边框及边距均为0的表格。
2、 选中表格,设置排列方式为居中对齐,背景色为#3366CC。
3、 将光标置于表格第1行的左边单元格中,设置其宽度为50%,水平排列为默认,垂直排列为基线,背景色为#FFFFFF,然后输入版权信息,内容颜色随便。
4、 将光标置于表格第1行右边单元格中,插入/图像,插入一个圆角图像,在它后面输入Email字样,设置其大小和颜色为1和#FFFFFF。
5、 插入/表单对象/文本域,插入一个文本域,宽度可以随意。
6、 插入/图像,插入一个GO的图像。
7、 设置页属性。点击菜单修改/页面属性,在标题一栏中输入标题,并选择背景图像,将顶部边界设为0。
将整个网页分部分放到不同的表格中组合而成,还可以加快浏览器读取页面的时间。因为浏览器是读完整个表格后才显示内容的,所以最好不要框在整个一个表格中。

八、用布局表格构建完整的页面

1、 单击插入/布局,里面的布局视图按钮,就切换到布局视图状态(默认为标准视图)。也可以用菜单里的查看/表格视图/布局视图来进入。
2、 先单击绘制布局表格按钮,然后在页面中像绘图一样创建出布局表格。
3、 就像上一个例子一样,先绘制好网页的顶部,再中部,再底部的大表格。
4、 再单击绘制布局单元格按钮,然后在已经绘制好的布局表格中,再绘制布局单元格。
5、 返回到标准视图,在已经划分好的表格里,再插入嵌套的小的表格,把页面再细化,就可以完成整个页面的设计了。
注意把整个页面都放在一个大的布局表格中,因为这样的网页浏览速度会很慢。应该按照页面的版面和内容划分出几个布局表格,然后在其中分别插入布局单元格。

九、层的使用

1、点击插入/层。也可以点击图标,然后拖动鼠标创建出一个层。
3、选中创建的层,看属性面板。“层编号”和“标签”都使用默认即可。“层编号”是编程时需要用的,我们现在一般不用。“上”即距页面上边界的距离;“左”是距左边界的距离。“z轴”是层的顺序,数字大的叠加在数字小的上面。如不设置颜色时,层是透明的。
4、点中层左上角的小方框可以随意拖动层,大小也可以调节。
5、“溢出”一栏中,当文字多于层的大小时,visible(超出的部分照样显示)、hidden(超出部分隐藏)、scroll(不管有否超出,都显示滚动条)、auto(有超出时才出现滚动条)。
6、点击菜单窗口/其他/层,此时将出现层管理窗口。可以在其中修改层的名称和Z轴值,也可以点击眼睛图标使层可见或不可见。还有一个防止重叠的选项。
7、层的对齐。按住shift键,同时选中几个层。然后用修改/对齐,用这里的选项。
8、嵌套层。⑴首先在文档中插入一个层。⑵将光标置于该层内,然后继续插入一个层,就得到了嵌套层。⑶里面的叫子层,外面的父层。它们的Z轴顺序是一样的。拖动父层时,子层也会相对移动。移动子层时,父层不会随之移动。

十、了解时间轴

1、点击菜单中的插入/层,插入一个层。
2、在层中插入图片,如一张飞机的图片。(这里的图片也可以是一张小动画的.gif图像)
3、点击菜单中的窗口/其他/时间轴,打开时间轴窗口。
4、选中页面上创建的层,用鼠标按住层左上角的小方框图标,将层拖放到时间轴的第1帧中。这时自动创建了一个长度为15帧的时间轴。
5、选中时间轴上的第1帧,将页面中的层拖放到页左上角,即动画开始时的位置。
6、选中时间轴上第15帧,可以拖动该帧至任意长度,如30帧。
7、选中第30帧,将层拖放到页面的右下方,此时窗口中显示出层从第1帧到第30帧的运动轨迹。(此时运动为直线)
8、可以点中第15帧,右键选“增加关键帧”,在选中第15帧的状态下,拖动层到页面中下方。
9、勾选“自动播放”项。

十一、制作滚动公告牌

1、在页面上插入一个层,然后为层设置一个背景,作为公告版的框架。
2、然后在创建的层中插入嵌套层,将嵌套层移动到父层的下方。
3、在嵌套层中输入文本,并将其居中排列。
4、打开时间轴面板,将子层作为对象添加到面板中。
5、为子层创建一个向上移动的路径,将其移动到父层的上方。
6、拖动最后一关键帧,增长动画时间,然后勾选“自动播放”和“循环”两项。
7、选定父层,在其属性面板中将“溢出”属性设置为“hidden”。

十二、在页面中运用flash动画

1、点击插入Flash的按钮,即可为页面插入一个动画。也可以选菜单插入/媒体/Flash来完成这一步。
2、选中已插入的动画,看属性面板。这里可以设置它的宽、高,也可以通过拖动来改变大小。
3、可以在这里点击“播放”来预览动画。

十三、让插入的flash动画变透明

1、当网页上已经有背景,或是想要在一张图片上再插入flash动画,而flash动画本身也有背景色,所以会影响美观,这时我们要把它做成透明动画。
2、如在页面上插入一张图像。
3、在图像上插入一个层,在层中插入好所需要的flash动画。
4、选中flash动画,在属性面板中点击“参数”按钮。
5、在“参数”的左面一格输入“wmode”。在右面“值”一格输入“transparent”。

十四、在页面中播放声音

1、在完成全页面以后,如果要为该页添加背景音乐,注意背景音乐一般是*.midi文件,这样的声音文件十分小,易于快速下载,其他格式不适合作为背景音乐。
2、在页面中所有表格之外,(注意此时编辑窗口左下方的标签选择栏中仅显示这一项,或是在左下角点一下,这样才能保证这个行为是添加在整个页面上的)。点击行为窗口上的“+”按钮,(或用菜单 窗口/行为,打开行为窗口。)
3、从弹出菜单中选择“播放声音”。打开一个对话框。
4、在这个对话框里用“浏览”选择要播放的声音,并确定。
5、这时行为面板上自动显示了事件为onload,动作为播放声音。点击这一行,中间出现一个按钮。点击按钮,可以设置这个声音在什么事件下播放。可以选择“显示事件”/“IE5.0。
6、我们常用的如Onload(当页面载入时)、OnClick(单击鼠标)、OnMouseOver(鼠标移到对象上)、OnUnload(当关闭页面时)等。
7、该行为也可以设置在图片上、文字链接上。在文字链接上播放声音之前,先为文字添加一个空链接,即选中文字,在链接一格里输入一个“#”符号。

十五、弹出窗口

1、首先制作一个准备在小窗口中显示的页面(比如a.htm),由于这个弹出窗口不能太大,所以内容要少一些。
2、打开一个制作好的页面,把光标移到页面中所有我表格以外,点击行为窗口上的“+”按钮,从弹出菜单中选择“打开浏览器窗口”一项。
3、在对话框中里输入相应的设置。要显示的URL即a.htm,窗口宽度和高度自己定,单位为像素。属性中的各项参数需要就打勾。
4、设置完毕后,点“确定”。此时行为窗口中将显示打开浏览窗口这个行为,触发条件为Onload,如果不是要这项,就自己设置。
5、该行为也可以设置在图片上、文字链接上。。
6、可以用这个方法来表示对浏览者的打开时的欢迎、网站公告、离开时的告别语等。

十六、控制状态栏信息

1、打开页面,选中一张图片。
2、点击行为窗口上的“+”号按钮,选择设置文本/设置状态条文本。
3、在对话框里的“消息”一栏里,输入需要显示的话,如对这张图片的介绍。
4、可以设置行为的触发条件为OnMouseOver(鼠标移到对象上),这样当鼠标经过这张图片的时候,状态栏将出现相关的信息。
5、如果需要鼠标在移开后,这个信息消失,那么再次使用这个行为,在“消息”一栏里什么都不写,然后把触发条件改为OnMouseOut(鼠标移开)。
6、同样可以在一段文字上设置该行为。或是设置在整个页面上也可以。

十七、弹出信息

1、打开一个制作好的页面,点左下角项。点击行为窗口上的“+”按钮,从弹出菜单中选择“弹出信息”一项。
2、在设置窗口中“消息”一栏里输入想显示的消息即可。
3、触发条件设置为Onload(当页面载入时),就可以用来作为打开页面的欢迎信息。如设为OnUnload(当关闭页面时),就可以作为用户关闭页面时送别信息。
4、也可以在某一段文字上设置弹出信息。比如一段文字不愿让人复制,就选中整段文字,注意此时左下角显示〈P〉,即段落。
5、然后同样操作,消息可以输入版权之类的语句。只是设置触发条件为OnBeforeCopy(按右键时触发),或OnCopy(按右键选复制时触发)。

十八、动态图片按钮

1、准备好两张同样大小的图片,常用的方法是如一张为灰度照片,一张为彩色照片。或一张是按钮凹下的样式,一张是按钮凸起的样式。
2、举例:插入一个3行1列的表格,设置宽度为180像素。
3、将光标置于第一行,插入一张灰度的图片。
4、在属性面板中“链接”一栏里输入需要链接的地址,并给图片加上名称,如tu1.
5、点击行为窗口上的“+”按钮,从弹出菜单中选择“交换图像”。
6、此时在“图像”一栏中已显示要交换的图像,然后在“庙宇原始档为”一栏里选择好交换后的那张图。
7、下面有两个参数,“预先载入图像”和“鼠标滑开时恢复图像”,都要选中。
8、同样方法创建另外两个动态按钮。

十九、用框架布局页面

框架由两个主要部分组成——框架集和单个框架。
1、 点击插入中的框架,即显示出已定义的13种框架的样式。我们上—中—下结构为例。
2、 点击“上—中—下”框架结构的图标,此时在页上插入上下两个框架,将整个页面分割成了3部分。我们分别在上面输入“上”,在中间输入“中”,在下面输入“下”。
3、 先保存一下。点击菜单中的文件/保存全部。这时首先保存框架集文件,可以自己修改名字,如kuangjia.htm。然后将分别保存框架集中的其他页面。在保存对应的页面的时候,该部分会以虚线框起来,这样可将上面部分保存为shang.htm。下面部分保存为xia.htm。中间部分保存为zhong.htm。
4、 至此,我们保存了四个页面,分别是框架集,和组成框架集的上、中、下三个页面。所以,其实这个框架是由四个页面组成的,所以用框架会降低一点用户浏览的速度。
5、 点击窗口/其他/框架,打开框架的面板。在这里单击某个框架,即可选中该框架。当框架被选中时,编辑窗口中对应的框架出现虚线。
6、 如:选中上面topframe,此时属性面板上显示的是上面这个框架的属性。同样选中中间框架和下面框架,也可以分别设置它们的属性。
7、 在编辑窗口中,将鼠标放在两框架之间的边框上,光标将变成上下箭头形,此时点击边框,选中的是整个框架集。
8、 此时属性面板上出现的是整个框架组的属性。可以在此设置框架集是否有边框、宽度及颜色等。不过最为重要的是可以在这里设置框架集中各个框架的大小。
9、 在属性面板的右面的图示上选中上面框架,设置它的行为80像素,边框为0。
10、选中下面框架,设置行高为30像素,边框为0。
11、选中中间框架,设置行高为1,单位为相对。(相对的意思是:当前行相对于其他行所占的比例。设为1就是指占据除上和下以后的所有浏览窗口剩余空间。
12、举例:将光标置于上面框架topFrame上,右键选页面属性,设置背景色为#FF6600。然后插入/表格,插入一个1行2列,边框边距都为0的表格。设置第1个单元格的宽度为116像素,然后插入一张图片。将第2个单元格设置为水平对齐方式为居中,垂直排列方式为底部,然后依次输入“狮子座”、“魔蝎座”、“双子座”字样。
13、将光标置于中部框架mainFrame中,右键选页面属性,设置背景色为#FFFFCC。然后插入一张大图像。
14、将光标置于下面框架bottomFrame中,右键选页面属性,设置一个背景图像。
15、另外做好三个页面,作为“狮子座”、“魔蝎座”、“双子座”所要链接的页面。
16、选中“狮子座”,在属性中为它设置好要链接的页面,然后在“目标”里选“mainframe”,即该内容在中间那个框架中显示。
17、同样设置“魔蝎座”、“双子座”的链接。

二十、跳转菜单

1、 点击主菜单中的插入/表单对象/跳转菜单,也可以用插入/表单,中的跳转菜单图标,来调出跳转菜单设置窗口。
2、 首先在“文本”一栏里输入“请选择相关网站”字样。然后点击窗口上的“+”号按钮。这时菜单里多了一个选项,这个选项没有链接,仅作为跳转菜单的说明文字。
3、 在文一栏里输入需要的网站,如“新浪”,然后在“选择时,前往URL”一栏里输入网站链接地址,此时,菜单项一栏里又多了一个选项,这个选项对应一个网的链接地址。
4、 使用同样方法,在菜单中添加其他一些选项及对应的链接。还可以用“上”“下”的按钮,来调整它们的顺序。
5、 设置窗口的“菜单之后插入前往按钮”一项先不要选择。选中“更改URL后选择第一个项目”一项,这样当使用跳转菜单到某个页面后,如果返回到跳转菜单页面,此时页面中的跳转菜单默认显示的依旧是第1项内容。
6、 设置完毕后点击“确定”即可。 因为跳转菜单是一个表单,所以其实是先插入了表单(红色虚线区域),然后在表单中再插入了下拉菜单。
7、 想修改选项,可以选中页面上的下拦菜单,此时点击属性面板中的“列表值”,即可修改各项内容了。
8、 当选中跳转菜单时,行为窗口中也出现行为。双击该行为,也可以进入设置窗口,可以重新对其进行设置。
9、 如果“菜单项”里的第一项就是链接,而不是上面所说的一句提示的话,那么就要选中“选项“中的“菜单之后插入前往按钮”。添加一个“前往”按钮。

二十一、运用插件(Dreamweaver功能扩展)

1、 首先下载好需要的插件,此处举例用的是Animate Browser Window。这是一个动态改变窗口的大小的插件。打开Dreamweaver Extension Manager,安装下载好的插件。
2、 启动Dreamweaver,在做好的页面上,右击左下角〈body>,然后点击行为窗口中的“+”号按钮,在其中选择“Animate Browser Window”,然后在其中做相应的设置。这里设置窗口打开之前高宽均为0,打开后为填满屏幕。触发条件为onLoad。
另外,虚机团上产品团购,超级便宜
参考技术A 附件 或者直接在添加图片那里添加 html格式正常都是jpg gif 是可以的哦本回答被提问者采纳 参考技术B 压缩,上传上去不就行了吗

[Java] JavaMail 发送带图片的 html 格式的邮件

JavaMail 发送的邮件正文和附件是相互独立的,但是内置图片需要定位图片在正文中的位置,所以内置图片和邮件正文是互相依赖的。

发送带附件的邮件可参考 JavaMail 发送 html 格式、带附件的邮件

发送纯文本的邮件可参照 JavaMail 简单案例

具体例子

EmailHelper, Email 的帮助类,向帮助类提供 SMTP 服务器域名、用户名、密码、发送人邮箱、收件人邮箱、邮件主题、html 格式的内容、图片的路径,便可发送一份内置图片的邮件。在创建 MimeMultipart 时, 需要传入参数 related,并在正文中声明图片的位置。

SendEmailDemo, 演示发送邮件。

 

EmailHelper.java

  1 package mail;
  2 
  3 import java.util.Properties;
  4 
  5 import javax.activation.DataHandler;
  6 import javax.activation.DataSource;
  7 import javax.activation.FileDataSource;
  8 import javax.mail.BodyPart;
  9 import javax.mail.Message;
 10 import javax.mail.MessagingException;
 11 import javax.mail.Multipart;
 12 import javax.mail.PasswordAuthentication;
 13 import javax.mail.Session;
 14 import javax.mail.Transport;
 15 import javax.mail.internet.AddressException;
 16 import javax.mail.internet.InternetAddress;
 17 import javax.mail.internet.MimeBodyPart;
 18 import javax.mail.internet.MimeMessage;
 19 import javax.mail.internet.MimeMultipart;
 20 
 21 public class EmailHelper {
 22     
 23     private String host;
 24     private String username;
 25     private String password;
 26     private String from;
 27     
 28     private String to;
 29     private String subject;
 30     private String htmlContent;
 31     private String imagePath;
 32     
 33     public EmailHelper(String host, String username, String password, String from) throws AddressException, MessagingException{
 34         this.host = host;
 35         this.username = username;
 36         this.password = password;
 37         this.from = from;
 38     }
 39     
 40     public void sendWithImage() throws Exception {
 41 
 42         Properties props = new Properties();
 43         props.put("mail.smtp.auth", "true");
 44         props.put("mail.smtp.host", host);
 45 
 46         final String username1 = username;
 47         final String password1 = password;
 48 
 49         Session session = Session.getInstance(props, new javax.mail.Authenticator() {
 50             protected PasswordAuthentication getPasswordAuthentication() {
 51                 return new PasswordAuthentication(username1, password1);
 52             }
 53         });
 54 
 55         Message message = new MimeMessage(session);
 56 
 57         message.setFrom(new InternetAddress(from));
 58 
 59         message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to));
 60 
 61         message.setSubject(subject);
 62 
 63         Multipart multipart = new MimeMultipart("related");
 64 
 65         System.out.println(" html ");
 66         BodyPart htmlPart = new MimeBodyPart();
 67         htmlContent = "<img src=\\"cid:image\\">" + htmlContent;
 68         htmlPart.setContent(htmlContent, "text/html");
 69         multipart.addBodyPart(htmlPart);
 70         
 71         System.out.println(" image ");
 72         System.out.println("image path : " + imagePath);
 73         BodyPart imgPart = new MimeBodyPart();
 74         DataSource fds = new FileDataSource(this.imagePath);
 75 
 76         imgPart.setDataHandler(new DataHandler(fds));
 77         imgPart.setHeader("Content-ID", "<image>");
 78 
 79         multipart.addBodyPart(imgPart);
 80         message.setContent(multipart);
 81         Transport.send(message);
 82 
 83         System.out.println(" Sent -| ");
 84     }
 85 
 86     public void setTo(String to) {
 87         this.to = to;
 88     }
 89 
 90     public void setSubject(String subject) {
 91         this.subject = subject;
 92     }
 93 
 94     public void setHtmlContent(String htmlContent) {
 95         this.htmlContent = htmlContent;
 96     }
 97     
 98     public String getImagePath() {
 99         return imagePath;
100     }
101 
102     public void setImagePath(String imagePath) {
103         this.imagePath = imagePath;
104     }
105 }

SendEmailDemo.java

 1 public class SendEmailDemo {
 2     
 3     public static void main(){
 4         
 5         String host = "smtp.163.com";        // use your smtp server host
 6 
 7         final String username = "sender@163.com"; // use your username
 8         final String password = "password";   // use your password
 9 
10         String from = "sender@163.com";     // use your sender email address
11 
12         String to = "reciever@foxmail.com";  // use your reciever email address
13         try {
14             EmailHelper emailHelper = new EmailHelper(host, username, password, from);
15             emailHelper.setTo(to);
16             emailHelper.setSubject("subject ttt test");
17             emailHelper.setHtmlContent("<h1> This is html </h1>");
18             emailHelper.setImagePath("/Users/grs/Documents/Java/mavenEmail/test/src/main/resource/promises.png");
19             
20             emailHelper.send();
21             
22         } catch (Exception e) {
23             e.printStackTrace();
24         }
25     }
26 }

 

参考资料

JavaMail API - Sending Email With Inline Imagess

 

以上是关于如何将建好的HTML格式的图片插入邮件的主要内容,如果未能解决你的问题,请参考以下文章

在Linux命令行下发送html格式的邮件

如何插入到Outlook电子邮件正文中的HTML文件

ASP.NET发送外部邮件,怎么在外部邮件里插入图片和定义样式

outlook邮件插入HTML格式内容调试

怎么用HTML格式发送邮件.既怎么发HTML格式的邮件..?

[Java] JavaMail 发送带图片的 html 格式的邮件