小编use*_*886的帖子

具有从右到左字符串的HTML5 Canvas fillText

我试图在HTML5 Canvas'2d Context上使用fillText()方法来绘制用阿拉伯语编写的字符串.它完美无缺,直到我在字符串的末尾加上一个标点符号.然后标点符号出现在字符串的错误一侧(在开头,而不是结尾,就好像它是一个不是rtl字符串的ltr).我使用了Context.textAlign属性,但这似乎只涉及相对于指定位置绘制字符串的方式,而不是文本的实际方向.有谁知道这个解决方案?

谢谢.

更新:我找到的答案是在页面上的canvas元素中添加"dir"属性.例如,

<canvas dir="rtl">
Run Code Online (Sandbox Code Playgroud)

但是,我仍然不知道如何更改发送到fillText的单个字符串的dir属性.有任何想法吗?

html5 canvas bidi arabic hebrew

8
推荐指数
2
解决办法
5919
查看次数

风格化文本以针对不同语言使用不同字体?

有没有一种方法可以对 HTML 页面上的文本进行样式化,以便它针对不同的语言自动使用不同的字体?我的网站使用英语和阿拉伯语。我想根据显示的语言使用不同的字体。

\n\n

假设我有这样的一段:

\n\n

\xd9\x87\xd8\xb0\xd9\x87\xd8\xa7\xd9\x84\xd8\xac\xd9\x85\xd9\x84\xd8\xa9\xd9\x85\xd9\x83\xd8\xaa\xd9 \x88\xd8\xa8\xd8\xa9 \xd9\x81\xd9\x8a \xd8\xa7\xd9\x84\xd9\x84\xd8\xba\xd8\xa9 \xd8\xa7\xd9\x84\xd8\xb9 \xd8\xb1\xd8\xa8\xd9\x8a\xd8\xa9 \xd9\x88\xd9\x84\xd9\x83\xd9\x86 \xd8\xa7\xd9\x84\xd8\xac\xd9\x85\xd9 \x84\xd8\xa9 \xd8\xa7\xd9\x84\xd8\xaa\xd8\xa7\xd9\x84\xd9\x8a\xd8\xa9 \xd9\x85\xd9\x83\xd8\xaa\xd9\x88 \xd8\xa8\xd8\xa9 \xd9\x81\xd9\x8a \xd8\xa7\xd9\x84\xd8\xa5\xd9\x86\xd8\xac\xd9\x84\xd9\x8a\xd8\xb2\xd9 \x8a\xd8\xa9。上一句是阿拉伯语,但这一句是英语。

\n\n

我希望阿拉伯语句子用 X 字体呈现,但英语句子用 Y 字体呈现。

\n\n

有没有一种方法可以做到这一点,而无需根据服务器端有关其语言的知识手动为每组文本指定不同的 CSS 样式,即将每个句子包装在不同的 CSS 类中?

\n\n

谢谢

\n

html css internationalization

5
推荐指数
1
解决办法
5930
查看次数

标签 统计

arabic ×1

bidi ×1

canvas ×1

css ×1

hebrew ×1

html ×1

html5 ×1

internationalization ×1