使用Base64编码ImageMagick图像

内森·坎波斯(Nathan Campos)

我正在使用Perl的Image :: Magick创建缩略图,但是我想将其发送回Base64编码的JSON对象中显示的客户端。如何在不必将文件保存到磁盘的情况下获取Base64字符串?

厄索尔

您不能将标量视为文件句柄吗?

http://metacpan.org/pod/IO::Scalar

my $image_data;
my $fh = IO::Scalar->new(\$image_data);
$thumbnail->Write(file=> $fh, filename=>'thumbnail.jpg');

## Then as in the previous answer...
my $json = JSON->new->utf8;

my $client_data = {
    thumbnail  => encode_base64( $image_data ),
    other_crap => 'poo',
};

my $encoded_client_data =  $json->encode( $client_data );

编辑(c / f如何将IO :: Scalar与Image :: Magick :: Read()一起使用?

这个怎么样:

http://www.imagemagick.org/script/perl-magick.php#blobs

使用Blob

Blob包含的数据直接代表内存中而不是磁盘上的特定图像格式。PerlMagick支持任何这些图像格式的Blob,并提供了将Blob转换为特定图像格式或从特定图像格式转换Blob的方法。

...

ImageToBlob()以其各自的格式返回图像数据。然后,您可以打印它,将其保存到ODBC数据库,将其写入文件或通过管道将其传输到显示程序:

 @blobs = $image->ImageToBlob();
  open(DISPLAY,"| display -") || die;
  binmode DISPLAY;
  print DISPLAY $blobs[0];
  close DISPLAY;

所以你想要这样的东西:

my ($image_data) = ($image->ImageToBlob())[0];
my $json = JSON->new->utf8;

my $client_data = {
    thumbnail  => encode_base64( $image_data ),
    other_crap => 'poo',
};

my $encoded_client_data =  $json->encode( $client_data );

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用JavaScript创建base64编码的图像

来自分类Dev

是否使用FormData上传base64编码的图像?

来自分类Dev

使用Java在Base64中从URL编码图像

来自分类Dev

使用curl发送base64编码的图像

来自分类Dev

如何缓存base64编码图像

来自分类Dev

如何发送base64编码的图像?

来自分类Dev

无法解码base64编码的图像

来自分类Dev

无效的编码Base64图像数据

来自分类Dev

base64编码图像;binascii.Error:无效的base64编码

来自分类Dev

复制图像/粘贴base64编码的图像

来自分类Dev

base64中的编码图像返回图像

来自分类Dev

Base64 编码的图像与保存的图像不同

来自分类Dev

使用Python将base64编码的图像推送到Google Contacts

来自分类常见问题

Node.js从Web获取图像并使用base64进行编码

来自分类Dev

JavaScript使用base64编码的代码减少图像的大小和质量

来自分类Dev

在Apps脚本中通过HtmlService使用base64编码的图像

来自分类Dev

使用Java将Base64编码的图像上传到Amazon s3

来自分类Dev

使用HttpUrlConnection Android将base64编码的图像发送到服务器

来自分类Dev

如何使用base64解码编码的图像字符串

来自分类Dev

使用base64编码android将图像上传到服务器

来自分类Dev

使用Python解析包含来自AWS Lambda的图像的Base64编码数据

来自分类Dev

使用base64编码的数据通过Apps脚本将图像插入Google表格

来自分类Dev

使用angularjs将SVG中的xlink:href设置为base64编码的图像

来自分类Dev

如何使用TYPO3发送base64编码的图像

来自分类Dev

如何使用base64解码编码的图像字符串

来自分类Dev

用Javascript同步加载Base64编码的图像

来自分类Dev

如何将图像资源编码为base64?

来自分类Dev

干预图像-以base64编码格式保存到变量

来自分类Dev

电子邮件中的Base64编码图像

Related 相关文章

  1. 1

    使用JavaScript创建base64编码的图像

  2. 2

    是否使用FormData上传base64编码的图像?

  3. 3

    使用Java在Base64中从URL编码图像

  4. 4

    使用curl发送base64编码的图像

  5. 5

    如何缓存base64编码图像

  6. 6

    如何发送base64编码的图像?

  7. 7

    无法解码base64编码的图像

  8. 8

    无效的编码Base64图像数据

  9. 9

    base64编码图像;binascii.Error:无效的base64编码

  10. 10

    复制图像/粘贴base64编码的图像

  11. 11

    base64中的编码图像返回图像

  12. 12

    Base64 编码的图像与保存的图像不同

  13. 13

    使用Python将base64编码的图像推送到Google Contacts

  14. 14

    Node.js从Web获取图像并使用base64进行编码

  15. 15

    JavaScript使用base64编码的代码减少图像的大小和质量

  16. 16

    在Apps脚本中通过HtmlService使用base64编码的图像

  17. 17

    使用Java将Base64编码的图像上传到Amazon s3

  18. 18

    使用HttpUrlConnection Android将base64编码的图像发送到服务器

  19. 19

    如何使用base64解码编码的图像字符串

  20. 20

    使用base64编码android将图像上传到服务器

  21. 21

    使用Python解析包含来自AWS Lambda的图像的Base64编码数据

  22. 22

    使用base64编码的数据通过Apps脚本将图像插入Google表格

  23. 23

    使用angularjs将SVG中的xlink:href设置为base64编码的图像

  24. 24

    如何使用TYPO3发送base64编码的图像

  25. 25

    如何使用base64解码编码的图像字符串

  26. 26

    用Javascript同步加载Base64编码的图像

  27. 27

    如何将图像资源编码为base64?

  28. 28

    干预图像-以base64编码格式保存到变量

  29. 29

    电子邮件中的Base64编码图像

热门标签

归档