問卷系統LimeSurvey-pdf內容空白問題

由LimeSurvey系統產生PDF時,會出現空白的狀態。
因為預設語系為簡體,而輸出文字內容為繁體,而且預設字型大小也只有8px,實在有點太小了。
若有相同問題的朋友請依照以下方式修改。

如何變更字型大小

# grep --color -R "pdffontsize" /var/www/html/limesurvey/
  /var/www/html/limesurvey/application/config/config-defaults.php:$config['pdffontsize'] = 8;
# vim /var/www/html/limesurvey/application/config/config-defaults.php
  $config['pdffontsize'] = 16;

如何變更語系

# vim /var/www/html/application/third_party/tcpdf/fonts/chinese.php
  $enc='UniCNS-UTF16-H';  //原始值為UniGB-UTF16-H
  $cidinfo=array('Registry'=>'Adobe', 'Ordering'=>'CNS1','Supplement'=>0);  //原始值為GB1及2

為何我會知道參數值要修改成什麼呢?
因為我搜尋UniGB-UTF16-H字串時,發現他在cid0cs.php內有以下3行文字:
// Chinese Simplified
$enc='UniGB-UTF16-H';
$cidinfo=array('Registry'=>'Adobe', 'Ordering'=>'GB1,'Supplement'=>2);

而在同一個目錄下還有一個cid0ct.php的檔案,內容也有相似的3行文字:
// Chinese Traditional
$enc='UniCNS-UTF16-H';
$cidinfo=array('Registry'=>'Adobe', 'Ordering'=>'CNS1','Supplement'=>0);

問卷系統LimeSurvey-修改按鈕文字內容及字型大小

使用預設的版面時,右下角會有一個"載入未完成問卷"的按鈕,左下角則是"離開並清除問卷"的按鈕。


***字型的大小預設是10px,而文字字串則是存放在繁體中文語系檔(.mo)內。

一開始我搜尋limesurvey目錄下(包含子目錄)所有的php內容,看看是不是有"載入未完成問卷"的字串,但只找到他的變數"Load unfinished survey",之後再用以下的指令找到了這字串的所在檔案位置。

# grep --color -R "載入未完成" /var/www/html/limesurvey/
  二進位格式檔案 /var/www/html/limesurvey/locale/zh-Hant-TW/LC_MESSAGES/zh-Hant-TW.mo 符合

***所以基本上除了按鈕的文字字串,像是limesurvey其他網頁的文字字串也都是存放內在這個檔案內。

如何編輯繁體中文語系檔

我們可以到limesurvey的官網下載最新的繁體中文語系檔(.po)進行編輯並轉換成繁體中文語系檔(.mo)。
  1. 繁體中文語系檔載點:limesurvey2-zh-tw.po
  2. po檔編輯器載點


  3. 存檔後,在同一個路徑下會產生一個limesurvey2-zh-tw.mo檔。將這個檔案複製到路徑/var/www/html/limesurvey/locale/zh-Hant-TW/LC_MESSAGES/底下,記住要先備份原始檔。
  4. # mv zh-Hant-TW.mo zh-Hant-TW.mo.bak20130807
    # wget http://myftp/limesurvey2-zh-tw.mo
    # mv limesurvey2-zh-tw.mo zh-Hant-TW.mo

  5. 按F5重新整理網頁

如何變更字型大小

# vim /var/www/html/limesurvey/upload/templates/test/template.css  //test模板名稱
  279  /* Save All button */
  280  .saveall {
  281  font-size: 16px;
  282  margin: 5px;
  283  }