使用claviska的SimpleImage在图像上添加文本

时间:2018-07-20 05:46:22

标签: php gd gdlib

我正在尝试使用claviska(https://github.com/claviska/SimpleImage#texttext-options-boundary)的SimpleImage在图像中添加文字。

这是我遇到的错误:

Fatal error: Uncaught Error: Cannot pass parameter 3 by reference in C:\xampp\htdocs\SimpleImage-master\index.php:19 Stack trace: #0 {main} thrown in C:\xampp\htdocs\SimpleImage-master\index.php on line 19

这是我的代码

<?php
require 'src/claviska/SimpleImage.php';

try {
  // Create a new SimpleImage object
  $image = new \claviska\SimpleImage();

  $image
    ->fromFile('background.png')                     // load image.jpg
    ->autoOrient()                              // adjust orientation based on exif data
    ->resize(500, 500)                          // resize to 320x200 pixels
    ->flip('x')                                 // flip horizontally
    ->colorize('DarkBlue')                      // tint dark blue
    //->border('black', 10)                       // add a 10 pixel black border

    ->overlay('img.jpg', 'center')  // add a watermark image
    ->toFile('new-image.png', 'image/png')
    ->text('text here', 'font.ttf', 32, '#FFFFFF', 'top', 0, 20)      
    // convert to PNG and save a copy to new-image.png
    ->toScreen();                               // output to the screen


} catch(Exception $err) {
  // Handle errors
  echo $err->getMessage();
}

?>

1 个答案:

答案 0 :(得分:0)

文本选项需要作为数组传递。

text('text here', array(
'fontFile' => 'font.ttf',
'size' => 32,
'color' => '#FFFFFF',
'anchor' => 'top')
))

有Claviska GitHub文档中的文本选项的完整列表: https://github.com/claviska/SimpleImage