懶的更新到blogger了

本站2010年10月以後的,都更新到google docs上了:
連結在這裡

2008/12/07

怎麼會有這麼棒的軟體

網路上亂逛,找到一套叫作 Graphviz 的軟體,
網站:http://www.graphviz.org/
看起來是套流程圖的繪製軟體。

簡單操作後,發現是套功能很強的軟體,
只要簡單寫幾個字,就可以畫出漂亮的流程圖。

範例0:sample0.dot
digraph G {
a -> b -> c;
b -> d -> c;
a -> c;
}

之後執行 dot -Tpng sample0.dot -o sample0.png
(不只dot,也可以用neato ......)
就會產生sample0.png:



範例1:sample1.dot
digraph G {
c[shape=box]; // C的形狀是矩形
a -> b -> c;
b -> d -> c;
a -> {e;f} -> c[style=dotted]; // 可以用{e;f}同時連兩個,樣式都是虛線
edge [color=red]; // 從這裡開始,link線都是紅色
node [shape=box,style=filled,color="0.7 0.1 1.0"]; //從這裡開始,節點都是 矩形 填滿
a -> g;
g [label="OH I am \ng"]; // 是g ,但是label可以被修改
g -> a [label="link label"]; //link的label也是可以設定的
g -> 中文;
中文[fontname="TW-Kai"];
}


之後執行 dot -Tpng sample1.dot -o sample1.png 產生下圖:



範列2:sample2.dot
digraph G {
node [shape=box,fontname="TW-Kai"]
校長 -> {教務處;學務處;輔導處;總務處;人事室;會計室};
教務處 -> {教學組;設備組;註冊組;資訊組};
學務處 -> {訓育組;生教組;衛生組;體育組};
衛生組 -> 健康中心;
輔導處 -> {輔導組;特教組;資料組};
總務處 -> {事務組;出納組;文書組};
會計室 -> 會計佐理員;
}

之後執行 dot -Tpng sample2.dot -o sample2.png 產生下圖:



不只png,它也可以輸出成 gif,svg,.....很多格式,自已試吧。

2008/10/25

用SystemRescueCd製作還原用的DVD

