예제 #1
0
int main()
{
	gdImagePtr im;
	void *data;
	int size, red;

	im = gdImageCreate(100, 100);
	gdImageSetResolution(im, 72, 300);
	red = gdImageColorAllocate(im, 0xFF, 0x00, 0x00);
	gdImageFilledRectangle(im, 0, 0, 99, 99, red);
	data = gdImageJpegPtr(im, &size, 10);
	gdImageDestroy(im);

	im = gdImageCreateFromJpegPtr(size, data);
	gdTestAssert(gdImageResolutionX(im) == 72);
	gdTestAssert(gdImageResolutionY(im) == 300);
	gdFree(data);
	gdImageDestroy(im);
	return 0;
}
예제 #2
0
int main()
{
	gdImagePtr im;
	void *data;
	int size, red;

	im = gdImageCreate(100, 100);
	gdImageSetResolution(im, 72, 300);
	red = gdImageColorAllocate(im, 0xFF, 0x00, 0x00);
	gdImageFilledRectangle(im, 0, 0, 99, 99, red);
	data = gdImageJpegPtr(im, &size, 10);
	gdImageDestroy(im);

	im = gdImageCreateFromJpegPtr(size, data);
	gdFree(data);
	if (!gdTestAssert(gdImageResolutionX(im) == 72) || !gdTestAssert(gdImageResolutionY(im) == 300)) {
		gdTestErrorMsg("failed image resolution X (%d != 72) or Y (%d != 300)\n", gdImageResolutionX(im), gdImageResolutionY(im));
		gdImageDestroy(im);
		return 1;
	}
	gdImageDestroy(im);
	return 0;
}