跳轉到內容

LaTeX/長度

來自華夏公益教科書,開放的書籍,面向開放的世界

LaTeX

入門
  1. 介紹
  2. 安裝
  3. 安裝額外包
  4. 基礎
  5. 如何獲取幫助

常見元素

  1. 文件結構
  2. 文字格式化
  3. 段落格式化
  4. 顏色
  5. 字型
  6. 列表結構
  7. 特殊字元
  8. 國際化
  9. 旋轉
  10. 表格
  11. 標題建立
  12. 頁面佈局
  13. 自定義頁面頁首和頁尾‎
  14. 匯入圖形
  15. 浮動體,圖形和標題
  16. 腳註和邊注
  17. 超連結
  18. 標籤和交叉引用
  19. 首字母

機制

  1. 錯誤和警告
  2. 長度
  3. 計數器
  4. 框體
  5. 規則和撐杆

技術文字

  1. 數學
  2. 高階數學
  3. 定理
  4. 化學圖形
  5. 演算法
  6. 原始碼列表
  7. 語言學

特殊頁面

  1. 索引
  2. 詞彙表
  3. 參考文獻管理
  4. 更多參考文獻

特殊文件

  1. 科學報告(學士報告,碩士論文,博士論文)
  2. 信函
  3. 簡報
  4. 教師專區
  5. 簡歷
  6. 學術期刊(MLA,APA 等)

建立圖形

  1. 介紹過程圖形
  2. MetaPost
  3. 圖片
  4. PGF/TikZ
  5. PSTricks
  6. Xy-pic
  7. 建立 3D 圖形

程式設計

  1. 純 TeX
  2. 建立包
  3. 建立包文件
  4. 主題

雜項

  1. 模組化文件
  2. 協作編寫 LaTeX 文件
  3. 匯出到其他格式

幫助和建議

  1. 常見問題解答
  2. 技巧和竅門

附錄

  1. 作者
  2. 連結
  3. 包參考
  4. LaTeX 文件示例
  5. 索引
  6. 命令詞彙表

編輯此框編輯 TOC

在 TeX 中,長度是

  • 一個浮點數,後面跟著一個單位,可選地跟著一個伸縮值;
3.5pt plus 1pt minus 2pt
  • 一個浮點因子,後面跟著一個宏,它擴充套件到一個長度。
1.7\textwidth

首先,我們介紹 LaTeX 測量單位。所有 LaTeX 單位都是兩位字母縮寫。您可以從各種單位中進行選擇。以下是最常見的單位。[1]

縮寫 定義 點 (pt) 值 微米 (µm) 值
pt 一個點是 1/72.27 英寸,這意味著大約 0.0138 英寸。 1 351.46
mm 一毫米 2.84 = 7227/2540 1000
cm 一釐米 28.4 = 7227/254 10000
in 英寸 72.27 25400
ex 大約是 'x' 的高度,在當前字型中 未定義,取決於使用的字型
em 大約是 'M'(大寫)的寬度,在當前字型中 未定義,取決於使用的字型

點是預設單位,1pt 是預設長度。所有其他單位都透過固定比率轉換為點。

以下是一些不太常見的單位。[2]

縮寫 定義 點 (pt) 值 微米 (µm) 值
bp 一個大點是 1/72 英寸,這意味著大約 0.0139 英寸。 1.00375 = 803/800 352 7/9
pc 12 4218
dd 迪多 1.070 = 1238/1157 376
cc 西塞羅 (12 迪多) 12.84 = 14856/1157 4512
nd 新迪多 1.067 = 685/642 375
nc 新西塞羅 (12 新迪多) 12.80 = 1370/107 4500
sp 縮放點 0.000015 = 1/65536 0.00536

框體長度

[編輯 | 編輯原始碼]

TeX 中的框體由三個長度表徵

  • 深度
  • 高度
  • 寬度

參見 框體.

長度操作

[編輯 | 編輯原始碼]

您可以使用兩個命令更改定義頁面佈局的變數的值。使用此命令,您可以為現有長度變數設定新值

\setlength{\mylength}{length}

使用另一個命令,您可以向現有值新增一個值

\addtolength{\mylength}{length}

您可以使用命令建立自己的長度,並且必須在嘗試設定長度之前建立新的長度

\newlength{\mylength}

您還可以使用以下命令之一從文字大小設定長度

\settowidth{\mylength}{some text}
\settoheight{\mylength}{some text}
\settodepth{\mylength}{some text}

calc包還提供了函式 \settototalheight{\mylength}{some text}

使用這些命令時,如果您打算也顯示參考文字,您可以複製要用作參考的文字。但是 LaTeX 還提供 \savebox 來避免此重複。您可能想看看下面的示例,瞭解如何使用它們。有關更多詳細資訊,請參閱 框體

您還可以定義拉伸值。拉伸值是在前面加了 plusminus 的長度,用於指定tex被授權更改長度。例如

\setlength{\parskip}{10pt plus 5pt minus 3pt}

這意味著tex將嘗試使用 10pt 的長度;如果不足,它會將長度增加到最大 15pt;如果超載,它會將長度降低到最小 7pt。

請注意,指定 plusminus 值不是強制性的,但如果您要指定,則 plus 必須放在 minus 之前。

