如何编辑 PHP GD 中 2 个帖子的文本颜色
How to edit the text color of 2 posts in PHP GD
我想问一下,我有一个网络报价机,执行代码如下,
<?php
if(isset($_POST['execute'])) {
echo "<label>Result :</label>";
$folder = "files/quote/";
$overlay = $folder."overlay.png";
$font_quote = "files/_font/"."Ubuntu-Medium.ttf";
$font_copyright = "files/_font/"."Ubuntu-Medium.ttf";
$filename = $folder.md5(rand(000,999)).".png";
$quote = @$_POST['quote'] ? $_POST['quote'] : 'YOUR QUOTE';
$copyright = @$_POST['copyright'] ? $_POST['copyright'] : 'Username';
$backgrond = @$_POST['background'];
if (!filter_var($backgrond, FILTER_VALIDATE_URL) === false) {
$bg = $backgrond;
}else {
$bg = get_redirect_target('https://source.unsplash.com/640x640/?'.urlencode($backgrond));
}
$image = new PHPImage();
$image->setQuality(10);
$image->setDimensionsFromImage($overlay);
$image->draw($bg);
$image->draw($overlay, '50%', '75%');
$image->setFont($font_quote);
$image->setTextColor(array(255, 255, 255));
$image->setAlignVertical('center');
$image->setAlignHorizontal('center');
$image->textBox($quote, array(
'fontSize' => 28,
'x' => 130,
'y' => 240,
'width' => 380,
'height' => 200,
'debug' => false
));
$image->setFont($font_copyright);
$image->setTextColor(array(230, 209, 65));
$image->text('CopyRight © '.$copyright, array(
'fontSize' => 15,
'x' => 0,
'y' => 535,
'width' => 640,
'height' => 20,
'debug' => false
));
$image->save($filename);
$imagebase64 = "data:image/png;base64,".base64_encode(file_get_contents($filename));
echo "<a href='".$imagebase64."' target='_blank' download='$filename'><img src='".$imagebase64."'/></a>";
unlink($filename);
}
?>
问题:
1中的copyright
字代码是否可以做成2色,不是只有1色,代码还是1色也就是黄色,所以如果有投稿,颜色是白色Copyright ©
而黄色是 username
?
你可以试试这个
<?php
if(isset($_POST['execute'])) {
echo "<label>Result :</label>";
$folder = "files/quote/";
$overlay = $folder."overlay.png";
$font_quote = "files/_font/"."Ubuntu-Medium.ttf";
$font_copyright = "files/_font/"."Ubuntu-Medium.ttf";
$filename = $folder.md5(rand(000,999)).".png";
$quote = @$_POST['quote'] ? $_POST['quote'] : 'YOUR QUOTE';
$copyright = @$_POST['copyright'] ? $_POST['copyright'] : 'Username';
$backgrond = @$_POST['background'];
if (!filter_var($backgrond, FILTER_VALIDATE_URL) === false) {
$bg = $backgrond;
}else {
$bg = get_redirect_target('https://source.unsplash.com/640x640/?'.urlencode($backgrond));
}
$image = new PHPImage();
$image->setQuality(10);
$image->setDimensionsFromImage($overlay);
$image->draw($bg);
$image->draw($overlay, '50%', '75%');
$image->setFont($font_quote);
$image->setTextColor(array(255, 255, 255));
$image->setAlignVertical('center');
$image->setAlignHorizontal('center');
$image->textBox($quote, array(
'fontSize' => 28,
'x' => 130,
'y' => 240,
'width' => 380,
'height' => 200,
'debug' => false
));
$image->setFont($font_copyright);
$image->setTextColor(array(255, 255, 255));
$image->text('CopyRight © ', array(
'fontSize' => 15,
'x' => 0,
'y' => 535,
'width' => 640,
'height' => 20,
'debug' => false
));
$image->setFont($font_copyright);
$image->setTextColor(array(230, 209, 65));
$image->text($copyright, array(
'fontSize' => 15,
'x' => 100,
'y' => 535,
'width' => 640,
'height' => 20,
'debug' => false
));
$image->save($filename);
$imagebase64 = "data:image/png;base64,".base64_encode(file_get_contents($filename));
echo "<a href='".$imagebase64."' target='_blank' download='$filename'><img src='".$imagebase64."'/></a>";
unlink($filename);
}
?>
如果您注意到了,我已将您的版权文本与用户名变量分开。
我把它们都放在同一个 Y 轴上但不同的 X 轴上,就像在图表上绘图一样。
我也给了他们不同的颜色但相同的字体。
您可以调整版权 X 位置,以防 100 离用户名太远或太近
我想问一下,我有一个网络报价机,执行代码如下,
<?php
if(isset($_POST['execute'])) {
echo "<label>Result :</label>";
$folder = "files/quote/";
$overlay = $folder."overlay.png";
$font_quote = "files/_font/"."Ubuntu-Medium.ttf";
$font_copyright = "files/_font/"."Ubuntu-Medium.ttf";
$filename = $folder.md5(rand(000,999)).".png";
$quote = @$_POST['quote'] ? $_POST['quote'] : 'YOUR QUOTE';
$copyright = @$_POST['copyright'] ? $_POST['copyright'] : 'Username';
$backgrond = @$_POST['background'];
if (!filter_var($backgrond, FILTER_VALIDATE_URL) === false) {
$bg = $backgrond;
}else {
$bg = get_redirect_target('https://source.unsplash.com/640x640/?'.urlencode($backgrond));
}
$image = new PHPImage();
$image->setQuality(10);
$image->setDimensionsFromImage($overlay);
$image->draw($bg);
$image->draw($overlay, '50%', '75%');
$image->setFont($font_quote);
$image->setTextColor(array(255, 255, 255));
$image->setAlignVertical('center');
$image->setAlignHorizontal('center');
$image->textBox($quote, array(
'fontSize' => 28,
'x' => 130,
'y' => 240,
'width' => 380,
'height' => 200,
'debug' => false
));
$image->setFont($font_copyright);
$image->setTextColor(array(230, 209, 65));
$image->text('CopyRight © '.$copyright, array(
'fontSize' => 15,
'x' => 0,
'y' => 535,
'width' => 640,
'height' => 20,
'debug' => false
));
$image->save($filename);
$imagebase64 = "data:image/png;base64,".base64_encode(file_get_contents($filename));
echo "<a href='".$imagebase64."' target='_blank' download='$filename'><img src='".$imagebase64."'/></a>";
unlink($filename);
}
?>
问题:
1中的copyright
字代码是否可以做成2色,不是只有1色,代码还是1色也就是黄色,所以如果有投稿,颜色是白色Copyright ©
而黄色是 username
?
你可以试试这个
<?php
if(isset($_POST['execute'])) {
echo "<label>Result :</label>";
$folder = "files/quote/";
$overlay = $folder."overlay.png";
$font_quote = "files/_font/"."Ubuntu-Medium.ttf";
$font_copyright = "files/_font/"."Ubuntu-Medium.ttf";
$filename = $folder.md5(rand(000,999)).".png";
$quote = @$_POST['quote'] ? $_POST['quote'] : 'YOUR QUOTE';
$copyright = @$_POST['copyright'] ? $_POST['copyright'] : 'Username';
$backgrond = @$_POST['background'];
if (!filter_var($backgrond, FILTER_VALIDATE_URL) === false) {
$bg = $backgrond;
}else {
$bg = get_redirect_target('https://source.unsplash.com/640x640/?'.urlencode($backgrond));
}
$image = new PHPImage();
$image->setQuality(10);
$image->setDimensionsFromImage($overlay);
$image->draw($bg);
$image->draw($overlay, '50%', '75%');
$image->setFont($font_quote);
$image->setTextColor(array(255, 255, 255));
$image->setAlignVertical('center');
$image->setAlignHorizontal('center');
$image->textBox($quote, array(
'fontSize' => 28,
'x' => 130,
'y' => 240,
'width' => 380,
'height' => 200,
'debug' => false
));
$image->setFont($font_copyright);
$image->setTextColor(array(255, 255, 255));
$image->text('CopyRight © ', array(
'fontSize' => 15,
'x' => 0,
'y' => 535,
'width' => 640,
'height' => 20,
'debug' => false
));
$image->setFont($font_copyright);
$image->setTextColor(array(230, 209, 65));
$image->text($copyright, array(
'fontSize' => 15,
'x' => 100,
'y' => 535,
'width' => 640,
'height' => 20,
'debug' => false
));
$image->save($filename);
$imagebase64 = "data:image/png;base64,".base64_encode(file_get_contents($filename));
echo "<a href='".$imagebase64."' target='_blank' download='$filename'><img src='".$imagebase64."'/></a>";
unlink($filename);
}
?>
如果您注意到了,我已将您的版权文本与用户名变量分开。 我把它们都放在同一个 Y 轴上但不同的 X 轴上,就像在图表上绘图一样。 我也给了他们不同的颜色但相同的字体。
您可以调整版权 X 位置,以防 100 离用户名太远或太近