Dec 23, 2014

在win32 xp上嘗試跑python及opengl

想要用python使用opengl

---
成功紀錄
按照這文章指示http://noobtuts.com/python/opengl-introduction
終於成功在win32 xp上用pyopengl + glut完成了文章裡的簡易demo
noobtuts網站真的厲害
我搞了好久
他用非常耐心清楚的方式
讓我一試就成功
不容易不容易

---
不成功紀錄1
嘗試在conda environment安裝openglcontext
系統環境是windows xp 32位元
conda install pyopengl pyopengl_accelerate "pyvrml97==2.3.0a4" simpleparse numpy "openglContext==2.2.0a3" pydispatcher pillow

但是裝不了openglcontext
因為conda.org上面沒有32位元windows版本
也裝不了pydispatcher
不過可以用pip install pydispatcher裝
但不曉得若沒有跟conda install一起裝會不會漏掉一些linker連結

最終是安裝失敗
linker說少了glut32.dll

真麻煩
不知有沒有強者能跟我說怎麼辦

---
不成功紀錄2

想說看能不能用vispy
建了一個環境envs然後安裝vispy
結果好像我沒有裝Qt,一個gui使用者介面的api
且我的opengl driver好像不夠新
要裝Qt還得去裝visual studio來compile下載的Qt檔案才能build Qt
且因我的opengl好像不夠新 一定要2.1以上  我的是2.0
請看http://vispy.org/installation.html
所以想說先等等  試試其他方式好了
---
不成功紀錄3     2015/July/9
嘗試在windows32 xp上安裝pyopenGL到anaconda

用conda安裝一個virtual environment
conda create -n tonytest -c https://conda.anaconda.org/menpo pyopengl pyopengl-accelerate menpo-pyvrml97 simpleparse numpy pydispatcher pillow
包含所有此網頁上所建議的套件除了openglcontext之外
因為anaconda上面找不到win32的openglcontext
所以如果用上面方法加上openglcontext會無法建立environment
然後再用pip install的方式來裝openglcontext
pip install PyDispatcher PyVRML97 OpenGLContext
這樣是可以安裝成功
沒有錯誤訊息

不過在跑nehe第一個example的時候
會出錯
找不到glutInit
還在找原因當中

按照以下的方法把glut32.dll放到opengl/dlls裡
http://cim.mcgill.ca/~fmannan/comp557/Python%20and%20PyOpenGL%20Installation.html
解決了第一步glutinit undefined問題
並且可以跑此sample

但有第二個問題
glCreateShader, glCreateShaderObjectARB undefined
所以nehe的example還是跑不起來
---

Nov 30, 2014

latex minted package "pygmentize not installed" and "undefined control sequence \PYGzus etc" error messages solution

