Graphics2D的问题 Graphics2D问题
Graphics2D\u7684\u95ee\u9898\uff0c\u600e\u4e48\u5c31\u4e0d\u80fd\u8fd0\u884c\u5462\u7a7a\u6307\u9488\u5f02\u5e38\uff0c\u4f60\u5728main\u65b9\u6cd5\u91cc\u9762\u7533\u660e\u4e86Graphics g \u4f46\u662f\u503c\u4e3a\u7a7a\uff0c\u5728paint\u65b9\u6cd5\u91cc\u9762\u5f3a\u5236\u7c7b\u578b\u8f6c\u6362\u6210d2\uff0c\u7136\u540e\u8c03\u7528d2\u7684\u65b9\u6cd5\u8fd9\u65f6\u5019\u5c31\u51fa\u9519\u4e86\uff0c\u56e0\u4e3ad2\u662f\u7a7a\u7684
\u4f60\u53ef\u4ee5\u622a\u56fe\u66f4\u5168\u4e00\u70b9 \u4e0d\u592a\u597d\u5206\u6790 \u6b63\u5e38\u6765\u8bf4String\u53ea\u662f\u4e00\u4e2a\u5b57\u7b26\u4e32\uff0c\u4f60\u5e94\u8be5\u662f\u6539\u53d8\u8ba9\u5b83\u663e\u793a\u7684\u5730\u65b9\u7684\u989c\u8272
在drawImage时可以指定大小,自动缩放,还可以是过滤,参看我给的参考连接。public abstract boolean drawImage(Image img,
int x,
int y,
int width,
int height,
ImageObserver observer)绘制指定图像中已缩放到适合指定矩形内部的图像。
图像绘制在此图形上下文坐标空间的指定矩形内部,并且如果需要,则进行缩放。透明像素不影响该处已存在的像素。
此方法在任何情况下都立刻返回,甚至在整个图像没有为当前输出设备完成缩放、抖动或转换的情况下也是如此。如果当前的输出表示尚未完成,则 drawImage 返回 false。随着更多的图像可用,装入图像的进程将通过调用图像观察者的 imageUpdate 方法来通知它。
图像的缩放版本不一定立刻是可用的,因为已经为此输出设备构造了图像的非缩放版本。每种大小的图像可以被分别缓存,并由各自图像产生序列中的原始数据生成。
参数:
img - 要绘制的指定图像。如果 img 为 null,则此方法不执行任何动作。
x - x 坐标。
y - y 坐标。
width - 矩形的宽度。
height - 矩形的高度。
observer - 当转换了更多图像时要通知的对象。
绛旓細Java 2D API 缁存寔浜嗕笌JDK 1.1鐨勫吋瀹规э紝閫氳繃閬楃暀鏂规硶濡俧ill鍜宒raw锛屾槑纭寚绀Graphics2D鏍规嵁灞炴у拰鍛堢幇璁剧疆杩涜鎵╁睍銆傞粯璁よ缃笅锛屽瀹藉害涓1鐨凚asicStroke鍜孖dentity鍙樻崲锛屼负鐢ㄦ埛鎻愪緵鍙瑙佺殑鍛堢幇琛屼负銆傝澶囧潗鏍囧畾涔変负鍍忕礌杈圭晫锛岄伩鍏嶄簡閲嶅彔鍜岄槻閲嶅彔鍛堢幇缁撴灉鐨勫樊寮傘傚浜庣粯鍒剁嚎鍜岃矾寰勶紝KEY_STROKE_CONTROL鎻愮ず鎺у埗...
绛旓細鍦╠rawImage鏃跺彲浠ユ寚瀹氬ぇ灏忥紝鑷姩缂╂斁锛岃繕鍙互鏄繃婊わ紝鍙傜湅鎴戠粰鐨勫弬鑰冭繛鎺ャ俻ublic abstract boolean drawImage(Image img,int x,int y,int width,int height,ImageObserver observer)缁樺埗鎸囧畾鍥惧儚涓凡缂╂斁鍒伴傚悎鎸囧畾鐭╁舰鍐呴儴鐨勫浘鍍忋傚浘鍍忕粯鍒跺湪姝ゅ浘褰笂涓嬫枃鍧愭爣绌洪棿鐨勬寚瀹氱煩褰㈠唴閮紝骞朵笖濡傛灉闇瑕侊紝鍒欒繘琛岀缉鏀俱傞...
绛旓細浣犲叾瀹炰笉闇瑕佽繖鏍峰仛,鍙鐢ㄤ竴涓Graphics灏卞彲浠ュ疄鐜,浣犲厛鎶婁笉瑕佺缉鏀剧殑淇℃伅鐢诲ソ,鐒跺悗鎶婅繖涓狦raphics杞垚Graphics2D,鐢荤缉鏀剧殑淇℃伅,浣嗘槸浣嶇疆浣犺璋冩暣濂,鏈鍚庤繑鍥炰竴涓狦raphics鍘绘墦鍗板氨鍙互浜,鍥犱负鎴戝叕鍙镐篃閬囧埌杩欐牱鐨勯棶棰,鍚庢潵鏄繖鏍疯В鍐崇殑!涓瀹氬彲浠ョ殑
绛旓細浠g爜鏈闂銆傚府浣犳敼濂戒簡锛屼綘璇曡瘯 import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.Image;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;cl...
绛旓細鎴戠敤鐨勬槸vs2008寮鍙戝伐鍏 涓嬮潰鏄湪asp.net鐨刉eb绋嬪簭涓婄敾鍥剧殑鍚庡彴浠g爜浠呬緵鍙傝 using System.Drawing; //瀵煎叆鍛藉悕绌洪棿 using System.Drawing.Drawing2D;using System.Drawing.Imaging;using System.Drawing.Text;public partial class _Default : System.Web.UI.Page { protected void Page_Load(object s...
绛旓細鐢ㄥ師濮嬪浘鏃嬭浆鍚勪釜瑙掑害锛岃屼笉鐢ㄦ棆杞悗鐨勫凡鎹熷浘鍐嶈浆..鍙互閬垮厤銆傘傞氬父灏卞浜嗐傚疄鍦ㄦ晥鏋滀笉濂藉彲浠ユ斁澶у叓鍊嶅啀杞啀缂╁皬...
绛旓細鍏跺疄寰堢畝鍗曪紝g寮曠敤鐨勬湰鏉ュ氨鏄竴涓Graphics2D瀵硅薄锛岀埗绫诲彞鏌勮兘寮曠敤瀛愮被鐨勫晩銆傝繖鏍风殑濂藉湴鏂瑰氨鏄紙JAVA閮借繖涔堝仛锛屾帴鍙g浉褰撲簬鐖剁被锛屽氨鐢ㄦ帴鍙e璞″彞鏌勫紩鐢ㄥ瓙绫诲璞★紝JAVA杩欐牱鍋氭槸鏈夊師鍥犵殑锛変絾鏄闂鏉ヤ簡锛岀敤鐖剁被鍙ユ焺寮曠敤涓嶅埌瀛愮被瀵硅薄鐨勪竴浜涙柟娉曪紝浜庢槸灏卞張寮哄埗鍥炲綊銆傚氨鏄疓raphics2D g2 = (Graphics2D) g,杩...
绛旓細寰鍥炶浆30掳涔熸槸涓彲琛岀殑鏂规硶銆傚厛杩欐牱鐢ㄧ潃鍚э紝鏆傛椂鎴戜篃娌″彂鐜板ソ鏂规硶銆
绛旓細1. Graphics2d 鏂瑰紡 鍒╃敤Graphics2d鐨rotate鏂规硶鏉ュ疄鐜板浘鐗囨棆杞紝濂囨殑鏄竴鐩翠笉鐢熸晥锛屽疄鐜颁唬鐮佸涓 BufferedImage bufferedImage = ImageUtil.getImageByPath("bg.png");Graphics2D g2d = bufferedImage.createGraphics();g2d.rotate(Math.toRadians(90), bufferedImage.getWidth() >> 1, bufferedImage....
绛旓細绐楀彛鏀瑰彉鏃跺闈㈡澘杩涜鍒锋柊锛屼絾鏄病鏈夐噸鏂拌繍琛屼綘鐨勭粯鍒剁▼搴忥紝鎵浠ョ粯鍥句笉鑳芥甯告樉绀猴紝浣犲彲浠ュ姞鍏ョ獥鍙g洃鍚紝鍦ㄦ敼鍙樻椂杩涜閲嶆柊缁樺浘銆Graphics2D 鎴戣寰楄繖涓被閲岄潰鏈夋柟娉曞彲浠ュ湪闈㈡澘鍒锋柊鏃惰嚜鍔ㄦ洿鏂扮敾鍥惧唴瀹广