java代碼縮小照片 java對圖片進(jìn)行縮放

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

放大圖像不會導(dǎo)致失真,而縮小圖像將不可避免的失真。Java中也同樣是這樣。但java提供了4個縮放的微調(diào)選項。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);得到一張縮放后的新圖。怎么用java代碼放大或縮小圖片不失真。

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

java程序中如何設(shè)置圖片大小?

用Image中的getScaledInstance方法得到一個按照指定寬度和高度縮放以后的Image實例,然后再用setImage方法設(shè)置ImageIcon所顯示的圖像\x0d\x0a一下示例:\x0d\x0aimportjavax.swing.*;\x0d\x0aimportjava.awt.*;\x0d\x0a\x0d\x0apublicclasstestextendsJFrame\x0d\x0a{\x0d\x0aprivateImageIconimg;\x0d\x0aprivateJLabelshowImg;\x0d\x0a\x0d\x0aprivatefinalstaticintWIDTH=147;\x0d\x0aprivatefinalstaticintHEIGHT=136;\x0d\x0a\x0d\x0apublictest()\x0d\x0a{\x0d\x0aimg=newImageIcon("1.png");\x0d\x0aimg.setImage(img.getImage().getScaledInstance(test.WIDTH,test.HEIGHT,Image.SCALE_DEFAULT));\x0d\x0a\x0d\x0ashowImg=newJLabel();\x0d\x0ashowImg.setIcon(img);\x0d\x0a\x0d\x0athis.add(showImg,BorderLayout.CENTER);\x0d\x0athis.setBounds(300,200,400,300);\x0d\x0athis.pack();\x0d\x0athis.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);\x0d\x0athis.setVisible(true);\x0d\x0a}\x0d\x0a\x0d\x0apublicstaticvoidmain(Stringargs[])\x0d\x0a{\x0d\x0anewtest();\x0d\x0a}\x0d\x0a}

java 圖片縮放代碼

直接給你一個類,直接套用就好了

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點像素

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代碼縮小照片 java對圖片進(jìn)行縮放
URL分享:http://muchs.cn/article38/ddceepp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)、網(wǎng)站制作、靜態(tài)網(wǎng)站、手機(jī)網(wǎng)站建設(shè)面包屑導(dǎo)航、微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計