Я пытаюсь сделать pangocairo, чтобы написать текст на изображении. Я следил за несколькими потоками в StackOverflow и следил за всеми.
Критерии для этого, чтобы установить
Панго
Каир
GTK
libpangocairo
и я проверил уже установленную программу и обнаружил, что они уже установлены.
yum list installed
cairo.x86_64 @base
pango.x86_64 @base
gtk2.x86_64 @base
поэтому я не установил снова. в этом списке другие программы перечислены как установленные, но я думаю, что единственная внешняя программа должна быть установлена снова. Я не хочу устанавливать ту же самую программу снова, если я могу использовать базовую программу.
Любая помощь будет отличной
и мой код PHP прямо с сайта в Каире, но я получаю внутреннюю ошибку сервера. кажется Панго / Каир не работает
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
define("RADIUS", 150);
define("N_WORDS", 10);
define("FONT", "Sans Bold 27");
function draw_text($c) {
$c->translate(RADIUS, RADIUS);
$l = new PangoLayout($c);
$l->setText("Text");
$desc = new PangoFontDescription(FONT);
$l->setFontDescription($desc);
for($i = 0; $i < N_WORDS; $i++) {
$angle = 360.0 * $i / N_WORDS;
$red = (1 + cos (($angle - 60) * M_PI / 180)) / 2;
$c->save();
$c->setSourceRGB($red, 0, 1.0 - $red);
$c->rotate($angle * M_PI / 180.0);
$l->updateLayout($c);
$size = $l->getSize();
$c->moveTo( - ((double)$size['width'] / 2048), - RADIUS);
$l->showLayout();
$c->restore();
}
}
$s = new CairoImageSurface(CairoFormat::ARGB32, RADIUS *2, RADIUS *2);
$c = new CairoContext($s);
$c->setSourceRGB(1, 1, 1);
$c->paint();
draw_text($c);
$s->writeToPng('circle.png');
?>
Задача ещё не решена.
Других решений пока нет …