質問用フォーラムです。ご質問の前に質問のしかたをご覧ください。

uincode-math 利用時に OFT 以外のフォントを使ってもテキスト情報を Unicode にしたい

- ya ra の投稿

実行環境

  • Windows11
  • TeX Live 2023
  • LuaLaTeX

unicode-math では、数式が Unicode で出力されます。 一方で、unicode-math に収録されていない記号を OpenType フォントではないフォントから取り入れようとすると、たとえその記号が Unicode に登録されていたとしても、PDF 内のテキスト情報は期待した記号ではない何かになってしまいます。

例えば、mathabx パッケージで提供されている天文学記号を以下のように導入した場合、生成された PDF のテキスト情報は Unicode に対応しません。(@ABCDEFGHIJKLMN がコピペされる)

% +++
% latex = lualatex
% +++
\documentclass[11pt]{jlreq}
\usepackage{unicode-math}
\setmathfont{STIX Two Math}
%%
%% mathabx
%% 以下のディレクトリにあるファイルから適当に抜粋
%% texlive/2023/texmf-dist/tex/generic/mathabx
\DeclareFontFamily{U}{mathb}{\hyphenchar\font45}
\DeclareFontShape{U}{mathb}{m}{n}{
      <5> <6> <7> <8> <9> <10> gen * mathb
      <10.95> mathb10 <12> <14.4> <17.28> <20.74> <24.88> mathb12
      }{}
      %% 山括弧がエンコードされてしまうようです...
      %% 実際は、< → < の半角、> → > の半角です。
