ホームページ  >  記事  >  バックエンド開発  >  PHP を使用して PSD ファイルのサムネイルを生成するチュートリアル

PHP を使用して PSD ファイルのサムネイルを生成するチュートリアル

*文
*文オリジナル
2017-12-25 14:06:352525ブラウズ

この記事では主にimagickを使ってPHPでPSDファイルのサムネイルを生成する方法を紹介します。この記事では、ImageMagickのインストール方法、imagickのインストール方法、インストールが成功したかどうかの確認方法、PSDファイルのサムネイルの生成方法などを説明しますので、皆様のお役に立てれば幸いです。

最初のステップ、ImageMagickをインストールします

最初にImageMagick http://imagemagick.org/script/binary-releases.php#windows をインストールする必要があります。imagickはPHP拡張機能であり、PHPがImageMagick 関数。 (現在の最新バージョンは、ImageMagick-6.8.9-5-Q16-x64-dll.exe)

インストールディレクトリにはスペースを含めることはできませんが、私は個人的にドライブCのルートディレクトリにインストールします:

C:\ImageMagick


それは可能です。インストールが完了したら、CMD コマンド ライン インターフェイスを開き、「convert」と入力して、多くの内容が表示されたら、インストールは成功しています。

「convertは内部コマンドでも外部コマンドでも、操作可能なプログラムやバッチファイルでもありません」または「変換するドライブ文字を入力してください」というプロンプトが表示された場合(convertはFAT32をNTFSに変換するデフォルトのシステムコマンドです)、 ImageMagick のインストール パスをシステム パスに自分で追加する必要があります。

; [マイ コンピュータ] -> [プロパティ] -> [環境変数] -> [パス] を選択して、[追加] をクリックします。インストールパス。

2 番目のステップ、imagick をインストールします

ここをクリックしてダウンロードします。ダウンロードする際には、システムが 32 ビットか 64 ビットか、および PHP のどちらであるかにも注意してください。 NTSバージョンまたはTSバージョンです(現在の最新の安定バージョンは3.1.2です。PHPがNTSバージョンかTSバージョンであるかを判断する方法については、phpinfoからThread Safetyの項目を確認できます。有効になっている場合は、それを意味します) TS バージョン、それ以外の場合は NTS バージョンです)

ダウンロードした圧縮パッケージを解凍し、php_imagick.dll ファイルを見つけて、それを PHP 拡張ディレクトリに置き、php.ini ファイルを開き、対応するファイルに次の行を追加しますlocation:

extension=php_imagick.dll

保存して終了し、コンピューターを再起動して有効になっていることを確認します。

3 番目のステップ、確認します

すべてが正常であれば、再起動後に phpinfo に次のような imagick 項目が表示されるはずです:

見つからない場合は、に戻ります。最初のステップとして、ImageMagick の別のバージョンに変更します。再インストールして再実行します。

ステップ 4、テスト

OK、このステップではコードの作成を開始できます。プロセスについては詳しく説明しませんが、コードを入力するだけです

error_reporting(E_ERROR | E_WARNING);
 
$im = new Imagick('1.psd');
$im->setImageIndex(0);
$im->setIteratorIndex(0);
$im->stripImage(); //去除图片信息
$im->setImageCompressionQuality(80); //图片质量
$im->writeImage('1.jpg');


上記のコードはテストされており、正しく生成できます。 1.jpg の写真。

png 形式は圧縮をサポートしていないため、サムネイルは jpg 形式にすることをお勧めします。私がテストしたとき、生成された png サムネイルは 300 万を超えましたが、jpg は約 200 KB でした。 PNG 画像の生成速度は明らかに非常に遅く、約 3 ~ 4 秒かかります。

さらに、極端なテストを行ったところ、約 600M の PSD ファイルを使用して jpg サムネイルを生成しましたが、画像のサイズは変更されていないため、速度は基本的に 2 秒以内で、ファイルサイズは 2.5M 未満でした。 、最終的にファイルが生成されました。実際の状況に応じてボリュームを減らすことができます。

ステップ5、他の形式

PSDファイルに加えて、MP4、AVI、その他のビデオ形式などの他の形式も試しましたが、生成速度が非常に遅いです。最後に、最も実用的なのは PDF ファイルのサムネイルを生成することであることがわかりましたが、PDF ファイルを処理する前に Ghostscript をインストールする必要があり、コード全体は基本的に PSD を生成するコードと同じです

$im = new Imagick();
$im->readImage('D:/soft/wamp/www/test/1.pdf[0]');
//echo $im->getNumberImages();
$im->writeImages('D:/soft/wamp/www/test/1.jpg', false);

:

GDライブラリとは何ですか? PHP での GD ライブラリの読み込みの詳細な紹介

(上級) PHP 画像処理技術 - GD ライブラリ

ImageMagick コマンド実行の脆弱性の詳細な分析

以上がPHP を使用して PSD ファイルのサムネイルを生成するチュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。