OSDN Git Service

JFM version 2: priority={<stretch>, <shrink>}
[luatex-ja/luatexja.git] / test / test20a-mfont-fontspec.tex
index ac7f1be..5d1b9b1 100644 (file)
@@ -2,11 +2,20 @@
 \documentclass{ltjsarticle}
 \usepackage{luatexja-fontspec,luatexja-otf}
 
+\makeatletter
+\let\ltj@orig@DeclareFontShape@=\DeclareFontShape@
+\def\DeclareFontShape@#1#2#3#4#5#6{%
+\immediate\typeout{DFS |#1|#2|#3|#4|#5|#6|}%
+\ltj@orig@DeclareFontShape@{#1}{#2}{#3}{#4}{#5}{#6}%
+}
+\makeatother
+
+
 
 \newjfontfamily\hoge[
   AltFont={ 
     {Range="3000-"307F, Font=JJSYuGothicPr6N-M, Color=00007F, CharacterWidth=Half},
-    {Range="3080-"30FF, Color=7F0000},
+    {Range="3080-"30FF, Color=7F0000,}
   },
   BoldFont={ JJSYuGothicPr6N-M }, 
 ]{JJSYuMinchoPr6N-R}
 
 \medskip\piyo\test
 
-\paragraph{addfontfeatures}\ \par
-\typeout{addjfontfeatures}
+\newpage
+\section{5号かな}
+{%
+\jfontspec[
+  AltFont={
+    {Font=JJSYuMin5goKn-R,Range="3000-"30FF, Color=007F00},
+    {Font=DejaVuSans, Range={"21B3,"21B5},Color=0000FF,YokoFeatures={JFM=prop} },
+  }
+]{JJSYuMinchoPr6N-R}
+
+\makeatletter\k@family
+日本国民は、正当に選挙された国会における代表者を通じて行動し、
+(\ltjjachar"21B3)
+(\ltjjachar"21B4)
+(\ltjjachar"21B5)%"
+}
+
+\section{addfontfeatures}
+\piyo\test
 \addjfontfeatures{
   AltFont={ {Range="4F00-"6FFF, Color=0000FF}, },
-  Color=001F00,CJKShape=Traditional
-% AltFontFeature, AltFontRange は累積しない
+  Color=003F00,CJKShape=Traditional
+%% AltFont は累積する
 }
 \makeatletter\k@family\test
 
-\typeout{5号かな}
+\section{YokoFeaturesなどとの関係}
+\paragraph{うまくいかない例: YokoFeatures等の中にAltFont}
+{%
+\jfontspec[
+  YokoFeatures = {
+    AltFont={
+      {Font=JJSYuMin5goKn-D,Range="3000-"30FF, Color=003F3F},
+    }, JFM=min,
+  },
+  TateFeatures = {
+    AltFont={
+      {Font=JJSYuMin5goKn-R,Range="3000-"304F, Color=7F0000, JFM=tmin },
+      {Font=JJSYuMin5goKn-R,Range="3050-"30FF, Color=00007F},
+    },
+  }
+]{JJSYuMinchoPr6N-R}
+\makeatletter\k@family\test
+}
+\paragraph{うまくいく例: AltFontの中にYokoFeature}
+{%
 \jfontspec[
+  %YokoFeatures = { JFM=min },
   AltFont={
-    {Font=JJSYuMin5goKn-R,Range="3000-"30FF, Color=007F00},
-    {Font=DejaVuSans, Range={"21B3,"21B5},Color=0000FF,JFM=prop  },
+    { 
+      Font=JJSYuMin5goKn-D, YokoFeatures = { Color=FF3F3F },
+      TateFont = JJSYuMin5goKn-R, TateFeatures = { Color=7F0000, JFM=tmin  },
+      Range="3000-"304F, 
+    },
+    { 
+      Font=JJSYuMin5goKn-D, YokoFeatures = { Color=4F3F3F },
+      TateFont=JJSYuMin5goKn-R, TateFeatures = { Color=00007F },
+      Range="3050-"30FF, 
+    },
   }
 ]{JJSYuMinchoPr6N-R}
+\makeatletter\k@family\test
+}
+
+どっちかではうまくいくようにしたいが……
+
+
+\paragraph{BoldFeaturesとAltFontその1}
+\jfontspec
+[
+  AltFont = { { Color=0000FF,  Range="6000-"9FFF } },
+  BoldFont=KozMinPr6N-Bold,
+  UprightFeatures = {
+    AltFont = {
+      { Font=KozGoPr6N-Light, Range="3000-"30FF, TateFont = KozGoPr6N-Heavy,
+        YokoFeatures={ Color=4F0000} } 
+    },
+  },
+  BoldFeatures = { Color=006F00,
+    AltFont = { { Font=KozGoPr6N-Bold, Range="3000-"30FF } },
+  }, 
+]{KozMinPr6N-Light}
+\test
+\bfseries\test
 
-日本国民は、正当に選挙された国会における代表者を通じて行動し、
-(\ltjjachar"21B3)
-(\ltjjachar"21B4)
-(\ltjjachar"21B5)
 \end{document}
\ No newline at end of file