示例#1
0
文件: Font.php 项目: nicodmf/Imagine
 /**
  * (non-PHPdoc)
  * @see Imagine\Image\AbstractFont::box()
  */
 public function box($string, $angle = 0)
 {
     $text = new \ImagickDraw();
     $text->setFont($this->file);
     $text->setFontSize($this->size);
     $text->setFontStyle(\Imagick::STYLE_OBLIQUE);
     $info = $this->imagick->queryFontMetrics($text, $string);
     $box = new Box($info['textWidth'], $info['textHeight']);
     return $box;
 }
示例#2
0
<?php

$draw = new ImagickDraw();
$font_path = __DIR__ . '/php_imagick_tests/anonymous_pro_minus.ttf';
$draw->setFont($font_path);
var_dump($draw->getFont() === $font_path);
try {
    $draw->setFont(">_<");
} catch (Exception $ex) {
    var_dump("setFont");
}
$draw->setFontSize(12);
var_dump($draw->getFontSize());
$draw->setFontStretch(Imagick::STRETCH_SEMIEXPANDED);
var_dump($draw->getFontStretch() === Imagick::STRETCH_SEMIEXPANDED);
$draw->setFontStyle(Imagick::STYLE_ITALIC);
var_dump($draw->getFontStyle() === Imagick::STYLE_ITALIC);
$draw->setFontWeight(500);
var_dump($draw->getFontWeight());
try {
    $draw->setFontWeight(1000);
} catch (ImagickDrawException $ex) {
    var_dump($ex->getMessage());
}
示例#3
0
function setFontStyle($fillColor, $strokeColor, $backgroundColor)
{
    $draw = new \ImagickDraw();
    $draw->setStrokeColor($strokeColor);
    $draw->setFillColor($fillColor);
    $draw->setStrokeWidth(1);
    $draw->setFontSize(36);
    $draw->setFontStyle(\Imagick::STYLE_NORMAL);
    $draw->annotation(50, 50, "Lorem Ipsum!");
    $draw->setFontStyle(\Imagick::STYLE_ITALIC);
    $draw->annotation(50, 100, "Lorem Ipsum!");
    $draw->setFontStyle(\Imagick::STYLE_OBLIQUE);
    $draw->annotation(50, 150, "Lorem Ipsum!");
    $imagick = new \Imagick();
    $imagick->newImage(350, 300, $backgroundColor);
    $imagick->setImageFormat("png");
    $imagick->drawImage($draw);
    header("Content-Type: image/png");
    echo $imagick->getImageBlob();
}