<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    sunfruit[請訪問http://www.fruitres.cn]

    --我相信JAVA能走得更遠 QQ:316228067

    JAVA在已有圖片上面畫圖報錯UnsupportedOperationException的解決辦法

    --sunfruit

      前一段時間寫了一個[原創(chuàng)]JAVA中圖片上疊加文字的方法,本來這方面的例子在網(wǎng)絡(luò)上面很多,而且當(dāng)時寫的時候也沒有遇到什么問題,所以也沒有什么感覺要注意的地方
      昨天由于一些原因需要在一個已有的圖片上面畫點,然后再顯示出來,感覺上和[原創(chuàng)]JAVA中圖片上疊加文字的方法很類似,也就沒當(dāng)回事按照自己的思路就寫了,很容易想到讀取已存在的圖片內(nèi)容然后生成
      ImageIcon imageIcon=new ImageIcon(bytes);    對象然后生成
      Image image=imageIcon.getImage();    對象,這個時候只要是從image實例里面獲得Graphics對象就可以對圖片進行編輯了但是下面這步卻報錯了
      Graphics g =image.getGraphics(); //這步抱錯:UnsupportedOperationException: getGraphics() not valid for images created with createImage(producer)
      怎么調(diào)試都不行,于是google一把,發(fā)現(xiàn)遇到這個問題的人不少,解決辦法是不能從Image對象獲得Graphics,而是要從BufferedImage對象獲得Graphics,于是調(diào)整思路將代碼修改為
      BufferedImage bufferedImage=new BufferedImage(imageIcon.getIconHeight(),imageIcon.getIconWidth(),BufferedImage.TYPE_INT_RGB);
      Graphics2D g=(Graphics2D)bufferedImage.getGraphics();這次測試通過可以獲得Graphics對象了

      這里說明一點:Graphics g =image.getGraphics(); 這一步如果是從Java的圖形組件里面獲得的Image對象,然后獲得Graphics對象就不會有問題
      在已有的圖片上面畫圖的完整例子見:[原創(chuàng)]JAVA在已有圖片上面畫圖的實例

    posted on 2006-03-11 13:56 sunfruit 閱讀(2148) 評論(0)  編輯  收藏 所屬分類: JAVA SE & EE

    主站蜘蛛池模板: 亚洲av无码一区二区三区不卡| 狠狠热精品免费观看| 免费黄网站在线看| 亚洲女同成人AⅤ人片在线观看 | 日韩免费的视频在线观看香蕉| 亚洲人成网站在线观看青青| www.av在线免费观看| 亚洲国产成人久久综合区| 免费人成网上在线观看| 国产成人精品久久亚洲高清不卡 | 国产天堂亚洲国产碰碰| 亚洲 自拍 另类小说综合图区 | 亚洲一级片免费看| 亚洲人成色7777在线观看| 91国内免费在线视频| 亚洲欧洲日产国产综合网| 日本xxxx色视频在线观看免费| 亚洲精品国产福利片| 夭天干天天做天天免费看| 豆国产96在线|亚洲| 亚洲区小说区图片区| 玖玖在线免费视频| 激情内射亚洲一区二区三区爱妻| 成年人网站在线免费观看| 羞羞视频免费网站入口| 久久精品国产69国产精品亚洲| 久久99精品免费视频| 亚洲妇女熟BBW| 亚洲精品国精品久久99热| 人人玩人人添人人澡免费| 亚洲精品国产精品国自产网站 | 亚洲色婷婷六月亚洲婷婷6月| 久9久9精品免费观看| 亚洲一久久久久久久久| 亚洲国产婷婷综合在线精品| 在线涩涩免费观看国产精品| 亚洲一区二区免费视频| 亚洲人成网站在线观看青青| **一级毛片免费完整视| 羞羞视频免费网站入口| 亚洲综合国产精品|