文档章节

Java通过thumbnailator对图片进行缩放,裁剪,添加水印等..

烤猪佩奇
 烤猪佩奇
发布于 2016/02/29 17:21
字数 306
阅读 15
收藏 0
点赞 1
评论 0
package com.test.image;

import static org.junit.Assert.*;

import java.io.File;

import javax.imageio.ImageIO;

import net.coobird.thumbnailator.Thumbnails;
import net.coobird.thumbnailator.geometry.Positions;

import org.junit.Test;

public class ImageTest {
	/**
	 * 按照指定大小缩放  按照比例
	 * @throws Exception
	 */
	@Test
	public void testOne() throws Exception {
		//File file = new File("image/1.jpg");
		//System.out.println(file.exists());
		 Thumbnails.of("image/1.jpg").size(200, 300).toFile("image/1_200x300.jpg");
	}
	
	/***
	 * 按照指定比例进行缩放
	 * @throws Exception
	 */
	@Test
	public void testTwo() throws Exception {
		Thumbnails.of("image/1.jpg").scale(0.25f).toFile("image/a_0.25%.jpg");
	}
	
	/***
	 * 根据指定大小进行缩放 不按照比例
	 * @throws Exception
	 */
	@Test
	public void testThree() throws Exception {
		 Thumbnails.of("image/1.jpg").size(200, 300)
		 //设置是否按比例  false  图片可能会走形 默认true
		 .keepAspectRatio(false) 
		 .toFile("image/1_200x300_no.jpg");
	}
	
	/**
	 * 添加水印 (好像只能添加图片水印?)
	 * @throws Exception
	 */
	@Test
	public void testFour() throws Exception {
		Thumbnails.of("image/1.jpg")
		.size(1920, 1080)  //必须要设置大小 不然会抛异常
		.watermark(Positions.BOTTOM_RIGHT,ImageIO.read(new File("image/a_0.25%.jpg")), 0.5f)
		//输出品质   越高 图片越大
		.outputQuality(1.0f)
		.toFile("image/wt.jpg");
	}
	
	/***
	 * 裁剪
	 * @throws Exception
	 */
	@Test
	public void testFive() throws Exception {
		Thumbnails.of("image/1.jpg")
		//从原图哪里开始裁剪   裁减多少
		.sourceRegion(Positions.CENTER, 400, 400)
		//新图的大小
		.size(200, 200).toFile("image/crop.jpg");
		
	}
	
	/**
	 * 改变图片格式
	 * @throws Exception
	 */
	@Test
	public void testSix() throws Exception {
		Thumbnails.of("image/1.jpg")
		.size(1920, 1080)
		.outputFormat("png")
		.toFile("image/1_png.png");
	}
	
	@Test
	public void testName() throws Exception {
		System.out.println(System.getProperty("user.dir"));
	}
}

本文转载自:http://blog.csdn.net/cjaver/article/details/41516997

共有 人打赏支持
烤猪佩奇
粉丝 18
博文 46
码字总数 6583
作品 0
广州
高级程序员
Java 借助ImageMagic实现图片编辑服务

Java 借助ImageMagic实现图片编辑服务 java原生对于图片的编辑处理并没有特别友好,而且问题也有不少,那么作为一个java后端,如果要提供图片的编辑服务可以怎么办?也得想办法去支持业务需求...

小灰灰Blog
04/18
0
0
高清缩略图之Thumbnailator

搞网站开发,经常要用到的一个功能是生成缩略图。如果对缩略图的质量要求不高,直接用JDK提供的Image API就可以搞定,简单示例: File _file = new File("/Order005-0001.jpg"); //读入文件I...

一剑风徽
2012/11/18
0
0
在JAVA中使用Thumbnails为图片加水印

