如何获取图像象素属性(不用生成图像对象)

AFatPig 2006-08-18 12:29:35
目前获取图像象素方法如下:

Image img = new Bitmap(FFullName);
FPixelW = img.Width;
FPixelH = img.Height;

获取图像文件其他属性方法如下:

FileInfo fi = new FileInfo(FFullName);
FSize = fi.Length/1024;
FDate = fi.LastWriteTime.ToString();
FName = fi.Name;

问题:
Image img = new Bitmap(FFullName);
我需要同时处理大量图片,这样的话,用生成图像的方法生成速度太慢,是否有方法不用打开图像获取图像象素?
...全文
527 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
AFatPig 2006-08-19
  • 打赏
  • 举报
回复
补充一下,经过测试,我的机器确实不行,
我的系统 win2000server sp4

但是win2003可以,xp 没测试
AFatPig 2006-08-19
  • 打赏
  • 举报
回复
晕了,我得不行啊……
哭……

不过谢谢knight94! :)

boxigroup 2006-08-19
  • 打赏
  • 举报
回复
欢迎光监点石成金网 http://www.boxigroup.com 网站提供web开发(j2ee .net asp php javascript、c#等) c/s开发(delphi、vb、vc、pb、cb等) 数据库开发(oracle、sqlserver、db2、access、mysql、Postgresql、informix)等学习资料,希望能为你解决燃眉之急 ,请把本网站加入收藏夹,以备不时查询之需 bs+cs讨论群(9638134)
Yellow198267 2006-08-18
  • 打赏
  • 举报
回复
期待..................
cancerser 2006-08-18
  • 打赏
  • 举报
回复
好像很矛盾,不打开礼物,却想知道是什么礼物,用想的啊?

等待好答案
dlzhangln 2006-08-18
  • 打赏
  • 举报
回复
帮顶
dotnet90 2006-08-18
  • 打赏
  • 举报
回复
gz
Knight94 2006-08-18
  • 打赏
  • 举报
回复
我试了一下,没问题,不管是jpg还bmp都能获得如下三个信息。
26:分辨率 1461x855
27:水平像素 1461像素
28:垂直像素 855像素
Jon_Pilot 2006-08-18
  • 打赏
  • 举报
回复
Mark,关注中。
AFatPig 2006-08-18
  • 打赏
  • 举报
回复
to Knight94(愚翁)

老大出马,一个顶俩^_^

我可以看的到文件属性中的externsion 信息,文件属性/摘要/宽/高/水平分辨/垂直分辨都有,但是程序读到的都是空啊

老大帮帮忙,搞定另给100
thanks :)
Knight94 2006-08-18
  • 打赏
  • 举报
回复
to 应该跟文件啥没有关系吧

我文章已经说明了,不是所有的文件都有extension信息
但是只要你在操作系统查看文件属性能看到的,就能通过我给的方法获得。
AFatPig 2006-08-18
  • 打赏
  • 举报
回复
晕,我取的是jpg,我再试试
应该跟文件啥没有关系吧

我能看到的数据里没有我想要的
cancerser 2006-08-18
  • 打赏
  • 举报
回复
你说 这些啊? 是我自己写的
在本机上取的文件 bmp 与png 的结果都是这样,可能也和系统有关 自己试试吧 哈哈
AFatPig 2006-08-18
  • 打赏
  • 举报
回复
to cancerser(都是混饭吃,记得要结帖) :

不过,我没有看到

也不仔细看看Knight94(愚翁)达人给的
引用Microsoft Shell Controls and Automation(在com里)
//
using Shell32;
//
string sFile=@"c:\\test1.bmp";
ShellClass sh = new ShellClass();
Folder dir = sh.NameSpace( Path.GetDirectoryName(sFile) );
FolderItem item = dir.ParseName( Path.GetFileName( sFile ) );
string det = dir.GetDetailsOf( item, i );
//i 说明
0 :文件名 text1.bmp
1 : 大小 141KB
2 :类型 bmp文件
3 :修改时间
4 :创建时间
5 :访问时间
26:分辨率 1461x855
27:水平像素 1461像素
27:垂直像素 855像素
//要取哪个自己写吧

我获取的 26、27、28是空的
你在哪里看的,我在
http://www.codeproject.com/cs/files/detailedfileinfo.asp
看到的
cancerser 2006-08-18
  • 打赏
  • 举报
回复
从达人手里抢分 我容易吗?
AFatPig 2006-08-18
  • 打赏
  • 举报
回复
晕,没有看见……
哭死……

谢谢混饭吃的,谢谢knight

看看先,准备揭帖。
cancerser 2006-08-18
  • 打赏
  • 举报
回复
自己给自己收藏下
cancerser 2006-08-18
  • 打赏
  • 举报
回复
也不仔细看看Knight94(愚翁)达人给的
引用Microsoft Shell Controls and Automation(在com里)
//
using Shell32;
//
string sFile=@"c:\\test1.bmp";
ShellClass sh = new ShellClass();
Folder dir = sh.NameSpace( Path.GetDirectoryName(sFile) );
FolderItem item = dir.ParseName( Path.GetFileName( sFile ) );
string det = dir.GetDetailsOf( item, i );
//i 说明
0 :文件名 text1.bmp
1 : 大小 141KB
2 :类型 bmp文件
3 :修改时间
4 :创建时间
5 :访问时间
26:分辨率 1461x855
27:水平像素 1461像素
27:垂直像素 855像素
//要取哪个自己写吧
AFatPig 2006-08-18
  • 打赏
  • 举报
回复
可能我的问题描述的不正确

我需要获取的是图像文件的 width 和 height

能不能不需要打开图像文件?

谢谢!
AFatPig 2006-08-18
  • 打赏
  • 举报
回复
恩,再晕一下……

谢谢大家提供建议!

加载更多回复(9)

110,546

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