如何使用PHP调整图片的亮度和对比度

如何使用PHP调整图片的亮度和对比度

如何使用PHP调整图片的亮度和对比度

亮度和对比度是调整图片视觉效果的重要因素之一。在图像处理中,通过调整亮度可以使图片变得更明亮或更暗,而通过调整对比度可以增强或减弱图片中不同颜色之间的差异。

PHP作为一种常用的服务器端脚本语言,提供了丰富的图像处理功能和库。本文将介绍如何使用PHP调整图片的亮度和对比度,并附上代码示例。

  • 调整图片亮度
  • 调整图片的亮度可以通过改变像素的RGB值来实现。下面是一个示例函数,使用PHP GD库来调整图片的亮度。

    function adjustBrightness($imagePath, $brightness) {
    $image = imagecreatefromjpeg($imagePath);
    $width = imagesx($image);
    $height = imagesy($image);

    for ($x = 0; $x < $width; $x++) {
    for ($y = 0; $y > 16) & 0xFF;
    $oldG = ($rgb >> 8) & 0xFF;
    $oldB = $rgb & 0xFF;

    $newR = $oldR + $brightness;
    $newG = $oldG + $brightness;
    $newB = $oldB + $brightness;

    $newR = max(0, min(255, $newR));
    $newG = max(0, min(255, $newG));
    $newB = max(0, min(255, $newB));

    $newRgb = ($newR 16) & 0xFF;
    $oldG = ($rgb >> 8) & 0xFF;
    $oldB = $rgb & 0xFF;

    $newR = ($oldR - 127) * $contrast + 127;
    $newG = ($oldG - 127) * $contrast + 127;
    $newB = ($oldB - 127) * $contrast + 127;

    $newR = max(0, min(255, $newR));
    $newG = max(0, min(255, $newG));
    $newB = max(0, min(255, $newB));

    $newRgb = ($newR