2016-11-13 19 views
1

私のPHP webappのユーザーは、PNGおよびJPEG画像をアップロードすることができます。アップロードアルゴリズムは以下の通りです:getimagesizeによって PHP GD .ico処理

  • チェック拡張子を解析し、ファイル名()imagecreatefrompngによって
  • 再作成画像()/ imagepng()によって

    1. チェック拡張子(imagecreatefromjpeg()/ imagejpeg())
    2. 改名画像

    イメージ・レクリエーションは、セキュリティのために使用されているファイルシステムに保存します。すべてうまく動作します。しかし、今私はこのアルゴリズムは.icoファイルを処理する必要があります。 GDは.ico(imagecreatefromico()のような関数はありません)では動作しないので、私のアルゴリズムのステップ3を実装する方法はわかりません。

    ご協力いただきありがとうございます。

  • +0

    [this](http://stackoverflow.com/questions/2628114/convert-png-file-to-ico-with-php)を見ましたか? –

    +0

    @JulienLopez私の場合は確信していません。私はタイプを変更しません。私はファイルを再作成する必要があるので、悪質なコードがないことを確認してください。 – Dmitry

    答えて

    1

    GIFイメージに.icoファイルを読み込むことができるコンポーザーインストール可能クラスについては、https://github.com/lordelph/icofileloaderを参照してください。例えば

    $loader = new Elphin\IcoFileLoader\IcoFileService; 
    $im = $loader->extractIcon('/path/to/icon.ico', 32, 32); 
    

    は、アイコンファイルからの画像を解析して抽出する他の方法のマニュアルを参照してください。

    +0

    ありがとうございます。 .icoファイルとして$ imを保存することができれば、GDにはimageico()関数やimagecreatefromico()関数がないので教えてください。 – Dmitry

    +0

    あなたはpackagistでいくつかを見つけることができます。 https://packagist.org/packages/chrisjean/php-ico –

    +0

    ありがとう、後で試してみてください! – Dmitry