トップ 差分 一覧 ソース 置換 検索 ヘルプ PDF RSS ログイン

半透明処理

Graphics クラスを使う

http://www.sm.rim.or.jp/~shishido/image2.html

 for (i=0;i<64;i++)  // 半透明64*64で青のイメージを作る
     for (j=0;j<64;j++)
         dot[j+i*64]=0x800000ff;

 img=createImage(new MemoryImageSource(64,64,dot,0,64));

public void paint(Graphics g){ // paint メソッド

     g.drawImage(bk,8,8,this); // 背景イメージ描画
     g.drawImage(img,x+8,y+8,this); // 半透明イメージ描画

 }

Graphics2D クラスを使う

http://javagame.skr.jp/index.php?%C8%BE%C6%A9%CC%C0%C9%C1%B2%E8

  public void paintComponent(Graphics g) {
       super.paintComponent(g);
       Graphics2D g2 = (Graphics2D) g;

       // アルファ値
       AlphaComposite composite = AlphaComposite.getInstance(
               AlphaComposite.SRC_OVER, 0.5f);

       g2.setColor(Color.RED);
       g2.fillOval(50, 50, 100, 100);

       // アルファ値をセット(以後の描画は半透明になる)
       g2.setComposite(composite);

       g2.setColor(Color.BLUE);
       g2.fillRect(90, 90, 100, 100);
   }
[カテゴリ: プログラミング言語 > Java]



  • Hatenaブックマークに追加
  • livedoorクリップに追加
  • del.icio.usに追加
  • FC2ブックマークに追加

最終更新時間:2008年09月29日 22時27分26秒