真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java截取圖片縮放代碼 java截取圖片縮放代碼是什么

java 圖片縮放代碼

直接給你一個(gè)類(lèi),直接套用就好了

創(chuàng)新互聯(lián)公司專(zhuān)注為客戶(hù)提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、武陵源網(wǎng)絡(luò)推廣、小程序開(kāi)發(fā)、武陵源網(wǎng)絡(luò)營(yíng)銷(xiāo)、武陵源企業(yè)策劃、武陵源品牌公關(guān)、搜索引擎seo、人物專(zhuān)訪(fǎng)、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供武陵源建站搭建服務(wù),24小時(shí)服務(wù)熱線(xiàn):13518219792,官方網(wǎng)址:www.cdcxhl.com

import java.awt.Graphics2D;

import java.awt.RenderingHints;

import java.awt.geom.AffineTransform;

import java.awt.image.BufferedImage;

import java.awt.image.ColorModel;

import java.awt.image.WritableRaster;

import java.io.File;

import javax.imageio.ImageIO;

public class Resize {

BufferedImage bufImage;

int width;

int height;

public Resize() {

// TODO Auto-generated constructor stub

}

public Resize(String srcPath,int width,int height) {

this.width = width;

this.height = height;

try{

this.bufImage = ImageIO.read(new File(srcPath));

}catch(Exception e){

e.printStackTrace();

}

}

public static BufferedImage rize(BufferedImage srcBufImage,int width,int height){

BufferedImage bufTarget = null;

double sx = (double) width / srcBufImage.getWidth();

double sy = (double) height / srcBufImage.getHeight();

int type = srcBufImage.getType();

if(type == BufferedImage.TYPE_CUSTOM){

ColorModel cm = srcBufImage.getColorModel();

WritableRaster raster = cm.createCompatibleWritableRaster(width,

height);

boolean alphaPremultiplied = cm.isAlphaPremultiplied();

bufTarget = new BufferedImage(cm, raster, alphaPremultiplied, null);

}else

bufTarget = new BufferedImage(width, height, type);

Graphics2D g = bufTarget.createGraphics();

g.setRenderingHint(RenderingHints.KEY_RENDERING,

RenderingHints.VALUE_RENDER_QUALITY);

g.drawRenderedImage(srcBufImage, AffineTransform.getScaleInstance(sx, sy));

g.dispose();

return bufTarget;

}

}

java怎樣等比縮放截圖

Image srcImg = ImageIO.read(new FileInputStream(fnSrc) );//取源圖

int width = 600; //假設(shè)要縮小到600點(diǎn)像素

int height = srcImg.getHeight(null)*600/srcImg.getWidth(null);//按比例,將高度縮減

System.out.println("Width: "+srcImg.getWidth(null));// 這幾行是調(diào)試用

System.out.println("Height: "+srcImg.getHeight(null));

System.out.println("Width2: "+width);

System.out.println("Height2: "+height);

Image smallImg =srcImg.getScaledInstance(width, height, Image.SCALE_SMOOTH);//縮小

java圖片縮放

根據(jù)你的鼠標(biāo)移動(dòng)事件,判斷你第一次點(diǎn)擊的點(diǎn)和最后一次的點(diǎn),就可以算出這個(gè)句型區(qū)域的長(zhǎng)和寬了,

下面代碼自己看

package com.itheima.util;

import java.awt.Image;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

import com.sun.image.codec.jpeg.JPEGCodec;

import com.sun.image.codec.jpeg.JPEGImageEncoder;

/**

* 制作圖片縮略圖

*

* @author seawind

*

*/

public class PicUtils {

private String srcFile;

private String destFile;

private int width;

private int height;

private Image img;

/**

* 構(gòu)造函數(shù)

*

* @param fileName

* String

* @throws IOException

*/

public PicUtils(String fileName) throws IOException {

File _file = new File(fileName); // 讀入文件

this.srcFile = fileName;

// 查找最后一個(gè).

int index = this.srcFile.lastIndexOf(".");

String ext = this.srcFile.substring(index);

this.destFile = this.srcFile.substring(0, index) + "_s" + ext;

img = javax.imageio.ImageIO.read(_file); // 構(gòu)造Image對(duì)象

width = img.getWidth(null); // 得到源圖寬

height = img.getHeight(null); // 得到源圖長(zhǎng)

}

/**

* 強(qiáng)制壓縮/放大圖片到固定的大小

*

* @param w

* int 新寬度

* @param h

* int 新高度

* @throws IOException

*/

public void resize(int w, int h) throws IOException {

BufferedImage _image = new BufferedImage(w, h,

BufferedImage.TYPE_INT_RGB);

_image.getGraphics().drawImage(img, 0, 0, w, h, null); // 繪制縮小后的圖

FileOutputStream out = new FileOutputStream(destFile); // 輸出到文件流

JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);

encoder.encode(_image); // 近JPEG編碼

out.close();

}

/**

* 按照固定的比例縮放圖片

*

* @param t

* double 比例

* @throws IOException

*/

public void resize(double t) throws IOException {

int w = (int) (width * t);

int h = (int) (height * t);

resize(w, h);

}

/**

* 以寬度為基準(zhǔn),等比例放縮圖片

*

* @param w

* int 新寬度

* @throws IOException

*/

public void resizeByWidth(int w) throws IOException {

int h = (int) (height * w / width);

resize(w, h);

}

/**

* 以高度為基準(zhǔn),等比例縮放圖片

*

* @param h

* int 新高度

* @throws IOException

*/

public void resizeByHeight(int h) throws IOException {

int w = (int) (width * h / height);

resize(w, h);

}

/**

* 按照最大高度限制,生成最大的等比例縮略圖

*

* @param w

* int 最大寬度

* @param h

* int 最大高度

* @throws IOException

*/

public void resizeFix(int w, int h) throws IOException {

if (width / height w / h) {

resizeByWidth(w);

} else {

resizeByHeight(h);

}

}

/**

* 設(shè)置目標(biāo)文件名 setDestFile

*

* @param fileName

* String 文件名字符串

*/

public void setDestFile(String fileName) throws Exception {

if (!fileName.endsWith(".jpg")) {

throw new Exception("Dest File Must end with \".jpg\".");

}

destFile = fileName;

}

/**

* 獲取目標(biāo)文件名 getDestFile

*/

public String getDestFile() {

return destFile;

}

/**

* 獲取圖片原始寬度 getSrcWidth

*/

public int getSrcWidth() {

return width;

}

/**

* 獲取圖片原始高度 getSrcHeight

*/

public int getSrcHeight() {

return height;

}

}

怎么用java代碼放大或縮小圖片不失真。

放大圖像不會(huì)導(dǎo)致失真,而縮小圖像將不可避免的失真。

Java中也同樣是這樣。

但java提供了4個(gè)縮放的微調(diào)選項(xiàng)。

image.SCALE_SMOOTH

//平滑優(yōu)先

image.SCALE_FAST//速度優(yōu)先

image.SCALE_AREA_AVERAGING

//區(qū)域均值

image.SCALE_REPLICATE

//像素復(fù)制型縮放

image.SCALE_DEFAULT

//默認(rèn)縮放模式

調(diào)用方法

Image

new_img=old_img.getScaledInstance(1024,

768,

Image.SCALE_SMOOTH);

得到一張縮放后的新圖。


當(dāng)前名稱(chēng):java截取圖片縮放代碼 java截取圖片縮放代碼是什么
網(wǎng)站URL:http://weahome.cn/article/hjiidd.html

其他資訊

在線(xiàn)咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部