Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用php动态调整图像大小_Php_Image - Fatal编程技术网

使用php动态调整图像大小

使用php动态调整图像大小,php,image,Php,Image,我有一个图像,我将使用它作为背景图像,并将从数据库中提取一些其他图像,我想在这个图像中显示。因此,如果我只拉一幅图像,我希望背景图像的底部在第一幅图像后关闭,如果有多幅图像,我希望在这些图像显示后关闭。不使用单独图像的问题是,图像的边框具有设计格式,我无法单独显示它们 看看这个。左右边框的设计格式比裁剪并使用它们更复杂。如果有动态图像大小调整的建议吗?有。查看imageXXXX功能;您特别感兴趣的是imagecreate,imagecreatetruecolor,imagecreatefromp

我有一个图像,我将使用它作为背景图像,并将从数据库中提取一些其他图像,我想在这个图像中显示。因此,如果我只拉一幅图像,我希望背景图像的底部在第一幅图像后关闭,如果有多幅图像,我希望在这些图像显示后关闭。不使用单独图像的问题是,图像的边框具有设计格式,我无法单独显示它们


看看这个。左右边框的设计格式比裁剪并使用它们更复杂。如果有动态图像大小调整的建议吗?

有。查看
imageXXXX
功能;您特别感兴趣的是
imagecreate
imagecreatetruecolor
imagecreatefrompng
imagecopyresampled
imagecopyresized
,以及
imagepng
(假设您处理的是PNG图像——jpeg、gif和其他一些格式也有类似的加载/保存功能).

你试过了吗?我经常使用这个类,它非常干净和轻量级。我使用过它。

你应该尝试使用for PHP,尤其是看看。这使你可以非常轻松地进行一些基本的图像转换和操作

一个基本示例,使用两个GET参数,调整我们的
myImage.jpg
图像的大小,并将其输出为PNG图像:

<?php
// width and height
$w = $_GET['w'];
$h = $_GET['h'];
// load image
$image = imagecreatefromjpeg('myImage.jpg');
// create a new image resource for storing the resized image
$resized = imagecreatetruecolor($w, $h);
// copy the image
imagecopyresized($resized, $image, 0, 0, 0, 0, $w, $h, imagesx($image), imagesy($image));
// output the image as PNG
header('Content-type: image/png');
imagepng($resized);

我在php.net中尝试了上述函数的示例,但得到的只是一个黑色(或任何指定的颜色)重新调整了图像大小,但没有重新调整原始图像的大小。即使对于您的示例,我也正在调整黑色图像的大小。我做错了什么?好吧,问题是我必须先安装GD并修改php.ini,对吗?@Scorpion King:不,如果函数正常工作(即它们已定义),这意味着安装了GD。但您确定
'myImage.jpg'
或任何实际指向现有JPEG文件的内容吗?