博文

JAVA图像相关代码库(2008-05-31 10:35:00)

摘要: JAVA图像相关代码库 var $tag='java,图像,共享,双缓冲,加载';     大学4年,写了不少Java的代码,很多一开始碰到问题都已经得到较好解决,如显示,空指针等等。但是代码太多,容易忘记,现归纳整理如下:   如果大家有自己的独到见解和实用代码。 也欢迎以回复本帖共享自己的产品。   1,ImageLoader类,用于处理JAVA图像加载,变换,显示代码     相信大家都有过用JAVA加载图片失败或出现一些其他莫名错误的经历,因为JAVA加载图片是新开启一个线程,而加载需要一个处于显示状态的监视器(通常的AWT,Swing组件即可)。这两点增加了图片加载失败的可能姓。下面的ImageLoader类可以方便的加载图片,并强制等待图片加载完毕再执行后面的代码而非新开启线程。另外提供了对图像缩放操作的函数。   例子:
ImageLoader loader = new ImageLoader(this,"background.gif",true);
this.backgroundImag = loader.getImage(); //ImageLoader.java import java.awt.*;
import java.awt.image.*;
import java.util.*;
public class ImageLoader
{
 
  protected Component component;  
  protected Image image;
 
   
  protected int imageWidth;   
  protected int imageHeight;
 
 
  protected static BufferedImage buffer = new ......

阅读全文(3445) | 评论:0

JAVA音频处理 (2008-05-31 10:34:00)

摘要: JAVA音频处理           大学4年,写了不少Java的代码,很多一开始碰到问题都已经得到较好解决,如显示,空指针等等。但是代码太多,容易忘记,现归纳整理如下: 如果大家有自己的独到见解和实用代码。 也欢迎以回复本帖共享自己的产品。   1,au播放很方便,但是对于au文件长度小于8k的总是无法播放(play不行,loop可以)。 播放试例
//********************************************************
AudioClip a1 = Applet.newAudioClip(
 new URL("file","localhost","getProperty.au"));
a1.play();
//******************************************************** 2,线程,播放声音会新开启一个后台线程
AudioClip.PLAY();方法开启的是一个后台线程,
如果无其他前台线程存在的话,整个程序就结束,所以一开始没有界面时听不到声音
现在加了一个窗口(前台进程)程序就不会结束,你就可以听到优美的声音了
呵呵 3,meda播放,必须import javax.sound.midi.*;
//*************************************************************
try
{
    this.sequence = MidiSystem.getSequence(new File(midiFile));
    Sequencer sequencer = MidiSystem.getSequencer();
    sequencer.open();
    sequencer.setSequence(this.sequence);
   ......

阅读全文(5215) | 评论:0