问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

刷新就会变的图片

发布网友 发布时间:2022-05-06 00:33

我来回答

4个回答

热心网友 时间:2022-06-28 09:50

我想大家在上论坛时可能都遇到过那种据说每回复一次就会更换一副新图片的贴子吧,而事实上你回复后也确实如此,但其实并不象你想象的那样,即使你不回复,每刷新一次页面那副图都会变,那为什么会这样呢?其实用Servlet来实现这种效果是非常简单的。下面大家看看下面的代码:

import java.awt.Color;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream; import javax.servlet.Servlet;import javax.servlet.ServletException;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.sun.image.codec.jpeg.JPEGCodec;import com.sun.image.codec.jpeg.JPEGImageDecoder;import com.sun.image.codec.jpeg.JPEGImageEncoder;

public class CreateImage extends HttpServlet implements Servlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setHeader("Cache-Control","no-store"); response.setContentType("image/jpeg"); ServletOutputStream out=response.getOutputStream(); String imagePath=request.getSession().getServletContext().getRealPath("images")+"\\"+getRandom()+".jpg"; InputStream imageIn = new FileInputStream(new File(imagePath)); JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(imageIn); BufferedImage image = decoder.decodeAsBufferedImage(); JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); encoder.encode(image); out.close(); } public String getRandom(){ int i1 = (int)(java.lang.Math.random()*10); int i2 = (int)(java.lang.Math.random()*10); return String.valueOf(i1)+String.valueOf(i2); }}

在Images目录下放入100个从00-99命名的jpg文件,然后你在页面中使用来调用,每次刷新就会出现不同的图片,当然偶尔也会出现相同的:)。其实这个原理很简单,将Servlet的类型设为图片型,然后每次随机以流的形式取出一副jpg文件,然后再输出出去。一般论坛上面使用的也都是这种类型的,不信你把把这副图片的网络地址以插入图片的形式加到你的贴子里试试。
当然有时我们可能会想在图片上动态加入一些文字,那应该怎么,其实也很简单,就是利用Graphics这个类来对图片内容进行修改,如下:
import java.awt.Color;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;
import javax.servlet.Servlet;import javax.servlet.ServletException;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.sun.image.codec.jpeg.JPEGCodec;import com.sun.image.codec.jpeg.JPEGImageDecoder;import com.sun.image.codec.jpeg.JPEGImageEncoder;public class CreateImage extends HttpServlet implements Servlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setHeader("Cache-Control","no-store"); response.setContentType("image/jpeg"); ServletOutputStream out=response.getOutputStream(); String imagePath=request.getSession().getServletContext().getRealPath("images")+"\\01.jpg"; InputStream imageIn = new FileInputStream(new File(imagePath)); JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(imageIn); BufferedImage image = decoder.decodeAsBufferedImage(); Graphics g = image.getGraphics(); g.setColor(new Color(255,0,0)); //更改输出字体的颜色 g.setFont(new Font("Default",Font.BOLD,30)); //更改字体大小 g.drawString("Hello",30,100); //在图片上坐标0,13的位置上输出"Hello everyone!" JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); encoder.encode(image); out.close(); }

参考资料:http://www.yannan.cn/bbstemp2/viewthread.php?tid=65183

热心网友 时间:2022-06-28 09:50

前段时间在q上,一个朋友发给我一张照片,说是一张神奇的图片。它神奇的地方就是在缩略图里面是一个美女,打开后却是一张椅子。这是什么原理?
有可能自己弄出来这种效果的图片吗?

图片地址:http://bjpro2.mail.tom.com/coremail/fcg/ldmsapp/1139559323231.jpg?lettsid=KAcFzcDGIeLACTxe&mid=1tbiCQcvG0OGBGlz0gAAsz%250A9%250A8388762%250A1&funcid=readpart&part=2&filename=1139559323231.jpg

如果可以自己制作,具体的步骤是怎么样的?
望高人指点!!
问题补充:打开网址后,点右键,图片另存为。

二楼说的方法不行啊。
而且,怎么刷新都没用啊!

一定要XP的才行。

只要旋转图片,MM就消失。

