1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務時間:8:30-17:00
      你可能遇到了下面的問題
      關閉右側工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
      java對圖像縮放代碼 java縮放圖片

      如何用Java實現(xiàn)圖形的放大和縮小

      java實現(xiàn)圖形的放大和縮小,其實就是在畫圖時,改變圖片的長和寬。以下代碼參考一下:

      專注于為中小企業(yè)提供成都網(wǎng)站設計、做網(wǎng)站服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)綏江免費做網(wǎng)站提供優(yōu)質(zhì)的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。

      import?java.awt.Graphics;

      import?java.awt.MouseInfo;

      import?java.awt.Point;

      import?java.awt.event.ActionEvent;

      import?java.awt.event.ActionListener;

      import?java.awt.event.MouseEvent;

      import?java.awt.event.MouseListener;

      import?java.io.File;

      import?javax.swing.ImageIcon;

      import?javax.swing.JButton;

      import?javax.swing.JFileChooser;

      import?javax.swing.JFrame;

      import?javax.swing.JPanel;

      import?javax.swing.filechooser.FileNameExtensionFilter;

      public?class?App?extends?JFrame?implements?MouseListener,?ActionListener?{

      int?x?=?0;

      int?y?=?0;

      File[]?selectedFiles?=?null;

      int?fileIndex?=?0;

      int?width?=?200;

      int?height?=?200;

      public?App()?{

      setDefaultCloseOperation(EXIT_ON_CLOSE);

      setLocationRelativeTo(null);

      setSize(400,?300);

      setResizable(false);

      getContentPane().setLayout(null);

      JPanel?panel?=?new?ImagePanel();

      panel.setBounds(12,?40,?370,?218);

      getContentPane().add(panel);

      addMouseListener(this);

      JButton?btnBrowse?=?new?JButton("Browse");

      btnBrowse.addActionListener(this);

      btnBrowse.setBounds(12,?9,?91,?21);

      getContentPane().add(btnBrowse);

      setVisible(true);

      }

      public?static?void?main(String[]?args)?{

      new?App();

      }

      public?void?actionPerformed(ActionEvent?e)?{

      JFileChooser?chooser?=?new?JFileChooser();

      chooser.setMultiSelectionEnabled(true);

      FileNameExtensionFilter?filter?=?new?FileNameExtensionFilter(

      "JPG??GIF?Images",?"jpg",?"gif");

      //?設置文件類型

      chooser.setFileFilter(filter);

      //?打開選擇器面板

      int?returnVal?=?chooser.showOpenDialog(this);

      if?(returnVal?==?JFileChooser.APPROVE_OPTION)?{

      selectedFiles?=?chooser.getSelectedFiles();

      repaint();

      }

      }

      public?void?mouseClicked(MouseEvent?e)?{

      }

      public?void?mouseEntered(MouseEvent?e)?{

      }

      public?void?mouseExited(MouseEvent?e)?{

      }

      public?void?mousePressed(MouseEvent?e)?{

      Point?point?=?MouseInfo.getPointerInfo().getLocation();

      x?=?point.x;

      y?=?point.y;

      }

      public?void?mouseReleased(MouseEvent?e)?{

      Point?point?=?MouseInfo.getPointerInfo().getLocation();

      int?thisX?=?point.x;

      int?thisY?=?point.y;

      System.out.println("thisX="?+?thisX?+?"??"?+?"thisY="?+?thisY);

      if?((y?-?thisY??20??y?-?thisY??0)

      ||?(y?-?thisY??0??y?-?thisY??-20))?{

      //?Y?在20范圍內(nèi)移動認為是水平移動

      if?(x??thisX)?{

      //?right

      if?(selectedFiles?!=?null

      ?fileIndex??selectedFiles.length?-?1)?{

      fileIndex++;

      }

      }?else?{

      //?left

      if?(selectedFiles?!=?null??fileIndex??0)?{

      fileIndex--;

      }

      }

      }?else?{

      if?(x??thisX)?{

      //?右下

      width?+=?20;

      height?+=?20;

      }?else?{

      //?左上

      width?-=?20;

      height?-=?20;

      }

      }

      repaint();

      }

      class?ImagePanel?extends?JPanel?{

      public?void?paint(Graphics?g)?{

      super.paint(g);

      if?(selectedFiles?!=?null)?{

      ImageIcon?icon?=?new?ImageIcon(selectedFiles[fileIndex]

      .getPath());

      g.drawImage(icon.getImage(),?0,?0,?width,?height,?this);

      }

      }

      }

      }

      java將圖片按比例縮小

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

      int width = 600; //假設要縮小到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中也同樣是這樣。但java提供了4個縮放的微調(diào)選項。image.SCALE_SMOOTH //平滑優(yōu)先image.SCALE_FAST//速度優(yōu)先image.SCALE_AREA_AVERAGING //區(qū)域均值image.SCALE_REPLICATE //像素復制型縮放image.SCALE_DEFAULT //默認縮放模式調(diào)用方法Image new_img=old_img.getScaledInstance(1024, 768, Image.SCALE_SMOOTH);得到一張縮放后的新圖。怎么用java代碼放大或縮小圖片不失真。

      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對圖像縮放代碼 java縮放圖片
      文章轉(zhuǎn)載:http://www.ef60e0e.cn/article/dogoppd.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        延长县| 团风县| 马边| 寿阳县| 宁晋县| 巧家县| 潼南县| 白河县| 宁安市| 海阳市| 天柱县| 习水县| 奉新县| 玛多县| 子洲县| 南岸区| 襄汾县| 安新县| 腾冲县| 南和县| 耿马| 乌恰县| 拜城县| 盘山县| 乐昌市| 永寿县| 赞皇县| 怀化市| 珲春市| 耿马| 交城县| 沁阳市| 新和县| 东阳市| 淅川县| 宝清县| 泸西县| 凤庆县| 木兰县| 岑巩县| 冷水江市|