之前寫過硬碟的備份與還原之後,就一直在使用 SystemRescueCd(http://www.sysresccd.org/)。
目前版本到1.1.0了,不過因為之前很多電腦的備份都是用 0.4.0版,所以也還繼續使用這版。

目前比較常用的方式是,用sysresccd開機完機後,再把隨身硬碟接上,mount後開始還原。
其實感覺上也都還好,只是常想,能不能直接製成DVD,把sysresccd和備份image檔一起放到DVD裡,開機後就不用再插入硬碟了。
實際上是可行的,官網也有教了,不過還是應該自己試一次看看。

測試環境:
使用 SystemRescueCd 0.4.0版(systemrescuecd-x86-0.4.0.iso)
作業系統使用 Ubuntu8.04(裡面已經有 growisofs 程式了)
最後沒有直接燒在DVD,而是先做成一個 iso檔。(因為這樣可以拿到別台電腦燒)

步驟:
1.先產生一個空白的檔案(my.iso)
touch my.iso

2.然後把原始可開機的sysresccd先寫入iso檔內
growisofs -dvd-compat -Z ./my.iso=/path/to/systemrescuecd-x86-0.4.0.iso
(第一次用 -Z ,後面的路徑要自己改掉)

3.最後加入還原用的檔案
growisofs -M my.iso -R -J /path/to/your/files/
(第二次之後用 -M ,可重覆多次,最後的路徑要自己改掉)

這樣就完成我自己要的 iso 檔了。
馬上拿去燒錄,馬上測試,發現真的是可以開機的(至少我的電腦可以)。
而且額外燒進去的檔案就在 /mnt/cdrom/ 裡。
--
其實我把燒完的片子放在WindowXP裡,並沒有看到那些檔案,只看到原始的sysresccd的內容。
不過用它開機真的可以在 /mnt/cdrom/ 裡找到燒進去的檔案。

2008/10/12

唱卡啦ok

很多同事都愛唱卡啦ok。
不久前,有同事騎腳踏車(最近流行騎這個 ^^ )到我家來有提到,
說他正用舊電腦在試卡啦ok的軟體,最後是使用jetktv這套軟體。
其實我有聽過,只是沒有試用過。
這個利用這次的國慶連假,在家試試看。

到jetktv官網(http://www.jetktv.com.tw/)去抓軟體吧(目前是3.0.1Beta版),
安裝時說我缺少了 wmp.dll ...... 因為,我的電腦沒有裝windows media player,
好吧,就為了試卡啦ok去安裝吧......上網抓了 WMP9的版本(因為家裡的電腦還在用win2000)。
移除jetktv,再重新安裝,果然好了(不移除應該也沒關係吧 ^^ )。

新增歌曲,可以利用檔名「語言-性別-姓名-歌名.mpg」的方式拖曳進去,感覺還不錯。
不過,還是用外掛的歌曲管理程式會比較方便一點 ^^ 。
官網上也有說明:http://www.jetktv.com.tw/rewrite.php/read-6.html

不過,因為手邊沒有紅外線遙控器,所以對這套軟體的webservice相當感興趣,
這個webservice就是可以利用瀏覽器,連線到有安裝並啟用jetktv的電腦,
直接用瀏覽器就可以線上對那台電腦作點歌、切歌、查詢……等動作。
想不到作者還自己寫了個web server放在裡面,真是太用心了。(首頁home.jet...就是.html)
預設port 80,可自行修改,特別是有用skype的人應該會有影響吧
(之前有寫到skype預設佔用80/443 port)

--- 分隔 ---

不過,說到卡啦ok就想到之前家裡也買了台點將家,似乎好久都沒打開來唱了,
印象中好像也是可以外接硬碟的方式去新增歌曲的。
找了一下說明書(也找到保固書,原來是2004年買的),
上面有提到要將外接硬碟,分割成primary,格式化成 ext3 的格式,
然後詳細部份就沒提到了(檔案名稱、格式...),真是太簡單了吧,這個說明書...

這時只好靠網路了,用關鍵字「點將家 ext3」,果然找到了很多網頁,
參考了一下,結論就是:
  1. 硬碟切primary,且格式化成ext3。(說明書講的)
  2. 資料匣可用 95、96、97、98、99 (其實可以看出這就是對應到點歌號碼的前2碼)
  3. 影音檔和文字檔命名、說明如下(資料匣95為範例):
    3.1 影音檔:95001.dat (vcd-ntsc格式一定可以,其他我不確定)
    3.2文字檔:95001.info(編碼:UTF-8,網路說共4行,說明如下)
      第一行:95001(很容易懂)
      第二行:歌名(很容易懂)
      第三行:<ENTER>
      第四行:<ENTER>(所以有兩行空白,why? 應該可以打東西吧)
      (不管啦,不過我照做真的可以用點將家外接上去播,編號當然按95001)
  4. 將外接盒接的usb線接到點將家,然後開機,然後......enjoy!。
--
另外:
第一次啟動jetktv時,想要馬上離開,卻發現要密碼,預設密碼是「999999」。
它資料庫的檔案(mdb),也是可以打開看的,密碼是「tmwcmgumbonqd」。

2008/10/02

px , pt 和 cm

想用網頁加CSS來套印一個固定的圖案(底圖相同,上面文字不同),
馬上遇到的問題是,印出來的東西是用 cm,但是電腦裡大都用 px。
cm 能轉換成 px嗎?
到W3C的網站看到的情況是:
像素 px:pixels, or pixel size of a "typical computer display"
英吋 in:inches (1 inch = 2.54 centimeters)
公分 cm:centimeters
 點 pt:points (1 point = 1/72 inch)

所以 cm , in , pt 應該都算是絕對的單位,可是 px 是相對的單位,它會和解析度(DPI)有關。
記得在顯示器內容看過,電腦裡好像是 96 dpi ,那就用 96 dpi 來算好了。

例如:
6pt = 6 * (1/72) = 1/12 inch ,在96dpi(1英吋長度內有96px )的情況下,
1/12 inch = (1/12) * 96 = 8 px (也就是96dpi的情況下 6pt = 8px)。

馬上實驗...用div...放大10倍好了 60pt=80px :
<div style="width:60pt;height:60pt;background-color:red;">60pt的div</div>
<div style="width:80px;height:80px;background-color:green;">80px的div</div>
60pt的div

80px的div

在我的電腦上看起來,好像真的一樣大耶.....太好了。

所以我有一個10cm寬,3cm高的圖案,也可以轉成大概的px(像素)了:
10 cm = 10 / 2.54 ≒ 3.937 (inch) , 3.937 * 96(dpi) ≒ 378 px
3cm = 3/2.54 ≒ 1.1811 (inch) , 1.1811 * 96(dpi) ≒ 113 px
<div style="width:10cm;height:3cm;background-color:red;">10cm * 3cm 的div</div>
<div style="width:378px;height:113px;background-color:green;">378px * 113px的div</div>
10cm * 3cm 的div

378px * 113px的div

嗯,用肉眼看起來是差不多大小的 ^^
--
結論:
在96dpi的情況下,量出公分的值,先除以2.54再除乘以96就可算出大概的px,
也就是把公分的值乘以大約37.8(從96/2.54 得到)就可以把cm換成px了。
不同dpi時只要把96換成其他的值即可。

2008/08/11

下班的路上看見彩虹

也不是什麼特別的事,只是正好在下班騎車的路上,
不算在下雨,但偶爾能感受到有一些雨滴,
頭不經意的往左手邊一轉,看到一道彩虹,有點驚喜。
(這句話同時也告訴我們,太陽在右手邊 ^^ )

正好有帶著相機,就停下來拍張照吧。


嗯.....那個電線....就不要太在意了。

嘉油鐵馬道

20080810
每天上班途中都會經過「嘉油鐵馬道」,但機車是不能騎上去的。
所以一直很好奇它到底是從哪裡通到哪裡?

最近剛買了新的腳踏車,就趁這個機會騎上去看看吧。

從嘉義市開始算的話,是從「世賢路站」(上圖)→「民生南路站」→「新民路站」→「南京路站」→「紅瓦厝站」→「道將圳站」→「鴿溪寮站」(下圖)


這天...這個時間...剛好沒什麼人,正好可以拍個照。


都沒人,放在地上拍一張吧:


我的腳踏車 ^^

2008/08/05

買腳踏車了

20080805,pm 10:00
終於買腳踏車了,
GIANT BOULDER
加裝 前燈、後燈、飲料架、碼錶、和一個小包包。

嗯,藍色的比較好看,所以選藍的。

一樣上來記錄一下時間

2008/08/01

windows update 一直無法成功,都失敗

今天處理到一台剛更新到XP sp3的電腦,
但後來有12個 windows update 一直無法成功更新,
那個黃色小盾牌出現有新的更新,但更新就失敗,
馬上跳出有更新→失敗→更新→失敗→更新.....
天啊,無限迴圈了,太可怕了。

還好,網路上打了一些關鍵字,就可以找到解決方法。
http://support.microsoft.com/kb/945099/zh-tw

用了第一個方法,下載了 wufix.zip ,解壓縮後執行。
(執行後要等一下下,完成後畫面會自動關掉)
之後馬上再 windows update,果然12個更新都ok了。

2008/07/30

買了新電腦

買了一台新的筆電,所以上來留言,記錄一下時間。

ASUS F9Eseries
CPU: Core 2 Duo T7100(1.8G)
RAM:1G+1G
HD:120GB
LCD:12吋 WXGA
DVD:Super Multi
沒有獨立顯卡...很明顯不是為了遊戲
OS:VISTA BIZ
有web cam和指紋辨識......但並不打算使用後者...
--
好....就是這個日期。

2008/07/24

兩個沒用過的HTML標籤fieldset和legend

看到有人的表單有框線區格還有該區的標題,
本來以為用了什麼特別的方法,原來只是HTML標籤....只是自己從來沒用過 ^^
FIELDSETLEGEND

例如:
<form name="myForm">
<fieldset>
<legend>第一個區塊</legend>
帳號:<input type="text"><br />
密碼:<input type="password"><br />
</fieldset>

<fieldset>
<legend>第二個區塊</legend>
性別:<input type="radio" name="gender" value="1" checked>男
<input type="radio" name="gender" value="2">女
<input type="radio" name="gender" value="3">不男不女
</fieldset>

</form>

結果:


第一個區塊
帳號:

密碼:




第二個區塊
性別:

不男不女

--
W3C HTML Elements

2008/07/07

可生成電子書的軟體

今天參加研習,目的應該是增強網路創意競賽的能力,
不過重點大概都在製作電子書方面了。

主要算是強調各種媒體之間整合的能力。
用一套叫ZineMaker的免費軟體來整合成電子書。
它內建一些不錯的模版可以使用,可以自己加入圖片、flash去產生一本電子書,
不過最後產出的結果是包裝成一個 exe 檔。(個人認為,如果可以存成swf檔會更好)

各種媒體方面:
flash可以用Flasy Easy(試用版可用90天)製作,蠻方便的。
(教網好像買了授權)

錄音和聲音剪輯可以用自由軟體Audacity(有可攜式版)。

影像處理大部分學校都有 PhotoImpace,要不就用自由軟體 GIMP (也有可攜式版)。

影片處理是比較麻煩的部分,如果經費許可的話,應該還是買套 會聲會影之類的軟體比較實在。
--
另外有人問到一些其他問題,
ppt檔能轉成flash檔嗎?答: 關鍵字「ppt2swf, ppt2flash」
ppt檔能嵌入flash嗎?答:「可以」,過程我不太記得了,應該是在檢視→工具列,先把Virtual Basict工具列叫出來,裡面的檢視控制工具箱,再裡面的插入控制工具箱....找Shockwave flash.......,然後把Movie的屬性加入想插入的flash名稱就ok了。(不過該ppt檔和該swf檔要放在同一個資料匣 ^^ )

2008/07/06

產生 VMWare Player 用的virtual machine

家裡的電腦裡,之前一直使用 VirtualBox
不過,因為電腦作業系統還在用win2000,
發現VirtualBox1.6以上的版本,似乎不能在win2000上運作了。
所以就一直沒更新上去了。

那就試試VMWare Player好了,反正也是免費的,
不過,player是無法產生virtual machine的,只能開人家作好的virtual machine。
網路上查了一下,發現有人提供現成的 xxx.vmx 檔案(其實只是純文字),
可是想要產生虛擬的磁碟(xxx.vmdk),好像就沒那麼容易。
雖然有人提供可以用qemu-img去產生....但還是太麻煩了。

後來發現,竟然有網站提供讓人線上產生vmx和vmdk的東西,
http://www.easyvmx.com/
試了一下,真是太方便了(就只要動動滑鼠,然後送出後就有一個zip檔可以下載)。

2008/03/29

練習CSS的背景,一張圖當四張用

早就想這麼試了,一直沒有真正寫寫看,
雖然沒什麼意義,但還是玩玩看。
來源圖片(64x64),剛才畫的四個臉(32x32),傳到picasaweb上了。
背景圖

div 32x32..背景沒動
div 32x32..background-position: 0px -32px;
div 32x32..background-position: -32px 0px;
div 32x32..background-position: -32px -33px;
(應該要 -32px -32px..可是剛這兩個值打一樣,第二個值會自動被blogger改成50%,所以用-33px)

這樣看起來好像有4張圖,其實是同一張,只是移動位置而已。

CSS的background
background-image: url(URL)
background-color: 顏色
background-attachment: scroll | fixed
background-position: ( [ top | center | bottom ] | x% | xpos ) ( [ left | center | right ] | y% | ypos )
background-repeat: repeat-x | repeat-y | no-repeat

2008/03/23

Matlab的替代程式

這學期的課程,似乎是要使用到Matlab,
一直都有聽過這是一套功能強大的軟體,但也一直沒有用過。
終於在今天使用到了,可是回家怎麼辦...也買一套嗎...為了修課而去買,不太划算。

網路上找了一下看有沒有替代的軟體,發現有人提出了幾個,
趕快把網址記錄下來 ^^ 方便自己使用。
FreeMat(目前3.6版,約10MB):
http://freemat.sourceforge.net/

Scilab(目前4.1.2版,約15MB):
http://www.scilab.org/

Octave(目前3.0.0版,約35MB):
http://octave.sourceforge.net/
http://www.octave.org/

目前只先抓了FreeMat(最小的^^)來試用看看,
介面和Matlab有些類似,而今天所練習的例子都可以正常的執行成功。

不過還是看之後會用哪些功能而定吧。

2008/02/29

久違了~牛仔褲~

大概有將近10年沒有穿牛仔褲了吧,(也許不到10年,反正很久了)
以前對牛仔褲的印象就是「硬」、「緊」。
這次去試穿的結果,發現有很多是有彈性的或是較軟的,
不過,價錢上,也發現都是我想像不到的價格,應該是百貨公司的關係吧...
最後還是買特價的,一件5折,另一件6折。
感想:
  • 穿起來真的有比較年輕的感覺,是錯覺嗎 ^^
  • 折扣較高的褲子穿起來感覺較合身,也是錯覺嗎 ^^
  • 中腰的褲子,明明拉到最高,但感覺好像還是往下掉了。
  • 有人陪著一起買、給點意見,感覺真不錯。

2008/02/08

法國春天藝術節─紅色長頸鹿遊行

之前新聞有報導,說農曆春節時會在嘉義有紅色長頸鹿的踩街活動,
本以為是在嘉義市,後來才發現是在嘉義縣,

大年初一,正好家裡有人要去看,所以當然也跟著去,
沿路,感覺車子真的不多,看來是沒什麼人去看吧...
到了朴子,開始交通管制,車位已不太好找,才發現人其實還蠻多的 :)

拍了一些照片:
FrenchSpring2008


也順便用相機記錄一些動態影像:



--
活動網站:http://www.wretch.cc/blog/frenchspring

2008/02/06

第一次寫utf8的php程式

今天是除夕,想不到竟然是整天在家沒出去,
沒辦法,誰叫天氣那麼冷……

好了,言歸正傳。
仔細想想,雖然之前曾經把所架的phpBB從big5轉到utf8,
但是好沒從來沒有自己寫過utf8的php程式。

今天正好有一些小資料想要把它轉成phpBB發文時我想要的bbcode格式,
資料是放在google線上spreadsheet裡,裡面有繁中、簡中、日文字(google服務都是使用utf8)
本來想用Excel去處裡的,可是家裡電腦沒有灌Excel,
後來也想使用OpenOffice.org的Calc,可是打開後怎麼有些字顯示不出來……不太保險的感覺。
所以打算自己寫,把它們都放進MySQL再寫php程式來產生我要的格式,
大材小用? 殺雞用牛刀?...反正就順便也練習嘛~

編輯utf8的編輯器:使用 MadEdit...超好用的。
資料的部份,本來想就開始寫php程式來匯入,後來發現phpMyAdmin可以匯進csv檔,
那當然就從google spreadsheet匯出的txt檔去改成phpMyAdmin所使用的csv格式
(格式是 "欄位1";"欄位2";"欄位3"; .......預設用「"」和「;」....不過是可修改的 ^^)
這邊也確定放進到MySQL的資料是utf8編碼的資料。

開始吧,寫的php是utf8的編碼,資料庫裡也是utf8編碼,
寫出來執行的結果......果然和我想的一樣,一大堆的 ??? 。
雖然早料到會如此,可是還是很傷心 ^^

網路時代,不浪費時間,馬上用google查「php utf8」,果然已經早有解決方法了,
我參考這篇:分享MySQL和php採用UTF8的詳細方法

裡面寫到了可以改的地方還真不少,不過,我自己也沒有全改,只改我自己認為可能的地方,
  • 0.先決條件:資料一定是utf8編碼(包含php程式碼和放進資料庫的東西.....廢話)
  • 1.我沒有使用php的header函數
    header('Content-Type: text/html; charset=utf-8');
    倒是有把phpBB的標頭copy過來用(順便copy一份,下次可以用)
    echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n";
    echo "<html dir=\"LTR\">\n";
    echo "<head>\n";
    echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\n";
    echo "<body>\n";
    echo "</body>\n";
    echo "</html>\n";
    (↑應該用單引號「'」的,但我希望產生的原始碼好看些 ^^ ,當然,關鍵是utf-8那一行)
  • 2.再來是建立資料庫時
    CREATE TABLE `table1` (
    `sn` INT UNSIGNED NOT NULL ,
    `title` VARCHAR( 60 ) NOT NULL ,
    ) ENGINE = MYISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    說真的COLLATE關鍵是什麼我不知道,但我還是加上去了。
  • 3.我覺得這個才是真正的關鍵,在開始query資料之前,先執行:
    mysql_query("SET NAMES 'utf8'");
    mysql_query("SET CHARACTER_SET_CLIENT=utf8");
    mysql_query("SET CHARACTER_SET_RESULTS=utf8");
    然後我的程式就可以正常運作了。
  • 文章裡面提到的php.ini , httpd.conf , my.cnf 還有cache什麼的,我就都沒改了
    (其實我有改過php.ini,但改完後再改回來,我的程式還是可以正常運作)
其他....好像沒什麼好寫的了,暫時到這裡。
--
相關php函數、範例查詢 http://www.php.net/