php word 生成图片,PHP导出word但没图,如何导出有图的Word

php导出doc文档一般的做法是先保存html文档,然后修改名称为.doc。这种做法就会碰到你问题中提到的问题:不能保存图片。因为html里图片其实是个图片的链接地址。如果要保存真实图片,需要保存图片的真实数据。一个思路就是base64编码。

有个比较讨巧的方案,就是使用和html很接近的mht格式。

mht格式和html很类似,但是在mht格式中,外部链接进来的文件,比如图片、Javascript、CSS会被base64进行编码存储。因此我们可以将一个网页保存成mht,然后修改后缀名为doc,再用word打开,这样就可以显示图片了。

其中的关键代码如下:

/**

* 根据HTML代码获取word文档内容

* 创建一个本质为mht的文档,该函数会分析文件内容并从远程下载页面中的图片资源

* 该函数依赖于类MhtFileMaker

* 该函数会分析img标签,提取src的属性值。但是,src的属性值必须被引号包围,否则不能提取

*

* @param string $content HTML内容

* @param string $absolutePath 网页的绝对路径。如果HTML内容里的图片路径为相对路径,那么就需要填写这个参数,来让该函数自动填补成绝对路径。这个参数最后需要以/结束

* @param bool $isEraseLink 是否去掉HTML内容中的链接

*/

function getWordDocument( $content , $absolutePath = "" , $isEraseLink = true )

