这是我的这个问题并使用相同的设置。
我正在尝试排版国际象棋注释符号。MWE 是
\documentclass{article}
\usepackage{xskak}
\newcommand\mychessboard[1][]{\chessboard[#1]}
\usepackage{chess-workshop-symbols}
\begin{document}
\wbetter \\ % fails
\bbetter \\ % fails
\wupperhand \\ % fails
\bupperhand \\
\wdecisive \\ % fails
\bdecisive \\ % fails
\equal \\
\unclear \\ % fails
\compensation \\ % fails
\withattack \\
\withinit \\
\counterplay \\
\zugzwang \\
\mate \\
\withidea \\
\onlymove \\
\betteris \\
\file \\
\end{document}
如果我使用 pdflatex 处理文件,所有符号都会正确显示。使用 tex4ebook 时,有些符号无法正确显示,如上面的失败注释所示。
有办法解决这个问题吗?谢谢。
答案1
问题是,有些符号没有对应的 Unicode 字符,所以我们需要将它们输出为两个字符。在某些情况下,它与原始字符并不完全相符。
SkakNew.htf
:
SkakNew 32 121
'' '' 32
'!' '' 33
'”' '' 34
'#' '' 35
'$' '' 36
'%' '' 37
'&' '' 38
'’' '' 39
'(' '' 40
')' '' 41
'*' '' 42
'+' '' 43
',' '' 44
'-' '' 45
'.' '' 46
'/' '' 47
'0' '' 48
'1' '' 49
'2' '' 50
'3' '' 51
'4' '' 52
'5' '' 53
'6' '' 54
'7' '' 55
'8' '' 56
'9' '' 57
':' '' 58
';' '' 59
'¡' '' 60
'=' '' 61
'¿' '' 62
'?' '' 63
'@' '' 64
'→' '' 65
'♗' '' 66
'↑' '' 67
'⊙' '' 68
'△' '' 69
'□' '' 70
'⇗' '' 71
'⇔' '' 72
'⊞' '' 73
'╳' '' 74
'♔' '' 75
'⟂' '' 76
'≪' '' 77
'♘' '' 78
'≫' '' 79
'Ⅱ' '' 80
'♕' '' 81
'♖' '' 82
'>' '' 83
'⊕' '' 84
'○' '' 85
'⇆' '' 86
'W' '' 87
'×' '' 88
'Y' '' 89
'Z' '' 90
'[' '' 91
'“' '' 92
']' '' 93
'ˆ' '' 94
'˙' '' 95
'‘' '' 96
'⧉' '' 97
'⌓' '' 98
'±' '' 99
'⦂' '' 100
'∓' '' 101
'⩲' '' 102
'⩱' '' 103
'+-' '' I can't find it, it is plus followed by minus
'-+' '' minus followed by plus
'=' '' 106
'∞' '' 107
'l' '' 108
'#' '' 109
'=∞' '' 110
'o' '' 111
'p' '' 112
'q' '' 113
'r' '' 114
's' '' 115
't' '' 116
'u' '' 117
'v' '' 118
'w' '' 119
'x' '' 120
'y' '' 121
SkakNew 32 121
生成的 HTML:
和 PDF:
\compensation
命令输出不太理想
Unicode 字符的问题在于,特别是小型设备(如 Kindle)可能无法支持所有字符。在这种情况下,有两种解决方案。第一种是请求生成此类字符的图像。如果您在文件的第二列中输入数字 1,则可以请求生成图像htf
:
'=∞' '1' 110
为了简化htf
文件编辑并找出哪些行对应于特定字符,您可以使用SkakNew
以下 Tex 代码为字体生成字体图:
\documentclass{article}
\input showfonts.4ht
\begin{document}
\showfonts
{SkakNew-Figurine}
{}
\end{document}
用 编译它pdflatex
。
第二种方法是将 转换SkakNew-Figurine.otf
为woff
可在网页上使用的格式,并配置棋子字符以使用此字体。您需要安装helpers4ht 捆绑包并使用以下内容.cfg
:
\RequirePackage{addfont4ht}
\Preamble{xhtml}
\AddFontFace{SkakNewFigurine}{SkakNew-Figurine}{SkakNew-Figurine.woff}{}
\Css{.SkakNew-Figurine-{font-family:"SkakNewFigurine",sans-serif;}}
\begin{document}
\EndPreamble