??xml version="1.0" encoding="utf-8" standalone="yes"?> W者从事AJAX 斚w的研发多q_参与开发了目前国内较ؓ成熟的AJAXq_ -dorado 。根据笔者的l验Q导致这U结果的Ҏ原因q不在AJAX 。很多时候系l响应速度的降低都是由不够合理的界面设计和不够高效的编E习惯造成的。下面我们就来分析几?AJAX 开发过E中需要时L意的环节?/p>
<!-- [if !supportLists]-->n <!-- [endif]-->合理的用AJAX客户端编E和q程q程调用?/p>
AJAX客户端的~程主要都是Z JavaScript 的。?JavaScript 是一U解释型的编E语aQ它的运行效率相对于 Java {都要稍逊一{V同?JavaScript 又是q行在浏览器q样一个严格受限的环境当中。因此开发h员对于哪些逻辑可以在客L执行应该有一个清醒的认识?/p>
在实际的应用中究竟应该怎样使用 客户端编E,q依赖于开发h员的l验判断。这里很多问题是只可意会的。由于篇q有限,在这里我们大致归U_下面q几个注意事: <!-- [if !supportLists]-->u <!-- [endif]-->可能避免频J的使用q程q程调用Q例如避免在循环体中使用q程q程调用?/p>
<!-- [if !supportLists]-->u <!-- [endif]-->如果可能的话可能?AJAX 方式的远E过E调用(异步方式的远E过E调用)?/p>
<!-- [if !supportLists]-->u <!-- [endif]-->避免重量的数据操作放|在 客户端。例如:大批量的数据复制操作、需要通过大量的数据遍历完成的计算{?/p>
<!-- [if !supportLists]-->n <!-- [endif]-->改进?DOM 对象的操作方式?/p>
客户端的~程中,?DOM 对象的操作往往是最Ҏ占用 CPU 旉的。而对?DOM 对象的操作,不同的编E方法之间的性能差异又往往是非常大的?/p>
以下是三D运行结果完全相同的代码Q它们的作用是在|页中创Z?10x1000 的表根{然而它们的q行速度却有着天壤之别?/p>
q里?#8220;试代码 1 ”?#8220;试代码 2 ”之间的差别在于在创徏表格单元时用了不同?API Ҏ。?#8220;试代码 2 ”?#8220;试代码 3 ” 之间的差别在于处理顺序的略微不同?/p>
“试代码 1 ”?#8220;试代码 2 ”之间如此大的性能差别我们无从分析Q目前所知的?insertRow ?insertCell ?DHTML 中表格特有的 API Q?createElement ?appendChild ?W3C DOM 的原?API 。而前者应该是对后者的装。不q,我们q不能因此而得出结?DOM 的原?API L优于对象Ҏ?API 。徏议大家在需要频J调用某一 API Ӟ对其性能表现做一些基本的试?/p>
“试代码 2 ”?#8220;试代码 3 ”之间的性能差异主要来自于他们的构徏序不同?#8220;试代码 2 ”的做法是首先创徏最外层?<TABLE> 对象Q然后再在@环中依次创徏 <TR> ?<TD> 。?#8220;试代码 3 ”的做法是首先在内存中由内到外的构建好整个表格Q最后再它d到网中。这样做的目的是可能的减少览器重新计页面布局的次数。每当我们将一个对象添加到|页中时Q浏览器都会试寚w面中的控件的布局q行重新计算。所以,如果我们能够首先在内存中整个要构造的对象全部创徏好,然后再一ơ性的d到网中。那么,览器将只会做一ơ布局的重计算 。ȝZ句话那就是越晚执?appendChild 好。有时ؓ了提高运行效率,我们甚至可以考虑先?removeChild 已存在的控件从面中移除,然后构造完成后再重新将其放|回面当中?/p>
<!-- [if !supportLists]-->n <!-- [endif]-->提高字符串篏加的速度 在?AJAX 提交信息Ӟ我可能常帔R要拼装一些比较大的字W串通过 XmlHttp 来完?POST 提交。尽提交这样大的信息的做法看v来ƈ不优雅,但有时我们可能不得不面对q样的需求。那?JavaScript 中对字符串的累加速度如何呢?我们先来做下面的q个实验。篏加一个长度ؓ 30000 的字W串?/p>
q段代码耗时 14.325 U,l果q不理想。现在我们将代码改ؓ如下的Ş式: q段代码耗时 0.359 U!同样的结果,我们做的只是首先D一些较的字符串然后再l装成更大的字符丌Ӏ这U做法可以有效的在字W串D的后期减内存复制的数据量。知道了q一原理之后我们q可以把上面的代码进一步拆散以后进行测试。下面的代码仅耗时 0.140 U?/p>
不过Q上面这U做法也许ƈ不是最好的Q如果我们需要提交的信息?XML 格式的(其实l大多数情况下,我们都可以设法将要提交的信息l装?XML 格式Q,我们q能扑ֈ更高效更优雅的方?— 利用 DOM 对象为我们组装字W串。下面这D代买组装一个长度ؓ 950015 的字W串仅须耗时 0.890 U?/p>
<!-- [endif]-->避免 DOM 对象的内存泄漏?/p>
关于 IE ?DOM 对象的内存泄露是一个常常被开发h员忽略的问题。然而它带来的后果却是非怸重的Q它会导?IE 的内存占用量持箋上升Qƈ且浏览器的整体运行速度明显下降。对于一些泄露比较严重的|页Q甚臛_要刷新几ơ,q行速度׃降低一倍?/p>
比较常见的内存泄漏的模型?#8220; 循环引用 模型”?#8220; 闭包函数 模型”?#8220; DOM 插入序模型” , 对于前两U泄漏模型,我们都可以通过在网|构时解除引用的方式来避免。而对?#8220; DOM 插入序模型”则需要通过改变一些惯有的~程习惯的方式来避免?/p>
有关内存泄漏的模型的更多介绍可以通过 Google 很快的查刎ͼ本文不做q多的阐q。不q,q里我向您推荐一个可用于查找和分析网内存泄露的工?— Drip Q目前的较新版本?0.5 Q下载地址?http://outofhanwell.com/ieleak/index.php <!-- [if !supportLists]-->n <!-- [endif]-->复杂面的分D装载和初始?/p>
对系l当中某些确实比较复杂而又不便使用 IFrame 的界面,我们可以对其实施分段装蝲。例如对于多|{界面Q我们可以首先下载和初始化多|{默认,然后利用 AJAH Q?asynchronous JavaScript and HTML Q技术来异步的装载其他标{N中的内容。这样就能保证界面可以在W一旉首先展现l用戗把整个复杂界面的装载过E分散到用户的操作过E当中?/p>
<!-- [if !supportLists]-->n <!-- [endif]-->利用 GZIP 压羃|络量?/p>
除了上面提到的这些代码的改良之外,我们q可以利?GZIP 来有效的降低|络量。目前常见的L览器已l全部支?GZIP 法Q我们往往只需要编写少量的代码可以支?GZIP 了。例如在 J2EE 中我们可以在 Filter 中通过下面的代码来判断客户端浏览器是否支持 GZIP 法Q然后根据需要利?java.util.zip.GZIPOutputStream 来实?GZIP 的输出?/p>
一般而言Q?GZIP 对于 HTML ?JSP 的压~比可以辑ֈ 80% 左右Q而它造成的服务端和客L的性能损耗几乎是可以忽略的。结合其他因素,支持 GZIP 的网站有可能为我们节U?50% 的网l流量。因?GZIP 的用可以ؓ那些|络环境不是特别好的应用带来显著的性能提升。?Http 的监视工?Fiddler 可以方便的检出|页在?GZIP 前后的通讯数据量?Fiddler 的下载地址?http://www.fiddlertool.com/fiddler/ 关于 Web 应用的性能优化其实是一个非常大的话题。本文由于篇q有限,只能涉及其中的几个细节,q且也无法将q些l节的优化方式全面的展现l大家。期望本文能够引起大家对 Web 应用其是客L性能优化的充分重视。毕竟服务端~程技巧已为大家熟知多q_在服务端挖掘性能的潜力已l不大了。而在客户端的Ҏ改进往往能够得到令h惊奇的性能提升?/p>
【编辑推荐?/p>
W者从事AJAX 斚w的研发多q_参与开发了目前国内较ؓ成熟的AJAXq_ -dorado 。根据笔者的l验Q导致这U结果的Ҏ原因q不在AJAX 。很多时候系l响应速度的降低都是由不够合理的界面设计和不够高效的编E习惯造成的。下面我们就来分析几?AJAX 开发过E中需要时L意的环节?/p>
<!-- [if !supportLists]-->n <!-- [endif]-->合理的用AJAX客户端编E和q程q程调用?/p>
AJAX客户端的~程主要都是Z JavaScript 的。?JavaScript 是一U解释型的编E语aQ它的运行效率相对于 Java {都要稍逊一{V同?JavaScript 又是q行在浏览器q样一个严格受限的环境当中。因此开发h员对于哪些逻辑可以在客L执行应该有一个清醒的认识?/p>
在实际的应用中究竟应该怎样使用 客户端编E,q依赖于开发h员的l验判断。这里很多问题是只可意会的。由于篇q有限,在这里我们大致归U_下面q几个注意事: <!-- [if !supportLists]-->u <!-- [endif]-->可能避免频J的使用q程q程调用Q例如避免在循环体中使用q程q程调用?/p>
<!-- [if !supportLists]-->u <!-- [endif]-->如果可能的话可能?AJAX 方式的远E过E调用(异步方式的远E过E调用)?/p>
<!-- [if !supportLists]-->u <!-- [endif]-->避免重量的数据操作放|在 客户端。例如:大批量的数据复制操作、需要通过大量的数据遍历完成的计算{?/p>
<!-- [if !supportLists]-->n <!-- [endif]-->改进?DOM 对象的操作方式?/p>
客户端的~程中,?DOM 对象的操作往往是最Ҏ占用 CPU 旉的。而对?DOM 对象的操作,不同的编E方法之间的性能差异又往往是非常大的?/p>
以下是三D运行结果完全相同的代码Q它们的作用是在|页中创Z?10x1000 的表根{然而它们的q行速度却有着天壤之别?/p>
q里?#8220;试代码 1 ”?#8220;试代码 2 ”之间的差别在于在创徏表格单元时用了不同?API Ҏ。?#8220;试代码 2 ”?#8220;试代码 3 ” 之间的差别在于处理顺序的略微不同?/p>
“试代码 1 ”?#8220;试代码 2 ”之间如此大的性能差别我们无从分析Q目前所知的?insertRow ?insertCell ?DHTML 中表格特有的 API Q?createElement ?appendChild ?W3C DOM 的原?API 。而前者应该是对后者的装。不q,我们q不能因此而得出结?DOM 的原?API L优于对象Ҏ?API 。徏议大家在需要频J调用某一 API Ӟ对其性能表现做一些基本的试?/p>
“试代码 2 ”?#8220;试代码 3 ”之间的性能差异主要来自于他们的构徏序不同?#8220;试代码 2 ”的做法是首先创徏最外层?<TABLE> 对象Q然后再在@环中依次创徏 <TR> ?<TD> 。?#8220;试代码 3 ”的做法是首先在内存中由内到外的构建好整个表格Q最后再它d到网中。这样做的目的是可能的减少览器重新计页面布局的次数。每当我们将一个对象添加到|页中时Q浏览器都会试寚w面中的控件的布局q行重新计算。所以,如果我们能够首先在内存中整个要构造的对象全部创徏好,然后再一ơ性的d到网中。那么,览器将只会做一ơ布局的重计算 。ȝZ句话那就是越晚执?appendChild 好。有时ؓ了提高运行效率,我们甚至可以考虑先?removeChild 已存在的控件从面中移除,然后构造完成后再重新将其放|回面当中?/p>
<!-- [if !supportLists]-->n <!-- [endif]-->提高字符串篏加的速度 在?AJAX 提交信息Ӟ我可能常帔R要拼装一些比较大的字W串通过 XmlHttp 来完?POST 提交。尽提交这样大的信息的做法看v来ƈ不优雅,但有时我们可能不得不面对q样的需求。那?JavaScript 中对字符串的累加速度如何呢?我们先来做下面的q个实验。篏加一个长度ؓ 30000 的字W串?/p>
q段代码耗时 14.325 U,l果q不理想。现在我们将代码改ؓ如下的Ş式: q段代码耗时 0.359 U!同样的结果,我们做的只是首先D一些较的字符串然后再l装成更大的字符丌Ӏ这U做法可以有效的在字W串D的后期减内存复制的数据量。知道了q一原理之后我们q可以把上面的代码进一步拆散以后进行测试。下面的代码仅耗时 0.140 U?/p>
不过Q上面这U做法也许ƈ不是最好的Q如果我们需要提交的信息?XML 格式的(其实l大多数情况下,我们都可以设法将要提交的信息l装?XML 格式Q,我们q能扑ֈ更高效更优雅的方?— 利用 DOM 对象为我们组装字W串。下面这D代买组装一个长度ؓ 950015 的字W串仅须耗时 0.890 U?/p>
<!-- [endif]-->避免 DOM 对象的内存泄漏?/p>
关于 IE ?DOM 对象的内存泄露是一个常常被开发h员忽略的问题。然而它带来的后果却是非怸重的Q它会导?IE 的内存占用量持箋上升Qƈ且浏览器的整体运行速度明显下降。对于一些泄露比较严重的|页Q甚臛_要刷新几ơ,q行速度׃降低一倍?/p>
比较常见的内存泄漏的模型?#8220; 循环引用 模型”?#8220; 闭包函数 模型”?#8220; DOM 插入序模型” , 对于前两U泄漏模型,我们都可以通过在网|构时解除引用的方式来避免。而对?#8220; DOM 插入序模型”则需要通过改变一些惯有的~程习惯的方式来避免?/p>
有关内存泄漏的模型的更多介绍可以通过 Google 很快的查刎ͼ本文不做q多的阐q。不q,q里我向您推荐一个可用于查找和分析网内存泄露的工?— Drip Q目前的较新版本?0.5 Q下载地址?http://outofhanwell.com/ieleak/index.php <!-- [if !supportLists]-->n <!-- [endif]-->复杂面的分D装载和初始?/p>
对系l当中某些确实比较复杂而又不便使用 IFrame 的界面,我们可以对其实施分段装蝲。例如对于多|{界面Q我们可以首先下载和初始化多|{默认,然后利用 AJAH Q?asynchronous JavaScript and HTML Q技术来异步的装载其他标{N中的内容。这样就能保证界面可以在W一旉首先展现l用戗把整个复杂界面的装载过E分散到用户的操作过E当中?/p>
<!-- [if !supportLists]-->n <!-- [endif]-->利用 GZIP 压羃|络量?/p>
除了上面提到的这些代码的改良之外,我们q可以利?GZIP 来有效的降低|络量。目前常见的L览器已l全部支?GZIP 法Q我们往往只需要编写少量的代码可以支?GZIP 了。例如在 J2EE 中我们可以在 Filter 中通过下面的代码来判断客户端浏览器是否支持 GZIP 法Q然后根据需要利?java.util.zip.GZIPOutputStream 来实?GZIP 的输出?/p>
一般而言Q?GZIP 对于 HTML ?JSP 的压~比可以辑ֈ 80% 左右Q而它造成的服务端和客L的性能损耗几乎是可以忽略的。结合其他因素,支持 GZIP 的网站有可能为我们节U?50% 的网l流量。因?GZIP 的用可以ؓ那些|络环境不是特别好的应用带来显著的性能提升。?Http 的监视工?Fiddler 可以方便的检出|页在?GZIP 前后的通讯数据量?Fiddler 的下载地址?http://www.fiddlertool.com/fiddler/ 关于 Web 应用的性能优化其实是一个非常大的话题。本文由于篇q有限,只能涉及其中的几个细节,q且也无法将q些l节的优化方式全面的展现l大家。期望本文能够引起大家对 Web 应用其是客L性能优化的充分重视。毕竟服务端~程技巧已为大家熟知多q_在服务端挖掘性能的潜力已l不大了。而在客户端的Ҏ改进往往能够得到令h惊奇的性能提升?/p>
AJAX 的出现极大的改变?Web 应用客户端的操作模式Q它使的用户可以在全心工作时不必频繁的忍受那令h厌恶的页面刷新。理Z AJAX 技术在很大的程度上可以减少用户操作的等待时_同时节约|络上的数据量。而然Q实际情况却q不Lq样。用h怼抱怨用?AJAX 的系l响应速度反而降低了。本文将谈谈如何提高响应速度?/ul>
]]>AJAX 的出现极大的改变?Web 应用客户端的操作模式Q它使的用户可以在全心工作时不必频繁的忍受那令h厌恶的页面刷新。理Z AJAX 技术在很大的程度上可以减少用户操作的等待时_同时节约|络上的数据量。而然Q实际情况却q不Lq样。用h怼抱怨用?AJAX 的系l响应速度反而降低了。本文将谈谈如何提高响应速度?/ul>
]]>
现在的我们已l到了谈婚论嫁的q龄Q?br />
但是w边好多同学和同事仍然是单n?br />
当我问及他们的时候,回答都是Q婚L件大事不敢太草率了,
所以选自己另一半的时候更多的是理智?br />
然而,好多没谈q恋q是期望自p谈一场真正的恋爱Q?br />
然后和自己心q人携手走入婚ȝD堂?br />
但是谈恋爱对80q代的我们来说已l成ZU奢侈,
有这U想法的人恐怕不只是我一个hQ因为我们都谈不h׃?br />
不管谈过q是没谈q,都不敢把太多的感情放在恋׃Q?br />
因ؓx失败,我们已经承受不v?
有同事去怺Q有时不错,回来后就l常联系。但是她说找不到恋爱的感觉,更像是朋友,
他们不会付出太多的感情,也不会对你太好?br />
是啊Q可以理解,
因ؓ男h们也x,他们同样不敢d试,
x自己是剃头挑子一头热?br />
姐妹们谈起婚ȝ时候L在说Q找个对自己好的男h嫁了吧Q?br />
不管自己喜不喜欢Q结婚后也会对他好,
生个Babyt踏实实q一辈子?br />
h朋友则是找个会q日子的女hQ?br />
好好待她Q安安稳E日子好了,
因ؓ在外面打拼真的很累,x个温暖家?br />
才发现恋爱已l离我们q去Q?br />
剩下的只是婚姅R生zR日子?
x我们的这?0后的ZQ爱情远L们,l婚又像是完成命一P
l济条g也不是那么重要,
找个男h(女h)t踏实实q日子才是我们的宗旨?br />
当妹妹告诉我她们宿舍的女孩如何如何谈恋爱Q?br />
如何如何换男朋友Q如何如何浪漫,
我只能感?#8220;你们q有谈恋q资本和勇气?#8221;
妹妹说你也不老啊Q别L自己想的那么老,赶快l我找个姐夫?br />
我们q不是承认自p,臛_我这栯为,但是爱情观和婚姻观还是大不一L?
当有朋友问v我什么时候结婚?我说q男朋友q没有和谁结婚啊Q?#8220;那找一个嘛Q?#8221;
“又不是逛商场,说找个就找个Q?#8221;“哎呀Q要求不要那么高啊!”
其实我也和姐妹们一Lx找个仅仅Ҏ好的好了,
相貌、学历、经都不重要,重要的是个h能力?br />
“三高政策”也只是我们茶余饭后开的玩W话|了?br />
姐妹们经常说Q当真正有一个疼我们、爱我们的h摆在面前的时候,
我们一定好好珍惜?br />
是现在的好男人少了吗Q?br />
不是Q我不这栯为,好男是很多的Q?br />
只是我们没有发觉又或者是发觉了没有勇气去说服自己?br />
好多奛_都是放不下自q持,总认为男孩应该主动?br />
因ؓ我们不像90q代的h们敢爱敢恨,
可以大胆说出自己的爱Q哪怕是被拒l?br />
臛_我n边的好多朋友都是q样Q错q了好多好男人,
当自己心q男h成ؓ别h的老公的时候,
而且是通过别h介绍l婚的时候,
我们只能偷偷的抹一把泪Qؓ他们福?br />
又或者关几天自己闭Q故事的l局往往是那么伤感?br />
Z么我们宁愿彼此都受伤Q也不愿意把心中的爱说出来呢Q?br />
因ؓ我们L不确定对方心里是否有我们?br />
所以我们L在矛盾中把自q恋爱丢掉了,
不知不觉来Cl婚的年龄?br />
可是此时我们真的已经谈不h׃Q?
喜欢隐n了,
不怎么爱在里发言?
不论和多h在一块,手机L着QQQ?br />
一堆h聚在一块,一Z台手机,各玩各的?br />
同学聚会必修的两个项目:吃饭QKTV
孩都开始叫自己叔叔或者阿姨了Q?br />
虽然l常不大情愿地反驳着Q叫姐姐Q叫哥哥
永远寂寞Q不你是一人独处时Q还是n在h当中,
像那首歌中q一P孤单Q是一个h的狂Ƣ,狂欢Q是一h的孤单?br />
没那么愤青了Q遇C公的时候,会告诉自己,C会是q样Q?br />
可以不看电视Q但电脑是必需品,
出门y达必带三g宝:手机Q钥匙,?br />
永远不知道钱花哪了,没怎么吃,没怎么I?br />
消极Q拒l长大?br />
不喜Ƣ被成熟Q?br />
熟h面前是话唠,生h面前一a不发Q?br />
爱好中必定有一Ҏ睡觉Q?br />
成天泡在|上Q又不知道做什么好?br />
最常说的一句话?#8220;无聊”,
管Q他们在|络上,花去了大把时间?br />
减肥是永恒不变的话题和行动,
饿了吃Q经常早饭午饭ƈ在一起吃Q?br />
打字的手法相当不准确Q但q是打的很快?br />
凌晨12点前很少会入睡,
什么都可以“随便”Q因为没那么多时_也不在意那么多的事情?br />
毫无理由没有资本的高Ԍ骨子里却自卑Q期待肯定,期待认可Q被讨厌做hp|的时候连说话的勇气都没有?br />
觉得别h不可能了解自己,q以此作为对别h不屑的理由?br />
因ؓ别h都恋׃Q所以自己就恋爱了,更多的是l爱而不是恋爱,然后q自己都开始怀疑曾l对爱情?坚持?br />
曄以ؓ一辈子陪在w边的朋友,某天某月Q就H然发现他们都不见了?br />
午夜醒来Q才愕然发现Q从来都是只有自׃个hQ?br />
成长Q越Ҏ孤单?br />
80后的我们Q有很多的梦惻I有的实现了有的破灭了?br />
80后的我们Q有的出名,有的默默无闻?br />
80后的我们Q挣扎过 彷Lq,q是来了?br />
80后的我们Q退去青春年q的智嫩Q开始适应C会大家庭?br />
我们的心里都很清楚,我们l历了太多太多?br />
亲情的分与合Q?br />
爱情的分与合Q?br />
友情的分与合Q?br />
曾不一切的q求q的Q后来变的一文不值得?br />
父母曄般阻挠的事,直到自己受伤Q才明白Q父母原来是对的?br />
曾无数次的问q自己,Z 么活着Q?br />
到后来,已经懒得的去x着的意义?br />
曾ؓ了爱情可以不好好的读书,
到后来ؓ了工作可以丢下爱情?br />
现在是否q记得最初的梦想Q?br />
或者说Q?q有多少人,一直坚持着自己q少时的梦想?br />
在家里,父母Ҏ们百依百,
Z安Q我们对C会百依N?br />
看不惯的事情也就渐渐习惯了,不知道这U习惯是好是坏?
我甚至不知道我现在的梦想应该是什么?
但有一点的是肯定的Q?br />
不会再做一些年轻狂的梦了......
]]>
try {
// dW一张图?br />
// File fileOne = new File("D:\\qq.jpg");
// BufferedImage ImageOne = ImageIO.read(fileOne);
// int width = ImageOne.getWidth();//囄宽度
// int height = ImageOne.getHeight();//囄高度
// 对第二张囄做相同的处理
File fileTwo = new File("D:\\qq.jpg");
BufferedImage ImageTwo = ImageIO.read(fileTwo);
int width = ImageTwo.getWidth();// 囄宽度
int height = ImageTwo.getHeight();// 囄高度
int height2 = 20;
BufferedImage ImageOne = new BufferedImage(width, height2,
BufferedImage.TYPE_4BYTE_ABGR);
// ImageOne.get
Graphics g = ImageOne.getGraphics();//
g.fillRect(0, 0, width, height);
g.setColor(Color.blue);
Font mFont = new Font("宋体", Font.PLAIN, 12);
g.setFont(mFont);
String text = "d文字试";
g.drawString(text, 0, 10);
// 从图片中dRGB
int[] ImageArrayOne = new int[width * height2];
ImageArrayOne = ImageOne.getRGB(0, 0, width, height2,
ImageArrayOne, 0, width);
int[] ImageArrayTwo = new int[width * height];
ImageArrayTwo = ImageTwo.getRGB(0, 0, width, height, ImageArrayTwo,
0, width);
// 生成新图?br />
BufferedImage ImageNew = new BufferedImage(width, height + height2,
BufferedImage.TYPE_INT_RGB);
ImageNew.setRGB(0, 0, width, height2, ImageArrayOne, 0, width);// 讄上半部分的RGB
// ImageNew.setRGB(width,0,width,height,ImageArrayTwo,0,width);//讄叛_部分的RGB
ImageNew.setRGB(0, height2, width, height, ImageArrayTwo, 0, width);// 讄下半部分的RGB
File outFile = new File("d:\\qq2.jpg");
ImageIO.write(ImageNew, "jpg", outFile);// 写图?br />
} catch (Exception e) {
e.printStackTrace();
}
}