CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  GAME,图形处理/多媒体

如何获得图片(JPG文件)的真实尺寸?

楼主lxjssy()2006-05-02 14:01:14 在 Delphi / GAME,图形处理/多媒体 提问

有时候需要打印图片,别人提供的JPG图片,同样用200的分辨率扫描的,用PHTOSHOP打开,看图片尺寸时,分辨率有的是200,并且尺寸是对的,有的却变成了72的分辨率,图片尺寸变成了几十厘米乘几十厘米,大了很多,这样打印的时候,就很难知道真实的图片尺寸,用DELPHI编程来打印,就很难处理,不知有什么解决方法? 问题点数:80、回复次数:8Top

1 楼yerly(万里)回复于 2006-05-02 16:13:45 得分 0

MyJPEG   :=   TJPEGimage.Create;  
  try  
  MyJPEG.LoadFromFile(OpenPictureDialog1.FileName);  
  showmessage(inttostr(MyJPEG.Height)   +   '   '   +inttostr(MyJPEG.Width));  
  finally  
  MyJPEG.free;  
  end;Top

2 楼cybercake(数字蛋糕)回复于 2006-05-02 18:24:51 得分 0

假如文件中的Dpi信息不对,那么理论上是没有办法知道文件的真实尺寸的。  
   
  作为折中的办法,只好让用户来决定应该把图片打成多大。Top

3 楼zzwu(未名)回复于 2006-05-05 20:49:37 得分 0

"有的是200,并且尺寸是对的,有的却变成了72的分辨率"   什么意思啊?  
   
  是同一个Jpg吗?  
      如果是,那就不可思义了!  
   
  如国是不同的jpg,  
      那只可能是扫描仪器设置不同(否则也不可思义).  
  Top

4 楼herryjin(herry)回复于 2006-05-06 01:53:01 得分 0

Uses  
    GDIPAPI,GDIPOBJ  
   
  var  
      GPImage             :   TGPImage;  
      JPGWidth,JPGHeight   :   Integer;  
  begin  
      GpImage     :=   TGPImage.Create('\test.jpg');  
      JPGWidth   :=   GpImage.GetWidth;  
      JPGHeight:=   GPImage.GetHeight;  
      GPImage.Free;    
  end;  
  Top

5 楼yzbaby(我是快乐的)回复于 2006-07-07 22:01:42 得分 0

这个问题我也正在遇到  
  楼主的意思应该是jpg文件来源于不同的用户  
  现在需要统一处理。  
  我现在想的办法是,先统一处理成比如200dpi的jpg.  
  然后打印。  
  Top

6 楼SonicX(SonicX)回复于 2006-07-08 23:14:58 得分 0

有个误区,图形的像素尺寸和DPI没有任何联系只和打印尺寸发生关系  
  PS里有误导嫌疑,就是修改DPI会自动修改像素尺寸  
  LZ可以试验一下,修改DPI,但不改变像素尺寸,图形大小是不会发生变化的,但打印尺寸就发生变化了,印刷行业为保证打印质量一般推荐300点DPI,WINDOWS桌面默认是72点,DELPHI也是72点Top

7 楼zhou13()回复于 2006-07-12 18:11:55 得分 0

"有的是200,并且尺寸是对的,有的却变成了72的分辨率"    
   
  你都知道200是对的了,不就好了?  
   
   
  实在不行  
  Uses  
    GDIPAPI,GDIPOBJ  
   
  var  
      GPImage             :   TGPImage;  
      JPGWidth,JPGHeight   :   Integer;  
  begin  
      GpImage     :=   TGPImage.Create('\test.jpg');  
      JPGWidth   :=   GpImage.GetWidth;  
      JPGHeight:=   GPImage.GetHeight;  
      GPImage.Free;    
  end;  
   
  这各写法没错   ,可以使用阿,获得的就是真实的,不会有问题Top

8 楼Blakhawk(黑鹰)回复于 2006-07-13 00:53:00 得分 0

楼上的应当是可以的啊。Top

相关问题

关键词

得分解答快速导航

  • 帖主:lxjssy

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

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