{

$mht = new MhtFileMaker();

if ($isEraseLink)

$content = preg_replace('/(\s*.*?\s*)/i' , '$1' , $content);  //去掉链接

$images = array();

$files = array();

$matches = array();

//这个算法要求src后的属性值必须使用引号括起来

  if ( preg_match_all('//i',$content ,$matches ) )

{

$arrPath = $matches[1];

for ( $i=0;$i

{

$path = $arrPath[$i];

$imgPath = trim( $path );

if ( $imgPath != "" )

{

$files[] = $imgPath;

if( substr($imgPath,0,7) == 'http://')

{

//绝对链接,不加前缀

}

else

{

$imgPath = $absolutePath.$imgPath;

}

$images[] = $imgPath;

}

}

}

$mht->AddContents("tmp.html",$mht->GetMimeType("tmp.html"),$content);

for ( $i=0;$i

{

$image = $images[$i];

if ( @fopen($image , 'r') )

{

$imgcontent = @file_get_contents( $image );

if ( $content )

$mht->AddContents($files[$i],$mht->GetMimeType($image),$imgcontent);

}

else

{

echo "file:".$image." not exist!
";

}

}

return $mht->GetFile();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
《帝国下载系统》是为网站资料下载与在线影视网站提供的解决方案。功能强大,简单易用,全静态页面,完善的会员收费方案,全面满足免费与收费下载或影视网站需求。 帝国下载系统2.5开源版升级功能列表: 1、对系统进行全面的优化、调整,包括数据库与程序代码,代码基本重写。使系统运行效率更高更稳定。 2、新增下载字母导航,可以按头字母对下载内容进行检索。 3、新增专题功能,可以对下载进行自定义分类。 4、后台分类导航加载改进,页面加载速度更快,管理效率更高。 5、后台新增管理所有下载功能,更方便管理所有下载。 6、后台管理下载支持按“置顶”、“推荐”、“审核”及多种排序方式显示。管理下载更方便。 7、下载发布界面改进,更人性化,并且增加分类时可以选择“软件表单”或者“电影表单”模式。 8、下载与在线地址支持上传文件并自动填写文件扩展名及大小;支持直接上传与选择附件目录文件两种方式。 9、支持内容页文件名自定义。 10、新增下载地址前缀功能,同时支持"HEADER"、"META"、"READ"三种下载方式。 11、管理下载新增生成单下载及批量刷新选中下载功能。更方便生成指定的内容页。 12、管理下载新增生成“首页”、“父分类页”、“当前分类页”快捷功能,增加下载后只需点击提交即可发布到前台。 13、后台可设置是否开启后台登陆验证码。 14、后台可设置增加信息后直接生成分类页及专题页。更方便。 15、新增可设置是否检查软件名重复。 16、可设置默认录入下载地址数及在线地址数。 17、后台直接设置是否开启直接下载功能。(先前版本是修改配置文件) 18、可设置整站文件扩展名。 19、列表页存放目录、内容页存放目录自定义。并将目录转移到根目录,优化SEO。 20、每组生成列表数、内容页数、自定义页面数、批量替换下载数量设置。可以依服务器配置设置。 21、支持设置生成时间间隔。解决部分空间的资源限制问题。 22、后台界面改进,使用更加方便。 23、新增后台地图导航,可以更快捷的进入相应的管理操作。 24、验证码改进,增加图片增加干扰字符。防止机器识别图片字符。 25、安全性方面更强: (1)、管理员密码采用双重md5模式,防止密码泄漏被暴力破解; (2)、登录新增认证码功能,要同时满足密码跟认证码同时正确才能登录,此功能可防止非法用户知道密码也无法登录; (3)、COOKIE认证码验证,为身份认证再加一把锁。 (4)、COOKIE前缀自定义。 26、管理员登录次数、登陆IP及最后登陆时间记录。 27、增加用户设置管理分类支持选择父分类,选择父分类会应用于子分类权限。 28、新增前台购买充值类型管理:可设置充值有效期及点数。会员购买更点数、有效期非常方便,全自动充值。 29、新增在线支付功能: (1)、支付记录管理,方便与支付接口商记录对账。 (2)、网银支付接口配置。 30、参数设置可设置前台投稿开关。 31、前后台上传文件扩展名与文件大小设置。 32、前台投稿发布软件支持直接输入地址及上传附件两种方式。 33、后台可设置是否开启评论、评论验证码、评论字数限制以衣评论屏蔽字符设置。 34、生成广告JS文件前缀设置。防止浏览器屏蔽ad文件。 35、后台备份系统升级至帝国备份王2008最新版。备份效率更高更稳定。 36、新增总的分类导航变量及间隔符设置,原来版本是手动在模板修改。 37、新增“您的位置”间隔符设置。 38、数据更新中心改进,生成内容更完备。 39、新增管理所有评论功能、并支持按软件ID、评论内容、评论IP搜索。方便管理评论。 40、分类新增分类别名、分类缩略图、分类关键字、分类简介等属性。 41、分类列表生成增加显示最大数据设置。在大数据量情况下使用。 42、分类可设置开启投稿、投稿会员组及投稿获得点数。 43、管理分类新增终极分类与非终极分类转换功能。 44、管理软件类型改进,支持不同类型设置不同的模板及设置显示最大数。 45、电影模块改进,支持视频播放器管理,可任意增加/管理播放器。视频播放器可任意扩展。播放器默认新增Mediaplay、Realplayer、FLASH与FLV 46、新增强大的批量地址替换功能,支持按分类及附件SQL条件替换下载权限、点数、下载前缀、下载地址及下载名称替换。 47、管理附件新增数据式管理与目录式管理两种方式。 48、新增自定义列表功能。可以调用各种特殊条件的列表。 49、新增自定义页面。可以后台增加单页网页。 会员功能改进: 50、可设置会员是否需要审核 51、设置注册默认会员组及赠送点数。 52、注册用户名与密码字数限制设置 53、注册用户名保留字设置 54、会员邮箱唯一性检查设置 55、新增注册验证码跟登陆验证码。 56、支持禁用会员帐号 37、支持设置会员有效期到期后转向其他会员组。 58、会员资料新增详细资料填写。 59、点卡充值支持充值会员组与设定过期后转向的会员组。 60、新增批量增加点卡功能。 61、点卡支持点数跟有效期同时充值。 62、会员登陆与退出新增转向地址变量设置。设置ecmsfrom变量。 63、未登陆下载或观看需要权限的软件或视频,会转向登陆窗口,登陆后可返回下载与观看页面。更加人性化。 64、会员登陆默认转向会员控制面板。 65、会员控制面板首页界面改进,并且必须登陆后才能进入会员中心。更人性化。 66、新增DISCUZ与PHPWIND通行证接口。实现同步登陆与退出。 模板改进: 67、新增模板导入与导出功能。方便模板转移及共享。 68、新增模板变量,可以在页面共同内容的地方使用,只要修改变量内容就可以更改所有显示内容。 69、列表模板新增时间格式及软件名截取设置。 70、内容模板新增时间显示格式设置。 71、分类导航页面新增每行显示、背景颜色、单元格颜色设置。 72、新增搜索列表模板。 73、新增相关链接模板。 74、新增投票模板。 75、新增下载地址与在线地址模板。 76、新增下拉式列表分页模板。 77、新增框架登陆状态模板与JS登陆状态模板及调用方式。 78、新增最终下载页模板。可以直接在后台修改下载页面,直接加广告或显示软件信息。 79、模板标签调用改进: (1)、操作类型更新:支持"调用所有"、"分类调用"、"专题调用"、"软件类型调用"的最新、推荐、总下载、月下载、周下载、日下载调用类型。 (2)、文字标签、图片标签、广告标签、投票标签、友情链接标签对代码均进行改进,更优化。 (3)、数据统计标签改进:支持统计"总软件数"、"分类软件数"、"软件类型软件数"、"总下载数"。并支持设置统计时间范围。 (4)、模板调用新增“灵动标签”支持直接在模板中输写标签模板,且标签模板支持各种程序代码,更灵活。 80、模板统一的SEO变量,方便制作模板及SEO。 81、全新的默认模板,更清爽。 82、提示信息采用页面形式,更有亲和力。 83、支持动态显示总下载数、月下载数、周下载数、日下载数。 84、一键生成全站功能。 由于PHP本身对GBK宽字节特殊汉字处理存在问题,致使帝国系统受迁连。此问题目前已经影响到 帝国CMS 中的部分功能模块的使用,恶意用户可能通过部分功能对网站发起攻击。为此我们强烈建议您立即进行修补。 帝国CMS于2009-06-13 13:40修正了最新程序
让你短时间内由一名菜鸟到高手绝对没问题! 由于权限有限,分3部份下载 PHP程序开发范例宝典 内容提要 《PHP程序开发范例宝典》全面介绍了应用PHP进行网站开发的各种技术和技巧。《PHP程序开发范例宝典》分为20章,内容包括PHP的运行环 境配置、表单及表单元素的应用、CSS与JavaScript脚本的应用、验证控件、构建PHP动态网页、PHP与MySQL的数据库技术、PHP与其他数据库技 术、SQL查询相关技术、MySQL高级应用技术、字符串的处理技术、PHP面向对象编程技术、文件管理、图像和多媒体技术、信息提取与图表分析 技术、报表与打印技术、网络通信技术、PHP与XML技术、安全技术、PHP高级应用技术以及综合应用等。《PHP程序开发范例宝典》共提供了453 个实例,每个实例都突出实用性,绝大部分实例都体现了PHP编程人员在实际项目开发过程中总结出的经验技巧。   《PHP程序开发范例宝典》内容充实,实例丰富,特别适于PHP编程人员和广大计算机爱好者学习开发使用,也可供大、中专院校师生阅读 参考。   《PHP程序开发范例宝典》附有配套光盘。光盘提供了书中所有实例的源代码。代码都经过精心调试,在Windows XP/Windows 2000/Windows 2003 Server/Linux/UNIX下测试通过。 PHP程序开发范例宝典 目录 第1章 PHP的运行环境配置 1 1.1 Windows下环境配置 2 实例001 Windows下Apache的安装配置 2 实例002 Windows下MySQL的安装配置 5 实例003 Windows下PHP的安装配置 6 实例004 Window下phpMyAdmin的安装配置 7 实例005 使用AppServ架设Apache+MySQL+PHP运行环境 8 实例006 使用IIS服务器运行PHP脚本 10 实例007 Windows下发布“明日科技”网站 12 1.2 Linux下环境配置 14 实例008 Linux下Apache1.x安装配置 14 实例009 Linux下安装与配置Apache 2.x 15 实例010 Linux下PHP的安装配置 16 实例011 Linux下MySQL的安装配置 18 实例012 启用Red Hat Linux 9自带的PHP运行环境 19 实例013 Linux下实现PHP支持Socket 20 实例014 Linux下实现PHP支持mysqli扩展技术 21 实例015 开机自动启动Apache服务 21 实例016 开机自动启动MySQL服务 22 实例017 Linux下发布“读者之家”网站 22 1.3 应用常用开发工具开发PHP程序 23 实例018 应用Dreamweaver开发PHP程序 24 实例019 应用Eclipse开发PHP程序 25 实例020 应用PHPEditor开发PHP程序 27 实例021 应用UltraEdit开发PHP程序 29 实例022 应用Namo WebEditor开发PHP程序 30 第2章 表单及表单元素的应用 33 2.1 获取表单元素提交的值 34 实例023 获取文本框的值 34 实例024 获取隐藏域的值 35 实例025 获取文本域的值 36 实例026 获取复选框的值 37 实例027 获取单选按钮组的值 38 实例028 获取下拉列表的值 40 实例029 获取跳转菜单的值 41 实例030 获取文件域的值 42 2.2 动态添加表单元素 42 实例031 不提交表单获取单选按钮的值 43 实例032 选中单选按钮后显示其他表单元素 44 实例033 根据数据表结构自动生成数据录入页面 45 实例034 投票系统中单选按钮与复选框的应用 47 2.3 下拉列表的应用 50 实例035 在下拉菜单中显示数据表某列的字段值 50 实例036 在下拉菜单中显示数组中的元素 51 实例037 级联菜单的应用 52 实例038 修改数据时下拉列表的默认值为数据库中原数据信息 54 实例039 可输入字符的下拉菜单 56 实例040 应用下拉列表选择所要联机的网站 57 实例041 根据下拉列表的值显示不同控件 58 2.4 文本框组件的应用 60 实例042 自动计算金额 60 实例043 设置文本框的只读属性 61 实例044 设置安全的密码域 63 实例045 限制多行文本域输入的字符个数 64 2.5 表单的综合应用 65 实例046 表单组件的综合应用 65 实例047 同一个页面中的多表单提交 66 实例048 获取表单中提交的所有数据 68 实例049 以文件域的形式显示数据信息 70 第3章 CSS与JavaScript脚本的应用 73 3.1 文字特效 74 实例050 逐个闪烁的文字 74 实例051 荧光灯文字 75 实例052 滚动的文字 77 3.2 控件样式 80 实例053 通过鼠标的移动改变文本框的背景色 80 实例054 改变下拉列表框的背景色 82 实例055 带颜色变化的动态链接按钮 82 实例056 设置图片的样式 83 实例057 设置表格的样式 84 实例058 模拟的进度条 86 3.3 超链接样式 87 实例059 鼠标单击文字超链接样式 87 实例060 鼠标滑过图片超链接样式 88 实例061 鼠标单击文字获得帮助效果 89 3.4 页面样式 90 实例062 动态标题栏 90 实例063 滚动条样式 91 实例064 页面整体风格 92 实例065 首尾页切换特效 94 3.5 导航菜单设计 96 实例066 带图标的文字导航条 96 实例067 flash导航条 97 实例068 按钮导航条 99 实例069 导航条的动画效果 100 实例070 不用图片实现质感导航条 102 实例071 弹出式下拉菜单 103 实例072 二级导航菜单 105 实例073 半透明背景的下拉菜单 106 实例074 展开式导航条 110 实例075 解释型菜单 111 实例076 自动隐藏的弹出式菜单 112 实例077 收缩式导航菜单 114 实例078 树状导航菜单 116 实例079 鼠标右键菜单 117 3.6 状态栏设计 118 实例080 状态栏中的跑马灯文字 119 实例081 在状态栏中收缩显示文字 120 实例082 在状态栏中显示数字时钟 121 3.7 弹出窗口控制 122 实例083 在首页右下角弹出渐显的广告窗口 122 实例084 浮动的广告窗口 124 实例085 打开居中显示详细信息的新窗口 126 实例086 关闭弹出窗口时自动刷新父窗口 128 实例087 在弹出的对话框中选择个性头像 130 实例088 自动关闭的广告窗口 131 实例089 关闭IE主窗口时,不弹出询问对话框 132 实例090 弹出提示对话框并重定向网页 133 3.8 弹出网页对话框 134 实例091 弹出全屏显示的网页模式对话框 134 实例092 网页拾色器 136 实例093 日期选择器 138 3.9 无边框窗口 140 实例094 全屏显示无边框有滚动条窗口 140 实例095 应用JavaScript实现指定尺寸的无边框窗口 142 实例096 应用CSS+DIV实现无边框窗口 143 实例097 通过双击鼠标实现页面自动滚屏 145 3.10 其他 146 实例098 设置主页 147 实例099 收藏本站 147 实例100 离开时启动收藏夹 148 第4章 验证控件 151 4.1 通信类验证 152 实例101 验证E-mail地址 152 实例102 验证网址 153 实例103 验证电话号码 155 实例104 验证邮政编码 156 4.2 日期与时间类验证 157 实例105 验证日期的输入格式 157 实例106 验证时间的输入格式 159 实例107 验证日期与时间的输入格式 161 4.3 文本与数值验证 163 实例108 验证表单元素是否为空 163 实例109 验证输入的数值是否在指定范围内 165 实例110 验证数据是否为数值型 166 实例111 验证用户名和密码是否正确 167 实例112 验证两个文本框的值是否相等 168 实例113 验证输入的文本是否为汉字 170 实例114 限制输入字符串的长度 171 实例115 验证字符串是否以指定字符串开头 172 实例116 验证身份证号码 174 实例117 验证护照编号 175 实例118 验证车牌号码 176 4.4 自定义验证 177 实例119 验证合法的数据表名称 178 实例120 验证货币类型 179 第5章 构建PHP动态网页 181 5.1 页面间的数据传递 182 实例121 通过POST方法提交 182 实例122 通过GET方法提交 183 实例123 通过SESSION实现页面间的数据传递 184 5.2 页面跳转 185 实例124 使用header()函数实现页面跳转 185 实例125 应用HTML标记进行跳转 186 实例126 使用脚本语言实现页面跳转 187 5.3 包含文件 189 实例127 include()函数的应用 189 实例128 include_once()函数的应用 190 实例129 require()函数的应用 191 实例130 require_once()函数的应用 192 实例131 使用switch语句实现站内导航 193 5.4 COOKIE技术 195 实例132 表单提交与COOKIE 195 实例133 简单的COOKIE计数器 197 实例134 使用COOKIE记录用户登录信息 198 实例135 使用COOKIE限制用户访问网站的时间 199 5.5 会话控制 201 实例136 通过SESSION判断用户的权限 201 实例137 通过SESSION禁止页面刷新 203 实例138 通过SESSION存储数据 204 实例139 通过SESSION实现购物车的功能 205 5.6 框架的应用 209 实例140 框架在聊天室中的应用 209 实例141 使用框架嵌套技术居中显示框架页 211 第6章 PHP与MySQL数据库技术 213 6.1 连接MySQL数据库 214 实例142 通过mysql_connect函数连接数据库 214 实例143 通过Mysqli_connect()函数连接数据库 216 实例144 通过面向对象连接数据库 217 6.2 数据插入 218 实例145 单条数据录入 218 实例146 批量数据录入 220 实例147 插入系统日志信息 222 6.3 数据更新 224 实例148 单条数据更新 224 实例149 批量数据更新 226 6.4 数据查询 227 实例150 不刷新页面筛选数据库中的数据 227 实例151 查询企业员工的详细信息 229 6.5 数据删除 231 实例152 单条数据删除 231 实例153 批量数据删除 232 实例154 删除数据前给予提示信息 234 实例155 统计从数据库里删除的记录数 236 6.6 在线删除表或索引 237 实例156 在线删除指定的数据表 237 实例157 在线删除多个指定的数据表 239 实例158 在线删除指定数据表中的索引 241 6.7 清除部分或全部数据表中的数据 243 实例159 清空指定数据表中的所有数据 243 实例160 清空指定数据表中的指定数据 245 实例161 批量清空数据表 246 6.8 MYSQL数据库的备份 248 实例162 通过命令模式备份数据库 248 实例163 通过phpMyAdmin备份数据库 249 实例164 通过手动方式备份数据库 251 6.9 MYSQL数据库的恢复 252 实例165 通过命令模式恢复数据库 252 实例166 通过phpMyAdmin恢复数据库 253 实例167 通过手动方式恢复数据库 255 6.10 动态创建数据库、数据表和字段 255 实例168 动态创建MySQL数据库 255 实例169 动态创建MySQL数据表 257 实例170 动态创建字段 259 实例171 动态创建一个完整的数据库 261 6.11 数据的导入导出 263 实例172 MySQL数据库自身的导入导出 263 实例173 SQL Server数据导入到MySQL数据库 266 实例174 Aceess数据导入到MySQL数据库 268 6.12 分页技术 270 实例175 查询结果的分页显示 271 实例176 单击页码跳转到指定页 272 实例177 输入页码跳转到指定页 275 实例178 超长文本的分页显示 276 实例179 查询结果的分栏显示 278 实例180 分类、分栏和分页的综合应用 279 第7章 PHP与其他数据库技术 283 7.1 PHP操纵ACCESS数据库 284 实例181 通过ADO方式连接ACCESS数据库 284 实例182 通用数据信息的查询 285 实例183 查询结果的分页显示 287 实例184 用户身份验证类的实现 289 实例185 图片的分栏显示 291 7.2 PHP操纵SQL Server数据库 292 实例186 通过ADO方式连接SQL Server数据库 292 实例187 通过mssql_connect()函数连接SQL Server数据库 293 实例188 通过ADO方式实现指定时间段的信息检索 294 实例189 通过函数实现商品信息的检索 296 实例190 通过ADO方式实现输入页码跳转到指定页 297 实例191 通过函数实现单击页码跳转到指定页 300 实例192 添加图书类的实现 302 第8章 SQL查询相关技术 305 8.1 数据库操作 306 实例193 创建数据库 306 实例194 查看数据库 307 实例195 删除数据库 308 8.2 数据表操作 308 实例196 创建数据表 309 实例197 查看数据表 310 实例198 删除数据表 311 8.3 查询常量 312 实例199 查询数值型数据 312 实例200 查询字符串 313 实例201 查询日期型数据 314 实例202 查询逻辑型数据 316 实例203 查询所有非空数据 318 8.4 查询变量 319 实例204 利用变量查询字符串数据 319 实例205 利用变量查询数值型数据 321 8.5 查询指定的n条记录 322 实例206 查询前n条记录 323 实例207 查询后n条记录 324 实例208 查询从指定位置开始的n条记录 325 实例209 查询统计结果中的前n条记录 326 8.6 查询周期、日期 328 实例210 查询指定时间段的数据 328 实例211 按月查询统计数据 329 8.7 大小比较、逻辑查询、重复 330 实例212 查询大于指定条件的记录 330 实例213 查询结果不显示重复记录 332 实例214 NOT与谓词进行组合条件的查询 333 实例215 显示数据表中的重复记录和记录条数 335 8.8 排序、分组统计 336 实例216 对数据进行降序查询 336 实例217 对数据进行多条件排序 337 实例218 对统计结果进行排序 338 实例219 单列数据分组统计 340 实例220 多列数据分组统计 341 实例221 多表分组统计 342 8.9 聚集函数 344 实例222 使用聚集函数SUM对学生成绩进行汇总 344 实例223 使用聚集函数AVG求某班学生的平均成绩 346 实例224 使用聚集函数MIN求销售额、利润最少的商品 347 实例225 使用聚集函数MAX求月销售额完成最多的销售记录 349 实例226 使用聚集函数COUNT求日销售额大于某值的记录数 350 实例227 使用聚集函数First或Last求数据表中第一条或最后一条记录 352 8.10 多表查询 354 实例228 使用select语句进行多表查询 354 实例229 使用表的别名 355 实例230 合并多个结果集 356 8.11 嵌套查询 358 实例231 简单的嵌套查询 358 实例232 复杂的嵌套查询 359 实例233 嵌套查询在查询统计中的应用 361 8.12 子查询 362 实例234 使用子查询作派生的表 362 实例235 使用子查询作表达式 364 实例236 使用子查询关联数据 365 8.13 联合语句 367 实例237 多表联合查询 367 实例238 对联合查询后的结果进行排序 368 实例239 条件联合语句 369 8.14 内连接查询 371 实例240 简单内连接查询 371 实例241 复杂内连接查询 372 8.15 外连接查询 373 实例242 使用外连接进行多表联合查询 373 实例243 left outer join查询 375 实例244 right outer join查询 376 8.16 IN子查询 377 实例245 利用in或notin语句限定范围 377 实例246 用IN查询表中的记录信息 379 实例247 由IN引入的关联子查询 380 8.17 交叉表查询 382 实例248 利用transform分析数据 382 实例249 利用transform统计数据 383 8.18 函数查询 385 实例250 使用格式化函数转换查询条件的数据类型 385 实例251 在查询中使用字符串函数 387 实例252 在查询中使用日期函数 388 8.19 having语句应用 390 实例253 利用having语句过滤分组数据 390 第9章 MySQL高级应用技术 393 9.1 PHP的mysqli扩展 394 实例254 通过mysqli扩展技术实现数据库信息的检索 394 实例255 查看服务器连接错误报告 395 实例256 通过mysqli扩展技术实现多表查询 397 实例257 通过mysqli扩展技术实现内存的回收 398 9.2 MySQL视图的应用 399 实例258 创建视图 400 实例259 修改视图 401 实例260 应用视图 403 9.3 MySQL存储过程 404 实例261 存储过程的创建 404 实例262 使用存储过程实现用户注册 405 9.4 MySQL触发器 407 实例263 创建触发器 407 实例264 查看触发器 408 9.5 MySQL事务 409 实例265 使用事务处理技术实现关联表间信息的删除 409 实例266 使用事务处理技术实现银行的安全转账 411 第10章 字符串的处理技术 413 10.1 字符串的应用及处理 414 实例267 获取字符串的长度 414 实例268 字符串大小写之间的转换 416 实例269 字符串首尾空格的处理 417 实例270 字符串的逆序输出 418 实例271 字符串格式化输出 419 实例272 字符串的分割与连接 420 实例273 特殊字符的查找 421 实例274 字符串的替换 423 实例275 字符串的大小比较 424 实例276 获取两个字符串的相似度 425 实例277 字符串的base64编码 426 实例278 字符串的url编码 427 实例279 特殊字符的转义 429 实例280 字符与ASCII之间的转换 429 实例281 合理定义上传文件名称 430 实例282 通过异或方式对字符串进行加密 432 实例283 金额的格式化输出 433 实例284 字符串首字母的大小写转换 434 实例285 字符数组的建立 434 实例286 字符串与数字之间的转换 435 实例287 利用正则表达式实现字符串的匹配查找 437 实例288 利用IP地址查找主机所在地 438 10.2 Web程序中常见字符串问题处理及解决方案 439 实例289 HTML标记的原义输出 439 实例290 解决用substr()函数对中文字符串截取时的乱码 441 实例291 创建PHP 5.0新型字符串 442 实例292 字符串与HTML标记相互转换 443 第11章 PHP面向对象编程技术 445 11.1 PHP面向对象基础 446 实例293 数据成员的初始化 446 实例294 父类构造函数的调用 447 实例295 对象的克隆 448 实例296 类的继承 449 11.2 PHP中常用类 451 实例297 数据库连接类 451 实例298 数据信息检索类 452 实例299 数据信息录入类 454 实例300 数据信息更改类 455 实例301 数据信息删除类 457 实例302 计数器类 459 实例303 翻页类 460 实例304 购物车类 462 第12章 文件管理 467 12.1 文件上传 468 实例305 以二进制形式上传文件到数据库 468 实例306 上传文件到服务器 469 实例307 限制大小的文件上传 471 实例308 限制上传文件的类型 472 12.2 图片上传 474 实例309 以二进制形式上传图片到数据库 474 实例310 限制上传图片的格式 476 实例311 上传单图片到服务器并显示 477 实例312 上传多图片到服务器并分页显示 479 12.3 下载 481 实例313 通过链接方式下载 481 实例314 应用header()函数实现下载 482 12.4 文件遍历 484 实例315 遍历指定目录下的所有文件 484 实例316 文件浏览 485 12.5 文件操作 488 实例317 创建、复制、移动、删除文件 488 实例318 修改文件名 489 实例319 判断文件是否存在 490 实例320 从文本文件中读取注册服务条款 491 实例321 应用文本文件保存访客人数的计数器 493 实例322 判断文件是否被改动 494 12.6 目录操作 496 实例323 创建目录 496 实例324 删除目录 497 实例325 获取当前脚本目录 498 实例326 读取注册表信息 499 第13章 图像和多媒体技术 503 13.1 头像选择 504 实例327 通过下拉列表选择头像 504 实例328 从网页对话框中选择头像 505 13.2 图像与统计 507 实例329 图形计数器 507 实例330 通过图像显示投票统计结果 508 13.3 控制、显示图片特效 509 实例331 通过鼠标滑轮控制图片大小 509 实例332 显示随机图像 510 实例333 获取页面中图像的实际尺寸 511 实例334 图像的手动播放 512 实例335 图像的自动播放 513 13.4 MP3点播与下载 514 实例336 MP3在线点播 514 实例337 MP3下载 515 13.5 嵌入Flash动画 516 实例338 在网页中嵌入背景透明的Flash 516 实例339 Flash播放器的实现 517 13.6 影音播放 518 实例340 嵌入式流媒体播放器的实现 518 实例341 在网页中加入可控的背景音乐 520 第14章 信息提取与图表分析技术 521 14.1 简单图表 522 实例342 连接GD2函数库 522 实例343 利用GD2函数绘制文字 523 实例344 应用GD2函数绘制几何图形 524 实例345 向图表中添加行和列标签 526 实例346 图表分析产品数据 528 实例347 图表显示数据并打印 529 14.2 柱形图表 531 实例348 单商品月销售量柱形图分析 531 实例349 将汇总数据利用图表分析 533 实例350 对比数据图表分析 535 实例351 图表动态分析不同的数据表 538 实例352 图表分析投票结果 541 14.3 折线图表 543 实例353 商品的价格走势分析 543 实例354 折线图表分析人口出生率 545 实例355 网站年终访问量曲线分析 547 实例356 年销售额及利润图表分析 550 14.4 饼形图表 552 实例357 饼形图分析软件图书市场占有率 552 实例358 多饼形图分析企业各类员工的比例 555 第15章 报表与打印技术 559 15.1 Web打印 560 实例359 调用IE自身的打印功能实现打印 560 实例360 打印指定框架中的内容 561 实例361 利用WebBrowser打印报表 563 实例362 设置页眉页脚 564 15.2 利用Word打印报表 567 实例363 将Web页中的表格导出Word并打印 567 实例364 打开指定的Word文档并打印 569 实例365 调用word自动打印指定格式的会议记录 570 15.3 利用Excel打印报表 572 实例366 将Web页面中的数据导出到Excel 572 实例367 将Web页面中的数据导出到Excel并自动打印 574 15.4 利用CSS样式打印 577 实例368 利用CSS样式打印页面中的指定内容 577 实例369 利用CSS样式实现分页打印 579 15.5 套打印邮寄产品单 581 实例370 打印汇款单 582 实例371 打印快递单 583 实例372 打印信封 585 第16章 网络通信技术 587 16.1 邮件技术 588 实例373 SMTP服务器的安装与配置 588 实例374 POP3服务器的安装与配置 590 实例375 利用mail()函数实现邮件发送 592 实例376 发邮件类 594 实例377 收邮件类 597 实例378 查找邮件 602 实例379 删除邮件 604 实例380 邮件群发 605 16.2 发送短信 607 实例381 通过fsockopen()函数发送短信 607 实例382 通过调用Web Service发送短信 608 实例383 短信群发 610 第17章 PHP与XML技术 613 17.1 读写XML文件 614 实例384 创建XML文件 614 实例385 读取XML文件 615 实例386 添加XML数据 617 实例387 查询XML文件 619 实例388 修改XML文件 620 实例389 删除XML文件 623 实例390 PHP+XML留言板 624 17.2 XML文件转换 628 实例391 XSL转换XML文件 628 实例392 在HTML页面中使用XML文件 629 实例393 在XML文件中应用CSS样式 630 第18章 安全技术 633 18.1 用户登录 634 实例394 用户安全登录 634 实例395 验证码技术登录 635 实例396 防止用户直接输入地址访问PHP文件 637 18.2 数据加密 638 实例397 对登录密码进行base64编码 638 实例398 对查询字符串进行url编码 639 实例399 MD5加密登录用户名称和密码 640 实例400 使用crypt()函数进行加密 642 18.3 Access数据库安全 643 实例401 操作带密码的Access数据库 644 实例402 防止Access数据库被下载 646 18.4 防止SQL注入 647 实例403 过滤HTML非法字符 647 实例404 禁止用户输入字符串中的危险字符 649 18.5 获取客户端信息 650 实例405 确定对方的IP地址 651 实例406 获取客户端TCP/IP端口的方法 652 18.6 禁止用户复制网页内容 653 实例407 禁止复制网页内容 653 实例048 禁止网页被另存为 654 18.7 禁止用户刷新屏幕 655 实例409 屏蔽IE主菜单 655 实例410 屏蔽键盘相关事件 657 实例411 屏蔽鼠标右键 659 第19章 PHP高级应用技术 661 19.1 PHP操纵Word 662 实例412 将数据库中的数据保存到Word 662 实例413 将查询结果保存到Word 664 19.2 PHP操纵Excel 666 实例414 将Excel中的数据导出到MySQL数据库 667 实例415 将查询结果保存到Excel 669 19.3 PHP中压缩与解压文件 672 实例416 PHP中压缩RAR文件 672 实例417 PHP中解压RAR文件 673 实例418 PHP中压缩ZIP文件 674 实例419 PHP中解压ZIP文件 675 19.4 信息共享 676 实例420 在PHP中实现ASP中的Application功能 676 实例421 图形计数器 677 19.5 PHP管理FTP服务器 679 实例422 连接FTP服务器 679 实例423 上传文件到FTP服务器 680 实例424 从FTP服务器中下载文件 682 实例425 更改FTP服务器中的文件名称 683 实例426 删除FTP服务器中指定的文件 684 实例427 在FTP服务器中建立指定的目录 686 实例428 获取FTP服务器中指定目录下的文件列表 687 第20章 综合应用 689 20.1 用户注册 690 实例429 一般用户注册 690 实例430 带检测用户名的用户注册 692 实例431 分步用户注册 694 20.2 留言本 696 实例432 简易留言本 696 实例433 带留言分类的留言本 698 实例434 具有版主回复的留言本 700 20.3 聊天室 702 实例435 数据库形式的聊天室 703 实例436 聊天室中私聊的实现 707 20.4 论坛 710 实例437 查看主题信息 710 实例438 发布主题信息 713 实例439 回复主题信息 714 实例440 删除主题及回复信息 716 20.5 购物车 717 实例441 添加至购物车 718 实例442 查看购物车 719 实例443 从购物车中移去指定商品 722 实例444 修改商品购买数量 723 实例445 清空购物车 724 实例446 收银台结账 725 20.6 博客网站 727 实例447 博客用户图片管理 727 实例448 博客文章评论管理 733 实例449 用户安全登录 738 实例450 用户安全退出 740 20.7 搜索 742 实例451 一般搜索 742 实例452 高级搜索 744 实例453 常用搜索 745 技术要点对应实例位置 749
一、 系统功能描述 1.1 信息发布 新闻:有相关权限的用户可以发送各种业务、行政、人事等单位的相关新闻,被指定接收的用户可以随时查看,第一时间了解单位动态。支持新闻评论,可以直接在新闻及新闻评论中上传文件和图片,可以对重要的新闻进行置顶,有阅读者的回执以及查看每一个阅读者的阅读时间,在发布新闻之前,可以设定审批流程,可以设定必须通过审批才能发布相关新闻。 公告:有相关权限的用户可以选择对某个人、某些人、某个部门或全体人员发送各种通告、制度、会议等消息,并可以随时查看自己已发和已收的公告,可以在发送公告时设置自动回复以确认指定接收人员是否收到,即使一时没在网上也不会错过任何信息,及时沟通,协同工作。可以对重要的公告进行置顶。有阅读者的回执以及查看每一个阅读者的阅读时间。在发布公告之前,可以设定审批流程,可以设定必须通过审批才能发布相关新闻。 通知:有相关权限的用户可以对指定人员发送通知,并可以随时查阅自己已发和已收的通知,对需要留存的通知进行归档。可以在发送通知时设置该通知同时以短信形式发送给指定人员,有效结合当前各种通讯资源,使信息的传递更为及时。可以对重要的通知进行置顶。有阅读者的回执以及查看每一个阅读者的阅读时间。在发布通知之前,可以设定审批流程,可以设定必须通过审批才能发布相关通知。 大事记:可以记录单位发展历程中的重大事件,建立单位的历史档案。可以在发表大事记时直接记录事件内容,也可以上传相关文档。大事记在发表后所有人员都可以发表相关评论,有相关权限的用户可以对事件记录及评论进行维护。便于单位的宣传和新进员工的培训。大事记中可以插入图片及附件。 1.2 公共资源 知识管理:这里是单位各种知识和资源的共享中心,单位可以将各种资料分门别类的存放到这里,便于日后方便的查阅,可以使成功案例、先进经验、技术方法、各种表单、文件资料等资源在这里共享,便于大家共同学习、使用,快速提高。可设置权限以保护机密资料安全。 下载中心:单位可以将平时积累的文摘、收集的信息、经常需要使用到的工具、文件、客户资料等各种资源有序的存放在这里进行统一管理,便于需要的时候及时查阅下载,而不必再东寻西找,浪费时间。系统运行中需要下载的OA助手、控件等也在此下载。 规章制度:政策法规、人事制度、行政制度、财务制度、管理制度、销售制度等各种制度文件的在线存放、查阅,可以方便的进行管理。 知识管理、下载中心、规模制度等模块中,均可以对文档进行按权限的全文检索。包括Word/Excel/PPT/HTML/PDF/RTF等格式。 可以对目录夹设定候修改和访问的权限,只有有权限的员才可以修改目录夹及相关文件,在设定权限时,可以按人来设定,也可以按部门来设定。 可以通过设定,对每个人的上传附件的大小进行限制。 通过突破性的技术,我们可以上传任意大小的文件,突破的IE文件上传大小限制的瓶颈。 实用工具:火车时刻、飞机航班、邮编、电话区号及国际时间等,这些常用工具只需系统管理员设置相关链接后,所有在线用户均可随时查询。 1.3 审批流转 Ÿ 起草申请 Ÿ 我的申请查询 Ÿ 待我审批 Ÿ 经我审批 Ÿ 表单管理 Ÿ 审批管理 在网上起草申请,并发送给相关负责人进行审批,实现无纸化办公。审批人可以在网上直接对申请内容进行修改、审批,注明审批意见,并盖章或签名。申请内容在多个审批人之间按顺序自动流转,审批过程即可以在建立审批模板时设定,也可以由起草者设定。可以在审批管理中根据单位要求设置模板的统一格式,可以设置每个模板的使用者、管理者和修改者。具有使用权限的用户能够使用模板起草申请;具有管理权限的用户能够在表单管理中管理使用该模板起草的申请;具有修改权限的用户能够对模板进行维护。 审批的流程即可以采用固定流程,一个模板梆定一个流程的方式,也可以设定允许在流转过程中自定义流程或修改已设定的流程,流程支持直流、分流、并流、条件分支、流程嵌套以及各种协办、联办等复杂流程。 在审批中,可以按照角色进行审批的流转,可以通过相对路径找到相应的岗位,如审批者的上级领导,当前审批者的上级领导。 流程中可以支持退文的功能,可以退到以前的任何一级,也可以退回到发起人. 在审批过程中,支持痕迹保留,电子印章,手写签名、全文批注。 可以实现催办,督办,统计。 1.4 任务管理 任务管理的作用是实现团队高效率协同办公,团队成员通过任务组实现沟通项目信息、共享项目文档。项目管理者可以在线查看项目进度图示,进行任务绩效统计,对任务内容进行调整,并对团队成员进行督办,提升员工的执行力。 具体功能包括:任务桌面、批量任务、任务查询、我的任务、绩效统计、任务督办、任务管理设置。 1.5 人力资源 实现对单位全体人员从入职到离职的全方位管理,包括以下独立模块: s 人事管理; s 考勤管理; s 招聘管理; s 绩效管理; s 培训管理; s 在线考试; 1.6 收发文管理 A、发文管理是拟稿人根据需要选择行文类别(行文用笺,处理流程,正文模版)起草公文,根据行文类别的流程设定,送交相关人员进行审核,复核,会签、签发、校对等工作,然后由办公室进行发文登记、编号、套头,盖章后进行文件的发放(分发、下发、办结)等工作,最后由公文管理员对办结公文进行归档过程。提供督办、催办功能。 在发文的审批中,可以按照角色进行审批的流转,可以通过相对路径找到相应的岗位,如审批者的上级领导,当前审批者的上级领导。 发文的流程既可以采用固定流程,一个模板梆定一个流程的方式,也可以设定允许在流转过程中自定义流程或修改已设定的流程,流程支持直流、分流、并流、条件分支、流程嵌套以及各种协办、联办等复杂流程。 流程中可以支持退文的功能,可以退到以前的任何一级,也可以退回到发起人. 在审批过程中,支持痕迹保留,电子印章,手写签名、全文批注。 可以实现催办,督办,统计 B、收文管理是公文到达后,收文登记人选择公文类别,登记公文,送交相关人员进行拟办,根据公文类别的设定流程,送交相关人员进行批示、承办、传阅等工作,也可以自定义下一步相关处理人员。并且在流转过程中,只有待办人员才有权打开批办,其他人都不能打开。最后由公文管理员对公文进行归档。归档时,可采用自动归档和手工归档。 由于我们在收发文管理中采用了MS Office插件的技术,系统可以提供:扫描输入、原文引入、手写笔输入、手工录入、从电子邮件中直接转入多种录入方式。 1.7 综合行政 考勤管理: Ÿ 工作时间设定 Ÿ 补签登记 Ÿ 请假登记 Ÿ 外出登记 Ÿ 出差登记 Ÿ 考勤查看 Ÿ 请假查询 Ÿ 外出查询 Ÿ 出差查询 考勤签到根据需要可以设置为每日1次考勤记录或每日2次考勤记录。根据选定的考勤方式可以设置具体的工作时间。补签登记可以帮助忘记考勤登记的人员补签考勤。外出登记可记录外出及返回的时间,并记录外出原由。请假登记和出差登记可以将请假和出差的日期、内容登记备案。所有登记均可在对应查询中查到,在考勤查看中能够查到全部考勤记录及登记记录。 会议管理:包括会议申请、会议自动通知、会议室申请、会议查询、会议管理(会议审批、会议总结、会议纪要、纪要归档、会议维护、会议室设置)等。建立现代化的会议制度,确保会议的必要性和功效性。 车辆管理:包括车辆使用申请、车辆使用查询、车辆管理(使用审批、信息管理、使用维护、维护管理、类型设置)等,帮助单位合理的登记、使用、管理自己的车辆,杜绝公车私用现象的发生。 办公用品:对单位使用到的各种物资进行有效管理,包括购买登记、领用登记、在库查询、领用查询等各个环节的使用情况进行记录和管理。 图书管理:对单位内部书籍进行管理,包括新书登记、图书查询、借阅登记、返还登记等,在图书查询中能够及时查询到图书的具体情况,方便员工借阅。 固定资产:对单位的固定资产进行有效管理,包括资产登记、资产查询、资产折旧等,可以随时查询单位现有资产,按照设置进行资产折旧,查询现有资产的实际价值。 1.8 个人办公 短消息:用户可以向指定人员或部门发送消息,发送消息时可附带文件同时发送。 文件传送:与短消息类似,可以向指定人员或部门发送文件,做到文件的快速传递。 个人文件柜:作为网上的文件柜,用户可以将自己的文档上传到此处并分类保存。在阅读各类新闻、通知、公告、消息及文件时,也可以将附件保存直接保存到此处。 电子邮件:建立自己的邮件中心,方便的给同事或客户发送电子邮件,消除传统信函效率低,成本高的弊端。支持群发。 手机短信:可以方便的给同事、朋友、客户等发短信,即使员工不在单位也可以保持时时沟通,并建立更加紧密的客户关系。支持群发。 工作日程:可以按天、周、月计划自己的工作内容,清楚的查看未完成、要完成、待完成的各项任务的内容、状态和时间,便于用户统筹安排工作,调整进度,及时跟进,彻底执行,确保各项工作的顺利完成。 工作日记:可以每天在网上记录下当天工作的内容和心得,便于日后查阅和总结。可以设置不同的权限查看同事或者下属的日记,以在线监督指导。可以将自己的日记导出系统作为工作档案永久保存下来。 工作计划:做出本周、本月、本季度或本年等的工作计划,任务目标等,在目标的指导下开展工作。 个人考勤:包括上下班登记、外出登记、请假登记、出差登记、个人考勤查询等内容。上下班登记相当于网上签到,既方便又防止作假。在个人办公中的“今日外出人员”可以方便用户查询当日员工外出情况。 通讯录:包括单位通讯录、个人通讯录和公共通讯录。用户可以创建属于自己的名片信息,对同事、朋友、客户、关联单位、政府机关等处的联系人资料分类记录、查询、管理。也便于单位记录业务人员的客户资料,在其离职时避免客户流失。 1.9 报表中心 可以通过报表设计器定义报表模板来制作各类报表,报表模板定义时,如Excel一样,可以定义各种样式,通过自定义SQL或向导生成SQL,生成数据源模板。通过报表设计器,可以生成各类复杂的报表。 在报表设计器中设计完成后的报表模板,上传到OA系统中,访问者就可以查看相关的报表的内容,报表的内容会根据定义好的SQL条件进行实时获取数据。 可以根据要求,自动生成日报表,周报表,月报表,自动发送到相关人员的OA文档中,达到报表自动到桌面的理想的应用境界。 报表中心可以设定相应的权限,权限可以设定到部门,指定人员,人员组。 1.10 系统管理部分 组织机构:即单位的部门设置。部门采用树式结构,可以在任意部门下定义子部门,可以设置某个部门的具体用户,指定部门经理。 用户帐号:可以为新员工建立帐号;可以为遗失密码的用户初使化密码;可以修改用户所在的权限组及部门;可以设置员工的个人信息。 权限组:可以将每个用户设置到不同的权限组中以保证不同用户具有与其身份相对应的权限。可以自由设置每个权限组的权限,本系统的权限设置不仅能够设置用户的菜单项,包括每个画面每个功能都是可以设置的。不具备权限的功能用户是不能看到不能使用的。 天生创想在权限组方面的优势是:可以设定权限到每个菜单,界面上的每个按钮。 系统日志:可以查看系统使用情况。 可以查看系统中每个人,什么时候登陆,什么时候退出,每个登录都操作了哪个功能。并且对使用者的IP地址和地区都做了详细的记录。 管理员设置: Ÿ 单位名称设置 Ÿ 单位格言设置 Ÿ 通知审批设置 Ÿ 公告审批设置 Ÿ 新闻审批设置 Ÿ 内部IP地址段设定 Ÿ 上下班时间设置 Ÿ 实用工具网址链接 Ÿ 管理员对通知、新闻、公告、消息等的删除和强行编辑、置顶。 Ÿ 设定每个用户的服务器硬盘的使用容量以及每次上传文件最大文件的尺寸限制。 可以设置通知、公告、新闻审批人员,如果审批开关被打开,用户在相应功能中发送信息时,被发送的信息将先被发送到审批者处,只有审批者通过审批,信息才能够发布,达到管理的规范化,对于管理要求不是很严格的客户,则可以设定关闭审批功能(系统默认为关闭状态),以便于快速发布信息。 网址:http://www.515158.com/ 演示地址:http://oa.515158.com/ 联系QQ:526605913
可以使用 Apache POI 库来实现将 Framer 生成Word 文档中的 FrameMarker 转换为图片,并将其插入到新的 Word 文档中。 下面是一个简单的示例代码: ```java import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; import org.apache.poi.util.IOUtils; import org.apache.poi.xwpf.usermodel.XWPFDocument; import org.apache.poi.xwpf.usermodel.XWPFFrame; import org.apache.poi.xwpf.usermodel.XWPFPictureData; import org.apache.poi.xwpf.usermodel.XWPFRun; public class FramerToWordExporter { public static void main(String[] args) throws Exception { // 读取 Framer 生成Word 文档 InputStream framerDocInput = new FileInputStream("framer.docx"); XWPFDocument framerDoc = new XWPFDocument(framerDocInput); // 创建新的 Word 文档 XWPFDocument newDoc = new XWPFDocument(); // 遍历 Framer 生成Word 文档中的所有 FrameMarker for (XWPFFrame frame : framerDoc.getFrames()) { XWPFPictureData pictureData = frame.getPictureData(); if (pictureData != null) { // 将 FrameMarker 转换为图片并插入到新的 Word 文档中 byte[] pictureBytes = pictureData.getData(); XWPFRun run = newDoc.createParagraph().createRun(); run.addPicture(new ByteArrayInputStream(pictureBytes), XWPFDocument.PICTURE_TYPE_JPEG, "picture.jpg", Units.toEMU(200), Units.toEMU(200)); } } // 将新的 Word 文档保存到文件中 OutputStream newDocOutput = new FileOutputStream("new.docx"); newDoc.write(newDocOutput); // 关闭流 newDocOutput.close(); framerDocInput.close(); } } ``` 需要注意的是,上述示例代码中的 `Units.toEMU(200)` 表示图片的宽度和高度都为 200 EMU(English Metric Units)。你需要根据实际情况调整图片的大小。另外,由于涉及到文件读写操作,你还需要处理可能抛出的异常。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值