背景
相對較新的 LaTeX 用戶在這裡會發瘋。
我想做的就是使用戴·拉蒙 S字體,但似乎幾乎不可能做到這一點。
問題
在 (La)TeX 中使用字體的秘訣是什麼?有什麼規律、理由或經驗法則可供遵循嗎?或者我需要繼續嘗試隨機組合我發現的模式,直到有效果為止?
筆記
雖然我都真的想做的是使用戴·羅曼·S,我故意將問題集中在一般字體上,因為似乎沒有任何關於使用字體的可靠建議。我看到很多針對特定問題的解決方案,甚至是一般的字體,但正如在下一節中可以看到的,這一切都是一團糟。
筆記2
是的,我有 RTFM戴·羅曼·S有問題的字體,已安裝,並且已重新安裝多次。找出一個仍然是痛苦的持續的和可靠的在文件中使用不同字體的方法。
先前的研究
在試圖弄清楚這一點的過程中,我查看了 FontCatalogue 存檔中經過編譯的許多範例,發現似乎有多種指定字體的方法。我不確定何時使用哪一個。
有時您只需要加載與字體同名的套件並\normalfont\normalfont
在文字前面添加兩次(為什麼?):
\usepackage{bookman}
\usepackage[T1]{fontenc}
\begin{document}
\normalfont\normalfont
其他時候您需要\normalfont\<font-name>
在文字前面加上:
\usepackage{calligra}
\usepackage[T1]{fontenc}
\begin{document}
\normalfont\calligra
還有一些時候,您需要ic
從字體名稱中刪除並在文字之前添加family
, 創建:\normalfont\<font-name-minus-ic>family
\usepackage{egothic}
\usepackage[T1]{fontenc}
\begin{document}
\normalfont\egothfamily
有時,後面的第二個命令\normalfont
似乎與套件名稱根本無關:
\usepackage{yfonts}
\usepackage[T1]{fontenc}
\begin{document}
\normalfont\swabfamily
有時還需要\renewcommand*
在載入字體包之後、載入之前使用fontenc
:
\usepackage{PTSansCaption}
\renewcommand*\familydefault{\sfdefault} %% Only if the base font of the document is to be sans serif
\usepackage[T1]{fontenc}
\begin{document}
\normalfont\normalfont
有時你可以這樣做沒有首先載入字體包並後加載fontenc
(所有其他示例都在前面):
\usepackage[T1]{fontenc}
\renewcommand*\familydefault{\ttdefault} %% Only if the base font of the document is to be typewriter style
\begin{document}
\normalfont\normalfont
有時您用來\renewcommand*
設定其他預設值,例如\rmdefault
(前兩個範例是\familydefault
:
\renewcommand*\rmdefault{cmfib}
\usepackage[T1]{fontenc}
\begin{document}
\normalfont\normalfont
有時您必須設定各種預設值:
\renewcommand*\ttdefault{lmvtt}
\renewcommand*\familydefault{\ttdefault} %% Only if the base font of the document is to be typewriter style
\usepackage[T1]{fontenc}
\begin{document}
\normalfont\normalfont
最後,有些似乎需要.fd
直接加載文件(字體定義?)而不是通過\usepackage
命令,設置 a \newcommand*
(而不是\renewcommand*
),跳過加載,並將文本之前的fontenc
重複內容更改為更複雜的內容:\normalfont\normalfont
\input Carrickc.fd
\newcommand*\initfamily{\usefont{U}{Carrickc}{xl}{n}}
\begin{document}
\normalfont\initfamily
\fontsize{12mm}{12mm}\selectfont
答案1
這是一個(幾乎)工作的 MWE:
\documentclass[danish]{article}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage[T1]{fontenc}
\renewcommand\rmdefault{dayroms}
\begin{document}
\section*{Dayrom S}
For mange Aar siden levede en Keiser, som holdt saa uhyre meget af
smukke nye Kl\ae der, at han gav alle sine Penge ud for ret at blive
pyntet. Han br\o d sig ikke om sine Soldater, br\o d sig ei om Comedie
eller om at kj\o re i Skoven, uden alene for at vise sine nye Kl\ae
der. Han havde en Kjole for hver Time paa Dagen, og ligesom man siger
om en Konge, han er i Raadet, saa sagde man altid her: >>Keiseren er i
Garderoben!<<~--
\end{document}
我幾乎可以肯定這個範例對您來說會失敗,因為我幾乎可以肯定您沒有安裝該字體。該字體不是 TeX Live 的一部分。三種可能性:
答案2
沒有什麼「秘密」; TeX 系統中的字體一開始很簡單,用戶別無選擇——每個人都使用現代計算機,因此,使用 Metafont 編寫的處理字體的工具在 90 年代達到了穩定狀態,並且不需要太多額外的東西支持。
當可以透過 TeX 使用 Adobe Type 1 字體時,複雜性對我們造成了極大的打擊。我們不能再只是提供字體來源,然後讓 TeX 在幕後處理字體編譯(等等)。這就是為什麼你發現它如此困難:即使有人創建了這些文件,你也需要將它們放到正確的位置,並進行一些魔法以確保系統注意到它們。這並不困難,但要尋找文件可能並不簡單。
看來我們又回到了起點,即 TrueType 和 OpenType 字體。您需要一個替代的 TeX 引擎(XeTeX 或 LuaTeX),但這些引擎的設定是為了找到您的系統字體,而無需您進行太多的反省。
請注意,我並沒有解決您的問題,只是展示它們是如何出現的。最好的方法是在您想要使用單一字體時詢問它們。
我認為