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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? pngihdrchunk.java

?? 源碼為Eclipse開源開發(fā)平臺桌面開發(fā)工具SWT的源代碼,
?? JAVA
字號:
/******************************************************************************* * Copyright (c) 2000, 2004 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Common Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/cpl-v10.html *  * Contributors: *     IBM Corporation - initial API and implementation *******************************************************************************/package org.eclipse.swt.internal.image;import org.eclipse.swt.*;import org.eclipse.swt.graphics.*;import org.eclipse.swt.internal.Compatibility;class PngIhdrChunk extends PngChunk {	static final int EXPECTED_DATA_LENGTH = 13;		static final int WIDTH_DATA_OFFSET = DATA_OFFSET + 0;	static final int HEIGHT_DATA_OFFSET = DATA_OFFSET + 4;	static final int BIT_DEPTH_OFFSET = DATA_OFFSET + 8;	static final int COLOR_TYPE_OFFSET = DATA_OFFSET + 9;	static final int COMPRESSION_METHOD_OFFSET = DATA_OFFSET + 10;	static final int FILTER_METHOD_OFFSET = DATA_OFFSET + 11;	static final int INTERLACE_METHOD_OFFSET = DATA_OFFSET + 12;		static final int COLOR_TYPE_GRAYSCALE = 0;	static final int COLOR_TYPE_RGB = 2;	static final int COLOR_TYPE_PALETTE = 3;	static final int COLOR_TYPE_GRAYSCALE_WITH_ALPHA = 4;	static final int COLOR_TYPE_RGB_WITH_ALPHA = 6;		static final int INTERLACE_METHOD_NONE = 0;	static final int INTERLACE_METHOD_ADAM7 = 1;		static final int FILTER_NONE = 0;	static final int FILTER_SUB = 1;	static final int FILTER_UP = 2;	static final int FILTER_AVERAGE = 3;	static final int FILTER_PAETH = 4;		static final byte[] ValidBitDepths = {1, 2, 4, 8, 16};	static final byte[] ValidColorTypes = {0, 2, 3, 4, 6};	/** * Construct a PNGChunk using the reference bytes * given. */	PngIhdrChunk(byte[] reference) {	super(reference);}/** * Get the image's width in pixels. */int getWidth() {	return getInt32(WIDTH_DATA_OFFSET);}/** * Set the image's width in pixels. */void setWidth(int value) {	setInt32(WIDTH_DATA_OFFSET, value);}/** * Get the image's height in pixels. */int getHeight() {	return getInt32(HEIGHT_DATA_OFFSET);}/** * Set the image's height in pixels. */void setHeight(int value) {	setInt32(HEIGHT_DATA_OFFSET, value);}/** * Get the image's bit depth. * This is limited to the values 1, 2, 4, 8, or 16. */byte getBitDepth() {	return reference[BIT_DEPTH_OFFSET];}/** * Set the image's bit depth. * This is limited to the values 1, 2, 4, 8, or 16. */void setBitDepth(byte value) {	reference[BIT_DEPTH_OFFSET] = value;}/** * Get the image's color type. * This is limited to the values: * 0 - Grayscale image. * 2 - RGB triple. * 3 - Palette. * 4 - Grayscale with Alpha channel. * 6 - RGB with Alpha channel. */byte getColorType() {	return reference[COLOR_TYPE_OFFSET];}/** * Set the image's color type. * This is limited to the values: * 0 - Grayscale image. * 2 - RGB triple. * 3 - Palette. * 4 - Grayscale with Alpha channel. * 6 - RGB with Alpha channel. */void setColorType(byte value) {	reference[COLOR_TYPE_OFFSET] = value;}/** * Get the image's compression method. * This value must be 0. */byte getCompressionMethod() {	return reference[COMPRESSION_METHOD_OFFSET];}/** * Set the image's compression method. * This value must be 0. */void setCompressionMethod(byte value) {	reference[COMPRESSION_METHOD_OFFSET] = value;}/** * Get the image's filter method. * This value must be 0. */byte getFilterMethod() {	return reference[FILTER_METHOD_OFFSET];}/** * Set the image's filter method. * This value must be 0. */void setFilterMethod(byte value) {	reference[FILTER_METHOD_OFFSET] = value;}/** * Get the image's interlace method. * This value is limited to: * 0 - No interlacing used. * 1 - Adam7 interlacing used. */byte getInterlaceMethod() {	return reference[INTERLACE_METHOD_OFFSET];}/** * Set the image's interlace method. * This value is limited to: * 0 - No interlacing used. * 1 - Adam7 interlacing used. */void setInterlaceMethod(byte value) {	reference[INTERLACE_METHOD_OFFSET] = value;}/** * Answer whether the chunk is a valid IHDR chunk. */void validate(PngFileReadState readState, PngIhdrChunk headerChunk) {	// An IHDR chunk is invalid if any other chunk has	// been read.	if (readState.readIHDR 		|| readState.readPLTE		|| readState.readIDAT		|| readState.readIEND) 	{		SWT.error(SWT.ERROR_INVALID_IMAGE);	} else {		readState.readIHDR = true;	}		super.validate(readState, headerChunk);		if (getLength() != EXPECTED_DATA_LENGTH) SWT.error(SWT.ERROR_INVALID_IMAGE);	if (getCompressionMethod() != 0) SWT.error(SWT.ERROR_INVALID_IMAGE);	if (getInterlaceMethod() != INTERLACE_METHOD_NONE &&		getInterlaceMethod() != INTERLACE_METHOD_ADAM7) {			SWT.error(SWT.ERROR_INVALID_IMAGE);	}		boolean colorTypeIsValid = false;	byte colorType = getColorType();	for (int i = 0; i < ValidColorTypes.length; i++) {		if (ValidColorTypes[i] == colorType) {			colorTypeIsValid = true;			break;		}	}	if (!colorTypeIsValid) SWT.error(SWT.ERROR_INVALID_IMAGE);	boolean bitDepthIsValid = false;	byte bitDepth = getBitDepth();	for (int i = 0; i < ValidBitDepths.length; i++) {		if (ValidBitDepths[i] == bitDepth) {			bitDepthIsValid = true;			break;		}	}	if (!bitDepthIsValid) SWT.error(SWT.ERROR_INVALID_IMAGE);		if ((colorType == COLOR_TYPE_RGB 		|| colorType == COLOR_TYPE_RGB_WITH_ALPHA		|| colorType == COLOR_TYPE_GRAYSCALE_WITH_ALPHA)		&& bitDepth < 8) 	{			SWT.error(SWT.ERROR_INVALID_IMAGE);	}		if (colorType == COLOR_TYPE_PALETTE && bitDepth > 8) {		SWT.error(SWT.ERROR_INVALID_IMAGE);	}}String getColorTypeString() {	switch (getColorType()) {		case COLOR_TYPE_GRAYSCALE: 				return "Grayscale";		case COLOR_TYPE_RGB: 					return "RGB";				case COLOR_TYPE_PALETTE:				return "Palette";		case COLOR_TYPE_GRAYSCALE_WITH_ALPHA:	return "Grayscale with Alpha";		case COLOR_TYPE_RGB_WITH_ALPHA:			return "RGB with Alpha";		default:								return "Unknown - " + getColorType();	}}String getFilterMethodString() {	switch (getFilterMethod()) {		case FILTER_NONE:		return "None";		case FILTER_SUB:		return "Sub";		case FILTER_UP:			return "Up";		case FILTER_AVERAGE:	return "Average";		case FILTER_PAETH:		return "Paeth";		default:				return "Unknown";	}}String getInterlaceMethodString() {	switch (getInterlaceMethod()) {		case INTERLACE_METHOD_NONE: 	return "Not Interlaced";		case INTERLACE_METHOD_ADAM7:	return "Interlaced - ADAM7";		default:				return "Unknown";	}}void contributeToString(StringBuffer buffer) {	buffer.append("\n\tWidth: ");	buffer.append(getWidth());	buffer.append("\n\tHeight: ");	buffer.append(getHeight());	buffer.append("\n\tBit Depth: ");	buffer.append(getBitDepth());	buffer.append("\n\tColor Type: ");	buffer.append(getColorTypeString());	buffer.append("\n\tCompression Method: ");	buffer.append(getCompressionMethod());	buffer.append("\n\tFilter Method: ");	buffer.append(getFilterMethodString());	buffer.append("\n\tInterlace Method: ");	buffer.append(getInterlaceMethodString());}boolean getMustHavePalette() {	return getColorType() == COLOR_TYPE_PALETTE;}boolean getCanHavePalette() {	int colorType = getColorType();	return colorType != COLOR_TYPE_GRAYSCALE && 		colorType != COLOR_TYPE_GRAYSCALE_WITH_ALPHA;}/** * Answer the pixel size in bits based on the color type * and bit depth. */int getBitsPerPixel() {	int bitDepth = getBitDepth();	switch (getColorType()) {		case COLOR_TYPE_RGB_WITH_ALPHA:			return 4 * bitDepth;		case COLOR_TYPE_RGB:			return 3 * bitDepth;		case COLOR_TYPE_GRAYSCALE_WITH_ALPHA:			return 2 * bitDepth;		case COLOR_TYPE_GRAYSCALE:		case COLOR_TYPE_PALETTE:			return bitDepth;		default:			SWT.error(SWT.ERROR_INVALID_IMAGE);			return 0;	}}/** * Answer the pixel size in bits based on the color type * and bit depth. */int getSwtBitsPerPixel() {	int bitDepth = getBitDepth();	switch (getColorType()) {		case COLOR_TYPE_RGB_WITH_ALPHA:		case COLOR_TYPE_RGB:		case COLOR_TYPE_GRAYSCALE_WITH_ALPHA:			return 24;		case COLOR_TYPE_GRAYSCALE:		case COLOR_TYPE_PALETTE:			return Math.min(bitDepth, 8);		default:			SWT.error(SWT.ERROR_INVALID_IMAGE);			return 0;	}}int getFilterByteOffset() {	if (getBitDepth() < 8) return 1;	return getBitsPerPixel() / 8;}boolean usesDirectColor() {	switch (getColorType()) {		case COLOR_TYPE_GRAYSCALE:		case COLOR_TYPE_GRAYSCALE_WITH_ALPHA:		case COLOR_TYPE_RGB:		case COLOR_TYPE_RGB_WITH_ALPHA:			return true;		default:			return false;	}}PaletteData createGrayscalePalette() {	int bitDepth = Math.min(getBitDepth(), 8);	int max = Compatibility.pow2(bitDepth) - 1;	int delta = 255 / max;	int gray = 0;	RGB[] rgbs = new RGB[max + 1]; 	for (int i = 0; i <= max; i++) {		rgbs[i] = new RGB(gray, gray, gray);		gray += delta;	}	return new PaletteData(rgbs);}PaletteData getPaletteData() {	switch (getColorType()) {		case COLOR_TYPE_GRAYSCALE:			return createGrayscalePalette();		case COLOR_TYPE_GRAYSCALE_WITH_ALPHA:		case COLOR_TYPE_RGB:		case COLOR_TYPE_RGB_WITH_ALPHA:			return new PaletteData(0xFF0000, 0xFF00, 0xFF);		default:			return null;	}	}}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人app下载| 亚洲bt欧美bt精品777| 国产剧情一区在线| 国产亚洲人成网站| 成人黄色一级视频| 亚洲精选免费视频| 在线播放日韩导航| 国产九色精品成人porny| 国产精品另类一区| 欧美在线免费视屏| 日本欧美一区二区| 国产视频一区不卡| 色狠狠色噜噜噜综合网| 日韩高清不卡一区二区| 久久影院电视剧免费观看| 成人免费福利片| 亚洲一区二区三区爽爽爽爽爽 | 成人美女视频在线看| 中文字幕一区二区三区不卡在线 | 日韩欧美一级片| 风流少妇一区二区| 亚洲一级在线观看| 久久久精品日韩欧美| 在线观看不卡一区| 捆绑变态av一区二区三区| 国产精品色噜噜| 91精品国产综合久久久久久久| 国产精品亚洲专一区二区三区| 一区二区三区欧美在线观看| 欧美va在线播放| 色www精品视频在线观看| 老司机免费视频一区二区三区| 国产精品的网站| 日韩欧美不卡在线观看视频| 色婷婷综合五月| 国产一区二区三区久久久| 亚洲精品中文在线| 国产日韩欧美高清| 91精品国产91综合久久蜜臀| 91猫先生在线| 丁香五精品蜜臀久久久久99网站| 亚洲成av人片www| 自拍偷自拍亚洲精品播放| 精品奇米国产一区二区三区| 日本精品免费观看高清观看| 国产99久久精品| 久99久精品视频免费观看| 亚洲午夜日本在线观看| 国产精品卡一卡二卡三| 亚洲精品一区二区三区影院 | 国产中文字幕精品| 视频在线观看一区| 一区二区在线电影| 最新欧美精品一区二区三区| 久久免费国产精品| 日韩免费高清电影| 91精品国产黑色紧身裤美女| 欧美日韩一区三区| 一本大道av伊人久久综合| 成人av在线网| 成人综合婷婷国产精品久久蜜臀| 麻豆freexxxx性91精品| 全国精品久久少妇| 亚洲高清一区二区三区| 亚洲影视资源网| 亚洲人成精品久久久久久| 中文字幕欧美三区| 中文天堂在线一区| 国产精品美女久久久久久久网站| 国产亚洲短视频| 国产人久久人人人人爽| 亚洲国产经典视频| 国产精品乱码一区二区三区软件| 中文文精品字幕一区二区| 中国色在线观看另类| 国产精品美女久久久久久2018| 欧美激情一区二区三区四区| 国产欧美精品在线观看| 国产欧美日产一区| 亚洲视频一区二区免费在线观看| 中文字幕一区二区三区四区不卡| 1区2区3区精品视频| 一区视频在线播放| 亚洲精品国产成人久久av盗摄| 亚洲综合自拍偷拍| 婷婷中文字幕综合| 蜜桃久久久久久久| 国产成人在线网站| 成年人国产精品| 欧美性大战久久久久久久| 欧美日韩夫妻久久| 欧美xxxx在线观看| 中文字幕精品—区二区四季| 中文字幕中文字幕在线一区| 亚洲最大成人综合| 无码av免费一区二区三区试看| 婷婷综合久久一区二区三区| 精品伊人久久久久7777人| 国产成人福利片| 99久久夜色精品国产网站| 欧美三级一区二区| 日韩精品一区二区三区视频 | 日韩欧美一二三区| 国产日韩在线不卡| 一区二区三区四区高清精品免费观看 | av电影在线观看完整版一区二区| 91免费国产在线| 91精品国产一区二区三区 | 欧美日韩综合在线| 欧美精品一区二区三区高清aⅴ | 欧美日韩免费在线视频| 欧美电影免费观看高清完整版在 | 另类中文字幕网| 99视频热这里只有精品免费| 在线电影一区二区三区| 国产精品日韩精品欧美在线| 亚洲成人动漫精品| 成人免费视频视频| 337p亚洲精品色噜噜狠狠| 中文字幕 久热精品 视频在线 | 中文字幕一区二区三区不卡 | 欧美国产精品劲爆| 日韩一区精品视频| av亚洲精华国产精华精| 日韩亚洲电影在线| 亚洲欧美另类久久久精品 | 青青草97国产精品免费观看无弹窗版| 国产成人亚洲综合色影视| 欧美视频在线观看一区二区| 国产人久久人人人人爽| 日韩精品1区2区3区| 色欧美日韩亚洲| 国产日韩欧美电影| 日韩影院精彩在线| 日本精品裸体写真集在线观看| 久久久久久久久久久久电影 | 亚洲一级片在线观看| 国产成人a级片| 日韩午夜三级在线| 亚洲va国产va欧美va观看| av日韩在线网站| 久久亚区不卡日本| 奇米精品一区二区三区四区 | 精品国产乱码久久久久久久久 | 免费看精品久久片| 欧美日韩一区二区三区免费看 | 日韩制服丝袜先锋影音| 在线观看av一区| 亚洲日本青草视频在线怡红院 | 欧美在线999| 国产精品国产自产拍高清av王其 | 在线观看免费一区| 亚洲男同1069视频| av日韩在线网站| 国产精品福利av| 成人av免费观看| 国产精品久久久久9999吃药| 国产成人啪免费观看软件| 久久久久久久综合狠狠综合| 毛片av中文字幕一区二区| 337p亚洲精品色噜噜| 蜜臀av一区二区在线免费观看| 777久久久精品| 免费在线观看视频一区| 欧美精品一级二级| 丝袜a∨在线一区二区三区不卡| 在线欧美日韩精品| 亚洲图片欧美一区| 欧美人与z0zoxxxx视频| 天天综合网 天天综合色| 欧美精品亚洲一区二区在线播放| 亚洲a一区二区| 欧美久久久久久蜜桃| 蜜芽一区二区三区| 久久免费电影网| 成人激情校园春色| 一区二区三区小说| 欧美日韩一区二区三区免费看| jlzzjlzz国产精品久久| 亚洲国产精品黑人久久久| 91在线精品秘密一区二区| 亚洲美女视频在线| 欧美日韩高清一区二区不卡| 奇米四色…亚洲| 欧美激情一区二区三区全黄| 99re免费视频精品全部| 亚洲一区日韩精品中文字幕| 91精品黄色片免费大全| 国内精品在线播放| 国产精品国产三级国产有无不卡| 99精品国产一区二区三区不卡| 一区二区三区波多野结衣在线观看| 欧美日韩高清在线播放| 久久se精品一区二区| 亚洲国产成人午夜在线一区| 欧美性xxxxx极品少妇| 看片网站欧美日韩| 亚洲欧洲国产日韩| 日韩一区二区精品在线观看| 国产成人午夜高潮毛片|