TeX Alchemist Online

TeX を使って化学のお仕事をしています。

美文書第7版の TeX 環境で dvips + ps2pdf を使うには

およそ3年ごとに改訂が続けられている『LaTeX2e 美文書作成入門』は,今年1月にとうとう改訂第7版が出版されました。

[改訂第7版]LaTeX2ε美文書作成入門

[改訂第7版]LaTeX2ε美文書作成入門

第6版に引き続き,第7版でもMac用セットアップツール開発に携わらせていただきました。本記事はそのサポート情報を提供します。(美文書ユーザのみならず,2017年3月9日以前に MacTeX 2016 のインストール/ヒラギノ設定をしたユーザにも同じ問題が発生します。)

続きを読む

ゴシックのローマ数字にヒゲを付ける

f:id:doraTeX:20161206113714p:plain

この記事は TeX & LaTeX Advent Calendar 2016 の8日目の記事です。 2日目6日目に続く今年3回目のエントリーとなります(スミマセン)。 7日目はaminophenさんでした。 9日目はyuracoさんです。

ローマ数字 Ⅲ はアイアイアイか組文字か

昨年の TeX & LaTeX Advent Calendar 2015 の3日目の記事「今さら人に聞けないローマ数字とその組み方」や『LaTeX2e 美文書作成入門』などで繰り返し言及されているように,LaTeX でローマ数字を組む場合,半角アルファベットを単に並べて,I(アイ),II(アイアイ),III(アイアイアイ),IV(アイブイ),…… のように書くのが正しい組み方です。「Ⅲ」のような全角(組文字)のローマ数字は用いるべきでないとされています。

しかし,本田さんが TeX Q&A 237649355 で述べておられるように,実際の現場では,「組文字のローマ数字(時計文字)でなければ受け入れてもらえない」場面が多々あります。(また,特に縦書きのときには,全角ローマ数字が馴染みます。)

新聞社におけるローマ数字の取り扱いについては,次の朝日新聞の記事が参考になります。

www.asahi.com

どうしても LaTeX で組文字ローマ数字を使いたいなら

従来の pLaTeX では,JIS X 0208 までしか扱えず,組文字ローマ字は「機種依存文字」(環境依存文字)という扱いでしたので,「組文字のローマ数字を出力する」というのは多少厄介な課題でした(otfパッケージを使えば可能)。

それに対し,今時の upLaTeX の場合,Unicode に含まれる Ⅲ (U+2162 ROMAN NUMERAL THREE) のような全角ローマ数字をソース中にそのまま入力すれば,普通に出力できます。ですから,「正しい組み方はどうであるか」という問題はさておき,もし「どうしても組文字のローマ数字を出力したい」というのであれば,それに技術的困難はなくなりました。

ゴシック体のローマ数字にヒゲは付くべきか?

続きを読む

(u)pTeX における和文多書体の実現 〜Sierraの全和文フォント出力を例として〜

f:id:doraTeX:20161204101316p:plain

この記事は TeX & LaTeX Advent Calendar 2016 の6日目の記事です。 2日目に続く今年2回目のエントリーとなります。 5日目はaminophenさんでした。 7日目もaminophenさんです。

前記事では,TeX Live 2016 の LuaTeX-ja を使って,Sierra の全和文フォントを同時出力する例を示しました

doratex.hatenablog.jp

また,前記事の最後には,「専用の tfm/vf を用意すれば (u)pTeX + dvipdfmx のワークフローでも Sierra の全和文フォントを同時出力できる」と述べました

本記事では,専用の tfm/vf を用意して (u)pTeX で和文多書体を実現するための具体的な手順を説明します。 この手順は,Macユーザでなくても,(u)pTeX で和文多書体を実現したいと考える人に参考になるでしょう。

さらに本記事の後半では,この方法を応用し,和文フォントを簡単に追加するためのパッケージ,そして Sierra の全和文フォントを一斉使用するためのパッケージを作成してゆきます。本記事で作成したパッケージを利用すれば,ライトユーザでも比較的手軽に (u)pTeX での和文多書体環境を実現することができるようになるはずです。

目次

続きを読む

Sierra 時代の TeX Live 環境

f:id:doraTeX:20161202171615p:plain

この記事は TeX & LaTeX Advent Calendar 2016 の2日目の記事です。 1日目はzr_tex8rさんでした。 3日目はhak7a3さんです。

本記事では,9月にリリースされた macOS Sierra (10.12) について,El Capitan (10.11) からの変更点,および Sierra の和文フォントを TeX Live で最大限活用する方法について解説します。

目次

続きを読む

macOS Sierra (10.12) で Photoshop CS6 / Illustrator CS6 を使う

f:id:doraTeX:20160921051517p:plain:w400

追記:検証結果

追記(9/21):本記事の方法で,Photoshop / Illustrator の CS 3~6 が全て Sierra で使用可能になる模様です。

追記(9/22):本記事の方法に基づいて,CS6 Master Collection の全アプリについて動作確認をしてくださった方がいらっしゃいました。 www.hamidasiblog.com

