如果在vj++环境下:
public void paint(Graphics g){
g.drawimage(imagename,int x,int y,int width,int height,imageowner);
}
x,y是坐标,width,height是图象大小。
public void paint(Graphics g){
g.drawimage(imagename,int x,int y,int width,int height,imageowner);
}
x,y是坐标,width,height是图象大小。
import java.awt.image.*;
import java.awt.*;
import java.net.*;public class app extends java.applet.Applet {
Image source;
Image resizedImage; public void init() {
MediaTracker media = new MediaTracker(this);
// java how-to image for example
source = getImage(getDocumentBase(),"jht.gif");
media.addImage(source,0);
try {
media.waitForID(0);
// scale down, half the original size
ImageFilter replicate =
new ReplicateScaleFilter
(source.getWidth(this)/2, source.getHeight(this)/2);
ImageProducer prod =
new FilteredImageSource(source.getSource(),replicate);
resizedImage = createImage(prod);
media.addImage(resizedImage,1);
media.waitForID(1);
}
catch(InterruptedException e) {}
} public void paint(Graphics g) {
g.drawImage(source, 10,10,this);
g.drawImage(resizedImage,10, 80,this);
}
}
This example display a GIF with a fade-in, fade-out effect. import java.applet.*;
import java.awt.*;
import java.awt.image.*;
import java.net.*;public class FadeImage extends Applet {
Image img, faded;
int level, sign;
MediaTracker tracker;
AlphaFilter f;
FilteredImageSource fis; public void init() {
level = 0;
sign = 15;
tracker = new MediaTracker(this);
try {
img = getImage(new URL(getDocumentBase(), "gumby.gif"));
tracker.addImage(img,0);
tracker.waitForID(0);
}
catch (Exception e) {
e.printStackTrace();
}
f = new AlphaFilter();
f.setLevel(level);
fis = new FilteredImageSource(img.getSource(), f) ; FadeThread ft = new FadeThread();
ft.delayedFading(this, 20);
ft.start();
} public void paint(Graphics g) {
if (faded != null) {
g.drawImage(faded,0,0,this);
}
} public void fadeIt() {
Graphics g = this.getGraphics();
level += sign;
if (level < 0) {
level=0;
sign = sign * -1;
}
if (level > 255) {
level=255;
sign = sign * -1;
try {
Thread.sleep(1000);
}
catch (Exception e) {}
}
f.setLevel(level);
if (faded != null) faded.flush();
faded = this.createImage(fis);
tracker.addImage(faded,0);
try {
tracker.waitForID(0);
}
catch (Exception ex) {
ex.printStackTrace();
}
repaint();
} class FadeThread extends Thread {
FadeImage fadeApplet;
int delay; public void delayedFading(FadeImage f, int delay) {
this.fadeApplet = f;
this.delay = delay;
} public void run() {
while (true) {
try {
sleep(delay);
fadeApplet.fadeIt();
}
catch (Exception e) {
e.printStackTrace();
}
}
}
} class AlphaFilter extends RGBImageFilter {
private int level; public AlphaFilter() {
canFilterIndexColorModel = true;
} public void setLevel(int lev) {
level = lev;
} public int filterRGB(int x, int y, int rgb) {
int a = level * 0x01000000;
return (rgb & 0x00ffffff) | a;
}
}
}
另外图像的保存也很容易的啊!但是可能需要用到其它的类库,我没有用过JDK带的图像类库,用过acme的。在www.smiling.com.cn的小组"cherami的收藏(java部分)“的文件共享里面有下载。