如何使用PHP创建文本图像时添加背景图像? [英] How to add a background image while creating a text image using php?

查看:362
本文介绍了如何使用PHP创建文本图像时添加背景图像?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我目前正在使用以下脚本 -

I'm currently using the following script--

<?php
// Set the content-type
header('Content-type: image/png');

// Create the image
$im = imagecreatetruecolor(400, 30);

// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 115, 150, 195);
imagefilledrectangle($im, 0, 0, 399, 29, $white);

// The text to draw
$text = 'My Name';
// Replace path by your own font path
$font = 'AGENCYB.TTF';

// Add some shadow to the text
imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);

// Add the text
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);

// Using imagepng() results in clearer text compared with imagejpeg()
imagepng($im);
imagedestroy($im);
?>

但我也要添加背景图片。请帮助,我是这个功能的新手。

But I want to add a background image too. Please help, I'm new to this function especially.

推荐答案

以下是否适合您?您想要打开要用作背景的图像,然后将文本写在顶部。

Would something like the following work for you? You want to open the image you want to use as the background, and then write your text over the top.

    <?php
    // Set the content-type
    header('Content-type: image/png');

    /* Attempt to open */
        $im = @imagecreatefrompng('backgroundimage.png');

        /* See if it failed */
        if(!$im)
        {
            // Create some colors
        $white = imagecolorallocate($im, 255, 255, 255);
        $grey = imagecolorallocate($im, 128, 128, 128);
        $black = imagecolorallocate($im, 115, 150, 195);
        imagefilledrectangle($im, 0, 0, 399, 29, $white);

        // The text to draw
        $text = 'My Name';
        // Replace path by your own font path
        $font = 'AGENCYB.TTF';

        // Add some shadow to the text
        imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);

        // Add the text
        imagettftext($im, 20, 0, 10, 20, $black, $font, $text);

        // Using imagepng() results in clearer text compared with imagejpeg()
        imagepng($im);
        imagedestroy($im);


        }else
    {
         //you want to do something here if your image didn't open like maybe fpassthru an alternative image
    }
?>

这篇关于如何使用PHP创建文本图像时添加背景图像?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