当前位置: 首页 > news >正文

icon格式软解码

说是icon格式,实际上只是将 XOR 图直接画在窗口上,搞清格式就不,有点一相不通为什么要把数据倒过来存储。

图标(ico,cur)文件的结构解析_ico文件格式解析-CSDN博客

void IconToBuf(HDC hdc, int x0, int y0, LPBITMAPINFOHEADER bi) {WORD *buf;//信息头之后是调色板,数量与biBitCount有关LPRGBQUAD palettePtr = (LPRGBQUAD) ((DWORD) bi + bi->biSize);//调色板之后是XOR位图的数据PBYTE xordata;//XOR位图的数据PWORD anddata;int bit, mod;int count = ((bi->biHeight) * (bi->biWidth) / 4);//数据顺序为: 从左到右,从下向上。而液晶屏加载显示顺序为:从左到右,从上向下。需要重新定位!buf =hdc->vram+ (x0 + (y0 + bi->biHeight / 2 - 1) * hdc->nWidth) * VBE_BPP;xordata = (PBYTE) ((DWORD) palettePtr+ (sizeof(RGBQUAD) * (1 << bi->biBitCount)));//KPrintf("icon %d,%d,%x!\n", bi->biHeight, bi->biWidth, xordata);for (int i = 0; i < bi->biHeight / 2; i++) {for (bit = 0; bit < bi->biWidth; bit++) {mod = ((*xordata) >> (((bit + 1) % 2) << 2)) & 0xf;*buf = rgb(palettePtr[mod].rgbRed, palettePtr[mod].rgbGreen,palettePtr[mod].rgbBlue);buf++;xordata += (bit % 2);}buf -= (bit + hdc->nWidth);}}

相关文章:

  • 使用Homebrew搭建java环境
  • 基于PyTorch深度学习实战入门系列-(2)Numpy基础上
  • 定时执行专家V7.1 多国语言版本日文版发布 - タスク自動実行ツールV7.1 日本語版リリース
  • 通过iframe下载文件,怎么判断文件是否下载成功?
  • Linux minfo命令教程:详解MS-DOS文件系统参数查看命令(附实例详解和注意事项)
  • 阿里云k8s环境下,因slb限额导致的发布事故
  • 云服务器操作系统如果不小心被删除了文件,那岂不是不能进系统了?
  • Spring Boot启动流程详解
  • Java后端 - 一面凉经 - 得物(国际电商)
  • 安装sqlserver2022最新版只能使用.\SQLEXPRESS登录数据库怎么修改成.
  • Java实战:Spring Boot整合Canal与RabbitMQ实时监听数据库变更并高效处理
  • 2023年第三届中国高校大数据挑战赛(第二场)A题思路
  • EVE-NG桥接虚拟网卡实现与虚拟机通讯
  • RESTful接口规范参考
  • vue element plus Avatar 头像
  • python3.6+scrapy+mysql 爬虫实战
  • 「前端」从UglifyJSPlugin强制开启css压缩探究webpack插件运行机制
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • Eureka 2.0 开源流产,真的对你影响很大吗?
  • HTML-表单
  • iOS 颜色设置看我就够了
  • js面向对象
  • miaov-React 最佳入门
  • MySQL几个简单SQL的优化
  • PHP那些事儿
  • Python爬虫--- 1.3 BS4库的解析器
  • Storybook 5.0正式发布:有史以来变化最大的版本\n
  • Vue.js源码(2):初探List Rendering
  • vue学习系列(二)vue-cli
  • 对话 CTO〡听神策数据 CTO 曹犟描绘数据分析行业的无限可能
  • 规范化安全开发 KOA 手脚架
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 设计模式走一遍---观察者模式
  • 我与Jetbrains的这些年
  • 小程序开发中的那些坑
  • 一天一个设计模式之JS实现——适配器模式
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • 湖北分布式智能数据采集方法有哪些?
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​ ​Redis(五)主从复制:主从模式介绍、配置、拓扑(一主一从结构、一主多从结构、树形主从结构)、原理(复制过程、​​​​​​​数据同步psync)、总结
  • ​queue --- 一个同步的队列类​
  • ​ssh-keyscan命令--Linux命令应用大词典729个命令解读
  • #我与Java虚拟机的故事#连载11: JVM学习之路
  • (1)(1.13) SiK无线电高级配置(六)
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (第61天)多租户架构(CDB/PDB)
  • (分布式缓存)Redis哨兵
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (剑指Offer)面试题41:和为s的连续正数序列
  • (南京观海微电子)——I3C协议介绍
  • (译)2019年前端性能优化清单 — 下篇
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载