顯示具有 心得,perl 標籤的文章。 顯示所有文章
顯示具有 心得,perl 標籤的文章。 顯示所有文章

2008/07/09

okular 可以正常顯示中文 pdf 檔案內容

  之前曾對 okular xpdf 及 evince 這三個 Linux 中的 PDF reader 進行比較其檔案顯示效率,但如果檔案內容無法正確顯示的話再快也是枉然.剛好遇到幾份中文PDF檔使用 xpdf 或 evince 都發生中文字破碎問題,最後改用 okular就沒問題,以後應該會一直使用它來開啟pdf檔.
  因為個人使用 Ubuntu 8.04 64位元版,所以沒有懶人包的加持.也懶得去額外搞定 Adobe Reader ,能有 okular可用何樂不為 ?

  後續在 Ubuntu 10.04, 10.10 及 11.04 上及 openSUSE 11.3, 11.4 都可正常使用之外,發現它還有另一項好用的功能.在用來看電子書時如果要做個書籤記住讀到那裡,下次再讀時可以很快跳到想要的位置繼續下去.

  另一項更妙的功能是可以將PDF檔匯出成文字檔 (.TXT) ,這項功能就否是 Adobe Reader所允許,但對某些人來說是很重要的.特別是有一大段文字想要截取或是程式碼要參考.

  介面中文化也是做的很好,目前使用0.12版.建議大家可以改用此軟體取代 Adobe Reader,除非有什麼一定要用 Adobe Reader 的特別理由.

相關連結:
okular xpdf evince 比較 pdf 檔案顯示效率


2008/03/24

Perl Tk 中文亂碼解法


  本來以為Perl處理中文比Python優秀,但遇到要用Tk 來開發個簡單的圖形介面程式也要注意此問題。

  其實只要指定使用UTF-8 編碼即可解決。以下為程式碼:

========================================================

#!/usr/bin/perl -w
use strict;

use utf8; ## 加入此行
use Tk;
my($mw, $child,);

$mw = MainWindow->new;

$mw->title('大家好');
my $label = $mw->Label(-text => '大家好');
$label->pack;

$child = $mw->Button(-text => '確定',
-command => \&on_quit)->pack;

## $child->pack();


MainLoop();

sub on_quit
{
exit 0;
}

========================================================

  另外一個常用的 print 後面要列印的字串中如果有中文,請用單引號不要用雙引號。換行字元 \n 也不要放在單引號中,它與變數在單引號字串中都不會被處理。

  中文基本問題解決,可以專心利用perl來發展一些工具程式縮短煩人的一些小問題並提高工作效率。本來是要用 Python,但工作上的 Sun OS (Solars)上是不太可能為我們這些 AP owner 特別安裝 python。但 Perl 一定是預設都有安裝,只是版本老舊,但也夠用了.因此不太想花時間在 Python上了。