C++将CBitmap类中的图像保存到文件的方法
本文实例讲述了C++将CBitmap类中的图像保存到文件的方法。分享给大家供大家参考。具体实现方法如下:
使用下面的代码,可以把CBitmap类中的图像保存到图像文件中。支持格式:BMP、JPG、GIF和PNG。
void SaveBitmap(CString strFilePath, CBitmap Bitmap) { if ( Bitmap.m_hObject ) { CImage imgTemp; // CImage是MFC中的类。 imgTemp.Attach(Bitmap.operator HBITMAP()); imgTemp.Save(strFilePath); } }
注意文件路径名strFilePath必须包含后缀,即BMP、JPG、GIF或PNG中的一种。
希望本文所述对大家的C++程序设计有所帮助。
相关推荐
-
C++中基本的输入输出函数使用指南
在C语言中是用printf函数进行输出,用scanf函数进行输入的.C++保留了C语言的这一用法. scanf函数一般格式是: scanf(格式控制, 输出表列) printf函数的一般格式是 scanf(格式控制, 输出表列) scanf(格式控制, 输出表列) [例]用scanf和printf函数进行输入和输出. #include <iostream> using namespace std; int main( ) { int a; float b; char c; scanf(
-
C++实现位图排序实例
在<编程珠玑>一书里提到了一种算法导论里没有提到过的位图排序方法,这种排序方法是通过牺牲空间效率来追求时间效率(线性时间)以达到时间-空间折中与双赢的目的.本文以实例形式简单讲一下位图排序思想. 一.问题描述 1.输入:一个至多包含1千万个非负整数的文件 2.特征:①每个数都是小于10000000的非负整数:②没有重复的数字:③数据之间不存在关联关系. 3.约束:①最多1MB的内存空间可用:②磁盘空间充足:③运行时间最多几分钟,最好是线性时间. 4.输出:按升序排列的整数序
-
C++输出斐波那契数列的两种实现方法
定义: 斐波那契数列指的是这样一个数列:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...这个数列从第三项开始,每一项都等于前两项之和. 以输出斐波那契数列的前20项为例: 方法一:比较标准的做法,是借助第三个变量实现的. 复制代码 代码如下: #include<iostream> using namespace std;int main(){ int f1=0,f2=1,t,n=1; cout<<"数列第1个
-
C++输入一个字符串,把其中的字符按照逆序输出的两种方法解析
用字符数组方法:基本思路是,先判断字符的结束标志'\0',然后从该位置向前输出.实现代码: 复制代码 代码如下: #include<iostream>using namespace std;int main(){ char a[50]; cout<<"please input a string:"; cin>>a; int i=0,k=0; while(i<50){ if(a[i]=='\0'){ k=i;
-
C++实现二维图形的傅里叶变换
本文实例讲述了C++实现二维图形的傅里叶变换的方法.有一定的借鉴价值.分享给大家供大家参考. 具体代码如下: // Fourier.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "stdio.h" #include "math.h" #include <cv.h> #include <highg
-
C++输出上三角/下三角/菱形/杨辉三角形(实现代码)
1.输出上三角形第一行1个星,第二行3个星,第三行5个星,第四行7个星,第五行9个星.分析:三角形的形状由输出的空白和星组成,通过分析每一行输出几个空格,几个星,就可完成输出三角形的工作. 复制代码 代码如下: #include<iostream>using namespace std;int main(){ int i=0,j=0; for(i=1;i<=5;i++){//控制行数 for(j=1;j<=(5-i);j++){ cout<<&quo
-
C++实现图形界面时钟表盘代码
本文实例讲述了C++实现图形界面时钟表盘代码,分享给大家供大家参考. 具体实现代码如下: 复制代码 代码如下: //POINT的数组可以这么用 POINT pt[]={ 0, 450, 225,390, 390,225, 450,0, 390,-225, 225,-390, 0,-450, -225,-390, -390,-2
-
C++ 设置透明背景图片
背景: 有两个图片,一个是目标背景图片, 一个是带有自身背景色彩的彩色图片 先将这彩色图片绘制到目标背景图片中, 这一步通过BITBLT就可实现. 但实现后的效果是: 目标图片上,绘制上去的彩色图片带有其本身的背景. 问题就来了, 我们想将彩色图片本身的背景去掉,应该如何解决? 解决方法: 使用API函数:TransparentBlt 此函数将原DC中的图片绘制到目标DC中,并同时设置原图形在目标图形上的透明色. BOOL TransparentBlt( HDC hdcDest, //
-
CISBitmap派生的VC++位图透明类实例
本文所述为一个由CISBitmap派生的VC++位图透明类,可以方便实现BMP图像的透明处理,主要包含两个文件,使用时主需要将其引入到你的C++工程中即可,具体的类代码如下: CISBitmap.cpp文件代码如下: #include <stdafx.h> #include "CISBitmap.h" #ifdef _DEBUG #undef THIS_FILE static char THIS_FILE[]=__FILE__; #define new DEBUG_NEW
-
c++输出斐波那契数列示例分享
复制代码 代码如下: #include "stdio.h" int Feibo(int Num){if(Num == 1 || Num == 2){return 1;}else{return Feibo(Num - 1) + Feibo(Num - 2);}} void main(){int NumIn,i;scanf("%d", &NumIn);for(i=1;i<NumIn;i++){printf("%d ",Feibo(i))
-
C++简单输出钻石菱形图效果
本文实例讲述了C++简单输出钻石菱形图效果的方法.分享给大家供大家参考,具体如下: /* * 作 者: 刘同宾 * 完成日期:2012 年 11 月 25 日 * 版 本 号:v1.0 * 输入描述: * 问题描述: 设计和输出钻石图形. * 程序输出: * 问题分析:略 * 算法设计:略 */ #include<iostream> using namespace std; int main() { char a[][5]={{' ',' ','*'},{' ','*',' ','*'},{'
随机推荐
- javascript 设计模式之单体模式 面向对象学习基础
- javascript 判断两个日期之差的示例代码
- Oracle数据库的启动与关闭方法
- UpdatePanel和jQuery不兼容 局部刷新jquery失效
- js实现简单的选项卡效果
- asp.net中使用自定义控件的方式实现一个分页控件的代码
- PHP基于GD库实现的生成图片缩略图函数示例
- MYSQL使用.frm恢复数据表结构的实现方法
- JavaScript中的普通函数与构造函数比较
- 使用CSS不用程序实现文字自动截断 用省略号代替
- CSS hack实现 CSS完美兼容IE6/IE7/FF的通用方法
- 超赞的随机颜色搭配工具
- java显示当前美国洛杉矶时间
- 使用JAVA判断凸多边形的示例代码
- 详解Java注解的实现与使用方法
- 基于JavaScript实现的顺序查找算法示例
- js实现拖拽 闭包函数详细介绍
- Vue.directive 自定义指令的问题小结
- 浅谈Android ANR在线监控原理
- Android WebView实现截长图功能