使用PHP gd库提高图像质量

5

我不确定在哪里看到的图片托管网站,可以让你以大尺寸上传或对其进行锐化。

就我个人而言,我不记得或者不知道GD库有任何锐化图像的功能,这可能只是一个提高质量的不同词语。

如果有人知道锐化图像的函数,请告诉我,因为就我个人而言,我不知道Image Magic和/或GD库中是否有此类函数。

  • 提前致谢
4个回答

6
你可以使用带有锐化掩模的GD中的imageconvolution。来自http://adamhopkinson.co.uk/blog/2010/08/26/sharpen-an-image-using-php-and-gd/

PHP and GD can sharpen images by providing a matrix to imageconvolution:

// create the image resource from a file
$i = imagecreatefromjpeg('otter.jpg');

// define the sharpen matrix
$sharpen = array(
  array(0.0, -1.0, 0.0),
  array(-1.0, 5.0, -1.0),
  array(0.0, -1.0, 0.0)
);

// calculate the sharpen divisor
$divisor = array_sum(array_map('array_sum', $sharpen));

// apply the matrix
imageconvolution($i, $sharpen, $divisor, 0);

// output the image
header('Content-Type: image/jpeg');
imagejpeg($i);

5

有一个图像锐化功能,但个人从未使用过imageconvolution(),所以不太了解它。 - PT Desu
这就是大多数图像编辑器中的锐化/去锐化滤镜 - 一个带有矩阵的卷积函数。 - Marc B

1

我没有尝试过,但是this看起来就像你所需要的,至于ImageMagick方面。


0
在 PHP 的 GD 库中有一个带路径的文件。
lib/PHPImageWorkshop/Core/ImageWorkshopLayer.php

请前往保存公共函数,您可以将图像质量更改为100。 确保您要创建的图像类型。 希望这能帮到您。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接