2016-05-13 19 views
0

私は画像のbase64文字列をPHPに送信するhtml形式を持っています。 phpスクリプトのbase64は文字列を解読し、imagecreatefromstring()を使用してイメージリソースを取得し、pngファイルにリソースを保存します。保存したファイルを開くと、ファイルがアップロードした画像と同じではないことがわかります。イメージにテキストがあれば、その部分はカラーで塗りつぶされた矩形として表示されます。アップロードされた画像と保存された画像のバージョンの添付。私はphpの最新バージョン(v7)とphp-gdライブラリの最新バージョンをubuntu 16.04 LTSで動かしています。私は問題を理解することができません。助けてください。PHP画像操作画像内のテキストが壊れています

画像は、私は解決策を考え出した

image which was saved by php

+0

透明度(アルファチャンネル)が誤解を招くようです... – jtheman

+0

画像を操作していないとGDリソース?単に 'base64_decode()'と 'file_put_contents()'を使います。そうすれば、データはまったく変更されません。 – timclutton

+0

画像を任意の画像タイプから.pngに変換しています – Rajesh

答えて

0

PHPによって保存された

image i am trying to upload

画像をアップロードしようとしています。画像リソースをファイルに保存するためにimagepng()を呼び出す前に、2つの関数、imageAlphaBlending()imageSaveAlpha()を呼び出して画像の透明度を保たなければなりませんでした。以前のコードはPHP 5.5で動作していましたが、これはPHP 7で変更されています。

関連する問題