2024/09/30(月)LaTeXで空白記号を出力する
半角スペースを明示する必要があったので空白記号を使おうとして,探したが見つからず…….
『LaTeX 空白記号』とかでGoogle先生に尋ねるとLaTeXにおける空白の調整を行う方法が列挙され,欲しい情報が出てきませんでした*1.
そして,また空白記号を使う必要があったので探し直していたのですが,漸く見つけました.
『LaTeX2e 美文書作成入門 改訂第8版』*2の付録E,385ページに記載.
次のコマンドが空白記号に対応します.そのまんまなコマンド名ですね.
\textvisiblespaceインターネット(検索エンジン)は万能ではないと改めて思った次第です.
TeXで図をコード記述位置に強制的に出力する
2012/07/04
pLaTex(w32tex角藤版)での場合(2012年7月記載)
platexでは普通,図の位置はコンパイラ任せである.複数の図を続けて記述してしまったときなどは,
\begin{figure}[htbp] %位置指定のオプション.here, top, bottom, page(フロートで章の最後へまとめて表示) \begin{center} \includegraphics[width=30zw,bb=0 0 1280 1024]{figure/} \captionsetup{margin=90pt} \caption{説明文} \label{fig} \end{center} \end{figure}というような書式で書いた場合,章や節の最後にまとめて図が吐き出されるということが仕様である.
位置指定のオプションで[h]とだけ指定しても失敗することが多いのである.
論文ならこれでも許容できるが,もう少しくだけた技術文書では読みづらくなり不便である.
今までは\clearpageで対応してきたのだが,もっとうまい手があるようだ.
プリアンブルで
\usepackage{here}というパッケージを読み込み,
\begin{figure}[H] %Hで強制的に記述した場所に図を出力できる. \begin{center} \includegraphics[width=30zw,bb=0 0 1280 1024]{figure/} \captionsetup{margin=90pt} \caption{説明文} \label{fig} \end{center} \end{figure}というように「H」と位置指定のオプションを記述することで強制的にhereで図を出力できる.
このhereパッケージは最近のplatexのインストールパッケージ(少なくともWindows版には)に標準で入っているようだ.
ならば,使わない手はない.
LuaLaTeX(LuaTeX-ja)+jlreqクラスでの場合(2022年4月記載)
2022年4月時点では,TeX Live 2021等でパッケージをフルインストール(scheme-fullオプションでインストール)していれば,hereパッケージは導入済みである.LuaLaTeX(LuaTeX-ja)とjlreqクラスを使って文書を作成する場合,プリアンブルに以下のような記載を最低限追加し*1,
\documentclass[11pt,report]{jlreq} \usepackage{graphicx} \usepackage{here} \usepackage[hang,small,bf]{caption} \usepackage{layout}document環境内の本文中に次のような書式で図を挿入すれば,コード記述位置に図が強制的に出力される.
\begin{figure}[H] \begin{center} \includegraphics[width=300pt]{figure/filename.pdf} \captionsetup{margin=60pt} \caption{説明文} \label{fig-label-name} \end{center} \end{figure}なお,図の大きさを決定するのには,同じくdocument環境内の終わりに\clearpage\layout というコマンドを記述し,
現在設定されている本文の幅・高さなどの情報を把握しておくと便利である.
挿入する画像のファイル形式について
過去のpLaTeXではEPSファイルがトラブルの起こりづらく,かつ取り扱いやすい画像ファイルとして重宝されたが,時代は変わった.画像や図のソースはPDFさえ用意していればトラブルは起こらない*2.
JPEGやPNGファイルも基本問題なく取り扱える.
煩雑だったPNGやJPEGのアスペクト比の指定*3も必要が(たぶん)なくなった.
開発されている方々には唯々感謝するばかりである.
textextの代替
2011/05/18
というわけで,代替のプログラム(というかバッチファイルを作成です.)
TeXのコードを実行すると,svgファイルとpngファイルが出来るはず.
textextよりは使い勝手は悪いですが,無いよりは遙かにマシです.
platex "%~1".tex dvipsk -E -Ppdf "%~1".dvi -o "%~1".eps gswin32c -q -sDEVICE=pbm -sOutputFile="%~1".pbm -r2400 -dNOPAUSE -dBATCH -dSAFER -dEPSCrop "%~1".eps potrace -o "%~1".svg -s "%~1".pbm convert "%~1".pbm "%~1"-res.png convert "%~1"-res.png -resize 1500 "%~1"-toka.png convert -transparent white "%~1"-toka.png "%~1".png rm "%~1".aux rm "%~1".log rm "%~1"-res.png rm "%~1".dvi rm "%~1".eps rm "%~1".pbmdvipskは若干古い模様.5月に新規に導入したWindows版TeX環境では入っていませんでした.
ないなどと警告が出たときは,dvipsに書き換えてください.
ちなみに,これで読み込ませるTeXファイルは以下のようなものが良いかもしれません.
例を挙げます.
\documentclass{jarticle} \usepackage{amsmath} \usepackage{amssymb} \usepackage{amsfonts} \usepackage{txfonts} \thispagestyle{empty} \begin{document} \begin{gather} \begin{split} \sigma&=\sigma_1\exp\left( -\dfrac{t}{\tau_1}\right)+\sigma_2\exp\left( -\dfrac{t}{\tau_2}\right)%\\ \end{split} \nonumber \end{gather} \end{document}
imagemagickとpotraceのインストール
これをやらないと,上記バッチファイルは動きません.ネットの海をさまよって,インストールしてください.
私はimagemagickの公式サイトのリンクから"ImageMagick-6.6.9-9-Q16-windows-dll.exe"
と,titleから"potrace-1.9.win32.zip"をダウンロードしました.
日本語の対応について
当初,私の環境では日本語が化けました.対策ですが,C:\gs\gs9.02\lib以下のcidfmapを次のように記述したら直りました.
現在は日本語を入力することも可能な状態です.
%! % cidfmap generated automatically by mkcidfm.ps from fonts found in % C:/Windows/Fonts % Substitutions /DFKaiShu-SB-Estd-BF << /CSI [(CNS1) 2] /Path (C:/Windows/Fonts/kaiu.ttf) /FileType /TrueType /SubfontID 0 >> ; /Meiryo-BoldItalic << /CSI [(Japan1) 3] /Path (C:/Windows/Fonts/meiryob.ttc) /FileType /TrueType /SubfontID 1 >> ; /Meiryo << /CSI [(Japan1) 3] /Path (C:/Windows/Fonts/meiryo.ttc) /FileType /TrueType /SubfontID 0 >> ; /MS-Gothic << /CSI [(Japan1) 3] /Path (C:/Windows/Fonts/msgothic.ttc) /FileType /TrueType /SubfontID 0 >> ; /MicrosoftYaHei << /CSI [(GB1) 2] /Path (C:/Windows/Fonts/msyh.ttf) /FileType /TrueType /SubfontID 0 >> ; /GulimChe << /CSI [(Korea1) 3] /Path (C:/Windows/Fonts/gulim.ttc) /FileType /TrueType /SubfontID 1 >> ; /Gulim << /CSI [(Korea1) 3] /Path (C:/Windows/Fonts/gulim.ttc) /FileType /TrueType /SubfontID 0 >> ; /MalgunGothicRegular << /CSI [(Korea1) 3] /Path (C:/Windows/Fonts/malgun.ttf) /FileType /TrueType /SubfontID 0 >> ; /PMingLiU << /CSI [(CNS1) 2] /Path (C:/Windows/Fonts/mingliu.ttc) /FileType /TrueType /SubfontID 1 >> ; /MS-UI-Gothic << /CSI [(Japan1) 3] /Path (C:/Windows/Fonts/msgothic.ttc) /FileType /TrueType /SubfontID 2 >> ; /FangSong << /CSI [(GB1) 2] /Path (C:/Windows/Fonts/simfang.ttf) /FileType /TrueType /SubfontID 0 >> ; /NSimSun << /CSI [(GB1) 2] /Path (C:/Windows/Fonts/simsun.ttc) /FileType /TrueType /SubfontID 1 >> ; /MalgunGothicBold << /CSI [(Korea1) 3] /Path (C:/Windows/Fonts/malgunbd.ttf) /FileType /TrueType /SubfontID 0 >> ; /BatangChe << /CSI [(Korea1) 3] /Path (C:/Windows/Fonts/batang.ttc) /FileType /TrueType /SubfontID 1 >> ; /DotumChe << /CSI [(Korea1) 3] /Path (C:/Windows/Fonts/gulim.ttc) /FileType /TrueType /SubfontID 3 >> ; /KaiTi << /CSI [(GB1) 2] /Path (C:/Windows/Fonts/simkai.ttf) /FileType /TrueType /SubfontID 0 >> ; /MS-PGothic << /CSI [(Japan1) 3] /Path (C:/Windows/Fonts/msgothic.ttc) /FileType /TrueType /SubfontID 1 >> ; /GungsuhChe << /CSI [(Korea1) 3] /Path (C:/Windows/Fonts/batang.ttc) /FileType /TrueType /SubfontID 3 >> ; /Dotum << /CSI [(Korea1) 3] /Path (C:/Windows/Fonts/gulim.ttc) /FileType /TrueType /SubfontID 2 >> ; /Meiryo-Italic << /CSI [(Japan1) 3] /Path (C:/Windows/Fonts/meiryo.ttc) /FileType /TrueType /SubfontID 1 >> ; /MS-PMincho << /CSI [(Japan1) 3] /Path (C:/Windows/Fonts/msmincho.ttc) /FileType /TrueType /SubfontID 1 >> ; /Gungsuh << /CSI [(Korea1) 3] /Path (C:/Windows/Fonts/batang.ttc) /FileType /TrueType /SubfontID 2 >> ; /SimSun << /CSI [(GB1) 2] /Path (C:/Windows/Fonts/simsun.ttc) /FileType /TrueType /SubfontID 0 >> ; /MicrosoftYaHeiBold << /CSI [(GB1) 2] /Path (C:/Windows/Fonts/msyhbd.ttf) /FileType /TrueType /SubfontID 0 >> ; /MingLiU << /CSI [(CNS1) 2] /Path (C:/Windows/Fonts/mingliu.ttc) /FileType /TrueType /SubfontID 0 >> ; /Batang << /CSI [(Korea1) 3] /Path (C:/Windows/Fonts/batang.ttc) /FileType /TrueType /SubfontID 0 >> ; /Meiryo-Bold << /CSI [(Japan1) 3] /Path (C:/Windows/Fonts/meiryob.ttc) /FileType /TrueType /SubfontID 0 >> ; /MicrosoftJhengHeiRegular << /CSI [(CNS1) 2] /Path (C:/Windows/Fonts/msjh.ttf) /FileType /TrueType /SubfontID 0 >> ; /MS-Mincho << /CSI [(Japan1) 3] /Path (C:/Windows/Fonts/msmincho.ttc) /FileType /TrueType /SubfontID 0 >> ; /SimHei << /CSI [(GB1) 2] /Path (C:/Windows/Fonts/simhei.ttf) /FileType /TrueType /SubfontID 0 >> ; /MicrosoftJhengHeiBold << /CSI [(CNS1) 2] /Path (C:/Windows/Fonts/msjhbd.ttf) /FileType /TrueType /SubfontID 0 >> ; % Aliases /AdobeSongStd-Light /SimSun ; /MSung-Medium /MingLiU ; /MSung-Light /MingLiU ; /HYSMyeongJo-Medium /Batang ; /STKaiti-Regular /KaiTi ; /KozMinPr6N-Regular /MS-Mincho ; /STHeiti-Regular /MicrosoftYaHei ; /STFangsong-Light /FangSong ; /AdobeMingStd-Light /MingLiU ; /AdobeMyungjoStd-Medium /Batang ; /MKai-Medium /DFKaiShu-SB-Estd-BF ; /Ryumin-Light /MS-Mincho ; /MHei-Medium /MicrosoftJhengHeiRegular ; /HYGoThic-Medium /Dotum ; /HYRGoThic-Medium /Gulim ; /HeiseiMin-W3 /MS-Mincho ; /Ryumin-Medium /MS-Mincho ; /AdobeHeitiStd-Regular /MicrosoftYaHei ; /HeiseiKakuGo-W5 /MS-Gothic ; /STSong-Light /SimSun ; /GothicBBB-Medium /MS-Gothic ;
TeXの索引の書式を変更する
2011/05/18
せっかく作ったのなら,その書式も自由に変更したいと考えるのは普通だろう.
その場合,istファイルというものを作る.内容はこんな感じ.
%group_skip "\bigskip" lethead_flag 1 letter_head 2 symhead_positive "記号" lethead_prefix "\n\\hfill{\\bfseries ---" lethead_suffix "---}\\hfill\\hfill\\hfill\\hfill\\par\\nobreak"これをmendex実行時にオプションで読み込ませる.
:!mendex -s sakuin-shoshiki.ist sakuin.idx以上.
なお,上のistファイルの内容だと,索引に五十音・ABCのそれぞれの先頭に「A」や「あ」などが表示される.