NGUIのスプライトをファイルに保存する

spr1はUISPrite

٤Ƴ٤Ĥ
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 
-
|
|
|
|
|
|
|
-
-
|
|
-
|
!
|
!
!
|
|
|
!
    public void ButtonClick()
    {
        int width = spr1.GetAtlasSprite().width;
        int height = spr1.GetAtlasSprite().height;
        int sprx = spr1.GetAtlasSprite().x;
        int spry = spr1.GetAtlasSprite().y;
        Texture2D tmptex = new Texture2D(width,height,TextureFormat.RGBA32,false);
        Texture2D srctex = (Texture2D)spr1.atlas.texture;
 
        for(int y = 0; y < height; ++y) {
            for(int x = 0;x < width; ++x){
                Color c = srctex.GetPixel(x+sprx,y+(spr1.atlas.texture.height-(height+spry)));
                if(c.a == 0)
                {
                    c.r = c.g = c.b = c.a = 1;
                }
                tmptex.SetPixel(x,y,c);
            }
        }
        byte[] pngarr = tmptex.EncodeToPNG();
        Debug.Log(Application.persistentDataPath+"/test.png");
        File.WriteAllBytes(Application.persistentDataPath+"/test.png", pngarr);
    }

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-10-31 (金) 17:55:32 (1861d)