Unity3d Ugui 8 RawImage

25 篇文章 1 订阅

不仅仅是Sprite,支持任意格式的图片,支持UV Rect(用来设置显示图片的某一部分)。

        Source Image :图片资源(Texture)可以不是Sprite

        Color:颜色

        Material:材质

        Raycast Target:是否接受射线检测,当该项为false时,消息会透传

        Raycast Padding:射线检测的偏移值

        Maskable:受不受Mask的影响

         UV Rect :图片在矩形里的偏移和大小

         UV Rect的x、y的意思就是从贴图的哪个地方开始显示,以左下角为(0,0),右上角为(1,1)。

         如果是x、y是(0,0.5),表示从贴图的中部(0,0.5)的坐标开始往上和往右显示,超出的部分有两种模式来填补,受贴图的Wrap Mode属性影响

        Clamp表示用最后的像素填充

        Repeat重复的填充

        Mirror反转的填充

         UV Rect的w、h的意思就是显示的大小,以左下角为(0,0),右上角为(1,1) 如果是w、h是(0.5,0.5),表示在Canvas中显示原来贴图的四分之一。

代码加载图片,分开在不在Resources目录下

不在Resources下:两种方式,路径必须写全路径,后缀不能省略

1:www

IEnumerator WWWLoadImage(RawImage img, string path)
    {
        WWW www = new WWW(path);
        if (www.isDone)
            yield return www;
        img.texture = www.texture;
    }

2:io

void IoLoadImage(RawImage img, string path, int width, int height)
    {
        using (FileStream fileStream = new FileStream(path, FileMode.Open, FileAccess.Read))
        {
            fileStream.Seek(0, SeekOrigin.Begin);
            byte[] byteArr = new byte[fileStream.Length];
            fileStream.Read(byteArr, 0, byteArr.Length);

            Texture2D texture = new Texture2D(width, height);
            texture.LoadImage(byteArr);
            img.texture = texture;
        }
    }

在Resources下:路径从Resources开始,不能带后缀

例如“F:\Unitytest\Assets\Resources\Image\123.jpg”,只需要用“Image\123”就可以

 void ResouceLoadImage(RawImage img,string path)
    {
        img.texture = Resources.Load<Texture2D>(path);
    }

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值