2012年8月30日 星期四

Firefox 14版本中添加點擊後播放 (click to play) Flash特性

第1步: 進入火狐暫存設定


由於火狐無法直接選擇變更快取資料夾目錄,必須以手動修改的方式來選擇  在網址欄位輸入

about:config
再按下 Enter (這時會出現警告訊息) 點選 我一定會小心

第2步: 改變偏好設定名稱設定值


在偏好設定名稱尋找
plugins.click_to_play


 在 plugins.click_to_play 上按滑鼠右鍵選 "切換" 或 直接在 plugins.click_to_play 上點兩下左鍵
 ,將 false -> true,改變後如下圖:
 


第3步: 是看看是否有用

預設值為 false 時,進入網站時 Flash 會自動撥放



改為 true 後,進入有 Flash 的網站需點擊後才會撥放 Flash

2012年8月25日 星期六

印表機驅動類型的差異

PCL 驅動程式
HP為了在多個不同列印設備之間有效地控制雷射印表機功能而建立了 PCL。PCL 最初設計用於 HP Dot Matrix 和 Inkjet 系列的雷射印表機。 第一款 HP LaserJet 系列雷射印表機於 1984 年發佈,使用了 PCL 3 語言。
PCL 命令是緊湊換碼序列碼,它在發送到印表機之前就已內嵌於印表機作業中。 HP PCL 的格式和字體可將應用程式輸出快速翻譯為高品質、特定設備的光柵列印圖像。
PCL 雷射印表機語言適用于所有HP雷射印表機,它提供了支援彩色列印所需的命令。 PCL 共有六個版本(1 到 6)。雷射印表機語言的每種後繼版本都包括舊版中沒有的新命令,以及原有的 PCL 命令。 這樣可以向後相容支援舊版本語言的軟體。

目前有兩種常用的 PCL 版本:
PCL 6 驅動程式
PCL 6 使用了新的模組結構,可以輕鬆地修改用於 HP 雷射印表機,同時還有以下特性:
*在緩存資料後返回應用程式更快
*列印複雜圖形更快
*資料流程可更有效地減少線路往返
*更好的“所見即所得WYSIWYG”列印
*改善的列印品質
*更真實的檔案重現
*完全向後相容
PCL 6 語言與舊版本的 PCL 截然不同。最顯著的區別是其命令發送到雷射印表機的方式。 使用 PCL 6 列印程式充分利用雷射印表機的各種功能。我們建議您使用 PCL 6 列印程式,除非必須向後相容先前的 PCL 驅動程式或原來的雷射印表機。

PCL 5 驅動程式
PCL 5c 雷射印表機提供了支援彩色列印所需的命令。使用 PCL 5e 驅動程式可相容為舊雷射印表機建立的檔案。

PS 驅動程式
PostScript (PS) 最初由 Adobe 設計®,它是具有超強圖形處理能力的解釋性編程語言。 此語言中的程式將檔案的說明傳送到輸出設備(例如雷射印表機)。 一般情況下,在有以下要求時推薦使用 PostScript:
*需要支援其他使用者的字體
*在 Macintosh 環境下列印
*以特定方式編輯圖形
*使用 PostScript 特定的應用程式列印


  由於列印是由驅動程式將電腦資料,轉換成印表機能夠理解、處理的語言後,命令印表機藉著這些資訊驅動列印引擎,然後輸出正確的圖文資料。如果你使用的是印表機不支援的列印語言,或是使用列印語言無法解譯的字型,那麼印表機也無法列印出文件,甚至直接輸出成亂碼。

  不同印表機廠商幾乎都有各自的列印語言,例如HP的 PCL 5(Printing Control Language 5)與PCL6、Epson的EPL、Canon的UFRⅡ,以及Adobe的Postscript(簡稱PS)。目前市面上是以PCL與PS兩種列印語言為主流,不過兩種列印語言的運作方式也大不相同。簡單地說,PCL是要牽涉到設備性能的列印語言,在Windows環境下列印時,先把檔案位圖格式轉換成PCL程式碼,然後再傳送到印表機處理器解譯並且執行列印工作,所以輸出時的速度與品質就會牽涉到印表機本身的處理器速度、解析度,以及紙張類型與尺寸等問題。

  而PS則是非印表機廠商Adobe推出的一種頁面描述語言,將要列印的資料先在電腦端轉換為圖形格式,再交由印表機列印,所以可適用於所有印表機,且能夠不受限於印表機的解析度、紙張類型,及不同的支援字形集等,能讓用戶獲得最接近原始檔案的列印品質。一般來說,PCL列印語言在處理Office系列應用程式,或是IE網頁列印時,速度較快;而PS則在輸出專業圖形檔案時,品質呈現較佳。

  所以,當用戶列印PCL印表機不支援的特殊字型時,甚至用PCL5印表機,以PCL6列印語言的驅動程式輸出,那麼也會產生亂碼或是完全無法列印的情形。

  因此要解決特殊字型亂碼問題,除了選購印表機支援字型集外,最立即的處理方式就是把文件轉換成圖檔列印,或試著用PS列印語言的驅動程式輸出。而HP也在他們的驅動程式內建「以點陣方式列印Ture Type字型」的功能。遇到無法輸出的文字時,就能夠啟用這項功能,增加印表機的字型支援能力。

