【发布时间】:2011-05-23 17:52:36
【问题描述】:
我在旋转矩阵下进行 Pango 渲染时遇到问题。我正在尝试绘制一个发生在动画 Cairo 矩阵旋转内部的标签(参见下面的代码)。
随着标签的旋转,文本抖动,似乎在重量上增加和缩小,在对角处变得最厚,在正交角度处变得最薄。查看此比较:
我希望生成旋转后的文本,就像它只是旋转形状路径一样,而不是试图根据角度改变文本的外观。关于如何做到这一点的任何想法?
谢谢, 肖恩
//Draw text with Pango
PangoLayout *layout;
PangoFontDescription *desc;
// pCr is the cairomm context ptr.
// pCr->cobj() is the underlying C Cairo context ptr.
pCr->set_source_rgb(0.0, 0.0, 1.0);
layout = pango_cairo_create_layout(pCr->cobj());
// text is the label string
pango_layout_set_text(layout, text.c_str(), -1);
desc = pango_font_description_from_string("Sans Bold 12");
pango_layout_set_font_description(layout, desc);
pango_cairo_layout_path(pCr->cobj(), layout);
pCr->fill();
pango_font_description_free(desc);
g_object_unref(layout);
【问题讨论】: