gpt4 book ai didi

javascript - 从 php 文件生成背景图像

转载 作者:行者123 更新时间:2023-12-03 12:01:51 24 4
gpt4 key购买 nike

我必须从 php 文件生成背景图像,但无法使其正常工作。这是我的情况:

我有一个 javascript 行,我在其中调用 php 文件,如下所示:

document.body.style.background = 'url(http:/...../getBackground.php) no-repeat center center fixed';

在 getBackground.php 文件中,我必须从包含许多(可以更改)图像的文件夹中生成背景图像。我是这样做的:

$dir = 'images/';
$arr = scandir($dir);
$images = array();
$pattern = '([^\s]+(\.(?i)(jpg|png|gif|bmp))$)';
foreach($arr as $file){if(preg_match($pattern, $file)){$images[] = $file;}} //get only the images from the folder
$count = count($images);
$i = mt_rand(0, $count - 1); // pick a random image

header("Content-type: image/png");
$photo = 'images/' . $images[$i];
$src_img = imagecreatefrompng($photo);
imagepng($src_img);

但是出了点问题,因为我没有正确显示图像。有人可以帮忙吗?我缺少什么?

非常感谢!干杯!

最佳答案

部分问题是您非常具体地输出 png 数据,但允许 jpg、png、gif 和 bmp 源文件。

这在服务器上应该会更快更容易。这不会每次都重新创建图像,它只是遍历现有图像。

<?php

$dir = 'images';
$ext = 'jpg,gif,png'; // List the desired image extensions here, comma separated.

$images = glob($dir.'/*.{'.$ext.'}', GLOB_BRACE);
$random = $images[array_rand($images)];
$image_type = exif_imagetype($random);

header("Content-type: " . image_type_to_mime_type($image_type));
readfile($random);

?>

关于javascript - 从 php 文件生成背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25378365/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com