トップ 一覧 置換 検索 ヘルプ 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);
    }
{{category2 プログラミング言語,Java}}