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

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

?? font2dtest.java

?? 一個(gè)小公司要求給寫(xiě)的很簡(jiǎn)單的任務(wù)管理系統(tǒng)。
?? JAVA
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
        printDialog.pack();        /// Prepare font information dialog...        fontInfoDialog = new JDialog( parent, "Font info", false );        fontInfoDialog.setResizable( false );        fontInfoDialog.addWindowListener( new WindowAdapter() {            public void windowClosing( WindowEvent e ) {                fontInfoDialog.hide();                showFontInfoCBMI.setState( false );            }        });        JPanel fontInfoPanel = new JPanel();        fontInfoPanel.setLayout( new GridLayout( fontInfos.length, 1 ));        for ( int i = 0; i < fontInfos.length; i++ ) {            fontInfos[i] = new LabelV2("");            fontInfoPanel.add( fontInfos[i] );        }        fontInfoDialog.getContentPane().add( fontInfoPanel );        /// Move the location of the dialog...        userTextDialog.setLocation( 200, 300 );        fontInfoDialog.setLocation( 0, 400 );    }    /// RangeMenu object signals using this function    /// when Unicode range has been changed and text needs to be redrawn    public void fireRangeChanged() {        int range[] = rm.getSelectedRange();        fp.setTextToDraw( fp.RANGE_TEXT, range, null, null );        if(canDisplayCheck) {            setupFontList(range[0], range[1]);        }        if ( showFontInfoCBMI.getState() )          fireUpdateFontInfo();    }    /// Changes the message on the status bar    public void fireChangeStatus( String message, boolean error ) {        /// If this is not ran as an applet, use own status bar,        /// Otherwise, use the appletviewer/browser's status bar        statusBar.setText( message );        if ( error )          fp.showingError = true;        else          fp.showingError = false;    }    /// Updates the information about the selected font    public void fireUpdateFontInfo() {        if ( showFontInfoCBMI.getState() ) {            String infos[] = fp.getFontInfo();            for ( int i = 0; i < fontInfos.length; i++ )              fontInfos[i].setText( infos[i] );            fontInfoDialog.pack();        }    }    private void setupFontList(int rangeStart, int rangeEnd) {                int listCount = fontMenu.getItemCount();        int size = 16;        try {            size =  Float.valueOf(sizeField.getText()).intValue();        }         catch ( Exception e ) {            System.out.println("Invalid font size in the size textField. Using default value of 16");        }        int style = fontStyles[styleMenu.getSelectedIndex()];        Font f;        for (int i = 0; i < listCount; i++) {            String fontName = (String)fontMenu.getItemAt(i);            f = new Font(fontName, style, size);            if ((rm.getSelectedIndex() != RangeMenu.SURROGATES_AREA_INDEX) &&                canDisplayRange(f, rangeStart, rangeEnd)) {                fontMenu.setBit(i, true);            }            else {                fontMenu.setBit(i, false);            }        }        fontMenu.repaint();    }    protected boolean canDisplayRange(Font font, int rangeStart, int rangeEnd) {        for (int i = rangeStart; i < rangeEnd; i++) {            if (font.canDisplay(i)) {                return true;            }        }        return false;    }    /// Displays a file load/save dialog and returns the specified file    private String promptFile( boolean isSave, String initFileName ) {	int retVal;	String str;		/// ABP	if ( filePromptDialog == null)		return null;	        if ( isSave ) {            filePromptDialog.setDialogType( JFileChooser.SAVE_DIALOG );            filePromptDialog.setDialogTitle( "Save..." );            str = "Save";        }        else {            filePromptDialog.setDialogType( JFileChooser.OPEN_DIALOG );            filePromptDialog.setDialogTitle( "Load..." );            str = "Load";        }        	if (initFileName != null)		filePromptDialog.setSelectedFile( new File( initFileName ) );        	retVal = filePromptDialog.showDialog( this, str );        if ( retVal == JFileChooser.APPROVE_OPTION ) {	        File file = filePromptDialog.getSelectedFile();	        String fileName = file.getAbsolutePath();        	if ( fileName != null ) {		        return fileName;		}	}	        return null;    }    /// Converts user text into arrays of String, delimited at newline character    /// Also replaces any valid escape sequence with appropriate unicode character    /// Support \\UXXXXXX notation for surrogates    private String[] parseUserText( String orig ) {        int length = orig.length();        StringTokenizer perLine = new StringTokenizer( orig, "\n" );        String textLines[] = new String[ perLine.countTokens() ];        int lineNumber = 0;        while ( perLine.hasMoreElements() ) {            StringBuffer converted = new StringBuffer();            String oneLine = perLine.nextToken();            int lineLength = oneLine.length();            int prevEscapeEnd = 0;            int nextEscape = -1;            do {                int nextBMPEscape = oneLine.indexOf( "\\u", prevEscapeEnd );                int nextSupEscape = oneLine.indexOf( "\\U", prevEscapeEnd );                nextEscape = (nextBMPEscape < 0)                    ? ((nextSupEscape < 0)                       ? -1                       : nextSupEscape)                    : ((nextSupEscape < 0)                       ? nextBMPEscape                       : Math.min(nextBMPEscape, nextSupEscape));                if ( nextEscape != -1 ) {                    if ( prevEscapeEnd < nextEscape )                        converted.append( oneLine.substring( prevEscapeEnd, nextEscape ));                                        prevEscapeEnd = nextEscape + (nextEscape == nextBMPEscape ? 6 : 8);                    try {                        String hex = oneLine.substring( nextEscape + 2, prevEscapeEnd );                        if (nextEscape == nextBMPEscape) {                            converted.append( (char) Integer.parseInt( hex, 16 ));                        } else {                            converted.append( new String( Character.toChars( Integer.parseInt( hex, 16 ))));                        }                    }                    catch ( Exception e ) {                        int copyLimit = Math.min(lineLength, prevEscapeEnd);                        converted.append( oneLine.substring( nextEscape, copyLimit ));                    }                }            } while (nextEscape != -1);            if ( prevEscapeEnd < lineLength )              converted.append( oneLine.substring( prevEscapeEnd, lineLength ));            textLines[ lineNumber++ ] = converted.toString();        }        return textLines;    }    /// Reads the text from specified file, detecting UTF-16 encoding    /// Then breaks the text into String array, delimited at every line break    private void readTextFile( String fileName ) {        try {            String fileText, textLines[];            BufferedInputStream bis =              new BufferedInputStream( new FileInputStream( fileName ));            int numBytes = bis.available();            if (numBytes == 0) {                throw new Exception("Text file " + fileName + " is empty");            }            byte byteData[] = new byte[ numBytes ];            bis.read( byteData, 0, numBytes );            bis.close();            /// If byte mark is found, then use UTF-16 encoding to convert bytes...            if (numBytes >= 2 &&                (( byteData[0] == (byte) 0xFF && byteData[1] == (byte) 0xFE ) ||                 ( byteData[0] == (byte) 0xFE && byteData[1] == (byte) 0xFF )))              fileText = new String( byteData, "UTF-16" );            /// Otherwise, use system default encoding            else              fileText = new String( byteData );            int length = fileText.length();            StringTokenizer perLine = new StringTokenizer( fileText, "\n" );            /// Determine "Return Char" used in this file            /// This simply finds first occurrence of CR, CR+LF or LF...            for ( int i = 0; i < length; i++ ) {                char iTh = fileText.charAt( i );                if ( iTh == '\r' ) {                    if ( i < length - 1 && fileText.charAt( i + 1 ) == '\n' )                      perLine = new StringTokenizer( fileText, "\r\n" );                    else                      perLine = new StringTokenizer( fileText, "\r" );                    break;                }                else if ( iTh == '\n' )                  /// Use the one already created                  break;            }            int lineNumber = 0, numLines = perLine.countTokens();            textLines = new String[ numLines ];            while ( perLine.hasMoreElements() ) {                String oneLine = perLine.nextToken();                if ( oneLine == null )                  /// To make LineBreakMeasurer to return a valid TextLayout                  /// on an empty line, simply feed it a space char...                  oneLine = " ";                textLines[ lineNumber++ ] = oneLine;            }            fp.setTextToDraw( fp.FILE_TEXT, null, null, textLines );            rm.setEnabled( false );            methodsMenu.setEnabled( false );        }        catch ( Exception ex ) {            fireChangeStatus( "ERROR: Failed to Read Text File; See Stack Trace", true );            ex.printStackTrace();        }    }    /// Returns a String storing current configuration    private void writeCurrentOptions( String fileName ) {        try {            String curOptions = fp.getCurrentOptions();            BufferedOutputStream bos =              new BufferedOutputStream( new FileOutputStream( fileName ));            /// Prepend title and the option that is only obtainable here            int range[] = rm.getSelectedRange();            String completeOptions =              ( "Font2DTest Option File\n" +                 displayGridCBMI.getState() + "\n" +                force16ColsCBMI.getState() + "\n" +                showFontInfoCBMI.getState() + "\n" +                rm.getSelectedItem() + "\n" +                range[0] + "\n" + range[1] + "\n" + curOptions + tFileName);            byte toBeWritten[] = completeOptions.getBytes( "UTF-16" );            bos.write( toBeWritten, 0, toBeWritten.length );            bos.close();        }        catch ( Exception ex ) {            fireChangeStatus( "ERROR: Failed to Save Options File; See Stack Trace", true );            ex.printStackTrace();        }    }    /// Updates GUI visibility/status after some parameters have changed    private void updateGUI() {        int selectedText = textMenu.getSelectedIndex();        /// Set the visibility of User Text dialog        if ( selectedText == fp.USER_TEXT )          userTextDialog.show();        else          userTextDialog.hide();        /// Change the visibility/status/availability of Print JDialog buttons        printModeCBs[ fp.ONE_PAGE ].setSelected( true );        if ( selectedText == fp.FILE_TEXT || selectedText == fp.USER_TEXT ) {	    /// ABP	    /// update methodsMenu to show that TextLayout.draw is being used	    /// when we are in FILE_TEXT mode	    if ( selectedText == fp.FILE_TEXT )	        methodsMenu.setSelectedItem("TextLayout.draw");                     methodsMenu.setEnabled( selectedText == fp.USER_TEXT );            printModeCBs[ fp.CUR_RANGE ].setEnabled( false );            printModeCBs[ fp.ALL_TEXT ].setEnabled( true );        }        else {	    /// ABP	    /// update methodsMenu to show that drawGlyph is being used	    /// when we are in ALL_GLYPHS mode	    if ( selectedText == fp.ALL_GLYPHS )	        methodsMenu.setSelectedItem("drawGlyphVector");             methodsMenu.setEnabled( selectedText == fp.RANGE_TEXT );            printModeCBs[ fp.CUR_RANGE ].setEnabled( true );            printModeCBs[ fp.ALL_TEXT ].setEnabled( false );        }        /// Modify RangeMenu and fontInfo label availabilty        if ( selectedText == fp.RANGE_TEXT ) {            fontInfos[1].setVisible( true );            rm.setEnabled( true );        }        else {            fontInfos[1].setVisible( false );            rm.setEnabled( false );        }    }    /// Loads saved options and applies them    private void loadOptions( String fileName ) {        try {            BufferedInputStream bis =              new BufferedInputStream( new FileInputStream( fileName ));            int numBytes = bis.available();            byte byteData[] = new byte[ numBytes ];            bis.read( byteData, 0, numBytes );            bis.close();            if ( numBytes < 2 || 		(byteData[0] != (byte) 0xFE || byteData[1] != (byte) 0xFF) )              throw new Exception( "Not a Font2DTest options file" );                        String options = new String( byteData, "UTF-16" );            StringTokenizer perLine = new StringTokenizer( options, "\n" );            String title = perLine.nextToken();            if ( !title.equals( "Font2DTest Option File" ))              throw new Exception( "Not a Font2DTest options file" );            /// Parse all options            boolean displayGridOpt = Boolean.parseBoolean( perLine.nextToken() );            boolean force16ColsOpt = Boolean.parseBoolean( perLine.nextToken() );            boolean showFontInfoOpt = Boolean.parseBoolean( perLine.nextToken() );            String rangeNameOpt = perLine.nextToken();            int rangeStartOpt = Integer.parseInt( perLine.nextToken() );            int rangeEndOpt = Integer.parseInt( perLine.nextToken() );            String fontNameOpt = perLine.nextToken();            float fontSizeOpt = Float.parseFloat( perLine.nextToken() );            int fontStyleOpt = Integer.parseInt( perLine.nextToken() );            int fontTransformOpt = Integer.parseInt( perLine.nextToken() );            int g2TransformOpt = Integer.parseInt( perLine.nextToken() );            int textToUseOpt = Integer.parseInt( perLine.nextToken() );            int drawMethodOpt = Integer.parseInt( perLine.nextToken() );            int antialiasOpt = Integer.parseInt(perLine.nextToken());            int fractionalOpt = Integer.parseInt(perLine.nextToken());            int lcdContrast = Integer.parseInt(perLine.nextToken());            String userTextOpt[] = { "Java2D!" }, dialogEntry = "Java2D!";            if (textToUseOpt == fp.USER_TEXT )  {                int numLines = perLine.countTokens(), lineNumber = 0;                if ( numLines != 0 ) {                    userTextOpt = new String[ numLines ];                    dialogEntry = "";                    for ( ; perLine.hasMoreElements(); lineNumber++ ) {                        userTextOpt[ lineNumber ] = perLine.nextToken();                        dialogEntry += userTextOpt[ lineNumber ] + "\n";                    }                }	    }			            /// Reset GUIs            displayGridCBMI.setState( displayGridOpt );            force16ColsCBMI.setState( force16ColsOpt );            showFontInfoCBMI.setState( showFontInfoOpt );            rm.setSelectedRange( rangeNameOpt, rangeStartOpt, rangeEndOpt );            fontMenu.setSelectedItem( fontNameOpt );            sizeField.setText( String.valueOf( fontSizeOpt ));            styleMenu.setSelectedIndex( fontStyleOpt );            transformMenu.setSelectedIndex( fontTransformOpt );            transformMenuG2.setSelectedIndex( g2TransformOpt );            textMenu.setSelectedIndex( textToUseOpt );            methodsMenu.setSelectedIndex( drawMethodOpt );            antiAliasMenu.setSelectedIndex( antialiasOpt );            fracMetricsMenu.setSelectedIndex( fractionalOpt );	  	    contrastSlider.setValue(lcdContrast);            userTextArea.setText( dialogEntry );            updateGUI();	    if ( textToUseOpt == fp.FILE_TEXT ) {	      tFileName = perLine.nextToken();	      readTextFile(tFileName );            }            /// Reset option variables and repaint            fp.loadOptions( displayGridOpt, force16ColsOpt,			    rangeStartOpt, rangeEndOpt,                            fontNameOpt, fontSizeOpt,			    fontStyleOpt, fontTransformOpt, g2TransformOpt,                            textToUseOpt, drawMethodOpt,			    antialiasOpt, fractionalOpt,			    lcdContrast, userTextOpt );

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产a| 91网站最新网址| 成人av影院在线| 欧美日韩亚洲丝袜制服| 欧美一卡2卡三卡4卡5免费| 久久亚洲一区二区三区明星换脸 | 日本 国产 欧美色综合| 国产精品一区专区| 欧美日韩一区二区三区在线看| 日韩天堂在线观看| 中文字幕一区免费在线观看| 亚洲va欧美va人人爽| 国产精品456| 欧美日韩在线播放| 国产亚洲污的网站| 日日夜夜精品视频天天综合网| 国产成人日日夜夜| 欧美美女喷水视频| 国产精品传媒在线| 久久国产日韩欧美精品| 色婷婷久久久亚洲一区二区三区 | 国产成人亚洲综合a∨猫咪| 日本黄色一区二区| 久久婷婷一区二区三区| 亚洲成av人片一区二区| 国产99久久久国产精品潘金 | 亚洲h动漫在线| 国产99精品国产| 欧美一区二区三区免费| 一区二区在线看| 国产成人精品亚洲日本在线桃色| 欧美日免费三级在线| 国产欧美精品一区二区三区四区| 琪琪一区二区三区| 91福利资源站| 中文字幕国产一区二区| 久久电影网电视剧免费观看| 欧美亚州韩日在线看免费版国语版| 久久精品无码一区二区三区| 日本欧美加勒比视频| 欧亚洲嫩模精品一区三区| 中文字幕永久在线不卡| 国产伦精品一区二区三区视频青涩 | 久久亚洲综合色一区二区三区| 亚洲国产日韩在线一区模特| av中文字幕亚洲| 国产日韩欧美精品电影三级在线| 免费看日韩a级影片| 欧美日韩一区精品| 亚洲一区在线观看免费 | 偷拍日韩校园综合在线| 91麻豆自制传媒国产之光| 欧美经典一区二区| 国产一区二区三区精品欧美日韩一区二区三区 | 国产精品美女www爽爽爽| 国产在线一区二区| 精品国产乱码久久久久久夜甘婷婷 | 日本韩国精品一区二区在线观看| 亚洲国产精品传媒在线观看| 国产精品影视在线观看| 精品国内二区三区| 久久狠狠亚洲综合| 日韩你懂的在线观看| 美日韩一级片在线观看| 日韩一区二区三区电影在线观看 | 精品国产一区二区三区久久影院| 日韩成人午夜精品| 日韩一区二区三区精品视频| 日本aⅴ精品一区二区三区| 91精品国产高清一区二区三区蜜臀 | 色哟哟一区二区| 亚洲精品免费在线播放| 色爱区综合激月婷婷| 亚洲一级不卡视频| 欧美丰满少妇xxxxx高潮对白| 亚洲国产毛片aaaaa无费看| 精品视频在线视频| 欧美aaaaaa午夜精品| 精品日韩欧美在线| 国产二区国产一区在线观看| 国产精品嫩草影院av蜜臀| 成人黄色av网站在线| 中文字幕在线一区二区三区| 91啪亚洲精品| 亚洲综合丁香婷婷六月香| 欧美日本在线播放| 久久精品国产999大香线蕉| 精品嫩草影院久久| 高清国产一区二区| 亚洲狠狠丁香婷婷综合久久久| 在线一区二区观看| 蜜臀av性久久久久蜜臀aⅴ四虎| 337p粉嫩大胆噜噜噜噜噜91av| 国产精品夜夜嗨| 中文字幕一区在线| 欧美三级电影网| 精品亚洲国产成人av制服丝袜 | 91蜜桃免费观看视频| 亚洲综合视频在线| 日韩视频一区二区| 99久久综合精品| 午夜精品爽啪视频| 久久伊人中文字幕| 99久久亚洲一区二区三区青草| 亚洲永久免费视频| 精品剧情v国产在线观看在线| 国产成a人亚洲精| 亚洲激情图片小说视频| 日韩一区二区三区在线| 成人中文字幕电影| 亚洲成人动漫在线免费观看| 2024国产精品| 色婷婷av久久久久久久| 美女久久久精品| 亚洲视频一区二区在线| 日韩午夜精品视频| caoporen国产精品视频| 青青草国产精品亚洲专区无| 中文字幕中文字幕一区| 欧美一区二区网站| 9色porny自拍视频一区二区| 日韩精品高清不卡| 国产精品乱人伦中文| 欧美高清视频www夜色资源网| 国产99久久久久久免费看农村| 香蕉av福利精品导航| 国产女主播在线一区二区| 欧美色图片你懂的| 国产成a人无v码亚洲福利| 日韩在线一区二区| 亚洲特黄一级片| 精品久久久久久久久久久久包黑料| 91网站最新地址| 国产麻豆精品在线| 日韩1区2区日韩1区2区| 中文字幕视频一区| 久久久久免费观看| 日韩一区二区免费高清| 91色在线porny| 国产一区二区三区最好精华液| 亚洲国产综合视频在线观看| 欧美激情一区二区| 精品国产麻豆免费人成网站| 欧美性受xxxx黑人xyx性爽| 波多野结衣中文字幕一区二区三区| 美女国产一区二区| 午夜精品福利一区二区蜜股av| 中文字幕亚洲不卡| 欧美极品aⅴ影院| 久久综合九色综合97婷婷| 在线观看91av| 在线观看不卡视频| 色哟哟亚洲精品| 99re6这里只有精品视频在线观看| 国内不卡的二区三区中文字幕| 日韩精品电影一区亚洲| 一区二区三区在线观看欧美| 中文字幕乱码日本亚洲一区二区| 日韩欧美国产电影| 91精品国产aⅴ一区二区| 欧美日韩中文精品| 欧洲国产伦久久久久久久| 91影视在线播放| 99久久久久免费精品国产 | 亚洲精品菠萝久久久久久久| 国产精品免费免费| 国产精品沙发午睡系列990531| 久久综合五月天婷婷伊人| 欧美大片在线观看| 日韩精品一区二区三区在线| 日韩欧美激情一区| 日韩欧美激情在线| 精品国偷自产国产一区| 精品少妇一区二区三区免费观看 | 国产成人免费视频网站高清观看视频| 久色婷婷小香蕉久久| 麻豆精品视频在线| 老司机午夜精品| 国产一区二区视频在线| 国产福利一区二区三区| 福利91精品一区二区三区| 国产成人免费网站| 福利电影一区二区三区| 成人激情电影免费在线观看| 成人va在线观看| 99久久精品99国产精品| 91精品国产综合久久香蕉麻豆 | 久草在线在线精品观看| 久久国内精品自在自线400部| 国产综合一区二区| 国产成人午夜精品影院观看视频 | 伊人夜夜躁av伊人久久| 亚洲国产视频a| 日本不卡视频在线| 国产一区美女在线| 高清视频一区二区| 在线精品国精品国产尤物884a| 欧美视频完全免费看| 欧美一级在线视频| 久久久精品免费观看|