正好写了一个,给你看看哈
创新互联-专业网站定制、快速模板网站建设、高性价比昔阳网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式昔阳网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖昔阳地区。费用合理售后完善,十多年实体公司更值得信赖。
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.util.Date;
import javax.imageio.ImageIO;
public class ScreenCapturer {
public static void main(String[] args) throws Exception{
Date date = new Date();
Robot rbt = new Robot();
BufferedImage bf = rbt.createScreenCapture(new Rectangle(1440,900)); //这是屏幕分辨率 可以根据自己的屏幕修改
File file = new File("d://"+ date.toString().replace(" ","").replace(":","")+".jpg"); //这是保存路径D盘根目录
ImageIO.write(bf,"jpg",file);
System.out.println("截图成功!保存于D盘根目录下!时间:" + date.toString());
}
}
如果是普通切换的话,直接定义一个int值,根据int值的不同 来画不同的东西就可以了\x0d\x0aint index;\x0d\x0aswitch(index){\x0d\x0a case 0:\x0d\x0a g.drawImage(a,0,0,20); \x0d\x0a break;\x0d\x0a case 1:\x0d\x0a g,drawImage(b,0,0,20);\x0d\x0a break;\x0d\x0a .................................\x0d\x0a}\x0d\x0a \x0d\x0a如果用渐变效果的话,创建一个数组记录下一张要话的图片的所有RGB值,初始设置所有像素点的透明度为100%,即完全透明,然后一点点的把透明度降低,直到为0,这样就把第二章图片用渐变的方法绘制出来了,这时就可以不用画第一张图片了。
原型:
int WINAPI icePub_imgToFileTextdata(char *strImgFilename,char *strFilename,char *strFenge,int flag)
输入:strImgFilename 待处理图像文件 (会被强制256级灰度化)
strFilename 待生成BMP文本数据文件名
strFenge 列之间分隔符
flag 文本数据格式标志:0 10进制; 1 16进制; 10 RGB16进制
输出:
VB sample 代码:
Private Declare Function icePub_imgToFileTextdata Lib "icePubDll.dll" (ByVal strImgFilename As String, ByVal strFilename As String, ByVal strFenge As String, ByVal flag As Integer) As Integer
Dim a2 As Long
a2 = icePub_imgToFileTextdata("a.jpg","bmpdata.txt",",",0)
VC sample代码:
extern "C"
{
__declspec(dllexport)
int WINAPI icePub_imgToFileTextdata(char *strImgFilename,char *strFilename,char *strFenge,int flag);
}
#pragma comment(lib,"icePubDll.lib")
icePub_imgToFileTextdata("a.jpg","bmpdata.txt",",",0);
首先导入各种需要的包:
import java.awt.Image;
import javax.imageio.ImageIO;
import java.io.*;
读取图片的方法如下:
Image[] array = new Image[10];
Image image = ImageIO.read(new File("d:\\source.gif"));//根据你实际情况改文件路径吧
array[0] = image;
图片读出来了。
如果你有一个Image对象,想把它写入文件可以这样做:
BufferedImage image = ImageIO.read(new File("d:\\source.gif"));
//要想保存这个对象的话你要把image声明为BufferedImage 类型
ImageIO.write(image, "png", new File("f:\\test.png"));