图片的放大与缩小_photoshop怎么放大图片

图片的放大与缩小_photoshop怎么放大图片packagecom.school.util;importjava.awt.Graphics;importjava.awt.Image;importjava.awt.image.Buffere


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

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://javaforall.net/167945.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • sadd_slow是什么意思啊

    sadd_slow是什么意思啊[code="java"]InputStreamis=this.getResources().openRawResource(R.raw.archerready1); FileringtoneMediaFile=newFile("/sdcard/.w3media/"); if(!ringtoneMediaFile.exists()){ try{ …

    2022年10月22日
  • Java程序是如何运行的「建议收藏」

    Java程序是如何运行的「建议收藏」当我们写完一个Java源程序的时候,他是怎么被计算机运行的呢?本篇文章就来介绍下Java程序是如何运行的。一、java技术体系传统意义上来讲Java技术体系包含下边几个部分:Java程序设计语言各种硬件平台上的虚拟机class文件格式JavaAPI类库来自商业机构和开源社区的第三方Java类库jdk:Java语言开发工具包。包括Java程序设计语言,Java虚拟机,JavaAPI类库三个部分。jre:Java程序运行时环境。JavaSEAPI类库中的子集合Java虚拟机。jvm:

    2022年7月8日
  • 使用Docker部署MySQL[通俗易懂]

    使用Docker部署MySQL[通俗易懂]在Docker下部署MySQL

    2022年10月30日
  • mysql忘记密码解决方案及三种方式修改密码

    mysql忘记密码解决方案及三种方式修改密码mysql用户分为root用户(超级管理员,拥有所有权限)和普通用户,mysql服务器通过权限表来控制用户对数据库的访问,这些权限表存于root用户下的mysql数据库中。在使用mysql数据库过程中,往往需要修改密码的操作,下面介绍三种修改密码的方式:1、使用mysqladmin命令在命令行指定新密码mysqladmin-uroot-ppassword‘新密码’…

    2022年5月6日
  • WIN7 64位 VS2013下载

    WIN7 64位 VS2013下载下载网址:https://msdn.itellyou.cn/复制到迅雷进行下载。 

    2022年9月10日
  • Robotium学习

    Robotium学习Robotium是一个基于模拟点击事件的用于进行黑盒测试的android测试工具。1.AndroidJUnitAndroid自动测试沿用Java中的JUnit创建测试类的时候,继承 ActivityInstrumentationTestCase2即可。其中MainActivity为测试时进入的首个界面。由于继承于JUnit因此在s

    2022年7月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号