Thumbnailator是一个非常好的图片开源工具

使用方法:

在pom中加入以下jar包

<!-- 图片缩略图 图片压缩 水印 start-->

<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>0.4.8</version>
</dependency><!-- 图片缩略图 图片压缩 水印 end-->

然后压缩和水印 只需要一行代码搞定

package com.shallowmemory.test;import
net.coobird.thumbnailator.Thumbnails;import
net.coobird.thumbnailator.geometry.Positions;import
javax.imageio.ImageIO;import
java.awt.image.BufferedImage;import java.io.File;
import java.io.IOException;
/*** Created by HONGLINCHEN on
2017/10/31 11:00* 图片压缩* @author HONGLINCHEN* @since
JDK 1.8*/
public class ImgCompress {
public static void main(String[] args) throws IOException {
//压缩图片 第一个参数是原图路径 后面那个路径是压缩以后的输出路径Thumbnails.of("C:\Users\HONGLINCHEN\Desktop\23.jpg").size(6
00,600).outputQuality(0.8f).toFile("C:\Users\HONGLINCHEN\Desk
top\2.jpg");
//给图片加水印
BufferedImage watermarkImage = ImageIO.read(new File("C:\Users\HONGLINCHEN\Desktop\1.jpg"));
//第一个参数是水印的位置;第二个参数是水印图片的缓存数据;第三个参数是透明度。
Thumbnails.of("C:\Users\HONGLINCHEN\Desktop\23.jpg").scale(
0.8).watermark(Positions.BOTTOM_RIGHT, watermarkImage,
0.5f).toFile("C:\Users\HONGLINCHEN\Desktop\3.jpg");}}

github源码:https://github.com/moyiblog/thumbnailator

四:Java使用google的thumbnailator工具对图片压缩水印等做处理的更多相关文章

  1. java使用google开源工具实现图片压缩【转】

    jar包名 import net.coobird.thumbnailator.Thumbnails; import net.coobird.thumbnailator.geometry.Positio ...

  2. java使用google开源工具实现图片压缩

    前言 作为靠谱的java服务端程序员,图片这个事情一直是个头疼的事情. 现在很多网站上,都有上传图片这个功能,而图片对于现在的很多手机来说,拍摄出来的都是高清图片,分辨率也是相当的高,当然占用的存储空 ...

  3. Gulp自动化工具之图片压缩

    一.安装node https://nodejs.org/download/ 根据需要选择对应的版本 安装好了之后可以通过node -v参看一下版本 node -v 二.安装gulp npm insta ...

  4. java:图片压缩

    java使用google开源工具实现图片压缩 :http://www.cnblogs.com/linkstar/p/7412012.html

  5. Google软件构建工具Bazel FAQ

    Google软件构建工具Bazel FAQ 本文是我的翻译,原文在这里.欢迎转载,转载请注名本文作者和原始链接 注:如果想了解Bazel的原理,可以看看我之前翻译的Google Blaze原理及使用方 ...

  6. Google软件构建工具Bazel

    转载Google软件构建工具Bazel FAQ 本文是我的翻译,原文在这里.欢迎转载,转载请注名本文作者和原始链接注:如果想了解Bazel的原理,可以看看我之前翻译的Google Blaze原理及使用 ...

  7. Google软件构建工具Bazel原理及使用方法介绍

    近期,Google开源了强大的自动化构建工具Bazel. 正好博主近期在使用china版的Bazel--腾讯自主开发的Blade,所以准备跟大家分享一下Google Bazel这个分布式构建系统的原理 ...

  8. Java GUI图形界面开发工具

    Applet 应用程序     一种可以在 Web 浏览器中执行的小程序,扩展了浏览器中的网页功能. 缺: 1.需要下载 Applet 及其相关文件 2.Applet 的功能是受限制的 优: 3.无需 ...

  9. 基于Java的简易表达式解析工具(二)

    之前简单的介绍了这个基于Java表达式解析工具,现在把代码分享给大家,希望帮助到有需要的人们,这个分享代码中依赖了一些其他的类,这些类大家可以根据自己的情况进行导入,无非就是写字符串处理工具类,日期处 ...

随机推荐

  1. Ansible(三) - playbook简介

    Ⅰ. Playbook介绍 Playbook其实就是ansible的一个任务列表,各任务按次序逐个在hosts中指定的所有主机上执行,即在所有主机上完成第一个任务后再开始第二个.在顺序运行某playb ...

  2. Python一维数据分析

    1.Numpy数组 numpy的数组只能存放同一种数据类型,使用的方式和Python列表类似 1.1 声明: import numpy as np countries = np.array([ 'Af ...

  3. Python selenium 文件自动下载 (自动下载器)

    MyGithub:https://github.com/williamzxl 最新代码已经上传到Github,以下版本为stupid版本. 由于在下载过程中需要下载不同文件,所以可以把所有类型放在Va ...

  4. zoj 1884 简单 键盘 字符 处理

    WERTYU Time Limit: 2 Seconds      Memory Limit: 65536 KB A common typing error is to place the hands ...

  5. strut2-学习笔记(二)

     Struts2学习笔记(二) 1. 自定义结果视图的类型(结果视图类型的应用) CAPTCHA图像(随机验证码图像) 实现步骤: (1)编写一个类实现com.opensymphony.xwork ...

  6. asp.net(C#)利用QRCode生成二维码

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="QRCode.aspx.cs&q ...

  7. zookeeper curator使用caches实现各种监听

    1.篇首语 curator是zookeeper的一个高级api开发包.封装了zookeeper众多的recipes,并且实现了一些新的recipes原语,最重要的是基于zookeeper提供的各种机制 ...

  8. zabbix使用mysql数据库 对表分区

    zabbix删除历史数据 mysql 表自动分区.删除 ----2016年终总结 二 zabbix清理历史数据是个比较蛋疼的问题,尤其在监控数据较多时,一方面无法彻底释放历史数据空间,一方面数据库删除 ...

  9. Java 内存模型- Java Memory Model

    多线程越来越多的使用,使得我们需要对它的深入理解.那么就涉及到了Java内存模型JMM.JMM是JVM的一部分,JMM定义了一个线程修改了一个共享变量,其他线程什么时候或者如何看到这个变量,如何去访问 ...

  10. Java中多态的理解

    最近学习Java里面的多态下面是个人的整理: 多态存在的3个必要条件: 1.要有继承 2.要有方法的重写 3.父类引用指向子类对象(对于父类中定义的方法,如果子类中重写了该方法,那么父类类型的引用将会 ...