スキップしてメイン コンテンツに移動

投稿

ラベル(TeXLive)が付いた投稿を表示しています

TeX Live 2025 で upLaTeX + glossaries.sty を動かす

TeX Live 2024 の最終版で glossaries.sty に大きな変更があったようで、TeX Live 2025 版の uplatex コマンドでタイプセットを行うと (c:/texlive/2025/texmf-dist/tex/latex/datatool/datatool-utf8.ldf) ! Use of \??? doesn't match its definition. <argument> \??? ! LaTeX Error: Character code ##1 too large in \x{##2} regex. l.2220 } というエラーが表示されるようになりました。同様の問題が下記のサイトでも確認されているようです。 TeX Live 2024 で pLaTeX + glossaries.sty が動かない 原因は glossaries.sty が内部で読み込む datatool-base.sty の中の LaTeX3 の正規表現処理が upLaTeX で上手く扱えないことにあるようでした。エラーメッセージは LaTeX3(expl3) の l3regex が出しているようです。 こちらのサイトにあるコードをコピペしてみると、今度は (c:/texlive/2025/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzli brarypositioning.code.tex)) ! Argument of \__char_generate_aux:w has an extra }. <inserted text> \par l.32 \makeindex というエラーが表示されました。今度は修正した部分が expl3 を利用している Tikz のほうで問題を起こしてしまうようです。 解決の糸口が見えないため TeX Live 2024 の最終版よりも前の環境を使って誤魔化していましたが、最近 ChatGPT に尋ねると問題の回避策を提案してくれたので記録しておきます。 datatool-base.sty の先頭付近で、いま使っているエ...

OpenCv-PythonとpdfLaTeXで自炊pdfファイルの位置調整

この記事は TeX & LaTeX Advent Calendar 2021 の11日目の記事です. 10日目は t_kemmochi さん,12日目は yukishita さんです.   動機  書籍の自炊にブックエッジスキャナーの AvisionのFB2280E を利用しています。書籍を裁断せずに1ページずつスキャンを行うため、本の開き具合などの要因で本の序盤、中盤、終盤で得られるスキャン画像の位置ずれが大きくなります。以前からpdfLaTeXを利用して位置調整をしていたのですが、OpenCvを利用して自動化できそうだったので試してみました。 やること 本記事では、pdf化した文書画像の版面(文字の印刷された部分の意味で使います)を半自動的に計算してpdfの画像の位置調整をするために、OpenCvとpdfLaTeXを利用する方法を解説します。手順としては Pythonの画像認識用ライブラリであるOpenCvを利用して版面を計算する。 テンプレートエンジンライブラリのJinja2を使って画像のバウンディングボックスなどを記述したLaTeXファイルを作成する。 pdfLaTeXでpdfを読み込み、位置の調整されたpdfを作成する。 という流れになっています。作業環境としては、 Visual Studio CodeをRemove - WSL拡張機能と併用 しています。PythonやそのライブラリはWSL上のUbuntuにインストールし、他にもpdfファイルを他のファイル形式にするためにpoppler-utilsなんかもインストールしました。 参考記事 OpenCvを利用した文書画像のレイアウト解析については ブログSomething Like Programming内の記事 Document Layout Analysis githubリポジトリ rbaguila/document-layout-analysis OpenCv-Pythonチュートリアル を参考にしました。 pdfLaTeXがpdf加工に使えるという話と、pdfpagesパッケージの存在は doraTeXさんのブログTeX Alchemist Onlineの記事 pdfTeX による見開きPDFの結合・分割 で知ったように思います。 画像pdfをpdfpagesで取り込む ま...

bxjsclsの不具合?

bxjsbook.clsで数学の勉強ノートを取っているのですが,目次に表示されるページ番号が左揃いで3桁までを想定しているらしく,ページ数が1000を超えると一桁はみ出て見た目が残念なことになります. どうにかならないものか. 追記:2019/03/01:TeX QAの 「 ページ数が1000ページを越えた目次について」 で解決策が提示されています.

bxjsbook.clsを試してみた。

