⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gd_clip.c

📁 下载来的一个看图软件的源代码
💻 C
字号:
#include "gd.h"extern void* gdMalloc (size_t);extern void* gdRealloc (void*,size_t);extern void  gdFree (void*);int gdImageBoundsSafe(gdImagePtr im, int x, int y){	int unsafe = 0;	int safe = 1;	int status;	int i;	gdClipRectanglePtr r;	if (y <   0    ) return (unsafe);	if (y >= im->sy) return (unsafe);	if (x <   0    ) return (unsafe);	if (x >= im->sx) return (unsafe);	if (im->clip == 0) return (safe);	if (im->clip->count == 0) return (safe);	status = unsafe;	for (i = 0; i < im->clip->count; i++)	{	r = &(im->clip->list[i]);		if (y < r->y_min) continue;		if (y > r->y_max) continue;		if (x < r->x_min) continue;		if (x > r->x_max) continue;		status = safe;		break;	}	return (status);}void gdClipSetFree(gdImagePtr im){	if (im->clip)	{	gdFree (im->clip->list);		gdFree (im->clip);		im->clip = 0;	}}void gdClipSetReset(gdImagePtr im){	if (im->clip)	{	im->clip->count = 0;	}}void gdClipSetAdd(gdImagePtr im,gdClipRectanglePtr rect){	gdClipRectanglePtr more;	if (im->clip == 0)	{	im->clip = gdMalloc (sizeof (gdClipSet));		if (im->clip == 0) return;		im->clip->max = 8;		im->clip->count = 0;		im->clip->list = gdMalloc (im->clip->max * sizeof (gdClipRectangle));		if (im->clip->list == 0)		{	gdFree (im->clip);			im->clip = 0;			return;		}	}	if (im->clip->count == im->clip->max)	{	more = gdRealloc (im->clip->list,(im->clip->max + 8) * sizeof (gdClipRectangle));		if (more == 0) return;		im->clip->max += 8;	}	im->clip->list[im->clip->count] = (*rect);	im->clip->count++;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -