2012年5月20日 星期日

[C] PTTMAIL2HTML 把站內信轉成網頁

下面就直接從PTT複製過來(?

不知道鄉民知不知道 PTT 的信件打包功能。簡單說就是把信箱內所有文章備份,打

包成一個壓縮檔,再寄去指定的email。

    壓縮檔解開後是散落的文章與.DIR文章列表,這個軟體就可以把整個資料夾轉成

HTML格式。

    可以正確轉換 ANSI ,已在 IE6-8 / FF / OP / GC 測試過。轉出來的 HTML是 UTF-

8 格式,不會有亂碼問題。在非IE系列的瀏覽器上有外掛 Linkify ,能自動將http 網址

轉成超連結或圖片。

下載點︰
http://is.gd/J9nRlf

程式介面http://i.imgur.com/9x7FT.png

轉換過程http://i.imgur.com/iOeYx.png

輸出的目錄http://i.imgur.com/htv5u.png

文章目錄,日文不會亂碼http://i.imgur.com/hLmtV.png

轉出來的ANSI圖http://i.imgur.com/7fpvj.png

網址被轉成圖片http://i.imgur.com/VRruG.png

使用感想:

    其實這也可以用來製作文摘/整理ANSI圖。把文章通通轉到信箱,打包,再做成網頁。

但PTT有限7天只能打包一次就是了。

    原始碼中 main.cpp 裡有函式 convert_ansi() 用來把文章轉成 HTML ,稍微修改也

可用來轉換 PCMan 下載下來的ANSI檔。


附註:

    因為測試的次數不多,還請多多給建議 / 回報Bug了。

    為了做文字對齊,所有雙位元字外都包了Span限寬度,造成轉出來的體積有點龐大...

一般的文章加上10幾行的推文,檔案大小大約在10~15K左右。以我為例,轉出來的資料夾

大小是原資料夾的8倍Orz(2M ->  16M)。現在想找UAO的結構文件,如果能只對齊半形日

文與特殊符號就最好了。

5 則留言:

  1. 這個轉換機制能不能做成 Chrome 或 Firefox 的擴充套件?
    然後透過他來開啟 local 保存的 ANSI 文件,並獲得 HTML 形式的瀏覽
    這樣可以節省許多佔用容量,也不必同時保存 ANSI 和 HTML 兩種版本

    回覆刪除
    回覆
    1. https://addons.mozilla.org/zh-TW/firefox/addon/ansi-viewer/

      刪除
    2. 原來早就已經有了!

      感謝 欸特 造福人群 :)

      刪除
  2. 1.可以為藏在右鍵選單中的 View as ANSI 設定觸發熱鍵嗎?
    2.建議讓使用者加入合法副檔名清單,不要只預設支援 .ans

    謝謝!

    回覆刪除
    回覆
    1. 和這篇文章無關的建議可以去 ANSI Viewer 那邊開個 issue
      https://github.com/eight04/ansi-viewer/issues

      刪除