summaryrefslogtreecommitdiff
path: root/fonts/ptex-fontmaps
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-02-18 03:02:28 +0000
committerNorbert Preining <norbert@preining.info>2020-02-18 03:02:28 +0000
commitbb5325dae4202b519b7210a338651301e048998d (patch)
tree4caa8d8c62275cb193df85d10f8f0e10bab587b3 /fonts/ptex-fontmaps
parent67394fd2cfa6167f7e2316237629bec93851c1fb (diff)
CTAN sync 202002180302
Diffstat (limited to 'fonts/ptex-fontmaps')
-rw-r--r--fonts/ptex-fontmaps/README15
-rw-r--r--fonts/ptex-fontmaps/database/ptex-fontmaps-data.dat24
-rw-r--r--fonts/ptex-fontmaps/kanji-config-updmap.pdfbin0 -> 175524 bytes
-rw-r--r--fonts/ptex-fontmaps/kanji-config-updmap.tex407
-rw-r--r--fonts/ptex-fontmaps/maps/haranoaji/otf-haranoaji.map80
-rw-r--r--fonts/ptex-fontmaps/maps/haranoaji/otf-up-haranoaji.map32
-rw-r--r--fonts/ptex-fontmaps/maps/haranoaji/ptex-haranoaji-04.map4
-rw-r--r--fonts/ptex-fontmaps/maps/haranoaji/ptex-haranoaji.map4
-rw-r--r--fonts/ptex-fontmaps/maps/haranoaji/uptex-haranoaji-04.map10
-rw-r--r--fonts/ptex-fontmaps/maps/haranoaji/uptex-haranoaji.map10
-rw-r--r--fonts/ptex-fontmaps/maps/yu-win/otf-up-yu-win.map8
-rw-r--r--fonts/ptex-fontmaps/maps/yu-win/otf-yu-win.map20
-rw-r--r--fonts/ptex-fontmaps/maps/yu-win10/otf-up-yu-win10.map8
-rw-r--r--fonts/ptex-fontmaps/maps/yu-win10/otf-yu-win10.map20
-rwxr-xr-xfonts/ptex-fontmaps/script/kanji-config-updmap.pl59
-rw-r--r--fonts/ptex-fontmaps/script/kanji-fontmap-creator.pl4
16 files changed, 649 insertions, 56 deletions
diff --git a/fonts/ptex-fontmaps/README b/fonts/ptex-fontmaps/README
index 88a585329e..e1ff4123a2 100644
--- a/fonts/ptex-fontmaps/README
+++ b/fonts/ptex-fontmaps/README
@@ -1,7 +1,7 @@
ptex-fontmaps
=============
-Current release: 20190506.0
+Current release: 20200217.0
The files contained in this package contains font maps for dvipdfmx to
make various Japanese/Chinese/Korean fonts available for (u)ptex and
@@ -51,7 +51,7 @@ map files for dvipdfmx. You have to obtain the fonts separately.
For following list of maps, the respective fonts are shipped in TeX Live
and are available for free:
-* Japanese: ipa, ipaex
+* Japanese: haranoaji, ipa, ipaex
* Simplified Chinese: arphic, fandol
* Traditional Chinese: arphic
* Korean: baekmuk, unfonts
@@ -233,6 +233,15 @@ O morisawa-pr6n - see above
A-OTF-MidashiGoPr6N-MB31.otf
A-OTF-RyuminPr6N-Light.otf
+P haranoaji - Harano Aji Fonts from https://github.com/trueroad/HaranoAjiFonts
+ HaranoAjiMincho-Light.otf
+ HaranoAjiMincho-Regular.otf
+ HaranoAjiMincho-Bold.otf
+ HaranoAjiGothic-Regular.otf
+ HaranoAjiGothic-Medium.otf
+ HaranoAjiGothic-Bold.otf
+ HaranoAjiGothic-Heavy.otf
+
Simplified Chinese
==================
@@ -344,7 +353,7 @@ The (deprecated) file updmap-otf.sh and the (in perl rewritten version)
kanji-config-updmap.pl are licensed under the following terms:
Copyright 2004-2006 by KOBAYASHI Taizo
Copyright 2011-2016 by PREINING Norbert
- Copyright 2016- by Japanese TeX Development Community
+ Copyright 2016-2020 by Japanese TeX Development Community
Licensed under the GPL version 3 or any later version,
see the file for details.
diff --git a/fonts/ptex-fontmaps/database/ptex-fontmaps-data.dat b/fonts/ptex-fontmaps/database/ptex-fontmaps-data.dat
index 3464085d01..1a25ed22d1 100644
--- a/fonts/ptex-fontmaps/database/ptex-fontmaps-data.dat
+++ b/fonts/ptex-fontmaps/database/ptex-fontmaps-data.dat
@@ -1,24 +1,26 @@
# ptex-fontmaps-data.dat
+# With '*', no -04 map available
JA(10): morisawa-pr6n: A-OTF-RyuminPr6N-Light.otf
JA(20): morisawa: A-OTF-RyuminPro-Light.otf
JA(30): hiragino-pron: HiraMinProN-W3.otf
JA(40): hiragino: HiraMinPro-W3.otf
JA(50): kozuka-pr6n: KozMinPr6N-Regular.otf
-JA(60): kozuka-pr6: KozMinProVI-Regular.otf
-JA(70): kozuka: KozMinPro-Regular.otf
-JA(80): bizud: BIZ-UDMinchoM.ttc
+JA(55): kozuka-pr6: KozMinProVI-Regular.otf
+JA(60): kozuka: KozMinPro-Regular.otf
+JA(70): haranoaji: HaranoAjiMincho-Regular.otf
+JA*(80): bizud: BIZ-UDMinchoM.ttc
JA(90): yu-osx: YuMin-Medium.otf
-JA(95): yu-win10: YuGothB.ttc
-JA(96): yu-win: yugothib.ttf
-JA(100): ms: msgothic.ttc
-JA(105): ms-osx: MS-Gothic.ttf
+JA*(95): yu-win10: YuGothB.ttc
+JA*(96): yu-win: yugothib.ttf
+JA*(100): ms: msgothic.ttc
+JA*(105): ms-osx: MS-Gothic.ttf
JA(110): moga-mobo-ex: mogam.ttc
JA(120): moga-mobo: mogam.ttc
-JA(130): ipaex: ipaexm.ttf
-JA(140): ipa: ipam.ttf
-JA(150): ume: ume-tmo3.ttf
-JA(160): canon: FGCCHMW3.TTC
+JA*(130): ipaex: ipaexm.ttf
+JA*(140): ipa: ipam.ttf
+JA*(150): ume: ume-tmo3.ttf
+JA*(160): canon: FGCCHMW3.TTC
JA-AI0: sourcehan-otc: SourceHanSerif-Regular.ttc
JA-AI0: sourcehan: SourceHanSerif-Regular.otf
JA-AI0: noto-otc: NotoSerifCJK-Regular.ttc
diff --git a/fonts/ptex-fontmaps/kanji-config-updmap.pdf b/fonts/ptex-fontmaps/kanji-config-updmap.pdf
new file mode 100644
index 0000000000..5cefbb76ce
--- /dev/null
+++ b/fonts/ptex-fontmaps/kanji-config-updmap.pdf
Binary files differ
diff --git a/fonts/ptex-fontmaps/kanji-config-updmap.tex b/fonts/ptex-fontmaps/kanji-config-updmap.tex
new file mode 100644
index 0000000000..4b05e69e33
--- /dev/null
+++ b/fonts/ptex-fontmaps/kanji-config-updmap.tex
@@ -0,0 +1,407 @@
+\documentclass{jlreq}
+\usepackage{array}
+\usepackage{multicol}
+\usepackage{ascmac}
+\usepackage{url}
+
+\makeatletter
+%%%%%
+%
+% ptex-fontmaps-data.dat などを読み込んでリストを出力するマクロ
+% -- \unless, \readline を使っているので e-TeX 必須
+%
+% prepare
+\newread\xx@myread
+%
+% main routine
+\def\loaddata#1{%
+ \def\xx@日本語list{}\def\xx@簡体中国語list{}%
+ \def\xx@繁体中国語list{}\def\xx@韓国語list{}%
+ % read database
+ \openin\xx@myread=#1\relax
+ \@whilesw\unless\ifeof\xx@myread\fi{%
+ \readline\xx@myread to \xx@dataline
+ % first: strip trailing LF
+ \expandafter\xx@striplf\xx@dataline\@nil
+ \ifx\xx@dataline\@empty\else
+ % second: strip comments starting from '#'
+ \expandafter\expandafter\expandafter\xx@stripcomment
+ \expandafter\xx@dataline\xx@number\@nil
+ \ifx\xx@dataline\@empty\else
+ % now, only effective database lines
+ \expandafter\xx@parseline\xx@dataline\@nil
+ \fi
+ \fi
+ }%
+ \closein\xx@myread
+ % output result
+ \@for\xx@lang:={日本語,簡体中国語,繁体中国語,韓国語}\do{%
+ \expandafter\let\expandafter\xx@langlist\csname xx@\xx@lang list\endcsname
+ \ifx\xx@langlist\@empty\else
+ \begin{itembox}[l]{\xx@lang}
+ \begin{multicols}{2}
+ \begin{itemize}
+ \@for\xx@item:=\xx@langlist\do{\item \command{\xx@item}}%
+ \end{itemize}
+ \end{multicols}
+ \end{itembox}
+ \fi}
+}%
+%
+% sub
+\begingroup
+ \catcode`\^^M=12 \gdef\xx@lf{^^M}%
+ \catcode`\#=12 \gdef\xx@number{#}%
+\endgroup
+\expandafter\def\expandafter\xx@striplf
+ \expandafter#\expandafter1\xx@lf\@nil{\def\xx@dataline{#1}}
+\expandafter\def\expandafter\xx@stripcomment
+ \expandafter#\expandafter1\xx@number#2\@nil{\def\xx@dataline{#1}}
+\def\xx@parseline#1: #2: #3\@nil{\xx@parselang#1\@nil{#2}}
+%
+% subsub
+\begingroup
+ \escapechar-1
+ \xdef\xx@JA{\string\JA}\xdef\xx@SC{\string\SC}
+ \xdef\xx@TC{\string\TC}\xdef\xx@KO{\string\KO}
+ \xdef\xx@AI{-\string\AI0}
+\endgroup
+\def\xx@parselang#1#2#3\@nil#4{%
+ \def\xx@tempa{#1#2}\def\xx@tempb{#3}%
+ \edef\xx@tempc{#4 \ifx\xx@tempb\xx@AI<AI0>\else#3\fi}%
+ \ifx\xx@tempa\xx@JA \xx@addtolist\xx@日本語list\xx@tempc \else
+ \ifx\xx@tempa\xx@SC \xx@addtolist\xx@簡体中国語list\xx@tempc \else
+ \ifx\xx@tempa\xx@TC \xx@addtolist\xx@繁体中国語list\xx@tempc \else
+ \ifx\xx@tempa\xx@KO \xx@addtolist\xx@韓国語list\xx@tempc \else
+ \@latex@error{Unknown language `\xx@tempa' in database}\@ehc
+ \fi\fi\fi\fi}
+\def\xx@addtolist#1#2{%
+ % #1: name of the list, #2: item
+ \ifx#1\@empty
+ \edef#1{#2}%
+ \else
+ \edef#1{#1,#2}%
+ \fi}
+%
+%%%%%
+%
+% ptex-fontmaps の README を読み込んでそのまま出力する
+% -- \unless, \readline を使っているので e-TeX 必須
+%
+% main routine
+\def\loadprint#1{%
+ \openin\xx@myread=#1\relax
+ \@whilesw\unless\ifeof\xx@myread\fi{%
+ \readline\xx@myread to \xx@dataline
+ % first: strip trailing LF
+ \expandafter\xx@striplf\xx@dataline\@nil
+ % empty line and indent should be kept
+ \leavevmode\null\xx@dataline\par
+ }%
+ \closein\xx@myread
+}
+%%%%%
+\makeatother
+
+%% misc
+\def\file#1{\texttt{#1}}
+\def\command#1{\texttt{#1}}
+\def\option#1{\texttt{-{}-#1}}
+\def\codechar#1{\ensuremath{\langle\mbox{\texttt{#1}}\rangle}}
+\def\TL{\TeX\ Live}
+\def\pTeX{p\kern-.15em\TeX}
+\def\upTeX{u\pTeX}
+
+\title{\command{kanji-config-updmap} --- 日本語フォント設定ツール}
+\author{日本語\TeX 開発コミュニティ}
+
+\begin{document}
+\maketitle
+
+\TL に収録されている\file{ptex-fontmaps}パッケージには,
+\command{kanji-config-updmap}というコマンドが付属しています。
+このコマンドは,\pTeX や\upTeX で生成したDVIを扱う下記のドライバが埋め込む
+日本語・中国語・韓国語フォントの設定を統一的に指定したり,
+確認したりできます。
+\begin{itemize}
+ \item dvipdfmx(PDFへの埋め込みフォント)
+ \item dvips(PostScriptで指定するフォント名)
+ %\item pxdvi(画面表示に使うフォント)\footnote{この機能はオプションです。}
+\end{itemize}
+
+\section{はじめに:システム用(\command{-sys})とユーザ用(\command{-user})}
+
+\command{kanji-config-updmap}には2種類のコマンド名があります。
+\begin{itemize}
+ \item \command{kanji-config-updmap-sys}: 全ユーザ向けのシステム共通設定
+ \item \command{kanji-config-updmap-user}: 現在のユーザ用の設定
+\end{itemize}
+これは他の「\command{-sys}」と「\command{-user}」の区別のあるコマンドにも
+言えることですが,特に理由のない限り,\emph{常に}「\command{-sys}」付きの
+コマンド\command{kanji-config-updmap-sys}を使用することをお勧めします。
+これは以下の理由によります。
+\begin{itemize}
+ \item 現在のユーザ用の設定は,システム共通設定より優先する。
+ \item \TL のアップデート時は,システム共通設定は更新されるが,
+ 現在のユーザ用の設定は更新されない。
+ \item 結果的に,\emph{たった一度でも}「\command{-user}」付きのコマンドを
+ 実行した環境では,\TL のアップデート時に設定更新が反映されない
+ という事故が起こる。
+\end{itemize}
+より詳細には,\url{http://tug.org/texlive/scripts-sys-user.html}を参照してください。
+
+なお,「管理者権限がなくて \command{-sys} 付きのコマンドを実行できない」などの
+理由がある場合は,\command{kanji-config-updmap-user}を使用してください。
+この場合は,\command{tlmgr}で\TL をアップデートすることもない(できない)
+でしょうから,上に述べたような不都合は起きないでしょう。
+
+以下では \command{-sys} の方で説明します。
+また,Windowsでは\command{sudo}(Unixで管理者権限に昇格するコマンド)を
+つける必要はありませんので省いて読んでください。
+
+
+\clearpage
+
+
+\section{現在の埋め込み設定を確認する}
+
+現在の日本語フォントの埋め込み設定を確認するには
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys --ja status
+\end{verbatim}
+を実行します(オプション \option{ja} は省略可能です)。
+
+同様に,現在の簡体中国語・繁体中国語・韓国語フォントの埋め込み設定はそれぞれ
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys --sc status
+ $ sudo kanji-config-updmap-sys --tc status
+ $ sudo kanji-config-updmap-sys --ko status
+\end{verbatim}
+で確認できます(オプション \option{sc}, \option{tc}, \option{ko} は省略不可)。
+
+実行例を下に示します。
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys --ja status
+ CURRENT family for ja: ipaex (variant: <empty>)
+ Standby family : haranoaji
+ Standby family : ipa
+ Standby family : ms
+ Standby family : yu-win10
+\end{verbatim}
+この場合,現在設定されているプリセットは\command{ipaex}であり,
+他に4種類のプリセットが利用可能であることを示します。
+\command{CURRENT family}の末尾の表示されている
+\command{variant}は \command{<empty>} か \command{-04} のいずれかで,
+\textbf{JIS90字形とJIS2004字形の両方がサポートされるプリセットでJIS2004字形が
+選択されている場合}のみ \command{-04} となります
+(第\ref{jis2004}節を参照)。
+% kanji-config-updmap 20200217.0 で status に variant も表示するようにした
+
+なお,\TL を公式インストーラでフルインストールした場合は,デフォルトで
+表\ref{tldefault}の設定が適用された状態になっています。
+それぞれの値が実際にどのフォントに対応しているかは,\file{ptex-fontmaps}の
+\file{README}を参照してください。
+例えば,日本語フォントのデフォルト値\command{ipaex}は
+IPAex明朝・IPAexゴシックに対応しています。
+\begin{table}[h]
+ \centering
+ \caption{\TL の埋め込みフォントのデフォルト値}\label{tldefault}
+ \begin{tabular}{m{12zw}m{8zw}}
+ \hline
+ 変数名(言語) & デフォルト値 \\ \hline
+ \command{jaEmbed}(日本語) & \command{ipaex} \\
+ \command{scEmbed}(簡体中国語) & \command{arphic} \\
+ \command{tcEmbed}(繁体中国語) & \command{arphic} \\
+ \command{koEmbed}(韓国語) & \command{baekmuk} \\ \hline
+\end{tabular}
+\end{table}
+
+
+\clearpage
+
+
+\section{日本語フォントの埋め込み設定を変更する}
+
+日本語フォントの埋め込み設定を変更するには
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys --ja <family>
+\end{verbatim}
+を実行します(ここでもオプション \option{ja} は省略可能です)。
+
+同様に,現在の簡体中国語・繁体中国語・韓国語フォントの埋め込み設定はそれぞれ
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys --sc <family>
+ $ sudo kanji-config-updmap-sys --tc <family>
+ $ sudo kanji-config-updmap-sys --ko <family>
+\end{verbatim}
+で変更できます(オプション \option{sc}, \option{tc}, \option{ko} は省略不可)。
+
+なお,オプションの書式は \option{ja <family>} と \option{ja=<family>} のように,
+イコール(\command{=})を付けても付けなくても同じ意味になります。
+
+\subsection{利用可能なプリセット一覧}
+
+利用可能な \command{<family>} は以下のとおりです。
+実際に対応するフォントは,先ほどと同様に
+\file{ptex-fontmaps}の\file{README}を参照してください。
+このリストで,各値の末尾に付いている \command{(番号)} は,次節で説明する
+\command{auto}による自動選択の優先順位を表します。
+番号の前の \command{*} については,第\ref{jis2004}節で後述します。
+また \command{<AI0>} と付いているものは,Adobe-Identity0の
+フォントであることを示し,いくつかの制約事項があります(第\ref{ai0}節)。
+\loaddata{database/ptex-fontmaps-data.dat}
+
+さらに,TLContribリポジトリから\file{ptex-fontmaps-macos}パッケージを
+インストールすると,以下も追加で利用できます。
+\loaddata{database/ptex-fontmaps-macos-data.dat}
+
+複数の言語のフォント埋め込み設定を同時に変更することもできます。例えば
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys --ja yu-win10 --sc fandol
+\end{verbatim}
+とすると,日本語フォントを\command{yu-win10}に,
+簡体中国語フォントを\command{fandol}に変更します。
+
+設定変更時には,その設定で使われるであろう代表的なフォントファイルが
+\emph{実在するかどうかを予めチェック}します(もし実在しなければ,
+第\ref{special-preset}節で後述する\command{auto}にフォールバックします)。
+オプション \option{force} を付けると,実在するかどうかにかかわらず
+強制的にそのプリセットを設定します(バージョン20190506.0の新機能)。
+
+\subsection{日本語フォントのJIS2004字形の使用}\label{jis2004}
+
+一部のプリセットでは,JIS90字形とJIS2004字形の両方をサポートしています。
+先ほどのリストで番号の前に \command{*} が\emph{付いていない}プリセットが該当し,
+現在すべてのOpenTypeフォントと一部のTrueTypeフォントが含まれます。
+これらのプリセットでは,\textbf{デフォルトではJIS90字形が使われます}が,
+オプション \option{jis2004} を指定するとJIS2004字形を使用する設定になります。例えば
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys haranoaji
+\end{verbatim}
+ではJIS90字形の「原ノ味フォント」が使われますが,
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys --jis2004 haranoaji
+\end{verbatim}
+ではJIS2004字形の「原ノ味フォント」が使われます。
+
+一方 \command{*} が\emph{付いている}プリセットでは,
+JIS90字形とJIS2004字形の\textbf{どちらが出力されるかはフォント次第}です。
+このようなプリセットでは,オプション \option{jis2004} が指定されても
+\begin{verbatim}
+ WARNING: No -04 map available, option --jis2004 ignored!
+\end{verbatim}
+と警告して無視します。
+% 以前はオプションを無視せず -04 のマップファイルを使おうとして,
+% 結果的に kanjix.map からマッピングが消えていたが,
+% kanji-config-updmap 20200217.0 で --jis2004 を無視する仕様にした
+例えば
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys ipaex
+\end{verbatim}
+で使われる「IPAexフォント」はJIS2004字形でデザインされています。
+
+\subsection{特殊なプリセット}\label{special-preset}
+
+\emph{フォントを埋め込まない}場合は引数を\command{nofont}とします。
+例えば
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys nofont
+\end{verbatim}
+とすれば,日本語フォントが埋め込まれません。
+
+また,引数に\command{auto}を指定すると,上記のリストの中から \command{(番号)} が
+なるべく小さな\emph{実在するフォント}を自動的に選択します。
+ただし,現在設定されている(\command{nofont}以外の)プリセットが
+実在していて利用可能な場合は,現在の設定を維持します。
+例えば
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys auto
+\end{verbatim}
+では日本語フォントが\command{morisawa-pr6n}→\command{morisawa}→…の順に
+探され,最初に見つかったフォントを埋め込むように自動で設定されることになります。
+\begin{verbatim}
+ $ sudo kanji-config-updmap-sys --ja auto --sc auto --tc auto --ko auto
+\end{verbatim}
+とすれば,4つの言語全てが同様に自動設定されます。
+
+\subsection{カスタムプリセットの利用}
+
+[TODO] 作業中。
+マップファイルを用意すれば\command{kanji-config-updmap}で設定可能。
+
+
+\clearpage
+
+
+\section{特記事項}
+
+まず,一般的な注意点を挙げておきます。
+\begin{itemize}
+ \item 特定の文字が出力されるかどうかは,実際に使われるフォントに依ります。
+ フォントに収録されていない文字は出力されませんし,
+ JIS90字形かJIS2004字形のどちらか一方しか用意されていないフォントもあります。
+ \item 複数のウェイトが利用可能かどうかは,プリセットに依ります。
+ 例えば,\command{ipaex}が利用するIPAexフォントは明朝とゴシック
+ 各1ウェイトのみ配布されており,細字の明朝や太字のゴシックは利用できません。
+\end{itemize}
+
+その他,いくつかのプリセットには注意点があります。
+
+\subsection{Adobe-Identity0 (AI0)なフォントの制約事項}\label{ai0}
+
+\command{sourcehan}や\command{noto}などを埋め込む設定の注意点です。
+
+[TODO] 作業中。
+
+\begin{itemize}
+ \item \upTeX~+~dvipdfmx専用です。他の経路(\pTeX~+~dvipdfmx,
+ \pTeX~+~dvips,\upTeX~+~dvips)はサポートできないため,
+ \emph{フォントを埋め込まない}設定にフォールバックします。
+ \item \upTeX~+~dvipdfmxの経路でも,Adobe-Japan1などの従来のマッピングに
+ 依存する文字出力機能もサポートされません。具体的には以下の機能が該当し,
+ これらの文字も\emph{フォントを埋め込まない}設定にフォールバックします。
+ \begin{itemize}
+ \item \file{otf}パッケージが提供する \verb+\CID+ や
+ \file{ajmacros}(\verb+\aj...+命令など)の大半の命令
+ \item \file{otf}パッケージ使用時のクオート記号,
+ つまり\codechar{“}\codechar{”}\codechar{‘}\codechar{’}の4文字
+ \end{itemize}
+\end{itemize}
+
+\subsection{その他}
+
+その他,既知の注意点です。
+\file{ptex-fontmaps}はあくまで\pTeX や\upTeX が提供する共通のJFM(\file{ptex-fonts},
+\file{uptex-fonts}に収録)から参照される実フォントを切り替えるだけであり,
+個別のフォントに対する対処は行っていません。
+
+\begin{itemize}
+ \item \command{yu}, \command{yu-win10}はWindowsに付属する
+ TrueType形式の游フォントを埋め込みますが,
+ クオート記号\codechar{“}\codechar{”}\codechar{‘}\codechar{’}が
+ 全角幅より狭くデザインされているため,出力が異常になります。\\
+ 参考: \url{https://oku.edu.mie-u.ac.jp/tex/mod/forum/discuss.php?d=2017}
+\end{itemize}
+
+
+%\section{内部処理}
+
+%\command{kanji-config-updmap-sys}は内部で\command{updmap-sys}を呼び出し,
+%\command{kanji-config-updmap-user}は内部で\command{updmap-user}を呼び出す。
+
+
+\clearpage
+\appendix
+
+
+\section{\file{ptex-fontmaps}の\file{README}}
+
+% \readline が和文文字をバイト列に変換しない e-pTeX 190908 以降が必要
+% https://github.com/texjporg/tex-jp-build/issues/88
+\ifnum\epTeXversion<190908\relax
+ \errhelp{Update e-pTeX.}\errmessage{e-pTeX 190908 required}
+\else
+ {\frenchspacing\ttfamily\footnotesize\loadprint{README}}
+\fi
+
+\end{document}
diff --git a/fonts/ptex-fontmaps/maps/haranoaji/otf-haranoaji.map b/fonts/ptex-fontmaps/maps/haranoaji/otf-haranoaji.map
new file mode 100644
index 0000000000..421504045c
--- /dev/null
+++ b/fonts/ptex-fontmaps/maps/haranoaji/otf-haranoaji.map
@@ -0,0 +1,80 @@
+
+% TEXT, 90JIS
+hminl-h H HaranoAjiMincho-Light.otf
+hminl-v V HaranoAjiMincho-Light.otf
+hminr-h H HaranoAjiMincho-Regular.otf
+hminr-v V HaranoAjiMincho-Regular.otf
+hminb-h H HaranoAjiMincho-Bold.otf
+hminb-v V HaranoAjiMincho-Bold.otf
+hgothr-h H HaranoAjiGothic-Regular.otf
+hgothr-v V HaranoAjiGothic-Regular.otf
+hgothb-h H HaranoAjiGothic-Bold.otf
+hgothb-v V HaranoAjiGothic-Bold.otf
+hgotheb-h H HaranoAjiGothic-Heavy.otf
+hgotheb-v V HaranoAjiGothic-Heavy.otf
+hmgothr-h H HaranoAjiGothic-Medium.otf
+hmgothr-v V HaranoAjiGothic-Medium.otf
+
+% TEXT, JIS04
+hminln-h H HaranoAjiMincho-Light.otf
+hminln-v V HaranoAjiMincho-Light.otf
+hminrn-h H HaranoAjiMincho-Regular.otf
+hminrn-v V HaranoAjiMincho-Regular.otf
+hminbn-h H HaranoAjiMincho-Bold.otf
+hminbn-v V HaranoAjiMincho-Bold.otf
+hgothrn-h H HaranoAjiGothic-Regular.otf
+hgothrn-v V HaranoAjiGothic-Regular.otf
+hgothbn-h H HaranoAjiGothic-Bold.otf
+hgothbn-v V HaranoAjiGothic-Bold.otf
+hgothebn-h H HaranoAjiGothic-Heavy.otf
+hgothebn-v V HaranoAjiGothic-Heavy.otf
+hmgothrn-h H HaranoAjiGothic-Medium.otf
+hmgothrn-v V HaranoAjiGothic-Medium.otf
+
+% CID
+otf-cjml-h Identity-H HaranoAjiMincho-Light.otf
+otf-cjml-v Identity-V HaranoAjiMincho-Light.otf
+otf-cjmr-h Identity-H HaranoAjiMincho-Regular.otf
+otf-cjmr-v Identity-V HaranoAjiMincho-Regular.otf
+otf-cjmb-h Identity-H HaranoAjiMincho-Bold.otf
+otf-cjmb-v Identity-V HaranoAjiMincho-Bold.otf
+otf-cjgr-h Identity-H HaranoAjiGothic-Regular.otf
+otf-cjgr-v Identity-V HaranoAjiGothic-Regular.otf
+otf-cjgb-h Identity-H HaranoAjiGothic-Bold.otf
+otf-cjgb-v Identity-V HaranoAjiGothic-Bold.otf
+otf-cjge-h Identity-H HaranoAjiGothic-Heavy.otf
+otf-cjge-v Identity-V HaranoAjiGothic-Heavy.otf
+otf-cjmgr-h Identity-H HaranoAjiGothic-Medium.otf
+otf-cjmgr-v Identity-V HaranoAjiGothic-Medium.otf
+
+% Unicode 90JIS
+otf-ujml-h UniJIS-UTF16-H HaranoAjiMincho-Light.otf
+otf-ujml-v UniJIS-UTF16-V HaranoAjiMincho-Light.otf
+otf-ujmr-h UniJIS-UTF16-H HaranoAjiMincho-Regular.otf
+otf-ujmr-v UniJIS-UTF16-V HaranoAjiMincho-Regular.otf
+otf-ujmb-h UniJIS-UTF16-H HaranoAjiMincho-Bold.otf
+otf-ujmb-v UniJIS-UTF16-V HaranoAjiMincho-Bold.otf
+otf-ujgr-h UniJIS-UTF16-H HaranoAjiGothic-Regular.otf
+otf-ujgr-v UniJIS-UTF16-V HaranoAjiGothic-Regular.otf
+otf-ujgb-h UniJIS-UTF16-H HaranoAjiGothic-Bold.otf
+otf-ujgb-v UniJIS-UTF16-V HaranoAjiGothic-Bold.otf
+otf-ujge-h UniJIS-UTF16-H HaranoAjiGothic-Heavy.otf
+otf-ujge-v UniJIS-UTF16-V HaranoAjiGothic-Heavy.otf
+otf-ujmgr-h UniJIS-UTF16-H HaranoAjiGothic-Medium.otf
+otf-ujmgr-v UniJIS-UTF16-V HaranoAjiGothic-Medium.otf
+
+% Unicode JIS04
+otf-ujmln-h UniJIS2004-UTF16-H HaranoAjiMincho-Light.otf
+otf-ujmln-v UniJIS2004-UTF16-V HaranoAjiMincho-Light.otf
+otf-ujmrn-h UniJIS2004-UTF16-H HaranoAjiMincho-Regular.otf
+otf-ujmrn-v UniJIS2004-UTF16-V HaranoAjiMincho-Regular.otf
+otf-ujmbn-h UniJIS2004-UTF16-H HaranoAjiMincho-Bold.otf
+otf-ujmbn-v UniJIS2004-UTF16-V HaranoAjiMincho-Bold.otf
+otf-ujgrn-h UniJIS2004-UTF16-H HaranoAjiGothic-Regular.otf
+otf-ujgrn-v UniJIS2004-UTF16-V HaranoAjiGothic-Regular.otf
+otf-ujgbn-h UniJIS2004-UTF16-H HaranoAjiGothic-Bold.otf
+otf-ujgbn-v UniJIS2004-UTF16-V HaranoAjiGothic-Bold.otf
+otf-ujgen-h UniJIS2004-UTF16-H HaranoAjiGothic-Heavy.otf
+otf-ujgen-v UniJIS2004-UTF16-V HaranoAjiGothic-Heavy.otf
+otf-ujmgrn-h UniJIS2004-UTF16-H HaranoAjiGothic-Medium.otf
+otf-ujmgrn-v UniJIS2004-UTF16-V HaranoAjiGothic-Medium.otf
diff --git a/fonts/ptex-fontmaps/maps/haranoaji/otf-up-haranoaji.map b/fonts/ptex-fontmaps/maps/haranoaji/otf-up-haranoaji.map
new file mode 100644
index 0000000000..4da649a5ad
--- /dev/null
+++ b/fonts/ptex-fontmaps/maps/haranoaji/otf-up-haranoaji.map
@@ -0,0 +1,32 @@
+
+% TEXT, 90JIS
+uphminl-h UniJIS-UTF16-H HaranoAjiMincho-Light.otf
+uphminl-v UniJIS-UTF16-V HaranoAjiMincho-Light.otf
+uphminr-h UniJIS-UTF16-H HaranoAjiMincho-Regular.otf
+uphminr-v UniJIS-UTF16-V HaranoAjiMincho-Regular.otf
+uphminb-h UniJIS-UTF16-H HaranoAjiMincho-Bold.otf
+uphminb-v UniJIS-UTF16-V HaranoAjiMincho-Bold.otf
+uphgothr-h UniJIS-UTF16-H HaranoAjiGothic-Regular.otf
+uphgothr-v UniJIS-UTF16-V HaranoAjiGothic-Regular.otf
+uphgothb-h UniJIS-UTF16-H HaranoAjiGothic-Bold.otf
+uphgothb-v UniJIS-UTF16-V HaranoAjiGothic-Bold.otf
+uphgotheb-h UniJIS-UTF16-H HaranoAjiGothic-Heavy.otf
+uphgotheb-v UniJIS-UTF16-V HaranoAjiGothic-Heavy.otf
+uphmgothr-h UniJIS-UTF16-H HaranoAjiGothic-Medium.otf
+uphmgothr-v UniJIS-UTF16-V HaranoAjiGothic-Medium.otf
+
+% TEXT, JIS04
+uphminln-h UniJIS2004-UTF16-H HaranoAjiMincho-Light.otf
+uphminln-v UniJIS2004-UTF16-V HaranoAjiMincho-Light.otf
+uphminrn-h UniJIS2004-UTF16-H HaranoAjiMincho-Regular.otf
+uphminrn-v UniJIS2004-UTF16-V HaranoAjiMincho-Regular.otf
+uphminbn-h UniJIS2004-UTF16-H HaranoAjiMincho-Bold.otf
+uphminbn-v UniJIS2004-UTF16-V HaranoAjiMincho-Bold.otf
+uphgothrn-h UniJIS2004-UTF16-H HaranoAjiGothic-Regular.otf
+uphgothrn-v UniJIS2004-UTF16-V HaranoAjiGothic-Regular.otf
+uphgothbn-h UniJIS2004-UTF16-H HaranoAjiGothic-Bold.otf
+uphgothbn-v UniJIS2004-UTF16-V HaranoAjiGothic-Bold.otf
+uphgothebn-h UniJIS2004-UTF16-H HaranoAjiGothic-Heavy.otf
+uphgothebn-v UniJIS2004-UTF16-V HaranoAjiGothic-Heavy.otf
+uphmgothrn-h UniJIS2004-UTF16-H HaranoAjiGothic-Medium.otf
+uphmgothrn-v UniJIS2004-UTF16-V HaranoAjiGothic-Medium.otf
diff --git a/fonts/ptex-fontmaps/maps/haranoaji/ptex-haranoaji-04.map b/fonts/ptex-fontmaps/maps/haranoaji/ptex-haranoaji-04.map
new file mode 100644
index 0000000000..6ed525350c
--- /dev/null
+++ b/fonts/ptex-fontmaps/maps/haranoaji/ptex-haranoaji-04.map
@@ -0,0 +1,4 @@
+rml 2004-H HaranoAjiMincho-Regular.otf
+rmlv 2004-V HaranoAjiMincho-Regular.otf
+gbm 2004-H HaranoAjiGothic-Medium.otf
+gbmv 2004-V HaranoAjiGothic-Medium.otf
diff --git a/fonts/ptex-fontmaps/maps/haranoaji/ptex-haranoaji.map b/fonts/ptex-fontmaps/maps/haranoaji/ptex-haranoaji.map
new file mode 100644
index 0000000000..dc3118041b
--- /dev/null
+++ b/fonts/ptex-fontmaps/maps/haranoaji/ptex-haranoaji.map
@@ -0,0 +1,4 @@
+rml H HaranoAjiMincho-Regular.otf
+rmlv V HaranoAjiMincho-Regular.otf
+gbm H HaranoAjiGothic-Medium.otf
+gbmv V HaranoAjiGothic-Medium.otf
diff --git a/fonts/ptex-fontmaps/maps/haranoaji/uptex-haranoaji-04.map b/fonts/ptex-fontmaps/maps/haranoaji/uptex-haranoaji-04.map
new file mode 100644
index 0000000000..c233396ef2
--- /dev/null
+++ b/fonts/ptex-fontmaps/maps/haranoaji/uptex-haranoaji-04.map
@@ -0,0 +1,10 @@
+urml UniJIS2004-UTF16-H HaranoAjiMincho-Regular.otf
+urmlv UniJIS2004-UTF16-V HaranoAjiMincho-Regular.otf
+ugbm UniJIS2004-UTF16-H HaranoAjiGothic-Medium.otf
+ugbmv UniJIS2004-UTF16-V HaranoAjiGothic-Medium.otf
+uprml-h UniJIS2004-UTF16-H HaranoAjiMincho-Regular.otf
+uprml-v UniJIS2004-UTF16-V HaranoAjiMincho-Regular.otf
+upgbm-h UniJIS2004-UTF16-H HaranoAjiGothic-Medium.otf
+upgbm-v UniJIS2004-UTF16-V HaranoAjiGothic-Medium.otf
+uprml-hq UniJIS-UCS2-H HaranoAjiMincho-Regular.otf
+upgbm-hq UniJIS-UCS2-H HaranoAjiGothic-Medium.otf
diff --git a/fonts/ptex-fontmaps/maps/haranoaji/uptex-haranoaji.map b/fonts/ptex-fontmaps/maps/haranoaji/uptex-haranoaji.map
new file mode 100644
index 0000000000..9c487af511
--- /dev/null
+++ b/fonts/ptex-fontmaps/maps/haranoaji/uptex-haranoaji.map
@@ -0,0 +1,10 @@
+urml UniJIS-UTF16-H HaranoAjiMincho-Regular.otf
+urmlv UniJIS-UTF16-V HaranoAjiMincho-Regular.otf
+ugbm UniJIS-UTF16-H HaranoAjiGothic-Medium.otf
+ugbmv UniJIS-UTF16-V HaranoAjiGothic-Medium.otf
+uprml-h UniJIS-UTF16-H HaranoAjiMincho-Regular.otf
+uprml-v UniJIS-UTF16-V HaranoAjiMincho-Regular.otf
+upgbm-h UniJIS-UTF16-H HaranoAjiGothic-Medium.otf
+upgbm-v UniJIS-UTF16-V HaranoAjiGothic-Medium.otf
+uprml-hq UniJIS-UCS2-H HaranoAjiMincho-Regular.otf
+upgbm-hq UniJIS-UCS2-H HaranoAjiGothic-Medium.otf
diff --git a/fonts/ptex-fontmaps/maps/yu-win/otf-up-yu-win.map b/fonts/ptex-fontmaps/maps/yu-win/otf-up-yu-win.map
index 10b1c6a4c9..72c3d8021b 100644
--- a/fonts/ptex-fontmaps/maps/yu-win/otf-up-yu-win.map
+++ b/fonts/ptex-fontmaps/maps/yu-win/otf-up-yu-win.map
@@ -4,8 +4,8 @@ uphminl-h UniJIS-UTF16-H yuminl.ttf %!PS YuMincho-Light
uphminl-v UniJIS-UTF16-V yuminl.ttf %!PS YuMincho-Light
uphminr-h UniJIS-UTF16-H yumin.ttf %!PS YuMincho-Regular
uphminr-v UniJIS-UTF16-V yumin.ttf %!PS YuMincho-Regular
-uphminb-h UniJIS-UTF16-H yumindb.ttf %!PS YuMincho-DemiBold
-uphminb-v UniJIS-UTF16-V yumindb.ttf %!PS YuMincho-DemiBold
+uphminb-h UniJIS-UTF16-H yumindb.ttf %!PS YuMincho-Demibold
+uphminb-v UniJIS-UTF16-V yumindb.ttf %!PS YuMincho-Demibold
uphgothr-h UniJIS-UTF16-H yugothic.ttf %!PS YuGothic-Regular
uphgothr-v UniJIS-UTF16-V yugothic.ttf %!PS YuGothic-Regular
uphgothb-h UniJIS-UTF16-H yugothib.ttf %!PS YuGothic-Bold
@@ -20,8 +20,8 @@ uphminln-h UniJIS2004-UTF16-H yuminl.ttf %!PS YuMincho-Light
uphminln-v UniJIS2004-UTF16-V yuminl.ttf %!PS YuMincho-Light
uphminrn-h UniJIS2004-UTF16-H yumin.ttf %!PS YuMincho-Regular
uphminrn-v UniJIS2004-UTF16-V yumin.ttf %!PS YuMincho-Regular
-uphminbn-h UniJIS2004-UTF16-H yumindb.ttf %!PS YuMincho-DemiBold
-uphminbn-v UniJIS2004-UTF16-V yumindb.ttf %!PS YuMincho-DemiBold
+uphminbn-h UniJIS2004-UTF16-H yumindb.ttf %!PS YuMincho-Demibold
+uphminbn-v UniJIS2004-UTF16-V yumindb.ttf %!PS YuMincho-Demibold
uphgothrn-h UniJIS2004-UTF16-H yugothic.ttf %!PS YuGothic-Regular
uphgothrn-v UniJIS2004-UTF16-V yugothic.ttf %!PS YuGothic-Regular
uphgothbn-h UniJIS2004-UTF16-H yugothib.ttf %!PS YuGothic-Bold
diff --git a/fonts/ptex-fontmaps/maps/yu-win/otf-yu-win.map b/fonts/ptex-fontmaps/maps/yu-win/otf-yu-win.map
index 8bf00f2f0e..68269381ad 100644
--- a/fonts/ptex-fontmaps/maps/yu-win/otf-yu-win.map
+++ b/fonts/ptex-fontmaps/maps/yu-win/otf-yu-win.map
@@ -4,8 +4,8 @@ hminl-h H yuminl.ttf %!PS YuMincho-Light
hminl-v V yuminl.ttf %!PS YuMincho-Light
hminr-h H yumin.ttf %!PS YuMincho-Regular
hminr-v V yumin.ttf %!PS YuMincho-Regular
-hminb-h H yumindb.ttf %!PS YuMincho-DemiBold
-hminb-v V yumindb.ttf %!PS YuMincho-DemiBold
+hminb-h H yumindb.ttf %!PS YuMincho-Demibold
+hminb-v V yumindb.ttf %!PS YuMincho-Demibold
hgothr-h H yugothic.ttf %!PS YuGothic-Regular
hgothr-v V yugothic.ttf %!PS YuGothic-Regular
hgothb-h H yugothib.ttf %!PS YuGothic-Bold
@@ -20,8 +20,8 @@ hminln-h H yuminl.ttf %!PS YuMincho-Light
hminln-v V yuminl.ttf %!PS YuMincho-Light
hminrn-h H yumin.ttf %!PS YuMincho-Regular
hminrn-v V yumin.ttf %!PS YuMincho-Regular
-hminbn-h H yumindb.ttf %!PS YuMincho-DemiBold
-hminbn-v V yumindb.ttf %!PS YuMincho-DemiBold
+hminbn-h H yumindb.ttf %!PS YuMincho-Demibold
+hminbn-v V yumindb.ttf %!PS YuMincho-Demibold
hgothrn-h H yugothic.ttf %!PS YuGothic-Regular
hgothrn-v V yugothic.ttf %!PS YuGothic-Regular
hgothbn-h H yugothib.ttf %!PS YuGothic-Bold
@@ -36,8 +36,8 @@ otf-cjml-h Identity-H yuminl.ttf/AJ16 %!PS YuMincho-Light
otf-cjml-v Identity-V yuminl.ttf/AJ16 %!PS YuMincho-Light
otf-cjmr-h Identity-H yumin.ttf/AJ16 %!PS YuMincho-Regular
otf-cjmr-v Identity-V yumin.ttf/AJ16 %!PS YuMincho-Regular
-otf-cjmb-h Identity-H yumindb.ttf/AJ16 %!PS YuMincho-DemiBold
-otf-cjmb-v Identity-V yumindb.ttf/AJ16 %!PS YuMincho-DemiBold
+otf-cjmb-h Identity-H yumindb.ttf/AJ16 %!PS YuMincho-Demibold
+otf-cjmb-v Identity-V yumindb.ttf/AJ16 %!PS YuMincho-Demibold
otf-cjgr-h Identity-H yugothic.ttf/AJ16 %!PS YuGothic-Regular
otf-cjgr-v Identity-V yugothic.ttf/AJ16 %!PS YuGothic-Regular
otf-cjgb-h Identity-H yugothib.ttf/AJ16 %!PS YuGothic-Bold
@@ -52,8 +52,8 @@ otf-ujml-h UniJIS-UTF16-H yuminl.ttf %!PS YuMincho-Light
otf-ujml-v UniJIS-UTF16-V yuminl.ttf %!PS YuMincho-Light
otf-ujmr-h UniJIS-UTF16-H yumin.ttf %!PS YuMincho-Regular
otf-ujmr-v UniJIS-UTF16-V yumin.ttf %!PS YuMincho-Regular
-otf-ujmb-h UniJIS-UTF16-H yumindb.ttf %!PS YuMincho-DemiBold
-otf-ujmb-v UniJIS-UTF16-V yumindb.ttf %!PS YuMincho-DemiBold
+otf-ujmb-h UniJIS-UTF16-H yumindb.ttf %!PS YuMincho-Demibold
+otf-ujmb-v UniJIS-UTF16-V yumindb.ttf %!PS YuMincho-Demibold
otf-ujgr-h UniJIS-UTF16-H yugothic.ttf %!PS YuGothic-Regular
otf-ujgr-v UniJIS-UTF16-V yugothic.ttf %!PS YuGothic-Regular
otf-ujgb-h UniJIS-UTF16-H yugothib.ttf %!PS YuGothic-Bold
@@ -68,8 +68,8 @@ otf-ujmln-h UniJIS2004-UTF16-H yuminl.ttf %!PS YuMincho-Light
otf-ujmln-v UniJIS2004-UTF16-V yuminl.ttf %!PS YuMincho-Light
otf-ujmrn-h UniJIS2004-UTF16-H yumin.ttf %!PS YuMincho-Regular
otf-ujmrn-v UniJIS2004-UTF16-V yumin.ttf %!PS YuMincho-Regular
-otf-ujmbn-h UniJIS2004-UTF16-H yumindb.ttf %!PS YuMincho-DemiBold
-otf-ujmbn-v UniJIS2004-UTF16-V yumindb.ttf %!PS YuMincho-DemiBold
+otf-ujmbn-h UniJIS2004-UTF16-H yumindb.ttf %!PS YuMincho-Demibold
+otf-ujmbn-v UniJIS2004-UTF16-V yumindb.ttf %!PS YuMincho-Demibold
otf-ujgrn-h UniJIS2004-UTF16-H yugothic.ttf %!PS YuGothic-Regular
otf-ujgrn-v UniJIS2004-UTF16-V yugothic.ttf %!PS YuGothic-Regular
otf-ujgbn-h UniJIS2004-UTF16-H yugothib.ttf %!PS YuGothic-Bold
diff --git a/fonts/ptex-fontmaps/maps/yu-win10/otf-up-yu-win10.map b/fonts/ptex-fontmaps/maps/yu-win10/otf-up-yu-win10.map
index 2d1bf333ab..17e07ee4cf 100644
--- a/fonts/ptex-fontmaps/maps/yu-win10/otf-up-yu-win10.map
+++ b/fonts/ptex-fontmaps/maps/yu-win10/otf-up-yu-win10.map
@@ -4,8 +4,8 @@ uphminl-h UniJIS-UTF16-H yuminl.ttf %!PS YuMincho-Light
uphminl-v UniJIS-UTF16-V yuminl.ttf %!PS YuMincho-Light
uphminr-h UniJIS-UTF16-H yumin.ttf %!PS YuMincho-Regular
uphminr-v UniJIS-UTF16-V yumin.ttf %!PS YuMincho-Regular
-uphminb-h UniJIS-UTF16-H yumindb.ttf %!PS YuMincho-DemiBold
-uphminb-v UniJIS-UTF16-V yumindb.ttf %!PS YuMincho-DemiBold
+uphminb-h UniJIS-UTF16-H yumindb.ttf %!PS YuMincho-Demibold
+uphminb-v UniJIS-UTF16-V yumindb.ttf %!PS YuMincho-Demibold
uphgothr-h UniJIS-UTF16-H :0:YuGothR.ttc %!PS YuGothic-Regular
uphgothr-v UniJIS-UTF16-V :0:YuGothR.ttc %!PS YuGothic-Regular
uphgothb-h UniJIS-UTF16-H :0:YuGothB.ttc %!PS YuGothic-Bold
@@ -20,8 +20,8 @@ uphminln-h UniJIS2004-UTF16-H yuminl.ttf %!PS YuMincho-Light
uphminln-v UniJIS2004-UTF16-V yuminl.ttf %!PS YuMincho-Light
uphminrn-h UniJIS2004-UTF16-H yumin.ttf %!PS YuMincho-Regular
uphminrn-v UniJIS2004-UTF16-V yumin.ttf %!PS YuMincho-Regular
-uphminbn-h UniJIS2004-UTF16-H yumindb.ttf %!PS YuMincho-DemiBold
-uphminbn-v UniJIS2004-UTF16-V yumindb.ttf %!PS YuMincho-DemiBold
+uphminbn-h UniJIS2004-UTF16-H yumindb.ttf %!PS YuMincho-Demibold
+uphminbn-v UniJIS2004-UTF16-V yumindb.ttf %!PS YuMincho-Demibold
uphgothrn-h UniJIS2004-UTF16-H :0:YuGothR.ttc %!PS YuGothic-Regular
uphgothrn-v UniJIS2004-UTF16-V :0:YuGothR.ttc %!PS YuGothic-Regular
uphgothbn-h UniJIS2004-UTF16-H :0:YuGothB.ttc %!PS YuGothic-Bold
diff --git a/fonts/ptex-fontmaps/maps/yu-win10/otf-yu-win10.map b/fonts/ptex-fontmaps/maps/yu-win10/otf-yu-win10.map
index 0d4f3ab7d4..122add8162 100644
--- a/fonts/ptex-fontmaps/maps/yu-win10/otf-yu-win10.map
+++ b/fonts/ptex-fontmaps/maps/yu-win10/otf-yu-win10.map
@@ -4,8 +4,8 @@ hminl-h H yuminl.ttf %!PS YuMincho-Light
hminl-v V yuminl.ttf %!PS YuMincho-Light
hminr-h H yumin.ttf %!PS YuMincho-Regular
hminr-v V yumin.ttf %!PS YuMincho-Regular
-hminb-h H yumindb.ttf %!PS YuMincho-DemiBold
-hminb-v V yumindb.ttf %!PS YuMincho-DemiBold
+hminb-h H yumindb.ttf %!PS YuMincho-Demibold
+hminb-v V yumindb.ttf %!PS YuMincho-Demibold
hgothr-h H :0:YuGothR.ttc %!PS YuGothic-Regular
hgothr-v V :0:YuGothR.ttc %!PS YuGothic-Regular
hgothb-h H :0:YuGothB.ttc %!PS YuGothic-Bold
@@ -20,8 +20,8 @@ hminln-h H yuminl.ttf %!PS YuMincho-Light
hminln-v V yuminl.ttf %!PS YuMincho-Light
hminrn-h H yumin.ttf %!PS YuMincho-Regular
hminrn-v V yumin.ttf %!PS YuMincho-Regular
-hminbn-h H yumindb.ttf %!PS YuMincho-DemiBold
-hminbn-v V yumindb.ttf %!PS YuMincho-DemiBold
+hminbn-h H yumindb.ttf %!PS YuMincho-Demibold
+hminbn-v V yumindb.ttf %!PS YuMincho-Demibold
hgothrn-h H :0:YuGothR.ttc %!PS YuGothic-Regular
hgothrn-v V :0:YuGothR.ttc %!PS YuGothic-Regular
hgothbn-h H :0:YuGothB.ttc %!PS YuGothic-Bold
@@ -36,8 +36,8 @@ otf-cjml-h Identity-H yuminl.ttf/AJ16 %!PS YuMincho-Light
otf-cjml-v Identity-V yuminl.ttf/AJ16 %!PS YuMincho-Light
otf-cjmr-h Identity-H yumin.ttf/AJ16 %!PS YuMincho-Regular
otf-cjmr-v Identity-V yumin.ttf/AJ16 %!PS YuMincho-Regular
-otf-cjmb-h Identity-H yumindb.ttf/AJ16 %!PS YuMincho-DemiBold
-otf-cjmb-v Identity-V yumindb.ttf/AJ16 %!PS YuMincho-DemiBold
+otf-cjmb-h Identity-H yumindb.ttf/AJ16 %!PS YuMincho-Demibold
+otf-cjmb-v Identity-V yumindb.ttf/AJ16 %!PS YuMincho-Demibold
otf-cjgr-h Identity-H :0:YuGothR.ttc/AJ16 %!PS YuGothic-Regular
otf-cjgr-v Identity-V :0:YuGothR.ttc/AJ16 %!PS YuGothic-Regular
otf-cjgb-h Identity-H :0:YuGothB.ttc/AJ16 %!PS YuGothic-Bold
@@ -52,8 +52,8 @@ otf-ujml-h UniJIS-UTF16-H yuminl.ttf %!PS YuMincho-Light
otf-ujml-v UniJIS-UTF16-V yuminl.ttf %!PS YuMincho-Light
otf-ujmr-h UniJIS-UTF16-H yumin.ttf %!PS YuMincho-Regular
otf-ujmr-v UniJIS-UTF16-V yumin.ttf %!PS YuMincho-Regular
-otf-ujmb-h UniJIS-UTF16-H yumindb.ttf %!PS YuMincho-DemiBold
-otf-ujmb-v UniJIS-UTF16-V yumindb.ttf %!PS YuMincho-DemiBold
+otf-ujmb-h UniJIS-UTF16-H yumindb.ttf %!PS YuMincho-Demibold
+otf-ujmb-v UniJIS-UTF16-V yumindb.ttf %!PS YuMincho-Demibold
otf-ujgr-h UniJIS-UTF16-H :0:YuGothR.ttc %!PS YuGothic-Regular
otf-ujgr-v UniJIS-UTF16-V :0:YuGothR.ttc %!PS YuGothic-Regular
otf-ujgb-h UniJIS-UTF16-H :0:YuGothB.ttc %!PS YuGothic-Bold
@@ -68,8 +68,8 @@ otf-ujmln-h UniJIS2004-UTF16-H yuminl.ttf %!PS YuMincho-Light
otf-ujmln-v UniJIS2004-UTF16-V yuminl.ttf %!PS YuMincho-Light
otf-ujmrn-h UniJIS2004-UTF16-H yumin.ttf %!PS YuMincho-Regular
otf-ujmrn-v UniJIS2004-UTF16-V yumin.ttf %!PS YuMincho-Regular
-otf-ujmbn-h UniJIS2004-UTF16-H yumindb.ttf %!PS YuMincho-DemiBold
-otf-ujmbn-v UniJIS2004-UTF16-V yumindb.ttf %!PS YuMincho-DemiBold
+otf-ujmbn-h UniJIS2004-UTF16-H yumindb.ttf %!PS YuMincho-Demibold
+otf-ujmbn-v UniJIS2004-UTF16-V yumindb.ttf %!PS YuMincho-Demibold
otf-ujgrn-h UniJIS2004-UTF16-H :0:YuGothR.ttc %!PS YuGothic-Regular
otf-ujgrn-v UniJIS2004-UTF16-V :0:YuGothR.ttc %!PS YuGothic-Regular
otf-ujgbn-h UniJIS2004-UTF16-H :0:YuGothB.ttc %!PS YuGothic-Bold
diff --git a/fonts/ptex-fontmaps/script/kanji-config-updmap.pl b/fonts/ptex-fontmaps/script/kanji-config-updmap.pl
index 230b0a9a02..541c4329a7 100755
--- a/fonts/ptex-fontmaps/script/kanji-config-updmap.pl
+++ b/fonts/ptex-fontmaps/script/kanji-config-updmap.pl
@@ -1,6 +1,6 @@
#!/usr/bin/env perl
# kanji-config-updmap: setup Japanese font embedding
-# Version 20190506.0
+# Version 20200217.0
#
# formerly known as updmap-setup-kanji
#
@@ -22,7 +22,7 @@ use Getopt::Long qw(:config no_autoabbrev ignore_case_always);
use strict;
my $prg = "kanji-config-updmap";
-my $version = '20190506.0';
+my $version = '20200217.0';
my $updmap_real = "updmap";
my $updmap = $updmap_real;
@@ -255,6 +255,12 @@ sub ReadDatabase {
next if ($l =~ m/^\s*$/); # skip empty line
next if ($l =~ m/^\s*#/); # skip comment line
$l =~ s/\s*#.*$//; # skip comment after '#'
+ if ($l =~ m/^JA\*\((\d+)\):\s*(.*):\s*(.*)$/) { # no -04 map
+ $representatives{'ja'}{$2}{'priority'} = $1;
+ $representatives{'ja'}{$2}{'file'} = $3;
+ $representatives{'ja'}{$2}{'nojis04'} = 1;
+ next;
+ }
if ($l =~ m/^JA\((\d+)\):\s*(.*):\s*(.*)$/) {
$representatives{'ja'}{$2}{'priority'} = $1;
$representatives{'ja'}{$2}{'file'} = $3;
@@ -275,6 +281,13 @@ sub ReadDatabase {
$representatives{'ko'}{$2}{'file'} = $3;
next;
}
+ if ($l =~ m/^JA-AI0\*:\s*(.*):\s*(.*)$/) { # no -04 map
+ $representatives{'ja'}{$1}{'priority'} = 9999; # lowest
+ $representatives{'ja'}{$1}{'file'} = $2;
+ $representatives{'ja'}{$1}{'nojis04'} = 1;
+ $ai0flags{'ja'}{$1} = 1;
+ next;
+ }
if ($l =~ m/^JA-AI0:\s*(.*):\s*(.*)$/) {
$representatives{'ja'}{$1}{'priority'} = 9999; # lowest
$representatives{'ja'}{$1}{'file'} = $2;
@@ -311,10 +324,11 @@ sub ReadDatabase {
sub kpse_miscfont {
my ($file) = @_;
- chomp(my $foo = `kpsewhich -format=miscfont $file`);
- # for GitHub repository diretory structure
+ my $foo = '';
+ # first, prioritize GitHub repository diretory structure
+ $foo = "database/$file" if (-f "database/$file");
if ($foo eq "") {
- $foo = "database/$file" if (-f "database/$file");
+ chomp($foo = `kpsewhich -format=miscfont $file`);
}
return $foo;
}
@@ -366,17 +380,32 @@ sub gen_mapfile {
sub GetStatus {
my $opt_mode = shift;
- my $val = `$updmap_real --quiet --showoption ${opt_mode}Embed`;
- my $STATUS;
+ my $val;
+ my $STATUS = "";
+ my $VARIANT = "";
+
+ # fetch jaEmbed/scEmbed/tcEmbed/koEmbed
+ $val = `$updmap_real --quiet --showoption ${opt_mode}Embed`;
if ($val =~ m/^${opt_mode}Embed=([^()\s]*)(\s+\()?/) {
$STATUS = $1;
} else {
die "Cannot find status of current ${opt_mode}Embed setting via updmap --showoption!\n";
}
+ # fetch jaVariant
+ if ($opt_mode eq "ja") {
+ $val = `$updmap_real --quiet --showoption ${opt_mode}Variant`;
+ if ($val =~ m/^${opt_mode}Variant=([^()\s]*)(\s+\()?/) {
+ $VARIANT = $1; # should be '' or '-04'
+ } else {
+ die "Cannot find status of current ${opt_mode}Variant setting via updmap --showoption!\n";
+ }
+ }
- my $testmap = gen_mapfile($opt_mode, $STATUS);
+ my $testmap = gen_mapfile($opt_mode, "$STATUS$VARIANT");
+ $VARIANT = "<empty>" if ($VARIANT eq ""); # for printing
if (check_mapfile($testmap)) {
print "CURRENT family for $opt_mode: $STATUS";
+ print " (variant: $VARIANT)" if ($opt_mode eq "ja");
print " (AI0)" if ($ai0flags{$opt_mode}{$STATUS});
print "\n";
} else {
@@ -410,10 +439,16 @@ sub SetupMapFile {
print " (AI0)" if ($ai0flags{$opt_mode}{$rep});
print " for $opt_mode\n";
system("$updmap --quiet --nomkmap --nohash --setoption ${opt_mode}Embed $rep");
- if ($opt_jis) {
- system("$updmap --quiet --nomkmap --nohash --setoption jaVariant -04");
- } else {
- system("$updmap --quiet --nomkmap --nohash --setoption jaVariant \"\"");
+ if ($opt_mode eq "ja") {
+ if ($opt_jis && $representatives{'ja'}{$rep}{'nojis04'}) {
+ print STDERR "WARNING: No -04 map available, option --jis2004 ignored!\n";
+ $opt_jis = 0;
+ }
+ if ($opt_jis) {
+ system("$updmap --quiet --nomkmap --nohash --setoption jaVariant -04");
+ } else {
+ system("$updmap --quiet --nomkmap --nohash --setoption jaVariant \"\"");
+ }
}
} else {
die "NOT EXIST $MAPFILE\n";
diff --git a/fonts/ptex-fontmaps/script/kanji-fontmap-creator.pl b/fonts/ptex-fontmaps/script/kanji-fontmap-creator.pl
index dd8e72970d..0189360e23 100644
--- a/fonts/ptex-fontmaps/script/kanji-fontmap-creator.pl
+++ b/fonts/ptex-fontmaps/script/kanji-fontmap-creator.pl
@@ -2,7 +2,7 @@
#
# kanji-fontmap-creator
# (c) 2012-2014 Norbert Preining
-# Version: 20190506.0
+# Version: 20200217.0
# Licenced under the GPLv2 or any higher version
#
# gui to create map files for (kanji-config-)updmap
@@ -41,7 +41,7 @@ my $opt_help = 0;
my $opt_version = 0;
my $prg = "kanji-fontmap-creator";
-my $version = "20190506.0";
+my $version = "20200217.0";
#
# global vars configuring operation