OSDN Git Service

Added fontspec functions for LuaTeX-ja.
authorKazuki Maeda <kmaeda@users.sourceforge.jp>
Tue, 16 Aug 2011 22:07:25 +0000 (07:07 +0900)
committerKazuki Maeda <kmaeda@users.sourceforge.jp>
Fri, 19 Aug 2011 16:36:43 +0000 (01:36 +0900)
src/luatexja-fontspec.sty [new file with mode: 0644]
test/test02-latex.pdf
test/test02-latex.tex

diff --git a/src/luatexja-fontspec.sty b/src/luatexja-fontspec.sty
new file mode 100644 (file)
index 0000000..60c7ac0
--- /dev/null
@@ -0,0 +1,56 @@
+%
+% luatexja-fontspec.sty
+%
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{luatexja-fontspec}[2011/08/17 v0.1]
+
+\RequirePackage{luatexja,fontspec}
+
+\ExplSyntaxOn
+
+\define@key[zf]{options}{JFM}{
+  \fontspec_update_featstr:n {jfm=#1}
+}
+
+\cs_new:Nn \ltj_fontspec_select:nn {
+  \group_begin:
+  \tl_set:Nn \zf@enc {JY3}
+  \fontspec_select:nn{JFM=ujis,#1}{#2}
+  \cs_undefine:c{g_fontspec_ \zf@family _prop}
+  \fontspec_select:nn{JFM=ujis,#1}{#2}
+  \group_end:
+  \cs_undefine:c{g_fontspec_ \zf@family _prop}  
+}
+
+\cs_new:Nn \ltj_fontspec_set_newjfamily:Nnn {
+  \ltj_fontspec_select:nn{#2}{#3}
+  \tl_set_eq:NN #1 \zf@family
+}
+
+\DeclareDocumentCommand \jfontspec { O{} m } {
+  \ltj_fontspec_set_newjfamily:Nnn \k@family {#1}{#2}
+  \selectfont
+  \ignorespaces
+}
+
+\DeclareDocumentCommand \setmainjfont { O{} m } {
+  \ltj_fontspec_set_newjfamily:Nnn \mcdefault {#1}{#2}
+  \normalfont
+}
+
+\DeclareDocumentCommand \setsansjfont { O{} m } {
+  \ltj_fontspec_set_newjfamily:Nnn \gtdefault {#1}{#2}
+  \normalfont
+}
+
+\DeclareRobustCommand\jfontfamily[1]{\edef\k@family{#1}}
+
+\DeclareDocumentCommand \newjfontfamily { m O{} m } {
+  \ltj_fontspec_select:nn{#2}{#3}
+  \use:x {
+    \exp_not:N \DeclareRobustCommand \exp_not:N #1 {
+      \exp_not:N \jfontfamily {\zf@family} \exp_not:N \selectfont
+    }
+  }
+}
index 74ec84f..de1a4db 100644 (file)
Binary files a/test/test02-latex.pdf and b/test/test02-latex.pdf differ
index 2ff7dd8..b5ad813 100644 (file)
@@ -1,6 +1,7 @@
 %#! lualatex
 \documentclass{article}
 \usepackage{luatexja}
+\usepackage{luatexja-fontspec}
 
 \makeatletter
 % from jsclasses
   \ifdim\@tempskipa>\z@
     \ltjsetparameter{xkanjiskip={0.25em plus 0.15em minus 0.06em}}%
   \fi}
+\makeatother
+
+\setmainfont{TeXGyreTermes}
+\setsansfont{TeXGyreHeros}
+
+\setmainjfont[Scale=.95,BoldFont=IPAexGothic]{IPAexMincho} % default: JFM=ujis
+\setsansjfont[Scale=.95]{IPAexGothic}
+
+\newjfontfamily\ipajisninety[Scale=.95,CJKShape=JIS1990]{IPAexMincho}
 
 \begin{document}
 \section{NFSS2}
 
+
 ◆あいうえおabcかきく{\gt かきくa{\bf uyあ}いう}
 
 {\ltjsetparameter{xkanjiskip=0pt}イタリック補正\textit{f}◆\par}
 \DeclareFixedFont{\dr}{JY3}{gt}{m}{n}{12}
 あいうえおpqr{\dr かaiu}きく){\bf (漢字}
 
+{\tiny ◆あいうえおabcかきく{\gt かきくa{\bf uyあ}いう}}
+
+{\scriptsize ◆あいうえおabcかきく{\gt かきくa{\bf uyあ}いう}}
+
+{\footnotesize ◆あいうえおabcかきく{\gt かきくa{\bf uyあ}いう}}
+
+{\small ◆あいうえおabcかきく{\gt かきくa{\bf uyあ}いう}}
+
+{\normalsize ◆あいうえおabcかきく{\gt かきくa{\bf uyあ}いう}}
+
+{\large ◆あいうえおabcかきく{\gt かきくa{\bf uyあ}いう}}
+
+{\Large ◆あいうえおabcかきく{\gt かきくa{\bf uyあ}いう}}
+
+{\LARGE ◆あいうえおabcかきく{\gt かきくa{\bf uyあ}いう}}
+
+{\huge ◆あいうえおabcかきく{\gt かきくa{\bf uyあ}いう}}
+
+{\Huge ◆あいうえおabcかきく{\gt かきくa{\bf uyあ}いう}}
+
 \section{fontspec}
 
-かいてない
+通常:「あいうえお」、(かきくけこ)。
+
+{\jfontspec[Scale=.95,JFM=mono]{IPAexMincho}
+\noindent 等幅:「あいうえお」、(かきくけこ)。
+}
+
+\subsection{JIS2004}
+逢芦飴溢茨鰯淫迂厩噂餌襖迦牙廻恢晦蟹葛鞄釜翰翫徽
+祇汲灸笈卿饗僅喰櫛屑粂祁隙倦捲牽鍵諺巷梗膏鵠甑叉
+榊薩鯖錆鮫餐杓灼酋楯薯藷哨鞘杖蝕訊逗摺撰煎煽穿箭
+詮噌遡揃遜腿蛸辿樽歎註瀦捗槌鎚辻挺鄭擢溺兎堵屠賭
+瀞遁謎灘楢禰牌這秤駁箸叛挽誹樋稗逼謬豹廟瀕斧蔽瞥
+蔑篇娩鞭庖蓬鱒迄儲餅籾爺鑓愈猷漣煉簾榔屢冤叟咬嘲
+囀徘扁棘橙狡甕甦疼祟竈筵篝腱艘芒虔蜃蠅訝靄靱騙鴉
+
+\subsection{JIS1990}
+{\ipajisninety
+逢芦飴溢茨鰯淫迂厩噂餌襖迦牙廻恢晦蟹葛鞄釜翰翫徽
+祇汲灸笈卿饗僅喰櫛屑粂祁隙倦捲牽鍵諺巷梗膏鵠甑叉
+榊薩鯖錆鮫餐杓灼酋楯薯藷哨鞘杖蝕訊逗摺撰煎煽穿箭
+詮噌遡揃遜腿蛸辿樽歎註瀦捗槌鎚辻挺鄭擢溺兎堵屠賭
+瀞遁謎灘楢禰牌這秤駁箸叛挽誹樋稗逼謬豹廟瀕斧蔽瞥
+蔑篇娩鞭庖蓬鱒迄儲餅籾爺鑓愈猷漣煉簾榔屢冤叟咬嘲
+囀徘扁棘橙狡甕甦疼祟竈筵篝腱艘芒虔蜃蠅訝靄靱騙鴉
+}
+
+
 \end{document}