BXjsclsのバージョン1.0が出たそうです。 BXjsclsパッケージ (GitHub) BXjscls も新しくなった (マクロツイーター) すでにCTANのファイルが更新されていて、texlive2015でアップデートをかければ導入されるようです。バージョンが1.0になったことで、これまで無かったjsbook.clsに対応するクラスファイルbxjsbook.clsなどが追加されたので、早速試してみました。 私はこれまで主にjsbook.clsを使って数学ノートの作成をしていたのですが、jsbookクラスファイルは1行に40文字が基準となっていて、フォントサイズを変更すると余白が大きくなりすぎると感じていました。 例えばplatexで \documentclass [ dvipdfmx,b5paper,10pt ]{ jsbook } でタイプセットすれば次のようなレイアウトになります。 いつもはこの状態で作成しています。 これを \documentclass [ dvipdfmx,b5paper,9pt ]{ jsbook } にしてタイプセットすると となります。この左側の余白が気になるので、奥村先生の pLaTeX2e 新ドキュメントクラス にあるように\textwidthやマージンを調整して \documentclass [ dvipdfmx,b5paper,9pt ]{ jsbook } \setlength {\textwidth}{\fullwidth} \setlength {\evensidemargin }{\oddsidemargin} とすれば今度は となるので、幅が広すぎると感じてしまうわけです。そこで短絡的に\textwidthを少しいじって \documentclass [ dvipdfmx,b5paper,9pt ]{ jsbook } \setlength {\textwidth}{0.9\fullwidth} \setlength {\evensidemargin }{\oddsidemargin} と変更すると、 となりレイアウトが崩れます。こんな感じで、jsbookについてはレイアウトの調整が面倒だなという印象が出来てしまいきちんと調べること...

Ubuntu 14.04でのEmacsの設定(mozc, YaTeX, SyncTeX, フルスクリーン)