この検証結果によると,Flash 関係以外の CS6 アプリは基本的に全て動作するそうです。

Adobe CS6 Master Collection

○ Photoshop CS6

○ Illustrator CS6

○ InDesign® CS6

○ Acrobat® X Pro

○ Dreamweaver® CS6

○ Fireworks® CS6

○ Adobe Premiere® Pro CS6

○ After Effects® CS6

○ Adobe Audition® CS6

○ SpeedGrade™ CS6

○ Prelude™ CS6

○ Encore® CS6

○ Bridge CS6

○ Media Encoder CS6

× Flash® Professional CS6

× Flash Builder® 4.6 Premium Edition

× eclipse

Adobe Photoshop Lightroom 5

○ Adobe Photoshop Lightroom 5.71

本文

本日,macOS Sierra (10.12) がリリースされました。

詳細は次の記事にあるように,Sierra では,Java 6 のサポート終了に伴い,Adobe CS6 が起動できなくなっています。

www.itmedia.co.jp

applech2.com

blogs.adobe.com

helpx.adobe.com

実際,旧OSで CS6 をインストールした状態で Sierra にアップグレードし,CS6 を起動しようとすると,次のような画面が出ます。

f:id:doraTeX:20160921043159p:plain:w400

そして,Apple が Java 6 のサポートを 10.11 (El Capitan) を最後に打ち切ったため,10.12 (Sierra) では CS6 を起動することができなくなりました。 *1

実は Java は必要ない!

しかし実は,少なくとも Photoshop と Illustrator に関しては,動作に Java 6 は使っておらず,単に「起動時に Java 6 が存在しているかどうかのチェックをかけている」だけのようです。具体的には,起動時に次の2つのディレクトリが存在していることをチェックしているだけのようです。

  • /System/Library/Java/JavaVirtualMachines/1.6.0.jdk
  • /System/Library/Java/Support/Deploy.bundle

よって,これらのディレクトリ(中身は空でOK)を作成するだけで,Java 6 がインストールされていると偽装することに成功し,Photoshop CS6 / Illustrator CS6 を起動・動作させることができました。Photoshop や Illustrator の全機能をテストしたわけではありませんが,今のところ特に問題なく使えています。*2

Rootless の壁

ただし,これらのディレクトリは /System/Library 下にあるため,通常は Rootless (SIP: System Integrity Protection) による制約がかかり,管理者権限をもってしても,ここにディレクトリを新規作成することはできません。

そこで,一時的に Rootless を無効にし,当該ディレクトリを作成した後に,再び Rootless を有効にする必要があります。

作業手順

*1:このダイアログの「詳しい情報…」からダウンロードできる Java for OS X 2015-001 は,Sierra ではサポートされていないものの,今のところ強行してインストールすることは可能なようです。そうすることで CS6 を起動することもできるようです。しかし,もはやメンテナンスされておらず脆弱性の巣窟となっている古い Java 6 をインストールすることは,お使いの Mac をセキュリティリスクに晒すことになりますので,推奨できません。本記事で紹介している「フォルダ偽装法」の方が相対的に安全なはずです。

*2:なぜ不必要な Java 6 の存在チェックをしているのかについては,おそらく,Flash CS6 が Java 6 に依存しているため,Creative Suite 全体としての連携動作を保証する目的で,Suite 全体で起動時のJavaチェックを行っているだろうと推測しています。

続きを読む

previewパッケージと \mag

前記事に引き続き,\mag の話です。

追記(2016/09/06):本記事で述べた「開発版 jsclasses」は,正式版としてリリースされ TeX Live 2016 のレポジトリに収録されました。

前記事で述べたように,開発版 jsclasses に搭載されている nomag または nomag* オプションによって \mag を使用しない版面設計を行えば,\mag に対応しないパッケージを正しく使用することができるようになります。

一方,パッケージの中身に手を入れる,開発元に意見するなどして,パッケージを \mag に対応させる,という方向性の解決策もあり得ます。最近では,graphicx パッケージの改修によって \mag 使用時にページサイズ設定がおかしくなる事案が発生しました。graphicx パッケージのバージョンアップに伴うdvips.defdvipdfmx.def の修正によって,デフォルトで用紙サイズ設定の special が発行されるようになったのですが,それが \mag の使用を想定していないがために,jsclasses で 10pt 以外を使用すると用紙サイズ設定がおかしくなるという問題でした。この問題は,現在の最新版 graphicx パッケージでは修正されています。

(u)pLaTeX + preview パッケージ + dvipdfmx での \mag 使用

以前の記事で,図版サイズギリギリにPDFページサイズを切り詰める preview パッケージを紹介しました。

doratex.hatenablog.jp

この記事で紹介したように,preview パッケージはそのままでは dvipdfmx に対応していないものの,ZRさん作のドライバファイル prdvipdfmx.def を手に入れれば, (u)pLaTeX + dvipdfmx のワークフローで preview パッケージが使えるようになります。