在JAVA中使用Thumbnails为图片加水印 将D盘下面的cat.jpg作为水印加在2.jpg上面,输出新的图片2_cat.jpg到D盘下面 1、java类 1)、of(new File("D:2.jpg")) 打开一张图片作为底图 2)、size(20...

Qiu_CJ
06/26
0
0
使用 Grapicmagick 和 Im4java 处理图片

ImageMagick是个图片处理工具可以安装在绝大多数的平台上使用,Linux、Mac、Windows都没有问题。GraphicsMagick是在ImageMagick基础上的另一个项目,大大提高了图片处理的性能,在linux平台上...

voole
05/07
0
0
高清缩略图之GraphicsMagick

GraphicsMagick号称图像处理领域的瑞士军刀,也称命令行版的Photoshop, 短小精悍的代码却提供了一个超棒、高效的工具和库集合,来处理图像的读取、写入和操作,支持超过88中图像格式,包括重...

一剑风徽
2012/11/18
0
2
Java图像缩略图类库--Thumbnailator

Thumbnailator 是一个用来生成图像缩略图的 Java 类库,通过很简单的代码即可生成图片缩略图,也可直接对一整个目录的图片生成缩略图。 支持:图片缩放,区域裁剪,水印,旋转,保持比例。 ...

匿名
2010/10/07
21.2K
3
JAVA读取Oracle中的blob图片字段并显示

整个流程分为四步,连接oracle数据库 -> 读取blob图片字段 -> 对图片进行缩放 ->把图片展示在jsp页面上。 下面进行详细描述: 1. java连接Oracle 注:数据库是Oracle10g版本为10.2.0, 在数据...

underA
2013/03/15
0
1
java 大图片处理GraphicsMagick + im4java [缩放,旋转,裁剪]

java 大图片处理GraphicsMagick + im4java [缩放,旋转,裁剪] ImageMagick 主页:http://www.imagemagick.org/script/index.php GraphicsMagick 主页:http://www.graphicsmagick.org/ 两个图片......

蔡熙伟
2012/12/17
0
1
Jmagic与 ImageMagick linux下安装与使用

公司现在用的是java开发,后台难免会用到图片上传,自动生成缩略图,然后不可避免的要安装一些比较好的软件,我们公司使用的是ImageMagick,一个图片处理程序,就是说我们可以通过程序来进行...

枫爱若雪
2012/09/21
0
0
android webview js交互,响应webview图片的响应事件

方案思路, 1.在点击图片的时候调用本地的java方法并给出响应的图片地址 2.本地获得图片地址后,开启一个遮罩activity进行显示和处理 第二步的实现很容易实现,关键是第一步的实现,在网页中...

sundy_ly
2013/12/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

流利阅读笔记28-20180717待学习

“我不干了!” 英国脱欧大臣递交辞呈 雪梨 2018-07-17 1.今日导读 7 月 6 日,英国政府高官齐聚英国首相的官方乡间别墅——契克斯庄园,讨论起草了一份关于英国政府脱欧立场的白皮书。可是没...

aibinxiao
32分钟前
2
0
OSChina 周二乱弹 —— 理解超算排名这个事,竟然超出了很多人的智商

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @-冰冰棒- :分享Ed Sheeran/Beyoncé的单曲《Perfect Duet (with Beyoncé)》 《Perfect Duet (with Beyoncé)》- Ed Sheeran/Beyoncé 手机...

小小编辑
42分钟前
27
5
Android 获取各大音乐平台的真实下载地址

废话 电脑使用谷歌浏览器或者QQ浏览器的时候。。。。。。。说不清楚,还是看图吧 大概意思就是,只要网页上需要播放,只要能播放并且开始播放,这个过程就肯定会请求到相关的音乐资源,然后就...

她叫我小渝
今天
0
0
shell中的函数、shell中的数组、告警系统需求分析

shell中的函数 格式: 格式: function f_name() { command } 函数必须要放在最前面 示例1(用来打印参数) 示例2(用于定义加法) 示例3(用于显示IP) shell中的数组 shell中的数组1 定义数...

Zhouliang6
今天
2
0
用 Scikit-Learn 和 Pandas 学习线性回归

      对于想深入了解线性回归的童鞋,这里给出一个完整的例子,详细学完这个例子,对用scikit-learn来运行线性回归,评估模型不会有什么问题了。 1. 获取数据,定义问题     没有...

wangxuwei
今天
1
0
MAC安装MAVEN

一:下载maven压缩包(Zip或tar可选),解压压缩包 二:打开终端输入:vim ~/.bash_profile(如果找不到该文件新建一个:touch ./bash_profile) 三:输入i 四:输入maven环境变量配置 MAVEN_HO...

WALK_MAN
今天
0
0
33.iptables备份与恢复 firewalld的9个zone以及操作 service的操作

10.19 iptables规则备份和恢复 10.20 firewalld的9个zone 10.21 firewalld关于zone的操作 10.22 firewalld关于service的操作 10.19 iptables规则备份和恢复: ~1. 保存和备份iptables规则 ~2...

王鑫linux
今天
2
0
大数据教程(2.11):keeperalived+nginx高可用集群搭建教程

上一章节博主为大家介绍了目前大型互联网项目的系统架构体系,相信大家应该注意到其中很重要的一块知识nginx技术,在本节博主将为大家分享nginx的相关技术以及配置过程。 一、nginx相关概念 ...

em_aaron
今天
1
1
Apache Directory Studio连接Weblogic内置LDAP

OBIEE默认使用Weblogic内置LDAP管理用户及组。 要整理已存在的用户及组,此前办法是导出安全数据,文本编辑器打开认证文件,使用正则表达式获取用户及组的信息。 后来想到直接用Apache Dire...

wffger
今天
2
0
HFS

FS,它是一种上传文件的软件。 专为个人用户所设计的 HTTP 档案系统 - Http File Server,如果您觉得架设 FTP Server 太麻烦,那么这个软件可以提供您更方便的档案传输系统,下载后无须安装,...

garkey
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部