找漂亮的圖片素材,盡在圖片資訊網
当前位置:首页 » 动态图片 » php动态图片
扩展阅读
图片在哪里啊我没看到 2025-06-02 17:32:31
苏二妹取景图片是哪里 2025-06-02 17:06:09

php动态图片

发布时间: 2022-04-16 11:58:55

⑴ php 如何将GIF动态图像缩放成指定大小后依旧保持动态

此js代码来自网络logo的处理,还是很好用的,需要注意的地方就是proMaxHeight,proMaxWidth参数的动态获取,你可以直接用php赋值,或者用smartyphplib之类的模板,这个不难

<htmlxmlns="http://www.w3.org/1999/xhtml"xml:lang="zh-CN"lang="zh-CN">

<head>

<metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/>

<title>test</title>

<scriptlanguage=Javascript>

varproMaxHeight=50;

varproMaxWidth=50;

functionproDownImage(ImgD){

varimage=newImage();

image.src=ImgD.src;

if(image.width>0&&image.height>0){

varrate=(proMaxWidth/image.width<proMaxHeight/image.height)?proMaxWidth/image.width:proMaxHeight/image.height;

if(rate<=1){

ImgD.width=image.width*rate;

ImgD.height=image.height*rate;

}

else{

ImgD.width=image.width;

ImgD.height=image.height;

}

}

}

//-->

</script>

</head>

<bodybgcolor="#ffffff"topmargin="0"leftmargin="0"scroll="no">

<imgsrc="./pp.gif"onload=proDownImage(this);/>

</body>

</html>

⑵ PHP动态图像的创建要如何实现

可以使用图像创建函数对图像进行处理,例如把一个较大图像作成一个小图像:
假设你有一幅图像,想从中裁剪出一个35×35大小的图像。你所需要作的是创建一个35×35大小的空白图像,创建一个包含原来图像的图像流,然后把一个经过调整大小的原来的图像放到新的空白图像中。
要完成这一任务的关键函数是ImageCopyResized(),它要求的格式如下所示:
ImageCopyResized([new image handle],[original image handle],[new image X], [new Image Y], [original image X], [original image Y], [new image X], [new image Y], [original image X], [original image Y])。
<? /* 发送一个头部,以便让浏览器知道该文件所包含的内容类型*/
header("Content-type: image/png");
/* 建立保存新图像高度和宽度的变量*/
$newWidth = 35;
$newHeight = 35;
/* 建立给定高度和宽度的新的空白图像*/
$newImg = ImageCreate($newWidth,$newHeight);
/* 从原来较大的图像中得到数据*/
$origImg = ImageCreateFromPNG("test.png");
/*拷贝调整大小后的图像,使用ImageSX()、ImageSY()得到原来的图像在X、Y方面上的大小 */
ImageCopyResized($newImg,$origImg,0,0,0,0,$newWidth,$newHeight,ImageSX($origImg),ImageSY($origImg));
/*创建希望得到的图像,释放内存 */
ImagePNG($newImg);
ImageDestroy($newImg); ?>

⑶ php 如何让gif动图转换为gif静图

