@Override

public OutputStream watermark1(String ossURL, String logoOsskey, HttpServletResponse response) {

lock.lock();

OutputStream os = null;

InputStream imageStream=null;

//水印

String logoPath = ossService.getOssURL(logoOsskey,bucket);

//原图ossURL

try {

os=response.getOutputStream();

imageStream = getImageStream(ossURL);

Image image2 = ImageIO.read(imageStream);

//获取原图信息

int width = image2.getWidth(null);

int height = image2.getHeight(null);

BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_BGR);

Graphics2D g = bufferedImage.createGraphics();

g.drawImage(image2, 0, 0, width, height, null);

// //设置多个图片水印

InputStream logo = getImageStream(logoPath);

Image imageLogo = ImageIO.read(logo);

int logoWidth = imageLogo.getWidth(null);

int logoHeight = imageLogo.getHeight(null);

//设置透明度,ALPHA为接口中自定义的值透明度 0.3F

g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, ALPHA));

//完成图片旋转30

g.rotate(Math.toRadians(0), bufferedImage.getWidth() / 2, bufferedImage.getHeight() / 2);

int x = -width / 2;

int y = -height / 2;

while (x < width * 1.5) {

y = -height / 2;

while (y < height * 1.5) {

g.drawImage(imageLogo, x, y, null);

y += logoHeight + 200;

}

x += logoHeight + 300;

}

g.dispose();

Thumbnails.Builder thumbnail = Thumbnails.of(bufferedImage);

thumbnail.size(x,y);

ImageIO.write(thumbnail.asBufferedImage(),"png",os);

//JPEGImageEncoder en = JPEGCodec.createJPEGEncoder(os);

//en.encode(bufferedImage);

} catch (IOException e) {

e.printStackTrace();

} finally {

if (os != null) {

try {

os.flush();

os.close();

} catch (IOException e) {

e.printStackTrace();

}

}

if(imageStream!=null){

try {

imageStream.close();

}catch (IOException e){

e.printStackTrace();

}

}

}

lock.unlock();

return os;

}

java 生成url_JAVA 通过URL生成水印图相关推荐

  1. JAVA线程根据给定URL生成网页快照

    最近项目中遇到这样一个需求,根据一个动态的URL来生成对应的网页快照.网上找了很多资料,最终采用如下方法解决. 生成原理:将动态URL的页面先生成HTML文件,然后再根据生成的HTML生成快照.生成的 ...

  2. Java实现短链接URL生成

    因公司推广需要,需要一套短链接生成方案,正好前几天在MSDN看到有人发了一个.net版的短链接算法,我就把它转换成java版,拿出来共享一下 生成思路: 1.将"原始链接(长链接)+key( ...

  3. java调用wadl_从JAVA中的WADL URL生成rest客户端

    WADL网址: http://localhost:8080/RestfulSample/Restful?_wadl 我需要使用上面的WADL URL中的CXF生成其余客户端. 问题: >我们有任 ...

  4. Java实现将文本内容、网址链接url,生成二维码与反解析

    2019独角兽企业重金招聘Python工程师标准>>> Java实现将文本内容.网址链接url,生成二维码与反解析 QR码的"QR"是Quick Response ...

  5. Java后台生成图表——主代码(折线图,饼状图,柱状图,-》并产出图片PDF或其他格式的图片内容)

    声明: 本文采用的数据均来源于网络,本人只用于学习记录,若有侵权,还望能及时联系. Maven 的 POM 依赖 <!--必要--><!--用于jfreechart生成图片 --&g ...

  6. 使用FileUpload控件上传图片并自动生成缩略图、自动生成带文字和图片的水印图

    本文借助vs2005中自带的FileUpload控件实现图片文件的上传并生成缩略图. 实现过程:选择图片上传成功后,取得已经存在服务器的文件生成缩略图,并且判断是否是图片类型的文件,这个的判断可以在程 ...

  7. java生成二维码合成背景图

    一.背景 接到个需求,要打印纸质红包,上面附二维码,然后每个红包的二维码不一样,扫描二维码去参加活动领真实的红包,需要给出对应的图片 二.代码示例 import java.awt.Graphics2D ...

  8. java使用poi操作world生成饼图,柱状图,折线图,组合图:一

    java使用poi操作world生成饼图,柱状图,折线图,组合图:一 下文和问题链接 开发前准备 准备模板 模板下载地址百度云盘:cvod 本文可用操作 组合图操作 模板效果对比填充后的效果 饼图 模 ...

  9. java使用poi操作world生成饼图,柱状图,折线图,组合图:二

    java使用poi操作world生成饼图,柱状图,折线图,组合图:二 上文和问题链接 直接上代码 maven 测试类:单图表(入口) 测试类:组合图表(入口) 工具类:组合数据类 工具类:枚举解析图表 ...

最新文章

  1. STL priority实例
  2. ajax post 表单和 json 字符串
  3. BufferedInputStream_字节缓冲输入流
  4. Lua元表(Metatable)简易教程
  5. Python机器学习:线型回归法02最小二乘法
  6. I00019 生成全8数
  7. 7-31 查验身份证 (15 分)
  8. Chrome快捷键, Mac 下 Chrome 浏览器 快捷键
  9. 计算机哪个按键可以和弦,多指和弦常用键盘位置及指法
  10. PayPal支付流程
  11. java类图_Java开发设计——UML类图
  12. 数据可视化技术:python数据可视化工具库汇总(共21个)
  13. android外接键盘,小米手机如何外接键盘
  14. Hans Berger脑电图之父的人生摘要
  15. 位掩码(BitMask)——介绍与使用
  16. 游戏电影——《落花辞》
  17. 【Linux】进程间通讯
  18. android数字转汉字大写字母,将数字金额转成汉字大写的
  19. 数据可视化--实验五:高维非空间数据可视化
  20. lte tm模式_空中接口学园--LTE 传输模式TM10 有什么功能?[求助]

热门文章

  1. 第九期: 阿里巴巴程序员常用的15款开发者工具
  2. java学习(77):GUL下拉菜单框和滚动条
  3. Vue之引用DOM的ref属性
  4. python3 readexcel pandas问题,使用python中的pandas中的read_excel函数将日期保留为字符串...
  5. SDOI2014 旅行
  6. SQLAllocStmt与SQLFreeStmt
  7. DIY Ruby CPU 分析 Part II
  8. maven常见问题问答 收藏
  9. linux进行monkey压力测试,App Monkey压力测试(一)
  10. linux中配置phpcms v9 中的sphinx