图片的缩放(放大缩小)

package com.school.util;import java.awt.Graphics;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;import javax.imageio.ImageIO;
/*** * <b>类名称:图片处理工具类</b>ImageUtils<br/>* <b>类描述:功能:缩放图像<br/>* */
public class ImageUtils {/*** 几种常见的图片格式*/public static String IMAGE_TYPE_GIF = "gif";// 图形交换格式public static String IMAGE_TYPE_JPG = "jpg";// 联合照片专家组public static String IMAGE_TYPE_JPEG = "jpeg";// 联合照片专家组public static String IMAGE_TYPE_BMP = "bmp";// 英文Bitmap(位图)的简写,它是Windows操作系统中的标准图像文件格式public static String IMAGE_TYPE_PNG = "png";// 可移植网络图形public static String IMAGE_TYPE_PSD = "psd";// Photoshop的专用格式Photoshop/*** * scale(缩放图像(按比例缩放))<br/>* * @param in*                    源图像文件* @param scale*                    缩放系数,缩小时小于1(如:0.7   0.8),放大时大于1),放大时大于1* @return* @return BufferedInputStream* @exception* @since 1.0.0*/public static void scale(String srcImageFile,String result, float scale) {try {System.out.println("源文件大小===="+new File(srcImageFile).length());BufferedImage src = ImageIO.read(new File(srcImageFile)); // 读入文件int width = src.getWidth(); // 得到源图宽int height = src.getHeight(); // 得到源图长// 计算新的宽度和高度width = Integer.valueOf(new Float(width * scale).intValue());height = Integer.valueOf(new Float(height * scale).intValue());Image image = src.getScaledInstance(width, height, Image.SCALE_DEFAULT);BufferedImage tag = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);Graphics g = tag.getGraphics();g.drawImage(image, 0, 0, null); // 绘制缩小后的图
            g.dispose();ImageIO.write(tag, "JPEG", new File(result));// 输出到文件流} catch (IOException e) {e.printStackTrace();}}
}

 

转载于:https://www.cnblogs.com/sunhaoyu/p/4603002.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/273169.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

sql多层嵌套别名无效_SQL之复杂查询

前文学了汇总分析&#xff0c;学了常见的汇总函数&#xff0c;会分组并且掌握了对分组结果指定条件。今天开始学习SQL的视图和子查询&#xff0c;还有数据库关联与嵌套查询内容的学习。一、视图1.1视图是有单固定存储可反复读取使用的子查询&#xff0c;所以视图适用于频繁使用…

POJ 1195 Mobile phones【 二维树状数组 】

题意&#xff1a;基础的二维数组&#xff0c;注意 0 lowbit(0)会陷入无限循环----- 之前做一道一维的一直tle,就是因为这个-------------------------- 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include <cmath> 5 #includ…

mysql 交叉连接的用法_深入理解MySQL的外连接、内连接、交叉连接

