dvisvgm

dvisvgm は DVI/XDV/EPS ファイルを SVG ファイルに変換するソフトウェアです.

に対応しており,日本語を使用することができます.



使い方

dvisvgm で問題が発生する場合は PDF ファイルで出力して MuPDF の mutool を使用する方法があります.

DVI/XDV/EPS -> dvisvgm -> SVG

TeX Live 2014 (dvisvgm 1.6) 以降は (e-)upTeX で作成された DVI ファイルと XeTeX で作成された XDV ファイルに対応しているので日本語が使用できます. 以下にソース例を示します.

\ifdefined\kanjiskip
  \documentclass[uplatex]{jsarticle}
\else
  \ifdefined\pdfoutput
    \documentclass[latex]{bxjsarticle}
    \usepackage[whole]{bxcjkjatype}
  \else
    \documentclass[xelatex]{bxjsarticle}
    \usepackage{zxjatype}
    \setjamainfont{ipam.ttf}
  \fi
\fi
\usepackage[active,tightpage]{preview}
\begin{document}
\begin{preview}

吾輩は猫である。名前はまだ無い。

どこで生れたかとんと見当がつかぬ。
何でも薄暗いじめじめした所で
ニャーニャー泣いていた事だけは記憶している。
吾輩はここで始めて人間というものを見た。

\end{preview}
\end{document}

upLaTeX で出力された DVI ファイルを SVG ファイルに変換する場合は

$ uplatex hoge.tex
$ dvisvgm hoge.dvi

XeLaTeX で出力された XDV ファイルを SVG ファイルに変換する場合は

$ xelatex -no-pdf hoge.tex
$ dvisvgm hoge.xdv

LaTeX で出力された DVI ファイルを EPS ファイルに変換して EPS ファイルを SVG ファイルに変換する場合は

$ latex hoge.tex
$ dvips -E -o hoge.eps hoge.dvi
$ dvisvgm -E hoge.eps

dvisvgm を使用して DVI ファイル,XDV ファイルを SVG ファイルに変換した場合はテキストデータも保持されます. dvisvgm を使用して EPS ファイルを SVG ファイルに変換した場合はテキストデータが失われて文字列のコピーができなくなります.

DVI -> PDF -> Inkscape -> SVG

DVI ファイルを PDF ファイルに変換して Inkscape を使用して PDF ファイルをインポートして SVG ファイルに出力する方法もあります. Inkscape を使用する場合もテキストデータが保持されます.

DVI -> PDF -> MuPDF (mutool) -> SVG

DVI ファイルを PDF ファイルに変換して MuPDF の mutool を使えば PDF ファイルを SVG ファイルに変換できます. MuPDF の mutool を使用する場合もテキストデータが保持されます. PDF ファイルの余白を削除する場合は pdfcrop を使用してください.

$ mutool draw -o hoge.svg hoge.pdf

DVI -> PDF -> Poppler (pdftocairo) -> SVG

DVI ファイルを PDF ファイルに変換して Poppler の pdftocairo を使えば PDF ファイルを SVG ファイルに変換できます. ただし pdftocairo を使用して SVG ファイルに変換した場合はテキストデータが失われて文字列のコピーができなくなります. PDF ファイルの余白を削除する場合は pdfcrop を使用してください.

$ pdftocairo -svg hoge.pdf

関連リンク

公式サイト

リリース情報

License

GPLv3

ChangeLog


Last-modified: 2016-04-29 (金) 00:07:19 (844d)