用 VBScript 自動抓取 XML 匯入 InDesign

感謝 aladdin 的提示(參見前文),我試著用 XMLHTTP 重新寫寫看之前想要寫的 vbscript,試了一下,果然能用。既然成功的來源來自於網路,想來也該放上來一份。

這段 script 的用途,主要是希望能夠透過 InDesign 內建的「指令碼」功能,按一個按鈕,就自動抓取遠端網站上的 XML 檔案,匯入到文件中。因為 XML 文件具有結構的特性,每一層結構都可以放置許多的資訊,因此,在排版的時候,就可以不像以往如果要在同一份出版品檔案中要置入很多文件的話,需要一篇一篇慢慢置入,主要的好處在於,如此一來可以用任何具有輸出 XML 功能的網站出版工具,當作是管理稿件的平台,在多人共同完成稿件之後,一次匯入,也就比較不會有抓錯稿件的問題,或同一份出版品同時有線上、平面發行時,方便兩邊的內容同步。

去年我就用 AppleScript 做過在 Mac OS X 上的嘗試,而今天放上來的示範,則是供 Windows 平台上的 InDesign CS 2 使用,示範如何自動抓取生命力新聞網的 RSS 內容排版。

Continue reading

是了—我放棄

我不知道別人的狀況如何,但是 Windows 實在給我太多讓人抓狂的挫折感。

狀況大概是這樣:去年我寫過一篇〈InDesign 的 Scriping〉,裡頭提到,Adobe InDesign 從 2.0 版開始,提供了 XML 匯入與匯出功能,因此,您可以在 InDesign 裡頭先根據 XML 欄位畫好版面、定義好樣式(styles),然後只要匯入 XML 檔案,就可以快速完成刊物的排版。那麼,XML 應該從哪裡產生好呢?我以為從 web-based 的內容管理系統產生,算是個比較方便的主意—畢竟現在這類的稿件管理系統這麼多,而且在多人共同編輯上,也算是方便。

同時,InDesign 是一套 scriptable 的排版軟體,從 InDesign CS 版開始,排版軟體本身就內建一套用於自動執行許多工作的 Javascript 語言,在 Mac OS X,也可以使用 Apple Script,在 Windows 作業系統上,也可以使用 VBScript 語言寫一些東西。之前我就在 Mac OS X 上,以 Apple Script 做了一些小東西,例如可以按一個按鈕,就在版面上插入今天日期…等;另外,就是透過按幾個按鈕,就可以自動將遠端的 XML 匯入到 InDesign 文件,script 裡頭做的事情包括:

  • 跳出視窗,詢問要抓取網站上的哪一個 XML 檔案。
  • 下載 XML 檔案到本機磁碟指定的位置上。
  • 呼叫 InDesign 排版軟體,匯入這個 XML 檔案。
  • 視是否正確匯入,跳出相關訊息。例如,如果發生 XML Parser Error,就跳出瀏覽器開啟遠端XML 檔案,查看 Parser 訊息。
  • 將用完的 XML 檔案丟到垃圾桶去。

而這兩天就在嘗試,有沒有辦法把之前寫的這些東西,也可以在 Windows 上跑。

Continue reading

InDesign 的 Scriping

雖然說一年多前就在讀關於 InDesign 的 Scripting 相關的文件,不過,上個星期才比較認真的寫出了一些自己需要的 Script。而上個星期荒廢了 blog 一周,全都是在研究 InDesign 的 Scirpt,還有就是做一支 Flash …話說我也將近三年沒把 Flash 拿出來用了(因為實在很不喜歡 Flash),做這個 Flash,也是千百個不願意,而打開 Flash 的介面,幾乎又是從頭摸索起。

InDesign 支援幾種不同的程式語言開發 script,可以透過這些 script ,在 InDesign 中以程式的方式完成許多例行的排版工作,甚至可說是自動排版;在 Mac OS 上的版本支援 AppleScript 語言,在 Windows 上的版本支援 Visual Basic 以及 VB Script,而從 InDesign CS 版開始,則內建一個 JavaScript 的解譯器,寫出來的 script 在 Mac OS 與 Windows 上均可使用。寫出這些 script 後,只要把程式放在 InDesign 應用程式目錄下的 script 目錄,就可以在 InDesign 中的script(InChinese 翻譯成「腳本」)面板中,按一個按鈕,便可以執行這些 script。

Continue reading

InChinese CS的索引功能

感謝SLLB的提醒,再打開軟體了解一下,才發現原來InChinese CS的索引功能也有些問題。除了目前索引不能夠使用中文作為排序根據之外,另外一個問題就是,我在InChinese的索引中明明輸入的是中文,跳出來的訊息卻告訴我說,我輸入的是「日本漢字」,真的頂奇怪的。

我最討厭的,就是拿專業當作惱羞成怒的托詞

我不知道應該怎樣稱呼macmyday,也無從了解macmyday的身份、背景以及立場,不過這位先生/小姐在本站的留言,實在讓我覺得相當有趣。雖然說直接剪貼過來,可能會有什麼著作權方面的問題,不過,我想macmyday,應該很樂意讓更多人看到他/她的想法。原本的留言內容如下:

1.新一點的字型,如華康OpenType 100,都已經幫我們配好了中英文字型,所以使用者沒有必要再用字體集功能自己配字型了。自己配有兩個問題:
a.你受過typography訓練嗎?你能配得比造字公司好嗎?b.你的type library蒐羅夠富嗎?足以配出專業的typography嗎?
2. raster並不是”點陣”,點陣是bitmap。raster在最早期的時候,是翻成”光域化”,
以此看來,”光柵”還比你的”點陣”要強多了哩!再者,你受過什麼翻譯訓練嗎?
不然,你憑什麼從翻譯的角度來評論InChinese?
3.InChinese也許不夠完美,但他這些年來的進步,以及他給我們貢獻是有目共睹的。
中國時報,蘋果日報全是InChinese+InDesign排出來的。
4.光憑你提出的這幾點,我覺得談不上什麼測試報告。了不起是閒聊。

讓我就這四點,一一回覆。

Continue reading