如何使用 php gd 加载和重复图像?

发布于 2024-09-29 17:51:59 字数 116 浏览 4 评论 0原文

假设我有一张宽度为 1px、高度为 40px 的图像。 我想用 imagecreatefrompng 加载它并希望 x 重复它,就像 css Repeat-x 一样。

PHP GD 可以做到这一点吗?

Suppose i have an image with width 1px and height 40px.
I want to load it with lets say imagecreatefrompng and want to x-repeat it, just like css repeat-x.

Is this possible with PHP GD?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

聚集的泪 2024-10-06 17:51:59

您必须指定输出图像的宽度,我选择了 1024 来演示:

$srcfile = 'bg.jpg';
$outfile = 'background.jpg';
list($src_w,$src_h,$src_type) = getimagesize($srcfile);

$out_w = 1024;
$out_h = $src_h;

$src = imagecreatefromjpeg($srcfile);
$out = imagecreatetruecolor($out_w, $out_h);

$curr_x = 0;
while($curr_x < $out_w){
    imagecopy($out, $src, $curr_x, 0, 0, 0, $src_w, $src_h);
    $curr_x += $src_w;
}

imagejpeg($out, $outfile, 100);
imagedestroy($src);
imagedestroy($out);

You have to specify width of output image, I have chosen 1024 to demonstrate:

$srcfile = 'bg.jpg';
$outfile = 'background.jpg';
list($src_w,$src_h,$src_type) = getimagesize($srcfile);

$out_w = 1024;
$out_h = $src_h;

$src = imagecreatefromjpeg($srcfile);
$out = imagecreatetruecolor($out_w, $out_h);

$curr_x = 0;
while($curr_x < $out_w){
    imagecopy($out, $src, $curr_x, 0, 0, 0, $src_w, $src_h);
    $curr_x += $src_w;
}

imagejpeg($out, $outfile, 100);
imagedestroy($src);
imagedestroy($out);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文