e666. 创建缓冲图像
A buffered image is a type of image whose pixels can be modified. For example, you can draw on a buffered image and then draw the resulting buffered image on the screen or save it to a file. A buffered image supports many formats for storing pixels. Although a buffered image of any format can be drawn on the screen, it is best to choose a format that is the most compatible with the screen to allow efficient drawing. This example demonstrates several ways of creating a buffered image.
If the buffered image will not be drawn, it can simply be constructed with a specific format; TYPE_INT_RGB and TYPE_INT_ARGB are typically used. See BufferedImage for a list of available formats.
See also e667 在给定图像中创建缓冲图像.
int width = 100;
int height = 100; // Create buffered image that does not support transparency
BufferedImage bimage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); // Create a buffered image that supports transparency
bimage = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);
These examples create buffered images that are compatible with the screen:
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice gs = ge.getDefaultScreenDevice();
GraphicsConfiguration gc = gs.getDefaultConfiguration(); // Create an image that does not support transparency
bimage = gc.createCompatibleImage(width, height, Transparency.OPAQUE); // Create an image that supports transparent pixels
bimage = gc.createCompatibleImage(width, height, Transparency.BITMASK); // Create an image that supports arbitrary levels of transparency
bimage = gc.createCompatibleImage(width, height, Transparency.TRANSLUCENT);
A screen compatible buffered image can also be created from a graphics context:
public void paint(Graphics g) {
Graphics2D g2d = (Graphics2D)g;
int width = 100;
int height = 100;
// Create an image that does not support transparency
BufferedImage bimage = g2d.getDeviceConfiguration().createCompatibleImage(
width, height, Transparency.OPAQUE);
// Create an image that supports transparent pixels
bimage = g2d.getDeviceConfiguration().createCompatibleImage(
width, height, Transparency.BITMASK);
// Create an image that supports arbitrary levels of transparency
bimage = g2d.getDeviceConfiguration().createCompatibleImage(
width, height, Transparency.TRANSLUCENT);
}
One last way of 创建缓冲图像 is using Component.createImage(). This method can be used only if the component is visible on the screen. Also, this method returns buffered images that do not support transparent pixels.
BufferedImage bimage = (BufferedImage)component.createImage(width, height);
if (bimage == null) {
// The component is not visible on the screen
}
| Related Examples |
e666. 创建缓冲图像的更多相关文章
- e668. 在一组像素中创建缓冲图像
This example demonstrates how to convert a byte array of pixel values that are indices to a color ta ...
- e667. 在给定图像中创建缓冲图像
An Image object cannot be converted to a BufferedImage object. The closest equivalent is to create a ...
- e675. 翻转缓冲图像
// To create a buffered image, see e666 创建缓冲图像 // Flip the image vertically AffineTransform tx = Aff ...
- PNG格式的图像文件,创建的图像的MIME类型的头部
在安装完这三个组件后,还需要重新配置一次PHP,这也是你对采用DSO方式安装PHP感到庆幸的地方之一.运行make clean,然后在当前的配置中添加下面的内容: --with-gd=[/path/t ...
- 创建条形码图像易用的控制字符编码功能的条形码控件Native Crystal Reports Barcode Generator
Native Crystal Reports Barcode Generator是一个对象,它可以很容易地被嵌入到一个Crystal Report中用于创建条形码图像.一旦此条形码被安装在一个报表中, ...
- opencv ,亮度调整【【OpenCV入门教程之六】 创建Trackbar & 图像对比度、亮度值调整
http://blog.csdn.net/poem_qianmo/article/details/21479533 [OpenCV入门教程之六] 创建Trackbar & 图像对比度.亮度值调 ...
- 利用PIL库创建空白图像
背景 最近,想自己生成带位置坐标的文字数据集来训练文本位置探测网络. 理想情况是,给文字加盐噪声,背景不需要加噪声,所以需要创建一个空白的背景.将文字放在空白背景上,然后利用opencv加噪声. 解决 ...
- 关于创建Web图像时应记住的五个要素
1. 格式与下载速度 当前,Web上用的最广泛的三种格式是GIF.PNG和JPEG.我们的目标是选择质量最高,同时文件最小的格式. WebP图像格式 谷歌建立了另一种图像格式,名为WebP. 这种格式 ...
- 用截取的部分图像创建新图像--关于cvGetSubRect,cvGetImage的用法
CvMat* cvGetSubRect(const CvArr* arr, CvMat* submat, CvRect rect)可以把截取图像中需要的区域存入矩阵.把IplImage *传给arr, ...
随机推荐
- YOLO 详解
YOLO核心思想:从R-CNN到Fast R-CNN一直采用的思路是proposal+分类 (proposal 提供位置信息, 分类提供类别信息)精度已经很高,但是速度还不行. YOLO提供了另一种更 ...
- unity Input.GetAxis和Input.GetAxisRaw
float h = Input.GetAxis("Horizontal") ;//h range from -1 to 1 float v = Input.GetAxis(&quo ...
- Mysql5.6.22源代码安装
二:安装MySQL 安装编译代码需要的包 yum -y install make gcc-c++ cmake bison-devel ncurses-devel 下载MySQL 5.6.14 wget ...
- [Mongodb] 借mongodb被入侵勒索事件,谈下Linux服务器端口安全问题
一.缘由: 最近几天Mongodb勒索事件甚嚣尘上:由于对外网开放访问并且没有开启授权机制被删库.远程拖库.勒索.接着又曝出Elasticsearch被勒索事件,缘由一样,Elasticsearch服 ...
- c#编写远程控制的核心被控端操作类
首先定义一个全局,上线地址,上线端口等 using Control_Client; using Microsoft.Win32; using System; using System.Collecti ...
- ny523 亡命逃串 hdoj 1253胜利大逃亡
亡命逃窜 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 从前有个叫hck的骑士,为了救我们美丽的公主,潜入魔王的老巢,够英雄吧.不过英雄不是这么好当的.这个可怜的娃被魔 ...
- 在Mac OS X中使用mtr诊断路由节点问题
这个工具是从阿里云客服那知道的,当时遇到阿里云CDN的一个节点出现丢包问题,用这个工具诊断路由节点问题. 1. 下载地址:http://rudix.org/packages/mtr.html(在园子里 ...
- 九、Null在Java中的精确表示
让我们从下面的语句开始: String x = null; 1. 这个语句具体的做了什么? 回一下什么是变量和什么是值.通常的比喻是变量类似于一个盒子. 就像你可以用盒子来存储东西 ...
- python URLObject url处理模块
1.需求来源 给一个url串,例如https://github.com/zacharyvoase/urlobject?spam=eggs#foo,想要截取串中某个部分,比如传输协议(https).服务 ...
- java 读取execl文件
java 中读取execl文件是必要功能,下面说下几种读取方式 1.jxl (支持2003 不支持 2007 貌似最新版支持) /** * 规则设置的模板导入 * @param fi ...