1、内联接(典型的联接运算&#xff0c;使用像 或 <> 之类的比较运算符)。包括相等联接和自然联接。内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如&#xff0c;检索 students和courses表中学生标识号相同的所有行。2、外联接。外联接可以是左向外联…

基于Angularjs实现分页

前言 学习任何一门语言前肯定是有业务需求来驱动你去学习它&#xff0c;当然ng也不例外&#xff0c;在学习ng前我第一个想做的demo就是基于ng实现分页&#xff0c;除去基本的计算思路外就是使用指令封装成一个插件&#xff0c;在需要分页的列表页面内直接引用。 插件 在封装分页…

mbot机器人初体验_[首发开箱]Makeblock mBot Ranger mBot游侠版 强大的STEM教育机器人...

本帖最后由 ahagowo 于 2016-4-17 08:38 编辑mBot游侠机器人套件是一个三种功能于一身的STEM教育机器人套件&#xff0c;它支持3种组装形态&#xff1a;机器人坦克&#xff0c;三轮赛车&#xff0c;和自平衡车。mBot游侠可通过 iPad&#xff0c;平板计算机或笔记本计算机来编程…

mysql数据库设计规范_MYSQL数据库设计规范与原则

MYSQL数据库设计规范1、数据库命名规范采用26个英文字母(区分大小写)和0-9的自然数(经常不需要)加上下划线_组成;命名简洁明确(长度不能超过30个字符);例如&#xff1a;user, stat, log, 也可以wifi_user, wifi_stat, wifi_log给数据库加个前缀;除非是备份数据库可以加0-9的自然…

jar乱放问题

之前看到一个项目不能继承类SimpleTagSuppert类&#xff0c;而将jsp-api.jar&#xff08;不知道servlet-api.jar能不能放&#xff09;放入到了 jdk/jre/lib/ext包下面结果不仅正在写的jsp不能运行&#xff0c;以前的web应用也不能运行&#xff0c;会出现 java.lang.ClassNotFo…

python课程笔记_Python课程笔记(一)

由于新冠状病毒的爆发&#xff0c;不得不在家里上网课&#xff0c;开课已经两个礼拜了&#xff0c;今天上完Python课后&#xff0c;准备整理一下最近学习Python的笔记。人生苦短&#xff0c;我用Python一、Hello World初学一门新的语言&#xff0c;就一定要从Hello World开始pr…

Bootstrap系列 -- 41. 带表单的导航条

有的导航条中会带有搜索表单,在Bootstrap框架中提供了一个“navbar-form”&#xff0c;使用方法很简单&#xff0c;在navbar容器中放置一个带有navbar-form类名的表单。navbar-left”让表单左浮动&#xff0c;更好实现对齐。在Bootstrap框架中&#xff0c;还提供了“navbar-rig…

mysql log table_mysqlbinlog功能扩展--table参数

目的mysqlbinlog在分析mysql的binlog日志时&#xff0c;有时需要针对某个表的操作进行分析。但是这个表属于“冷数据”&#xff0c;操作记录相对较少&#xff0c;而其他表操作往往很频繁&#xff0c;binlog日志量特别大。尤其是当binlog的模式设置为ROW时&#xff0c;情况就更加…

python递归迭代_Python入门基础知识点(python迭代器和递归)

函数名的使用&#xff1a;函数名是一个变量, 但它是一个特殊的变量, 与括号配合可以执行函数的变量函数名的内存地址&#xff1a;deffunc():passprint(func) #函数的内存地址结果&#xff1a;函数名可以赋值给其他变量&#xff1a;deffunc():print(1)afunca()func()#函数名可以…

怎么调处vs2010的MSDN帮助文档

如果装的是vs2010专业版的话 直接按F1直接可调出在线的帮助 直接按F2可以调出本机版的 转载于:https://www.cnblogs.com/fag888/p/5789159.html

redis的lrange_thinkphp5操作redis系列教程】列表类型之lRange,lGetRange

namespace app\admin\controller;use think\cache\driver\Redis;use think\Controller;use \think\Db;class Index extends Controller{//获取redispublic function getRedis(){$redis new \Redis();$redis->connect(127.0.0.1,6379);$redis->auth(root); //redis密码ec…

如何写好博客

好的博客是用来解决问题的&#xff0c;每一篇文章都应该以如何解决问题为驱动力&#xff0c;而不是知识点的累加&#xff0c;比如说之前写的[MVC]系列&#xff0c;均为知识点的堆积&#xff0c;没有例子和代码&#xff0c;也没有说明问题&#xff0c;这样的文章&#xff0c;基本…

云服务器建站原理_云服务器cvm与建站主机之间的区别

(文章来源&#xff1a;西部数码)云服务器cvm与建站主机区别是什么&#xff1f;cvm的英文全拼是CloudVirtualMachine(云虚拟机)&#xff0c;所以云服务器cvm是指虚拟云服务器&#xff0c;属于云服务器产品中的一种。而建站主机一般多是指虚拟主机&#xff0c;是在服务器中划分出…

Magento--判断checkout中是否使用了coupon code

在checkout页面中&#xff0c;如果想判断顾客是否有使用coupon code&#xff0c;可以通过checkout session来进行判断。以下代码会返回checkout中使用的coupon code或者返回空&#xff08;当没有使用coupon code时&#xff09; 1 <?php 2 3 $coupon_code Mage::getSingl…

启动python内核时发生错误_启动内核时出错

我一直看到这个消息。在An error ocurred while starting the kernelTraceback (most recent call last):File "C:\Users\Excel\Anaconda3\lib\runpy.py", line 193, in _run_module_as_main"__main__", mod_spec)File "C:\Users\Excel\Anaconda3\lib…

Scala笔记

1、伴生对象 形如&#xff1a; 有一个类 class Test{ } 一个object和该类同名 object Test{ } object Test的作用类似于静态类&#xff08;工具类&#xff09;&#xff0c;其中的所有成员都是静态的&#xff0c;在object Test中可以直接访问class Test的成员&#xff1b;…

maven找到mysql 连接池_在Tomcat6.0+MySQL5.0环境下配置和使用数据库连接池

一&#xff0c;在Tomcat中配置连接池的JNDI首先到MySQL的网站上下载MySQL JDBC连接器放到%CATALINA_HOME%/lib目录下&#xff0c;在%CATALINA_HOME%/conf目录下找到context.xml&#xff0c;这个文件是全局的&#xff0c;如果想只对特定的应用使用可以编辑WEB-INF/context.xml文…

mysql将多个成绩放在一排_mysql巧用连表查询各科成绩前三名

下列是各表的详情&#xff0c;不想自己建表的同学可以直接copy code&#xff0c;数据随意。创建表成绩详情表&#xff1a;CREATE TABLE score (id int(10) NOT NULL AUTO_INCREMENT,subject_id int(10) DEFAULT NULL,student_id int(10) DEFAULT NULL,score float DEFAULT NULL…