[問題] xeCJK 由已使用字體建立新字族
我想要建立一個直書用的字族:
\newCJKfontfamily{\vCJKFamily}
[Vertical=RotatedGlyphs]
{AR PL UKai TW}
而之前已將sans 設給楷體了:
\setCJKsansfont{AR PL UKai TW}
請問要如何利用變數設定相同字型但不同參數的新字族呢?
(就是說使用者只要指定一次setCJKsans ,後面newCJK就不用再輸入一次了)
我的想法有兩個:
1. 找到 xeCJK 中儲存字型的變數,放到 \newCJK 裡面
不過沒看到文件說明。
2. xecjk.sty 中有 \xeCJK_copy_family:nn 可能可以拿來用?
不過好像只能 copy ,就是說我要先copy 再增加屬性(可能還要先切換?)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.32.188.151
※ 文章網址: https://www.ptt.cc/bbs/LaTeX/M.1481175024.A.35D.html
→
12/10 00:44, , 1F
12/10 00:44, 1F
因為 LaTeX 已經有 rmfamily/sffamily 了,中文常用的則是明體、楷體
並且明體因為是內文主要字體,通常設為 (CJK) main font 。
(xeCJK 中也會設給 \CJKrmdefault ,也就是當成是 CJK 版的 rmfamily)
所以剩下的 (CJK) sans font 不用白不用,乾脆設成楷體囉!
我認為這樣比起另外弄一個 \kai 指令來切換顯得方便些。
而且在我的規劃中(論文樣板),楷體用於章節標題。同樣也見過有文章推薦
英文章節標題採用 sans 讓讀者有個暫停的感覺。中英都用 sans 的話
編輯者寫起來比較一致,都用 \sffamily 即可 。
→
12/10 03:28, , 2F
12/10 03:28, 2F
我詳細講一下狀況好了
我的「論文樣板」因為做到書脊,須要直書中文。
所以我想建立一個指令 \vCJK{垂直中文} 裡面的寫的就會輸出垂直中文。
由於垂直中文須要在指定字族時加上 [Vertical=RotatedGlyphs]
這個選項,為了不影響到文內的字族,所以我建立一個專供直書的新字族
\newCJKfontfamily{\vCJKFamily}
[Vertical=RotatedGlyphs]
{AR PL UKai TW}
不過我不想把字型參數設死,希望可以依照 \setCJKsansfont
的值改變。所以希望能找出 xeCJK 儲存的變數,直接依之前 sans 儲存的
字型名稱建立新字族。或是可以從 sffamily 利用 copy family 複製成一個
新的,然後再新增屬性。
----- 以下為目前心得 -----
昨天我試了 copy family 指令,無法使用,可能因為能見度不同吧?
儲存名稱方面,只找到 \CJK@family 會儲存「當前」字族的字體名稱,
(其他手冊裡寫的如 \CJKrmdefault 都是存字族名)
並且是「ARPLUKaiTW(0)」的形式,無法用於 \newCJKfontfamily。
目前我打算自己新增一個變數來存 sans 字體名。
不知各位有沒有更好辦法?謝謝囉!
※ 編輯: sppmg (27.241.25.75), 12/10/2016 15:51:07
→
12/13 01:08, , 3F
12/13 01:08, 3F
LaTeX 近期熱門文章
PTT數位生活區 即時熱門文章