/// <summary>
/// 切割一张指定的图片
/// </summary>
/// <param name="source">指定的图片源</param>
/// <param name="tileWidth">图块宽度</param>
/// <param name="tileHeight">图块高度</param>
/// <returns>切割好的图片数组(从左往右,从上往下)</returns>
public static ImageSource[] SplitImage(BitmapSource source, int tileWidth, int tileHeight)
{
    var colCount = source.PixelWidth / tileWidth;
    var rowCount = source.PixelHeight / tileHeight;
    var results = new ImageSource[rowCount * colCount];
    var stride = tileWidth * ((source.Format.BitsPerPixel + 7) / 8);
    var pixelsCount = tileWidth * tileHeight;
    var tileRect = new Int32Rect(0, 0, tileWidth, tileHeight);
for (int row = 0; row < rowCount; row++)
    {
        for (int col = 0; col < colCount; col++)
        {
            var pixels = new int[pixelsCount];
            var copyRect = new Int32Rect(col * tileWidth, row * tileHeight, tileWidth, tileHeight);
            source.CopyPixels(copyRect, pixels, stride, 0);
            var wb = new WriteableBitmap(
                tileWidth,
                tileHeight,
                source.DpiX,
                source.DpiY,
                source.Format,
                source.Palette);
            wb.Lock();
            wb.WritePixels(tileRect, pixels, stride, 0);
            wb.Unlock();
                
            results[row * colCount + col] = wb;
        }
    }
return results;
}
用法:
SplitImage(new BitmapImage(new Uri("E:/Graphics/Characters/a.png")), 70, 101)

C#图片按指定大小分割相关推荐

  1. 图片处理-指定大小缩放

    description: 解决清晰度不足/模糊的问题 图片处理-指定大小缩放 单独使用opencv或者PIL库的话都会出现不同程度的图片模糊,这里参考了文章:https://www.hawu.me/c ...

  2. 如何压缩图片到500KB?怎么压缩图片到指定大小?

    如何压缩图片到500KB?这就需要用到压缩啦的图片压缩指定大小工具,只需三步就可以轻松压缩图片大小kb,具体操作步骤如下: 1.使用浏览器打开压缩啦,选择图片压缩指定大小功能. 2.上传需要压缩的图片 ...

  3. 安卓android按宽/高缩放图片到指定大小并进行裁剪得到中间部分图片

    /*** 按宽/高缩放图片到指定大小并进行裁剪得到中间部分图片 <br>* 方 法 名:zoomBitmap <br>* 创 建 人:楼翔宇 <br>* 创建时间: ...

  4. JPG图片怎么压缩到30k内?如何压缩图片到指定大小?

    现在各大网站对上传使用的图片都有大小的限制,有时我们在上传图片的时候会遇到图片要求要在30k以内的情况,在遇到这种情况的时候大家就可以使用在线照片处理器 (https://www.yasuotu.co ...

  5. JAVA图片压缩指定大小范围

    图片压缩指定大小范围 图片压缩之后存在上下误差,不影响使用 @RequestMapping(value="/compress",method=RequestMethod.POST) ...

  6. 图片压缩指定大小,让您的图片高效而优美

    在现代社会中,图片是我们不可或缺的一部分,在各行业中都有着非常重要的作用.但是,大尺寸的图片不仅会占用过多的存储空间,还会导致网页或应用程序的加载速度变慢.因此,将图片压缩到指定大小是一个必要的步骤. ...

  7. 如何快速图片压缩指定大小?图片压缩到200k以内的方法

    图片压缩到200k以内的介绍 在现代社交媒体和网页设计中,高质量的图片是必不可少的.但是,大型图像文件可能会导致页面加载时间过长,从而影响用户体验.这时就需要使用图片压缩技术来将图片文件大小减小到合理 ...

  8. 【python】裁剪图片为指定大小,按位置截取,cv2(批量制作主图)

    京东电商的主图需要800*800和624*800两种不同的尺寸(不同类目有所不同), 得到的素材是一份800*800的图片,手动裁剪成624*800效率太低了, python又派上用场了! 用cv2模 ...

  9. 图片压缩到200k以内怎么操作?图片压缩指定大小工具推荐

    工作中经常出现图片太大无法发送或者是上传的情况,这时候就需要将图片压缩才能上传,那么怎么把图片压缩到200K以内呢?可以使用图片压缩指定大小(https://www.yasuotu.com/image ...

最新文章

  1. jQuery Validate
  2. AJAX是一门艺术: XHR篇
  3. oracle 数据立方_大数据之数据仓库分层
  4. cockpit代替secureCRT
  5. SAP BTP 平台 Cloud Application Programming 编程模型概述
  6. centos静默安装oracle关于报错UnsatisfiedLinkError exception loading native library:njni10
  7. python自定义函数参数_python自定义函数的参数之四种表现形式
  8. java filterinputstream_java.io.FilterInputStream.close()
  9. java nio copy_使用NIO快速复制Java文件
  10. 高精度测量让交会对接更“温柔”
  11. 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1-2-3-3-4-4-5 处理后为 1-2-5(非常简单明了)
  12. 计算机快捷方式app卸载,一打开电脑就自动出现的快捷方式软件删不掉怎么办
  13. 信息论——信源信息量和信息熵
  14. 【密码学 | CTF】培根密码
  15. 2021-01-13事件对象
  16. 江苏省基础云计算机服务平台,江苏省一师一优课、一课一名师活动-江苏省基础教育云计算服务平台.doc...
  17. excel的主要功能_免费的Excel共享编辑办公软件,表格权限-套打模板样样有,附下载...
  18. 我的世界服务器修改皮肤指令,我的世界怎么拿指令来改皮肤的 | 手游网游页游攻略大全...
  19. 泊松分布,指数分布介绍以及其联系与区别
  20. 滴滴Logi-KafkaManage安装手册

热门文章

  1. 工作179:接口对接
  2. 前端学习(2536) request和response
  3. 前端学习(1932)vue之电商管理系统电商系统之tree树形控件
  4. 前端学习(1737):css3实现loading效果
  5. 前端学习(553):node实现登录和注册第一部分代码
  6. spring学习(11):使用配置类
  7. 第十五期:一个用户至少“值”100美元,美国最“贵”数据法案CCPA明年初实行!
  8. 玩转oracle 11g(27):ora-12154和客户端版本低
  9. apache mysql python win10_Win10 MySQL-python
  10. java json 修改字段_JSON文件-Java:编辑/更新字段值