Since Arabic script is complex, applications must support all the special features Arabic requires. This includes supporting right-to-left behavior, positional forms of characters (isolate, initial, medial and final) as well as dynamically positioned diacritics, ligatures, or alternate glyphs.

There are three main kinds of smart font rendering. These are OpenType, Graphite and AAT (Apple Advanced Typography).

OpenType

Most of our fonts support the OpenType shaping features specified by Microsoft. There are various flavors of OpenType. A number of applications on Windows might use Uniscribe or DirectWrite to provide OpenType support. Some applications might support International Components for Unicode (ICU) OpenType rendering. Others, such as Adobe products, have their own rendering engine. Many applications have moved to using Harfbuzz (which can support both OpenType and Graphite rendering).

Graphite

Applications that support Graphite.

AAT (Apple Advanced Typography)

Older versions of Scheherazade and Lateef supported AAT. However, none of our current font versions support AAT.

Right-to-left scripts in Microsoft Office

This template provides helpful hints on use of right-to-left (RTL) scripts in Microsoft Word along with some macros designed to deal with various RTL-related issues.

Data Conversion

Converting from Latin script (or any other script) to Arabic script is not usually a straightforward 1-1 conversion. However, it can be done. TECkit, SIL Converters, and the following webpage will be helpful in the process: Roman Script to Arabic Script Conversion.

Application Support for smart font rendering

The issues regarding whether an application supports one rendering engine or another are quite complex. We do not attempt to tell you which OpenType rendering engine an application is using. However, the list below does include which version of Unicode an application may support in OpenType rendering.

During our testing we found that the version of an application is often more important than the version of the Operating System (unless a very old Operating System is being used). Unless we indicate an OS version (such as Win8.1) it likely will not make much difference the level of support.

No new Arabic script characters were added to Unicode 10.0, 12.0 or 12.1.

ApplicationSupports OpenType through Unicode version¹Supports Graphite
Windows, macOS, Linux
   LibreOffice 7.6.0.3Unicode 15.0Unicode 15.0
   LibreOffice 7.4.3.2Unicode 14.0Unicode 14.0
   XeTeX (TeXLive 2023)Unicode 15.0Unicode 15.0
   XeTeX (TeXLive 2022)Unicode 14.0Unicode 14.0
   Mozilla Firefox 117.0+Unicode 15.0Unicode 15.0⁷
   Google Chrome 116.0.5845.140+Unicode 15.0
ApplicationSupports OpenType through Unicode version¹Supports Graphite
Windows
   Microsoft Edge 116.0.1938.62Unicode 15.0
   Windows 10/11/NotepadUnicode 7.0
   Windows 8.1/NotepadUnicode 6.1²
   Word 2010+Depends on OS support⁶
   Publisher 2010+Depends on OS support⁶
   Adobe InDesign CS6/CC 2015Unicode 5.1³
   Adobe InDesign CC 2023Unicode 14.0³
   Paratext 7.5.100Unicode 6.1Unicode 8.0
   Paratext 8.0.100.12Unicode 8.0Unicode 9.0
   FLEx 8.2.6Unicode 4.1Unicode 8.0
   Bloom 3.5.1Unicode 6.1Unicode 8.0
   Bloom 3.8.8Unicode 8.0Unicode 9.0
Mac OSX
   LibreOffice 4.4.4.3+Unicode 7.0
   Nisus Writer Pro v. 2.1.4Unicode 7.0
   Nisus Writer Express 3.4.6Unicode 7.0
   Apple Pages 5.6Unicode 7.0⁴
   Microsoft Word for Mac v. 15.19.1 (160212)Unicode 4.1
   Microsoft Word 2011Unicode 4.1
   TextEdit 1.11Unicode 7.0
   Adobe InDesign CS6+Unicode 5.1³
Linux
   LibreOffice 5.1Unicode 6.1²Unicode 8.0⁵

¹Since many applications only support Arabic script up to a certain version of Unicode, we list the Arabic script characters added to different versions of Unicode since Unicode 5.1:

²Does not implement support for U+08EA..U+08EF (Rohingya tone marks).

³InDesign CS6+ supports Stylistic Sets. However, most of our Arabic fonts use Character Variants and InDesign does not yet support Character Variants. There is a special that has been developed Character Variant Prompt .

⁴May not consistently render U+06DD End of Ayah.

⁵Older versions may have rendering errors (duplicating characters).

⁶Office stopped redistributing Uniscribe with Office 2010. Since then, all new versions have been using the OS for shaping.

⁷Graphite support in Firefox is available on Windows, Linux and OSX. Please see graphite.sil.org for instructions on enabling Graphite in Firefox.