Вход Регистрация
Файл: concrete5.7.5.6/concrete/vendor/imagine/imagine/lib/Imagine/Gmagick/Font.php
Строк: 57
<?php

/*
 * This file is part of the Imagine package.
 *
 * (c) Bulat Shakirzyanov <mallluhuct@gmail.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace ImagineGmagick;

use 
ImagineImageAbstractFont;
use 
ImagineImageBox;
use 
ImagineImagePaletteColorColorInterface;

/**
 * Font implementation using the Gmagick PHP extension
 */
final class Font extends AbstractFont
{
    
/**
     * @var Gmagick
     */
    
private $gmagick;

    
/**
     * @param Gmagick       $gmagick
     * @param string         $file
     * @param integer        $size
     * @param ColorInterface $color
     */
    
public function __construct(Gmagick $gmagick$file$sizeColorInterface $color)
    {
        
$this->gmagick $gmagick;

        
parent::__construct($file$size$color);
    }

    
/**
     * {@inheritdoc}
     */
    
public function box($string$angle 0)
    {
        
$text  = new GmagickDraw();

        
$text->setfont($this->file);
        
/**
         * @see http://www.php.net/manual/en/imagick.queryfontmetrics.php#101027
         *
         * ensure font resolution is the same as GD's hard-coded 96
         */
        
$text->setfontsize((int) ($this->size * (96 72)));
        
$text->setfontstyle(Gmagick::STYLE_OBLIQUE);

        
$info $this->gmagick->queryfontmetrics($text$string);

        
$box = new Box($info['textWidth'], $info['textHeight']);

        return 
$box;
    }
}
Онлайн: 1
Реклама