我從一位教授那裡得到了一種自訂字體,其中包含我需要的字元。我得到了以下檔案:crystp.pfb、crystp.afm 和crystp.tmf。
我還收到了有關如何安裝此字體的以下說明。
- 將 .tfm 檔案複製到 $miktexroot\fonts\ftm\public\cryst1
- 將 .afm 檔案複製到 $miktexroot\fonts\afm\public\cryst1
- 將 .pfb 檔案複製到 $miktexroot\fonts\type1\public\cryst1
- 將「p +cryst1.map」附加到 $miktex\dvips\config\config.ps
- 在 $miktexroot\dvips\cryst1 中建立檔案 crystal1.map 並附加一行「cryst crystal1
- 執行 initexmf -u
- 在我使用的 tex 檔中:
\DeclareFontFamily{U}{cry}{\hyphenchar\font=-1} \DeclareFontShape{U}{cry}{m}{n}{ <-> cryst}{} \newcommand{\cry}1{{\usefont{U}{cry}{m}{n} \symbol{#1}}}
- 使用我使用的角色
\cry{167}
- 建立我運行的pdf文件
pdflatex test.tex
唉,這行不通。不列印該字元。日誌檔告訴我這個字元遺失了:
缺少字元:cryst 字體中沒有 §!
我使用 fontforge 程式查看 .pfb 文件,在那裡我可以看到我的角色位於 § 位置。
不幸的是,這位教授退休了,不再工作了。他幾年前也用過這個字體,只是安裝了它。所以他已經告訴我,他根本幫不了我。我知道已經有一種叫做cryst的字體,但它不包含我的字元。
我缺什麼?
@更新:文件
答案1
地圖檔案不在您上傳的檔案中。但這裡有一個沒有它的安裝/使用說明:
- 撤銷你所做的事情
- 如果您還沒有 localtexmf 樹,請建立一個:建立一個名為 例如 的資料夾(在 miktex 外部)
localtexmf
- 將 tfm 放入
localtexmf/fonts/tfm/crystp
- 將 pfb 放入
localtexmf/fonts/type1/crystp
- 將它們附加
localtexmf
為 miktex 設定中的新根,或者如果您使用現有localtexmf
更新其 FNDBinitexmf -u
然後使用 pdflatex 運行此文件(它不適用於 Latex + dvips):
\documentclass{article}
\usepackage{fonttable}
\pdfmapline{=crystp crystp <crystp.pfb}
\DeclareFontFamily{U}{cry}{\hyphenchar\font=-1}
\DeclareFontShape{U}{cry}{m}{n}{ <-> crystp}{}
\newcommand{\cry}[1]{{\usefont{U}{cry}{m}{n} \symbol{#1}}}
\begin{document}
\cry{167}
\xfonttable{U}{cry}{m}{n}
\end{document}
它應該給出一個帶有 p 和字體表的文檔。
您稍後可以將映射檔案行移至crystp crystp <crystp.pfb
映射並使用 tocrystp.map
新增此映射,然後執行 updmap。initexmf --edit-config-file updmap
updmap.cfg