2012年8月9日 星期四

Blogger 階層式標籤語法

很高興找到了 Gormit's 原型製作 所分享的 Blogger 文章分類工具 (第二版)

讓我的標籤(文章分類),可以階層的方式呈現!

以下引述 Gormit's 原型製作 的教學文章

-------------------------------------------------------

第二版,現在可以支援多層次的分類,並且可以展開/關閉分類
分類仍以中括號作為分類的標籤



使用 [分類1][分類2]標籤 的格式來定義標籤即可

安裝如同第一版的步驟

步驟一
打開版面配置,加入標籤這個小工具, 一定要設定為用按字母排序
顯示設定不重要等下一步的script只會以清單表現

步驟二
選擇"修改HTML" 並鉤選"展開小裝置範本"
找到步驟一新加的小工具 找像下列的字串


一直到

為止


步驟三
將上述範圍內的內容改為:
<b:widget id='Label3' locked='false' title='文章分類(v2)' type='Label'>
<b:includable id='main'>
  <b:if cond='data:title'>
    <h2><data:title/></h2>
  </b:if>
  <div expr:class='"widget-content " + data:display + "-label-widget-content"'>
<script>
var label_tree= new Object();

function tn(tag)
{
    return tag.substring(1,tag.length-1);
}

function build_node(tree,idx,cnt)
{
    if(!tree[idx[0]]){
        tree[idx[0]]=new Object();
        tree[idx[0]]['_cnt']=0;
        tree[idx[0]]['_item']=new Array();
    }
    tree[idx[0]]['_cnt'] = parseInt(tree[idx[0]]['_cnt']) + parseInt(cnt);        
    if(idx.length==1){
        return tree[idx[0]];        
    }
    return build_node(tree[idx[0]],idx.slice(1),cnt);
}
function add_label(_name,_cnt,_url,_dir)
{
    var e1 = new RegExp("\\[(.+?)\\]","g");
    var e = new RegExp("\\[(.+)\\]","g");
    var m = _name.match(e);
    var tag = _name;
    
    var obj=new Object();
    obj['tag']=_name;
    obj['cnt']=_cnt;
    obj['dir']=_dir;
    obj['url']=_url;
    if(m){
        obj['tag']= _name.substring(m[0].length,_name.length);                
        var m1 = _name.match(e1);
        if(m1){
            node=build_node(label_tree,m1,_cnt);
            if(node){            
                node['_item'].push(obj);
            }
        }        
    }
    else{
        if(!label_tree['_item']){
            label_tree['_item']=new Array();
        }
        label_tree['_item'].push(obj);
    }
}
function menu_exp(id)
{
        var ul=document.getElementById("ul_"+id);
        var li=document.getElementById("li_"+id);
        if (ul.style.display=="none"){
            ul.style.display="block"
            li.style.backgroundImage="url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdytmVq5cd43MACqcvhDqmOQtGSw8zGI3rigI6pqugM2n7zYXeN23JMHOxwjm7IF5_MjPUzotfCsSk2WW4RVQLgpibE9GnfIwaykSx4bDmuaARRVwX6PdLZjNn97Pp8vz38cBmVQhuXRI/)"
        }
        else {
            ul.style.display="none"
            li.style.backgroundImage="url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHFSgKycGacZr8WUj1zYIoQOMBlI_PrMCDmWUmamB6dRJtk663mhFeXxeZmVqQbgqCo95e7u9nzcS3PEgVWsBBo8nrbHA2vPqalmsQoB2Nl-vrZZVDH384vfd2nRQjFjZlh3tyMBrC9ig/)"
        }        
}
function draw_obj(obj)
{
    document.write("<li style='padding-left: 0px>'");
    document.write("<img src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNF85YYvzThwnq-1CDpctaOOHI_m67TI1xgDWytXH-SB3q2u9uI0VzQldTeSgm965eC7b9D5Qi4UvojG9xPKnJFUxc0Mys1aA74zZSFU-RVLKo5essLMYVjAhyphenhyphen2_-sHWbhkGeIeWTEEUM/s1600/icon-yellow-bullet.png' /><a dir='"+obj['dir']+"' href='"+obj['url']+"'>"+obj['tag']+"</a>");
    document.write("<span dir='"+obj['dir']+"'>("+obj['cnt']+")</span>");
    document.write("</li>\n");
}
function draw_tree(tree)
{
    for(var tag in tree){
        if(tag!='_item'&amp;&amp; tag!='_cnt'){
            var rid = Math.random();
            document.write("<li class=submenu id=li_"+rid+" onclick=menu_exp('"+rid+"'); style='font-weight:bold;padding-left: 20px;background: url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHFSgKycGacZr8WUj1zYIoQOMBlI_PrMCDmWUmamB6dRJtk663mhFeXxeZmVqQbgqCo95e7u9nzcS3PEgVWsBBo8nrbHA2vPqalmsQoB2Nl-vrZZVDH384vfd2nRQjFjZlh3tyMBrC9ig/) no-repeat left 0px;cursor: pointer'>");
            document.write(tn(tag));
            document.write("("+tree[tag]['_cnt']+")");
            document.write("</li>");
            document.write("<ul id=ul_"+rid+" style='display:none;padding-left: 20px'>");
            draw_tree(tree[tag]);
            document.write("</ul>\n");
        }
    }
    if(tree['_item']){
        for(var i=0;i &lt; tree['_item'].length;i++){
            draw_obj(tree['_item'][i]);
        }
    }
        
}
</script>
<b:loop values='data:labels' var='label'>
<script>
    add_label('','','','');
