0

私は、さまざまなファイル形式(pdf、doc、docx、ppt、pptx、xls、xlsx、png、jpg)でドキュメントファイルをアップロードできるWebサイトを作成するために、 、jpeg)、それらをaws S3に保存します。 私はCarrierwaveを使ってS3にファイルを直接アップロードしていますが、これまでのところうまくいきます。アップロードされたファイルはS3にうまく格納されます。Railsでアップロードされたファイルのプレビュー画像のサムネイルを生成

今、アップロードしたファイルのプレビュー画像(サムネイル画像)を表示します。私はCarrierwaveの設定を操作していくつかの異なる方法を試しましたが、サムネイル画像を生成するのはPDFファイルだけで、他のファイルフォーマットでは動作しないようです。誰でもこの仕事をするために何か洞察力を与えてもらえますか?おかげ

答えて

0

このリンクはあなたを助けるかもしれない: http://guides.railsgirls.com/thumbnails

は、私はまた、あなたがimage_uploaderファイルにいくつかのコードのコメントを外しすることができるはずと言うのチュートリアルを発見しました。

version :thumb do 
    process :resize_to_fill => [50, 50] 
end 

https://code.tutsplus.com/tutorials/rails-image-upload-using-carrierwave-in-a-rails-app--cms-25183

これらのソリューションのいずれかが動作するかどうかを確認します。

0

はむしろアプリケーション内でサムネイルを生成するよりも、次のようなオンザフライサムネイルを生成できるシステムを、使用することを検討できます。

0

ジョンが書いたようにあなたのイメージでは、CloudineのjQuery image uploadライブラリのようなソリューションを使ってサムネイルを即座に生成することができます。このソリューションは、クラウドへの画像アップロードを可能にします。アップロードされた画像は、AmazonのS3サービスを利用して、安全なバックアップと改訂履歴でクラウドに安全に保存されます。

CloudinaryのjQueryライブラリは、サムネイルのオンザフライ生成も可能にします。

アップロードされた画像の150x100サムネイルを作成し、この画像の公開IDで入力フィールドを更新するサンプルコードです。ここで

$('.cloudinary-fileupload').bind('cloudinarydone', function(e, data) { 
$('.preview').html(
$.cloudinary.image(data.result.public_id, 
    { format: data.result.format, version: data.result.version, 
    crop: 'fill', width: 150, height: 100 }) 
);  
$('.image_public_id').val(data.result.public_id);  
return true; 
}); 

あなたには、いくつかのRuby on Rails examples

を見つけることができます
関連する問題