首页 > 编程语言 >在线直播系统源码,使用Thumbnailator实现图片压缩

在线直播系统源码,使用Thumbnailator实现图片压缩

时间:2023-07-27 14:12:39浏览次数:39  
标签:-- Thumbnailator 直播 400 size 源码 图片

在线直播系统源码,使用Thumbnailator实现图片压缩

1.添加jar包

 


<!-- Thumbnailator 图片压缩 -->
<dependency>
    <groupId>net.coobird</groupId>
    <artifactId>thumbnailator</artifactId>
    <version>0.4.8</version>
</dependency>
 

2.常用方法

 


// 原图文件路径
Thumbnails.of(file.getInputStream())
        .scale(1f) // 值在0到1之间,1f就是原图大小,0.5就是原图的一半大小
        .outputQuality(0.1f) // 值也是在0到1,越接近于1质量越好,越接近于0质量越差
        .toFile(img); // 压缩后文件的路径
 

 

3.其他用法

 


1.指定大小比例进行缩放--考虑图片的完整度
  size(宽度, 高度)
2.按照比例进行缩放
  scale(比例)
3.不按照比例,指定大小进行缩放--不考虑图片的完整度
  size(宽度, 高度).keepAspectRatio(false)
4.图片旋转
  size(宽度, 高度).rotae(90) -- 旋转90度(必须加size不然报错)
5.水印
  BOTTOM_RIGHT 右下角
  CENTER       中心
  size(宽度, 高度).watermark(Positions.CENTER,)
      .size(1280, 1024)
      .watermark(Positions.BOTTOM_RIGHT, ImageIO.read(new File("d:/uploadImg/head.png")), 0.5f)
      .outputQuality(0.8f)
      .toFile(dest);
6.裁剪 -- 以图片中心400*400区域
  .sourceRegion(Positions.CENTER, 400,400)
  .size(200,200).keepAspectRatio(false)
7.转化图像格式
  .size(200,200).outputFormat(".png")

 

 以上就是 在线直播系统源码,使用Thumbnailator实现图片压缩,更多内容欢迎关注之后的文章

 

标签:--,Thumbnailator,直播,400,size,源码,图片
From: https://www.cnblogs.com/yunbaomengnan/p/17584758.html

相关文章

  • 直播平台软件开发,JavaWeb如何设置定时任务
    直播平台软件开发,JavaWeb如何设置定时任务1.在xml文件中添加监听器 <?xmlversion="1.0"encoding="UTF-8"?><web-appversion="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"......
  • java 打印标签源码
    Java打印标签源码实现教程作为一名经验丰富的开发者,我将教会你如何实现Java打印标签源码的功能。下面是整个实现过程的步骤:步骤实现内容步骤一连接打印机步骤二创建打印标签的模板步骤三填充标签模板数据步骤四打印标签接下来,我将详细介绍每个步骤需要......
  • [glibc2.23源码]阅读源码&调试,找出free_hook-0x13分配失败的原因
    0x00写在前面2023.7.27早合肥本次阅读源码是本人第一次,算是一个全新的开始。本次看源码是为了调试roarctf的babyheap那道题目,wp写在独奏者2序章那篇的0x04,为了看看为什么free_hook-0x13不能分配堆。0x01阅读前言和别名搜索aliasweak_alias(__malloc_info,malloc_info......
  • ugui源码阅读 - Graphic渲染原理
    3d部分使用MeshRenderer来渲染,ugui的使用CanvasRenderer来进行渲染。把顶点,材质,贴图设置给CanvasRenderer,就能渲染出来了。 下面的代码,我们直接使用CanvasRenderer来进行渲染,等同于Graphic渲染部分的核心代码。usingUnityEngine;usingUnityEngine.UI;[RequireComponent(......
  • kernel源码(二十三)Bochs运行linux0.11
    1下载Bochshttps://sourceforge.net/projects/bochs/我下载的版本为Bochs-win64-2.7.exe,双击即可安装2运行linux0.112.1不使用配置文件http://oldlinux.org/Linux.old/images/下载如下两个镜像bootimage-0.11-20040305操作系统引导镜像,包含了操作系统启动引导程序和......
  • 视频直播系统源码,vue自定义模拟滚动条
    视频直播系统源码,vue自定义模拟滚动条vscroll自定义滚动条模板 <template> <divclass="vui__scrollbar"ref="ref__box"@mouseenter="handleMouseEnter"@mouseleave="handleMouseLeave"v-resize="handleResize">  <div:......
  • 仿奈雪の茶小程序,奶茶小程序模板源码(附全套源码下载链接)
    分享一个仿奈雪の茶小程序,奶茶小程序模板源码(兼容H5版本全网首发)完美复刻奈雪の茶小程序,可稍加修改使用。代码结构如下本项目包含:首页点餐(自取和外卖两种方式,有基本的点餐逻辑处理)取餐我的积分商城积分商城详情页积分签到会员码我的卡券收货地址我的资料我的订......
  • EaselJS 源码分析系列--第四篇
    鼠标交互事件前几篇关注的是如何渲染,那么鼠标交互如何实现呢?Canvascontext本身没有像浏览器DOM一样的交互事件EaselJS如何在canvas内实现自己的鼠标事件系统?原理大致如下:Stage类内的canvas监听标准DOM鼠标事件(比如:mousedown),window或document对象下监听......
  • 基于 Android 的旅游电商应用系统设计与实现-计算机毕业设计源码+LW文档
    开题申请(包括选题目的意义、研究现状、成果提纲、文献综述、创新思路、参考文献,篇幅不够可另加页)1.开题依据1.1研究的目的意义伴随着智能终端的高速发展,移动互联网与传统旅游业开始了加速融合,如今的旅游业已经得到了蓬勃发展。用户只需要一台移动终端,就能够随时随地的掌握各类旅......
  • 基于微信小程序的校园设备报修平台的设计与实现-计算机毕业设计源码+LW文档
    【摘要】随着互联网技术的发发展,计算机技术广泛应用在人们的生活中,逐渐成为日常工作、生活不可或缺的工具。在高校,各种管理系统层出不穷,为校园设备报修管理开发必要的系统,能够有效的提升管理效率。一直以来,校园设备报修一直没有进行系统化的管理,学生无法快速进行报修,由此提出开发基......