最近MacBook Air (mid 2012)の外付けSSDにUbuntu 14.04をインストールしたので,久しぶりに設定をゴニョゴニョしております. Emacsの日本語入力では,以前はAnthyを使っていましたが,TeXフォーラムの「 emacs, mozc, TeX入力 」を見て,mozcでもドル記号を入力したときに自動で直接入力に切り替えることが出来そうだったので設定をしてみました.「~/.emacs.d/init.el」に次のように設定しています. ;;; 言語環境の指定 ;;mozcの設定 (require 'mozc) (set-language-environment "Japanese") (setq default-input-method "japanese-mozc") ;;yatex-modeでドル記号を入力したときに直接入力に切り替える。 (define-key mozc-mode-map "$" 'YaTeX-insert-dollar-or-mozc-insert) (defun YaTeX-insert-dollar-or-mozc-insert () (interactive) (if (eq major-mode 'yatex-mode) (YaTeX-insert-dollar) (mozc-handle-event ?$))) その他にも,SyncTeXの設定がしばらく見ない間に変わっていたので,TeXWikiを参考に設定も行いました. 「 synctex-for-evince-yatex.el 」をダウンロードしてemacsが読める場所に置きます. init.elには次のように書き込んでおきます. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; synctex関連 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;inverse search (require 'dbus) (defun un-urlify (fname-or-url) ...

LuaTeX-jaでギリシャ文字のイタリック体を表示する.

先日LuaTeX-jaでギリシャ文字のイタリック体が表示されないと書きましたが, 本日 LuaTeX-jaの使い方 を参考にフォントのプリセット設定を変更したところ無事ギリシャ文字のイタリック体も表示されました. fontspec パッケージによる数式フォント置換が不都合な場合は, \usepackage[no-math]{fontspec} \usepackage[...]{luatexja-preset}  のようにしてください. という記述があったので,次のようなファイルをタイプセットしてみました. \documentclass{ltjsarticle} \usepackage{luatexja} \usepackage{amsmath,amssymb,mathrsfs} \usepackage[no-math]{fontspec} \usepackage[hiragino-pro]{luatexja-preset} \begin{document} あいうえお $\mathit{\Delta}$, $\Delta$ $\mathit{\Psi}$, $\Psi$, $A$, $\mathit{A}$, $I$, $\mathit{I}$, $B$, $\mathit{B}$ \end{document} ギリシャ文字のイタリック体もきちんと表示されています.

LuaTeX-jaではギリシャ文字のイタリック体が表示されない件

表題の通りです. LuaTeX-jaの使い方 を参照してフォントのプリセット設定を行うと生じる現象のようです.フォントの設定を行っていない場合はきちんと表示されます. 使っている環境はMacTeX2013です. まずは欧文のみ,クラスファイルはarticleの場合 \documentclass{article} \usepackage{amsmath,amssymb,mathrsfs} \begin{document} $\mathit{\Delta}$, $\Delta$ $\mathit{\Psi}$, $\Psi$, $A$, $\mathit{A}$, $I$, $\mathit{I}$, $B$, $\mathit{B}$ \end{document} ギリシャ文字のイタリック体もきちんと表示されています.アルファベットはイタリック体との違いが微妙ですね. 次に日本語+欧文で,クラスファイルはltjsarticleの場合 \documentclass{ltjsarticle} \usepackage{luatexja} \usepackage{amsmath,amssymb,mathrsfs} \begin{document} あいうえお $\mathit{\Delta}$, $\Delta$ $\mathit{\Psi}$, $\Psi$, $A$, $\mathit{A}$, $I$, $\mathit{I}$, $B$, $\mathit{B}$ \end{document} ギリシャ文字のイタリック体は表示されていますが,埋め込まれていない和文フォントがゴシック体で表示されてしまいます. 最後にフォントの埋め込み設定を行った場合.クラスファイルはltjsarticleです. \documentclass{ltjsarticle} \usepackage{luatexja} \usepackage{amsmath,amssymb,mathrsfs} \usepackage[hiragino-pro]{luatexja-preset} \begin{document} あいうえお $\mathit{\Delta}$, $\Delta$ $\mathit{\Psi}$, $\Psi$, $A$, $\math...

定理環境の修飾 mdframed.sty

追記:2016/04/19 定理環境をmdframedから tcolorboxを使ったものに変更しました。 LaTeXの話です.定理環境の見栄えを変更するために,mdframed.styを用いています. mdframed.styの機能はpdfTeXなどでタイプセットすることを前提にしているようで,platexではマニュアルにある機能を十分に活かすことが出来ません. 2014/05/01追記:tikzパッケージを読み込む前に,graphicxパッケージをdvipdfmxのオプションを付けて読み込むことで,platex+dvipdfmxでも以下のような例は再現出来ました。 こちら を参照。 LuaTeXはpdfTeXの後継であり,この日本語対応LuaTeX-jaが開発されています.これを使えばmdframed.styの機能を十分に使えるのではないかと思い試してみました.LuaTeX-jaはTeXLive2013には標準で含まれており,lualatexコマンドを使ってタイプセットします. mdframed.styのマニュアルにあるものを借用して,次のようなファイルををタイプセットしてみました. \documentclass[a4paper]{ltjsarticle} \usepackage{luatexja} \usepackage{amsmath,amssymb,mathrsfs} \usepackage{etoolbox} \usepackage{tikz} \usepackage{mdframed} \usepackage{luatexja-fontspec} \defaultjfontfeatures{Scale=0.92487} % この行がない場合,luatexja-fontspec は % 和文フォントの大きさを欧文フォントの 0.962212 倍 % ([lt]jclasses でのデフォルト設定と同じ)で定義する. % 上の指定は,[lt]jsclasses における欧文 10pt: 和文 13Q % という比率に合わせるためのもの. \setmainfont[Ligatures=TeX]{TeXGyreTermes} \setsansfont[Ligatures=TeX]{TeXGyreHeros} \s...

mdframed.styで定理環境を装飾する

追記:2016/05/21 定理環境をmdframed.styから tcolorbox.styに変更しました 。 LaTeXにおいて定理環境を枠で囲む方法は色々あるようですが、最近はthmtools.styを使っていました。ただ、枠線が通常の定理環境の外側に引かれるらしく、overfull \hboxの警告が大量に出ることや、定理環境がページを跨ぐことが出来ずレイアウトが大きく崩れることがあるのが気になっていました。 最近mdframed.styなるパッケージがあることを知り、少しずつ試していたものの、pstrickやtikzを使って描画するオプションをつけるとエラーが発生して使い物にならないためしばらく放置していました。どうやらpdftexを使ってタイプセットすることを前提としている節があり、日本語platex環境ではdefaultのオプション以外は使えないようです。 今現在試している自分の設定を晒しておきます。mdframed.styはMacTeX2012やTeXLive2012には標準で含まれているはずです。プリアンブルに以下を記述しておきます。 \usepackage{amsthm} \usepackage{xcolor} \usepackage{mdframed} %複数ページをまたぐフレーム \theoremstyle{definition} \mdfdefinestyle{theoremstyle}{% linecolor=gray!40,linewidth=.5pt,% backgroundcolor=gray!10, skipabove=8pt, skipbelow=5pt, innerleftmargin=7pt, innerrightmargin=7pt, frametitlerule=true,% frametitlerulewidth=.5pt, frametitlebackgroundcolor=gray!15, frametitleaboveskip=0pt, frametitlebelowskip=0pt, innertopmargin=.4\baselineskip, innerbottommargin=.4\baselineskip, shadow=true,shadowsize=3pt,shadowcolor=b...