⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 createimage.java

📁 java的书上例子
💻 JAVA
字号:
import java.awt.*;
import java.awt.image.*;
import java.applet.Applet;

/** 一个生成图象的小应用程序 
  * @作者:尉哲明
  * @日期:2001年5月 */

/** 定义生成图象的Applet类 */
public class CreateImage extends Applet{
  	BufferedImage img;
 
	/** init()方法,创建后台缓冲对象,并调用generateImage()方法在其上生成图象 */ 
  	public void init()
  	{
  	  	Dimension d=getSize();
		int w=d.width,h=d.height;
		img=new BufferedImage(w,h,BufferedImage.TYPE_INT_ARGB);//创建后台缓冲对象
		generateImage(img);
  	}//init()方法结束
  
	/** 该方法用来生成图象 */
  	public void generateImage(BufferedImage img)
  	{	
		int w=img.getWidth(),h=img.getHeight();
		WritableRaster raster=img.getRaster();//得到WritableRaster类型的对象
		ColorModel model=img.getColorModel();//得到后台缓冲的颜色模式
	
		for(int y=0;y<h;y++)
			for(int x=0;x<w;x++)
			{
				int red=x|y;
				int green=x*2|y*2;
				int blue=x*4|y*4;
				int argb=(255<<24)|(red<<16)|(green<<8)|blue;
				Color color=new Color(argb,true);
			
				argb=color.getRGB();//产生一个alpha、红、绿、和蓝色值
				Object colorData=model.getDataElements(argb,null);//返回包含argb色值的颜色模式详细描述的对象
				raster.setDataElements(x,y,colorData);//用得到的colorData设置相应的像素点
			}
  	}//generateImage()方法结束
  
	/** paint()方法 */
  	public void paint(Graphics g)
  	{
    	g.drawImage(img,0,0,null);
  	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -