0

我正在将 base 64 字符串中的全尺寸位图 (500x500) 发送到 PHP 服务器。当我收到数据时,我想对其进行解码并生成两个 JPEG:一个是原始大小,一个是较小的(缩略图)。这是我的原始代码:

<?php
    $base=$_POST['originalImage']; // Bitmap in 500x500
    $binary=base64_decode($base);

        // ?? How to generate binary for bitmap in 200x200?
?>
4

1 回答 1

1

将该二进制字符串作为文件保存到服务器,然后进行谷歌搜索。您会发现大量教程,其中还包括示例代码,您可以像这样复制和粘贴http://webcheatsheet.com/php/create_thumbnail_images.php

如果您想正确执行此操作,我建议您使用https://github.com/avalanche123/Imagine,这是一个非常好的 php 5.3 OOP 图像处理库,适用于不同的引擎。

这是一个使用 Imagine 生成缩略图的简单示例:

$imagine = new Imagine\Gd\Imagine();
// or
$imagine = new Imagine\Imagick\Imagine();
// or
$imagine = new Imagine\Gmagick\Imagine();

$size    = new Imagine\Image\Box(40, 40);

$mode    = Imagine\Image\ImageInterface::THUMBNAIL_INSET;
// or
$mode    = Imagine\Image\ImageInterface::THUMBNAIL_OUTBOUND;

$imagine->open('/path/to/large_image.jpg')
    ->thumbnail($size, $mode)
    ->save('/path/to/thumbnail.png')
;
于 2013-01-14T00:34:06.760 回答