【发布时间】:2018-03-15 14:04:42
【问题描述】:
我正在创建一个图像大小调整工具。选择等是使用 JavaScript 完成的,然后将值发送到 PHP。那工作得很好。但是,图像未正确调整大小。新图像获得正确的宽度/高度,但图像的选定部分被“缩放”,并且与选择的图像相比,图像的更多部分被返回。下图中的示例。
调整大小前的图像宽度/高度
宽度:280px 高度:210px
调整大小细节
输出图像
<?php
$width = 163.094;
$height = 148.5;
$new_width = 62.18745;
$new_height = 69.87505;
$dst_left = 0;
$dst_top = 0;
$src_left = 49.15625;
$src_top = 39.03125;
header('Content-Type: image/png');
// Create a empty image
$new_image = imagecreatetruecolor($new_width, $new_height);
// Set background transparent
imagefill($new_image,0,0,0x7fff0000);
// Create image
$image = imagecreatefrompng("../../uploads/img/imageNX4jDQ.png");
// Create new image
imagecopyresampled($new_image, $image, $dst_left, $dst_top, $src_left, $src_top, $new_width, $new_height, $width, $height);
// Keep transparency
imageAlphaBlending($new_image, true);
imageSaveAlpha($new_image, true);
// Output
$test = imagepng($new_image, "../../uploads/img/test.png");
$test;
?>
【问题讨论】:
-
看看你对 imagecopyresampled() 的论证
-
我找不到他们有什么问题?我做错了什么?
标签: php