ただし,preview パッケージ自体は \mag に対応しているものの,この prdvipdfmx.def は \mag に対応していないようです。そこで,\mag を使用している際にも正しく機能するよう修正を試みました。

続きを読む

jsclasses 開発版における \mag の扱い

追記(2016/09/06):本記事で述べた「開発版 jsclasses」は,正式版としてリリースされ TeX Live 2016 のレポジトリに収録されました。

jsclasses では,ドキュメントクラスオプションで 10pt 以外の値が指定された場合,10pt で組版したものを \mag で拡大縮小することで版面を設計しています。 ただし,このように \mag を版面設計に積極的に使用するケースは世界的には珍しく,実際 TeX Live 2016 の LuaTeX では PDF出力モードでの \mag が廃止されてしまいました。

また,\mag の使用があまり一般的でないため,世の中には「\mag の使用を想定していないため \mag を指定すると誤動作する」というパッケージが時々存在します。

そうしたこともあって,開発版の jsclasses では,\mag を使用しない nomag というオプションが増設されました。 デフォルトはこれまで通り \mag を使う usemag というオプションが有効ですが,nomag を指定すると,\mag を使わずに実際のフォントサイズで組版されるようになります。

これにより,\hspace{1cm}\hspace{1truecm} が一致するようになります。

\mag を使わないことによる副作用とその対処

ただし,nomag を指定すると,Computer Modern (Latin Modern) のオプティカルサイズによる字形変化が起こり,組版結果の見た目の雰囲気が大きく変わってしまいます。

そこで,\mag を使わない場合も,10pt 以外の Computer Modern として,cmr8 や cmr12 などではなく cmr10 を拡大縮小したものを用いるよう NFSS にパッチを当てて用いるのが nomag* オプションです。

開発版 jsclasses を用いた実験

続きを読む

鉄緑会 東大問題集シリーズ 最新刊発売!

先週,鉄緑会 東大問題集シリーズの最新刊が発売となりました。昨年は,11月にこのシリーズに新規科目として物理が加わりました。今年は,物理も含めて4科目が7月に一斉発売の運びとなりました。

2017年度用 鉄緑会東大数学問題集 資料・問題篇/解答篇 2007‐2016

2017年度用 鉄緑会東大数学問題集 資料・問題篇/解答篇 2007‐2016

2017年度用 鉄緑会東大古典問題集 資料・問題篇/解答篇 2007‐2016

2017年度用 鉄緑会東大古典問題集 資料・問題篇/解答篇 2007‐2016

2017年度用 鉄緑会東大化学問題集 資料・問題篇/解答篇 2007‐2016

2017年度用 鉄緑会東大化学問題集 資料・問題篇/解答篇 2007‐2016

2017年度用 鉄緑会東大物理問題集 資料・問題篇/解答篇 2007‐2016

2017年度用 鉄緑会東大物理問題集 資料・問題篇/解答篇 2007‐2016

さて,今年のTeX組版的な注目点としては,物理の章扉を TikZ で全面的に作り直した点が挙げられます。

ページサンプル

f:id:doraTeX:20160712120342p:plain

このページは,Illustrator などのグラフィックソフトは一切使わずに,LaTeX + TikZ のみで作成しています。

続きを読む

和文ゴーストによる \ruby の改良

追記 (2016/08/16)

本記事で解説した和文ゴーストによる \ruby の改良が,jsclasses 開発版の okumacro パッケージに取り込まれました! github.com

追記 (2016/09/06)

追記(2016/09/06):本記事で解説した \ruby の改修が採用された okumacro パッケージが,jsclasses の一部として TeX Live 2016 のレポジトリに収録されました。本記事で取り上げた問題点は,最新版(2016/08/16版以降)の okumacro パッケージでは既に解決済みとなります。

したがって,以下の本文は,2015年以前の okumacro パッケージの \ruby に関する解説になります。




[改訂第6版]LaTeX2e 美文書作成入門の付録Bには,「パス」の説明があります。

f:id:doraTeX:20160613011823p:plain

よく見ると,さりげなくすごい人名が登場しています。

f:id:doraTeX:20160613011836p:plain

というわけで,()() さんに敬意を表して,今日は pTeX によるルビの話です。

続きを読む

【改訂版】pdfTeX による見開きPDFの結合・分割

一昨日の記事「pdfTeX による見開きPDFの結合・分割」を執筆した後,あべのりさん (id:abenori) のご指摘により,より改良できることに気づきました。

そこで,このアイデアをもとに改訂版を作成しました。この方法ならば /Rotate による回転情報が付いているPDFにも問題なく対応できますし,TeX ソースもスッキリして読みやすくてよいですね。

前回のソースも,pdfTeX を用いたPDFのバウンディングボックス読み取り処理のサンプルコードとしての価値はあるかもしれないので,前回の記事は残したまま,改訂版を新記事としてアップしておきます。(また,記事末尾の /Rotate 除去法のリンク集も,PDF芸人には存在価値があるかもしれません。)

目次

続きを読む