php水印和保存图像
我试图添加一个水印的图像,然后保存到另一个文件与php的图像。这是我到目前为止的代码,但由于某些原因,水印没有出现在新目录中的图像上。 原始图像保存在路径php水印和保存图像,php,Php,我试图添加一个水印的图像,然后保存到另一个文件与php的图像。这是我到目前为止的代码,但由于某些原因,水印没有出现在新目录中的图像上。 原始图像保存在路径$old\u path中,我想在应用水印后将其保存到$new\u path $old_path = "images_upload/".$name.".".$type; $new_path = "images_main/".$name.".".$type; ////////////////////water mark $m
$old\u path
中,我想在应用水印后将其保存到$new\u path
$old_path = "images_upload/".$name.".".$type;
$new_path = "images_main/".$name.".".$type;
////////////////////water mark
$main_image = imagecreatefromstring(file_get_contents($old_path));
// Load the logo image
$logoImage = imagecreatefrompng("assets/watermark.png");
imagealphablending($logoImage, true);
// Get dimensions
$imageWidth=imagesx($main_image);
$imageHeight=imagesy($main_image);
$logoWidth=imagesx($logoImage);
$logoHeight=imagesy($logoImage);
// Paste the logo
imagecopy(
// source
$main_image,
// destination
$logoImage,
// destination x and y
$imageWidth-$logoWidth, $imageHeight-$logoHeight,
// source x and y
0, 0,
// width and height of the area of the source to copy
$logoWidth, $logoHeight);
////////////////////////
rename($old_path, $new_path);// save image
请告诉我我做错了什么。您没有在任何地方输出图像。您需要输出它。您现在所做的就是将旧文件重命名为新文件
尝试使用
imagepng()
或与您的格式相当的格式 您没有在任何地方输出图像。您需要输出它。您现在所做的就是将旧文件重命名为新文件
尝试使用
imagepng()
或与您的格式相当的格式 您从不将imagecopy
结果写入任何文件,只需将旧图像重命名为新路径-改用:
您从不将
imagecopy
结果写入任何文件,只需将旧图像重命名为新路径-改用:
我不想将图像回显到浏览器。我想在应用水印后将其从$old_path复制到$new_path。(因此$new_path中的新图像将具有水印)我测试了此函数不接受新文件路径的参数。现在应该如何生成新的图像文件?@gadget00当然可以,请参阅链接文档。我不想将图像回显到浏览器。我想在应用水印后将其从$old_path复制到$new_path。(因此$new_path中的新图像将具有水印)我测试了此函数不接受新文件路径的参数。现在应该怎么做才能生成新的图像文件?@gadget00当然可以,请参阅链接文档。我正在使用重命名功能复制图像。@user1481850,我想您不明白。使用
imagecopy
时,操作仅在内存中进行。在您选择保存之前,它们不会保存到文件中。请阅读我指给您的文档。我正在使用重命名函数复制图像。@user1481850,我想您不明白。使用imagecopy
时,操作仅在内存中进行。在您选择保存之前,它们不会保存到文件中。阅读我指给你的文档。
imagejpeg($logoImage, $new_path);