</script>
</b:loop>
      <ul>
      <script>
          draw_tree(label_tree);
      </script>
      </ul>
    <b:include name='quickedit'/>
  </div>
</b:includable>
</b:widget>

步驟四
按下儲存範本就完成了

步驟五
使用以下的格式作為文章的標籤
使用 [分類1][分類2]標籤 
程式會自動抓出[分類]的內容列表

2012年8月5日 星期日

[教學]如何將 Firefox (火狐) 瀏覽器快取檔案 (Cache) 指向特定目錄或虛擬硬碟 (Ramdisk)

第1步: 進入火狐暫存設定


由於火狐無法直接選擇變更快取資料夾目錄,必須以手動修改的方式來選擇  在網址欄位輸入

about:config
再按下 Enter (這時會出現警告訊息) 點選 我一定會小心

第2步: 新增字串

一旁的空白處按下滑鼠右鍵,選擇 "新增" → "字串"

第3步: 輸入字串值名稱


在偏好設定名稱輸入
browser.cache.disk.parent_directory

並按下"確定"

第4步: 輸入存放暫存檔的路徑


輸入的字串數值是依使用者存放暫存檔的位置來決定 , 上方是以 X:\Firefox Temp\ 為例,輸入後按下"確定"

第5步: 查看輸入有無錯誤

輸入完成後 , 在偏好設定中就會出現啟用自訂快取料夾的功能以及對應位置,查看有無問題

第6步: 重新啟動 Firefox

關閉 Firefox 再重新啟動 , 就會套用修改值

[教學]如何將 Internet Explorer (IE) 的瀏覽器快取檔案 (Cache) 指向特定目錄或虛擬硬碟 (Ramdisk)

第1步:開啟網際網路選項,在 "一般" 分頁下方的瀏覽器歷程紀錄右方找到 "設定" 按鈕



第2步:按下 "移動資料夾" 來調整暫存檔所使用的資料夾


第3步:選取所要存放快取檔案的地方


我們在虛擬硬碟 (X:) 下方建立 IE Temp 資料夾, 將快取檔案存放到 X:\IE Temp 下

解決gedit中文亂碼問題

Ubuntu ,系統內預設的文字編輯器是 gedit,預設的gedit是沒有加入BIG5的編碼的,所以開出來的中文檔會是一堆亂碼。


解決方法

1.在終端機,輸入下列指令
:~$ gconf-editor


2.從「apps/getid-2/preferences/encodings/」路徑,編輯「auto_detected」鍵值。



3.按「加入」,輸入「BIG5」,並把輸入的項目移到 CURRENT 之前。


4. 按「確定」後關閉 gconf-editor。

這樣 gedit 就可以辨識這些編碼的文字檔了。

另外,如果新建的文字檔要儲存時,有要指定編碼型態,在另存新檔時可以選擇字元編碼,編碼種類也可以在上圖的 shown_in_menu 中增減。