问题描述
SOS!Java!<简要描述:如何将JavaApplet制作的动画导出一个视频文件?>小弟最近遇到一个关于Java的难题,困惑不已,能想的办法都想了,实在是黔驴技穷,茶不思,饭不想,辗转反侧不能寐,唉...各位高手帮帮小弟吧!!!感激不尽...我用JavaApplet制作了一段小视频(用线程实现的),我想用代码实现把这段动画导成一个avi视频(因为用用JavaApplet制作的动画无法用常规播放器播放,这是原因),当然其他格式也行...(注:不用“屏幕录像工具”,想用Java代码生成视频)下面附有Applet源代码和程序中用到的临时图片文件1.jpg,和我期待最终能导出的视频applet.avi高手一定要帮帮我啊,万分感谢!
解决方案
解决方案二:
/*突然发现CSDN不支持文件上传...晕...*//*Move.java*/importjava.awt.*;importjava.applet.*;publicclassMoveextendsAppletimplementsRunnable{privatestaticfinallongserialVersionUID=1L;Imageimg1=null;//声明图片1Threadthd=null;//说明一个线程对象intpause;intx_pos=0,y_pos=50;//说明显示图片的x坐标publicvoidinit(){thd=null;//初始化线程this.setSize(500,400);img1=this.getImage(this.getCodeBase(),"1.jpg");//实例化图片1this.setLayout(null);//无布局}publicvoidstart(){if(thd==null){thd=newThread(this);//产生一个新线程thd.start();}}@SuppressWarnings("deprecation")publicvoidstop(){if(thd!=null){thd.stop();//终止线程thd=null;}}publicvoidrun(){route(500,10);}publicvoidpaint(Graphicsg){g.drawImage(img1,x_pos,50,this);}publicvoidupdate(Graphicsg){Imaget=createImage(getWidth(),getHeight());GraphicsGraImage=t.getGraphics();paint(GraImage);GraImage.dispose();g.drawImage(t,x_pos,0,null);}publicvoidroute(intx_maxpos,intdelay){for(x_pos=0;x_pos<=x_maxpos;x_pos++){try{Thread.sleep(delay);}catch(InterruptedExceptione){e.printStackTrace();}repaint();//重画窗口}}}