2010年10月25日 星期一

Gas Tex TXT

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%% GasTeX : Graphs and Automata Simplified in TeX

GasTex Example(For Automata)

http://www.liacs.nl/~hoogeboo/praatjes/gastex/

GasTeX (Graphs and Automata Simplified in TeX, by Paul Gastin) is a package for drawing figures with a LaTeX interface and the help of Postscript. Everyone that needs to draw automata in his LaTeX documents on a regular basis should have a look at this package.
The examples below are mainly to remind me of the possible settings for figures I sometimes need.


\begin{figure}[H]
  \begin{center}
    \unitlength=4pt
    \begin{picture}(15, 28)(0,-10)
      \gasset{Nw=5,Nh=5,Nmr=2.5,curvedepth=3}
      \thinlines
      \node(A0)(7.5,0){$0$}
      \node[Nmarks=i,iangle=90](A1)(0,13){$1$}
      \node[Nmarks=if,iangle=90,fangle=90](A2)(15,13){$2$}
      \drawloop[loopangle=180](A1){$a$}
      \drawloop[loopangle=0](A2){$b$}
      \drawedge(A1,A2){$a$}
      \drawedge(A2,A1){$b$}
      \drawedge(A2,A0){$a$}
      \gasset{curvedepth=-3}
      \drawedge[ELside=r](A1,A0){$b$}
      \drawloop[loopangle=270](A0){$a, b$}
    \end{picture}
  \end{center}
  \caption{La complétion de l'automate.}
\end{figure}
Example of GasTeX output



Code
binary relation

Code
binary tree (post order)

Code
undirected graph (a)

Code
undirected graph (b)

Code
undirected graph (c - linear)

Code
fsa (final 0 or even 1's)

Code
fsa (subword 00 or even 1's)

Code
fsa (ends in a - - , deterministic)

Code
cube (strings Hamilton dist 1)

Code
CMB Euler path

Code
CMB probes (A..G) and clones (1..6)

Code
CMB PQ trees

Code
Hilbert curve (tiles)

2010年10月21日 星期四

[轉錄] Latex Matrix

http://en.wikibooks.org/wiki/LaTeX/Mathematics



Matrices and other arrays in LaTeX

Matrices and other arrays are produced in LaTeX using the \textbf{array} environment. For example, suppose that we wish to typeset the following passage:
[GIF Image]
This passage is produced by the following input:
The \emph{characteristic polynomial} $\chi(\lambda)$ of the
$3 \times 3$~matrix
\[ \left( \begin{array}{ccc}
a & b & c \\
d & e & f \\
g & h & i \end{array} \right)\] 
is given by the formula
\[ \chi(\lambda) = \left| \begin{array}{ccc}
\lambda - a & -b & -c \\
-d & \lambda - e & -f \\
-g & -h & \lambda - i \end{array} \right|.\] 
First of all, note the use of \left and \right to produce the large delimiters around the arrays. As we have already seen, if we use
\left) ... \right)
then the size of the parentheses is chosen to match the subformula that they enclose. Next note the use of the alignment tab character & to separate the entries of the matrix and the use of \\ to separate the rows of the matrix, exactly as in the construction of multiline formulae described above. We begin the array with \begin{array} and end it with \end{array}. The only thing left to explain, therefore, is the mysterious {ccc} which occurs immediately after \begin{array}. Now each of the c's in {ccc} represents a column of the matrix and indicates that the entries of the column should be centred. If the c were replaced by l then the corresponding column would be typeset with all the entries left-justified, and r would produce a column with all entries right-justified. Thus
\[ \begin{array}{lcr}
\mbox{First number} & x & 8 \\
\mbox{Second number} & y & 15 \\
\mbox{Sum} & x + y & 23 \\
\mbox{Difference} & x - y & -7 \\
\mbox{Product} & xy & 120 \end{array}\] 
produces
[GIF Image]

We can use the array environment to produce formulae such as
[GIF Image]
Note that both columns of this array are set flush left. Thus we use {ll} immediately after \begin{array}. The large brace is produced using\left\{. However this requires a corresponding \right delimiter to match it. We therefore use the \emph{null delimiter} \right. discussed earlier. This delimiter is invisible. We can therefore obtain the above formula by typing
\[ |x| = \left\{ \begin{array}{ll}
         x & \mbox{if $x \geq 0$};\\
        -x & \mbox{if $x < 0$}.\end{array} \right. \] 

[轉錄]Latex image inside table

Pictures do not necessarily have to be placed inside the figure environment, but can perfectly be included inside table cells.

The advantage is, you can without any effort arrange a series of images in a matrix and individually scale them.

And here is how you would do it: You first need the graphicx package to include graphics:

\usepackage{graphicx}

Now you can directly start with your table environment and add graphics:

\begin{table}[ht]

\caption{A table arranging images}
\centering
\begin{tabular}{cc}
\includegraphics[scale=1]{graphic1}&\includegraphics[scale=1]{graphic2}\\
\newline
\includegraphics[scale=1]{graphic3}&\includegraphics[scale=1]{graphic4}\\
\end{tabular}
\label{tab:gt}

\end{table}%

Note: In order to have visual borders, you would have \hline instead of \newline and use horizontal bars in the column definition of the tabular environment (“|c|c|” instead of “cc”).

The downside of this technique is obvious, you do not have access to features provided by the figure environment like a label or caption. Nevertheless, it might still come in handy in certain situations.

Note: The figures will not appear in the \listoffigures index, for the reason mentioned above.

2010年10月20日 星期三

[轉錄]Lists: Enumerate, itemize, description and how to change them


Latex distinguishes between three different enumeration/itemization environments. Each of them provide four levels, which means you can have nested lists of up to four levels.
Enumerate:
\begin{enumerate}
\item ...
\end{enumerate}
The enumerate-environment is used to create numbered lists.
If you like to change the appearance of the enumerator, the simplest way to change is to use the enumerate-package, giving you the possibility to optionally choose an enumerator.

\usepackage{enumerate}
...
\begin{enumerate}[I]%for capital roman numbers.
\item
\end{enumerate}
\begin{enumerate}[(a)]%for small alpha-characters within brackets.
\item
\end{enumerate}
Itemize:
\begin{itemize}
\item ...
\end{itemize}
Itemization is probably the mostly used list in Latex. It also provides four levels. The bullets can be changed for each level using the following command:
\renewcommand{\labelitemi}{$\bullet$}
\renewcommand{\labelitemii}{$\cdot$}
\renewcommand{\labelitemiii}{$\diamond$}
\renewcommand{\labelitemiv}{$\ast$}
Amongst the more commonly used ones are $\bullet$ (\bullet), $\cdot$ (\cdot),$\diamond$ (\diamond), $-$ (-), $\ast$ (\ast) and $\circ$ (\circ).
Description:
\begin{description}
\item[] ...
\end{description}
The description list might be the least known. It comes in very handy if you need to explain notations or terms. Its neither numbered nor bulleted.
Example:
\begin{description}
\item[Biology] Study of life.
\item[Physics] Science of matter and its motion.
\item[Psychology] Scientific study of mental processes and behaviour.
\end{description}
And in a PDF it would look like this:
Example of a description list.
Example of a description list.
Note:
The space between different items can be controlled with the \itemsep command (can only be added just after “begin”):
\begin{itemize}\itemsep2pt
\item
\end{itemize}

2010年10月19日 星期二

latex中文目錄


當在編輯目錄時
要讓本來是英文的目錄標題變成中文
只需重新命名就好了
\renewcommand\contentsname{目錄}
\renewcommand\listfigurename{圖目錄}
\renewcommand\listtablename{表目錄}
LaTex 預設生成的目錄會長這樣1 簡介
1.1 研究背景
1.2 研究動機
為了要符合中文樣式
將 "1 簡介" 改成 "第一章 簡介"
可以這樣改寫
%使用 titletoc 這一個 package \usepackage{titletoc}\titlecontents{chapter}
[0em]
{}
{第\CJKnumber{\thecontentslabel}章~~}
{}{\titlerule*{.}\contentspage}
\titlecontents{section}
[4em]
{}
{\contentslabel{2em}}
{}{\titlerule*{.} \contentspage}
\titlecontents{subsection}
[8em]
{}
{\contentslabel{3em}}
{}{\titlerule*{.} \contentspage}
此外一般我們中文的圖、表目錄
都會習慣寫成
圖1.1
表1.1
而 LaTex 預設是沒有那些圖、表的文字,只有顯示數字
因此必須要修改一下
\newcommand{\loflabel}{圖}
\newcommand{\lotlabel}{表}
在圖目錄的地方插入這二行
\renewcommand{\numberline}[1]{\loflabel~#1\hspace*{1em}}
\listoffigures
在表目錄的地方插入這二行
\renewcommand{\numberline}[1]{\lotlabel~#1\hspace*{1em}}
\listoftables

解決index的中文問題


> i run latex on the file.. it runs file; then i run makeindex on the
> file, it runs fine.  then i run latex on the file again, and it
> starts complaining.

makeidx.sty uses \write, (not \immediate\write) for index entries
which means that the output to the index file is delayed until the
whole page is output.  You thus have to do two things.

  . Move \printindex into a CJK environment

  . Insert \newpage after \printindex.

Below is my (slightly changed) version which works just fine.


    Werner


======================================================================


\documentclass[12pt]{article}

\usepackage{CJKutf8}
\usepackage{pinyin}
\usepackage[vietnam]{babel}
\usepackage{makeidx}


\makeindex


\begin{document}

\begin{CJK}{UTF8}{bsmi}

我是美國人\index{美國 mỹ quốc}

我不會說中文\index{cannot speak}

\printindex
\newpage

\end{CJK}

\end{document}

%%% Local Variables:
%%% coding: utf-8
%%% mode: latex
%%% TeX-master: t
%%% End:

2010年10月16日 星期六

2010年10月14日 星期四

[轉錄]Watch “ppt157: Everything in this video is a PowerPoint Template”


We made a little video about these 157 free templates that are available for PowerPoint 2007. There are a lot of them, so they are broken down into 8 download sets. Each set below has a download link, previews, and complete instructions for customizing. If you just want to download the sets, go here.


--Doug Thomas & Eric Schmidt
find more free templates at office.com/templates

[轉錄] Latex邊界設定


Geometry套件入門

前言

LaTeX的排版功能當然很強,很多時候,你也不用設定什麼,用現成的格式,就可以做出不錯的文章。
不過呢,我們多多少少有要自訂邊界啦,文字範圍擴大啦等等的需求。你心裡可能會想,這LaTeX當然不會有問題... 你這麼想,只對了一半!
是的,LaTeX當然可以自訂邊界,可以訂你想定的任何東西。但是,整個LaTeX設定排版的方式非常複雜。最重要的是,很多變數是相互關聯的。
也就是說,你好不容易翻到要改變某個邊界大小的方法。結果一用之下,和你想像的可能是完全不一樣!在改來改去之後,你終於放棄...
事實上呢,有很方便的改法。就是用一個叫 geometry 的套件。這個套件在許多LaTeX都是標準套件,所以你可能不用特別去安裝。

開始

我們使用 geometry 套件,至少有兩種方法。一種是先宣告使用 geometry 套件,再下排版指令;一種是第一次使用就下指令。為了避免困擾,我就只用第二種方式。
我們在LaTeX檔案前面加入這一行:
\usepackage[你要下的參數]{geometry}
這方括孤中「你要下的參數」當然不是打入這些中文,而是下面我們要介紹的幾個常用設定。

常用參數集

這裡我們介紹常用的參數。如果要加入兩個以上的指令,請用逗號分開。
a4paper 指定使用A4紙張
margin=1in 把四邊邊界都設成 1英吋(當然可改數字,後不再說明)
left=1in 把左邊邊界設成 1英吋
right=1in 把右邊邊界設成 1英吋
hmargine=1in 把左右邊界都設成 1英吋
top=1in 把上方邊界設成 1英吋
bottom=1in 把下方邊界設成 1英吋
vmargin=1in 把上下方邊界都設成 1英吋
萬一,我們想要在左右留個裝訂的空間,該如何設呢?很容易,就是加入以下設定
bindingoffset=0.5in
這樣一來,在奇數頁左邊,偶數頁的右邊,會多出0.5英吋的裝訂空間。
geometry 套件還有許多的功能,請自行參考使用說明。

2010年10月13日 星期三

[Wiki] 放置圖片

[轉錄] cwTex 字型

cwTeX[1] Type 1 字型(cwt1)
Version 1.1

Copyright (c) 1999-2004 Tsong-Min Wu, Tsong-Huey Wu.
Copyright (c) 2005-2007 Tsong-Min Wu, Tsong-Huey Wu and Edward G.J. Lee.

這套字型的使用許可證(License)是 GNU GPL 第二版或以後的版本(詳請見
COPYING 檔)。可自由重製、修改、散佈。如果沒有收到這個 COPYING 檔,
可至 http://www.gnu.org/licenses/gpl.txt 取得。或寫信至自由軟體基金會:

Free Software Foundation
51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA

索取。

這些字型允許嵌入 ps/pdf(及其他相類的)檔案中而不因此影響文件或文件
格式本身所使用的授權(許可證)。

這些字型並不明示或暗示有任何的保證,請詳見 COPYING 檔。


摘要:
-----

這五套 Type1 字型是由 cwttf[2] 字型轉換而來。用於 LaTeX CJK 套件。

CJK 字型檔名  中文字體

[Big5/UTF8 環境皆使用相同的字型名,以下為標點符號置中]
cwmc       明體
cwkc       楷書
cwfsc      仿宋體
cwhbc      粗黑體
cwyc       圓體

[以下為標點符號置於底線]
cwmb       明體
cwkb       楷書
cwfsb      仿宋體
cwhbb      粗黑體
cwyb       圓體

命名原則:
---------

cw 代表 cwTeX。
m, k, fs, hb, y 代表明,楷,仿宋,粗黑,圓。
c, b 代表標點符號置中(center),置底線(baseline)。

1.1 變動:
---------

1. 不管 UTF8/Bg5 環境,皆使用相同的字型名。
2. 不再製斜體字,請使用其他相當的中文字型代替。
3. 標點符號由所使用的字型名來區分,字型名最後為 c(center) 代表置
   中,b(baseline) 代表置於底線。字型本體只使用一種,其他不管是
   不同編碼或不同標點符號系統皆使用用虛擬字型,以便節省字型空間。
   兩種標點符號系統可以同時存在於同一文件中。

下載處:
-------

site1: ftp://cle.linux.org.tw/tex/cjk/fonts/cwt1
site2: http://edt1023.sayya.org/fonts/tex/cwt1

安裝:
-----

tar zxvf cwX-1.1.tar.gz
cd cwX-1.1
./install.sh
移除:
./uninstall.sh

TeX Live 2007 的使用者,請修改 texmf.cnf,在 TEXMFDBS 最後加入
!!TEXMFHOME:

-TEXMFDBS = {[省略]!!$TEXMFMAIN,!!$TEXMFLOCAL,!!$TEXMFDIST}
+TEXMFDBS = {[省略]!!$TEXMFMAIN,!!$TEXMFLOCAL,!!$TEXMFDIST,!!$TEXMFHOME}


Have fun!



問題回報:
李果正 Edward G.J. Lee 〈edt1023_AT_cle.linux.org.tw〉
[1] http://ccms.ntu.edu.tw/~ntut019/cwtex/cwtex.html
[2] http://cle.linux.org.tw/fonts/cwttf/

[轉錄] Ubuntu 為 latex 新增中文字型


小頭的UBUNTU筆記本



轉錄至以上部落格:)

以新增 utf8 nsung 字型(nsungu)為例

字型載點
http://cle.linux.org.tw/fonts/FireFly/type1/

cd ~/
wget http://cle.linux.org.tw/fonts/FireFly/type1/nsungu-1.3.0.tar.gz
tar xvzf nsungu-1.3.0.tar.gz

在解開的 nsungu資料夾中, 有幾種檔案
數個小檔 *.afm, *.tfm, *.pfb, *.enc
以及 nsungu.map, nsungu.fd

分別把它們放到對的地方, 設定一下
重整 tex系統即可

====

可以先設定好目錄變數

SYSTEXMF=/usr/share/texmf
1. 移動 *.afm 
cd ~/nsungu
sudo mkdir $SYSTEXMF/fonts/afm/CJK/nsungu
sudo mv *.afm $SYSTEXMF/fonts/afm/CJK/nsungu

2. 移動 *.tfm
sudo mkdir $SYSTEXMF/fonts/tfm/CJK/nsungu
sudo mv *.tfm $SYSTEXMF/fonts/tfm/CJK/nsungu

3.移動 *.pfb
sudo mkdir $SYSTEXMF/fonts/type1/CJK/nsungu
sudo mv *.afm $SYSTEXMF/fonts/type1/CJK/nsungu

4.移動 *.enc
sudo mkdir $SYSTEXMF/fonts/enc/CJK/nsungu
sudo mv *.afm $SYSTEXMF/fonts/enc/CJK/nsungu

5.移動 .map, .fd
sudo mv c70nsungu.fd $SYSTEXMF/tex/latex/CJK/UTF8/
sudo mv nsungu.map $SYSTEXMF/fonts/map/dvips/CJK

6.設定
//編輯並新增
sudo nano $SYSTEXMF/dvips/config/config.nsungu
內容為
p +nsungu.map

sudo nano /etc/texmf/updmap.d/10nsung.cfg
內容為
Map nsungu.map

7. 更新 tex系統
sudo texhash
sudo update-updmap
sudo updmap-sys

[轉錄] Ubuntu 新增cwtex unicode 中文字型 for latex


小頭的UBUNTU筆記本



以上為本文轉載的部落格:)

ref:
http://riemann.math.nccu.edu.tw/forum/viewtopic.php?f=5&t=119

1. 先安裝好 texlive (接成一行), 已裝有texlive則此步省略
sudo apt-get install texlive texlive-doc-en texlive-doc-zh texlive-latex* latex-cjk-chinese* latex-beamer dvipdfmx 

它也會裝好一些中文字型了 ex: bsmi

2 . 安裝 cwtex 的unicode中文字型於 /usr/share/texmf下
cd /usr/share
sudo wget http://riemann.math.nccu.edu.tw/~yenlung/file/texmf.zip.backup
sudo unzip texmf.zip.backup

sudo rm texmf.zip.backup //更改權限
sudo find texmf/fonts -type f -exec chmod 644 {} \;
sudo find texmf/fonts -type d -exec chmod 755 {} \;
sudo find texmf/tex/latex/CJK/UTF8/ -type f -exec chmod 644 {} \;

3. 新增字型列表, 位置是固定的 /etc/texmf/updmap.d/,
不過名稱應該自己定, 只要檔案是以 .cfg 結尾即可。
sudo nano /etc/texmf/updmap.d/10cwtex-fonts.cfg
內容寫入
Map cwmu.map
Map cwku.map
Map cwfsu.map
Map cwhbu.map
Map cwyu.map
存檔離開

4. 更新 tex系統
(有些系統可用 updmap --enable Map cwmu.map 等等, 但 Debian/Ubuntu 不用此法)

sudo texhash
sudo update-updmap
sudo updmap-sys

==========================
這樣就大功告成了, 同時裝好 Ubuntu的 latex環境及latex中文字型
要打出中文內文的tex檔也OK
==========================

=== 測試用 1 .tex
\documentclass[12pt]{article}
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{cwyu}
中文
\end{CJK}
\end{document}
===

pdflatex 1.tex


成功後就會產生一個 1.pdf, 內容是中文

2010年10月5日 星期二

Impressive

好久沒有介紹軟體了XD

不知道大家知不知道在Mac上的keynote軟體?

以下是keynote的影片



基本上這些效果都是PowerPoint沒有或者說很難做到的

//在這沒有鼓勵大家買mac的意思喔XDD

而Impressive就是一款免費而且也能做到不少不錯效果的軟體



而且它同時可以在Windows和Linux的作業系統上跑喔~~~

網站:http://impressive.sourceforge.net/

不過最大的缺點就是說

其實它是播放pdf檔

所以除了必須將ppt轉成pdf外

在ppt上的特效也都會不見

適合比較少用動畫的人來使用

有興趣的下載來用用看吧~~