知识大全 java实现缩略图和抓屏幕
Posted 知
篇首语:没有失败,只有暂时停止成功。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 java实现缩略图和抓屏幕相关的知识,希望对你有一定的参考价值。
import java awt Container;
import java awt Dimension;
import java awt Graphics D;
import java awt Image;
import java awt MediaTracker;
import java awt Rectangle;
import java awt RenderingHints;
import java awt Robot;
import java awt Toolkit;
import java awt image BufferedImage;
import java io BufferedOutputStream;
import java io File;
import java io FileOutputStream;
import javax imageio ImageIO;
import dec jpeg JPEGCodec;
import dec jpeg JPEGEncodeParam;
import dec jpeg JPEGImageEncoder;
/**
*
* 纯java API实现图片处理
* <p>Title:ImageChangeSize</p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) </p>
* <p>Company: </p>
* @author
* @version
*/
public class ImageChangeSize
public static void main ( String [] args )
throws InterruptedException
//测试生成缩略图
createThumbnail( c:\\\\ gif c:\\\\uuuu jpg );
//测试捕捉屏幕 每隔一秒捕获一次
String path = c:\\\\screen\\\\ ;
int i = ;
for ( ;; )
i++;
String filepath = path + i + jpg ;
snatchScreen(filepath);
Thread currentThread() sleep( );
/**
* 处理图片 改变起大小 可进行缩略和放大
* @param filename 源文件名称
* @param thumbWidth 处理后宽度
* @param thumbHeight 处理后高度
* @param quality 品质 最高 最小
* @param outFilename 输出文件名称
*/
public static void createThumbnail ( String filename int thumbWidth int thumbHeight int quality String outFilename )
Image image = Toolkit getDefaultToolkit() getImage(filename);
MediaTracker mediaTracker = new MediaTracker(new Container());
mediaTracker addImage(image );
try
mediaTracker waitForID( );
double thumbRatio = (double) thumbWidth / (double) thumbHeight;
int imageWidth = image getWidth(null);
int imageHeight = image getHeight(null);
double imageRatio = (double) imageWidth / (double) imageHeight;
if ( thumbRatio < imageRatio )
thumbHeight = (int) ( thumbWidth / imageRatio );
else
thumbWidth = (int) ( thumbHeight * imageRatio );
BufferedImage thumbImage = new BufferedImage(thumbWidth
thumbHeight BufferedImage TYPE_INT_RGB);
Graphics D graphics D = thumbImage createGraphics();
graphics D setRenderingHint(RenderingHints KEY_INTERPOLATION RenderingHints VALUE_INTERPOLATION_BILINEAR);
graphics D drawImage(image thumbWidth thumbHeight null);
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(outFilename));
JPEGImageEncoder encoder = JPEGCodec createJPEGEncoder(out);
JPEGEncodeParam param = encoder getDefaultJPEGEncodeParam(thumbImage);
quality = Math max( Math min(quality ));
param setQuality((float) quality / f false);
encoder setJPEGEncodeParam(param);
encoder encode(thumbImage);
out close();
catch ( Exception e )
e printStackTrace();
/**
* 抓取电脑屏幕
* @param path
*/
public static void snatchScreen ( String path )
Robot robot;
try
robot = new Robot();
Dimension d = Toolkit getDefaultToolkit() getScreenSize();
Rectangle rect = new Rectangle( d width d height);
BufferedImage image = robot createScreenCapture(rect);
ImageIO write(image jpg new File(path));
catch ( Exception e )
System out println( Failed to snatch screen );
e printStackTrace();
cha138/Article/program/Java/hx/201311/26013
相关参考
知识大全 asp.net缩略图和水印制作:Image Generation
asp.net缩略图和水印制作:ImageGeneration 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来
JAVA生成JPG缩略图 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在任何一个综合性网站我们
Java实践:用XQuery进行屏幕搜集 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 上个月J
Java很神奇用swing制作欢迎屏幕 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 几乎所有时
扒窃既是社会一大“公害”,抓扒手便人人有责。不管扒手在扒自己的钱包还是扒别人的东西,一经发现,都要坚决与之斗争抓扒手,先要注意识别认准扒手,“一看衣服,二看面目,三看表现,四看动作”。据行家研究,扒手
你是否试过用首字母缩略词来记住某些信息?把那些你想记住的想法或者词语缩略成一个简短的、容易记忆的首字母缩略词。这一技巧能够帮助你在面试时更好地讲述关于自己的一些故事。这样的缩略词就像是一幅幅思维的地图
在英语中一个英文缩写词可以用任何方法缩短,将通过一些字母部件绘制在一起。有的缩略形式形成了紧密结构,凝固成为一个能自由运用的语言单位,叫做缩略词。今天给大家介绍一下关于膜生物反应器的相关缩略词ABR(
在英语中一个英文缩写词可以用任何方法缩短,将通过一些字母部件绘制在一起。有的缩略形式形成了紧密结构,凝固成为一个能自由运用的语言单位,叫做缩略词。今天给大家介绍一下关于膜生物反应器的相关缩略词ABR(
在英语中一个英文缩写词可以用任何方法缩短,将通过一些字母部件绘制在一起。有的缩略形式形成了紧密结构,凝固成为一个能自由运用的语言单位,叫做缩略词。今天给大家介绍一下关于膜生物反应器的相关缩略词ABR(
生成缩略图及给原始图加水印代码如下cha138/Article/program/net/201311/11730