• ベストアンサー

RailsでRMagick不要の画像アップローダー

タイトルのままになってしまいますが 現在作成中のサイトで画像のアップロード機能が必要なのですが 正直、環境構築時の鬼門のImageMagickで困っています 人に作ったものを見せるためには Cent,Ubuntu,Macのそれぞれの環境で比較的簡単に環境を作れる必要があるので ImageMagick不要の画像アップロードPlug-inを探しています * jpg,pngの画像拡大縮小だけ出来ればいい * データはDBか指定したディレクトリのどちらかだけにアップロード出来ればいい という条件なのですが、どなたかご存じないでしょうか?

  • Ruby
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • ki073
  • ベストアンサー率77% (491/634)
回答No.1

各OSで共通に使えるImageMagickが一番簡単だと思いますが、何が問題なのでしょうか? LInuxはyumやrpmを使えば簡単にインストールできますし、MacはfinkやMacPortsを使えば簡単にインストールできますが。 Macは画像の簡単な処理ができるコマンド(sips)が最初から入っていますが、他の環境との整合性をとるのが難しくなると思うのですが。

m_matsubara
質問者

お礼

結局mac環境でもrmagickをインストールして対処しました monoが邪魔をしてインストールが難しかったのですが 特定にすごく時間がかかりましたが 突破すれば後は楽でしたね