以下是一个缩略图生成程序,我加了注释,动态gif动画处理后就变成静态了,程序还可以加水印,当然传参你留空就不会加了。使用有困难的话给我留言。
-----------------------------
/*构造函数-生成缩略图+水印,参数说明:$srcFile-图片文件名,$dstFile-另存文件名,$markwords-水印文字,$markimage-水印图片,$dstW-图片保存宽度,$dstH-图片保存高度,$rate-图片保存品质*/
function makethumb($srcFile,$dstFile,$dstW,$dstH,$rate=100,$markwords=null,$markimage=null)
{
$data = GetImageSize($srcFile);
switch($data[2])
{
case 1:
$im=@ImageCreateFromGIF($srcFile);
break;
case 2:
$im=@ImageCreateFromJPEG($srcFile);
break;
case 3:
$im=@ImageCreateFromPNG($srcFile);
break;
}
if(!$im) return False;
$srcW=ImageSX($im);
$srcH=ImageSY($im);
$dstX=0;
$dstY=0;
if ($srcW*$dstH>$srcH*$dstW)
{
$fdstH = round($srcH*$dstW/$srcW);
$dstY = floor(($dstH-$fdstH)/2);
$fdstW = $dstW;
}
else
{
$fdstW = round($srcW*$dstH/$srcH);
$dstX = floor(($dstW-$fdstW)/2);
$fdstH = $dstH;
}
$ni=ImageCreateTrueColor($dstW,$dstH);
$dstX=($dstX<0)?0:$dstX;
$dstY=($dstX<0)?0:$dstY;
$dstX=($dstX>($dstW/2))?floor($dstW/2):$dstX;
$dstY=($dstY>($dstH/2))?floor($dstH/s):$dstY;
$white = ImageColorAllocate($ni,255,255,255);
$black = ImageColorAllocate($ni,0,0,0);
imagefilledrectangle($ni,0,0,$dstW,$dstH,$white);// 填充背景色
ImageCopyResized($ni,$im,$dstX,$dstY,0,0,$fdstW,$fdstH,$srcW,$srcH);
if($markwords!=null)
{
$markwords=iconv("gb2312","UTF-8",$markwords);
//转换文字编码
ImageTTFText($ni,20,30,450,560,$black,"simhei.ttf",$markwords); //写入文字水印
//参数依次为,文字大小|偏转度|横坐标|纵坐标|文字颜色|文字类型|文字内容
}
elseif($markimage!=null)
{
$wimage_data = GetImageSize($markimage);
switch($wimage_data[2])
{
case 1:
$wimage=@ImageCreateFromGIF($markimage);
break;
case 2:
$wimage=@ImageCreateFromJPEG($markimage);
break;
case 3:
$wimage=@ImageCreateFromPNG($markimage);
break;
}
image($ni,$wimage,500,560,0,0,88,31); //写入图片水印,水印图片大小默认为88*31
imagedestroy($wimage);
}
ImageJpeg($ni,$dstFile,$rate);
ImageJpeg($ni,$srcFile,$rate);
imagedestroy($im);
imagedestroy($ni);
}
?>

⑷ php动态生成图片

用imageline(x1,y1,x2,y2)函数画7(因为计算器风格的8字是由7条线段组成的)条直线,坐标分别是每条直线(线段)的端点。

⑸ PHP怎么对GIF动图进行压缩和上传

单帧 gif 可以转换成 jpg/png/webp 等其他图片格式来节约体积。

多帧 gif 可以使用 gifsicle 压缩,也可以转换成 apng/webp 来节约体积,国外比较流行的一种做法是把 gif 转换成 mp4视频。

用哪种方法取决于你的用户端,压缩的效果可以通过 compression ratio/ssim/psnr 等来衡量,寻找一个合适的压缩参数。

如果用到的库没有 PHP binding,那么在条件允许的情况下可以通过 popen() 和标准流来集成。

⑹ 如何在php中生成gif动画

这个就需要加载gd2的扩展库了,在这个库里可以生成png,jpeg,gif等等动画用来作为验证码和网页图片

⑺ PHP动态网页上的已经加了动态效果的图片要怎样才能更改呢

呵呵,目测楼主用的dreamver的设计模式看的,呵呵那个图片代表一段php代码。

⑻ PHP如何判断一个gif图片是否为动态图片

代码如下:
/*
* 判断图片是否为动态图片(动画)
*/
function isAnimatedGif($filename) {
$fp=fopen($filename,'rb');
$filecontent=fread($fp,filesize($filename));
fclose($fp);
return strpos($filecontent,chr(0x21).chr(0xff).chr(0x0b).'NETSCAPE2.0')===FALSE?0:1;
}
或者这样做
用PHP判断一个gif图片是不是动画(多帧)

⑼ php如何下载动态图片保存到本地

php 远程下载文件

function http($url, $file="", $timeout=60) {
$file = empty($file) ? pathinfo($url,PATHINFO_BASENAME) : $file;
$dir = pathinfo($file,PATHINFO_DIRNAME);
!is_dir($dir) && @mkdir($dir,0755,true);
$url = str_replace(" ","%20",$url);

if(function_exists('curl_init')) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$temp = curl_exec($ch);
if(@file_put_contents($file, $temp) && !curl_error($ch)) {
return $file;
} else {
return false;
}
} else {
$opts = array(
"http"=>array(
"method"=>"GET",
"header"=>"",
"timeout"=>$timeout)
);
$context = stream_context_create($opts);
if(@($url, $file, $context)) {
//$http_response_header
return $file;
} else {
return false;
}
}
}

⑽ php怎么把动态图添加到网页背景

动态图片一般是.gif格式的,这个你只要设置css就行,和php基本无关,要不就是你的问题表达不清楚。
css样式如下:

body{
background:url(dongtai.gif);

}