CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  图形处理/算法

裁减技术讨论,希望高手进入,来者有分数!

楼主zhaomaster(Zeida)2005-06-03 10:43:05 在 VC/MFC / 图形处理/算法 提问

假设一幅图像大于屏幕区域1024x768,实际有可能是2000*1800的BMP图像.  
  如果采用截屏,通过CDC画出屏幕区域(即在CDC上画BMP原始象素),通过api截取指定区域,假设截取的CRect(100,100,500,700).通过胶片打印机,会将图放大2倍,造成象素失真.此方法不可取.  
   
  如果采用一种方法将客户区域CRclient()与原始图像区域CRoriginal映射,可得到原始图像对应的裁减区域.保存裁减区域所对应的象素.即可得到裁减图像.  
  有没有这方面的资料?对裁减后的图像,怎样进行边缘处理?欢迎讨论! 问题点数:0、回复次数:4Top

1 楼happy__888([顾问团]寻开心 www.e-jjj.com)回复于 2005-06-03 13:25:50 得分 0

问题怪怪的  
   
  你可以建立一个memdc把大图放在里面  
  然后把它拉伸到一个小窗口上显示,在这个小窗口上选择区域,然后映射会memdc当中得到实际对应的位图象素区域,在这里截取打印就可以了。Top

2 楼wqs6(竹山)回复于 2005-06-04 19:35:09 得分 0

做一个映射,在显示的时候采用缩小比例,输出的时候恢复正常Top

3 楼Summer006(脸都丢尽了!闭关修练。。。。)回复于 2005-06-05 08:45:58 得分 0

同意楼上的。。  
   
  裁剪后边缘处理??什么意思?Top

4 楼icansaymyabc(学习与进步)回复于 2005-06-05 12:20:14 得分 0

你的问题出在打印环节上,而不在剪裁环节上,剪裁采用截屏就可以了。  
   
  原始图像为何能正确打印?   因为它包含了分辨率信息,也就是   像素/每英寸的信息。  
  你产生的新图像   分辨率是缺省的   72ppi。  
  假如原始图像分辨率是   144ppi的话,用72ppi去打印尺寸就大了一倍。  
  假如原始图像分辨率是   200ppi的话,用72ppi去打印尺寸就是2.7倍。  
   
  所以有两种解决方案。  
  1   是根据新旧分辨率的比值缩放新图像,使得其像素数和新分辨率和尺寸符合。这样会丢失图像细节  
  2   设置新图象的分辨率等于旧分辨率。这个我从未做过,不知道怎么做。我猜想很简单,但是要花精力去找到方法。  
  Top

相关问题

  • 简单的问题,大家讨论,分数不限
  • 散分 大家讨论CSDN分数规则
  • 我看到大家都在讨论分数的问题,我如何看到自己的分数呢?
  • 分数来之不易啊!一星了,散点分!另外,让大家讨论讨论一个技术问题.......
  • 讨论!散分!(数据库集群与热备性能的比较)
  • ****欢迎讨论,在线等候分数不够可以分次给****
  • 请你进入→高程考试讨论
  • 重要问题,请进入讨论!
  • 重要问题,请进入讨论!
  • 分数~~分数!

关键词

  • 图像
  • 区域
  • 打印
  • 裁减
  • ppi
  • 分辨率
  • 象素
  • 原始
  • 截取
  • 尺寸

得分解答快速导航

  • 帖主:zhaomaster

相关链接

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

广告也精彩

反馈

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