TeX Alchemist Online

TeX のこと,フォントのこと,Mac のこと

TeX

LaTeX文書内から外部PDFファイルのページ数を取得する

LaTeX文書内から,外部PDFファイルのページ数を取得したい状況はよくあります。例えば,「外部PDFファイルの全ページにわたって○○を繰り返す」というような状況のとき,ループ回数を決めるにはそのページ数を取得せねばなりません。 ここでは, \newcount\PD…

Luaで外部コマンドの標準出力を取り込むときの注意点

前記事のちょとした補足です。 doratex.hatenablog.jp \begin{luacode*} function readFromPipe(cmd) local f = assert(io.popen(cmd, 'r')) local s = assert(f:read('*a')) f:close() return s end \end{luacode*} とした場合,コマンド出力結果の最後に改…

英単語から発音記号を自動出力する

この記事は TeX & LaTeX Advent Calendar 2022 の13日目の記事です。12日目はzr_tex8rさんでした。 13日目は yi_chemist さんです。 TeX Forumで 発音記号&アクセントの自動出力 というスレッドが立っており,50件以上のコメントが付く長大スレッドとなって…

upLaTeX文書の句読点を置き換える

upLaTeXでの文書作成時,ソースへのテンマル[、。]での入力をカンマピリオド[,.] での出力に置換しようと頑張っておられる記事がありました。 qiita.com しかし,U+3001 や U+3002 が含まれるUnicodeブロックをまるごと欧文扱い(kcatcode=15)にすると…

macOS の Preview.app での編集結果をTeX文書に反映させる(CUI編)

macOS 標準の Preview.app はとても強力です。「プレビュー」の名に反して,PDFを色々と編集できます。 ページの追加・削除・順序交換・回転 他のPDFファイルの差し込み ページのトリミング テキストの書き込み テキストをハイライト(蛍光ペンで塗る),下…

TeX言語で foreach する (2)

TeX

前記事で実装した \FOREACH には,次のような欠点がありました。 欠点 この実装の場合,ループの実装に \loop ~ \repeat を使っているので,ネスト(多重ループ)ができません。{\loop ~ \repeat} とブレースでくくればネスト可能な実装にも変更できますが…

TeX言語で foreach する (1)

TeX

多くのプログラミング言語で,(疑似コードでいうところの) for i in 1...10 do { print(i) } のような foreach 文があります。これを同様の繰り返しを LaTeX で実現するにはどうすればよいでしょうか。 pgffor パッケージの \foreach TeX Live に標準で含…

Overleaf で BXcoloremoji パッケージを用いて絵文字を出力する

Overleaf に BXcoloremoji パッケージを導入し,日本語対応 LaTeX エンジンでコンパイルして,絵文字入りの和文文書を作成してみましょう。(Overleaf のエディタ上にはBMP外絵文字の直接入力ができないこともあり,ちょっと面倒です。) 準備:Overleaf で…

mylatexformat を用いてコンパイル時間を短縮しよう!

TeX

この記事は TeX & LaTeX Advent Calendar 2021 の6日目の記事です。5日目も 自分の記事でした。8日目は zr_tex8r さんです。 TikZ を用いて,しかも \usetikzlibrary を用いて様々なライブラリをロードしまくったりすると,コンパイル時間がどんどん長くなり…

品詞記号出力マクロを設計しよう

この記事は TeX & LaTeX Advent Calendar 2021 の5日目の記事です。4日目は h20y6m さんでした。6日目も自分の記事です。 今回は,英和辞典とか単語帳とかでよく見かける,次のような品詞記号を出力するマクロを設計してみましょう。 要は単に「文字を角丸長…

BXcoloremoji パッケージで最新の Apple Color Emoji を使う

歴史 coloremoji パッケージ BXcoloremoji パッケージ 最新の macOS 12 Monterey の Apple Color Emoji を使うには 1. BXcoloremoji パッケージをインストール 2. twemoji で動作確認 サンプルソース コンパイル結果 3. Apple Color Emoji のグリフを抽出す…

帳票生成ツールとしての LaTeX の活用

この記事は TeX & LaTeX Advent Calendar 2020 の5日目の記事です。4日目は wtsnjp さんでした。 6日目は kn1cht さんです。 【追記】 本記事を受けて,ZRさんが key-value型の引数指定をもつユーザ命令を(LaTeXレベルで)定義するための bxkvcmd パッケー…

TikZ でベン図をたくさん描いてみよう!

この記事は TeX & LaTeX Advent Calendar 2019 の11日目の記事です。10日目は mod_poppo さんでした。 12日目は Mahito TANNO さんです。 今日は TikZ を使ってベン図を描いてみます。 【目次】 2 個のベン図 完成図 ソース 工夫 3 個のベン図 完成図 ソース…

xfakebold.sty を (u)pLaTeX + dvipdfmx に対応させてみた

現在,TeX & LaTeX Advent Calendar 2019 が開催中です。 adventar.org その2日目の記事が,t_kemmochi さんによる xfakebold.sty の紹介でした。 qiita.com この記事で紹介されている xfakebold.sty は,LuaLaTeX または pdfLaTeXのみで利用可能 とされて…

Overleaf + upLaTeX + Noto CJK JP フォント + 源柔ゴシック による和文多書体の実現

前回の記事では, Overleaf で XeLaTeX エンジンを使い Overleaf に用意されている高品質なフリー和文フォント Noto CJK JP を使う ことで,和文多書体を実現する方法を示しました。 doratex.hatenablog.jp 今回は,Overleaf 上で upLaTeX エンジンを使って…

