如何在ppt或word中添加高亮代碼?
問題: 如何ppt中添加帶有語法高亮的程序代碼,就如同下面的形式(在ppt嵌入高亮代碼,且可以編輯,帶有行號)
詳細的要求如下:
1.代碼帶有語法高亮。
2.結果是矢量圖,也就是說可以隨便縮小放大的,因此別拿直接對代碼截圖來忽悠我。
3.最好帶有行號。
方法一:
下載軟件SciTE,下載地址:http://www.fauskes.net/nb/syntaxms/
這個軟件是我從網上搜到的,外國人寫的。效果如下:
不過要把帶有語法高亮的格式拷貝到ppt里有點麻煩,把代碼復制到這個軟件內,然后用Copy as RTF復制,再粘到Word里面,然后再在ppt里面選擇性粘貼為帶格式文本。
當然這種方法不滿足條件3。
PPT里的效果如下:
好吧,其實我想說一開始我看到大段的英文就很頭疼,我簡單看了下,沒有看到在ppt里面需要額外的步驟,直接粘貼了,結果當然很失望,於是繼續找其他的方法。
方法二:
首先使用notepad++打印源代碼的話可以獲得帶有完整語法高亮的代碼,我一般打印成pdf,但是pdf在PPT里面雖然能夠直接插入,但是pdf一般都是一整頁A4,如果代碼比較短的話需要對pdf重新進行裁剪,還是比較麻煩的。
這個方法不滿足條件2,雖然在pdf里面內容是矢量的,但是我發現在PowerPoint里面插入pdf后放大時出現了模糊。
方法三:
繼續想,本質上我想要一個矢量圖,所以我就想到了eps格式,把pdf另存為eps后就直接能夠在PPT里面像插入圖片一樣插入代碼了。編輯是也可以直接像編輯圖片一樣,比較方便,可以隨意裁剪。
這種方法基本能夠滿足上述三個條件了。
效果如下:
最后總結一下,整體的思路分為兩個方向:
a)將代碼自動轉換成帶有格式的文本。方法一是這個路子,另外一個流產的方法是生成html代碼然后插入到PPT里,但是這個我沒有試成功。
b)將代碼轉換成帶有語法高亮的矢量圖。方法二、三都是這個思路,雖然方法二在實際插入到PPT中時失去了矢量圖的特性。而將代碼轉換成帶語法高亮的圖片則是依靠Notepad++強大的打印功能。
個人推薦方法三,因為我不是很喜歡SciTE里的語法高亮,而Notepad++提供了各種語法高亮方案,可以自定義輸出,並且可以輸出行號。
方法四:(強烈推薦的方法)
有一個比SciTE更加強大的軟件,HightLight,官網是:http://www.andre-simon.de/
運行后的軟件界面示例如下:
這款軟件可以把源碼輸出成各種不同格式,例如tex、html等。還可以為代碼添加高亮主題,很棒的功能~~~可個性化定制
就看這個界面就知道非常強大了……支持自動調整格式、添加行號、n多配色方案,字體設置等等……