对于这样一个简单的要求,您可以使用cairo,只需调整 png 大小和字体:
#include <cairo.h>
int main(void)
{
cairo_surface_t *surface;
cairo_t *cr;
surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 250, 50);
cr = cairo_create(surface);
cairo_set_source_rgb(cr, 0, 0, 0);
cairo_select_font_face(cr, "Sans", CAIRO_FONT_SLANT_NORMAL,
CAIRO_FONT_WEIGHT_NORMAL);
cairo_set_font_size(cr, 40.0);
cairo_move_to(cr, 10.0, 35.0);
cairo_show_text(cr, "Hello world!");
cairo_surface_write_to_png(surface, "image.png");
cairo_destroy(cr);
cairo_surface_destroy(surface);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
由于您在 ubuntu 上:
sudo apt-get install -y libcairo2-dev
Run Code Online (Sandbox Code Playgroud)
并编译:
gcc demo.c -o demo `pkg-config --cflags --libs cairo`
Run Code Online (Sandbox Code Playgroud)
对于更复杂的用途,您应该结合cairo使用pango:
https://fossies.org/linux/pango/examples/cairosimple.c