谢谢二楼。但是,刷新缩略图后再刷新就有变成了mm。

恐怖啊,我拼命刷新了n遍,就失去那个效果了~~

二楼的搞错了吧?? 那是一张图片,在缩略图情况下是mm,打开后是椅子~~
提问者: simba9268 - 试用期 一级

最佳答案
那是因为缩略图的缘故,你要是把图下载下来后"刷新缩略图"就正常了.

这个原因是因为:
假设美女的图片是A,椅子的图片是B,在缩略图状态下各自有自己的缩略图,然后把美女图片删除,把椅子图片名字由B改成A,这样就完了,你也可以做到.
你把文件夹调成"缩略图"模式,在图片文件上点右键"刷新缩略图"
该情况就是利用了缩略图缓存更新不及时的BUG,刷新就好了.就是在XP环境下,
http://itbbs.pc.com.cn/topic.jsp?tid=2627757&topicPage=1
你看17楼的解释,呵呵,这个系统做得太烂,好几次都没有贴成功.

热心网友 时间:2022-06-28 09:51

好爽啊,我也想要!知道了我一定告诉你!!

热心网友 时间:2022-06-28 09:51

我也想知道,究竟怎么做啊?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
康复者的血清中含有什么免疫分子 血清里面有什么 走读的定义在哪些教育阶段适用? PostgreSQL修改数据库表的列属性操作 Ubuntu调整postgresql默认路径 ubuntu – Postgresql:更改默认数据路径 刘邦几个老婆刘邦老婆吕雉和戚夫人的不同结局 刘邦几个老婆?. 如何防止父母在微信群里抢红包? 有哪些适合夏天选择的长裙款式值得推荐? 大家好 我今年15 我前几天“色枳”满脑子都是于性有关的东西 无心学习 在大家帮助下我学会了* 请问... valleyhu是什么人 很想知道 我看了他的blog和插画比较喜欢 如何删除QQ阅读器里下载的书,我手机是5233的 谁有300X170而且必须是24-bit的bmp文件大小要在150k以下 qq阅读iphone版怎么清理缓存 苹果手机怎样彻底删除下载过的小说? QQ阅读里面的书怎么删掉 QQ阅读书籍的删除方法 金庸奇侠传攻略 QQ阅读里面下载的字体怎么删除? 女生烦恼 怎么把内存卡中的QQ阅读删了? 南宁中学美女图 谁有美人图的百度云资源,找很久了 微信不绑定银行卡能接转账吗 幼师资格证必须二甲吗? 艾灸多久一次? 艾灸一个穴位灸多长时间? 艾灸一个穴位要多久? 艾灸一次灸多久合适? 艾灸时间一般要多久较合适? 网络编辑做什么? 智永的书法特点&薛稷的书法特点 陈建贡的著作 书法作业:名词解释①字组②天下第三行书③冯承素④《淳化阁帖》⑤李思训碑⑥千金帖7墨迹8简牍 竹简是什么时代的书写材料? 额,社会实践的小报怎么做,主题是《读书之星》 复合彩光和点阵激光哪种去痘印好。而且副作用也小一点的。点阵激光的话有红血丝的会不会不适合做? 去痘印用复合彩光好还是点阵激光好。。。非诚勿扰。。。 脸上痘印,毛孔粗大,暗沉,做镭射净肤效果好还是的点阵激光加彩光呢?这些以后对皮肤有伤害吗? 痘痕痘印暗沉毛孔粗大,想做彩光嫩肤 彩光去痘印 我觉得点阵激光会毁容? 彩光能修复浅浅的疤痕吗 痘坑最有效的方法就是有用复合采光进行治疗,复合彩光通过其特定的波长穿透皮肤,直达皮肤的真皮层,作用 黑胶CD可以在留声机播放吗 现在的留声机还能播放黑胶唱片吗? 车载黑胶唱片能不能在留声机上用 留声机的黑胶,cd,优盘怎么切换 留声机的黑胶、CD、优盘怎么切换 问一黑胶唱片跟黑胶CD是一回事吗?问二:黑胶唱片是留声机上用的吧?问三:黑胶唱片放音时有杂音吗?