<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

    主站蜘蛛池模板: **aaaaa毛片免费同男同女| 亚洲爆乳精品无码一区二区| 精品多毛少妇人妻AV免费久久| 日韩免费视频网站| 亚洲午夜福利在线视频| 成人免费一区二区三区在线观看| 亚洲国产av美女网站| 免费影院未满十八勿进网站| 亚洲免费人成视频观看| 午夜电影免费观看| 国产亚洲视频在线观看| 亚洲国产精品人人做人人爽| xxxxx做受大片在线观看免费| 亚洲中文字幕无码一久久区| 久久久久久国产精品免费免费男同 | CAOPORM国产精品视频免费| 精品亚洲成α人无码成α在线观看 | 亚洲国产一区在线| 日本免费网址大全在线观看| 亚洲乱码中文字幕在线| yy6080亚洲一级理论| 97在线免费观看视频| 亚洲午夜精品一区二区| 久久久久久免费视频| 美女黄频a美女大全免费皮| 亚洲精品美女久久777777| 免费观看无遮挡www的视频| 国产精品亚洲一区二区在线观看| 亚洲国产专区一区| 最近中文字幕高清免费中文字幕mv | 久久国产精品成人免费| 亚洲欧洲精品一区二区三区| 啦啦啦中文在线观看电视剧免费版| 国产精品亚洲一区二区在线观看| 综合亚洲伊人午夜网 | 日韩免费观看一区| 亚洲一线产品二线产品| 伊人久久大香线蕉亚洲五月天| 91大神免费观看| 黄网站色成年片大免费高清| 久久久久亚洲av无码专区蜜芽|