0

我需要能够验证 JPEG 图像是否有效且未损坏。这与问题 210650 不同,问题 210650只是要求验证它实际上是 JPEG 图像。从带有验证的图像加载,例如:

var testJpg = 
  Bitmap.FromStream(filename, useEmbeddedColorManagement, validateData);

不会为剪切的图像抛出异常。目前我们的解决方案是尝试使用外部 GD 脚本打开文件并解析从 gdImageCreateFromJpeg 抛出的任何错误。

gdImagePtr im;
im = gdImageCreateFromJpeg(testFile);
fclose(in);    

但是必须有一些 .Net 代码来验证 JPEG 不仅有效,而且包含完整的图像?

4

2 回答 2

2

Wikipedia 获取 JPEG 参考结构,也许您可​​以从流中查找 EOI 字节?

于 2009-07-23T17:44:18.557 回答
0

有一个pnetlib 使用 c#提供与 jpeglib 的互操作,一旦你有了它,你就可以验证你想要的任何东西。
您可以尝试使用他们的JpegReader,也许它会给您一个开箱即用的错误。

于 2009-07-23T19:28:31.513 回答