マクロツイーター

はてダから移行した記事の表示が崩れてますが、そのうちに直せればいいのに(えっ)

LaTeX でもっともっとカラー絵文字する話(bxcoloremoji v0.3a)

upLaTeX 以外でもカラー絵文字できる bxcoloremoji パッケージ、を更新してみた。

昨年(2015 年)の年末あたりに Twitter で使えるカラー絵文字が大幅に拡充されて、従来の〈⛄〉(U+26C4 SNOWMAN WITHOUT SNOW)に加えて〈☃〉(U+2603 SNOWMAN)もカラー絵文字で表示されるようになった。

☃のカラー絵文字が登場したのであれば、当然、これを LaTeX でも使えるようにすべきである。というわけで、今まで coloremoji パッケージの画像データを流用する前提だったのを改めて、twemoji のリポジトリ*1から持ってきた画像ファイルを同梱するようにした。デフォルトではこの画像データが用いられる。

% upLaTeX 文書; 文字コードUTF-8
\documentclass[uplatex,dvipdfmx,a4paper]{jsarticle}
\usepackage{graphicx}
\usepackage{bxcoloremoji}% デフォルト設定
\begin{document}
私は\coloremoji{⛄}よりも\coloremoji{☃}が好きです。
\end{document}

画像データのセットを選ぶオプションは以下のようになっている。

  • twemoji-pdf: twemoji の PDF 画像。*2
  • twemoji-png: twemoji の 72 ピクセルPNG 画像。
  • twitterlowreshires: これらは従来通り coloremoji パッケージの画像データを流用することを表す。

新しくサポートされた絵文字の中には“肌色調を表す修飾子(modifier)を付したもの”や“ZWJ(U+200D)を用いて複数の文字を組み合わせたもの”のような複雑なものも存在するが、これらも正常に出力される。((\coloremoji 命令は複数の絵文字の列を引数にとる仕様なので、これを個々の“文字”に区切るのは結構難しい。))

\coloremoji{%
🖖🏾% 1F596 1F3FE : U+1F596 with Fitzpatrick type-5
👁‍🗨% 1F441 200D 1F5E8 : "Eye in speech bubble" symbol
👨‍👩‍👧‍👧% 1F468 200D 1F469 200D 1F467 200D 1F467 :
    % family of "man + woman + girl + girl"
}

縦書き対応

(u)pLaTeX の縦組みモードをサポートした。(どうやら今までサポートしてなかったらしい。)

% pLaTeX 文書; 文字コードUTF-8
\documentclass[dvipdfmx,a4paper]{jsarticle}
\usepackage[utf8]{inputenc}% *pLaTeX では*これが要る
\usepackage{graphicx}
\usepackage{bxcoloremoji}
\usepackage{plext}% 組方向拡張
\begin{document}
\parbox{5zw}{夏は\coloremoji{☃}。}
\end{document}

LuaTeX-ja の縦組みモードにも対応している。

% LuaLaTeX 文書; 文字コードUTF-8
\documentclass[a4paper]{ltjsarticle}
\usepackage{graphicx}
\usepackage{lltjext}% 組方向拡張
\begin{document}
\parbox{5\zw}{夏は\coloremoji{☃}。}
\end{document}

CJK パッケージ対応

(pdf)LaTeX + CJK パッケージを使う場合に、CJK(*)環境の中でも正常に機能するようになった。従って、BXJS クラス + (pdf)LaTeX の文書でもカラー絵文字が使える。

% pdfLaTeX 文書; 文字コードUTF-8
\documentclass[pdflatex,ja=standard]{bxjsarticle}
\usepackage{graphicx}
\usepackage{bxcoloremoji}
\begin{document}
吾輩は\coloremoji{🍣}である。意味はまだ無い。
\end{document}

*1:Twitter で新たに登場したカラー絵文字」に関しては、今年(2016 年)の 2 月頃に画像ファイルがリポジトリの“2/”というディレクトリの下に公開されている。(たぶんまだ調整中?) なおライセンスは CC-BY 4.0 である。

*2:SVG 画像から Inkscape で変換したものである。coloremoji パッケージに同梱されている“twitter”の PDF 画像のセットはイラレのデータ(.ai)そのものであるが、それよりもこちらの方がずっとサイズが小さい。