筆記一下:最近在研究KML,發現他的color format 有點奇怪,例如
<LineStyle>
<color>d90000ff</color>
<width>6</width>
</LineStyle>
翻了一下KML的spec, 才發現原來他的color format是ABGR,而不是一般網頁使用的RGB,因此我寫了一個小function來轉換
var transKMLColorToARGB = function(color){
var abgr = [];
for(var i=0; i<color.length; i+=2){
abgr.push(color.substring(i, i+2));
}
return [abgr[0], abgr[3], abgr[2], abgr[1]];
};
//get argb array
var argb = transKMLColorToARGB('5014B4F0');
var color = '#'+argb.slice(1).join('');//#F0B414
var opacity = ((parseInt(argb[0], 16)+1)/256).toFixed(2);//0.32
O3D這個東西大約在一年前google 就release出來了,雖然效能還比不上flash,但相信以javascript的執行效能不斷攀升且各家大廠相繼投入的成果,一定會促使著3d WEB蓬勃發展的,以下紀錄一些目前為止的相關資訊。
目前測試過的結果:在windows上裝了plugin之後可以在IE和firefox上運行,而windows版的chrome4.0版以上可以直接運作,而linux上的版本我還在嘗試build起來,之後有測試結果在做報告。
WEB 2D的發展已經愈來愈成熟了,SVG和canvas幾乎是複雜的2D處理的首選,也可以做到複雜的動畫處理。而O3D的出現,加快了WEB3D的發展,這應該也有助於未來chrome OS的推動,但是要吸引廠商來做相關應用程式的開發也還要在觀望,畢竟chrome OS在市場上的定位還是比較獨特的,如何擴大市場也是個難題。
前端程式越搞越複雜,接踵而至的問題越來越多,雖然瀏覽器的效能不斷地提昇,但是只要IE6沒被淘汰的一天,網頁程式設計師永遠要替IE6補洞,Memory Leak是一個非常難搞得議題。關於微軟的官方說法可以參考Understanding and Solving Internet Explorer Leak Patterns,裡頭有詳細說明IE6會如何發生memory leak的情況。發生memory leak的徵狀就是:記憶體不斷飆上去,就算reload頁面,記憶體也不會被釋放,除非關掉瀏覽器。
在此不介紹為何為引發memory leak,因為我覺得這是瀏覽器應該要處理的問題,要拿出來講只是因為IE6沒辦法處理好罷了,雖然其他瀏覽器也並不是沒有這個問題,但是至少問題都沒有這麼嚴重,因此只需要針對IE6來處理即可。以下是我整理出幾種比較好的處理方式: More »
javascript程式應該獨立成js檔被include進來,盡量不要將javascript code 與embade在HTML裡頭,這麼一來無法利用cache或壓縮,將來要維護也不容易。 盡量將引入的javascript放到HTML的最後,將會減少載入script的延遲。 script標籤裡頭不需要使用lauguage, type屬性。 More »

Categories
Tag Cloud
Blog RSS
Comments RSS
Last 50 Posts
Back
Void « Default
Life
Earth
Wind
Water
Fire
Light 