更新:コマンドでcat
コマンドを実行し、イメージをテキストとして読んでlayer
という単語を検索することで問題を把握しました。それは私がテストしたすべての画像に作用します。レイヤーがLayer 1
以外の名前に変更された場合でも機能します。イメージmagick TIFFレイヤ数は常に1を返します
exec("cat $filename | fgrep -a 'layer'", $ret);
if(!strpos(implode($ret),'layer')){
$layers='false';
}else{
$layers='true';
}
この状況で何が起こったのかをご記入ください。 TIFFファイルかどうかを確認しようとしている
/////////////////////////////////
イム単一のレイヤーまたは複数のレイヤーが含まれているので、私のデータベースに真偽値を設定することができます。問題は私が何をしてもイメージが常に1つのレイヤーを持っていると言います。私が読んでいるほど、実際にはGIFファイルのレイヤー数を数えているようです。すべてのヘルプは、私のすべての変数が$layers
を除き正常に動作し
$all=exec("/opt/local/bin/identify -format %w-%h-%x-%z-'%[colorspace]'-'%[channels]'-'%[scenes]' $newfile");
$ex=explode("-",$all);
$width=$ex[0];
$height=$ex[1];
$dpi=$ex[2];
$dpi=explode(" ", $dpi);
$dpi=$dpi[0];
$depth=$ex[3];
$colorspace=$ex[4];
$channels=$ex[5];
$layers=$ex[6];
をいただければ幸いです。私のファイルにいくつのレイヤーがあっても、
1
を返します。
GIFファイルは、レイヤーを持っていない...正しいことを照会ありません。アニメーションGIFには複数のフレームがあるかもしれませんが、それらは「レイヤー」ではありません。 –
ええ。私はあなたが正しいと信じています。私はGIFではなく、TIFファイルのレイヤカウントをしたいと思います。 –