作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 Raspberry Pi 上使用 C++ 下的 Cairo,并尝试将文本绘图剪切到给定矩形内。
我原以为它会像这样简单:
cairo_t* cp = cairo_create(psurface);// set font, etccairo_rectangle(cp, 0, 0, 100, 100); // Desired clipping rectcairo_clip(cp);cairo_show_text(cp, "pretend that this string is > 100px wide");cairo_destroy(cp);
但它总是导致没有文本出现。如果我省略对 cairo_clip() 的调用,文本会出现(尽管未剪辑)。
我只想剪掉字符串的最后几个字符。
有什么诀窍?
最佳答案
对我有用。
#include <cairo.h>
int main()
{
cairo_surface_t *s = cairo_image_surface_create(CAIRO_FORMAT_RGB24, 150, 50);
cairo_t *cr = cairo_create(s);
cairo_set_source_rgb(cr, 1, 0, 0);
cairo_paint(cr);
cairo_rectangle(cr, 0, 0, 100, 100);
cairo_clip(cr);
cairo_move_to(cr, 50, 25);
cairo_set_source_rgb(cr, 0, 0, 0);
cairo_show_text(cr, "pretend that this string is > 100px wide");
cairo_destroy(cr);
cairo_surface_write_to_png(s, "out.png");
cairo_surface_destroy(s);
return 0;
}
关于c++ - 开罗:如何将文本剪辑为矩形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52840483/
我是一名优秀的程序员,十分优秀!