亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? binor.c

?? NIST Handwriting OCR Testbed
?? C
?? 第 1 頁 / 共 3 頁
字號:
		src += dx;		dst += dy;	}	return;}if (!j) {			/* Dst is byte-aligned. */	m3 = mask_end_1[b_inv];	/* eg. 00000111 */	m4 = mask_begin_1[b];	/* eg. 11111000 */	while (cph--) {		bytes = cpbw;		while (bytes--) {			c = (*src << i) | (*(src+1) >> i_inv);			*dst++ |= c;			src++;		}		c = (*src << i) | (*(src+1) >> i_inv);		*dst |= (c & m4);		src += dx;		dst += dy;	}	return;}if (!i) {					/* Src is byte-aligned. */	m1 = mask_end_0[j_inv];				/* eg. 11110000 */	m2 = mask_begin_0[j];				/* eg. 00001111 */	if (diff > 0) {		/* j_inv > b */		m3 = m1 | mask_end_1[diff];		/* eg. 11110011 */		m4 = mask_end_0[diff];			/* eg. 11111100 */	} else if (diff) {		/* j_inv < b */		m3 = mask_end_1[BITSPERBYTE+diff];	/* eg. 00111111 */		m4 = mask_begin_1[-diff];		/* eg. 11000000 */	}	while (cph--) {		bytes = cpbw;		while (bytes--) {			c = *src++;			*dst++ |= (c >> j);			*dst   |= (c << j_inv);		}		binary_fill_partial(BINARY_OR,src,i,dst,j,b);		src += dx;		dst += dy;	}	return;}if (i == j) {	m0 = mask_begin_1[i];	m1 = mask_end_0[i_inv];	m2 = mask_end_1[i_inv];	if (diff > 0) {		m3 = m1 | mask_end_1[diff];		m4 = mask_end_0[diff];	} else if (diff) { 		m3 = mask_end_1[BITSPERBYTE+diff];		m4 = mask_begin_1[-diff];	}	/* Neither src nor dst is byte-aligned, but they */	/* are offset by the same amount, so we can copy */	/* (cpbw - 1) bytes directly from src to dst. The */	/* bits in the other byte are on the ends of the */	/* scan line and are treated specially. */	/* We don't need this case in binary_subimage_*_8(). If cpbw==0, */	/* then cpw was 0 and we would have already returned. */	if (! cpbw) {		while (cph--) {			binary_fill_partial(BINARY_OR,src,i,dst,j,b);			src += dx;			dst += dy;		}		return;	}	if (cpbw == 1) {		while (cph--) {			*dst++ |= (*src++ & m2);			*dst   |= (*src   & m0);			binary_fill_partial(BINARY_OR,src,i,dst,j,b);			src += dx;			dst += dy;		}		return;	}	while (cph--) {		*dst++ |= (*src++ & m2);		bytes = cpbw - 1;		while (bytes--)			*dst++ |= *src++;		*dst |= (*src & m0);		binary_fill_partial(BINARY_OR,src,i,dst,j,b);		src += dx;		dst += dy;	}	return;}m1 = mask_end_0[j_inv];		/* eg. 11111000 */m2 = mask_begin_0[j];		/* eg. 00000111 */	if (diff > 0) {		m3 = m1 | mask_end_1[diff];		m4 = mask_end_0[diff];	} else if (diff) { 		m3 = mask_end_1[BITSPERBYTE+diff];		m4 = mask_begin_1[-diff];	}while (cph--) {				/* The absolute worst case. Neither */	bytes = cpbw;			/* src nor dst is byte-aligned, and */	while (bytes--) {		/* they are offset by diff. amounts. */		c = (*src << i) | (*(src+1) >> i_inv);		*dst++ |= (c >> j);		*dst   |= (c << j_inv);		src++;	}	binary_fill_partial(BINARY_OR,src,i,dst,j,b);	src += dx;	dst += dy;}}/* LINTLIBRARY *//****************************************************************//*								*//*	Routines:	binary_subimage_<op>_8()		*//*			binary_subimage_<op>_gt()		*//*			binary_subimage_<op>_lt()		*//*			binary_subimage_<op>_eq()		*//*				where <op> is copy, and, or,	*//*				xor, invert, zero, or one	*//*								*//*	Author:		Stan Janet				*//*	Date:		11/16/90				*//*								*//* binary_subimage_copy_8() is a bit-level copy utility for	*//*	subimages that are a multiple of 8 bits wide.		*//* binary_subimage_copy_{gt,lt,eq}() are bit-level copy		*//*	utilities for subimages that are not a multiple of 8	*//*	bits wide and where the space remaining in the last	*//*	byte in every destination scan line will be (respect-	*//*	ively) greater than, less than, or equal to the		*//*	number of bits by which the subimage width exceeds 8.	*//* If binary_subimage_copy() is told to copy a subimage		*//*	that is a multiple of 8 bits wide, it calls		*//*	binary_subimage_copy_8(). Otherwise it calls one of	*//*	the other functions as appropriate.			*//* binary_subimage_or_8() is a bit-level logical or utility for	*//*	subimages that are a multiple of 8 bits wide.		*//* binary_subimage_{or,and,xor,invert}_{8,gt,lt,eq}() are	*//*	bit-level logical or, and, xor and invert utilities for *//*	subimages that are analogous to	the copy utilities	*//*	described above.					*//* binary_subimage_{zero,one}_{8,gt,lt,eq} are bit-level util-	*//*	ities for setting all bits in a subimage to zero and	*//*	one, respectively.					*//* All dimensions are taken to be in bit units.			*//****************************************************************/#include <stdio.h>#include <memory.h>#include <values.h>#include <sys/types.h>#include <masks.h>#include <bitmasks.h>#include <bits.h>#include <binops.h>void binary_subimage_or_lt (		src, srcw, srch,		dst, dstw, dsth,		srcx, srcy,		cpw, cph,		dstx, dsty		)	register u_char *src, *dst;	int srcx,srcy,dstx,dsty, srcw,srch,dstw,dsth, cpw,cph;{int i, j, i_inv, j_inv, cpbw, srcbw, dstbw, dx, dy;u_char m0, m1, m2;register int bytes;register u_char c;	u_char m3, m4;	int b, b_inv, diff;if (src == (u_char *) NULL)	fatalerr("binary_subimage_or_lt","Null source image pointer",(char *)NULL);if (dst == (u_char *) NULL)	fatalerr("binary_subimage_or_lt","Null destination image pointer",(char *)NULL);if ((srcw < 0) || (srch < 0))	fatalerr("binary_subimage_or_lt","Negative source image dimension(s)",(char *)NULL);if ((dstw < 0) || (dsth < 0))	fatalerr("binary_subimage_or_lt","Negative destination image dimension(s)",(char *)NULL);if ((cpw < 0) || (cph < 0))	fatalerr("binary_subimage_or_lt","Negative subimage dimension(s)",(char *)NULL);if (srcw % BITSPERBYTE)	fatalerr("binary_subimage_or_lt",		"Source image width must be a multiple of 8",(char *)NULL);if (dstw % BITSPERBYTE)	fatalerr("binary_subimage_or_lt",		"Destination image width must be byte aligned",(char *)NULL);if (((srcx + cpw) > srcw) || ((srcy + cph) > srch))	fatalerr("binary_subimage_or_lt",		"Subimage exceeds source image dimension(s)",(char *)NULL);if (((dstx + cpw) > dstw) || ((dsty + cph) > dsth))	fatalerr("binary_subimage_or_lt",		"Subimage exceeds destination image dimension(s)",(char *)NULL);if (!cpw || !cph)	return;if (!srcw || !srch)	return;if (!dstw || !dsth)	return;	i = srcx % BITSPERBYTE;	i_inv = BITSPERBYTE - i;j = dstx % BITSPERBYTE;j_inv = BITSPERBYTE - j;		b = cpw % BITSPERBYTE;		b_inv = BITSPERBYTE - b;		diff = j_inv - b;		if (diff >= 0)		fatalerr("binary_subimage_or_lt","bad diff",(char *)NULL);	srcbw = srcw / BITSPERBYTE;dstbw = dstw / BITSPERBYTE;cpbw  = cpw  / BITSPERBYTE;	/* Increment src to the byte in the upper left corner of the */	/* subimage to be copied. Increment dst to the upper left corner */	/* of the byte in the destination that will be modified. */	src += srcy * srcbw + srcx / BITSPERBYTE;dst += dsty * dstbw + dstx / BITSPERBYTE;	/* Set dx (dy) to be the increment needed to get src (dst) to the */	/* first byte in the next scan line to be copied (or modified) from */	/* the last byte in the current scan line. */	dx = srcbw - cpbw;dy = dstbw - cpbw;if (!i && !j) {			/* Both src & dst are byte-aligned. */	m3 = mask_end_1[b_inv];	/* eg. 00000111 */	m4 = mask_begin_1[b];	/* eg. 11111000 */	while (cph--) {		bytes = cpbw;		while (bytes--)			*dst++ |= *src++;		*dst |= (*src & m4);		src += dx;		dst += dy;	}	return;}if (!j) {			/* Dst is byte-aligned. */	m3 = mask_end_1[b_inv];	/* eg. 00000111 */	m4 = mask_begin_1[b];	/* eg. 11111000 */	while (cph--) {		bytes = cpbw;		while (bytes--) {			c = (*src << i) | (*(src+1) >> i_inv);			*dst++ |= c;			src++;		}		c = (*src << i) | (*(src+1) >> i_inv);		*dst |= (c & m4);		src += dx;		dst += dy;	}	return;}if (!i) {					/* Src is byte-aligned. */	m1 = mask_end_0[j_inv];				/* eg. 11110000 */	m2 = mask_begin_0[j];				/* eg. 00001111 */	if (diff > 0) {		/* j_inv > b */		m3 = m1 | mask_end_1[diff];		/* eg. 11110011 */		m4 = mask_end_0[diff];			/* eg. 11111100 */	} else if (diff) {		/* j_inv < b */		m3 = mask_end_1[BITSPERBYTE+diff];	/* eg. 00111111 */		m4 = mask_begin_1[-diff];		/* eg. 11000000 */	}	while (cph--) {		bytes = cpbw;		while (bytes--) {			c = *src++;			*dst++ |= (c >> j);			*dst   |= (c << j_inv);		}		binary_fill_partial(BINARY_OR,src,i,dst,j,b);		src += dx;		dst += dy;	}	return;}if (i == j) {	m0 = mask_begin_1[i];	m1 = mask_end_0[i_inv];	m2 = mask_end_1[i_inv];	if (diff > 0) {		m3 = m1 | mask_end_1[diff];		m4 = mask_end_0[diff];	} else if (diff) { 		m3 = mask_end_1[BITSPERBYTE+diff];		m4 = mask_begin_1[-diff];	}	/* Neither src nor dst is byte-aligned, but they */	/* are offset by the same amount, so we can copy */	/* (cpbw - 1) bytes directly from src to dst. The */	/* bits in the other byte are on the ends of the */	/* scan line and are treated specially. */	/* We don't need this case in binary_subimage_*_8(). If cpbw==0, */	/* then cpw was 0 and we would have already returned. */	if (! cpbw) {		while (cph--) {			binary_fill_partial(BINARY_OR,src,i,dst,j,b);			src += dx;			dst += dy;		}		return;	}	if (cpbw == 1) {		while (cph--) {			*dst++ |= (*src++ & m2);			*dst   |= (*src   & m0);			binary_fill_partial(BINARY_OR,src,i,dst,j,b);			src += dx;			dst += dy;		}		return;	}	while (cph--) {		*dst++ |= (*src++ & m2);		bytes = cpbw - 1;		while (bytes--)			*dst++ |= *src++;		*dst |= (*src & m0);		binary_fill_partial(BINARY_OR,src,i,dst,j,b);		src += dx;		dst += dy;	}	return;}m1 = mask_end_0[j_inv];		/* eg. 11111000 */m2 = mask_begin_0[j];		/* eg. 00000111 */	if (diff > 0) {		m3 = m1 | mask_end_1[diff];		m4 = mask_end_0[diff];	} else if (diff) { 		m3 = mask_end_1[BITSPERBYTE+diff];

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
jizz一区二区| 国产精品天天看| 欧美日韩国产片| 欧美最猛性xxxxx直播| 99国产精品久久久久久久久久久 | 国产一区二区三区免费播放| 日韩电影网1区2区| 性欧美大战久久久久久久久| 亚洲成精国产精品女| 日韩影院免费视频| 奇米精品一区二区三区四区 | 色婷婷综合激情| 一本久久a久久免费精品不卡| 91麻豆精品在线观看| 色视频欧美一区二区三区| 色婷婷久久99综合精品jk白丝| 欧美在线视频日韩| 欧美三级午夜理伦三级中视频| 欧美久久久久久久久久| 欧美日韩国产a| 欧美一区二区三区不卡| 欧美成人a∨高清免费观看| 久久久久国产免费免费| 欧美韩日一区二区三区| 椎名由奈av一区二区三区| 亚洲午夜久久久久中文字幕久| 日韩国产精品大片| 韩国视频一区二区| 大白屁股一区二区视频| 91麻豆产精品久久久久久| 欧美日韩综合色| 欧美成人性战久久| 久久精品欧美一区二区三区麻豆| 欧美国产1区2区| 亚洲精品视频一区| 日日夜夜精品视频天天综合网| 久久精品国产亚洲一区二区三区| 国产电影一区在线| 日本丶国产丶欧美色综合| 91精品国产一区二区| 欧美精彩视频一区二区三区| 亚洲精品乱码久久久久久黑人| 午夜电影网亚洲视频| 韩国成人福利片在线播放| 色综合久久66| 精品国产一二三| 亚洲免费观看高清完整版在线| 麻豆视频观看网址久久| av在线播放成人| 91精品久久久久久蜜臀| 国产精品天美传媒| 视频一区在线视频| 成人激情小说乱人伦| 制服.丝袜.亚洲.中文.综合| 欧美激情一二三区| 日本欧美加勒比视频| 成人av在线资源网| 欧美一区二区视频在线观看| 国产精品久久久久久福利一牛影视| 婷婷六月综合网| 99久久99久久免费精品蜜臀| 91麻豆精品国产| 亚洲特黄一级片| 国产自产v一区二区三区c| 91国模大尺度私拍在线视频| 精品国产欧美一区二区| 亚洲成人久久影院| www..com久久爱| 精品国免费一区二区三区| 亚洲一区二区视频| 成人做爰69片免费看网站| 91精品国产91久久综合桃花| 自拍偷在线精品自拍偷无码专区| 国模套图日韩精品一区二区 | 亚洲老司机在线| 国产在线不卡一区| 欧美片在线播放| 亚洲日本电影在线| 国产精品一二二区| 欧美一卡二卡三卡| 亚洲高清免费视频| 91蝌蚪porny| 国产精品青草久久| 国产又黄又大久久| 日韩欧美中文字幕制服| 亚洲综合999| 99国产精品一区| 国产精品久线观看视频| 国产成人啪免费观看软件| 精品久久久久久亚洲综合网| 日韩成人午夜精品| 欧美色视频一区| 亚洲国产精品一区二区久久恐怖片| 日韩精品影音先锋| 五月综合激情网| 欧美色网站导航| 一区二区三区中文字幕电影 | 欧美三级欧美一级| 亚洲精品国产成人久久av盗摄| 99久久精品国产网站| 国产精品国模大尺度视频| 国产91综合网| 国产精品久久久久毛片软件| 成人午夜视频在线观看| 日本一区二区在线不卡| 国产成人免费在线视频| 国产清纯在线一区二区www| 国产成人精品免费一区二区| 久久精品网站免费观看| 粉嫩蜜臀av国产精品网站| 欧美国产视频在线| 成人激情校园春色| 亚洲视频电影在线| 色国产精品一区在线观看| 亚洲综合激情小说| 欧美麻豆精品久久久久久| 青娱乐精品在线视频| 日韩欧美激情在线| 国产一区91精品张津瑜| 欧美激情综合网| av不卡一区二区三区| 一区二区三区四区国产精品| 欧美日韩午夜在线| 日本在线不卡一区| 欧美tickling网站挠脚心| 国产一本一道久久香蕉| 日本一区二区视频在线| 99综合电影在线视频| 夜夜嗨av一区二区三区中文字幕 | 精品奇米国产一区二区三区| 国产一区二区三区免费播放| 国产精品日韩成人| 色综合色狠狠天天综合色| 亚洲国产精品久久久男人的天堂| 6080国产精品一区二区| 狠狠色丁香婷婷综合久久片| 国产精品另类一区| 欧美亚洲国产一卡| 裸体健美xxxx欧美裸体表演| 国产欧美日韩在线视频| 一本一道久久a久久精品 | 精品视频123区在线观看| 美女视频网站久久| 中文字幕不卡一区| 91福利在线导航| 激情综合色播激情啊| 亚洲色图第一区| 在线综合视频播放| 国产成人精品免费一区二区| 亚洲一卡二卡三卡四卡五卡| 久久综合五月天婷婷伊人| 91色|porny| 精品亚洲欧美一区| 日韩理论电影院| 欧美一区二区三区免费视频| 成a人片亚洲日本久久| 天天免费综合色| 国产精品拍天天在线| 在线观看91av| 99在线热播精品免费| 蜜臀av亚洲一区中文字幕| 一色桃子久久精品亚洲| 欧美videos大乳护士334| 色综合 综合色| 国产成人综合亚洲91猫咪| 五月天亚洲婷婷| 中文字幕一区在线| 欧美大片在线观看一区二区| 一本一道久久a久久精品| 国产精品影视在线| 午夜国产不卡在线观看视频| 国产精品国产三级国产普通话99 | 亚洲精品在线免费播放| 欧美性受xxxx| 不卡视频一二三四| 久久成人久久爱| 亚洲大片精品永久免费| 国产精品国产三级国产有无不卡| 精品国产污污免费网站入口| 欧美三级韩国三级日本一级| 成人福利视频在线| 久久精品免费观看| 三级久久三级久久久| 亚洲美女偷拍久久| 国产欧美精品一区| 久久综合色综合88| 日韩三级在线观看| 欧美日韩另类一区| 91福利在线观看| 色一情一乱一乱一91av| 成人午夜激情片| 国产乱子轮精品视频| 蜜臀久久久99精品久久久久久| 亚洲午夜电影在线观看| 一区二区三区在线视频观看 | 国产成人在线视频网址| 蜜桃精品在线观看| 视频一区二区三区中文字幕| 亚洲国产精品一区二区www在线| 亚洲精品老司机|