如何仅对没有孟加拉语卡尔符号的字母进行着色?

问题描述 投票:0回答:1

孟加拉语辅音有ক、খ、গ、ঘ、ঙ、চ、ছ、জ、ঝ、ঞ…等,10 个卡尔/元音(缩写)是া、ি、ী、ু、ূ、ৃ、ে、 ৈ、ো 和 ৌ。

总而言之,我想对第一个辅音进行不同的着色。但卡尔斯/元音也会变色。


预期产量


代码示例

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+Bengali:[email protected]&display=swap');
p {
  font-family: "Noto Serif Bengali", serif;
  font-variation-settings: "wdth" 100;
}

mark {
  color: red;
  background: transparent;
}
<p>
  <mark>ক</mark>াগজ<br/>
  <mark>ঠ</mark>েলাগাড়ি<br/>
  <mark>দ</mark>োয়েল<br/>
</p>

html css unicode diacritics accent-sensitive
1个回答
0
投票

在文本布局引擎中,这些辅音-元音组合被处理为簇,其中可能发生多个复杂的交互。在一般情况下,您想要的将会有问题,因为字符串中的字符与用于显示字符串的字体的字形之间的关系并不总是 1:1 关系。

例如,某些孟加拉语或阿萨姆语字体可以将 ga + u 显示为 。布局引擎无法知道哪些字形的哪些部分要涂成红色。

原则上,布局可以选择簇中的一个字形来绘制红色。在某些情况下,这可能会提供您想要的内容,但在其他情况下则不会。例如,它可能适用于 ঠো,因为代表辅音的字形与代表元音的字形不同。但在某些字体中,诸如গু之类的簇可以显示为单个字形,在这种情况下,必须将多个辅音涂成红色。

虽然原则上布局引擎可以将不同的color样式应用于集群中的不同字形,但它无法对所有文本样式执行此操作。例如,当然不可能选择不同的字体,因为簇内元素的正确显示取决于字体内有关元素如何交互的数据,例如标记字形如何相对于基本字形定位。在实践中,许多布局引擎会出于任何样式目的以原子方式处理集群。

© www.soinside.com 2019 - 2024. All rights reserved.