在 miktex 2.9 中載入自訂字體

在 miktex 2.9 中載入自訂字體

我從一位教授那裡得到了一種自訂字體,其中包含我需要的字元。我得到了以下檔案:crystp.pfb、crystp.afm 和crystp.tmf。

我還收到了有關如何安裝此字體的以下說明。

  1. 將 .tfm 檔案複製到 $miktexroot\fonts\ftm\public\cryst1
  2. 將 .afm 檔案複製到 $miktexroot\fonts\afm\public\cryst1
  3. 將 .pfb 檔案複製到 $miktexroot\fonts\type1\public\cryst1
  4. 將「p +cryst1.map」附加到 $miktex\dvips\config\config.ps
  5. 在 $miktexroot\dvips\cryst1 中建立檔案 crystal1.map 並附加一行「cryst crystal1
  6. 執行 initexmf -u
  7. 在我使用的 tex 檔中: \DeclareFontFamily{U}{cry}{\hyphenchar\font=-1} \DeclareFontShape{U}{cry}{m}{n}{ <-> cryst}{} \newcommand{\cry}1{{\usefont{U}{cry}{m}{n} \symbol{#1}}}
  8. 使用我使用的角色\cry{167}
  9. 建立我運行的pdf文件pdflatex test.tex

唉,這行不通。不列印該字元。日誌檔告訴我這個字元遺失了:

缺少字元:cryst 字體中沒有 §!

我使用 fontforge 程式查看 .pfb 文件,在那裡我可以看到我的角色位於 § 位置。

不幸的是,這位教授退休了,不再工作了。他幾年前也用過這個字體,只是安裝了它。所以他已經告訴我,他根本幫不了我。我知道已經有一種叫做cryst的字體,但它不包含我的字元。

我缺什麼?

@更新:文件

答案1

地圖檔案不在您上傳的檔案中。但這裡有一個沒有它的安裝/使用說明:

  1. 撤銷你所做的事情
  2. 如果您還沒有 localtexmf 樹,請建立一個:建立一個名為 例如 的資料夾(在 miktex 外部)localtexmf
  3. 將 tfm 放入localtexmf/fonts/tfm/crystp
  4. 將 pfb 放入localtexmf/fonts/type1/crystp
  5. 將它們附加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 updmapupdmap.cfg

相關內容