Я использую следующий код для установки водяного знака, но он устанавливает водяной знак в центр, я хочу установить его в правом нижнем положении.
<?php
function watermarkImage($fileget, $watermarktext, $saveto)
{
list($width, $height) = getimagesize($fileget);
$image_p = imagecreatetruecolor($width, $height);
$size = getimagesize($fileget);
$dest_x = $size[0] - $width - 5;
$dest_y = $size[1] - $height - 5;
$image = imagecreatefromjpeg($fileget);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width, $height);
$white = imagecolorallocate($image_p, 255, 255, 255);
$font = FONT_PATH;
$font_size = 15;
$bbox = imagettfbbox($font_size, 0, $font, $watermarktext);
$x = $bbox[0] + (imagesx($image) / 2) - ($bbox[4] / 2) - 25;
$y = $bbox[1] + (imagesy($image) / 2) - ($bbox[5] / 2) - 5;
imagettftext($image_p, $font_size, 0, $x, $y, $white, $font, $watermarktext);
if ($saveto<>'') {
imagejpeg ($image_p, $saveto, 100);
} else {
header('Content-Type: image/jpeg');
imagejpeg($image_p, null, 100);
};
imagedestroy($image);
imagedestroy($image_p);
}
?>
Я имею в виду этот ответ: ответ-1
Как установить положение внизу справа направление?
Не делите x
а также y
положение по 2
, Вот почему это посередине. На следующих строках:
$x = $bbox[0] + (imagesx($image) / 2) - ($bbox[4] / 2) - 25;
$y = $bbox[1] + (imagesy($image) / 2) - ($bbox[5] / 2) - 5;
Это должно сработать, так как позиция будет справа внизу:
$x = $bbox[0] + (imagesx($image)) - ($bbox[4] / 2) - 25;
$y = $bbox[1] + (imagesy($image)) - ($bbox[5] / 2) - 5;
РЕДАКТИРОВАТЬ внизу справа:
$x = $bbox[0] + (imagesx($image)) - ($bbox[4] / 2) - 130;
$y = $bbox[1] + (imagesy($image)) - ($bbox[5] / 2) - 30;
Других решений пока нет …