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

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

?? gd.c

?? linux平臺下的多系統漏洞掃描工具客戶端
?? C
?? 第 1 頁 / 共 4 頁
字號:
void gdImageFill(gdImagePtr im, int x, int y, int color){	int lastBorder;	int old;	int leftLimit, rightLimit;	int i;	old = gdImageGetPixel(im, x, y);	if (color == gdTiled) {		/* Tile fill -- got to watch out! */		int p, tileColor;			int srcx, srcy;		if (!im->tile) {			return;		}		/* Refuse to flood-fill with a transparent pattern --			I can't do it without allocating another image */		if (gdImageGetTransparent(im->tile) != (-1)) {			return;		}			srcx = x % gdImageSX(im->tile);		srcy = y % gdImageSY(im->tile);		p = gdImageGetPixel(im->tile, srcx, srcy);		tileColor = im->tileColorMap[p];		if (old == tileColor) {			/* Nothing to be done */			return;		}	} else {		if (old == color) {			/* Nothing to be done */			return;		}	}	/* Seek left */	leftLimit = (-1);	for (i = x; (i >= 0); i--) {		if (gdImageGetPixel(im, i, y) != old) {			break;		}		gdImageSetPixel(im, i, y, color);		leftLimit = i;	}	if (leftLimit == (-1)) {		return;	}	/* Seek right */	rightLimit = x;	for (i = (x+1); (i < im->sx); i++) {			if (gdImageGetPixel(im, i, y) != old) {			break;		}		gdImageSetPixel(im, i, y, color);		rightLimit = i;	}	/* Look at lines above and below and start paints */	/* Above */	if (y > 0) {		lastBorder = 1;		for (i = leftLimit; (i <= rightLimit); i++) {			int c;			c = gdImageGetPixel(im, i, y-1);			if (lastBorder) {				if (c == old) {						gdImageFill(im, i, y-1, color);							lastBorder = 0;				}			} else if (c != old) {				lastBorder = 1;			}		}	}	/* Below */	if (y < ((im->sy) - 1)) {		lastBorder = 1;		for (i = leftLimit; (i <= rightLimit); i++) {			int c;			c = gdImageGetPixel(im, i, y+1);			if (lastBorder) {				if (c == old) {					gdImageFill(im, i, y+1, color);							lastBorder = 0;				}			} else if (c != old) {				lastBorder = 1;			}		}	}}	/* Code drawn from ppmtogif.c, from the pbmplus package**** Based on GIFENCOD by David Rowley <mgardi@watdscu.waterloo.edu>. A** Lempel-Zim compression based on "compress".**** Modified by Marcel Wijkstra <wijkstra@fwi.uva.nl>**** Copyright (C) 1989 by Jef Poskanzer.**** Permission to use, copy, modify, and distribute this software and its** documentation for any purpose and without fee is hereby granted, provided** that the above copyright notice appear in all copies and that both that** copyright notice and this permission notice appear in supporting** documentation.  This software is provided "as is" without express or** implied warranty.**** The Graphics Interchange Format(c) is the Copyright property of** CompuServe Incorporated.  GIF(sm) is a Service Mark property of** CompuServe Incorporated.**  Heavily modified by Mouse, 1998-02-12.  *  Remove LZW compression.*  Added miGIF run length compression.**//* * a code_int must be able to hold 2**GIFBITS values of type int, and also -1 */typedef int code_int;static int colorstobpp(int colors);static void BumpPixel (void);static int GIFNextPixel (gdImagePtr im);static void GIFEncode (FILE *fp, int GWidth, int GHeight, int GInterlace, int Background, int Transparent, int BitsPerPixel, int *Red, int *Green, int *Blue, gdImagePtr im);static void Putword (int w, FILE *fp);static void compress (int, FILE *, gdImagePtr, int);static void output (code_int code);static void char_init (void);static void char_out (int c);/* Allows for reuse */static void init_statics(void);void gdImageGif(gdImagePtr im, FILE *out){	int interlace, transparent, BitsPerPixel;	interlace = im->interlace;	transparent = im->transparent;	BitsPerPixel = colorstobpp(im->colorsTotal);	/* Clear any old values in statics strewn through the GIF code */	init_statics();	/* All set, let's do it. */	GIFEncode(		out, im->sx, im->sy, interlace, 0, transparent, BitsPerPixel,		im->red, im->green, im->blue, im);}static intcolorstobpp(int colors){    int bpp = 0;    if ( colors <= 2 )        bpp = 1;    else if ( colors <= 4 )        bpp = 2;    else if ( colors <= 8 )        bpp = 3;    else if ( colors <= 16 )        bpp = 4;    else if ( colors <= 32 )        bpp = 5;    else if ( colors <= 64 )        bpp = 6;    else if ( colors <= 128 )        bpp = 7;    else if ( colors <= 256 )        bpp = 8;    return bpp;    }/***************************************************************************** * * GIFENCODE.C    - GIF Image compression interface * * GIFEncode( FName, GHeight, GWidth, GInterlace, Background, Transparent, *            BitsPerPixel, Red, Green, Blue, gdImagePtr ) * *****************************************************************************/#define TRUE 1#define FALSE 0static int Width, Height;static int curx, cury;static long CountDown;static int Pass = 0;static int Interlace;/* * Bump the 'curx' and 'cury' to point to the next pixel */static voidBumpPixel(void){        /*         * Bump the current X position         */        ++curx;        /*         * If we are at the end of a scan line, set curx back to the beginning         * If we are interlaced, bump the cury to the appropriate spot,         * otherwise, just increment it.         */        if( curx == Width ) {                curx = 0;                if( !Interlace )                        ++cury;                else {                     switch( Pass ) {                       case 0:                          cury += 8;                          if( cury >= Height ) {                                ++Pass;                                cury = 4;                          }                          break;                       case 1:                          cury += 8;                          if( cury >= Height ) {                                ++Pass;                                cury = 2;                          }                          break;                       case 2:                          cury += 4;                          if( cury >= Height ) {                             ++Pass;                             cury = 1;                          }                          break;                       case 3:                          cury += 2;                          break;                        }                }        }}/* * Return the next pixel from the image */static intGIFNextPixel(gdImagePtr im){        int r;        if( CountDown == 0 )                return EOF;        --CountDown;        r = gdImageGetPixel(im, curx, cury);        BumpPixel();        return r;}/* public */static voidGIFEncode(FILE *fp, int GWidth, int GHeight, int GInterlace, int Background, int Transparent, int BitsPerPixel, int *Red, int *Green, int *Blue, gdImagePtr im){        int B;        int RWidth, RHeight;        int LeftOfs, TopOfs;        int Resolution;        int ColorMapSize;        int InitCodeSize;        int i;        Interlace = GInterlace;        ColorMapSize = 1 << BitsPerPixel;        RWidth = Width = GWidth;        RHeight = Height = GHeight;        LeftOfs = TopOfs = 0;        Resolution = BitsPerPixel;        /*         * Calculate number of bits we are expecting         */        CountDown = (long)Width * (long)Height;        /*         * Indicate which pass we are on (if interlace)         */        Pass = 0;        /*         * The initial code size         */        if( BitsPerPixel <= 1 )                InitCodeSize = 2;        else                InitCodeSize = BitsPerPixel;        /*         * Set up the current x and y position         */        curx = cury = 0;        /*         * Write the Magic header         */        fwrite( Transparent < 0 ? "GIF87a" : "GIF89a", 1, 6, fp );        /*         * Write out the screen width and height         */        Putword( RWidth, fp );        Putword( RHeight, fp );        /*         * Indicate that there is a global colour map         */        B = 0x80;       /* Yes, there is a color map */        /*         * OR in the resolution         */        B |= (Resolution - 1) << 4;        /*         * OR in the Bits per Pixel         */        B |= (BitsPerPixel - 1);        /*         * Write it out         */        fputc( B, fp );        /*         * Write out the Background colour         */        fputc( Background, fp );        /*         * Byte of 0's (future expansion)         */        fputc( 0, fp );        /*         * Write out the Global Colour Map         */        for( i=0; i<ColorMapSize; ++i ) {                fputc( Red[i], fp );                fputc( Green[i], fp );                fputc( Blue[i], fp );        }	/*	 * Write out extension for transparent colour index, if necessary.	 */	if ( Transparent >= 0 ) {	    fputc( '!', fp );	    fputc( 0xf9, fp );	    fputc( 4, fp );	    fputc( 1, fp );	    fputc( 0, fp );	    fputc( 0, fp );	    fputc( (unsigned char) Transparent, fp );	    fputc( 0, fp );	}        /*         * Write an Image separator         */        fputc( ',', fp );        /*         * Write the Image header         */        Putword( LeftOfs, fp );        Putword( TopOfs, fp );        Putword( Width, fp );        Putword( Height, fp );        /*         * Write out whether or not the image is interlaced         */        if( Interlace )                fputc( 0x40, fp );        else                fputc( 0x00, fp );        /*         * Write out the initial code size         */        fputc( InitCodeSize, fp );        /*         * Go and actually compress the data         */        compress( InitCodeSize+1, fp, im, Background );        /*         * Write out a Zero-length packet (to end the series)         */        fputc( 0, fp );        /*         * Write the GIF file terminator         */        fputc( ';', fp );}/* * Write out a word to the GIF file */static voidPutword(int w, FILE *fp){        fputc( w & 0xff, fp );        fputc( (w / 256) & 0xff, fp );}#define GIFBITS 12/*----------------------------------------------------------------------- * * miGIF Compression - mouse and ivo's GIF-compatible compression * *          -run length encoding compression routines- * * Copyright (C) 1998 Hutchison Avenue Software Corporation *               http://www.hasc.com *               info@hasc.com * * Permission to use, copy, modify, and distribute this software and its * documentation for any purpose and without fee is hereby granted, provided * that the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation.  This software is provided "AS IS." The Hutchison Avenue  * Software Corporation disclaims all warranties, either express or implied,  * including but not limited to implied warranties of merchantability and  * fitness for a particular purpose, with respect to this code and accompanying * documentation.  *  * The miGIF compression routines do not, strictly speaking, generate files  * conforming to the GIF spec, since the image data is not LZW-compressed  * (this is the point: in order to avoid transgression of the Unisys patent  * on the LZW algorithm.)  However, miGIF generates data streams that any  * reasonably sane LZW decompresser will decompress to what we want. * * miGIF compression uses run length encoding. It compresses horizontal runs  * of pixels of the same color. This type of compression gives good results * on images with many runs, for example images with lines, text and solid  * shapes on a solid-colored background. It gives little or no compression  * on images with few runs, for example digital or scanned photos. * *                               der Mouse *                      mouse@rodents.montreal.qc.ca *            7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B * *                             ivo@hasc.com * * The Graphics Interchange Format(c) is the Copyright property of * CompuServe Incorporated.  GIF(sm) is a Service Mark property of * CompuServe Incorporated. * */static int rl_pixel;static int rl_basecode;static int rl_count;static int rl_table_pixel;static int rl_table_max;static int just_cleared;static int out_bits;static int out_bits_init;static int out_count;static int out_bump;static int out_bump_init;static int out_clear;static int out_clear_init;static int max_ocodes;static int code_clear;static int code_eof;static unsigned int obuf;static int obits;static FILE *ofile;static unsigned char oblock[256];static int oblen;/* Used only when debugging GIF compression code *//* #define DEBUGGING_ENVARS */#ifdef DEBUGGING_ENVARSstatic int verbose_set = 0;static int verbose;#define VERBOSE (verbose_set?verbose:set_verbose())static int set_verbose(void){ verbose = !!getenv("GIF_VERBOSE"); verbose_set = 1; return(verbose);}#else#define VERBOSE 0#endifstatic const char *binformat(unsigned int v, int nbits){ static char bufs[8][64]; static int bhand = 0; unsigned int bit; int bno; char *bp; bhand --; if (bhand < 0) bhand = (sizeof(bufs)/sizeof(bufs[0]))-1; bp = &bufs[bhand][0]; for (bno=nbits-1,bit=1U<<bno;bno>=0;bno--,bit>>=1)  { *bp++ = (v & bit) ? '1' : '0';    if (((bno&3) == 0) && (bno != 0)) *bp++ = '.';  } *bp = '\0'; return(&bufs[bhand][0]);}static void write_block(void){ int i; if (VERBOSE)  { printf("write_block %d:",oblen);    for (i=0;i<oblen;i++) printf(" %02x",oblock[i]);    printf("\n");  } fputc(oblen,ofile); fwrite(&oblock[0],1,oblen,ofile); oblen = 0;}static void block_out(unsigned char c){ if (VERBOSE) printf("block_out %s\n",binformat(c,8)); oblock[oblen++] = c; if (oblen >= 255) write_block();}static void block_flush(void){ if (VERBOSE) printf("block_flush\n"); if (oblen > 0) write_block();}static void output(int val){ if (VERBOSE) printf("output %s [%s %d %d]\n",binformat(val,out_bits),binformat(obuf,obits),obits,out_bits); obuf |= val << obits; obits += out_bits; while (obits >= 8)  { block_out(obuf&0xff);    obuf >>= 8;    obits -= 8;  } if (VERBOSE) printf("output leaving [%s %d]\n",binformat(obuf,obits),obits);}static void output_flush(void){ if (VERBOSE) printf("output_flush\n"); if (obits > 0) block_out(obuf); block_flush();}static void did_clear(void){ if (VERBOSE) printf("did_clear\n"); out_bits = out_bits_init; out_bump = out_bump_init; out_clear = out_clear_init; out_count = 0; rl_table_max = 0; just_cleared = 1;}static void output_plain(int c){ if (VERBOSE) printf("output_plain %s\n",binformat(c,out_bits)); just_cleared = 0; output(c); out_count ++; if (out_count >= out_bump)  { out_bits ++;    out_bump += 1 << (out_bits - 1);  } if (out_count >= out_clear)  { output(code_clear);    did_clear();  }}#ifdef __GNUC__static unsigned int isqrt(unsigned int) __attribute__((__const__));#endifstatic unsigned int isqrt(unsigned int x){ unsigned int r; unsigned int v; if (x < 2) return(x); for (v=x,r=1;v;v>>=2,r<<=1) ; while (1)  { v = ((x / r) + r) / 2;    if ((v == r) || (v == r+1)) return(r);    r = v;  }}static unsigned int compute_triangle_count(unsigned int count, unsigned int nrepcodes){ unsigned int perrep; unsigned int cost; cost = 0; perrep = (nrepcodes * (nrepcodes+1)) / 2; while (count >= perrep)  { cost += nrepcodes;    count -= perrep;  } if (count > 0)  { unsigned int n;    n = isqrt(count);    while ((n*(n+1)) >= 2*count) n --;    while ((n*(n+1)) < 2*count) n ++;    cost += n;  } return(cost);}static void max_out_clear(void){ out_clear = max_ocodes;}static void reset_out_clear(void){ out_clear = out_clear_init; if (out_count >= out_clear)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产三级精品视频| 国产乱子伦视频一区二区三区 | 丝袜亚洲另类欧美| 亚洲免费毛片网站| 中文字幕一区二区三区精华液| 国产亚洲欧洲一区高清在线观看| 欧美大片日本大片免费观看| 欧美一级日韩不卡播放免费| 欧美一区二区视频在线观看2022| 日韩一区二区三区视频在线| 欧美成人在线直播| 精品999在线播放| 精品电影一区二区| 日本一区二区免费在线观看视频| 亚洲国产电影在线观看| 国产精品免费视频网站| 亚洲视频一区在线观看| 亚洲狠狠丁香婷婷综合久久久| 亚洲免费av网站| 亚洲国产视频网站| 免费日韩伦理电影| 国产精品一二三四| 成人免费电影视频| 91免费观看在线| 欧美亚洲一区二区在线| 69成人精品免费视频| 亚洲国产日韩a在线播放| 亚洲自拍欧美精品| 日本午夜精品视频在线观看| 国产一区二区三区av电影| 成人福利视频在线| 欧美在线观看视频一区二区| 欧美日韩国产天堂| 精品国产乱码久久久久久1区2区| 国产农村妇女毛片精品久久麻豆 | 91麻豆精品国产无毒不卡在线观看| 日韩欧美一二区| 国产精品美女久久久久久久久久久 | av电影在线观看完整版一区二区| 色综合久久综合| 这里只有精品视频在线观看| 2023国产精品视频| 亚洲视频小说图片| 日本在线不卡视频一二三区| 懂色av一区二区在线播放| 欧美性xxxxx极品少妇| 日韩欧美一卡二卡| 中文字幕亚洲区| 日韩精品一级中文字幕精品视频免费观看 | 亚洲美女免费在线| 久久国产剧场电影| 色综合久久中文综合久久牛| 欧美va亚洲va| 亚洲线精品一区二区三区| 国产精品白丝jk黑袜喷水| 欧美色图在线观看| 久久精品视频一区二区| 亚洲成在人线免费| 福利91精品一区二区三区| 欧美日韩国产一二三| 中文一区在线播放| 美女在线视频一区| 色噜噜久久综合| 国产日产欧美精品一区二区三区| 亚洲成人av中文| 成人精品免费看| 日韩欧美一级二级三级| 亚洲图片欧美综合| 不卡一区二区中文字幕| 精品国一区二区三区| 亚洲一区欧美一区| 99v久久综合狠狠综合久久| 精品国产免费视频| 日韩av一二三| 国产午夜精品美女毛片视频| 爽好久久久欧美精品| 一本一本久久a久久精品综合麻豆| 久久综合av免费| 日本欧美一区二区在线观看| 91美女片黄在线观看91美女| 久久蜜桃一区二区| 日av在线不卡| 欧美午夜电影网| 亚洲视频狠狠干| 国产成人av电影在线| 精品精品国产高清a毛片牛牛| 图片区小说区国产精品视频| 在线观看视频一区二区欧美日韩| 国产精品国产自产拍高清av王其| 国产一区二区电影| 欧美精品一区在线观看| 蜜桃久久av一区| 日韩区在线观看| 视频一区二区不卡| 欧美日韩在线精品一区二区三区激情 | 成人性生交大片免费| 精品国产伦理网| 精品无人区卡一卡二卡三乱码免费卡| 91精品国产一区二区三区蜜臀| 亚洲成人一区在线| 欧美日韩成人综合| 天天影视涩香欲综合网| 欧美军同video69gay| 亚洲成人福利片| 欧美日韩国产a| 亚洲r级在线视频| 欧美日韩一区二区欧美激情| 亚洲成a天堂v人片| 欧美日本视频在线| 日韩国产欧美三级| 欧美一区二区福利视频| 老色鬼精品视频在线观看播放| 日韩三区在线观看| 久久99精品久久久久久| 久久先锋资源网| 国产丶欧美丶日本不卡视频| 欧美经典一区二区三区| 顶级嫩模精品视频在线看| 国产精品久久久久久亚洲毛片 | 国产aⅴ综合色| 国产精品免费视频观看| 色婷婷综合久久| 午夜久久久久久电影| 欧美成人一区二区三区片免费| 狂野欧美性猛交blacked| 精品国产麻豆免费人成网站| 成人黄色网址在线观看| 亚洲三级免费观看| 欧美无砖砖区免费| 蜜桃一区二区三区四区| 国产香蕉久久精品综合网| 91女厕偷拍女厕偷拍高清| 亚洲成人动漫在线观看| 亚洲va在线va天堂| 欧美疯狂性受xxxxx喷水图片| 免费看日韩精品| 日本一区二区三区免费乱视频| 93久久精品日日躁夜夜躁欧美| 亚洲制服丝袜av| 精品国产sm最大网站免费看| 成人开心网精品视频| 午夜精品久久久久久久| 久久精品一区四区| 在线观看日韩一区| 狠狠网亚洲精品| 中文字幕一区日韩精品欧美| 欧美系列亚洲系列| 韩国成人福利片在线播放| 亚洲精品免费电影| 欧美一级夜夜爽| 成人动漫一区二区| 性欧美疯狂xxxxbbbb| 久久精品亚洲精品国产欧美kt∨| 91免费观看视频| 精品一区二区免费在线观看| 亚洲欧美福利一区二区| 精品少妇一区二区三区在线播放 | 久久99在线观看| 国产精品久久福利| 日韩免费视频一区二区| av中文字幕亚洲| 秋霞电影网一区二区| 亚洲精品一二三四区| 欧美大黄免费观看| 一本大道综合伊人精品热热| 国产一区二区美女诱惑| 午夜精品免费在线| 亚洲欧洲国产日本综合| 欧美xxxxx裸体时装秀| 在线观看免费视频综合| 国产美女一区二区三区| 视频一区免费在线观看| 综合久久久久久| 精品福利在线导航| 欧美在线观看一区| a在线播放不卡| 国产剧情一区在线| 日本美女一区二区三区视频| 亚洲精品中文字幕在线观看| 欧美激情一区二区| 精品黑人一区二区三区久久| 欧美老肥妇做.爰bbww视频| 91在线丨porny丨国产| 丁香婷婷综合激情五月色| 裸体健美xxxx欧美裸体表演| 一区二区三区在线免费播放| 中文字幕一区二区三区四区| 国产视频一区二区三区在线观看| 日韩一卡二卡三卡| 欧美日本高清视频在线观看| 色av成人天堂桃色av| av福利精品导航| 不卡欧美aaaaa| 国产很黄免费观看久久| 久久99国内精品| 麻豆久久一区二区| 奇米四色…亚洲| 日本欧美在线观看| 蜜臀av性久久久久蜜臀aⅴ| 三级亚洲高清视频|