我正在尝试找出一种方法,仅对图像的一部分进行像素化,但迄今为止没有成功。
目前,我正在按照以下教程操作:http://www.mutinydesign.co.uk/free-scripts/live-photo-blurring-script/ 使用jQuery插件“imgAreaSelect”,使用户可以从UI中选择图片的一部分。 然后单击'pixelate'。 然后,将通过Ajax调用写在php中的imagemagick的pixelate函数。 pixelate函数如下:
目前,我正在按照以下教程操作:http://www.mutinydesign.co.uk/free-scripts/live-photo-blurring-script/ 使用jQuery插件“imgAreaSelect”,使用户可以从UI中选择图片的一部分。 然后单击'pixelate'。 然后,将通过Ajax调用写在php中的imagemagick的pixelate函数。 pixelate函数如下:
<?php
$x1 = $_GET['x1'];
$y1 = $_GET['y1'];
$x2 = $_GET['x2'];
$y2 = $_GET['y2'];
$inputImage = $_GET['inputImage'];
$outputImage = 'output_'.$_GET['inputImage'];
exec( "convert {$inputImage} \( +clone -scale 20% -scale 500% \) \
\( +clone -gamma 0 -fill white \
-draw 'rectangle {$x1},{$y1} {$x2},{$y2}' -blur 10x4 \) \
-composite {$outputImage}" );
echo $outputImage;
?>
这种方法可以实现,但会导致整个图片像素化而不仅仅是所选部分。有什么想法或建议吗?是否有人能够实现类似的效果?