相关文章推荐
讲道义的番茄  ·  jquery - Ajax - How ...·  1 年前    · 
开朗的烤土司  ·  axios Refused to ...·  1 年前    · 
  • 1
  • 2
  • 3
  • 4
  • 支持
  • /// </summary> /// <param name="path">图片的路径</param> /// <param name="targetPath">目标全路径:路径+文件名+后缀</param> private void AnalysisImage ( string path , string targetPath ) FileStream fs = new FileStream ( path , FileMode . Open ) ; // 使用文件流构造一个二进制读取器,元数据转为二进制值 BinaryReader br = new BinaryReader ( fs ) ; //二进制读取类 byte [ ] imageBuffer = new byte [ br . BaseStream . Length ] ; //转为字节流 br . Read ( imageBuffer , 0 , Convert . ToInt32 ( br . BaseStream . Length ) ) ; //读所有信息 string textString = System . Convert . ToBase64String ( imageBuffer ) ; //转为字符串(未使用,你可以写个Json存下来试试) fs . Close ( ) ; //关 br . Close ( ) ; //双关 System . IO . File . WriteAllBytes ( targetPath , imageBuffer ) ; //将图片写到Assets目录下,名叫Chinar+index.jpg | imageBuffer:二进制流 AssetDatabase . Refresh ( ) ; //刷新文件夹

    Png To Sprite —— Png 转 Sprite

    PNG 图片转精灵 Sprite 图片

    使用场景:将外部Png图片,显示在软件中。设置个头像、设置背景之类的自定义设置功能
    举个例子

    using System.IO;
    using UnityEngine;
    using UnityEngine.UI;
    public class ChinarSpriteToPng : MonoBehaviour
        /// <summary>
        /// 按钮点击事件:精灵转PNG图片
        /// </summary>
        public void OnClick_PngToSprite()
            //找到场景中的 图片组件,并赋值
            GameObject.Find("PNG To Sprite/Sprite").GetComponent<Image>().sprite = PngToSprite(Application.streamingAssetsPath + "/PngToSprite/Chinar1.jpg", 300, 300);
        /// <summary>
        /// IO方式 —— 将PNG转为Sprite精灵图片
        /// </summary>
        /// <param name="fullPath">读取的PNG图片全路径:路径+文件名+后缀</param>
        /// <param name="x">图片尺寸:宽</param>
        /// <param name="y">图片尺寸:高</param>
        /// <returns></returns>
        private Sprite PngToSprite(string fullPath, int x, int y)
            using (FileStream fs = new FileStream(fullPath, FileMode.Open, FileAccess.Read)) //自动双清
                fs.Seek(0, SeekOrigin.Begin);            //设定当前流的位置
                byte[] bytes = new byte[fs.Length];      //创建文件长度缓冲区
                fs.Read(bytes, 0, (int) fs.Length);      //读取文件
                Texture2D texture = new Texture2D(x, y); //创建Texture
                texture.LoadImage(bytes);
                return Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), Vector2.one / 2);
    

    Sprite To Png —— Sprite 转 Png

    Unity 中的精灵图片 Sprite 转为 Png 并 IO 保存下来

    使用场景:将软件中的图片保存。将指定的UI 精灵图保存到本地
    举个例子

    // ========================================================
    // 描述:精灵与PNG图片相互转换
    // 作者:Chinar 
    // 创建时间:2019-01-30 11:15:47
    // 版 本:1.0
    // ========================================================
    using System.IO;
    using UnityEngine;
    public class ChinarSpriteToPng : MonoBehaviour
        /// <summary>
        /// 精灵转PNG图片
        /// </summary>
        public void OnClick_SpriteToPng()
            Sprite     sprite = Resources.Load<Sprite>("WeChat1");                                                             //读取 资源目录中的 WeChat1文件//动态加载 Sprite
            byte[]     bt     = sprite.texture.EncodeToPNG();                                                                  //将Texture转字节流
            FileStream fs     = new FileStream(Application.streamingAssetsPath + "/SpriteToPng/WeChat1.png", FileMode.Create); //创建PNG文件
            using (fs)
                fs.Write(bt, 0, bt.Length); //写入
                fs.Flush();
    

    Project —— 项目文件



    项目文件为 unitypackage 文件包:

    下载导入 Unity 即可使用
    举个例子

    May Be —— 开发者,总有一天要做的事!

    拥有自己的服务器,无需再找攻略

    Chinar 提供一站式《零》基础教程

    使有限时间 具备无限可能!

    Chinar 知你所想,予你所求!( Chinar Blog )

    public static byte[] AuthGetFileData(string fileUrl) FileStream fs = new FileStream(fileUrl, FileMode.Open, FileAccess.Read); byte[] buffur = new byte[fs.Length]; fs.Read(buffur, 0, buffur.Length); fs.Close();
    图集拆分后可以将子图单独保存成png图片,使用如下代码, var sprites = Resources.LoadAll<Sprite>("main"); Debug.Log("拆分的图片如下:"); var path = "D:/Splite/"; if (!Directory.Exists(path)) Directory.CreateDirectory(path); int counter = 0; foreach (var sprite in sprites)
    Css Sprite,有时也称为雪碧图、精灵图,是每一个前端开都会遇到的问题,也是常见的小图片加载优化手段。相信各位同学都清楚其原理,具体就不赘述了。 之前一直有动机利用html5实现一个合成雪碧图的工具,方便小项目的快速开发,减少一些诸如开photoshop、fireworks等工具来合图的机械劳动,最近终于抽出时间将构思实现。 在线使用:http://alloyteam.github.com/gopng 使用介绍:http://www.alloyteam.com/?p=1050 Go!Png介绍: 目前实现的功能如下: 支持图片文件拖拽 支持生成png图片与css文件 支持两种自动排列的模式 放大镜功能 磁力吸附对齐功能 工作状态导出功能,可以方便导出文件,在下一次操作通过拖放改文件来恢复工作状态(包括图片数据跟参数设置) 支持Mac(Chrome) :) 标签:GoPng
    请问打包后报错是什么原因啊? BuildDatabaseFailedException: arcoreimg failed with exit code 1 and stderr: C:\Users\张杰\AppData\Local\Temp\540504e38cef48ed8de754bd6d44af91\b16a45d135884005b347dc6e7a78be25.png: File not found. UnityEditor.XR.ARCore.ArCoreImg.BuildDb (UnityEngine.XR.ARSubsystems.XRReferenceImageLibrary library) (at Library/PackageCache/com.unity.xr.arcore@4.2.10/Editor/ArCoreImg.cs:102) UnityEditor.XR.ARCore.ARCoreImageLibraryBuildProcessor.BuildAssets () (at Library/PackageCache/com.unity.xr.arcore@4.2.10/Editor/ARCoreImageLibraryBuildProcessor.cs:37) Rethrow as Exception: Unity EasySave3中文图文教程详解-万能数据保存插件多平台支持 拔丝辣条: 保存了transform,然后关闭unity,再次启动之后加载不了了 Unity UGUI Layout自动排版组件用法介绍 「已注销」: 可以,脚本可以实现 Unity官方支持中文版啦!!!附教程——无需破解! Breeze_i: 怎么打不开www.chinar.xin呀