之前minted用的都沒事,後來不知是否因為換了電腦,同樣的tex檔在另一台電腦compile後出現"pygmentize not installed"的錯誤。因為我python pygmentize與minted都有安裝好,查了一下發現可能是檔案path中有空格的緣故,因此minted在測試pygmentize套件階段時無法通過,算是minted的一個小問題。因此我把測試pygmentize的那一個指令comment取消掉,反正我知道我一定有裝。找到minted.sty檔,應該在你的latex安裝資料夾中,並且找到以下的程式碼,將AtEndPreamble裡的測試指令取消執行。這樣就可以順利compile並且順利排版。
\AtEndPreamble{%
% \ifthenelse{\boolean{minted@draft}}{}{%
% \TestAppExists{pygmentize}%
% \ifAppExists\else
% \PackageError{minted}%
% {You must have `pygmentize' installed
% to use this package}%
% {Refer to the installation instructions in the minted
% documentation for more information.}%
% \fi
% }%
}
另外一個問題是我也遇到undefined control sequence \PYGzus 或\PYG加各式符號 etc等等的一堆錯誤指令。查了一下發現要移除minted所產生的暫存資料夾
"_minted-yourlatexfilename",移除之後就可以順利compile了。

pretty code generation

\documentclass{article}
\usepackage[inner=1in,outer=1in,top=1in,bottom=1in]{geometry}
\usepackage{minted}
\usepackage{mdframed}
\definecolor{bg}{rgb}{0.95,0.95,0.95}
\begin{document}

\begin{mdframed}[leftline=false, rightline=false,backgroundcolor=bg]
\inputminted[linenos,fontsize=\footnotesize,gobble=0,breaklines,breakanywhere]{python}{thermal_ions.py}

\end{mdframed}
\end{document}



延伸閱讀:
http://whymranderson.blogspot.tw/2014/03/4th-runge-kutta.html

Oct 30, 2014

陀螺儀教學文件的文書排版製作

關於陀螺教學文件的製作:

此文件的排版及其內容及圖片的製作幾乎都是用免費的開源軟體所完成。唯一使用的付費軟體為Scientific Workplace,我因其TEX的快速指令鍵而受惠,因此使用它來編輯tex文件。由於有些軟體公司在學校便宜的大量提供校園版權而進而讓學生產生對付費軟體的過度依賴,這似乎會導致在畢業以後學生會因為此依賴而對原本不需要的東西不自知產生需要,造成畢業學生不自知的付出過多的隱藏成本,因此這邊也做了一個示範。這邊用到的免費開源軟體皆為許多人多年的心血結晶,因此我也特別在此一一列出所用到的軟體。

1. 由於需要排出中英混雜,並且帶有許多數學公式的文件,而Scientific Workplace無法達到我的排版要求,這裡用上排版規則最為完整的排版引擎Latex,完整的說是TexLive 2013中的XeLatex排版引擎。其中也非常感謝套件xeCJK,其中文排版能力非常專業。
2. 所有向量圖片皆由開源軟體Python Matplotlib與其pgf套件,PSTricks與其套件pst-node所製作,這些軟件製作向量圖形都非常成熟。
3. 模擬程式是由開源軟體Python及其3D繪圖程式套件mplot3D所製作完成。Python軟體的強大已不用我在此贅述。
4. latex的minted套件,非常方便的就可以給出漂亮專業的程式碼區塊。
5. Sphinx,自動擷取程式說明行並自動排版成漂亮的說明書。我用它來作陀螺儀程式的說明書文件。這樣我就不用每次改了程式就要去改說明書,now sphinx will take care of that for me!

如果沒有這些軟體作者無私的貢獻,沒有這些強大的免費套件軟體,我根本無法完成此文件的排版,說不定還是幾張亂糟糟的計算紙。並且,我認為正確美觀的排版在知識的傳承與創意的迸發上有其重要的角色,這也是為什麼我願意花了近半年的時間來學習這些軟體並且應用它們。

這邊提到的開源軟體雖然強大,不過免費的畢竟會有其不方便的地方,我接下來就列舉我所遇到需要克服的困難,以及如何解決他們。
1. 使用Scientific Workplace 5.0編輯中文文件,但使用Xelatex來做排版。由於Scientific Workplace產生的中文文件使用其特殊的unicode編碼,因此要讓Xelatex讀到正確的中文字,要做個簡單的編碼轉換,我在我的blog中這篇文章有詳述如何轉換。我是寫了一個Python小程序來達成這個動作。這裡我學習到了電腦文字unicode與程式語言中的regular expression。
  • (2016/六月: 由於此份文件已經開始越來越大,目前已近70頁,若每次更改後要看結果都要全部編譯後才看的到那會很麻煩會等很久,因此我必須將整個latex擋拆開成一個章節一個tex檔,並且每個章節都可以獨立編譯,獨立看到章節的pdf輸出結果,這樣就可以一個章節修改後很快看到結果。然後最後在全部編譯。目前我是用python程式語言配合windows batch執行檔來達成此目標,即在batch檔案可以選擇只編譯章節或編譯整份文件,然後用python去調整preamble,最後batch在執行xelatex。
    不過後來我學到latex本身有一些套件可以達到此目的,目前考慮用import package,這樣才可以獨立章節編譯。還有想用另一個套件使得subdocument中可以用相對於subdoc所處在的subfolder路徑。)
2. 由於不想買以前學校裡學習時常用的向量繪圖軟體Adobe Illustrator,Acdsee Canvas等昂貴的向量繪圖軟體,我花了一些時間去衡量如何經濟地劃出精美精準的向量繪圖圖形。不過最後還是決定使用程式語言土法煉鋼來完成此需求,其實不會太花時間。因為付費的的繪圖軟體其實很多功能都不需要用到,常用的就那幾個,自己寫比較快。因此我使用Python與其強大的繪圖庫Matplotlib,Matplotlib製作的圖形的精美程度已經是國際期刊等級,有此可見其作者群之用心與藝術程度。我在這一篇blog中有些說明。不過,不方便的是,Python Matplotlib的EPS轉換還不完整,而點陣圖形在latex處理後產生的PDF檔又會有圖案模糊錯位的問題。因此,我找到Matplotlib中有前輩撰寫的PGF套件,可以完美的跟latex做結合,來產生精美的PDF圖形檔案。只能說非常感謝PGF套件的提供者,真的是非常好用阿!
3. minted套件有一個問題,就是他不會自動分割程式區塊,所以跨頁的程式區塊就要稍微用點技巧,參考這邊的解說,使用mdframed套件,並且在minted中不要使用背景顏色,讓mdframed來負責背景顏色的處理,然後將listing環境捨棄,這樣就可以跨頁了。
4. Sphinx中的autodoc套件,似乎還沒有辦法自動取得物件的屬性(autoattribute我無法用成功),我得用autoclass加:member:指令來達到相同的目的。
5. 若有太多大的pgf圖片,約400KB each,似乎會造成Tex compile時超過其記憶體上限500000,不之是否跟我有用shaded有關,我後來沒有去細究,就直接用python將資料存成資料檔,然後用PStricks的3D套件去存取資料檔並劃出來3D圖形。
以下為2016/三月更新
6. GIT版本管理(請見我的另一篇部落格文章)
7. Django,我用python的套件在pythonanywhere.com建立了一個初步網站,想要能夠慢慢脫離google blogger的ubiquity。初步紀錄

我使用的PSTricks的參考書 (非常推薦!): The LaTeX Graphics Companion (2nd Edition) Paperback – August 12, 2007 by Michel Goossens (Author), Frank Mittelbach

相關部落格文章:
http://whymranderson.blogspot.tw/2014/11/latex-minted-package-pygmentize-not.html


Memo for myself:
http://www.chinabaike.com/t/30826/2014/0517/2213116.html

Sep 28, 2014

Diy 筆記簡易裝訂成書

要裝訂成書一定要跑影印店嗎?我拿一本工研院的成果彙編拆開當封面,用handpress小型金屬加工工具車洗在筆記頁邊打小洞,並且用銅線穿過打的洞並且綁緊,這樣就可以把筆記做成冊,然後拿個厚紙板將頁邊包起來。不漂亮,但是很實用,右邊翻頁邊我有注意有貼齊,因此很好翻。線也綁得很緊因此翻開完全不會鬆動。零成本的裝訂。





2016八月。哥不是開玩笑的,現在自己的筆記我都自己裝訂拉,哈哈哈。後來發現也不用鐵絲,只要用粗一點的線綁就可以了!

Jul 21, 2014

Use python matplotlib to create 3D vector-based graphics, 3D vector graphics DIY

I drew the following graphs using Python and it's Matplotlib. If you are interested in the python code, they are here (not including the first gyroscope figure, will be added later). I am trying to improve the code into many functions/modules so that drawing can be convenient and automated. The part related to plotting starts from line 128, because this is just a portion of another bigger project. Just want to show this is not as time-consuming as one may think it is. We can create or draw beautiful vector-based graphs without buying expensive software like Adobe Illustrator or Acdsee Canvas. However as you can guess with this method you will need the numerical x,y,z locations of everything! (which is generated from yet another portion of the program!)

Jun 25, 2014

Python code for 3D rotation simulation (core algorithm: iteration of direction cosine matrix)

(ongoing revision persists...)

Iteration of DCM with angular velocity in body frame. (This is the module. Import it in Python to use the iteration method.)
An example. (A test code.)

The background theory is in this post (in Chinese language though, I want to translate it into English but it takes time. Hope someone is interested in translating it!). And it has a python simulation of a rotating symmetric top in 3D motion.

The approximation of rotation by iteration of DCM is discussed in this textbook[1]. The approximation of rotation ωdt is also discussed. Here I use ω(t+dt)dt to approximate the rotation from t to t+dt. This is discussed in the same post.

[1]  D.H. Titterton and J.L. Weston, Strapdown inertial navigation technology, Peter Peregrinus
Ltd., London UK, 1997




May 22, 2014

模範生制度與無為而治

" 不尚賢,使民不爭;不貴難得之貨,使民不爲盜;不見可欲,使民心不亂。
  是以聖人之治,虛其心,實其腹,弱其志,強其骨。
  常使民無知無欲,使夫智者不敢爲也。
  爲無爲,則無不治。"

- 老子道德經 -

新聞http://buzzorange.com/2015/10/16/why-do-we-need-model-student/

May 1, 2014

direction of friction force of rolling objects 有外力作用的的純滾動摩擦的作用力方向討論

這是一題常見於研究所考試試題的延伸討論。

試題舉例:國立成功大學96學年度碩士班招生考試試題,編號224,系所:醫學工程研究所甲組,科目:工程力學

這邊詳細的討論幾種較難的延伸型態,並審視磨擦力作用於滾動物體的方向,因摩擦力的方向很容易弄錯。有趣的是這些型態在日常生活中都很常見。

A sectional material I wrote up for university physics. These are more advanced problems for 1st and 2nd year engineering in university.

重新將我的手稿排版(latex): 排版完成2016/6/18



我的部落格內的相關文章:
http://whymranderson.blogspot.tw/2013/06/3-dimentional-rolling-coin-simulation.html
http://whymranderson.blogspot.tw/2013/02/two-coins-roll-without-slipping-puzzle.html


舊手稿


Apr 28, 2014

說話的時候 是把柔軟的內心拿出來交流的時候 要 慢慢來

我覺得,說話的時候,都是捧著我們的內心在手上而跟別人交流的時候,內心是多麼脆弱是非常容易碰觸到而受傷的,尤其是當兩個手上拿著心臟的人遇到的時候。因為既要小心關注手上拿著的非常脆弱的心,而又需要分點心思來跟其他的人交流,一個不注意,別人把手上的內心撞著了,輕輕地碰一下,那就算了,惡意的撞可是真會有傷的。一般人可能不知道,說話這件事情是需要很專心花心思去處理的動作。得要正確地練習。

受到言語攻擊,相當於內心受到攻擊,想要反擊是很正常的反應,不過,更高的層次,是聰明的人可以四兩撥千金,在受到攻擊前就會適時地反應,既達到自己受到心靈傷害,又可以小小的回個不傷人的警示招式,有時還可以起到幽默而破冰而雙贏的作用。這點是我們台灣人比較不會得地方,或許是因為我們這幾代的價值觀缺乏這部分的認知與省思。

多練習方法對的溝通交流,才是正確的方式。只要記得,捧在手上的內心,其實是有一定程度的防禦能力,對一定程度的攻擊是不會有影響反而可以起到段練心智的作用,多多練習這種機會,並且以來三回一的大氣肚方式,會讓你的內心逐漸茁壯且肚量越來越大,肚量大就更不容易受傷。防守,大部分的時候絕對是一個好的攻擊。而且攻擊容易防守難,當然是要先練防守先。

舉例來說,莫須有的罪名安插,是很常見的言語攻擊,如果心智沒有練習過的人,一開始就只能以相同方式 - 更莫須有的罪名 來反擊,這種反應是正常的,沒甚麼不對,不過久了你會發現,這樣的方式起不到保護自己內心的作用,還是會有傷痕,會難過,而且,會影響到過日子。我目前練習到的程度是,想想對方可能是個不值得你注意的傢伙,那就微笑帶過,這樣內心不會受傷,而且你會發現,突然就有時間可以慢慢地靜靜地思考一個幽默的情境回話,想不到那也就算了,這樣你的內心雖然受到攻擊但是是處於開心的狀態,那就有起到練習的作用,你的內心復原會很快,可能一天之內就平復了。而攻擊你的人,復原的速度會非常慢,生活會一團糟,它會影響到自己的生活,工作,處處碰壁。溝通不需要運氣,認真就輸了一半,賭氣就輸了全部,內心會受傷。

不過,隨意但要注意,惡意的語言攻勢,隨處可見,馬路如虎口,說話如戰場,要多練習方法正確的說話。記得,說話,是要花時間花心思去處理的,不能隨便回回的,多練習思考自己不會受傷的防禦情境。

Mar 17, 2014

3/2-17感冒紀錄

剛開始左邊喉嚨癢。

第一二天後左邊喉嚨很痛很腫,吞口水會痛,晚上睡不好,但是沒咳。第三天連摸脖子都有點痛的感覺。

第三天去看醫生吃藥後,喉嚨腫痛症狀是好很多,但開始咳嗽,咳到睡不著,而且晚上忽冷忽熱滿身大汗可以發生十次,要起床十次換衣服。

連續五六天吃藥,但是都是同樣症狀,晚上都是咳嗽幾乎沒甚麼睡,早上都稍微有點燒得感覺,但是量體溫又在36度左右,沒有真正燒。第六天後開始流膿黃鼻水,咳嗽也沒有好,痰非常的黃。另外身體非常虛弱,全身肌肉痠痛,有時連走動都沒甚麼力氣的感覺。另外都是早上症狀會比較輕微,甚至有時候完全不會咳,幾乎像好了一樣,因此有一天因為這假象以為自己好了還跑去踢足球。但是到了晚上五六點症狀就會開始加劇,主要是咳嗽,晚上睡覺更嚴重。這幾天頭殼都好像有點燒壞的感覺,很難做事情思考事情。
(第二次用藥: Clarithromycin250 , Meptin25, Voren25, Medcon-A, Strocain, Tetosiv sustained)
(第三次用藥: Cravit500MG, Allegra, Panamax, Mucosolven, Gaster20MG, Anticough Capsules)

第八天停止吃藥,因為發現沒有比較好,而且吃藥反而讓身體感受不到身體的狀況。另外發現好像躺在舊床上就開始咳,懷疑是因為汗水浸濕那個四十年的老舊床鋪而有發霉的現象,因為屢試不爽,為此馬上換了一張床墊。當晚咳嗽就好很多。但還是冒汗兩三次。頭還是有點不舒服。

第九天,咳嗽開始好一點,但鼻水還是狂流,痰還是很多。

第十天,晚上冒汗狀況慢慢改善,但改善的非常慢。喉嚨腫痛有一天開始移向右邊。不過還好右邊喉嚨後來沒咳破。

第十一天,都好很多,但還是咳,鼻水還是超級多且濃黃。身體肌肉整個萎縮。

第十五天,慢慢休養五天,終於症狀都好多,有點力氣。還是小咳。

第十七天,可以上圖書館,跑步,小小咳。

Mar 15, 2014

剛體轉動的數值模擬

這邊介紹一個簡單的剛體轉動的數值模擬方法,這如果當教科書例題的話好像還不錯。我們以陀螺為例子,對陀螺的尤拉方程(Euler equation)的貼體角速度(body angular velocity)直接進行方向餘弦遞推數值積分。只要給定初始條件,即可追蹤模擬陀螺的完整運動。以此方法寫出的程式非常簡單,這邊以Python程式編寫。最後模擬了陀螺的四種經典運動:尖點,有環,無環,等周速運動。完整的物理理論證明也在我另一篇提供,因此這邊只寫下方法。

剛體轉動(Rigid body rotation)的尤拉方程如下,
重新整理成以下形式就可用簡單的四階Runge Kutta數值方法解出ωb(t),

一般認為解出貼體角速度ωb(t)並無太大用處,因此一般書上在這裡會轉而求諸尤拉角(euler angle)並且用Lagrangian mechanics求出完整的解析解,不過完整的陀螺解析解包含橢圓積分(elliptic intergral)因此數值計算上相對我們這邊介紹得更為複雜。事實上若給定貼體角速度在空間座標上的初始值,我們可以以數值積分方法的初始值問題一步步求出剛體的貼體座標在空間座標中的運動,雖然我們沒有得到完整的解析解,我們還是可以完整模擬陀螺的三維運動。(此方法屬於方向餘弦矩陣遞推法,其物理證明在另一篇完整的證明中提供。)

我們考慮陀螺的body對稱單位軸z軸,假設z軸在空間中的初始位置為z(t0),我們以此為出發點,計算z(t0)沿著ωb(t1)向量旋轉|ωb(t1)|*dt角度後,轉動後新的z軸為z(t1),接著再沿著ωb(t2)向量旋轉|ωb(t2)|*dt角度後轉到z(t2),以此可以算出z(t1~N)。(這邊當然需要考慮微小轉動向量的特性infinitesimal rotation)

以下是python模擬出的四種經典運動的locus圖(body z軸跟單位圓的交叉點的軌跡圖),參數也有寫在圖中。
尖點運動
有環運動
無環運動
等周速運動
以及有環運動的3D動畫(也是python寫的)




the python code

此篇文章有新版,請見whymranderson.blogspot.tw/2014/03/4th-runge-kutta.html

Mar 12, 2014

some great matches in CSGO, cool CSGO avitar names, and try to come up with some of my own, casters i like

Converted document
Some of the greatest matches in professional CSGO (chronologically, in reverse)
Some of the avatar names and casters I like:
Existing_names pusha, olofmeister, byali, apex, faflaren, karrigan, jkaem, hani, simple, cyjanb, nothing , shox, kioshima,
Cranking_my_head mehidae (somehow rhythm with meditate) toothless (from the movie "how to train your dragon") silen (silence) andoni (antoine) pfeifer (vacuum pump company - pfeiffer) timee continuing...
Casters ddk black ddk henryG warowl a few that I still need to find their names......

Mar 9, 2014

Typeset mix Chinese and English TeX documents with Scientific Workplace 5.0 and TEX live 2013

  You can typeset Chinese documents with Scientific Workplace (5.0) if you have just a few Chinese paragraphs. But if you have a long Chinese document or a document with mix Chinese and English characters, the software will suffer. The SWP's compiler for international characters, Omega, is just not good enough for this purpose. You will run into a lot of overfull hbox problems during typesetting. We will need another latex compiler for long documents of mix Chinese and English. But we will want to use the convenient editing features of Scientific Workplace, what should we do?

Here is something you can try. Still prepare your international document with SWP. But typeset it with another latex compiler. Here I use a popular one, XeLATEX in TEX live 2013. But there are a few problems. First, the file prepared by SWP has a character encoding that is not recognized by other latex compiler. So I wrote a small Python program to convert the encoding. Second, the figure insertion syntax generated by SWP is not recognized  by XeLatex. But this can be done by inserting TEX fields containing the correct Xelatex figure insertion commands into the SWP file by using SWP's TEX OBJECTS buttons. You won't be able to preview the figures SWP window but that doesn't really hurt. Here are step-by-step details:

  • How to convert SWP 5.0 special unicode format file to unicode correct characters:
SWP version 5.0 produced Chinese character in its special unicode codepoint format (if you open the tex file with any text editor, you will see every Chinese character has a form like \U{6211} instead of displaying 我 in the tex file.) This is due to the extra parenthesis {} after \U. So I wrote a small python program to automatically remove all {} in the tex file. So that the file can then be prepared by other tex programs (Tex Life 2013 in my case).

The program is very simple:
import re
import codecs
def dashrepl(matchobj):
    return chr(int(matchobj.group(1),16))
f1 = open('rotationV4pngtest.tex', 'r')   # name of your origianl file
f2 = codecs.open('rotationV4pngtest.tex.temp', "w", "utf-8")   #  name of the new file
p= re.compile(r"\\U{([\w]{,4})}")
for line in f1:
    m = re.sub(p,dashrepl,line)
##    print(m)
    f2.write(m)
f1.close()
f2.close()


  • For the SWP tex file to be readable by other compiler, you will also need to change the preamble (the packages and stuff)  in the beginning of the tex document so that other tex program can use it. Here is my case:
Original preamble generated by SWP:
\documentclass[12pt,a4paper]{article}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{sw2unicode}
\usepackage[UT1]{fontenc}
\usepackage{pmingliu}
\usepackage[left=0.95in,right=0.95in,top=2cm,bottom=2.54cm]{geometry}
Change the above to the following so that Xelatex can complie:
\documentclass[12pt,a4paper]{article}
\usepackage{amsmath}
\usepackage{fontspec}
\usepackage{xeCJK}
\setmainfont[Mapping=tex-text]{Times New Roman} % rm
\setsansfont[Mapping=tex-text]{Arial}           % sf
\setmonofont{Courier New}                       % tt
\setCJKmainfont{微軟正黑體}
\usepackage[left=0.95in,right=0.95in,top=2cm,bottom=2.54cm]{geometry}
\usepackage{unicode-math}
\usepackage{graphicx}
\usepackage[hidelinks]{hyperref}


  • The file generated by SWP has symbols that use SWP's "tcilatex" macro, so you need to copy tcilatex.tex file into the same directory as your tex file. The location of tcilatex.tex in SWP's path has the following structure "D:\swp50\TCITeX\TeX\LaTeX\SWmacros\". Locate this file and copy it into your working directory. Then make sure your tex file has the \input{tcilatex.tex} line. You should have this line because you prepared your file with SWP.

  • Change the TEX figure insertion command:

The figure insertion command for Xelatex should look like this:
\begin{figure}[th]
\caption{{}}
\label{firstfig}
\begin{center}
\fbox{\includegraphics[scale=0.7]{cordtrans.JPG}}
\end{center}
\end{figure}

So open the SWP tex file with Notepad and replace all things look like the following with the above

\FRAME{fhF}{5.5097in}{3.7135in}{0pt}{}{}{cordtrans.JPG}{\special{language
"Scientific Word";type "GRAPHIC";maintain-aspect-ratio TRUE;display
"USEDEF";valid_file "F";width 5.5097in;height 3.7135in;depth
0pt;original-width 9.135in;original-height 6.1436in;cropleft "0";croptop
"1";cropright "1";cropbottom "0";filename
'
cordtrans.JPG';file-properties "XNPEU";}}

There could be other commands you need to change before you can run your tex document with TEX life Xelatex. Here I only show three points, which is enough for me to typeset this document. Good luck!

鋼琴伴奏譜+彈唱 [轉錄 from 鸠玖的音乐世界 土豆網]

一個值得推薦的心血結晶 編曲最接近原版的鋼琴伴奏譜+他自己的超棒的彈唱
真是我的偶像阿~~
http://www.tudou.com/plcover/-ysO_c-u4NY/

Mar 1, 2014

使用Scientific Workplace 5.0 + XeLatex軟體做中英文混雜並夾帶數學公式的長篇圖文文章電腦排版

  這邊介紹如何利用Scientific Workplace 5.0的編輯方便性,加上XeLatex (TeX life 2013)對中英文混雜的完美支援,來對中英文混雜並夾帶數學公式的長篇圖文文章做自動排版。

Feb 5, 2014

新酷音輸入法 2013 安裝問題


我嘗試安裝新酷音輸入法2013在我的電腦上,我的系統是x86 windows XP + SP3,這邊寫上我遇到的問題。不知道為什麼下載網站的問題回報連結似乎沒有作用,好像也沒有人在網站上回饋。2014/2/6

我的「啟用進階文字服務」原本就是開啟的,在我安裝新酷音輸入法後我的'進階文字服務列'就消失了,也就是右下角按ctrl+space (或者其他按鍵)會切換輸入語言的小視窗就不見了,這也代表我無法輸入中文,這真的是悲劇阿,我弄了好久花了好多時間才把它救回來。新酷音的網站只說一定要開啟「啟用進階文字服務」,不然會有問題,不過我本來就有開啟,所以我也不知道為什麼,我好像有看到另一個人有同樣問題在網站上留言,不過問題似乎沒有被回答。

這邊寫上我胡搞瞎搞救回那個輸入語言的小視窗的方法,可是我不能保證有效,老實說我也不確定我救回那個小視窗的完整步驟。而且重要的是這裡只提供給大家參考,會有什麼後果不負責任的喔,只是討論一下,看看是否可以討論出個解決方法,要不然我想應該還是會有人會遇到同樣的問題。

在C:\WINDOWS\system32裡面有個檔叫做ctfmon.exe,我查了一下網路發現可能是安裝程式將這個檔案重新命名或者檔案遭到修改而無法正常運作,以下是我修正的方法,下面的步驟我各種順序都嘗試過,哈,這也是我不確定哪一步是正確的原因,也因此以下的步驟我各種順序都嘗試過不下十幾次,如果你想要試試看自己修,也請要有心理準備,多試幾次

  • 開啟->執行-> sfc /scannow 讓windows執行檔案修復,然後看看ctfmon有沒有出現在system32檔案夾中。(這一步我只跑一次,需要不少時間。)
  • 如果沒有,或者檔案其實存在但是不正常運作,去另一台xp電腦(輸入法是正常的電腦)拷貝一份ctfmon.exe放到你的system32檔案夾中。我就是這樣做。
  • 控制台->區域與語言選項->語言->文字服務與輸入語言->細節->移除所有的中文輸入法直到只剩下英文輸入法。
  • 重新啟動電腦,如果還是不正常,再去控制台->區域與語言選項->語言->文字服務與輸入語言->細節->進階->確認[關閉進階文字服務]沒有被勾選。再到system32資料夾中執行ctfmon.exe(滑鼠左鍵雙擊)。或者到工作管理員看看ctfmon.exe有沒有在背景中執行。(這一步我重複做多次)
  • 控制台->區域與語言選項->語言->文字服務與輸入語言,安裝windows本身內建的舊版微軟新注音輸入法,安裝後,我的語言輸入視窗就神奇的出現了。(也是只做一次)

再強調一次,以上順序我不知道怎麼樣走才是正確的,如果你真的想試,還請試著打亂上面的順序然後多試幾次。另外,千萬別動到其他system32裡的檔案阿。補充一下,我是google "advanced text service missing corrupted ctfmon.exe"之類的關鍵字才找到一些資訊的。另外,成功了的話別忘了跟大家分享你的正確方法喔。另外,救回輸入語言的小視窗後,我就不敢再安裝新酷音輸入法了,目前還在找好的輸入法中。