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

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

?? dvi.c

?? harvest是一個下載html網頁得機器人
?? C
字號:
/* * (c) Copyright 1993 by Panagiotis Tsirigotis * All rights reserved.  The file named COPYRIGHT specifies the terms  * and conditions for redistribution. */static char RCSid[] = "dvi.c,v 1.5 1994/12/20 20:05:15 hardy Exp";#include <ctype.h>#include <string.h>#include "sio.h"#include "defs.h"static int get_file_char(fdp)int *fdp;{	return (next_char(*fdp));}PRIVATE int get_num(fd, c)int fd;int c;{	int num = NUM(c);	for (;;) {		NEXT_CHAR(fd, c);		if (c == SIO_EOF)			error("Unexpected end of file while reading number\n");		if (isdigit(c)) {			num *= 10;			num += NUM(c);		} else if (isalpha(c))			error("Unexpected character terminating number: '%c'\n", c);		else if (c == SPACE || c == NEWLINE)			break;		else {			PUTBACK(fd, c);			break;		}	}	return (num);}/* * This function is called for lines starting with '%' */PRIVATE int check_for_new_page(fd)int fd;{	char *line;	char *page_id = "Page:";	int id_len = strlen(page_id);	int new_page = FALSE;	void start_paragraph();	while (line = Srdline(fd)) {		if (line[0] != '%') {			Sundo(fd, SIO_UNDO_LINE);			break;		}		line_count++;		if (line[1] != '%')			continue;		if (strncmp(&line[2], page_id, id_len) == 0) {			if (!new_page)				start_paragraph();			new_page = TRUE;		}	}	return (new_page);}void dvi_process(fd)int fd;{	int c;	int num;	int output_string = FALSE;	int last_cmd = SPACE;	token_e last_token = TOK_OTHER;	void process_string();	void skip_until();	void skip_bracket();	void decode_string();	for (;;) {		NEXT_CHAR(fd, c);		if (c == SIO_EOF)			break;		if (c == '%') {			skip_until(fd, NEWLINE);			last_token = TOK_OTHER;			continue;		}		if (c == SPACE)			continue;		if (c == NEWLINE) {			/*			 * Peek at the next character to check if it is a line beginning 			 * with '%%'			 */			NEXT_CHAR(fd, c);			if (c == SIO_EOF)				break;			PUTBACK(fd, c);			if (c != '%')				continue;			if (check_for_new_page(fd))				output_string = FALSE;			last_token = TOK_OTHER;			continue;		}		if (c == SLASH) {			for (;;) {				NEXT_CHAR(fd, c);				if (c == SIO_EOF)					error("Reached EOF reading literal\n");				if (!isalnum(c)) {					PUTBACK(fd, c);					break;				}			}			last_token = TOK_OTHER;			continue;		}		/*		 * This piece of code has been commented out because I have found		 * valid Postscript files that contain an unbalanced number of '['.		 * Specifically, this is what was found:		 *		 *              81[31 52[28 3[31 19 22 25 31 1[28 31 47 16 2[16 31 28 19 25		 *		 * The reason may be that the '[' between numbers has a different		 * meaning but I could not find such a reference in the		 * Postscript Language Reference Manual		 *		 if ( c == OPEN_BRACKET )		 {		 skip_bracket( fd, OPEN_BRACKET, CLOSED_BRACKET ) ;		 last_token = TOK_OTHER ;		 continue ;		 }		 *		 */		if (c == OPEN_CURLY_BRACKET) {			skip_bracket(fd, OPEN_CURLY_BRACKET, CLOSED_CURLY_BRACKET);			last_token = TOK_OTHER;			continue;		}		if (c == LESS_THAN) {			skip_until(fd, GREATER_THAN);			last_token = TOK_OTHER;			continue;		}		if (c == OPEN_PAREN) {			decode_string(get_file_char, (void *) &fd);			output_string = TRUE;			last_token = TOK_STRING;			continue;		}		if (c == MINUS) {			/*			 * Check for a negative number			 */			NEXT_CHAR(fd, c);			if (!isdigit(c)) {				PUTBACK(fd, c);				continue;			}			num = -get_num(fd, c);			last_token = TOK_NUMBER;			continue;		}		if (isdigit(c)) {			num = get_num(fd, c);			/*			 * Check if we got 2 number tokens in a row			 */			if (last_token == TOK_NUMBER) {				/*				 * We got an (x,y) pair denoting the beginning of a line.				 * Do a line-feed if the last output was a string				 */				if (output_string) {					printout(NEWLINE);					output_string = FALSE;				}			}			last_token = TOK_NUMBER;			continue;		}		if (isalpha(c)) {			char letter_buf[16];			int li = 0;	/* letter buf index */			int n_letters = 0;			letter_buf[li++] = c;			n_letters++;			for (;;) {				NEXT_CHAR(fd, c);				if (c == SIO_EOF)					break;				if (!isalnum(c)) {					PUTBACK(fd, c);					break;				}				letter_buf[li++] = c;				li %= sizeof(letter_buf);				n_letters++;			}         if (n_letters > 2) {#ifdef REMOVE_DVI_PLOTS            extern char *Srdline();            char *lineptr;            if (strncmp(letter_buf, "bplot", n_letters) == 0) {               /*                * found the beginning of a plot - skip it (else we output                * lots of lines with nothing by '.' on it)                */                for (;;) {                   lineptr = Srdline(fd);                   if (lineptr == NULL)                      break;	           if (strcmp(lineptr, "eplot") == 0)                      break;                }            }#endif /* REMOVE_DVI_PLOTS */            /* ignore others */            last_token = TOK_OTHER;            continue;         }         /*          * We have a command: identify it          */         switch (letter_buf[0]) {         case 'l':         case 'm':         case 'n':			case 'o':			case 'p':			case 'q':			case 'r':			case 's':			case 't':				break;	/* command requires no action */			default:				if (output_string) {					int print_space = FALSE;					switch (last_token) {					case TOK_NUMBER:						if (num >= 0)							print_space = TRUE;						break;					case TOK_CMD:						if (last_cmd != 'p')							print_space = TRUE;						break;					default:						print_space = TRUE;					}					if (print_space) {						printout(SPACE);						output_string = FALSE;					}				}			}			last_cmd = letter_buf[0];			last_token = TOK_CMD;		}	}}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品国产三级国产aⅴ入口| 欧美日韩国产不卡| 国产麻豆精品视频| 国精产品一区一区三区mba桃花 | 亚洲色图在线看| 成人欧美一区二区三区视频网页| 国产精品每日更新| 亚洲日本电影在线| 亚洲成人av中文| 成人夜色视频网站在线观看| 国产mv日韩mv欧美| 99久久er热在这里只有精品66| av在线不卡电影| 欧美色手机在线观看| 日韩丝袜情趣美女图片| 久久丝袜美腿综合| 中文欧美字幕免费| 亚洲福利一区二区| 黄网站免费久久| 99re成人精品视频| 91麻豆精品国产91久久久使用方法 | 亚洲成人资源网| 日韩国产精品久久久久久亚洲| 青青草视频一区| 国产精品亚洲а∨天堂免在线| 粉嫩av亚洲一区二区图片| 色94色欧美sute亚洲13| 欧美一区二区在线观看| 丝袜美腿亚洲综合| 国产成a人无v码亚洲福利| 91麻豆6部合集magnet| 91精品国产全国免费观看| 国产日产欧美一区| 日韩国产精品91| 成人午夜在线播放| 在线不卡免费欧美| 中文字幕二三区不卡| 日韩和欧美一区二区三区| 国产精品18久久久久久久久久久久| 91麻豆国产福利精品| 日韩精品一区二区三区四区| 亚洲麻豆国产自偷在线| 极品美女销魂一区二区三区免费| 日本高清不卡一区| 国产精品午夜春色av| 久久精品99国产国产精| 欧美影视一区在线| 日韩一区在线免费观看| 国产麻豆视频精品| 日韩午夜av电影| 午夜精品久久久| 91啪亚洲精品| 国产亚洲综合在线| 久久99最新地址| 91精品国产全国免费观看 | 亚洲国产aⅴ成人精品无吗| 国产成人亚洲精品狼色在线| 欧美日本精品一区二区三区| 亚洲视频你懂的| 国产a视频精品免费观看| 久久免费精品国产久精品久久久久| 亚洲一区在线观看免费| 色综合久久综合网欧美综合网| 中文一区在线播放| 成人免费视频播放| 日本一区二区三区在线不卡 | 亚洲精选一二三| 东方aⅴ免费观看久久av| 久久久蜜桃精品| 国产一区亚洲一区| 国产亚洲精品免费| 国产91精品入口| 国产精品久久二区二区| 成人精品国产福利| 欧美国产日韩亚洲一区| 丁香婷婷综合激情五月色| 欧美激情艳妇裸体舞| 成人性生交大片免费看中文网站| 国产日韩欧美高清| 国产v日产∨综合v精品视频| 国产日韩欧美综合在线| jvid福利写真一区二区三区| 最新欧美精品一区二区三区| 色婷婷久久久综合中文字幕| 亚洲综合无码一区二区| 欧美一区二区三区白人| 91在线观看一区二区| 亚洲男人天堂一区| 678五月天丁香亚洲综合网| 蜜桃精品视频在线| 国产人成亚洲第一网站在线播放 | 国内精品国产三级国产a久久| 2欧美一区二区三区在线观看视频| 国产麻豆日韩欧美久久| 中文字幕日本不卡| 欧美老肥妇做.爰bbww| 久久99精品久久久久久| 国产日韩精品久久久| 欧美体内she精高潮| 免费不卡在线观看| 中文字幕一区二区三区不卡| 欧美色区777第一页| 国产精品综合av一区二区国产馆| 国产精品久久二区二区| 日韩亚洲欧美中文三级| 波多野结衣精品在线| 天堂蜜桃91精品| 国产精品热久久久久夜色精品三区| 色婷婷久久99综合精品jk白丝| 久久69国产一区二区蜜臀| 日韩一区欧美小说| 精品三级在线观看| 欧美性色黄大片| 成人sese在线| 久久国产精品99精品国产 | 日韩高清在线电影| 国产精品成人免费精品自在线观看| 欧美亚洲尤物久久| 成人黄页在线观看| 精久久久久久久久久久| 亚洲夂夂婷婷色拍ww47| 国产三级久久久| 日韩一级成人av| 欧美色综合天天久久综合精品| 国产91色综合久久免费分享| 男男gaygay亚洲| 夜夜操天天操亚洲| 最新高清无码专区| 国产亚洲一区二区在线观看| 日韩一区二区免费高清| 欧美视频你懂的| 欧美影视一区二区三区| eeuss鲁片一区二区三区在线观看| 乱一区二区av| 麻豆国产精品一区二区三区| 午夜影院在线观看欧美| 亚洲精品一二三四区| 一区视频在线播放| 中文字幕欧美区| 国产性天天综合网| 久久综合九色综合欧美就去吻| 91精品国产色综合久久不卡电影| 在线国产电影不卡| 在线精品视频小说1| 色偷偷一区二区三区| 99精品黄色片免费大全| 成人教育av在线| 99久久国产综合精品色伊| 99久久精品免费| 99re66热这里只有精品3直播 | 久久精品日韩一区二区三区| 精品国产a毛片| 精品国产乱码久久久久久闺蜜| 欧美一级电影网站| 欧美videos中文字幕| 亚洲成av人片www| 日本伊人色综合网| 男男视频亚洲欧美| 国产美女精品在线| 国产91色综合久久免费分享| 懂色av一区二区三区免费观看| 成人av小说网| 91麻豆swag| 欧美精品v国产精品v日韩精品| 欧美一区二区三区人| 精品国产乱码久久久久久老虎 | 婷婷久久综合九色综合伊人色| 亚洲成a人片综合在线| 日精品一区二区| 久久不见久久见中文字幕免费| 国产一区二区三区四区在线观看| 成人永久免费视频| 欧美在线三级电影| 精品国产三级a在线观看| 成人欧美一区二区三区黑人麻豆| 亚洲一区二区三区小说| 老司机一区二区| 99久久综合国产精品| 欧美精品乱码久久久久久按摩| 久久九九久精品国产免费直播| 亚洲人成7777| 免费观看久久久4p| 色综合久久中文综合久久牛| 91精品国产综合久久小美女| 久久精品一区二区三区四区| 樱花影视一区二区| 国产毛片精品一区| 欧美日本乱大交xxxxx| 国产午夜精品在线观看| 亚洲国产美国国产综合一区二区| 国产精品88av| 欧美一区二区三区免费视频| 亚洲欧洲av色图| 麻豆91免费观看| 欧美三级视频在线播放| 中文字幕乱码亚洲精品一区| 秋霞成人午夜伦在线观看| 91亚洲精品久久久蜜桃| 日韩精品一区在线| 亚洲福利一二三区|