Uniscribe
   HOME

TheInfoList



OR:

Uniscribe is the
Microsoft Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
set of services for rendering
Unicode Unicode, formally The Unicode Standard,The formal version reference is is an information technology standard for the consistent encoding, representation, and handling of text expressed in most of the world's writing systems. The standard, ...
-encoded text, supporting
complex text layout Complex text layout (CTL) or complex text rendering is the typesetting of writing systems in which the shape or positioning of a grapheme depends on its relation to other graphemes. The term is used in the field of software internationalizatio ...
. It is implemented in the
dynamic link library Dynamic-link library (DLL) is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems. These libraries usually have the file extension DLL, OCX (for libraries containing ActiveX controls), or ...
. Uniscribe has been released with
Windows 2000 Windows 2000 is a major release of the Windows NT operating system developed by Microsoft and oriented towards businesses. It was the direct successor to Windows NT 4.0, and was released to manufacturing on December 15, 1999, and was offici ...
and
Internet Explorer Internet Explorer (formerly Microsoft Internet Explorer and Windows Internet Explorer, commonly abbreviated IE or MSIE) is a series of graphical web browsers developed by Microsoft which was used in the Windows line of operating systems (in ...
5.0. In addition, the
Windows CE Windows Embedded Compact, formerly Windows Embedded CE, Windows Powered and Windows CE, is an operating system subfamily developed by Microsoft as part of its Windows Embedded family of products. Unlike Windows Embedded Standard, which is base ...
platform has supported Uniscribe since version 5.0. "USP" is an
initialism An acronym is a word or name formed from the initial components of a longer name or phrase. Acronyms are usually formed from the initial letters of words, as in ''NATO'' (''North Atlantic Treaty Organization''), but sometimes use syllables, as ...
for Unicode Scripts Processor. Its features include: * arranging input text from the input sequence to visual sequence; * substituting glyphs according to context (e.g., different forms of Arabic characters); * ordering displayed text based on text flow direction, such as left-to-right or right-to left, horizontal or vertical. Although Uniscribe continues to be maintained as of 2021, its intended replacement
DirectWrite DirectWrite is a text layout and glyph rendering API by Microsoft. It was designed to replace GDI/GDI+ and Uniscribe for screen-oriented rendering and was first shipped with Windows 7 and Windows Server 2008 R2, as well as Windows Vista and Win ...
, which has more features, has been introduced with
Windows 7 Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was Software release life cycle#Release to manufacturing (RTM), released to manufacturing on July 22, 2009, and became generally available on October 22, ...
.


USP10.DLL Versions

Below are listed some common versions of usp10.dll, as well as the methods by which they are distributed. Features are added according only the "major.minor" part of the version number, the third part in the full version number is used for system target identification numbers for which the DLL was ported by Microsoft, and the last part is the build number on each target system version (which may change within regular system/software updates). Some hotfixes provide upgrades only for specific applications (notably in the Office installation directory), and not suited for use in the Windows system directory (whose version of the DLL should never be updated and is often protected by the system): File sizes may vary depending on specific localizations of the DLL (depending on the target system or application for which it was compiled); those given here are for the US-English localization.


Universal Shaping Engine

Scripts with
complex text layout Complex text layout (CTL) or complex text rendering is the typesetting of writing systems in which the shape or positioning of a grapheme depends on its relation to other graphemes. The term is used in the field of software internationalizatio ...
have contextual and non-linear requirements to render their typography correctly. These requirements include: ligatures, where two consecutive characters are combined into one shape (Latin, Devanagari); reordering, where some characters are written before the letter they follow in pronunciation (Bengali, Sinhala, and other Indic scripts); and context-shaping, where some letters have to change shape depending on whether they occur in the beginning, middle, or the end of the word (Arabic, Mongolian). Uniscribe uses several script-specific shaping engines for handling typography in supported complex scripts; these are implemented in addition to a generic engine for non-complex scripts (such as Latin or Cyrillic). The currently used engines include Indic (Bengali, Devanagari, Gujarati, Gurmukhi, Kannada, etc.), Arabic, Hangul, Hebrew, Khmer, Myanmar, and Thai/Lao variants. The complexity of the Unicode standard and ambiguities in OpenType specification often result in incomplete or erroneous implementations of complex text layout. Script-specific shaping engines work on a case-by-case basis and do not consistently handle common features of OpenType fonts, which makes it difficult for OS programmers and font developers to support new scripts. Implementation errors are very hard or impossible to correct at a later stage without breaking up
backward compatibility Backward compatibility (sometimes known as backwards compatibility) is a property of an operating system, product, or technology that allows for interoperability with an older legacy system, or with input designed for such a system, especiall ...
for existing documents and fonts, often requiring new OpenType layout features and a redesign of existing fonts and typography rendering engines.Problems for Indic typography in current OpenType Layout implementations - John Hudson
/ref>Fixing Indic2 OpenType Layout - John Hudson
/ref> Beyond shaping and towards a general model of OpenType typography - John Hudson
/ref> In Windows 10, major refactoring work was done for Uniscribe to implement a generalized shaping model, the Universal Shaping Engine (USE). This engine is directly based on glyph properties defined in the Unicode standard, in the hope that any complex script with a suitable font would be supported without the time and effort required to create a dedicated shaping engine.Windows shapes the world’s languages - Andrew Glass
/ref> USE builds on a generalized "universal cluster model" developed for the Indic scripts, which models a superset of human writing systems. The engine classifies each character of a complex script into several categories, base classes and subclasses. For example, a provisional Indic classification includes general, syllabic and positional categories, further divided them into base (number, consonant, tone letter, dependent vowel, etc.), base vowel (independent vowel), number (Brahmi joining number), final, medial, and modifier consonants, medial consonants, as well as top, bottom, left and right consonants and vowels. Unicode symbol strings are converted into collection of USE classes using well-defined rules, making glyph composition a standard procedure and allowing inter-character interactions not possible with current language features defined in OpenType specifications. The Universal Shaping Engine was presented at the OpenType Developer Meeting in 2014; a compatible approach has also been implemented by the open source HarfBuzz text shaper. As of 2020, the USE in Windows 10 handles a total of 70 complex scripts: Adlam, Ahom, Balinese, Batak, Bhaiksuki, Brahmi, Buginese, Buhid, Chakma, Cham, Chorasmian, Dives Akuru, Duployan, Egyptian Hieroglyphs, Elymaic, Grantha, Gunjala Gondi, Hanifi Rohingya, Hanunoo, Javanese, Kaithi, Kayah Li, Kharoshthi, Khitan Small Script, Khojki, Khudawadi, Lepcha, Limbu, Mahajani, Makasar, Mandaic, Manichaean, Marchen, Masaram Gondi, Medefaidrin, Meitei Mayek, Miao, Modi, Mongolian, Multani, Nandinagari, Newa, N’Ko, Nyiakeng Puachue Hmong, Pahawh Hmong, Phags-pa, Psalter Pahlavi, Rejang, Saurashtra, Sharada, Siddham, Sinhala, Sogdian, Old Sogdian, Soyombo, Sundanese, Syloti Nagri, Tagalog, Tagbanwa, Tai Le, Tai Tham (limited support), Tai Viet, Takri, Tibetan, Tifinagh, Tirhuta, Wancho, Yezidi, and Zanabazar Square.


Versions

Although Uniscribe has been available since Windows 2000, new versions of Uniscribe provided more functions to the system, namely, support for other writing systems. An earlier update of it supports the display of
Arabic Arabic (, ' ; , ' or ) is a Semitic language spoken primarily across the Arab world.Semitic languages: an international handbook / edited by Stefan Weninger; in collaboration with Geoffrey Khan, Michael P. Streck, Janet C. E.Watson; Walter ...
and
Hebrew Hebrew (; ; ) is a Northwest Semitic language of the Afroasiatic language family. Historically, it is one of the spoken languages of the Israelites and their longest-surviving descendants, the Jews and Samaritans. It was largely preserved ...
, then Thai and Vietnamese. Since
Windows XP Windows XP is a major release of Microsoft's Windows NT operating system. It was release to manufacturing, released to manufacturing on August 24, 2001, and later to retail on October 25, 2001. It is a direct upgrade to its predecessors, Wind ...
, more South Asian and Assyrian scripts are supported.


See also

*
International Components for Unicode International Components for Unicode (ICU) is an open-source project of mature C/ C++ and Java libraries for Unicode support, software internationalization, and software globalization. ICU is widely portable to many operating systems and environ ...
*
OpenType OpenType is a format for scalable computer fonts. It was built on its predecessor TrueType, retaining TrueType's basic structure and adding many intricate data structures for prescribing typographic behavior. OpenType is a registered trademark ...
*
Apple Advanced Typography Apple Advanced Typography (AAT) is Apple Inc.'s computer technology for advanced font rendering, supporting internationalization and complex features for typographers, a successor to Apple's little-used QuickDraw GX font technology of the mid- ...
* Pango * Graphite (SIL) *
DirectWrite DirectWrite is a text layout and glyph rendering API by Microsoft. It was designed to replace GDI/GDI+ and Uniscribe for screen-oriented rendering and was first shipped with Windows 7 and Windows Server 2008 R2, as well as Windows Vista and Win ...


References

;Notes
Uniscribe

Microsoft Typography

Uniscribe at MSDN
* Summer Institute of Linguistics
Uniscribe versions


External links




Uniscribe versions

Introduction to Uniscribe and Good Demo
{{Microsoft APIs Unicode Text rendering libraries