gpt4 book ai didi

c++ - 开罗:如何将文本剪辑为矩形?

转载 作者:行者123 更新时间:2023-11-28 04:31:10 27 4
gpt4 key购买 nike

在 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() 的调用,文本会出现(尽管未剪辑)。
我只想剪掉字符串的最后几个字符。
有什么诀窍?

最佳答案

对我有用。

enter image description here

#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/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com