要列印長度,您可以使用 \the 命令

\the\textwidth

要建立新長度

\newdimen\mylength

要設定長度

\mylength=1.5in

要檢視,與 LaTeX 相同,使用命令 \the

LaTeX 預設長度

[編輯 | 編輯原始碼]

常見的長度宏是

\baselineskip
段落中行之間的正常垂直距離。
\baselinestretch
一個乘以 \baselineskip 的因子。必須使用 \renewcommand{\baselinestretch}{factor} 設定
\columnsep
列之間的距離。
\columnwidth
列的寬度。
\evensidemargin
“偶數”頁的頁邊距(想想一本印刷的小冊子)。
\linewidth
區域性環境中行的寬度。
\oddsidemargin
“奇數”頁的頁邊距(想想一本印刷的小冊子)。
\paperwidth
頁面的寬度。
\paperheight
頁面的高度。
\parindent
正常的段落縮排。
\parskip
段落之間的額外垂直空間。
\tabcolsep
表格環境中列之間的預設間距。
\textheight
頁面上文字的高度。
\textwidth
頁面上文字的寬度。
\topmargin
頂部頁邊距的大小。
\unitlength
picture 環境中的長度單位。

固定長度空格

[編輯 | 編輯原始碼]

要插入固定長度空格,請使用

\hspace{length}
\vspace{length}

\hspace 代表水平空格,\vspace 代表垂直空格。

如果這樣的空格即使落在行尾或行首也要保留,請使用 \hspace* 代替。

如果空格應該在頁面頂部或底部保留,請使用命令的星號版本,\vspace*,而不是 \vspace。如果您想在文件開頭新增空格,在其他內容之前沒有任何內容,那麼您可以使用

{ \vspace*{length} }

使用 \vspace* 命令代替 \vspace 命令很重要,否則 LaTeX 可能會靜默忽略額外的空格。

TeX 提供了一些用於固定長度間距的宏。

\smallskip
在垂直模式下插入一個小空格(兩個段落之間)。
\medskip
在垂直模式下插入一箇中等空格(兩個段落之間)。
\bigskip
在垂直模式下插入一個大空格(兩個段落之間)。

垂直模式是在垂直組裝盒子(例如,將段落組裝成頁面)的過程中進行的。水平模式是在水平組裝盒子(例如,將字母組裝成單詞,將單片語裝成段落)的過程中進行的。

它們是垂直模式命令的事實意味著它們將在水平模式下被忽略(或失敗),例如在一個段落的中間。如果第一個與雙行分隔符相鄰的標記沒有擴充套件到字元,則它仍然處於垂直模式。

% WRONG!
Some words.
\bigskip
Let's continue.

%% CORRECT!
Some words.

\bigskip
Let's continue.

橡膠/拉伸長度

[edit | edit source]

命令

\stretch{factor}

生成一個特殊的橡膠空間,其中 factor 是一個數字,可能是浮點數。它會一直拉伸,直到填滿一行中剩餘的所有空間。如果在同一行上發出兩個 \hspace{\stretch{factor}} 命令,它們將根據拉伸因子增長。

x \hspace{ \stretch{1} } x \hspace{ \stretch{3} } x
x      x                  x

同樣的方式,你可以垂直拉伸

\maketitle
\vspace{ \stretch{1} }
Some comments.
\vspace{ \stretch{1} }
\tableofcontents

你也可以使用 \fill 代替 \stretch{1}

\stretch 命令與 \pagebreak 命令結合使用,可以用於將文字排版在頁面的最後一行,或將文字垂直居中在頁面上。

對於因子為 1(即使用 \stretch{1}\fill)的拉伸,有“快捷命令”:\hfill\vfill

示例

\maketitle
\vfill
Some comments.
\vfill
\tableofcontents

填滿剩餘的行

[edit | edit source]

幾個宏允許以不同的方式填滿剩餘的行(或拉伸行的一部分)。

  • \hfill 將產生空白。
  • \dotfill 將產生點。
  • \hrulefill 將產生一條規則。

示例

[edit | edit source]

將影像大小調整為文字寬度的一半

\includegraphics[width=0.5\textwidth]{mygraphic}

使專案之間的距離更大(在一個 itemize 環境中)

\addtolength{\itemsep}{0.5\baselineskip}

使用 \savebox 將影像大小調整為文字高度

% Create the holders we will need for our work
\newlength{\mytitleheight}
\newsavebox{\mytitletext}
% Create the reference text for measures
\savebox{\mytitletext}{%
  \Large\bfseries This is our title%
}
\settoheight{\mytitleheight}{ \usebox{\mytitletext} }
% Now creates the actual object in our document
\framebox[\textwidth][l]{%
  \includegraphics[height=\mytitleheight]{my_image}%
  \hspace{2mm}%
  \usebox{\mytitletext}%
}

參考文獻

[edit | edit source]
  1. http://www.giss.nasa.gov/tools/latex/ltx-86.html
  2. http://anonscm.debian.org/cgit/debian-tex/texlive-bin.git/tree/texk/web2c/pdftexdir/pdftex.web?h=debian/2015.20150524.37493-5#n10460

另見

[edit | edit source]


上一個:錯誤和警告 索引 下一個:計數器
華夏公益教科書