関連するQ&A

  • PHPによるMySQLを使ったアップローダについて

    初めて投稿させて頂きます。 現在、PHPを使って、DB(MySQL)に情報を登録するシステムを構築しています。 そこで、質問なのですが、フォームからファイルをアップロードさせ、送信したファイルをDBに保存するにはどうすれば良いのでしょうか? DBを使った掲示板のプログラムを参考にしているのですが、肝心のファイルは、DBにファイル名が登録されるだけで、ファイル自体はPHPで設定したディレクトリに保存されます。 ファイルをホームページの領域に保存するのではなく、DBに保存する事は出来ないのでしょうか? また、可能であれば、どの様にDBに保存すれば良いのか・フィールドの型は何にしたら良いのでしょうか? わかりにくい説明ですいませんが、宜しくお願い致します。

    • ベストアンサー
    • PHP
  • 画像を容量を軽くしたい

    phpのvarは5.2.5 GDライブラリを使ってアップしています jpg、gif、pngをアップロードするときに画像の容量を軽くしたいです 画像についているメタ情報を削除する方法はありますか? ImageMagickでは画像のEXIF 情報や余分なコメント領域を削除できますがそれと同じようなことをしたいです よろしくお願いします

    • ベストアンサー
    • PHP
  • 画像のアップロードに関して

    お世話になっております。画像をブラウザ上からアップロードし、指定のディレクトリ(その都度mkdir関数によりディレクトリを生成)に保存するスクリプトを組んでおりますが、DBにファイル名(または保存先?)を登録するような内容を考えております。 そこでいくつか質問があり投函させて頂きます。 1・アップロードする際、クライアントのPC内にあるファイル名が日本語だった場合、そのままアップロードさせて問題が発生する事が考えられるか? 2・上記のように日本語である事を想定し、半角英数でリメイクするスクリプトを構築する場合、どのようなリメイクが適当で、どういったスクリプトを記述する事になるか? 3・アップロードさせる際、画像以外をアップロードしないよう規制をかけるにはどうしたら良いか? 4・ディレクトリに画像をアップロードさせる訳だが、後にブラウザ上にその画像を表示させるには、DBへ保存するのは、やはり<img src="…… といったコードを登録する事になるのか? の4点です。スキルが無くここ数日頭を悩ませながら、進んでは振り出しに戻るを繰り返しており、丸投げのつもりは一切無いのですが、ポイントをご指導いただければ幸いに思い、投函させて頂きました。 お手数お掛けいたしますが、ご教授のほど宜しくお願い申し上げます。

    • ベストアンサー
    • PHP
  • imagemagickのコマンド

    こんにちは。 画像のサイズ変更をしたいと思い、imagemagickをインストールしました。環境はubuntuです。 サイズ変更の場合はconvertコマンドのオプションの-geometryや-resizeを使うとできるとのことで試したのですが、 $ convert -geometry '320×480' test.jpg test_geo.jpg とすると convert: invalid argument for option `-geometry': 320×480 @ error/convert.c/ConvertImageCommand/1592. のようなエラーが出てしまいます。resizeの場合も同じです。 どうすればサイズ変更ができるのでしょうか。 もしくはimagemagick以外で画像のサイズを縮小、拡大できるお勧めのフリーソフトなりがありましたら教えてください。よろしくお願いします。

  • 画像の拡張子

    画像の拡張子は、 .jpg .png .bmp の中でどれが一番綺麗ですか?? それと、画像をリサイズする時、 縮小アルゴリズムと拡大アルゴリズムは、何にしたら一番劣化なく、 高画質にリサイズ出来るでしょうか? 回答お願いしますm(_ _)m

  • PHP 画像アップローダー作成について

    PHPの勉強をしている者です。 ローカル環境(XAMPP1.7.3)にて、画像アップローダーを動かそうと試みています。 が、一時ファイル名が取得できず、失敗に終わります。初歩的なミスかもしれません。 -------------------- 【upload.html】 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>画像ファイルアップロード</title> </head> <body> <h1>画像ファイルアップロード</h1> <p>アップロードする画像ファイル(JPEG形式)を選択して「アップロード」ボタンを押してください。</p> <form action="upload_image.php" method="POST" enctype="multipart/form-data"> <table> <tr> <th>画像ファイル選択</th> <td><input type="file" name="filename" size="50"></td> </tr> <tr> <td colspan="2"> <input type="submit" value="アップロード"> </td> </tr> </table> </form> </body> </html> -------------------- 【upload_image.php】 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>画像ファイルアップロード</title> </head> <body> <h1>アップロードファイル情報</h1> <p> <?php // ファイル名の取り出し $file_name = $_FILES['filename']['name']; // ファイル(MIME)タイプの取り出し $file_type = $_FILES['filename']['type']; // 一時ファイル名の取り出し $temp_name = $_FILES['filename']['temp_name']; // エラーコードの取り出し $upload_error = $_FILES["filename"]["error"]; // 保存先のディレクトリ $dir = 'uploads/'; // 保存先のファイル名 $upload_name = $dir . $file_name; // JPEG形式のファイルをアップロードする if (($file_type == "image/jpeg") || ($file_type == 'image/pjpeg')) { // アップロード(移動) $result = move_uploaded_file($temp_name,$upload_name); if ($result) { // アップロード成功時 echo '■アップロード成功'; } else { // アップロード失敗時 echo '■アップロード失敗'; } } else { // JPEG形式以外のファイルはアップロードしない echo '■JPEG形式の画像をアップロードしてください。'; } ?> </p> <table> <tr> <td colspan="2"><img src="<?php echo $upload_name; ?>" alt=""></td> </tr> <tr> <th>エラーコード</th> <td><?php echo $upload_error; ?></td> </tr> <tr> <th>画像ファイル名</th> <td><?php echo $file_name; ?></td> </tr> <tr> <th>MIMEタイプ</th> <td><?php echo $file_type; ?></td> </tr> <tr> <th>一時ファイル名</th> <td><?php echo $temp_name; ?></td> </tr> </table> </body> </html> -------------------- 【php.iniの一部】 ;;;;;;;;;;;;;;;; ; File Uploads ; ;;;;;;;;;;;;;;;; ; Whether to allow HTTP file uploads. ; http://php.net/file-uploads file_uploads = On ; Temporary directory for HTTP uploaded files (will use system default if not ; specified). ; http://php.net/upload-tmp-dir upload_tmp_dir = "C:\xampp\tmp" ; Maximum allowed size for uploaded files. ; http://php.net/upload-max-filesize upload_max_filesize = 128M -------------------- このように作っております。 結果は エラーコード→0 画像ファイル名→正常取得 MIMEタイプ→正常取得 一時ファイル名→空 どのような原因が考えられるか、教えて頂ければ幸いです。

    • ベストアンサー
    • PHP
  • 画像の一括切り取り

    フリーソフトで画像ファイル(BMP,GIF,PNG,JPG)をフォルダ指定等で一度に読み込んで、 予め座標指定した範囲を切り取って保存する機能をもったものを探しています。 トリミングやリサイズのように画像全体ではなく、 選択範囲を一括保存できる機能があればどのようなものでも構いません。 また拡大・縮小機能は特に必要ありません。

  • 画像アップ

    php初心者です 簡単な画像アップロードを付けたいと思っています それでアップだけはなんとかできたのですが、もう少し機能を付けたいです 付けたい機能は 1.拡張子を調べて限定したい。gif、jpg、pngの三つを許可したい 2.画像の横と縦の幅が指定した幅より大きければ、指定した幅まで縦横比維持で縮小 100*100 3.もう一つのディレクトリに、小さいサムネイルを作りたい。大きさは32*32です 4.拡張子はそのままにして画像の名前をリネームしたいです よろしくお願いします(_ _ <?php $img_name = $_FILES["upfile"]["name"]; $img_size = $_FILES["upfile"]["size"]; $img_type = $_FILES["upfile"]["type"]; if($_REQUEST["up"] != ""){ if($img_tmp != "" and $img_size <= 50000){ $img_message = "名前は: $img_name <br>サイズは: $img_size <br>MIMEタイプは: $img_type"; if (is_uploaded_file($_FILES["upfile"]["tmp_name"])) { if (move_uploaded_file($_FILES["upfile"]["tmp_name"], "files/" . $_FILES["upfile"]["name"])) { chmod("files/" . $_FILES["upfile"]["name"], 0604); print $_FILES["upfile"]["name"] . "をアップロードしました。"; } else { print "ファイルをアップロードできません。"; } } else { print "ファイルが選択されていません。"; } }else{ $size_error = "サイズが大きすぎます"; } } ?> <html> <head> <title>画像アップロード</title> </head> <body> <form name="form" action="" method="POST" ENCTYPE="MULTIPART/FORM-DATA"> <input name="upfile" type="file" size="40"> <input name="up" type="submit" value="アップロード"><hr> </form> <?php print($size_error); ?><?php print($img_message); ?> </body> </html>

    • ベストアンサー
    • PHP
  • GIFアニメ画像の縮小

    PHP4+MYSQLで、画像掲示板を作っています。 投稿された、画像のサムネイルを作る必要があり、JPG,GIF,PNGの画像の縮小は、できるようになったのですが、 GIFアニメを縮小させると、縮小されたファイルは静止画像になってしまいます。 アニメーションのまま、縮小させるにはどうすれば良いのでしょうか? 参考になるサイト等があれば、教えてください。

    • 締切済み
    • PHP
  • アメーバブログ 画像の添付について

    ブログ初心者です。 アメーバブログでアップロードした画像をブログ上に 添付する際の質問です。 画像の設定(サイズ)ですが、【オリジナルで表示】を選択して ブログ上に添付し、「HTMLタグを表示」でサイズを調整する場合は どこを書き換えればいいのでしょうか?画像が大きすぎて 画面に納まらないので縮小したいのですが・・。 【縮小して表示(横幅最大220px)】を選択してブログ上で 画像を拡大しようとすると「HTMLタグを表示」にwidth="○○○" height="○○○" という文字列が表示されるので数値を調整して 画像を拡大できるのですが、一旦220pxまで縮小した画像を 拡大すると画質が粗くなってしまいます。 そこで【オリジナルで表示】で大きな画像を添付して、 ブログ上で縮小したいのですが・・・。 何方かご存じの方がいらっしゃいましたら どうぞ宜しくお願いいたします。

専門家に質問してみよう