<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    筆頭。。
    實(shí)踐啟示
    posts - 14,comments - 3,trackbacks - 0
    安裝apache服務(wù)器指南http://www.knowsky.com/2989.html

    安裝apache服務(wù)器出現(xiàn)的問題

    winxp 下 apache2 安裝 問題及解決
    安裝apache 2 出現(xiàn)的問題:

    “(OS 10048)通常每個(gè)套接字地址 (協(xié)議/網(wǎng)絡(luò)地址/端口) 只允許使用一次:
    make_sock: could not bind to address 0.0.0.0:80...”

    一般是IIS或其他程序占用了80端口引起的
    分析:
    netstat -a
    查看相應(yīng)端口,是否有程序占用
    netstat -ab
    查看具體占用程序

    兩種解決方法:
    1、打開 控制面板->服務(wù) 找到 IIS admin 等相應(yīng)服務(wù) 關(guān)閉并禁用
    2、如果不想關(guān)閉IIS服務(wù) 可將apache使用的端口改成其它端口
    將apache2/conf/httpd.conf 中的
    Listen 80 改為 Listen (你要使用的端口) 如 Listen 8080
    不過這時(shí)在你訪問你的apache 下的Web服務(wù)時(shí) 在域名后要加上端口號(hào)
    如: http://localhost:8080

    然后用CMD進(jìn)入命令行模式 進(jìn)入你安裝apache的目錄 /apache2/bin
    輸入
    apache -k install
    apache -k start
    cgwin的安裝http://anying.spaces.live.com/Blog/cns!1pBetjxyWRhAf0VYS0IjiD_g!711.entry

    連接http://twiki.org/cgi-bin/view/TWiki/WindowsInstallCookbookForTWiki04x01,for window 的安裝

    設(shè)置LocalSite.cfg

    # Local site settings for TWiki. This file is managed by the 'configure'
    # CGI script, though you can also make (careful!) manual changes with a
    # text editor.
    $TWiki::cfg{DefaultUrlHost} = 'http://localhost:8060';
    $TWiki::cfg{ScriptUrlPath} = '/twiki/bin';
    $TWiki::cfg{PubUrlPath} = '/twiki/pub';
    $TWiki::cfg{PubDir} = 'c:/PROGRA~1/TWiki/twiki/pub';
    $TWiki::cfg{TemplateDir} = 'c:/PROGRA~1/TWiki/twiki/templates';
    $TWiki::cfg{DataDir} = 'c:/PROGRA~1/TWiki/twiki/data';
    $TWiki::cfg{LocalesDir} = 'c:/PROGRA~1/TWiki/twiki/locale';
    $TWiki::cfg{WorkingDir} = 'c:/PROGRA~1/TWiki/twiki/working';
    $TWiki::cfg{ScriptSuffix} = '';
    $TWiki::cfg{Password} = 'OmNauFZ7U.p3Y';
    $TWiki::cfg{UseClientSessions} = 1;
    $TWiki::cfg{Sessions}{ExpireAfter} = 21600;
    $TWiki::cfg{Sessions}{ExpireCookiesAfter} = 0;
    $TWiki::cfg{Sessions}{IDsInURLs} = 0;
    $TWiki::cfg{Sessions}{UseIPMatching} = 1;
    $TWiki::cfg{Sessions}{MapIP2SID} = 0;
    $TWiki::cfg{LoginManager} = 'TWiki::LoginManager::TemplateLogin';
    $TWiki::cfg{LoginNameFilterIn} = '^[^\\s\\*?~^\\$@%`"\'&;|<>\\x00-\\x1f]+$';
    $TWiki::cfg{DefaultUserLogin} = 'guest';
    $TWiki::cfg{DefaultUserWikiName} = 'TWikiGuest';
    $TWiki::cfg{AdminUserWikiName} = 'TWikiAdminGroup';
    $TWiki::cfg{AdminUserLogin} = 'admin';
    $TWiki::cfg{SuperAdminGroup} = 'TWikiAdminGroup';
    $TWiki::cfg{UsersTopicName} = 'TWikiUsers';
    $TWiki::cfg{AuthScripts} = 'attach,edit,manage,rename,save,upload,viewauth,rdiffauth';
    $TWiki::cfg{AuthRealm} = 'Enter your TWiki.LoginName. (Typically First name and last name, no space, no dots, capitalized, e.g. !JohnSmith, unless you chose otherwise). Visit TWiki.TWikiRegistration if you do not have one.';
    $TWiki::cfg{UserMappingManager} = 'TWiki::Users::TWikiUserMapping';
    $TWiki::cfg{Register}{EnableNewUserRegistration} = 1;
    $TWiki::cfg{Register}{HidePasswd} = 1;
    $TWiki::cfg{Register}{NeedVerification} = 1;
    $TWiki::cfg{PasswordManager} = 'TWiki::Users::HtPasswdUser';
    $TWiki::cfg{MinPasswordLength} = 1;
    $TWiki::cfg{Htpasswd}{FileName} = 'c:\\PROGRA~1\\TWiki\\twiki\\data\\.htpasswd.txt';
    $TWiki::cfg{Htpasswd}{Encoding} = 'plain';
    $TWiki::cfg{SafeEnvPath} = '';
    $TWiki::cfg{OS} = 'WINDOWS';
    $TWiki::cfg{DetailedOS} = 'MSWin32';
    $TWiki::cfg{DenyDotDotInclude} = 1;
    $TWiki::cfg{AllowInlineScript} = 1;
    $TWiki::cfg{UploadFilter} = '^(\\.htaccess|.*\\.(?i)(?:php[0-9s]?(\\..*)?|[sp]htm[l]?(\\..*)?|pl|py|cgi))$';
    $TWiki::cfg{NameFilter} = '[\\s\\*?^\\$@%`"\'&;|<>\\x00-\\x1f]';
    $TWiki::cfg{AccessibleENV} = '^(HTTP_\\w+|REMOTE_\\w+|SERVER_\\w+|REQUEST_\\w+|MOD_PERL)$';
    $TWiki::cfg{AntiSpam}{EmailPadding} = '';
    $TWiki::cfg{AntiSpam}{HideUserDetails} = 1;
    $TWiki::cfg{AntiSpam}{RobotsAreWelcome} = 1;
    $TWiki::cfg{Log}{view} = 1;
    $TWiki::cfg{Log}{search} = 1;
    $TWiki::cfg{Log}{changes} = 1;
    $TWiki::cfg{Log}{rdiff} = 1;
    $TWiki::cfg{Log}{edit} = 1;
    $TWiki::cfg{Log}{save} = 1;
    $TWiki::cfg{Log}{upload} = 1;
    $TWiki::cfg{Log}{attach} = 1;
    $TWiki::cfg{Log}{rename} = 1;
    $TWiki::cfg{Log}{register} = 1;
    $TWiki::cfg{ConfigurationLogName} = 'c:/PROGRA~1/TWiki/twiki/data/configurationlog.txt';
    $TWiki::cfg{DebugFileName} = 'c:/PROGRA~1/TWiki/twiki/data/debug.txt';
    $TWiki::cfg{WarningFileName} = 'c:/PROGRA~1/TWiki/twiki/data/warn%DATE%.txt';
    $TWiki::cfg{LogFileName} = 'c:/PROGRA~1/TWiki/twiki/data/log%DATE%.txt';
    $TWiki::cfg{Languages}{cs}{Enabled} = 1;
    $TWiki::cfg{Languages}{da}{Enabled} = 1;
    $TWiki::cfg{Languages}{de}{Enabled} = 1;
    $TWiki::cfg{Languages}{es}{Enabled} = 1;
    $TWiki::cfg{Languages}{fr}{Enabled} = 1;
    $TWiki::cfg{Languages}{it}{Enabled} = 1;
    $TWiki::cfg{Languages}{nl}{Enabled} = 1;
    $TWiki::cfg{Languages}{pl}{Enabled} = 1;
    $TWiki::cfg{Languages}{pt}{Enabled} = 1;
    $TWiki::cfg{Languages}{ru}{Enabled} = 1;
    $TWiki::cfg{Languages}{sv}{Enabled} = 1;
    $TWiki::cfg{Languages}{'zh-cn'}{Enabled} = 1;
    $TWiki::cfg{Languages}{'zh-tw'}{Enabled} = 1;
    $TWiki::cfg{DisplayTimeValues} = 'servertime';
    $TWiki::cfg{DefaultDateFormat} = '$day $month $year';
    $TWiki::cfg{Site}{Locale} = 'zh_CN.UTF-8';
    $TWiki::cfg{Site}{LocaleRegexes} = 1;
    $TWiki::cfg{UpperNational} = '';
    $TWiki::cfg{LowerNational} = '';
    $TWiki::cfg{PluralToSingular} = 1;
    $TWiki::cfg{StoreImpl} = 'RcsLite';
    $TWiki::cfg{RCS}{ExtOption} = '-x,v';
    $TWiki::cfg{RCS}{dirPermission} = 493;
    $TWiki::cfg{RCS}{filePermission} = 420;
    $TWiki::cfg{Store}{RememberChangesFor} = 2678400;
    $TWiki::cfg{RCS}{asciiFileSuffixes} = '\\.(txt|html|xml|pl)$';
    $TWiki::cfg{RCS}{initBinaryCmd} = '/usr/bin/rcs  -i -t-none -kb %FILENAME|F%';
    $TWiki::cfg{RCS}{initTextCmd} = '/usr/bin/rcs  -i -t-none -ko %FILENAME|F%';
    $TWiki::cfg{RCS}{tmpBinaryCmd} = '/usr/bin/rcs  -kb %FILENAME|F%';
    $TWiki::cfg{RCS}{ciCmd} = '/usr/bin/ci  -m%COMMENT|U% -t-none -w%USERNAME|S% -u %FILENAME|F%';
    $TWiki::cfg{RCS}{ciDateCmd} = '/usr/bin/ci  -m%COMMENT|U% -t-none -d%DATE|D% -u -w%USERNAME|S% %FILENAME|F%';
    $TWiki::cfg{RCS}{coCmd} = '/usr/bin/co  -p%REVISION|N% -ko %FILENAME|F%';
    $TWiki::cfg{RCS}{histCmd} = '/usr/bin/rlog  -h %FILENAME|F%';
    $TWiki::cfg{RCS}{infoCmd} = '/usr/bin/rlog  -r%REVISION|N% %FILENAME|F%';
    $TWiki::cfg{RCS}{rlogDateCmd} = '/usr/bin/rlog  -d%DATE|D% %FILENAME|F%';
    $TWiki::cfg{RCS}{diffCmd} = '/usr/bin/rcsdiff  -q -w -B -r%REVISION1|N% -r%REVISION2|N% -ko --unified=%CONTEXT|N% %FILENAME|F%';
    $TWiki::cfg{RCS}{lockCmd} = '/usr/bin/rcs  -l %FILENAME|F%';
    $TWiki::cfg{RCS}{unlockCmd} = '/usr/bin/rcs  -u %FILENAME|F%';
    $TWiki::cfg{RCS}{breaklockCmd} = '/usr/bin/rcs  -u -M %FILENAME|F%';
    $TWiki::cfg{RCS}{delRevCmd} = '/usr/bin/rcs  -o%REVISION|N% %FILENAME|F%';
    $TWiki::cfg{RCS}{SearchAlgorithm} = 'TWiki::Store::SearchAlgorithms::Forking';
    $TWiki::cfg{RCS}{EgrepCmd} = 'c:/PROGRA~1/GnuWin32/bin/grep -E %CS{|-i}% %DET{|-l}% -H -- %TOKEN|U% %FILES|F%';
    $TWiki::cfg{RCS}{FgrepCmd} = 'c:/PROGRA~1/GnuWin32/bin/grep -F %CS{|-i}% %DET{|-l}% -H -- %TOKEN|U% %FILES|F%';
    $TWiki::cfg{EnableHierarchicalWebs} = 0;
    $TWiki::cfg{SystemWebName} = 'TWiki';
    $TWiki::cfg{TrashWebName} = 'Trash';
    $TWiki::cfg{UsersWebName} = 'Main';
    $TWiki::cfg{WebMasterEmail} = 'zhanghui026@gmail.com';
    $TWiki::cfg{WebMasterName} = 'TWiki Administrator';
    $TWiki::cfg{MailProgram} = '';
    $TWiki::cfg{SMTP}{MAILHOST} = 'smtp.sina.com.cn';
    $TWiki::cfg{SMTP}{SENDERHOST} = '';
    $TWiki::cfg{SMTP}{Username} = '';
    $TWiki::cfg{SMTP}{Password} = '';
    $TWiki::cfg{RemoveImgInMailnotify} = 1;
    $TWiki::cfg{NotifyTopicName} = 'WebNotify';
    $TWiki::cfg{SMTP}{Debug} = 0;
    $TWiki::cfg{PROXY}{HOST} = '';
    $TWiki::cfg{PROXY}{PORT} = '';
    $TWiki::cfg{Stats}{TopViews} = 10;
    $TWiki::cfg{Stats}{TopContrib} = 10;
    $TWiki::cfg{Stats}{TopicName} = 'WebStatistics';
    $TWiki::cfg{TemplatePath} = 'c:/PROGRA~1/TWiki/twiki/templates/$web/$name.$skin.tmpl, c:/PROGRA~1/TWiki/twiki/templates/$name.$skin.tmpl, c:/PROGRA~1/TWiki/twiki/templates/$web/$name.tmpl, c:/PROGRA~1/TWiki/twiki/templates/$name.tmpl, $web.$skinSkin$nameTemplate, TWiki.$skinSkin$nameTemplate, $web.$nameTemplate, TWiki.$nameTemplate';
    $TWiki::cfg{LinkProtocolPattern} = '(file|ftp|gopher|https|http|irc|mailto|news|nntp|telnet)';
    $TWiki::cfg{SiteWebTopicName} = '';
    $TWiki::cfg{SitePrefsTopicName} = 'TWikiPreferences';
    $TWiki::cfg{LocalSitePreferences} = 'Main.TWikiPreferences';
    $TWiki::cfg{HomeTopicName} = 'WebHome';
    $TWiki::cfg{WebPrefsTopicName} = 'WebPreferences';
    $TWiki::cfg{NumberOfRevisions} = 4;
    $TWiki::cfg{ReplaceIfEditedAgainWithin} = 3600;
    $TWiki::cfg{LeaseLength} = 3600;
    $TWiki::cfg{LeaseLengthLessForceful} = 3600;
    $TWiki::cfg{MimeTypesFileName} = 'c:/PROGRA~1/TWiki/twiki/data/mime.types';
    $TWiki::cfg{Plugins}{CommentPlugin}{Enabled} = 1;
    $TWiki::cfg{Plugins}{EditTablePlugin}{Enabled} = 1;
    $TWiki::cfg{Plugins}{InterwikiPlugin}{Enabled} = 1;
    $TWiki::cfg{Plugins}{PreferencesPlugin}{Enabled} = 1;
    $TWiki::cfg{Plugins}{SlideShowPlugin}{Enabled} = 1;
    $TWiki::cfg{Plugins}{SmiliesPlugin}{Enabled} = 1;
    $TWiki::cfg{Plugins}{SpreadSheetPlugin}{Enabled} = 1;
    $TWiki::cfg{Plugins}{TablePlugin}{Enabled} = 1;
    $TWiki::cfg{Plugins}{TwistyPlugin}{Enabled} = 1;
    $TWiki::cfg{Plugins}{TinyMCEPlugin}{Enabled} = 1;
    $TWiki::cfg{Plugins}{WysiwygPlugin}{Enabled} = 0;
    $TWiki::cfg{PluginsOrder} = 'SpreadSheetPlugin';
    $TWiki::cfg{MailerContrib}{EmailFilterIn} = '';
    $TWiki::cfg{Languages}{bg}{Enabled} = 0;
    $TWiki::cfg{Languages}{jp}{Enabled} = 0;
    $TWiki::cfg{Site}{CharSet} = 'UTF-8';
    $TWiki::cfg{Site}{Lang} = 'zh';
    $TWiki::cfg{Site}{FullLang} = 'zh-cn';
    $TWiki::cfg{PermittedRedirectHostUrls} = 'http://localhost';
    $TWiki::cfg{EnableEmail} = 1;
    $TWiki::cfg{UserInterfaceInternationalisation} = 1;
    $TWiki::cfg{UseLocale} = 1;
    $TWiki::cfg{RCS}{QueryAlgorithm} = 'TWiki::Store::QueryAlgorithms::BruteForce';
    $TWiki::cfg{ExtensionsRepositories} = 'TWiki.org=(http://twiki.org/cgi-bin/view/Plugins/,http://twiki.org/p/pub/Plugins/)';
    $TWiki::cfg{Register}{AllowLoginName} = 1;
    1;
    posted @ 2008-04-16 22:45 如果有一天de 閱讀(3288) | 評(píng)論 (0)編輯 收藏
         摘要: My Oracle Cook Book-來自oralce菜鳥的學(xué)習(xí)筆記
    準(zhǔn)備
    用到的是oracle自帶的用戶和表
    用戶為scott/tiger
    步驟是:連接數(shù)據(jù)庫  閱讀全文
    posted @ 2008-03-28 09:26 如果有一天de 閱讀(564) | 評(píng)論 (0)編輯 收藏
         摘要: Try not to take this personally, but Tracy McGrady hates you.
    Sunday, March 09, 2008

    All right, maybe not you specifically, but what you think. He knows you never thought much of him as a leader, even though it's pretty clear it was never really in his serene(adj.寧靜的、安靜的) personality. He knows you think he is soft(軟蛋), a critique(n.批評(píng)) left over from those nights you begged him to drive the ball and take the hit with a bulging disk(灌籃). And he knows you think he is -- for lack o  閱讀全文
    posted @ 2008-03-10 22:31 如果有一天de 閱讀(428) | 評(píng)論 (0)編輯 收藏
        最近在修改組里的TMonitor程序頭疼壞了,程序的好多類在設(shè)計(jì)之初沒有考慮線程安全性,現(xiàn)在在源程序上加功能,怎一個(gè)痛苦了的。。。
        楊哥(我剛到公司時(shí)接手他的程序)是個(gè)大牛,他在地圖的方面開始設(shè)計(jì)的很好,但是都是靜態(tài)數(shù)據(jù),沒有數(shù)據(jù)的動(dòng)態(tài)變化的麻煩,然而后來在
    JMapEdit上實(shí)現(xiàn)模擬動(dòng)態(tài)飛行以及動(dòng)態(tài)監(jiān)控上實(shí)現(xiàn)起來是個(gè)頭疼的問題,可能會(huì)多個(gè)線程訪問共享變量,而且有線程對(duì)共享變量的write操作,在程序中盡量調(diào)整原接口以及實(shí)現(xiàn)方式。楊哥走了,目前在組里只有我一個(gè)人了解地圖類編程,昨天跟方sir商量新來的同事是否也能接觸我的程序,方sir的回答:TMonitor還是比較難的,估計(jì)新來的同事(是個(gè)女的)不成,下次招個(gè)男的讓他接。。。不爽中,俺還是希望帶個(gè)女滴。。。
       
        PS:經(jīng)驗(yàn)總結(jié)。
        在沒有正確同步的情況下,如果多線程訪問同一個(gè)變量,你的程序就存在隱患。有3種方法修復(fù)它:
    • 不要多線程共享變量
    • 使?fàn)顟B(tài)變量為不可變的;或者
    • 在任何訪問狀態(tài)變量的時(shí)候使用同步
        設(shè)計(jì)線程安全的類時(shí),使用封裝、不可變性以及明確的不便約束等面向?qū)ο蠹夹g(shù)可以使你在解決同步方面的問題時(shí)思路清晰
    posted @ 2008-03-05 15:50 如果有一天de 閱讀(240) | 評(píng)論 (0)編輯 收藏
    動(dòng)畫的實(shí)現(xiàn)上來說,是設(shè)置定時(shí)器進(jìn)行刷新.
    對(duì)于Swing程序來說java.swing.Timer類保證了線程在swing調(diào)用上的安全性。通過時(shí)間參數(shù)的設(shè)置時(shí)間動(dòng)態(tài)定時(shí)刷新,
    對(duì)于動(dòng)態(tài)往復(fù)描繪來說,比如類似于動(dòng)態(tài)的顏色變化,動(dòng)態(tài)的進(jìn)行透明變化之類的周期性刷新來說,一般需要幾個(gè)條件
    1.動(dòng)畫的周期性
    2.動(dòng)畫的當(dāng)前狀態(tài)在起始狀態(tài)和目標(biāo)狀態(tài)之間
    實(shí)現(xiàn)上需要這么幾個(gè)參數(shù)
    • 起始時(shí)間 animation startTime
    • 當(dāng)前時(shí)間 currentime
    • 動(dòng)畫周期 animation duration
    • 往返因數(shù) fraction

        往返因數(shù)fraction

        比如動(dòng)態(tài)調(diào)整透明度、動(dòng)態(tài)修改顏色在動(dòng)畫的過程中可以設(shè)定起始與目標(biāo)值,通過fraction在0-1范圍內(nèi)進(jìn)行運(yùn)算進(jìn)行調(diào)整。
    以算法來描述則為
      起始值設(shè)為 init
      目標(biāo)值為 dest
      實(shí)際值為 actual
        actual=init*(1-fraction)+dest*fraction;
      比較明顯的例子為,將顏色從初始顏色動(dòng)態(tài)變化到目標(biāo)顏色
     
      Color startColor = Color.red;    // where we start
        Color endColor = Color.BLACK;         // where we end
        Color currentColor = startColor;
       ....
       描繪currentColor的一個(gè)圓
       在Timer的actionPerform里調(diào)整currentColor
       
    // interpolate between start and end colors with current fraction
            int red = (int)(fraction * endColor.getRed() + 
                    (
    1 - fraction) * startColor.getRed());
            
    int green = (int)(fraction * endColor.getGreen() + 
                    (
    1 - fraction) * startColor.getGreen());
            
    int blue = (int)(fraction * endColor.getBlue() + 
                    (
    1 - fraction) * startColor.getBlue());
            
    // set our new color appropriately
            currentColor = new Color(red, green, blue);

    通過定時(shí)器的時(shí)間參數(shù)動(dòng)態(tài)調(diào)整往返因數(shù)

        通過時(shí)間參數(shù)進(jìn)行計(jì)算
        如下代碼所示,在Timer的actionPerform里實(shí)現(xiàn)
                long currentTime = System.nanoTime() / 1000000;
                
    long totalTime = currentTime - animationStartTime;
                //調(diào)整周期的起始時(shí)間
                if (totalTime > animationDuration) {
                    animationStartTime 
    = currentTime;
                }
                
    float fraction = (float)totalTime / animationDuration;
                fraction 
    = Math.min(1.0f, fraction);
         注意當(dāng)前只是計(jì)算出了fraction,如何使因子在1-0和0-1之間往復(fù)變化呢
        以下代碼實(shí)現(xiàn)了該算法
       
        // This calculation will cause alpha to go from 1 to 0 and back to 1
                
    // as the fraction goes from 0 to 1
                alpha = Math.abs(1 - (2 * fraction));
          
        //repaint();//重新繪制


    posted @ 2008-02-14 12:00 如果有一天de 閱讀(1311) | 評(píng)論 (1)編輯 收藏
        OO面向?qū)ο蟮木幊痰囊淮髢?yōu)勢(shì)是封裝,對(duì)于現(xiàn)代軟件來說,軟件系統(tǒng)使用組件搭建起來的,這些組件不僅可以出現(xiàn)在一個(gè)軟件系統(tǒng)中,而且有可能出現(xiàn)在其他軟件系統(tǒng)中。大多數(shù)組件在單線程系統(tǒng)中運(yùn)行良好,但是在多線程環(huán)境下,如何保證組件的線程安全性呢?
        一般來說,封裝能夠保證類的線程安全性。
       
        首先,確定對(duì)象的狀態(tài)是由那些變量構(gòu)成的。對(duì)象的狀態(tài)就是field域的完整狀態(tài)。比如基本類型(primitive)的,int value是Counte類的一個(gè)field,那么這個(gè)域就組成了對(duì)象的完整狀態(tài)。如果對(duì)象有n個(gè)基本域,那么對(duì)象的狀態(tài)就是閾值組成的n元組;如果一個(gè)對(duì)象引用了其他對(duì)象,那么他的狀態(tài)也同時(shí)包含了被引用的對(duì)象的域。比如collection的狀態(tài)包含了所有存儲(chǔ)在鏈表的節(jié)點(diǎn)對(duì)象的狀態(tài)。

    posted @ 2008-01-28 16:33 如果有一天de 閱讀(328) | 評(píng)論 (0)編輯 收藏
    Charles Ditzel的blog http://cld.blog-city.com/,真正的開發(fā)者的blog.
    Swing-labs http://swinglabs.org/,swing實(shí)驗(yàn)室的東西總會(huì)省去你很多力氣,而且是開源的。
    The Wizard API https://wizard.dev.java.net/ Wizard導(dǎo)向API
    posted @ 2008-01-22 15:54 如果有一天de 閱讀(255) | 評(píng)論 (0)編輯 收藏
         摘要: 通過java2D的scale方法實(shí)現(xiàn)翻轉(zhuǎn)圖片,包括沿著圖片的四個(gè)邊進(jìn)行翻轉(zhuǎn)  閱讀全文
    posted @ 2008-01-21 17:35 如果有一天de 閱讀(2881) | 評(píng)論 (2)編輯 收藏
         摘要: 關(guān)于porter-duff的等式和12種規(guī)則演示例子  閱讀全文
    posted @ 2008-01-16 14:20 如果有一天de 閱讀(4510) | 評(píng)論 (0)編輯 收藏
    關(guān)于alphaComposite的porter-duff12種規(guī)則應(yīng)用
    如果理解起來真的麻煩,經(jīng)常用到的是Clear,SrcIn,Src,SrcOver
    如經(jīng)常用到的例子
    Clear,如Phtoshope的橡皮擦
    SrcIn,以背景為框框,在背景內(nèi)繪制
    SrcOver,覆蓋色與背景色混合顯示
    DstIn,在 fade out,reflection可以使用

    posted @ 2008-01-15 17:29 如果有一天de 閱讀(430) | 評(píng)論 (0)編輯 收藏
    主站蜘蛛池模板: 18禁超污无遮挡无码免费网站 | 亚洲一区二区三区亚瑟 | 亚洲成a人片在线观看播放| 美女视频黄a视频全免费网站色窝| 亚洲另类少妇17p| 污污污视频在线免费观看| 免费播放春色aⅴ视频| 成年网站免费入口在线观看| 亚洲成人国产精品| 中文无码日韩欧免费视频| 亚洲国产精品无码中文字| 一级成人a毛片免费播放| 亚洲老熟女@TubeumTV| 一个人在线观看视频免费| 亚洲熟女精品中文字幕| 国产一区二区三区在线免费| 人人爽人人爽人人片av免费| 亚洲国产精品VA在线看黑人| 99精品视频在线视频免费观看| 亚洲成a人片77777群色| 青草草在线视频永久免费| 十八禁的黄污污免费网站| 久久精品国产亚洲AV麻豆~| 59pao成国产成视频永久免费| 亚洲AV男人的天堂在线观看| 少妇亚洲免费精品| 另类免费视频一区二区在线观看| 78成人精品电影在线播放日韩精品电影一区亚洲 | 伊人久久大香线蕉亚洲| 久艹视频在线免费观看| 亚洲一区二区免费视频| 四虎影视在线永久免费看黄| a级片免费在线观看| 亚洲人成人网毛片在线播放| 又爽又高潮的BB视频免费看| 成全视频在线观看免费| 亚洲制服丝袜第一页| 亚洲日韩精品无码专区网站| 久久综合国产乱子伦精品免费| 亚洲精品GV天堂无码男同| 亚洲综合熟女久久久30p|