【问题标题】:Is there a way to distinguish APNG and PNG images before downloading them?有没有办法在下载之前区分 APNG 和 PNG 图像?
【发布时间】:2017-03-29 02:23:37
【问题描述】:

我检查了 http 标头,它们的内容类型都是 image/png。我需要根据图像是PNG还是APNG来有所不同,比如如果它是PNG,直接显示它。如果是 APNG,则显示第一帧并仅在用户点击图像时开始下载整个图像。

【问题讨论】:

    标签: ios png apng


    【解决方案1】:

    APNG 的 mime 类型是 image/apng:https://wiki.mozilla.org/APNG_Specification
    如果 HTTP Header 中的内容类型错误,则不启动下载就无法识别 APNG。
    但是您可以尝试只下载第一个字节/千字节来检查类型,根据规范:“要被识别为 APNG,'acTL' 块必须出现在任何 'IDAT' 块之前的流中 "

    【讨论】:

    【解决方案2】:

    一旦你检测到它,然后呢?您似乎假设您可以阻止浏览器下载整个文件。我认为这是不可能的。

    【讨论】:

    • 这不是答案,请使用 cmets 进行询问澄清。另外,谁告诉您图像将从浏览器下载?该问题与iOS有关。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-27
    • 1970-01-01
    • 2016-12-04
    • 2021-12-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多