如何使用PHP GD库制作锐度滤镜?
所以这...
变成这样
如果PHP不可能,那么还有什么其他语言可以呢?
pes8fvy91#
我想他想使用PHP的GD库。很简单:function.imageconvolution。只需在页面上搜索“锐化”,您将看到一个可用于锐化的矩阵。它工作得很好,尽管如果你想做更多的事情,我建议你使用ImageMagick。
c6ubokkw2#
如果PHP配置中安装了ImageMagick,则可以使用Imagick::adaptiveSharpenImage来自手册:
Imagick::adaptiveSharpenImage
<?php try { $image = new Imagick('image.png'); $image->adaptiveSharpenImage(2,1); } catch(ImagickException $e) { echo 'Error: ' , $e->getMessage(); die(); } header('Content-type: image/png'); echo $image; ?>
http://php.net/manual/en/function.imagick-adaptivesharpenimage.php
xsuvu9jc3#
有一个名为Unsharp Mask PHP的库,它完全可以满足您的需求。http://vikjavev.no/computing/ump.php
ruyhziif4#
ForGD:这是我使用的函数:
function sharpen($gdImage) { // Matrix $sharpen = array( array(0.0, -0.5, 0.0), array(-0.5, 5, -0.5), array(0.0, -0.5, 0.0) ); // Calculate the sharpen divisor $divisor = array_sum(array_map('array_sum', $sharpen)); // Apply matrix imageconvolution($image, $sharpen, $divisor, 0); return $image; }
示例:
$im = @imagecreatefromjpeg("test.jpg"); $im = sharpen($im); header('Content-Type: image/jpeg'); imagejpeg($im);
4条答案
按热度按时间pes8fvy91#
我想他想使用PHP的GD库。很简单:function.imageconvolution。只需在页面上搜索“锐化”,您将看到一个可用于锐化的矩阵。它工作得很好,尽管如果你想做更多的事情,我建议你使用ImageMagick。
c6ubokkw2#
如果PHP配置中安装了ImageMagick,则可以使用
Imagick::adaptiveSharpenImage
来自手册:
http://php.net/manual/en/function.imagick-adaptivesharpenimage.php
xsuvu9jc3#
有一个名为Unsharp Mask PHP的库,它完全可以满足您的需求。http://vikjavev.no/computing/ump.php
ruyhziif4#
ForGD:这是我使用的函数:
示例: