【问题标题】:How Do I Validate a JPEG Image in C# / .Net is not corrupted如何验证 C# / .Net 中的 JPEG 图像未损坏
【发布时间】:2010-11-13 11:41:28
【问题描述】:

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

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

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

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

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

【问题讨论】:

    标签: c# .net image gdi


    【解决方案1】:

    以JPEG reference structure from Wikipedia,也许你可以从流中寻找EOI字节?

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 2021-07-28
        • 1970-01-01
        • 2021-12-26
        • 1970-01-01
        • 1970-01-01
        • 2012-02-26
        • 1970-01-01
        • 2014-07-01
        • 1970-01-01
        相关资源
        最近更新 更多