0

我正在使用Rails创建一个网站,允许用户上传具有各种文件格式(pdf,doc,docx,ppt,pptx,xls,xlsx,png,jpg ,jpeg)并将它们存储在aws S3上。 我使用Carrierwave直接上传文件到S3,并且一切运作良好。上传的文件很好地存储在S3中。在Rails上生成上传文件的预览图像缩略图

但是现在,我想显示上传文件的预览图像(缩略图)。我已经通过操作Carrierwave配置尝试了几种不同的方法,但它似乎生成的缩略图仅适用于PDF文件,而不适用于其他文件格式。任何人都可以请给我任何见解,使这项工作?由于

回答

0

,而不是应用程序中生成缩略图,你可以考虑使用可以生成即时缩略图系统,如:

0

正如约翰写道: ,对于您的图片,您可以尝试使用Cloudinary的jQuery image upload库等解决方案即时生成缩略图。该解决方案可以将图像上传到云端。利用亚马逊的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