[分享] 利用 TeX 編考卷 -- 放圖片(三)

看板tutor (家教)作者 (vv)時間18年前 (2007/03/29 00:49), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
原文出處: http://irenepcc.dyndns.org/~mt/archives/dunst/06_tex/001844.php 縮網址: http://tinyurl.com/yp83gf 這是放圖系列的最後一篇,所以希望透過這一篇,能讓我們把圖和題目緊密接合, 也就是說,我希望能出現那種圖就擺在題目的右邊,而題目裡可以一開始就寫"如 右圖..."。 不過要做到這件事,我不想解釋太多指令的用法,而是提供一個範例模板,你只 要去適當的修改裡面的參數,就能達到所要的目的。所以那就開始吧。 那個模板有點複雜,不過不用太害怕,因為要了解的只是怎麼用而已。那個模板 長這個樣子。 \parbox[t][題目的高度]{左側文字欄位的寬度}{ 左側文字題目的內容 }\begin{tabular}{c} \multirow{2}{左側文字欄位的寬度}{\parbox[t][題目的高度]{右側圖片欄位的寬度 }{\includegraphics[scale=1]{圖檔的檔名}}}\end{tabular} 嚇到了嗎?很複雜吧。其實你要了解的東西並不多,接下來我就就一一說明。 1. 題目的高度 簡單的說就是題目在垂直方向要留多高 2. 左側文字欄位的寬度 把題目分成左右兩塊,左邊放文字部份,這就是文字部份的寬度。 3. 右側圖片欄位的寬度 這則是用以描述右邊放圖片部份的寬度。 想像把一個"日"字型的隱型方格放倒,左邊的空間放文字,右邊的空間放圖片。 同樣的我們來看看實際的例子。 \parbox[t][3cm]{10cm}{ 這裡是文字的部份 }\begin{tabular}{c} \multirow{2}{10cm}{\parbox[t][3cm]{5cm}{\includegraphics[scale=1]{test.eps}}} \end{tabular} 這個例子裡,我們為題目前預留了 3 公分的高度,而左邊的文字留了 10 公分, 右邊的圖留了 5 公分。 而在使用時,我們為了要能夠調整下一題不要去蓋到上一題,我會習慣在題目的 最後面加上 \rule{18cm}{2ex} 畫出一個長條,來檢測題目或是圖是否有不小心 越界。當然,最後完稿後,我會把那一行去除。在 TeX 裡,如果你用這種方式放 圖,就表示你自己要去注意圖和文的相關位置。 另外,為了使用這個模板,你要記得引入 multirow 這個 package。還記得指令嗎? \usepackage{multirow} 最後,這次要對 \\ 做一點小補充,讓他的功能再強一點,你可以在 \\ 後面加 上 [高度] 用以告訴 TeX,你不止要換行,而且下一行要在特定高度後再出現, 例如 \\[2cm]、\\[4ex]。 最後,還是以一個 TeX 文稿來當成範例,設得把他存到 test.tex 再利用 "bg5latex test.tex" 與 "dvipdfm test.dvi" 把他變成 pdf 檔。 以下是 TeX 文稿的內容 \documentclass{article} \usepackage{enumerate} \usepackage{graphicx} \usepackage{multirow} \usepackage{CJK} \begin{document} \begin{CJK}{Bg5}{akai} \noindent 接下來就是範例 \\ \parbox[t][3cm]{12cm}{ 如右圖,右圖是陪著我們學習如何放圖的最佳伙伴,如今他要功成身退囉。這個 例子是右邊留 12 公分,右邊留 5 公分放圖。下面的那條長條可以讓我們檢驗有 沒有放過頭。目前預留的高度是 3 公分。 }\begin{tabular}{c}\multirow{2}{12cm}{\parbox[t][3cm]{5cm} {\includegraphics[scale=0.6]{test.eps}}}\end{tabular} \\ \rule{18cm}{2ex} \\[2cm] \parbox[t][1cm]{6cm}{ 很明顯的 1 公分的高度是絕對不夠的,不過這次左邊的寬度我只留 6 公分。這 種狀況下,你就會發現長條是會蓋到圖和文字部份,換句話說,如果沒有長條, 那就表示下一題就會和這一條疊在一起,那麻煩就大了。 }\begin{tabular}{c}\multirow{2}{6cm}{\parbox[t][1cm]{5cm} {\includegraphics[scale=0.6]{test.eps}}}\end{tabular} \\ \rule{18cm}{2ex} \\[2cm] \noindent 而利用 enumerate 的話,可以像下面的用法 \begin{enumerate}[1.] \item \parbox[t][2.5cm]{10cm}{ 已知文字留 10 公分的寬度,圖留 5 公分的寬度,那高度呢? \\ (A) 1.5 公分 \qquad (B) 2.5 公分 \qquad (C) 3.5 公分 \qquad (D) 4.5 公分 }\begin{tabular}{c}\multirow{2}{10cm}{\parbox[t][2.5cm]{5cm} {\includegraphics[scale=0.6]{test.eps}}}\end{tabular} \\ \rule{18cm}{2ex} \item \parbox[t][3cm]{10cm}{ 已知文字留 10 公分的寬度,圖留 5 公分的寬度,那高度呢? \begin{enumerate}[(A)] \item 1 公分 \item 3 公分 \item 5 公分 \item 7 公分 \end{enumerate} }\begin{tabular}{c}\multirow{2}{10cm}{\parbox[t][3cm]{5cm} {\includegraphics[scale=0.6]{test.eps}}}\end{tabular} \\ \rule{18cm}{2ex} \end{enumerate} \end{CJK} \end{document} -- 家教經驗談 http://irenepcc.dyndns.org/~mt/archives/dunst/07_tutor/index.php 要轉錄文章的人請注意三件事 1. 請註明出處, 2. 請保留簽名檔, 3. 請發個 mail 讓我知道 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.73.81.21
文章代碼(AID): #162foKst (tutor)
文章代碼(AID): #162foKst (tutor)