• Windows Xp下BMP位图转JPEG格式


    一、基于C#的Bitmap类

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.IO;
    using System.Drawing;
    using System.Drawing.Imaging;

    namespace ConsoleBmpToJpeg
    {
    class Program
    {

    static void Main(string[] args)
    {
    string bmpFilePath = "testBmp.bmp";
    Bitmap m_bitmap
    = new Bitmap(bmpFilePath);//读取指定目录下的位图文件并构造位图对象

    string jpgFilePath = "jpegResult.jpg";
    m_bitmap.Save(jpgFilePath, ImageFormat.Jpeg);
    //保存图片文件


    //说明:
    //1.保存图片格式还有很多其它选择,比如gif,png等等
    //2.可以将转换的结果保存为文件流,也可以保存为内存流
    }
    }
    }

       说明:此方法只能基于WinXp下可以用,在WinCe下,构造位图那一语句是无法正常运行的,不知道为什么,可能是WinCe下没有提供这么高级的函数吧。最后还是用C++通过IImageFactory接口来进行的格式转换的。

    二、基于C++语言ATL支持类CImage

      用VS2005建立WinXp下的C++程序,并在建立程序的时候,选择ATL支持

    然后主文件中代码如下:

    // WinXpCppAtl.cpp : 定义控制台应用程序的入口点。
    //
    
    #include "stdafx.h"
    #include "WinXpCppAtl.h"
    #include <atlimage.h>		//Cyan:CImage类的头文件
    
    #ifdef _DEBUG
    #define new DEBUG_NEW
    #endif
    
    
    // 唯一的应用程序对象
    
    CWinApp theApp;
    
    using namespace std;
    
    int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
    {
    	int nRetCode = 0;
    
    	// 初始化 MFC 并在失败时显示错误
    	if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0))
    	{
    		// TODO: 更改错误代码以符合您的需要
    		_tprintf(_T("错误: MFC 初始化失败\n"));
    		nRetCode = 1;
    	}
    	else
    	{
    		// TODO: 在此处为应用程序的行为编写代码。
    		CImage m_Image;
    		m_Image.Load(_T("\\recvBmpData.bmp"));
    		m_Image.Save(_T("\\recvBmpData.jpg"));
    	}
    
    	return nRetCode;
    }
    
    

      注意:此方法可以进行文件操作也可以进行内存中转码操作,但是却也只能在WinXp下进行,在WinCe下无法成功。虽然WinCe下的ATL也有此CImage类,但是提供的方法比XP下有限,无法满足WinCe平台下的格式转换要求。

  • 相关阅读:
    zepto.js常用操作
    使用require.js
    iscroll.js文档
    EasyUI Resizable 可调整尺寸
    EasyUI Droppable 可放置
    EasyUI Draggable 可拖动
    EasyUI Parser 解析器
    EasyUI Easyloader 加载器
    Jquery EasyUI插件
    从MySQL随机选取数据
  • 原文地址:https://www.cnblogs.com/beer/p/1891491.html
Copyright © 2020-2023  润新知