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

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

?? image.java

?? 源碼為Eclipse開源開發平臺桌面開發工具SWT的源代碼,
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
	bmiHeader.biHeight = -height;	bmiHeader.biPlanes = 1;	bmiHeader.biBitCount = (short)depth;	if (useBitfields) bmiHeader.biCompression = OS.BI_BITFIELDS;	else bmiHeader.biCompression = OS.BI_RGB;	byte[] bmi;	if (isDirect) bmi = new byte[BITMAPINFOHEADER.sizeof + (useBitfields ? 12 : 0)];	else  bmi = new byte[BITMAPINFOHEADER.sizeof + rgbs.length * 4];	OS.MoveMemory(bmi, bmiHeader, BITMAPINFOHEADER.sizeof);	/* Set the rgb colors into the bitmap info */	int offset = BITMAPINFOHEADER.sizeof;	if (isDirect) {		if (useBitfields) {			int redMask = 0;			int greenMask = 0;			int blueMask = 0;			switch (depth) {				case 16:					redMask = 0x7C00;					greenMask = 0x3E0;					blueMask = 0x1F;					/* little endian */					bmi[offset] = (byte)((redMask & 0xFF) >> 0);					bmi[offset + 1] = (byte)((redMask & 0xFF00) >> 8);					bmi[offset + 2] = (byte)((redMask & 0xFF0000) >> 16);					bmi[offset + 3] = (byte)((redMask & 0xFF000000) >> 24);					bmi[offset + 4] = (byte)((greenMask & 0xFF) >> 0);					bmi[offset + 5] = (byte)((greenMask & 0xFF00) >> 8);					bmi[offset + 6] = (byte)((greenMask & 0xFF0000) >> 16);					bmi[offset + 7] = (byte)((greenMask & 0xFF000000) >> 24);					bmi[offset + 8] = (byte)((blueMask & 0xFF) >> 0);					bmi[offset + 9] = (byte)((blueMask & 0xFF00) >> 8);					bmi[offset + 10] = (byte)((blueMask & 0xFF0000) >> 16);					bmi[offset + 11] = (byte)((blueMask & 0xFF000000) >> 24);					break;				case 32: 					redMask = 0xFF00;					greenMask = 0xFF0000;					blueMask = 0xFF000000;					/* big endian */					bmi[offset] = (byte)((redMask & 0xFF000000) >> 24);					bmi[offset + 1] = (byte)((redMask & 0xFF0000) >> 16);					bmi[offset + 2] = (byte)((redMask & 0xFF00) >> 8);					bmi[offset + 3] = (byte)((redMask & 0xFF) >> 0);					bmi[offset + 4] = (byte)((greenMask & 0xFF000000) >> 24);					bmi[offset + 5] = (byte)((greenMask & 0xFF0000) >> 16);					bmi[offset + 6] = (byte)((greenMask & 0xFF00) >> 8);					bmi[offset + 7] = (byte)((greenMask & 0xFF) >> 0);					bmi[offset + 8] = (byte)((blueMask & 0xFF000000) >> 24);					bmi[offset + 9] = (byte)((blueMask & 0xFF0000) >> 16);					bmi[offset + 10] = (byte)((blueMask & 0xFF00) >> 8);					bmi[offset + 11] = (byte)((blueMask & 0xFF) >> 0);					break;				default:					SWT.error(SWT.ERROR_UNSUPPORTED_DEPTH);			}		}	} else {		for (int j = 0; j < rgbs.length; j++) {			bmi[offset] = (byte)rgbs[j].blue;			bmi[offset + 1] = (byte)rgbs[j].green;			bmi[offset + 2] = (byte)rgbs[j].red;			bmi[offset + 3] = 0;			offset += 4;		}	}	int[] pBits = new int[1];	int hDib = OS.CreateDIBSection(0, bmi, OS.DIB_RGB_COLORS, pBits, 0, 0);	if (hDib == 0) SWT.error(SWT.ERROR_NO_HANDLES);		/* Bitblt DDB into DIB */		int hdcSource = OS.CreateCompatibleDC(hDC);	int hdcDest = OS.CreateCompatibleDC(hDC);	int hOldSrc = OS.SelectObject(hdcSource, hBitmap);	int hOldDest = OS.SelectObject(hdcDest, hDib);	OS.BitBlt(hdcDest, 0, 0, width, height, hdcSource, 0, 0, OS.SRCCOPY);	OS.SelectObject(hdcSource, hOldSrc);	OS.SelectObject(hdcDest, hOldDest);	OS.DeleteDC(hdcSource);	OS.DeleteDC(hdcDest);		return hDib;}/** * Disposes of the operating system resources associated with * the image. Applications must dispose of all images which * they allocate. */public void dispose () {	if (handle == 0) return;	if (device.isDisposed()) return;	if (memGC != null) memGC.dispose();	if (type == SWT.ICON) {		if (OS.IsWinCE) data = null;		OS.DestroyIcon (handle);	} else {		OS.DeleteObject (handle);	}	handle = 0;	memGC = null;	if (device.tracking) device.dispose_Object(this);	device = null;}/** * Compares the argument to the receiver, and returns true * if they represent the <em>same</em> object using a class * specific comparison. * * @param object the object to compare with this object * @return <code>true</code> if the object is the same as this object and <code>false</code> otherwise * * @see #hashCode */public boolean equals (Object object) {	if (object == this) return true;	if (!(object instanceof Image)) return false;	Image image = (Image) object;	return device == image.device && handle == image.handle;}/** * Returns the color to which to map the transparent pixel, or null if * the receiver has no transparent pixel. * <p> * There are certain uses of Images that do not support transparency * (for example, setting an image into a button or label). In these cases, * it may be desired to simulate transparency by using the background * color of the widget to paint the transparent pixels of the image. * Use this method to check which color will be used in these cases * in place of transparency. This value may be set with setBackground(). * <p> * * @return the background color of the image, or null if there is no transparency in the image * * @exception SWTException <ul> *    <li>ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed</li> * </ul> */public Color getBackground() {	if (isDisposed()) SWT.error(SWT.ERROR_GRAPHIC_DISPOSED);	if (transparentPixel == -1) return null;	/* Get the HDC for the device */	int hDC = device.internal_new_GC(null);		/* Compute the background color */	BITMAP bm = new BITMAP();			OS.GetObject(handle, BITMAP.sizeof, bm);	int hdcMem = OS.CreateCompatibleDC(hDC);	int hOldObject = OS.SelectObject(hdcMem, handle);	int red = 0, green = 0, blue = 0;	if (bm.bmBitsPixel <= 8)  {		if (OS.IsWinCE) {			byte[] pBits = new byte[1];			OS.MoveMemory(pBits, bm.bmBits, 1);			byte oldValue = pBits[0];						int mask = (0xFF << (8 - bm.bmBitsPixel)) & 0x00FF;			pBits[0] = (byte)((transparentPixel << (8 - bm.bmBitsPixel)) | (pBits[0] & ~mask));			OS.MoveMemory(bm.bmBits, pBits, 1);			int color = OS.GetPixel(hdcMem, 0, 0);       		pBits[0] = oldValue;       		OS.MoveMemory(bm.bmBits, pBits, 1);							blue = (color & 0xFF0000) >> 16;			green = (color & 0xFF00) >> 8;			red = color & 0xFF;		} else {			byte[] color = new byte[4];			OS.GetDIBColorTable(hdcMem, transparentPixel, 1, color);			blue = color[0] & 0xFF;			green = color[1] & 0xFF;			red = color[2] & 0xFF;		}	} else {		switch (bm.bmBitsPixel) {			case 16:				blue = (transparentPixel & 0x1F) << 3;				green = (transparentPixel & 0x3E0) >> 2;				red = (transparentPixel & 0x7C00) >> 7;				break;			case 24:				blue = (transparentPixel & 0xFF0000) >> 16;				green = (transparentPixel & 0xFF00) >> 8;				red = transparentPixel & 0xFF;				break;			case 32:				blue = (transparentPixel & 0xFF000000) >>> 24;				green = (transparentPixel & 0xFF0000) >> 16;				red = (transparentPixel & 0xFF00) >> 8;				break;			default:				return null;		}	}	OS.SelectObject(hdcMem, hOldObject);	OS.DeleteDC(hdcMem);		/* Release the HDC for the device */	device.internal_dispose_GC(hDC, null);	return Color.win32_new(device, 0x02000000 | (blue << 16) | (green << 8) | red);}/** * Returns the bounds of the receiver. The rectangle will always * have x and y values of 0, and the width and height of the * image. * * @return a rectangle specifying the image's bounds * * @exception SWTException <ul> *    <li>ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed</li> *    <li>ERROR_INVALID_IMAGE - if the image is not a bitmap or an icon</li> * </ul> */public Rectangle getBounds() {	if (isDisposed()) SWT.error(SWT.ERROR_GRAPHIC_DISPOSED);	switch (type) {		case SWT.BITMAP:			BITMAP bm = new BITMAP();			OS.GetObject(handle, BITMAP.sizeof, bm);			return new Rectangle(0, 0, bm.bmWidth, bm.bmHeight);		case SWT.ICON:			if (OS.IsWinCE) {				return new Rectangle(0, 0, data.width, data.height);			} else {				ICONINFO info = new ICONINFO();				OS.GetIconInfo(handle, info);				int hBitmap = info.hbmColor;				if (hBitmap == 0) hBitmap = info.hbmMask;				bm = new BITMAP();				OS.GetObject(hBitmap, BITMAP.sizeof, bm);				if (hBitmap == info.hbmMask) bm.bmHeight /= 2;				if (info.hbmColor != 0) OS.DeleteObject(info.hbmColor);				if (info.hbmMask != 0) OS.DeleteObject(info.hbmMask);				return new Rectangle(0, 0, bm.bmWidth, bm.bmHeight);			}		default:			SWT.error(SWT.ERROR_UNSUPPORTED_FORMAT);			return null;	}}/** * Returns an <code>ImageData</code> based on the receiver * Modifications made to this <code>ImageData</code> will not * affect the Image. * * @return an <code>ImageData</code> containing the image's data and attributes * * @exception SWTException <ul> *    <li>ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed</li> *    <li>ERROR_INVALID_IMAGE - if the image is not a bitmap or an icon</li> * </ul> * * @see ImageData */public ImageData getImageData() {	if (isDisposed()) SWT.error(SWT.ERROR_GRAPHIC_DISPOSED);	BITMAP bm;	int depth, width, height;	switch (type) {		case SWT.ICON: {			if (OS.IsWinCE) return data;			ICONINFO info = new ICONINFO();				if (OS.IsWinCE) SWT.error(SWT.ERROR_NOT_IMPLEMENTED);			OS.GetIconInfo(handle, info);			/* Get the basic BITMAP information */			int hBitmap = info.hbmColor;			if (hBitmap == 0) hBitmap = info.hbmMask;			bm = new BITMAP();			OS.GetObject(hBitmap, BITMAP.sizeof, bm);			depth = bm.bmPlanes * bm.bmBitsPixel;			width = bm.bmWidth;			if (hBitmap == info.hbmMask) bm.bmHeight /= 2;			height = bm.bmHeight;			int numColors = 0;			if (depth <= 8) numColors = 1 << depth;			/* Create the BITMAPINFO */			BITMAPINFOHEADER bmiHeader = new BITMAPINFOHEADER();			bmiHeader.biSize = BITMAPINFOHEADER.sizeof;			bmiHeader.biWidth = width;			bmiHeader.biHeight = -height;			bmiHeader.biPlanes = 1;			bmiHeader.biBitCount = (short)depth;			bmiHeader.biCompression = OS.BI_RGB;			byte[] bmi = new byte[BITMAPINFOHEADER.sizeof + numColors * 4];			OS.MoveMemory(bmi, bmiHeader, BITMAPINFOHEADER.sizeof);						/* Get the HDC for the device */			int hDC = device.internal_new_GC(null);				/* Create the DC and select the bitmap */			int hBitmapDC = OS.CreateCompatibleDC(hDC);			int hOldBitmap = OS.SelectObject(hBitmapDC, hBitmap);			/* Select the palette if necessary */			int oldPalette = 0;			if (depth <= 8) {				int hPalette = device.hPalette;				if (hPalette != 0) {					oldPalette = OS.SelectPalette(hBitmapDC, hPalette, false);					OS.RealizePalette(hBitmapDC);				}			}			/* Find the size of the image and allocate data */			int imageSize;			/* Call with null lpBits to get the image size */			if (OS.IsWinCE) SWT.error(SWT.ERROR_NOT_IMPLEMENTED);			OS.GetDIBits(hBitmapDC, hBitmap, 0, height, 0, bmi, OS.DIB_RGB_COLORS);			OS.MoveMemory(bmiHeader, bmi, BITMAPINFOHEADER.sizeof);			imageSize = bmiHeader.biSizeImage;			byte[] data = new byte[imageSize];			/* Get the bitmap data */			int hHeap = OS.GetProcessHeap();			int lpvBits = OS.HeapAlloc(hHeap, OS.HEAP_ZERO_MEMORY, imageSize);				if (OS.IsWinCE) SWT.error(SWT.ERROR_NOT_IMPLEMENTED);			OS.GetDIBits(hBitmapDC, hBitmap, 0, height, lpvBits, bmi, OS.DIB_RGB_COLORS);			OS.MoveMemory(data, lpvBits, imageSize);			/* Calculate the palette */			PaletteData palette = null;			if (depth <= 8) {				RGB[] rgbs = new RGB[numColors];				int srcIndex = 40;				for (int i = 0; i < numColors; i++) {					rgbs[i] = new RGB(bmi[srcIndex + 2] & 0xFF, bmi[srcIndex + 1] & 0xFF, bmi[srcIndex] & 0xFF);					srcIndex += 4;				}				palette = new PaletteData(rgbs);			} else if (depth == 16) {				palette = new PaletteData(0x7C00, 0x3E0, 0x1F);			} else if (depth == 24) {				palette = new PaletteData(0xFF, 0xFF00, 0xFF0000);			} else if (depth == 32) {				palette = new PaletteData(0xFF00, 0xFF0000, 0xFF000000);			} else {				SWT.error(SWT.ERROR_UNSUPPORTED_DEPTH);			}			/* Do the mask */			byte [] maskData = null;			if (info.hbmColor == 0) {				/* Do the bottom half of the mask */				maskData = new byte[imageSize];				if (OS.IsWinCE) SWT.error(SWT.ERROR_NOT_IMPLEMENTED);				OS.GetDIBits(hBitmapDC, hBitmap, height, height, lpvBits, bmi, OS.DIB_RGB_COLORS);				OS.MoveMemory(maskData, lpvBits, imageSize);			} else {				/* Do the entire mask */				/* Create the BITMAPINFO */				bmiHeader = new BITMAPINFOHEADER();				bmiHeader.biSize = BITMAPINFOHEADER.sizeof;				bmiHeader.biWidth = width;				bmiHeader.biHeight = -height;				bmiHeader.biPlanes = 1;				bmiHeader.biBitCount = 1;				bmiHeader.biCompression = OS.BI_RGB;				bmi = new byte[BITMAPINFOHEADER.sizeof + 8];				OS.MoveMemory(bmi, bmiHeader, BITMAPINFOHEADER.sizeof);								/* First color black, second color white */				int offset = BITMAPINFOHEADER.sizeof;				bmi[offset + 4] = bmi[offset + 5] = bmi[offset + 6] = (byte)0xFF;				bmi[offset + 7] = 0;				OS.SelectObject(hBitmapDC, info.hbmMask);				/* Call with null lpBits to get the image size */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
不卡一区二区三区四区| 久久99精品国产91久久来源| 夜夜嗨av一区二区三区网页| 久久精品国产精品亚洲精品| 欧美精品久久天天躁| 蜜桃视频在线观看一区| 久久一留热品黄| 97精品国产97久久久久久久久久久久| 中文字幕不卡三区| 99久久精品国产毛片| 亚洲成av人片| 久久综合九色欧美综合狠狠| 成人在线一区二区三区| 久久综合九色综合97婷婷女人 | 蜜臀av一级做a爰片久久| 日韩欧美不卡一区| 91国在线观看| 国产精品一线二线三线精华| 综合久久久久久| 日韩三级中文字幕| 色综合久久六月婷婷中文字幕| 青青草精品视频| 日韩伦理免费电影| 国产日韩在线不卡| 欧美一卡二卡在线观看| 色妞www精品视频| 国产一区视频网站| 蜜臀av性久久久久蜜臀aⅴ流畅| 国产欧美日产一区| 久久久久久久国产精品影院| 9191成人精品久久| 91官网在线免费观看| 国产盗摄女厕一区二区三区| 青草国产精品久久久久久| 亚洲图片一区二区| 五月天欧美精品| 性感美女极品91精品| 午夜电影网一区| 亚洲一区免费视频| 午夜精品久久久久久久| 日本成人在线一区| 狠狠色狠狠色综合系列| 极品美女销魂一区二区三区免费| 久久不见久久见中文字幕免费| 免费成人美女在线观看.| 精品中文字幕一区二区小辣椒| 久久97超碰色| 成人黄色在线看| 欧美美女直播网站| 久久久久久免费| 亚洲一区二区三区小说| 亚洲成va人在线观看| 国产又黄又大久久| 91黄视频在线观看| 欧美一级爆毛片| 亚洲一级不卡视频| 成熟亚洲日本毛茸茸凸凹| 色爱区综合激月婷婷| 久久九九国产精品| 亚洲成人一区二区在线观看| 国产伦精一区二区三区| 欧美性猛片aaaaaaa做受| 91精品国产综合久久香蕉麻豆| 欧美一级黄色录像| 亚洲电影欧美电影有声小说| 国产精品综合网| 欧美精品一区二区三区蜜臀 | 日韩一级欧美一级| 亚洲欧美国产77777| 国产精一品亚洲二区在线视频| 91精品久久久久久久91蜜桃| 一区二区免费看| 99国产精品久久久久久久久久久| 精品国产成人在线影院 | 激情图片小说一区| 日韩免费一区二区| 国产在线不卡一区| www激情久久| 国产盗摄精品一区二区三区在线| 欧美不卡一区二区| 免费观看一级特黄欧美大片| 91精品午夜视频| 蜜桃av噜噜一区| 国产欧美日韩另类一区| 国产.欧美.日韩| 国产精品网站在线观看| 91成人免费网站| 亚洲成人精品在线观看| 91亚洲国产成人精品一区二区三| 自拍偷在线精品自拍偷无码专区 | 色999日韩国产欧美一区二区| 国产精品久久久久一区二区三区| 在线视频一区二区三区| 奇米777欧美一区二区| 久久婷婷国产综合精品青草| 一本到不卡精品视频在线观看| 亚洲国产视频网站| 国产亚洲精品aa| 国产欧美综合在线观看第十页| 日本中文字幕一区二区视频| 久久久久久黄色| 欧美日韩精品免费| 99视频在线精品| 国产一区二区三区蝌蚪| 亚洲一区二区三区视频在线播放 | 国产麻豆成人传媒免费观看| 夜夜夜精品看看| 国产精品久久精品日日| 欧美精品一区二区三区四区 | 国产精品一区二区在线看| 亚洲午夜久久久久久久久电影院| 久久婷婷色综合| 国产午夜一区二区三区| 精品动漫一区二区三区在线观看| 欧美色男人天堂| 91国产丝袜在线播放| 在线看日本不卡| 欧美日韩免费视频| 欧美精品日韩综合在线| 色狠狠综合天天综合综合| 一本久道久久综合中文字幕| 成人激情校园春色| 色综合视频一区二区三区高清| 国产 日韩 欧美大片| 99免费精品视频| 在线观看网站黄不卡| 91精品国产91久久久久久最新毛片| 欧美影院一区二区三区| 欧美日韩的一区二区| 精品国产一区久久| 国产欧美一区二区精品性| **网站欧美大片在线观看| 夜夜爽夜夜爽精品视频| 日韩在线a电影| 国产成人午夜精品5599| 欧美日韩一区中文字幕| 91精品欧美综合在线观看最新| 日韩精品一区二区三区swag| 精品久久久影院| 亚洲自拍与偷拍| 成人激情小说乱人伦| 5858s免费视频成人| 国产精品国产三级国产普通话蜜臀 | 国产自产高清不卡| 欧美色图片你懂的| 亚洲国产精品99久久久久久久久 | 国产精品久久久久aaaa樱花 | 成人免费在线视频| 国产一区二区在线观看视频| 欧美日韩国产成人在线91| 国产精品麻豆欧美日韩ww| 国产一区激情在线| 欧美午夜精品一区二区蜜桃| 国产精品拍天天在线| 黄色小说综合网站| 久久免费电影网| 国产一区二区三区在线观看免费 | 久久99精品久久久久| 欧美一a一片一级一片| 亚洲成人你懂的| 欧美日韩精品一区二区三区四区| 亚洲女与黑人做爰| 99在线视频精品| 樱花影视一区二区| 欧美日韩精品久久久| 天天综合网天天综合色| 欧美一区午夜视频在线观看 | 秋霞影院一区二区| 精品国产污污免费网站入口| 国产一区二区三区不卡在线观看 | 色偷偷88欧美精品久久久| 一区二区三区四区乱视频| 91黄色小视频| 老司机精品视频一区二区三区| 精品国产伦一区二区三区观看方式| 麻豆精品在线看| 国产精品久久久久aaaa樱花| 欧美影视一区在线| 国产一区二区精品久久| 亚洲激情自拍视频| 日韩精品一区国产麻豆| 99久久久国产精品| 免费一级片91| 自拍偷拍欧美激情| 日本一区二区成人在线| 在线观看日韩电影| 麻豆国产精品视频| 亚洲一区二区不卡免费| 国产精品丝袜久久久久久app| 欧美日韩精品一区二区三区蜜桃 | 国产精品青草久久| 久久久久久久久久看片| 欧美日韩夫妻久久| 欧日韩精品视频| 色欧美乱欧美15图片| 91色|porny| 欧美艳星brazzers| 欧美性色黄大片手机版| 欧美日韩亚洲不卡| 91美女在线看|