【问题标题】:How to load image from form directly into ImageMagick with Perl如何使用 Perl 将图像从表单直接加载到 ImageMagick
【发布时间】:2021-09-29 14:04:10
【问题描述】:

目前我正在使用以下代码允许用户通过 html 表单上传图像。它会创建图像的副本,然后我将其读入 ImageMagick。当然,直接将表单中的数据直接读取到 ImageMagick 对象中会更好。但我一直没能做到。

use Image::Magick;
use MIME::Base64;
$arg = new CGI;
$fetch_photo = param('fileuploadphoto');
($data, $base64) = split /,/, $fetch_photo;
($type) = $data =~ m!data:image/(\w+);base64!;
$decoded = MIME::Base64::decode_base64($base64);
$filename = 'test.jpg';
open(my $file, '>', "$filename") or die "Error cannot open file: $file"; 
binmode $file;
print $file $decoded;
close($file);
$image = Image::Magick->new;
$image->Read($filename);

【问题讨论】:

标签: forms perl upload imagemagick


【解决方案1】:

感谢 Håkon Hægland 的回答。这非常有效。

use Image::Magick;
use MIME::Base64;
$fetch_photo = param('fileuploadphoto');
($data, $base64) = split /,/, $fetch_photo;
$decoded = MIME::Base64::decode_base64($base64);
$image = Image::Magick->new;
$image->Read(blob => $decoded);

【讨论】:

    猜你喜欢
    • 2014-09-14
    • 2010-09-10
    • 2017-01-16
    • 1970-01-01
    • 2019-11-26
    • 1970-01-01
    • 1970-01-01
    • 2011-11-15
    • 2013-09-22
    相关资源
    最近更新 更多