图集拆分后可以将子图单独保存成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)
{Debug.Log(sprite.name);string fname = path + sprite.name + ".png";if (sprite.name.Contains("/")){var index = sprite.name.LastIndexOf("/");var pt = path + sprite.name.Substring(0, index);if(!Directory.Exists(pt)){Directory.CreateDirectory(pt);Debug.Log($"创建目录{pt}");}fname = path + sprite.name + ".png";}byte[] bytes = ToPNG(sprite);File.WriteAllBytes(fname, bytes);++counter;if (counter > 100){break;}
}
Debug.Log($"保存到目录{path},共保存了{counter}个文件");
public byte[] ToPNG(Sprite sprite)
{Texture2D pSource = sprite.texture;Rect r = sprite.textureRect;int left = (int)r.x, top = (int)r.y, width = (int)r.width, height = (int)r.height;if (left < 0){width += left;left = 0;}if (top < 0){height += top;top = 0;}if (left + width > pSource.width){width = pSource.width - left;}if (top + height > pSource.height){height = pSource.height - top;}if (width <= 0 || height <= 0){return null;}Color[] aSourceColor = pSource.GetPixels(0);//*** Make NewTexture2D subtex = new Texture2D(width, height, TextureFormat.RGBA32, false);//*** Make destination arrayint xLength = width * height;Color[] aColor = new Color[xLength];int i = 0;for (int y = 0; y < height; y++){int sourceIndex = (y + top) * pSource.width + left;for (int x = 0; x < width; x++){aColor[i++] = aSourceColor[sourceIndex++];}}//*** Set Pixelssubtex.SetPixels(aColor);subtex.Apply();byte[] bytes = subtex.EncodeToPNG();return bytes;
}

unity sprite保存成PNG图片相关推荐

  1. 海康威视API-单帧数据捕获并保存成JPEG图片NET_DVR_CaptureJPEGPicture

    函 数: BOOL NET_DVR_CaptureJPEGPicture(LONG lUserID, LONG lChannel, LPNET_DVR_JPEGPARA lpJpegPara, cha ...

  2. svg文件保存成svg图片并通过cairosvg库转换png图片

    之所以会碰到这个需求是因为在做暗网一个站点采集时候其站点验证码均采用svg矢量图格式,一般的打码平台是不能够识别svg格式图片的所以我们需要将如下图所示的一堆转换成svg图片在通过cairosvg转换 ...

  3. QGraphicsScene 中的场景保存成透明图片

    这里弄出两段关键代码: 一个是保存图片的函数: void UICanvasView::saveToImage(const QString& imagePath) {m_pScene->S ...

  4. 网页录屏将视频截图保存成gif图片并压缩的方法超详细

    我在一个网站上找到一个视频素材很不错.于是利用360浏览器的网页录屏功能.先把视频录下来了.然后.使用迅雷播放器的gif工具.截取了需要的界面.然后手动选中要生成的时间轴!然后选择不同的分辨率即可! ...

  5. JPG、RGB、YUV像素数据保存成JPG、BMP图片

    本文章使用的摄像头是OV2640,可以直接输出JPG格式的图片,摄像头不多说,开发板是ESP32-CAM,串口输出数据给上位机,C#写的,VS2017. 1.JPG数据图片显示和保存 JPG格式的图片 ...

  6. C++保存不同的图片格式

    保存为BMP格式: //---------------------------------------------------------------------------------- /** \ ...

  7. Google Chrome网页保存为无损图片—秘籍

    最近遇到需要将打开的网页内容,保存成无损图片.可自己电脑上只装了chrome浏览器,自己不想电脑上装太多的.经过摸索和借鉴.发现该浏览器,其实隐藏了一种挺好用的功能-网页下载为无损图片.它的操作如下: ...

  8. php 文字图片怎么保存为图片,php技术实现加载字体并保存成图片

    下面通过一段代码给大家详解介绍下php技术实现加载字体并保存成图片. // Set the content-type header("Content-type: image/png" ...

  9. BitmapUtil【缩放bitmap以及将bitmap保存成图片到SD卡中】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 用于缩放bitmap以及将bitmap保存成图片到SD卡中 效果图 代码分析 bitmapZoomByHeight(Bitmap s ...

最新文章

  1. 设置linux查看历史命令显示两个小时内,linux系统中history历史命令显示执行日期和时间...
  2. 【Matlab】山地建模?立体热度?怎么绘制三维曲面图?
  3. 何谓成功的软件架构设计
  4. 【GIF动画+完整可运行源代码】C++实现 快速排序——十大经典排序算法之六
  5. HDU 5787 wolf Number 数位dp
  6. 多线程原理分析面试题理解
  7. linux svn 指定端口号,linux(Ubuntu)搭建Subversion服务器+修改svn端口号
  8. 中路径查找器的功能_还在用路径查找器?试试它吧!
  9. TCP协议(标志位URG、PSH,定时器,连接的建立和断开)
  10. 网络测试工具 - QCheck
  11. Bluetooth的profile总结
  12. dvi黑屏解决方法_DVI线导致黑屏故障处理全攻略
  13. Error: Some file crunching failed
  14. 链表实现一元多项式的加法、乘法、求导,求值
  15. thunderbird 配置exchange邮箱
  16. Android初学者的疑惑与“死板”的Android初学之路
  17. PostgreSQL变更表Owner
  18. 递归求第五个人的年龄
  19. 功能安全标准-ISO26262-3---概念阶段---ASIL(汽车安全完整性等级)等级确定方法
  20. 计算密码子频率的代码R语言_科学网—R语言终止密码子统计 - 熊荣川的博文

热门文章

  1. 東京喰種_经典台词中日双语2
  2. 计算机课堂小游戏活跃气氛,幼儿课前小游戏活跃气氛,课前三分钟小游戏,适合室内课堂玩的游戏:活跃气氛的70个小游戏_公开课小游戏-南开游戏网...
  3. clearInterval
  4. Linux停止ping包,linux开启、禁止ping包
  5. 到岗时间越快就越有优势吗?
  6. 【网页设计自习室#010】CSS01
  7. 基于jsp的塞北村镇旅游网站的设计与实现--【毕业论文】
  8. usb扫描枪驱动下载 wince_WinCE系列全站仪USB驱动程序(WinCE全站仪USB驱动) 最新中文版...
  9. Eclipse入门操作之快速上手、Eclipse的快捷键:
  10. HTML怎么设置超链接字体颜色和点击后的字体颜色?