CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  图形处理/算法

求对jpg文件进行图片缩小的简单算法

楼主Sincee(小宇)2006-03-06 16:57:47 在 VC/MFC / 图形处理/算法 提问

本人在做视频监控网站时,需要获取监控点的监控截图。由于截图的大小不能更改(我们是做二次开发),所以急需对截图jpg文件进行缩小,希望有做过这方面的高手提供一个能够对Jpg文件进行缩小(一般是从360*290到180*145),并保存到新的路径的简单可执行代码或算法。时间比较急,小弟第一次发帖,请多多照顾! 问题点数:100、回复次数:7Top

1 楼Sincee(小宇)回复于 2006-03-06 17:06:55 得分 0

补充一下,因为要进行不间断的缩小截图,所以photoshop或Firework之类的工具就派不上用场了,当然用Firework运行Script脚本还是能做到不间断缩小截图的,但总不至于要在所有监控点装Firework吧,所以还是运行个小程序比较方便...Top

2 楼wangk(倒之)回复于 2006-03-06 17:11:29 得分 100

GDI+  
  VOID   Example_GetThumbnail(HDC   hdc)  
  {  
        Graphics   graphics(hdc);  
   
        //   Create   an   image   and   a   thumbnail   of   the   image.  
        Image   image(L"Crayons.jpg");  
        Image*   pThumbnail   =   image.GetThumbnailImage(180,   145,   NULL,   NULL);  
   
        //   Draw   the   original   and   the   thumbnail   images.  
        graphics.DrawImage(&image,   10,   10,   image.GetWidth(),   image.GetHeight());  
        graphics.DrawImage(  
              pThumbnail,    
              150,    
              10,    
              pThumbnail->GetWidth(),    
              pThumbnail->GetHeight());  
   
        delete   pThumbnail;  
   
  }  
  Top

3 楼Sincee(小宇)回复于 2006-03-06 17:56:27 得分 0

wangk,你好,很感谢你这么快就回复我,不过因为我主要是做WEB开发的,对Windows编程不太懂,请问如何让这段代码运行起来,是在VC下还是C++.NET下,需要包含什么文件或导入什么命名空间,请简单的指导一下小弟,不胜感激!Top

4 楼wangk(倒之)回复于 2006-03-06 22:08:23 得分 0

include   <gdiplus.h>  
  #pragma   comment(lib,"gdiplus.lib")  
   
  就可以,VC、C++.NET都可以.详细参考MSDNTop

5 楼Sincee(小宇)回复于 2006-03-06 22:44:10 得分 0

好象因为图象载入位置在   Image   image(L"Crayons.jpg")方法中出现一个读错误冲突,请问这个路径是相对什么?在吗,不在就继续查阅文档...Top

6 楼Sincee(小宇)回复于 2006-03-07 01:20:05 得分 0

功夫不负苦心人,终于搞定了,在此先谢谢wangk。  
          说明一下我的解决过程,希望对大家有所帮助:  
          首先参考了网上的一些关于VC.NET的GDI+图像处理的文档(不好意思,这方面我绝对是新手),如:  
  http://www.yesky.com/SoftChannel/72342380468174848/20040301/1772782.shtml  
  ADding     基于VC.NET的GDI+图像处理  
   
  http://www.yesky.com/SoftChannel/72348977504190464/20040314/1776892.shtml  
  基于Visual   C++.NET的GDI+开发教程     图象处理部分  
   
          然后根据wangk朋友的代码(后来在MSDN中找到^_^)构造可执行代码,因为对VB比较熟悉,最后代码是用VB.NET实现的:  
  Private   Sub   Button1_Click(ByVal   sender   As   System.Object,   ByVal   e   As   System.EventArgs)   Handles   Button1.Click  
                  Dim   myImage   As   Image   =   Image.FromFile("C:\images.jpg")  
                  Dim   newImage   As   Image  
                  Dim   g   As   Graphics   =   Me.CreateGraphics  
                  Dim   myCallback   As   Image.GetThumbnailImageAbort  
                  newImage   =   myImage.GetThumbnailImage(180,   145,   myCallback,   IntPtr.Zero)  
                  newImage.Save("C:\images22.jpg",   System.Drawing.Imaging.ImageFormat.Jpeg)  
                  newImage.Dispose()  
          End   Sub  
   
          注意一下,调用image.save()方法时,imageformat格式一定要设置成jpeg,否则当初因为要缩小文件大小的初衷可能就没办法实现罗!!!  
   
          再次感谢wangk和CSDN,今天看了无数的文档,终于有所收获,以后继续和大家共进步!Top

7 楼Sincee(小宇)回复于 2006-03-07 01:31:27 得分 0

http://www.myfaq.com.cn/A/2004-03-04/136640.html  
  基于VC.NET的GDI+编程之CImageTop

相关问题

  • 谁有JPG文件格式的加压和解压的算法
  • 求JPG文件的解压缩和压缩算法!!!!!!!!11
  • 图像缩小的算法
  • 文件搜索算法
  • 文件分割算法
  • 压缩文件算法
  • 500分求压缩jpg文件的算法代码,最好是vb的,免费的dll也行
  • 如何获取JPG和FLASH文件的维数(宽和高),需详细的算法或源代码
  • 提问:bmp缩小的算法
  • 图像放大缩小算法

关键词

  • .net
  • c++
  • gdi+
  • 文件
  • 截图
  • 代码
  • 文档
  • vc
  • pthumbnail
  • wangk

得分解答快速导航

  • 帖主:Sincee
  • wangk

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo