PHPを使用して画像のサイズを変更するプロジェクトに取り組んでいます。このプロジェクトでは、 PELを使用して、EXIFデータをソースイメージからサイズ変更されたイメージにコピーします。ただし、画像のサイズを実際に小さくする場合、埋め込まれたEXIFデータには、サイズ変更された画像自体よりも実際にははるかに大きいサムネイルが含まれます。PELを使用して、このサムネイルをEXIFデータから削除し、他のすべての機能を維持したいと思います。何か案は?
2 に答える
画像処理ライブラリを使用する必要があります。imagemagik(imagik)またはgmagikが機能します。
基本的には、必要なすべての情報を取得し、サムネイルを含むすべてのメタデータを削除するためexif
に使用$image -> stripimage()
します。次に、gmagicを再度使用して、exifを介して引き出したデータを取得し、再度追加します($image -> commentimage
たとえば)。
唯一の落とし穴は、画像がexifとして再追加されるのか、それとも他のメタデータ型として再追加されるのかを指定しているドキュメントがないことです。
他にも方法があると思いますが、ここからわかる最も簡単な方法は、GD を使用してファイルを読み取り、新しい画像を出力して、EXIF をコピーすることです。これは決して単純なプロセスではありませんが、すでにサイズ変更を行っている場合は、ある程度の意味があります。
PEL は少し古くなっています。これを実際の規模で行っている場合は、簡単な Python スクリプトを試してみるとよいでしょう。はるかに優れたグラフィックスと EXIF ライブラリにアクセスでき、スクリプトを設定した期間に実行するように cron を設定できます... ただし、これが Web サイトの画像処理フローに合わない可能性があることは認めます。