我正在尝试为Hangul(韩语字符)设置颜色代码。每个'block'都会在韩语中创建一个音节。 Hangul被分解为Jamo(类似于英文字母。)当你用韩语输入jamo /字母时,它们经常组合起来创建一个音节,而计算机经常将其视为一个块。我希望能够在不使用span的情况下在构成音节的字符引用列表中选择特定的字符引用。当我使用span时,字符引用与组合块分离。我只想知道如何选择和着色特定的字符引用而不将其分成不同的块。
我几乎成功了我想做的事,但它需要使用position:absolute; margin和z-index使元素重叠以创建1个块的错觉。但它并没有很好地设计jamo,使其与其他正常文本看起来一致。而且,我在想仍然可能有更好的方法。
字符参考图表http://gernot-katzers-spice-pages.com/var/korean_hangul_unicode.html下面是混合字符引用列表和常规类型hangul的示例。如果我想添加空间,我可以添加空格。当这样写时,由于使用了上面链接中的图表,因此hangul自然形成了它的块。如何选择ㅂ字母(ᆸ)
ᆸ
(니다之前的列表中的最后一个)并更改其颜色而不将其分成自己的块?
<p>감사 합니다</p>
在显示时,它将如下所示
我能够使它工作的方式是使用此代码。
<style>
.element { font-size:16px; position:absolute; }
#element-1 { color:red; z-index:1; }
#element-2 { color:red; margin:0px 0 0 3px; z-index:2; }
#element-3 { color:green; margin:0px 0 0 0px; z-index:3; }
</style>
<body>
<div>
<p><span style="color:red;">네, </span>
<span id="element-1" class="element">ᄀ</span>
<span id="element-2" class="element">ᅡ</span>
<span id="element-3" class="element">ᆷ</span>
<span style="color:green; margin-left: 19px;">사합니다</span>
</p>
</div>
</body>
哪个应该显示네,감시합니다但是감看起来并不匹配,因为我确实跨越了每个字母的감,它将每个jamo放在每个块的相对部分,然后使用技术使用z-index,margin来重叠它们和绝对的位置。当用作单独的块时,字体样式在自然组合时是不一样的。
我认为最简单的方法是如果我能弄清楚如何选择字符引用并改变CSS中的颜色而不创建单独的块。
简而言之,使用纯html / css是不可能的。
如您所知,韩语(Hangeul)jamos在不同的音节上有不同的形状。例如,ㄱ和ㄱ的곤具有相同的代码(x1100)但形状不同(前者在左侧较长,后者在顶部较宽)。 ㄱ(x1100)有10个或更多形状,形状数由字体定义。
为了满足您的要求,您需要在画布(或svg)上绘制jamo。这不容易但也不实用。
尽管如此,你想要挑战,请参阅https://github.com/hatemogi/hallatype/blob/master/README.md
gg gl