草庐IT

JavaScript:如何检查字符是否为 RTL?

如何以编程方式检查浏览器是否将某些字符视为JavaScript中的RTL?也许创建一些透明的DIV并查看放置文本的位置?一点上下文。Unicode5.2添加了Avestan字母表支持。因此,如果浏览器支持Unicode5.2,它会将U+10B00之类的字符视为RTL(目前只有Firefox这样做)。否则,它将这些字符视为LTR,因为这是默认设置。我如何以编程方式检查它?我正在编写一个Avestan输入脚本,如果浏览器太笨,我想覆盖bidi方向。但是,如果浏览器确实支持Unicode,则不应覆盖bidi设置(因为这将允许混合Avestan和Cyrillic)。我目前这样做:varua=n

java - 带有阿拉伯语文本的 FlyingSaucer LTR/RTL/BiDi 问题

我正在使用飞碟xhtmlrenderer构建pdf文档。到目前为止一切正常——现在我们应该在pdf中生成阿拉伯语文本。Xhtmlrenderer正在以相反的顺序呈现阿拉伯文本。我在互联网上的某个地方(也许在他们自己的网站上)读到xhtmlrenderer不支持bidi/rtl。但IText本身包含通过ColumnText和PdfPTable使用阿拉伯语和希伯来语的示例(源可以在这里找到:http://sourceforge.net/projects/itextpdf/files/Examples/examples-155/examples-155.zip/download-arabic

java - 如何创建用于解析阿拉伯日期的正则表达式

我正在开发一个运行一系列正则表达式的程序,以尝试从网页的DOM中查找日期。例如,在www.engadget.com/2010/07/19/windows-phone-7-in-depth-preview/中,我会将“2010年7月19日”与我的正则表达式匹配。在我访问阿拉伯语网页之前,多种格式和语言的一切都很好。例如,考虑http://islammaktoob.maktoobblog.com/.日期2010年7月18日以阿拉伯语出现在帖子顶部,但我不知道如何匹配它。有没有人有匹配阿拉伯日期的经验?如果有人可以发布一个示例或他们将用来匹配该阿拉伯日期的正则表达式,那将非常有帮助。谢谢!更

c++ - ICU 布局示例以不同于 Microsoft 记事本和 Word 的方式呈现文本

我有一个双向文本1002-ابوماجدالانصاري大多数编辑器notepad++、notepad等都按此处显示的方式显示文本。但是,当我通过ICU处理此文本时,数字向右移动,然后是空格和连字符,然后是阿拉伯语。ICU的示例应用程序layout.exe也显示右侧的数字。我修改了paragraphlayout.cpp并设置了所有可能的重新排序模式,但结果仍然相同:有人可以帮助配置ICU以像其他显示引擎那样提供输出吗。 最佳答案 如果我没理解错的话,您的文本“以”数字“开头”,然后是连字符和文本。记事本和其他编辑器让您选择“书写方向

android - 如何将 RTL 文本(阿拉伯语)绘制到位图上并正确排序?

我正在尝试将阿拉伯文本绘制到位图上以供显示:Bitmapimg=Bitmap.createBitmap((int)f+100,300,Config.RGB_565);Canvasc=newCanvas();c.setBitmap(img);mFace=Typeface.createFromAsset(getAssets(),"DejaVuSansCondensed.ttf");mPaint.setTypeface(mFace);content="يجري";content=ArabicUtilities.reshape(content);System.out.println("Draw

android - 基于 String 内部语言的 TextView 自定义字体

我有两个字体ttf文件,必须根据String中的语言应用于TextView。所以例如考虑这个示例文本:heywhat'supضعيف我可以申请一个typefacespan基于语言,但它需要在从我们的服务器获取的每个字符串中进行自定义标记,例如heywhat'supضعيف并且在运行时解析每个String会影响性能。有没有其他方法可以实现这一点?首先让我们说我需要这样做只是为了文本的方向,即RTL和LTR,所以在上面的例子中,英语是LTR,阿拉伯语是RTL。这会有什么不同吗?我曾尝试合并这两个字体文件,但存在行高问题,如果我为一个字体文件修复它,它会在其他文件中损坏。

android - 文本在 Android 操作系统中的确切位置呈现?

首先让我说明一下我要实现的目标:为Android操作系统创建补丁,使其能够正确显示阿拉伯语/希伯来语。这两种语言都是从右到左(RTL),并且它们的脚本涉及连接的字母/字形(与具有离散字母的拉丁字母表不同)。例子:“汽车”的阿拉伯语单词是:سيارة离散字母看起来像这样:سيارة如您所见,每个字母以不同的方式相互连接,具体取决于其前后的内容。好的,语言课讲完了:)我的问题是:我需要劫持android中的什么二进制文件/类才能启用此功能?另一种说法是;如果您希望每个实例“x”在系统范围内显示为“y”,您需要干预什么二进制文件/类?源代码可在GitHub上浏览:http://github.

php - 模拟尚未实现的 <bdi> HTML 标签的方法?

目的thetaginHTML5是将双向文本与其上下文隔离开来。而这正是我要寻找的。从左到右的用户名显示如下:Welcome,GenericUser.[Logout]使用从右到左的用户名会变成这样糟糕的事情:Welcome,[tougoL].resUcireneG或者根据上下文甚至更糟,向后显示周围的所有内容(不仅仅是用户名)。问题是没有浏览器支持还没有标记,所以我在徘徊,有没有办法模拟它?什么HTML标签也可以隔离它?我知道和不要。我不想删除所有BIDI字符,但在我看来,正确显示我的网站的重要性>双向语言用户参与的权利。 最佳答案

php - 模拟尚未实现的 <bdi> HTML 标签的方法?

目的thetaginHTML5是将双向文本与其上下文隔离开来。而这正是我要寻找的。从左到右的用户名显示如下:Welcome,GenericUser.[Logout]使用从右到左的用户名会变成这样糟糕的事情:Welcome,[tougoL].resUcireneG或者根据上下文甚至更糟,向后显示周围的所有内容(不仅仅是用户名)。问题是没有浏览器支持还没有标记,所以我在徘徊,有没有办法模拟它?什么HTML标签也可以隔离它?我知道和不要。我不想删除所有BIDI字符,但在我看来,正确显示我的网站的重要性>双向语言用户参与的权利。 最佳答案

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

我正在尝试在HTML5Canvas的2d上下文中使用fillText()方法来绘制用阿拉伯语编写的字符串。它工作得很好,直到我在字符串的末尾放置了一个标点符号。然后标点符号出现在字符串的错误一侧(在开头,而不是结尾,就好像它是一个ltr而不是rtl字符串)。我玩过Context.textAlign属性,但这似乎只涉及字符串相对于指定位置的绘制方式,而不是文本的实际方向。有谁知道解决这个问题的方法吗?谢谢。更新:我找到的答案是向页面上的canvas元素添加一个“dir”属性。例如,但是,我仍然不知道如何更改发送到fillText的单个字符串的dir属性。有什么想法吗?
12