gpt4 book ai didi

PHP 测试图像是否隔行扫描

转载 作者:行者123 更新时间:2023-12-04 14:45:55 30 4
gpt4 key购买 nike

我有一个包含数百个 PNG 文件的文件夹,我想编写一个脚本来使它们全部交错。现在,随着时间的推移,图像将被添加到该文件夹​​中,并且处理文件夹中的所有图像(无论是隔行扫描还是逐行扫描)似乎有点傻。

所以我想知道,有没有办法使用 PHP 来检测图像是否隔行扫描,我可以选择是否处理它。

谢谢堆!

最佳答案

您还可以采用低级方法 - 无需加载完整图像,或使用额外的工具或库。如果我们查看 spec ,我们会看到“隔行扫描”标志只是 iHDR 块的第 13 个字节,因此我们必须跳过 8 bytes from the signature ,加上 iHDR 块标识符的 8 个字节+长度,加上块的 12 个字节。 .. 这将跳过 28 个字节,如果下一个字节为 0,则图像不隔行扫描。

实现只需要4行代码:

function isInterlaced( $filename ) {
$handle = fopen($filename, "r");
$contents = fread($handle, 32);
fclose($handle);
return( ord($contents[28]) != 0 );
}

顺便说一句,您确定要使用隔行扫描 PNG 吗? (见 eg )

关于PHP 测试图像是否隔行扫描,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14235600/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com