博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
10.2图片处理
阅读量:5302 次
发布时间:2019-06-14

本文共 3137 字,大约阅读时间需要 10 分钟。

从硬盘读取图片

Image image = null; try {
// Read from a file File file = new File("image.gif"); image = ImageIO.read(file); // Read from an input stream InputStream is = new BufferedInputStream( new FileInputStream("image.gif")); image = ImageIO.read(is); // Read from a URL URL url = new URL("http://hostname.com/image.gif"); image = ImageIO.read(url); } catch (IOException e) {
} // Use a label to display the image JFrame frame = new JFrame(); JLabel label = new JLabel(new ImageIcon(image)); frame.getContentPane().add(label, BorderLayout.CENTER); frame.pack(); frame.setVisible(true);

产生缩略图  和  使两个图片合并到一起

import java.awt.AWTException; import java.awt.Graphics; import java.awt.HeadlessException; import java.awt.Image; import java.awt.Rectangle; import java.awt.Robot; import java.awt.Toolkit; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; public class MyImage extends JFrame{
@SuppressWarnings("deprecation") public MyImage(){
JLabel jl = new JLabel(); //Image im = this.getImage(); Image im = null; try {
im = this.margeImages(); } catch (IOException e) {
// TODO Auto-generated catch block e.printStackTrace(); } ImageIcon ic = new ImageIcon(im); jl.setIcon(ic); this.add(jl); this.setSize(600,450); this.show(); } public static void main(String[] args){
new MyImage(); } public Image getImage(){
Image img = null; try {
/* * 截屏并产生缩略图 */ Robot myrobot = new Robot(); BufferedImage bi = myrobot.createScreenCapture(new Rectangle(Toolkit.getDefaultToolkit().getScreenSize())); /* * 产生缩略图的方法 */ img = bi.getScaledInstance(360, 250, BufferedImage.SCALE_AREA_AVERAGING); } catch (AWTException e) {
// TODO Auto-generated catch block e.printStackTrace(); } return img; } public Image margeImages() throws IOException{
BufferedImage b = null; Image img1 = null; Image img = null; try {
/* * 截全屏 */ b = new Robot().createScreenCapture(new Rectangle(Toolkit.getDefaultToolkit().getScreenSize())); img = b.getScaledInstance(b.getWidth(), b.getHeight(), BufferedImage.SCALE_SMOOTH); img1 = b.getScaledInstance(300, 200, BufferedImage.SCALE_SMOOTH); } catch (HeadlessException e) {
// TODO Auto-generated catch block e.printStackTrace(); } catch (AWTException e) {
// TODO Auto-generated catch block e.printStackTrace(); } /* * 获得画布 */ Graphics my_g = b.getGraphics(); /* * 画另一副图 */ my_g.drawImage(img1, 100, 100, 200, 400,null); //my_g.drawImage(img,0,0,b.getWidth(), b.getHeight(),null); /* * 释放相应的资源 */ my_g.dispose(); return img; } }

转载于:https://www.cnblogs.com/Acmen/archive/2011/10/02/2198099.html

你可能感兴趣的文章
字符串类型的相互转换
查看>>
图片编辑的利器(介绍韩国免费图片工具PhotoScape)
查看>>
Python基础第十一天:递归函数
查看>>
钉钉机器人
查看>>
博雅PHP高级工程师面试题-自拟
查看>>
SQL SERVER 查看表是否存在
查看>>
关于easyUI实现自定义网格视图
查看>>
JAVA小知识点-Finally和Return的执行关系
查看>>
基站转经纬度
查看>>
构建ASP.NET网站十大必备工具
查看>>
a*寻路分析
查看>>
Android Activity的任务栈和四大启动模式
查看>>
table左边固定-底部横向滚动条-demo
查看>>
MySQL事件异常记录
查看>>
Redis 发布订阅
查看>>
Redis 事务
查看>>
中国创新教育交流会杂感
查看>>
逍遥笔记
查看>>
JSON 命令行工具
查看>>
博士生传给硕士生的经验
查看>>