程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> java2d圖像縮放特效

java2d圖像縮放特效

編輯:關於JAVA

效果圖如下:

源代碼:

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Scale {
/**
 * @param args
 */
public static void main(String[] args) {
 JFrame jf = new JFrame();
 jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 jf.getContentPane().add(new ScalePanel());
 jf.setPreferredSize(new Dimension(500, 400));
 jf.pack();
 jf.setVisible(true);
}
}
class ScalePanel extends JPanel {
protected void paintComponent(Graphics g) {
 int width = this.getWidth();
 int height = this.getHeight();
 super.paintComponent(g);
 Graphics2D g2d = (Graphics2D) g;
 g2d.setColor(Color.WHITE);
 g2d.fillRect(0, 0, width, height);
 g2d.setColor(Color.BLACK);
 g2d.setRenderingHint(RenderingHints.KEY_FRACTIONALMETRICS,
  RenderingHints.VALUE_FRACTIONALMETRICS_ON);
 g2d.setRenderingHint(RenderingHints.KEY_RENDERING,
  RenderingHints.VALUE_RENDER_QUALITY);
 ImageIcon logoPNG;
 try {
 logoPNG = new ImageIcon(getClass().getResource ("logo.png"));
 logoPNG.paintIcon(this, g2d, 10, 50);
 g2d.translate(width / 5, height / 2.5);
 g2d.scale(2.0, 2.0);//放大2倍
 logoPNG.paintIcon(this, g2d, 0, 0);
 g2d.scale(0.25, 0.25);//縮小到1/4
 logoPNG.paintIcon(this, g2d, 250, -180);
 } catch (Exception e) {
 e.printStackTrace();
 g2d.drawString("讀入圖像文件錯誤!", 100, 200);
 }
}
}

以上代碼修改一下即可用在jsp中

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved