C语言 BMP24位变单色,怎么将24位色BMP图片改为单色或16色?(2)

当前位置:我的异常网» VC/MFC » 怎么将24位色BMP图片改为单色或16色?

怎么将24位色BMP图片改为单色或16色?(2)

www.myexceptions.net  网友分享于:2013-01-10  浏览:432次

GetClientRect(hWnd,&rc);

Width           =       rc.right-rc.left;

Height       =       rc.bottom-rc.top;

}

hDC                   =       GetDC(hWnd);             //获取指定的DC

hMemDC       =       CreateCompatibleDC(hDC);

hBitmap=       CreateCompatibleBitmap(hDC,       Width,       Height);

hTmpBmp=       CreateCompatibleBitmap(hDC,       8,       8);

pBmInfoMem       =       (LPBITMAPINFO)GlobalAlloc(GHND,       sizeof(BITMAPINFO)+256*sizeof(RGBQUAD));

pBmInfo       =       (LPBITMAPINFO)GlobalLock(pBmInfoMem);

SelectObject(hMemDC,       hBitmap);

BitBlt(hMemDC,0,0,Width,Height,hDC,0,0,SRCCOPY);

SelectObject(hMemDC,       hTmpBmp);

ZeroMemory(pBmInfo,       sizeof(BITMAPINFO));

pBmInfo-> bmiHeader.biSize       =       (DWORD)sizeof(BITMAPINFOHEADER);

pBmInfo-> bmiHeader.biWidth                           =       Width;

pBmInfo-> bmiHeader.biHeight                           =       Height;

pBmInfo-> bmiHeader.biPlanes                           =       1;

pBmInfo-> bmiHeader.biBitCount                   =       (WORD)GetDeviceCaps(hDC,       BITSPIXEL);

pBmInfo-> bmiHeader.biCompression       =       BI_RGB;

//pBmInfo-> bmiHeader.biCompression       =   BI_RLE8;

GetDIBits(hDC,       hBitmap,       0,Height,       NULL,       pBmInfo,       DIB_RGB_COLORS);

文章评论

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/489490.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

cat命令详解_需要!Linux常用监视和故障排查命令详解

作者:老油条IT记公众号:老油条IT记#命令预览1.top2.ps3.nice4.kill5.iostat6.mpstat7.vmstat8.df9.du10.netstat11.ss#首先我们先来了解一下什么是进程#进程:是Linux用来表示正在运行的程序的一种抽象概念,Linux系统上所有运行的东…

C语言二维数组找出交集,【leetcode C语言实现】剑指 Offer 04. 二维数组中的查找...

题目描述在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。示例:现有矩阵 matrix 如下&#xf…

知识图谱从哪里来:实体关系抽取的现状与未来

来源:知乎(zibuyu9)作者:韩旭、高天宇、刘知远最近几年深度学习引发的人工智能浪潮席卷全球,在互联网普及带来的海量数据资源和摩尔定律支配下飞速提升的算力资源双重加持下,深度学习深入影响了自然语言处理…

线条边框简笔画图片大全_超治愈萌系手帐素材大全 美食旅游花草人物花边都备齐了...

现代人每天都生活在一个充满焦灼感的空气中,成年人的世界里,每个人都不容易。不论是生活还是工作,都充满了各种挫折。很少有人能一帆风顺,为学习、为工作、为家庭、为感情、我们总会在坎坎坷坷中成长,难免会觉得焦虑。…

红米android版本,微信红米低版本下载

微信红米低版本是适用于红米手机的低版本微信软件,此版本为7.0.0版,安装包不到一百兆,该有的功能也都挺齐全,很多用户对于微信新版本的内存占用不堪重负,那么这个历史低版本就很适合你,红米手机也能轻松兼容…

python模块导入_Python模块及其导入

一、模块 1、模块的定义: 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少, 很多编程语言都采用这种组织代码的方式。在Python中,一个.py文件…

《2018-2019世界智能手机AI智商测试报告》发布会将在京举办

《2018-2019世界手机AI智商测试报告》发布会将于2019年11月21日在北京举行,本次发布会由中国科学院虚拟经济与数据科学研究中心、中国科学院大数据挖掘与知识管理重点实验室和天府大数据国际战略与技术研究院联合主办。智能手机作为人们与外界即时连接的终端设备&am…

软件需求分析文档模板_小议管理软件需求分析

从事管理软件设计,一般都是从用户需求分析开始。从事软件工作的,大概谁都知道需求分析的重要性,可能大部分人都吃过需求分析不充分的亏。兵法云,“谋定而后动”。对一个项目而言,需求分析应该是“谋”的一部分&#xf…

