![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
さくらインターネットでImageMagickを使いたいです。
ローカルで正常に動作しているphpファイルをさくらインターネットにアップロードしたところ正常に動かすことが出来ませんでした。
わからなかったのでサポートに問い合わせたところ、以下の返答を頂きました。
こちらの質問
----------------------------------
> 先日「さくらのレンタルサーバ スタンダード」を仮申し込みさせて
> いただきました。
> ImageMagickがインストールされているようなのでPHPでimagickを使って
> 画像処理をしようとしたところimagickがうまく作動していないように思えます。
> (アップロードしたPHPファイルは自分のローカルでは正常に動作しています)。
> imagickで画像処理をする場合、何か特別な設定等があるのでしょうか?
> お手数ですがご解答のほどよろしくお願い致します。
回答
----------------------------------
さくらのレンタルサーバでは Imagemagick は perl のモジュールとしてインストールが行われております。
申し訳ございませんが、PHPのモジュールとしては使用することはできません。ご了承下さいますようお願いいたします。
これは、PHPではImageMagickが使えないということなのでしょうか?
googleで『さくらインターネット ImageMagick』で検索してみたり、OKWave上でも同じ内容の質問を探したりしたのですが、回答者様の回答を見ても理解が出来ず既に丸3日頭を悩ませています。
どなたか初心者でもわかるように回答を頂けないでしょうか。
(どのディレクトリのどのファイルのどこに何をする、等)
調べた内容は以下のサイトです。どれを試してもうまく動作しませんでした。
http://dozo.matrix.jp/pecl/%E3%83%AC%E3%83%B3%E3 …
http://q.hatena.ne.jp/1142475209
http://spilt-milk.net/?p=1400
http://blog.tonx2.com/?p=184
No.1ベストアンサー
- 回答日時:
ImageMagick は、「単独で動作する画像処理プログラム」です。
画像処理するためには、ImageMagickのプログラムを別途立ち上げたりします。
ですが、それではプログラム内から機能を呼び出すのが面倒なので、
各言語毎に、ImageMagick を内部的な機能として使えるようなものがいろいろ用意されています。
「IMagick」も、そういったインターフェースの一つであり、
PHP に IMagick をインストールすることで、
PHPプログラム内から直接 ImageMagick の機能を使えるようになります。
ですが、さくらさんの返答によると、IMagick は入っていないとのことですから、
質問者さんが書かれた「PHPからIMagickを通してImageMagickを使うプログラム」は動作しないのです。
「IMagick のインストール」はサーバ管理者にしかできません。利用者側では不可能です。
ですから、「利用者側の努力で、さくらインターネットで IMagick 用プログラムを動かせるようにする」のは不可能です。
一方、ImageMagick の機能は、上述の「独立したプログラム」で提供されており、それはさくらインターネットにもインストールされているわけですから、
それを直接呼び出すようにすれば、PHP から ImageMagick の機能を使うことは可能です。
そういった利用方法を示しているのが、質問者さんの挙げている最後のリンクである
http://blog.tonx2.com/?p=184
です。PHP の system 関数を使って、ImageMagickのプログラム(convert コマンドなど) を起動しています。
外部プログラムですので、基本的には画像は全てファイルを経由して行い、
処理内容は、コマンド引数で指定します。
convert コマンドの使い方は
http://www.envinfo.uee.kyoto-u.ac.jp/user/susaki …
なんかが参考になるでしょうか。
質問者さんがIMagick で処理しようとした内容も、
convert の引数にあると思います。
たとえば、PHPから
system("convert -geometry 20% image.jpg image_small.jpg");
を実行すれば、image.jpg から、解像度を縦横1/5にした image_small.jpg が作られます。
そんな感じで、system関数を使えば、ImageMagick の機能が使えます。
ありがとうございます、解決しました!
根本的に間違っていたのですね、どおりで参考サイトを見てもわからなかったはずです…
system関数というのもよくわからなかったのですが、mtaka2さんの回答のお陰で全て理解できました。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・【大喜利】【投稿~8/27】 こんなガソリンスタンド二度と来るか!なぜそう思った?
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・【お題】動物のキャッチフレーズ
- ・【お題】甲子園での思い出の残し方
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・自分用のお土産
- ・人生で一番お金がなかったとき
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・ちょっと先の未来クイズ第1問
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPで2地点間の緯度経度の求め...
-
PHPのif文でその処理を途中で抜...
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
VBSの「MsgBox」について
-
3つ以上の論理積は利用可能なの...
-
【PHP】ページを更新すると勝手...
-
絶対パス?絶対アドレス?意味...
-
cakephpでのダウンロード機能の...
-
phpのhex2binについてphpで、ut...
-
PHPにて外部サイト内容が取得不...
-
VB6にてメールを送信する方法
-
リンク先を隠す方法はないでし...
-
ファイルのダウンロードのイベ...
-
IPアドレス別に表示する画像を...
-
WordPressで完全一致検索
-
error_reporting(0);にも関わら...
-
FTPコマンドでディレクトリごと...
-
[ ディレクトリ '.' は書き込み...
-
CakePHPの .htaccess設定について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
eclipseのエラーの意味
-
smartyでホームページ上の画像...
-
FORMタグを使わずに、POSTする...
-
さくらのレンタルサーバーでメ...
-
PHPコーディング 訓練が出来る媒体
-
Linux + php でのパス指定
-
PHP関数で呼んだまま返って...
-
プログラミング作業効率を上げ...
-
ここで言う空文字の意味とは?
-
$_POST[***]を2つのPHPファイ...
-
CGIの仕事
-
海外のオープンソースプログラ...
-
PHPのみでの背景色は指定できる...
-
PHPからPerlにデータを渡して結...
-
PHPで2地点間の緯度経度の求め...
-
語句の意味を教えてください
-
view_Ebook.phpについて
-
MySQLへの吐き出し日本語が文字...
-
phpにて動的なページを生成する...
-
pg_exec()、pg_result()は、使...
おすすめ情報