Каков путь для шрифта symfony

#php #symfony #fonts

#php #symfony #шрифты

Вопрос:

Я пытаюсь сделать некоторый текст и преобразовать его в изображение.

Я получил некоторый код из руководства по php.

Я работаю над этим в symfony 3.1

Единственная проблема, с которой я сталкиваюсь, это как задать путь для шрифта.

Файл roboto-regular.ttf находится в моем каталоге /web.

Мой код:

     //setting 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, 0, 0, 0);
    imagefilledrectangle($im, 0, 0, 399, 29, $white);

    // The text to draw
    $text = 'Testing';
    // Replace path by your font path
    $font = 'Roboto-Regular.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() resulst in clearer text compared with imagejpeg()
    imagepng($im);
    imagedestroy($im);
  

Ответ №1:

На самом деле нет прямого способа получить путь к webdir в Symfony2, поскольку фреймворк полностью независим от webdir. Но вы можете использовать getRootDir() :

 $path = $this->get('kernel')->getRootDir() . '/../web';
  

Ответ №2:

 $this->get('request')->getBasePath();
  

$this->get('request')->getBasePath(); напрямую поместит вас в веб-каталог