系列文章目录

C++实现爬虫!
C++宽窄字符转化与输出!
C++文件读写(最全方法)
C++实现窗口截图

文章目录

  • 系列文章目录
  • 前言
  • 一、主要流程
  • 二、代码

前言

C++如果本身想要实现图片格式的转化,是比较困难的

但在VS中,想要做到这一点就非常简单了,因为VS的C++开发环境中,自带ATL模板库

其中,模板库atlimage.h,有很多实用的方法可以对图片进行操作

比如该库内就有一个Cimage类可用于实现图片格式转换,不清楚的可以查看C++实现窗口截图一文,其简单的使用到了该类以及对该类进行了简单介绍

一、主要流程

  1. 建立CImage类对象
  2. 调用Load方法加载需要进行转化的图片
  3. 调用save方法保存为想要转换的格式

是不是很简单!让我们直接上代码

二、代码

#include<string>
#include<atlimage.h>
using namespace std;
//oldPic:要转换的图片名称
//newPic:转换后保存的图片名称
bool Convert(const std::wstring& oldPic, const std::wstring& newPic)
{CImage image; //创建Cimage对象image.Load(oldPic.data()); //加载要转换的图片HRESULT hRes = image.Save(newPic.data(), Gdiplus::ImageFormatBMP); //转换为指定的格式,可指定其它格式image.ReleaseDC(); //释放DCif (hRes != S_OK) return false;return true;
}
int main() {Convert(L"1.png",L"1.bmp");
}

这里写了一个函数,相信大家应该都能看得懂,传入的两个参数分别为要进行转化的图片,以及转化后保存的图片名称

不过我这里使用的都是宽字符wstring,所以使用的时候,你必须向这样写L"",即字符串前面添加L,才代表着宽字符

函数里面的逻辑也不难,分别按三个步骤走就是了,只是调用save函数的第二个参数,可能有点繁琐,我直接将所有的格式都放在下面了,可以直接复制即可

可转换的图片格式参数:

Gdiplus::ImageFormatUndefined
Gdiplus::ImageFormatMemoryBMP
Gdiplus::ImageFormatBMP
Gdiplus::ImageFormatEMF
Gdiplus::ImageFormatWMF
Gdiplus::ImageFormatJPEG
Gdiplus::ImageFormatPNG
Gdiplus::ImageFormatGIF
Gdiplus::ImageFormatTIFF
Gdiplus::ImageFormatEXIF
Gdiplus::ImageFormatIcon
Gdiplus::ImageFormatHEIF
Gdiplus::ImageFormatWEBP

可根据后缀名确定要转换的格式

C++实现图片格式转换相关推荐

  1. ASP.NET2.0图片格式转换【月儿原创】

    ASP.NET2.0图片格式转换 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/           时间:2007.4.20 说明:本文实现了 图片格式随意转换( ...

  2. Winform中实现图片格式转换(附代码下载)

    场景 选择一张照片并选择保存位置和要转换的图片格式实现图片格式转换. 项目运行效果 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸 ...

  3. python gif_python 将png图片格式转换生成gif动画

    先看知乎上面的一个连接 用Python写过哪些[脑洞大开]的小工具? 这个哥们通过爬气象网站的气象雷达图,生成一个gif的动态图.非常有趣且很实用,那咱也实现下. 我们先实现一个从GIF提取帧的代码 ...

  4. 图片格式转换 - .webp 转格式为 .png / .jpg

    图片格式转换 - .webp 转格式为 .png / .jpg 很多时候,网页上素材图片格式出现了.webp格式的,PS无法正常打开查看或使用,所以需要转换一下其他格式(如.png / .jpg 等等 ...

  5. php怎么将网页变成图片格式,php如何实现图片格式转换

    [摘要] PHP即"超文本预处理器",是一种通用开源脚本语言.PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言.PHP独特的语法混合了C.Java.Perl以及 ...

  6. Python图片格式转换,图片压缩

    PyQt 图片格式转换,图片压缩 界面展示 # -*- coding: utf-8 -*- import osfrom PIL import Image from PIL.ImageFile impo ...

  7. python图片保存jpg、show变成bmp_Python 图片格式转换

    图片格式转换可以利用各种软件 今天介绍一下如何使用 Python 实现各种图片格式的转换 1. SVG 转其他格式 读取 SVG 格式文件,需要安装 svglib 库 pip install svgl ...

  8. bmp,jpg,png,tif,wmf,emf与eps图片格式转换

    wmf/emf是两种Microsoft Windows的图形文件格式.它是一个矢量图格式,但是也允许包含位图.本质上,一个WMF文件保存一系列可以用来重建图片的Windows GDI命令.在某种程度上 ...

  9. 如何将JPG转换为PNG?两种图片格式转换的方法交给你

    在平时的工作生活当中,大家都会使用到各种各样的图片,其中jpg格式与png格式都是大家平时比较常用的图片格式,但是在使用图片时,可能会遇到只能上传其中某种格式的情况,那么这时候就需要将图片转换成相应的 ...

  10. 设置图片格式为php,php实现图片格式转换

    php实现图片格式转换的方法:首先新建一个php文件,并在测试目录放两张图片:然后通过pathinfo函数来判断图片的格式:最后通过函数imagejpeg将图片源转换成jpg格式图片并保存即可. 推荐 ...

最新文章

  1. 异步fifo_异步FIFO设计
  2. 单例模式的八种写法比较
  3. linux 磁盘簇,linux系统exec簇工作原理
  4. 【比赛】智源-知乎联合发布大规模用户邀请回答数据集,同步开启10万元竞赛...
  5. 解决canvas合成图片大小错误、模糊以及跨域的问题
  6. uipath 收邮件_UIpath 循环读取IMAP邮件,并保存附件
  7. 高响应比优先调度算法的模拟(非抢占式C++)
  8. 网站换服务器会降权,网站更换IP地址,对SEO有什么影响?
  9. idea中lombok插件安装
  10. mac MAMP pro安装和破解
  11. ecshop与shopex哪个更好?
  12. linux非连续内存,(转)linux高端内存管理之非连续内存区(分配和释放)
  13. Android UI控件大全
  14. CF 1467 B. Hills And Valleys
  15. 海洋环流与海浪数值模式
  16. Python图片批量自动抠图去背景
  17. 做百度竞价推广的好处与坏处?
  18. Apollo学习笔记(22)Dijkstra算法
  19. vue 请求后台数据
  20. 浅述单目3D目标检测

热门文章

  1. Linux开机自动启动python脚本程序,或 Jetson nano或Jetson Xavier NX开机自动启动python脚本程序
  2. 2.3 Visio画虚线后插入word或PPT变为实线
  3. Word2016如何插入公式?Word2016插入公式方法
  4. Java 嵌入 SPL 轻松实现 Excel 文件合并
  5. led伏安特性实验误差分析_大学物理实验伏安特性曲线的误差分析以及小结要怎么写,谢谢^ω^...
  6. 职业经验分享之我是如何转行成为数据分析师的
  7. 怎么做扁平化ps图标长投影效果
  8. 顺序图、实线虚线、实心三角箭头、枝状箭头
  9. 英特尔cpu发布时间表_英特尔公司宣布第九代桌面CPU发售时间:i9 9900K将于10月19日正式发售!...
  10. 百词斩不复习_不背单词,墨墨背单词和百词斩哪个好啊?