Overleaf + XeLaTeX + Noto CJK JP フォントによる和文多書体の実現

この記事は旧記事をより楽な手順へと更新した改訂版となります。 卒論シーズンになり,LaTeX と格闘しておられる方も多いのではないでしょうか。昨今は LaTeX をローカル環境に構築しなくても,オンラインのクラウド環境で LaTeX 環境が使えるようになってい…

Overleaf + XeLaTeX + 原ノ味フォントによる和文多書体の実現

この記事の執筆後,同じことをより簡単に実現する方法が見つかりました。改訂版記事が「Overleaf + XeLaTeX + Noto CJK JP フォントによる和文多書体の実現」として公開されています。 卒論シーズンになり,LaTeX と格闘しておられる方も多いのではないでし…

「サイゼリヤで1000円あれば最大何kcal摂れるのか」をTeX言語で計算する ~TeX言語で動的計画法(DP)~

TeX

最近,巷では「サイゼリヤで1000円あれば最大何kcal摂れるのか」を計算するのが流行っているようです。 「サイゼリヤで1000円あれば最大何kcal摂れるのか」を量子アニーリング計算(Wildqat)で解いてみた。 - Qiita 「サイゼリヤで1000円あれば最大何kcal摂れ…

MacTeX 2019 のインストール&日本語環境構築法

(MacTeX 付属の mactex.jpg より) 一昨日,とうとう TeX Live 2019 がリリースされました。TeX Live 2019 の新機能・仕様変更の詳細は,次の2つの記事に網羅的にまとまっていますので,そちらをご参照ください。 acetaminophen.hatenablog.com acetaminoph…

令和時代の TeX Live

令和元年あけましておめでとうございます。新元号「令和」を迎えるにあたり,文字コード界やTeX界でも昨今動きが慌ただしいです。 「㍾」「㍽」「㍼」「㍻」のような組文字の「令和」を U+32FF に追加した Unicode 12.1.0 のリリース。 #新元号 #令和 の発表…

TeX 文書中で日本語を含むQRコードを動的生成する(macOS環境下,shell-escapeあり)

昨日,Python ワンライナーを用いて macOS のデフォルト状態でコマンドラインからQRコード画像を生成する方法を紹介しました。 doratex.hatenablog.jp この記事について,TeX界の大御所の目には,隠れた意図を軽々と見抜かれてしまいました 気をつけろ!! mac…

TeX で UUID を生成する

本日リリースされた TeX Live 2019 において,XeTeX に擬似乱数生成関連のプリミティブ \uniformdeviate‌ / \normaldeviate‌ / \randomseed / \setrandomseed が追加され,主要 TeX エンジンに乱数生成プリミティブが出揃うこととなりました。乱数生成プリミ…

MacTeX 2018 のインストール&日本語環境構築法【Mojave対応更新版】

この記事は旧バージョンの記事です。新バージョンの記事が「MacTeX 2019 のインストール&日本語環境構築法」として公開されています。 doratex.hatenablog.jp (MacTeX 付属の mactex.jpg より) 本記事は昨年の記事の Mojave 対応改訂版となります。 dorat…

TeX で乱数を使う (4) ~ 2次元シャッフル

前々回の記事 TeX で乱数を使う (2) では,「インプットした問題ストックからランダムな順序で出題する」というお題を扱いました。前回の記事 TeX で乱数を使う (3) では,「語順整序問題における語順をランダムに並べ替え,逆置換を用いてその正解も自動表…

TeX で乱数を使う (3) ~ 逆置換の活用

前回の記事で作成した randomshuffle パッケージは,n次対称群 $\mathfrak{S}_n$ の元 $\sigma$ をランダムに生成したとき,同時にその逆置換 $\sigma^{-1}$ も生成する仕様になっていました。逆置換はどういう場面で役立つのでしょうか。 MathJax.Hub.Confi…

TeX で乱数を使う (2) ~ ランダムなシャッフル

前回の記事では,TeX で乱数を生成するいろいろな方法を調べ,その使用例としてモンテカルロ・シミュレーションを見ました。本記事では,実際の組版の場面においてより実用的と思われる乱数の活用例を見てみましょう。 教材作成の仕事をしていると,周囲でし…

TeX で乱数を使う

この記事は TeX & LaTeX Advent Calendar 2018 の19日目の記事です。18日目は keisuke495500 さんでした。 20日目は isaribi_saitoh さんです。 本記事では,TeX で乱数を取り扱う方法,および乱数の活用法を解説します。 線形合同法による擬似乱数生成 seed…

連番のQRコードを大量生成する

「顧客ID・請求コード・受験番号といった番号や記号をQRコードにエンコードして用紙に印刷しておき,相手ごとに個別化された用紙を配りたい」という状況はよく生じると思います。 それをLaTeXで実現する場合の一例を示します。 また,LaTeX初心者の人にとっ…

Overleaf v2 で日本語を使用する方法

この記事は,過去の記事「Overleaf で日本語を使用する方法」を,新サービス Overleaf v2 仕様にアップデートしたものです。 Overleaf(旧writeLaTeX) は,オンラインで使える LaTeX 原稿執筆環境として非常に便利です。自分のマシン内に TeX 環境を構築す…

MacTeX 2018 のインストール&日本語環境構築法

この記事は旧バージョンの記事です。新バージョンの記事が「MacTeX 2019 のインストール&日本語環境構築法」として公開されています。 doratex.hatenablog.jp (MacTeX 付属の mactex.jpg より) 本記事の公開の半年後,macOS 10.14 Mojave がリリースされ…