\DeclareSymbolFont{mathb}{U}{mathb}{m}{n}
\DeclareFontSubstitution{U}{mathb}{m}{n}
\DeclareMathSymbol{\Sun}       {0}{mathb}{"40} % U+2609
\DeclareMathSymbol{\Mercury}   {0}{mathb}{"41} % U+263F
\DeclareMathSymbol{\Venus}     {0}{mathb}{"42} % U+2640
\DeclareMathSymbol{\Earth}     {0}{mathb}{"43} % U+1F728
\DeclareMathSymbol{\Mars}      {0}{mathb}{"44} % U+2642
\DeclareMathSymbol{\Jupiter}   {0}{mathb}{"45} % U+2643
\DeclareMathSymbol{\Saturn}    {0}{mathb}{"46} % U+2644
\DeclareMathSymbol{\Uranus}    {0}{mathb}{"47} % U+26E2
\DeclareMathSymbol{\Neptune}   {0}{mathb}{"48} % U+2646
\DeclareMathSymbol{\Pluto}     {0}{mathb}{"49} % U+2647
\DeclareMathSymbol{\varEarth}  {0}{mathb}{"4A} % U+2641
\DeclareMathSymbol{\Leftmoon}  {0}{mathb}{"4B} % U+263D
\DeclareMathSymbol{\Rightmoon} {0}{mathb}{"4C} % U+263E
\DeclareMathSymbol{\Fullmoon}  {0}{mathb}{"4D} % U+1F315
\DeclareMathSymbol{\Newmoon}   {0}{mathb}{"4E} % U+1F311
%%
\begin{document}

\begin{equation}
  \Sun \Mercury \Venus \Earth \Mars \Jupiter \Saturn \Uranus \Neptune 
  \Pluto \varEarth \Leftmoon \Rightmoon \Fullmoon \Newmoon
\end{equation}

\end{document}

テキスト情報をそれぞれの記号に対応する Unicode に変更する方法はありますか?

↓ コピペしたテキスト情報で PDF 内を検索した様子 ↓

添付 スクリーンショット 2023-08-08 044437.png

フォントの埋め込みについて

- rice rice の投稿
OSはWindows11,TeX Liveでインストールしたupte2eVSCodeで使用しています。

コードをコンパイルしようとすると、以下のようなメッセージが出てpdfが出力されません。

dvipdfmx:warning: Could not locate a virtual/physical font for TFM "ntx-Regular-tlf-ot1r".
dvipdfmx:warning: >> There are no valid font mapping entry for this font.
dvipdfmx:warning: >> Font file name "ntx-Regular-tlf-ot1r" was assumed but failed to locate that font.
dvipdfmx:fatal: Cannot proceed without .vf or "physical" font for PDF output...

No output PDF file written.

解決するために行ったことは次の通りです。

コマンドプロンプトで
mktexdir
kanji-config-updmap status
kanji-config-updmap-sys ipa
を順に打ち込みました。

現在kanji-config-updmap statusを打ち込むと
CURRENT family for ja: ipa (variant: )
Standby family : bizud
Standby family : haranoaji
Standby family : ipaex
Standby family : ms
Standby family : yu-win10
と出ますが、コンパイルしようとすると相変わらず上記のようなメッセージが出てpdfは出力されません。

どのように解決できるでしょうか。

目次の前にパラグラフがあると目次が横に伸びる

- 佐藤 清 の投稿
目次の前にパラグラフがあると目次に伸びるのですが、理由と対処法分かりませんか?

\documentclass[book]{jlreq}
\begin{document}

\paragraph{title} a
\tableofcontents
\chapter{微分}

\end{document}

ちなみに目次の前にパラグラフを置きたい理由はそこに序文を書くためです。
添付 2ACC0F15-57FF-4668-8D00-EE48C3CF0E7D.jpeg

jlreqで目次だけ見出しのスタイルを変える

- Wang Yifan の投稿

TeX Live 2021のLuaTeX環境でjlreqを使用していますが、目次の章立てだけスタイルを変更する必要が出てきました。

検索したところ下記のイシューが見つかったので、それを使用して以下のようなテストファイルを作成してみたのですが、変更が反映されないようです。この場合、どのように書くのが正しいのでしょうか。
目次と索引の見出し命令は固有名になっていたほうがよい?

\documentclass{jlreq}
% フックを使う.それなりに新しいLaTeXが必要.
\AddToHook{cmd/tableofcontents/before}{
  \SaveHeading{section}{\savesection}% 現在の\sectionを保存
  \ModifyHeading{section}{label_format={\thesection 節}}% \section変更
}
\AddToHook{cmd/tableofcontents/after}{
  \savesection% 復帰
}
% もちろんこうしてもよい
%\makeatletter
%\let\orig@tableofcontents=\tableofcontents
%\def\tableofcontents{%
%  \SaveHeading{section}{\savesection}% 現在の\sectionを保存
%  \ModifyHeading{section}{label_format={\thesection 節}}% \section変更
%  \orig@tableofcontents
%  \savesection% 復帰
%}
%\makeatother
\begin{document}
\tableofcontents
\section{あ}
\end{document}
添付 スクリーンショット 2023-07-26 114634.png

「文献情報を挿入する」の使い方

- ueki ichiro の投稿
Windows10の富士通のノートパソコンに美文書作成入門第8版のCDからTEXをインストールして使っています。 TeXworks でファイルを開いて上の欄外の作業バーの「編集」をクリックすると「文献情報を挿入する」という行があり、これをクリックすると下の欄外に 「`%! TEX bibfile' 行がありません」と表示されます。 「文献情報を挿入する」はどのように使うのでしょうか。 植木

dvipdfmxの非全角幅のCID文字の扱い,VFの扱い

- Yoshihiro AOKI の投稿
dvipdfmxの仕様についてお伺いさせてください。

下記のTeXソース(このメッセージの末尾)で,\char 3つで「T」「e」「X」と印字されますが(合計3zw),
文字送りがJFMと一致しませんでした。

VFはotfパッケージからお借りしたものです。

具体的には
  ===TeX      ===
のように文字が詰まって印字されます

JFMでは3文字がそれぞれ1zwなので,
  ===T  e  X  ===
となることを想像していました。

これはdvipdfmxの仕様でしょうか。

---
dvipdfmxのvf.cでは0xf2(LONG_CHAR)エントリの文字幅はskip_bytesで捨てており,

  /* Skip over TFM width since we already know it */
  skip_bytes (4, vf_file);

とあります(似たような箇所が複数箇所)。それ以降は私には追いかけられなかったのですが,結果的に3zw進んでいるので直接の原因ではないと思いました。

---
また,論点がずれますが,LONG_CHARエントリのSET2に続けてRIGHTを置いてもRIGHTは必ず無視されるようでした。
  LONG_CHAR
  SET2<XXXX>
  RIGHT3<XXXXXX>
のような並びのときです。

---
さらに,
  LONG_CHAR
  SET2<XXXX>
  SET2<1>
のように本来の文字の後ろにCID 1(空白)を付け足したVFを作ったところ,「TeX」という文字列が「右から左」に印字されるという現象もありました。dvipdfmxのlr_modeはデフォルトでは「右から左」なのでしょうか(RIGHTが効かないこととも関連がありますでしょうか)。

---
いずれにしろ,SET2で(同一フォントで?)非全角文字を連続で置いたとき,JFMの文字幅が1文字ずつ反映されないように思います(JFMの文字幅が反映されるほうが自然だと思います)。

また,VFにあるはずのRIGHT等(スキップ関連?)が無視される理由が分かりません(逆に通常の和文JFMで括弧などが正常に印字されることに対して合致しない挙動のようにも思いますが,頭がこんがらかってしまいました。

主なテストはTeX Live 2021で行い,メッセージ末尾のTeXソースはTeX Live 2023でも確認しました。mapファイルは「ヒラギノ」「リュウミン」1書体ずつで確認しましたが結果は同じでした(埋め込むOpenType依存ではなさそうです)。

TeX Live 2023 (Windows 11, ARM64):
  e-pTeX 3.141592653-p4.1.0-230214-2.6 (utf8.sjis) (TeX Live 2023)
  kpathsea version 6.3.5
  ptexenc version 1.4.3

  This is dvipdfmx Version 20220710 by the DVIPDFMx project team,
  modified for TeX Live,
  an extended version of dvipdfm-0.13.2c developed by Mark A. Wicks.

TeX Live 2021 (macOS Ventura, universal-darwin):
  e-pTeX 3.141592653-p3.9.0-210218-2.6 (utf8.euc) (TeX Live 2021)
  kpathsea version 6.3.3
  ptexenc version 1.3.9

  This is dvipdfmx Version 20210318 by the DVIPDFMx project team,
  modified for TeX Live,
  an extended version of dvipdfm-0.13.2c developed by Mark A. Wicks.

以下,TeXソースです。
---
% encoding: utf-8
\documentclass{jarticle}

\begin{document}

\parindent0zw

\font\f=cidjmr2-h at20pt
\f

===%
\char\jis"4448 % 槌 => T
\char\jis"4459 % 潰 => e
\char\jis"444C % 通 => X
===%

\end{document}

tcolorboxで学参編集

- takamasa 23 の投稿
tcolorboxなるものを知って以下の写真に添付したものを作りたく思い、書き込みをさせていただいています。
やりたいことが2つありまして、
① 「重要例題から指針までの2つのbox」が非常にtcolorboxに似ており、Texで再現したいと思いました。

②2つ目は、解答部分において左側のみに点線があり、その点線の開始地点に「解答」と言う文字を置くということをtikzを併用することで再現したいと思いました。

まだまだ未熟者ですが、お力添えいただきたいです。

(写真:引用 https://www.chart.co.jp/top/chart/img/ko-su-r4.jpg)
添付 参照(本文のリンクより引用).jpeg

Windows/Fonts とは別の場所にあるフォントを使いたい(パスを通す?)

- 山下 山下 の投稿
こんにちは.
https://okumuralab.org/tex/mod/forum/discuss.php?d=3612
で質問をさせていただいた者です.

恐らく TeX Live のパスの設定の問題だと思い,別にスレッドを立てさせていただきました.

さて,私は Adobe Acrobat 2020 を2台のPCにインストールしています.1台は Windows 10 機,もう1台は Windows 11 機です.

フォント KozMinPr6N-Regular.otf は両機それぞれ
C:\Program Files (x86)\Adobe\Acrobat 2020\Resource\CIDFont
にあります.また,どちらの C:\Windows\Fonts にもありません.

https://okumuralab.org/tex/mod/forum/discuss.php?d=3612
で教えていただいた方法は,Windows10機では成功しましたが,Window11機では
Package fontspec Error: The font "KozMinPr6N-Regular" cannot be found.
というエラーが出て,止まりました.

Acrobat インストールの際は標準設定のまま進めました.また,上記の方法を試す際,フォント関係の設定は何もいじっていません.よって,恐らく TeX Live をインストールする際,後者では何かパス関係の設定を忘れており,これが原因で失敗するのではないかと考えております.

そこで質問ですが,TeX Live のパス関係の設定を後からやり直す方法はありますでしょうか.それとも TeX Live を最初からインストールし直すしかないのでしょうか.

ご存じの方,ご教示賜れば幸いです.

山下

文献参照の方法

- ueki ichiro の投稿
Windows10の富士通のノートパソコンさに美文書作成入門第8版のCDからTEXをインストールして使っています。文献参照の方法として.tex ファイルの末尾に \begin{thebibliography}{99} \bibitem {Nishimura} 著者名、発行年、文献名 ... ..... \end{thebibliography} と書いていますが、この方法では美文書作成入門第8版の179ページにあるように最初のタイプセットでは「参照番号の出力されるべきところが [?] のように」なり、もう一度タイプセットしてはじめて正しい表示になります。これを一回のタイプセットで済ませる方法は無いでしょうか。    植木

TeXLive2023におけるotf.sty(uplatex)で\CID{}表記が使えない

- takamasa 23 の投稿

cloudlatexを使用しております。 cloudlatexではuplatexのコンパイラに安定版(TeXLive2022のもの)と開発版(TeXLive 2023のもの)を使い分けられるのですが,2023のものをコンパイラに選択すると以下のような, texファイルがコンパイルできません。2022のものではコンパイルできます。 不具合または仕様変更でしょうか?

\documentclass[uplatex]{jlreq}
\usepackage{otf}
\begin{document}
\CID{8705}
\end{document}

なお, \UTF{9AD9}とした場合には出力されます。