python日期格式转换_python中有关时间日期格式转换问题

每次遇到pandas的dataframe某列日期格式问题总会哉坑,下面记录一下常用时间日期函数.... 1、字符串转化为日期 str—>date import datetime date_str 2006-01-03 date_ datetime.datetime.strptime(date_str,%Y-&m-%d) 这是单个字符串的转化,其…

38页PPT深度解析:半导体设备产业链全景图

来源:平安证券要点摘要:1、我国半导体设备市场空间大,增长动力强劲。半导体设备主要用于半导体制造和封测流程,分为晶圆加工设备(核心为光刻机、刻蚀机、薄膜沉积设备)、封装设备和检测设备。2018年全球半导…

android actionbar 背景,Android应用开发之定制页面背景及Actionbar overflow menu的背景色...

本文将带你了解Android应用开发之定制页面背景及Actionbar overflow menu的背景色,希望本文对大家学Android有所帮助定义theme和style, 注意是actionOverflowMenuStyle 和 android:windowBackground.(实测5.1.1和7.1.1)style/CustomActionOverflowMenuStyleandroid:…

python周天为一周的开始_周天-和周天相关的内容-阿里云开发者社区

商朝商高勾三股四玄五勾股定理昔者周公问于商高曰:“窃闻乎大夫善数也,请问昔者包牺立周天历度——夫天可不阶而升,地不可得尺寸而度,请问数安从出?”商高曰:“数之法出于圆方,圆出于方&#xf…

XGBoost参数调优完全指南(附Python代码)

XGBoost参数调优完全指南(附Python代码):http://www.2cto.com/kf/201607/528771.html https://www.zhihu.com/question/41354392 【以下转自知乎】 https://www.zhihu.com/question/45487317 为什么xgboost/gbdt在调参时为什么树的深度很少就…

科技基建,自主创芯——详解全球半导体制造行业格局

来源:芯潮今天推荐一份报告,详解全球半导体制造行业格局,本报告从以下几个角度进行分析:一、全球半导体制造市场规模及竞争格局全球半导体制造市场及行业格局中国半导体制造行业情况二、半导体制造制程技术分析28纳米是生命周期相…

python按行读取文件取消空白行_python去掉空白行的多种实现代码

测试代码 jb51.txt 1:www.jb51.net 2:www.jb51.net 3:www.jb51.net 4:www.jb51.net 5:www.jb51.net 6:www.jb51.net 7:www.jb51.net 8:www.jb51.net 9:www.jb51.net 10:www.jb51.net 11:www.jb51.net 12:www.jb51.net 13:www.jb51.net 14:www.jb51.net 15:www.jb51.net 16:www.…

android 大视图风格通知栏,Android中使用Notification实现宽视图通知栏(Notification示例二)...

Notification是在你的应用常规界面以外展现的消息。当app让系统发送一个消息的时候,消息首先以图表的形式显示在通知栏。要查看消息的详情须要进入通知抽屉(notificationdrawer)中查看。通知栏和通知抽屉html(notificationdrawer)都是系统层面控制的,你能…

python二维码生成器制作中报错为oserror_Python生成:OSError:[WinError 193]%1不是有效的Win32应用程序...

在检查了其他相关的线程之后,我不得不打开这个线程。尝试运行this repository时,我总是收到错误:Traceback (most recent call last): File "C:\Users\jjj\evrpogmrl\main.py", line 1, in from Environment import environment Fi…

计算机、数学、运筹学等领域32个重要算法

来源: 深度学习与机器视觉奥地利符号计算研究所(Research Institute for Symbolic Computation,简称RISC)的Christoph Koutschan博士在自己的页面上发布了一篇文章,提到他做了一个调查,参与者大多数是计算机…

怎么用python表白_如何正确使用Python进行表白?这是个值得思考的问题!

提到程序员, 可能每个同学都认识一个—— 爱穿格子衬衫、冲锋衣,爱宅着敲代码的程序员或者准程序员, 他们仿佛永远在bug和debug的路上, 还总爱自黑自己是“单身狗”,如何正确使用Python进行表白?这是个值得…

iOS 高阶

1.UIStoryBoard 2. segue跳转传值 3. UIColor配色 //1. 十进制配色 [UIColor colorWithRed:163.0/255.0 green:148.0/255.0 blue:128.0/255.0 alpha:1.0]; //2. 设置16进制颜色(同上) [UIColor colorWithRed:0xba/255.0 green:0x21/255.0 blue:0xd5/255.0 alpha:1.0]; 4. XML解…