Windows Language Support
1.33k likes | 1.68k Views
Windows Language Support. Presenter: Erik Fortune MUI Development Manager Microsoft Corporation. Multilingual Matters!. Presentation Outline. Overview in Windows international settings Overview of language support in Windows Vista Deploying Windows Vista for multilingual scenarios
Windows Language Support
E N D
Presentation Transcript
Windows Language Support Presenter: Erik Fortune MUI Development Manager Microsoft Corporation
Presentation Outline • Overview in Windows international settings • Overview of language support in Windows Vista • Deploying Windows Vista for multilingual scenarios • Developing Globalized Applications on Windows Vista • Developing Win32 MUI Applications • Q&A
Presentation Goals • Attendees should leave this session with: • Familiarity with Windows multilingual functionality and related settings • Familiarity with multilingual deployment options for Windows Vista • Familiarity with infrastructure and APIs provided in Windows Vista for developing globalized applications • Pointers to additional information and resources • Out of scope: general Windows programming concepts
Assumptions • Familiarity with the basic concepts of writing globalized applications. • Familiarity with Windows Win32 application development.
International Settings in Windows Vista • Control panels: • Regional and Language Options • Date and Time
International Settings in Windows Vista • Date and Time:
International Settings in Windows Vista • Regional and Language Options: • Format: defaults for • Number formatting • Currency format • Date formats • Time formats • Sorting • Other user experiences involving user cultural preferences
International Settings in Windows Vista • Regional and Language Options: • Format: defaults for • Number formatting • Currency format • Date formats • Time formats • Sorting • Other user experiences involving user cultural preferences
International Settings in Windows Vista • Regional and Language Options: • Format: customizable defaults
International Settings in Windows Vista • Regional and Language Options: • Format: customizable defaults
International Settings in Windows Vista • Regional and Language Options: • Location
International Settings in Windows Vista • Regional and Language Options: • Keyboards and Languages • Enable/disable languages forinput & editing documents • Select keyboard layouts or other input methods
International Settings in Windows Vista • Regional and Language Options: • Keyboards and Languages • Enable/disable languages forinput & editing documents • Select keyboard layouts or other input methods
International Settings in Windows Vista • Regional and Language Options: • Keyboards and Languages • Enable/disable languages forinput & editing documents • Select keyboard layouts or other input methods
International Settings in Windows Vista • Regional and Language Options: • Keyboards and Languages • Change language for Windowsuser interface • Not all SKUs
International Settings in Windows Vista • Regional and Language Options: • Administrative • Machine-wide settings • “System locale” • Code page used by legacy apps • Also impacts some font behaviours (font linking)
International Settings in Windows Vista • Regional and Language Options: • Administrative • Machine-wide settings • Copy to reserved accounts • Default settings for new users
International Settings in Windows Vista • Regional and Language Options: • Can apply settings from command line control intl.cpl,, /f:"settingsfile.xml" • http://www.microsoft.com/globaldev/vista/vista_tools/vista_command_line_international_configuration.mspx • <gs:GlobalizationServicesxmlns:gs="urn:longhornGlobalizationUnattend"> • <!--User List--> • <gs:UserList> • <gs:UserUserID="Current"/> • </gs:UserList> • <!--User Locale--> • <gs:UserLocale> • <gs:Locale Name="en-US" SetAsCurrent="true"/> • </gs:UserLocale> • </gs:GlobalizationServices>
Multilingual Support in Windows Vista • Various possible levels of language support • Text display • Editing: text display and input method(s) • Keyboard layout or IME • Locale • Formats, collation, calendar • Localization • Partial — Complete • Extended language functionality • Voice: text-to-speech, speech recognition • Handwriting recognition • Language detection • Word breaker, stemmer; proofing tools
Text-display enablement • Includes: • Complex-script shaping support (if needed) • Fonts (at least one) • Font fallback • Implemented in Win32 APIs/controls • ExtTextOut, DrawText, User/common controls, RichEdit May or may not get implemented: • Dictionary-based line breaking • Special vertical-layout behaviour • Other frameworks (e.g. GDI+, WPF)
Text-display enablement: scripts • Windows XP • Europe: Latin, Cyrillic, Greek • W. Asia: Arabic, Armenian, Georgian, Hebrew, Syriac • E. Asia: CJK (Simplified, Traditional, Kana, Hangul, CJK Extension B) • S.E. Asia: Thai • S. Asia: Devanagari, Gujarati, Gurmukhi, Kannada, Telugu, Tamil, Thaana • Surrogates
Text-display enablement: scripts • Windows XP SP2 • Europe: Latin, Cyrillic, Greek • W. Asia: Arabic, Armenian, Georgian, Hebrew, Syriac • E. Asia: CJK (Simplified, Traditional, Kana, Hangul, CJK Extension B) • S.E. Asia: Thai • S. Asia: Bengali, Devanagari, Gujarati, Gurmukhi, Kannada, Malayalam, Telugu, Tamil, Thaana • Surrogates
Text-display enablement: scripts • Windows XP • CJK, “complex” scripts not enabled in all SKUs by default
Text-display enablement: scripts • Windows Vista • Europe: Latin, Cyrillic, Greek • W. Asia: Arabic, Armenian, Georgian, Hebrew, Syriac • E. Asia: CJK (Simplified, Traditional, Kana, Hangul, CJK Extension B), Mongolian, Yi • S.E. Asia: Khmer, Lao, Thai • S. Asia: Bengali, Devanagari, Gujarati, Gurmukhi, Kannada, Malayalam, Oriya, Sinhala, Telugu, Tamil, Thaana, Tibetan • Americas: Cdn Aboriginal Syllabics, Cherokee • Africa: Ethiopic • Surrogates
Loa text with DokChampa Font Oriya text with Kalinga Font Khmer text with DaunPenh Font Sinhala text with IskoolaPota Font Text-display enablement: scripts
Text-display enablement: scripts • Windows Vista • Text display for all scripts always enabled (all editions / SKUs) • Note: some perf considerations
Text-display enablement: scripts • Other enhancements: • Enhanced font fallback for Extension B • MingLiU vs. MingLiU_HKSCS vs. Simsun • Uniscribe • OpenType APIs • Apply discretionary OpenType feature tags • Apply OpenType language-system tags • Performance Demo
Text-display enablement: fonts • Many new fonts • New fonts for newly-supported scripts • New “Aero”-theme UI fonts (ClearType hinting)
Text-display enablement: fonts • Many new fonts • New ClearType-hinted document fonts • Other new fonts
Text-display enablement: fonts • Additions to existing fonts: Unicode 5.0 updates
Text-display enablement: fonts • Overall
Text-display enablement: fonts Font smoothing: ClearType selected by default • Tuning: http://www.microsoft.com/typography/ClearTypeInfo.mspx
Text-display enablement • Other graphics frameworks • GDI+ • Small increase in script support: • New: Oriya; Arabic/Hebrew/Thai OpenType • Comparison with GDI: • Support for ClearType hinting • Support for TrueType-flavour OpenType fonts • Support for OpenType fonts with embedded bitmaps • No support for Type 1/CFF-OpenType, bitmap/vector .FON • Unsupported scripts: Mongolian, Sinhala, Tibetan
Text-display enablement • Other graphics frameworks (cont’d) • Windows Presentation Foundation (.Net 3.5) • New text stack (.Net 3.0): managed-code shaping engines • ClearType, sub-pixel glyph positioning • Comparison with GDI • GDI does not support sub-pixel positioning • Support for OpenType fonts (TrueType or CFF outlines) • No support for embedded bitmaps • No support for Type 1, bitmap/vector .FON • Unsupported scripts: Khmer, Old Hangul, Sinhala
Text-display enablement • Other graphics frameworks (cont’d) • Windows Presentation Foundation (.Net 3.5) • ClearType, sub-pixel glyph positioning
Text-display enablement • Summary • Support for scripts used by all major languages with broad market interest, and hundreds of lesser-known languages • Most significant gap in current coverage: Myanmar • Enablement and fonts for a large portion of Unicode 5.0 • Many characters not covered in Vista fonts will display in documents using 3rd-party fonts • Support for advanced typography • WPF, Win32 (low-level APIs)
Text Input • Types of input • Keyboard / IME • Speech • Speech recognition • Text-to-speech • Hand-writing recognition • Infrastructure • Text Services Framework
Text Input • New keyboard layouts (non-IME)
Text Input • IMEs • CJK IME enhancements • Addition character support • JIS 2004, Extension B • Improved UI, dictionaries, logic • New input modes • IME Pad available from all IMEs • Yi • Amharic
Text Input • Handwriting recognition
Text Input • Voice • Speech recognition • Text-to-speech • Installed with UI language pack
Locale Data • Locale: default cultural conventions (formats, etc.) • Language / writing system / region • 35 new Vista locales • 206 total locales
Locale Data • Calendars • New: Saudi Hijri (Um Al Qura) • Supported calendars: • Gregorian • Hebrew (lunar) • Hijri • Japanese Imperial Era • Korean Tangun Era • Taiwan • Thai • Um Al Qura (Saudi Hijri)
UI Localization • Translate user-interface (menus, dialogs, etc) & helps • Different levels of localization • Language Packs for 36 SKU languages • Full • Partial + base language • Language Interface Packs (LIPs) • Most common UI only
UI Localization • SKU-level localization • Windows XP: 25 Arabic Finnish Polish French Brazilian Portuguese Portuguese German Chinese – Simplified Russian Greek Chinese – Traditional Hebrew Chinese – Traditional (HK) Hungarian Italian Spanish Czech Japanese Swedish Korean Danish Dutch Turkish English Norwegian -- Bokmål
UI Localization • SKU-level localization • Windows Vista: 36 Arabic Finnish Polish French Brazilian Portuguese Portuguese Bulgarian Romanian German Chinese – Simplified Russian Greek Chinese – Traditional Serbian – Latin Hebrew Slovak Chinese – Traditional (HK) Hungarian Slovenian Croatian Italian Spanish Czech Japanese Swedish Korean Danish Thai Dutch Latvian Turkish Lithuanian English Ukrainian Norwegian -- Bokmål Estonian
UI Localization • SKU languages • Full, partial • Multilingual User Interface (MUI) • Ultimate / Enterprise edns • User-selected UI language • Single-image deployment for multiple languages