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

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

?? imagetogif.java

?? JavaExplorer是一個獨立于平臺的瀏覽器
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/**  * File and FTP Explorer  * Copyright 2002  * BOESCH Vincent  *  * This program is free software; you can redistribute it and/or  * modify it under the terms of the GNU General Public License  * as published by the Free Software Foundation; either version 2  * of the License, or (at your option) any later version.  *  * This program is distributed in the hope that it will be useful,  * but WITHOUT ANY WARRANTY; without even the implied warranty of  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  * GNU General Public License for more details.  *  * You should have received a copy of the GNU General Public License  * along with this program; if not, write to the Free Software  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.  */package javaexplorer.io.encoder;import java.awt.*;import java.awt.image.PixelGrabber;import java.io.*;import java.util.Vector;public class ImageToGif extends Canvas {    //private final static int COLOR_MAX = 256;    //private final static int TABLESIZE = 5003;    private short[] Block;    private short BlockPos;    private short clearCode;    private short[] code;    private short[] codeCharacter;    private DataOutputStream dataOut;    private short endCode;    private byte flagLSD;    private short freeSlot;    private Image image;    private short imgHeight;    private short imgWidth;    private short lzwBits;    private int lzwData;    private boolean message;    private OutputStream output;    private int[] palArr;    private int palSize;    private short[] pixCol;    private short[] prefix;    private short sActCodeSize;    private short sOriginalCodeSize;    /**     *  Constructeur objet ImageToGif     *     *@param  image1           Description     *      of the Parameter     *@param  outputstream     Description     *      of the Parameter     *@param  flag             Description     *      of the Parameter     *@exception  IOException  Description     *      of the Exception     */    public ImageToGif(Image image1, OutputStream outputstream, boolean flag)        throws IOException {        image = image1;        output = outputstream;        message = flag;        startProc();    }    /**     */    public void CalcSpecialCodes() {        clearCode = (short) (1 << sOriginalCodeSize);        for (short word0 = 0; word0 < clearCode; word0++) {            prefix[word0] = word0;            codeCharacter[word0] = (byte) word0;        }        endCode = (short) (clearCode + 1);        freeSlot = (short) (clearCode + 2);        sActCodeSize = (short) (sOriginalCodeSize + 1);    }    /**     */    public void ClearCompressionTable() {        for (short word0 = 0; word0 < 5003; word0++) {            code[word0] = -1;        }    }    /**     *@param  word0  Description of the Parameter     *@param  word1  Description of the Parameter     *@return        Description of the Return     *      Value     */    public short FindSlot(short word0, short word1) {        short word2 = (short) ((word1 << 4) ^ word0);        short word3 = (short) ((word2 != 0) ? (5003 - word2) : 1);        do {            do {                if (code[word2] == -1) {                    return word2;                }                if ((prefix[word2] == word0) &&                        (codeCharacter[word2] == word1)) {                    return word2;                }                word2 -= word3;            } while (word2 >= 0);            word2 += 5003;        } while (true);    }    /**     *@param  word0  Description of the Parameter     *@return        Description of the Return     *      Value     */    public char MSBtoLSB(short word0) {        short word1 = (short) (word0 >> 8);        short word2 = (short) ((word0 & 0xff) << 8);        return (char) (word2 + word1);    }    /**     *@return    Description of the Return     *      Value     */    public boolean calcGif() {        try {            return writeHeader() && writeLSD() && writeGlobalPalette() &&            writeImageDescriptor() && writeDataBlocks();        } catch (Exception ex) {            return false;        }    }    /**     *@return    Description of the Return     *      Value     */    public boolean closeGif() {        try {            dataOut.writeByte(59);            output.close();            return true;        } catch (Exception ex) {            return false;        }    }    /**     *  Gets the imageInfo attribute of the     *  ImageToGif object     *     *@return    The imageInfo value     */    public boolean getImageInfo() {        int i1 = 0;        int j1 = 0;        int k1 = 0;        int[] ai1 = {            0xffffff, 0xffffff, 0xe0e0c0, 0xe0e0e0, 0xf0f0f0, 0xf8f8f8, 0xfcfcfc,            0xfefefe, 0xffffff, 0xffffff        };        try {            imgWidth = (short) image.getWidth(this);            imgHeight = (short) image.getHeight(this);            int l = imgWidth * imgHeight;            int[] ai = new int[l];            PixelGrabber pixelgrabber = new PixelGrabber(image, 0, 0, imgWidth,                    imgHeight, ai, 0, imgWidth);            Vector vector = new Vector(256);            Vector vector1 = new Vector(1);            Integer[] ainteger = new Integer[0];            Integer[] ainteger1 = new Integer[1];            pixelgrabber.grabPixels();            vector1.addElement(new Integer(0));            while ((j1 <= 256) || (ai1[i1] == 0xffffff)) {                ainteger = new Integer[vector.size()];                vector.copyInto(ainteger);                k1 = j1;                i1++;                vector.removeAllElements();                vector.addElement(new Integer(ai[0] & ai1[i1]));                vector.addElement(new Integer(0x1000000));                j1 = 2;                palSize = 2;                boolean flag1 = true;                byte byte0 = 2;                for (int l1 = 1; l1 < l; l1++) {                    int i = ai[l1] & ai1[i1];                    int j = palSize - 1;                    int k = palSize;                    boolean flag;                    do {                        vector1.setElementAt(vector.elementAt(j), 0);                        vector1.copyInto(ainteger1);                        if (i == ainteger1[0].intValue()) {                            k = 0;                            flag = true;                        } else {                            k /= 2;                            if (i < ainteger1[0].intValue()) {                                j -= k;                            } else {                                j += k;                            }                            flag = false;                        }                    } while (k > 0);                    if (flag) {                        continue;                    }                    vector1.setElementAt(vector.elementAt(j), 0);                    vector1.copyInto(ainteger1);                    if (i < ainteger1[0].intValue()) {                        vector.insertElementAt(new Integer(ai[l1] & ai1[i1]), j);                    } else {                        vector.insertElementAt(new Integer(ai[l1] & ai1[i1]),                            j + 1);                    }                    if (j1++ > 256) {                        break;                    }                    vector.removeElement(vector.lastElement());                    if (j1 > palSize) {                        for (int j2 = palSize; j2 < (2 * palSize); j2++) {                            vector.addElement(new Integer(0x1000000));                        }                        palSize *= 2;                    }                }                if ((--j1 <= 256) && (ai1[i1] == 0xffffff)) {                    ainteger = new Integer[vector.size()];                    vector.copyInto(ainteger);                    k1 = j1;                    break;                }                if (((j1 > 256) && (ai1[i1] != 0xffffff)) ||                        ((i1 > 3) && (ai1[i1] == 0xffffff))) {                    break;                }            }            i1--;            palSize = k1;            palArr = new int[palSize];            for (int i2 = 0; i2 < palSize; i2++) {                palArr[i2] = ainteger[i2].intValue() |                    (((ai1[i1] ^ 0xffffff) >> 1) & (ai1[i1] ^ 0xffffff));            }            pixCol = new short[l];            for (int k2 = 0; k2 < l; k2++) {                for (short word0 = 0; word0 < palSize; word0++) {                    if ((ai[k2] & ai1[i1]) != (palArr[word0] & ai1[i1])) {

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久国产精品韩国三级视频| 毛片不卡一区二区| 欧美精品18+| 国产露脸91国语对白| 综合精品久久久| 日韩视频免费直播| 91丨九色丨国产丨porny| 日产精品久久久久久久性色| ●精品国产综合乱码久久久久| 日韩一区二区三区在线视频| 欧美影片第一页| 成人高清视频在线| 久久99精品久久久久久国产越南| 亚洲高清视频在线| 中文字幕一区二区三区av| 欧美精品一区二区三区在线| 欧美日本在线观看| 色婷婷激情一区二区三区| 国产精品99久久久久久有的能看 | 国产精一区二区三区| 亚洲高清中文字幕| 亚洲精品欧美激情| 国产精品久久精品日日| 久久九九国产精品| 久久影院视频免费| 日韩欧美中文一区| 欧美电影免费观看高清完整版在| 在线观看视频91| 在线观看不卡一区| 色婷婷精品久久二区二区蜜臀av | 制服.丝袜.亚洲.中文.综合| 色先锋久久av资源部| 99久久久无码国产精品| 99精品欧美一区二区三区小说| 国产99一区视频免费| 国产91精品一区二区| 丰满亚洲少妇av| 波多野结衣91| 色综合欧美在线视频区| 色噜噜狠狠一区二区三区果冻| 色综合久久久久久久久| 色八戒一区二区三区| 欧美亚洲国产怡红院影院| 欧美性色aⅴ视频一区日韩精品| 欧美专区日韩专区| 欧美日韩二区三区| 在线综合+亚洲+欧美中文字幕| 欧美日韩小视频| 91精品在线观看入口| 欧美成人三级在线| 国产亚洲综合性久久久影院| 国产精品网站一区| 一区二区视频在线| 亚洲h动漫在线| 国产综合成人久久大片91| 国产精品综合网| 99re热这里只有精品免费视频| 91蜜桃网址入口| 制服丝袜亚洲色图| 久久久一区二区三区捆绑**| 国产精品福利在线播放| 亚洲最新视频在线观看| 日韩av网站免费在线| 国产成人精品一区二区三区四区 | 青青草国产成人99久久| 激情五月婷婷综合网| 国产一区二区三区不卡在线观看| 国产91富婆露脸刺激对白| 色网综合在线观看| 91精品国产免费久久综合| 久久婷婷一区二区三区| 亚洲免费观看高清完整版在线观看熊| 午夜视黄欧洲亚洲| 国产在线精品一区二区夜色 | 精品亚洲免费视频| 不卡一区在线观看| 欧美人伦禁忌dvd放荡欲情| 亚洲精品在线电影| 亚洲人一二三区| 久久精品国产亚洲高清剧情介绍| 成人av网站在线观看| 欧美精品亚洲二区| 国产精品视频免费| 日本不卡一区二区| 972aa.com艺术欧美| 91麻豆精品国产自产在线观看一区| 日本一区二区三区免费乱视频| 视频在线观看一区二区三区| 成人永久aaa| 91麻豆精品91久久久久同性| 国产精品区一区二区三区| 热久久一区二区| 色哟哟国产精品| 亚洲国产精品99久久久久久久久| 天天影视网天天综合色在线播放| 成人午夜在线视频| 日韩一级在线观看| 亚洲另类在线一区| 国产成人av一区二区| 欧美精品久久99| 亚洲欧美日韩系列| 高清在线不卡av| 精品国产91九色蝌蚪| 日韩综合一区二区| 色噜噜狠狠色综合中国| 国产精品网站在线观看| 国产一区二区福利视频| 欧美一二三区在线| 亚洲国产精品久久一线不卡| 91浏览器在线视频| 欧美极品aⅴ影院| 国产做a爰片久久毛片| 欧美一级二级三级蜜桃| 午夜激情久久久| 91福利社在线观看| 中文字幕五月欧美| 成人激情校园春色| 久久日一线二线三线suv| 久久99久久99小草精品免视看| 欧美欧美欧美欧美首页| 亚洲成人免费在线观看| 91亚洲午夜精品久久久久久| 国产精品久久久久一区二区三区共| 国产在线不卡一区| 久久综合色鬼综合色| 国精产品一区一区三区mba桃花| 欧美一级二级在线观看| 蜜桃一区二区三区四区| 日韩一级高清毛片| 美女诱惑一区二区| 精品久久久久久久人人人人传媒| 免费在线看成人av| 欧美一二三四区在线| 久久99国产精品久久99 | 国产日韩欧美精品综合| 国产乱码精品一区二区三区五月婷| 精品国产乱码久久久久久老虎 | 欧美系列在线观看| 伊人色综合久久天天人手人婷| 一本色道久久综合亚洲精品按摩| 亚洲女同ⅹxx女同tv| 在线这里只有精品| 婷婷综合五月天| 欧美美女喷水视频| 日韩成人dvd| 欧美电视剧免费观看| 国产精品影视在线| 国产精品久久久久9999吃药| 色狠狠综合天天综合综合| 一区二区不卡在线播放 | 5566中文字幕一区二区电影 | 在线观看一区二区视频| 亚洲成av人片一区二区梦乃| 91精品国产手机| 国产中文一区二区三区| 国产精品久久久久天堂| 91国偷自产一区二区三区观看| 亚洲成人在线观看视频| 欧美成人a视频| 成人一区二区三区| 亚洲精品久久久蜜桃| 在线不卡一区二区| 国模冰冰炮一区二区| 17c精品麻豆一区二区免费| 欧美日韩精品专区| 国产乱码精品一品二品| 一区二区在线观看视频| 欧美大度的电影原声| www.综合网.com| 天天色天天操综合| 欧美激情一区三区| 欧美日韩在线直播| 国产综合久久久久影院| 亚洲综合小说图片| 欧美精品一区二区三区视频| 91国偷自产一区二区开放时间 | 国产精品99久久久久| 亚洲色图清纯唯美| 欧美成人在线直播| 色综合天天综合色综合av | 国产很黄免费观看久久| 亚洲免费观看高清在线观看| 日韩视频在线一区二区| 色婷婷久久综合| 国产一区二区三区四区五区美女| 一区二区三区视频在线观看| 26uuu成人网一区二区三区| 色狠狠一区二区| 国产一区二区视频在线| 婷婷一区二区三区| 成人欧美一区二区三区黑人麻豆 | 日韩欧美高清在线| 99国产精品久| 精品一区二区三区影院在线午夜| 亚洲精品视频观看| 国产清纯美女被跳蛋高潮一区二区久久w | 久久久久99精品国产片| 欧美精品久久99| 日本高清不卡在线观看| 国产黄色成人av|