Blame src/fontconfigtest.c

Packit ed3af9
#ifdef HAVE_CONFIG_H
Packit ed3af9
#include "config.h"
Packit ed3af9
#endif
Packit ed3af9
Packit ed3af9
#include "gd.h"
Packit ed3af9
Packit ed3af9
int main (int argc, char *argv[])
Packit ed3af9
{
Packit ed3af9
	gdImagePtr im;
Packit ed3af9
	int green, blue;
Packit ed3af9
	gdFTStringExtra se;
Packit ed3af9
	FILE *out;
Packit ed3af9
	im = gdImageCreateTrueColor(300, 100);
Packit ed3af9
	green = gdImageColorAllocate(im, 128, 255, 128);
Packit ed3af9
	gdImageFilledRectangle(im, 0, 0, 300, 100, green);
Packit ed3af9
	blue = gdImageColorAllocate(im, 128, 128, 255);
Packit ed3af9
	/* Default: fontlist argument is a pathname to a truetype font */
Packit ed3af9
	gdImageStringFT(im, 0, blue, "arial",
Packit ed3af9
	                12, 0, 20, 20, "plain pathname default");
Packit ed3af9
	/* Specifically opt for fontconfig */
Packit ed3af9
	se.flags = gdFTEX_FONTCONFIG;
Packit ed3af9
	gdImageStringFTEx(im, 0, blue, "arial:bold",
Packit ed3af9
	                  12, 0, 20, 40, "fontconfig arial:bold", &se);
Packit ed3af9
	/* Change the default to fontconfig */
Packit ed3af9
	if (!gdFTUseFontConfig(1)) {
Packit ed3af9
		fprintf(stderr, "fontconfig not compiled into gd\n");
Packit ed3af9
	}
Packit ed3af9
	/* Use fontconfig by (newly set) default */
Packit ed3af9
	gdImageStringFT(im, 0, blue, "arial:bold",
Packit ed3af9
	                12, 0, 20, 60, "fontconfig arial:bold default");
Packit ed3af9
	/* Explicitly use a pathname despite fontconfig default */
Packit ed3af9
	se.flags = gdFTEX_FONTPATHNAME;
Packit ed3af9
	gdImageStringFTEx(im, 0, blue, "arial",
Packit ed3af9
	                  12, 0, 20, 80, "plain pathname", &se);
Packit ed3af9
#ifdef HAVE_LIBPNG
Packit ed3af9
	out = fopen("fontconfigtest.png", "wb");
Packit ed3af9
	gdImagePng(im, out);
Packit ed3af9
	fclose(out);
Packit ed3af9
#else
Packit ed3af9
	fprintf(stderr, "PNG not compiled into gd\n");
Packit ed3af9
#endif /* HAVE_LIBPNG */
Packit ed3af9
	return 0;
Packit ed3af9
}
Packit ed3af9