260 likes | 387 Vues
The Company…. The Market Leader in Globalization Technology Pioneers in visual translation environments Solutions for major platforms & programming languages 24.9% owned by Corel Corporation Sales growing 60+% annually Currently 10,000+ customers worldwide Offices in Ireland and USA.
E N D
The Company…. • The Market Leader in Globalization Technology • Pioneers in visual translation environments • Solutions for major platforms & programming languages • 24.9% owned by Corel Corporation • Sales growing 60+% annually • Currently 10,000+ customers worldwide • Offices in Ireland and USA
Speed Consistency Reduced Costs Our Product… • Alchemy CATALYST delivers :- • Speed : Faster delivery of products to market • Consistency: Automate product revisions with glossary and translation memory tools • ReducedCosts : Reduced QA/Engineering and Translation times using integrated environment
60 mins Agenda • What is Microsoft .NET ? • NET Framework • NamesSpaces – System.Globalization • Launching a .NET Application • Develop a .NET Application • Multi-Lingual Application • Create code to switch UI language • Localizing a .NET Application • Creating different language Cultures • Re-integrating translations • QA
= What is Microsoft .NET ? • Microsoft's platform for building, deploying, operating and integrating Web services • Rich XML, standard protocols • Cross-language development • Common language runtime • Common type system for all languages • Rich runtime environment • Rich class libraries (.NET Framework) • Windows Forms for rich, Win32 applications • Web application platform ASP.NET • Multi-lingual support • Rich API for internationalization features
.NET Framework • .NET Framework • Globalization Namespaces • Culture-sensitive classes • Resource Model • ASP .NET • International Support • Localization Options • VisualStudio.NET • Unicode Development Environment • XML • Unified IDE • VB, C#, C++
.NET Framework • 100% Unicode internally • Supports UTF-8 and UTF 16 encoding schemes • Consistent operations • Windows XP, Windows 2000, NT 4.0, 98, 95 etc. • Supports all NLS (Locale Support) • Collation Tables • String Comparisons • Language Processing (Casing etc.) • Currency, Date & Time etc.
ServiceProcess Globalization Serialization Diagnostics Resources Collections Threading Reflection Security Text Net I/O Globalization Namespaces • Heart of the .NET Framework • System.Globalization • Core NLS services (Date/Time, Currency, String management etc.) • System.Resource • Multi-Lingual Resource Services • System.Text • Core character conversion Services. (To/From Unicode) System
Locales System.Globalization • Culture-aware String Services • String Management • Casing, Comparison, Collation, • Segmentation, Enumeration etc. • Date/Time Formatting • dd/mm/yy, yy/mm/dd • Numeric Formatting • 12,000,000 and 12.000.000 • Calendar Support • Gregorian, non-gregorian • Our focus today :- • CultureInfo Class
CultureInfo CurrentUICulture de-DE CurrentCulture de-AT de-CH System.Globalization.CultureInfo • Information about specific cultures (Locales) • CurrentCulture • String casing and comparison • Collation • Numeric Formatting • Culture Names • RFC 1766 Standard • <LanguageCode>-<RegionCode> Thread.CurrentThread.CurrentCulture = new CultureInfo(“es-ES");
CultureInfo CurrentUICulture CurrentCulture System.Globalization.CultureInfo • Setting the UI of a .NET application • If not specified, .NET framework sets it for you ! • GetUserDefaultUILanguage • (ie UI Language of the OS) Thread.CurrentThread.CurrentUICulture = new CultureInfo("fr"); System. Globalization
CultureInfo CurrentUICulture CurrentCulture Language Locale Example 1 Launching .NET Applications Set UI Language to French, using Regional settings for France ! using System.Globalization; Thread.CurrentThread.CurrentCulture = new CultureInfo(“fr-FR");
CultureInfo CurrentUICulture CurrentCulture Language Locale Launching .NET Applications Example 2 Set UI Language to French, using Regional settings for Canada ! using System.Globalization; Thread.CurrentThread.CurrentCulture = new CultureInfo(“fr-CA");
CultureInfo CurrentUICulture CurrentCulture Locale Launching .NET Applications Example 3 Set UI Language to English, using Regional settings for Canada ! using System.Globalization; Thread.CurrentThread.CurrentCulture = new CultureInfo(“en-CA"); Language
Application Directory Root .NET Application de CultureInfo de-AT CurrentUICulture de-DE CurrentCulture de-LU de-CH ja Launching .NET Applications • RFC 1766 Standard • Directory Structure • Filename(s)
Application Directory Root .NET Application de CultureInfo de-AT CurrentUICulture de-DE CurrentCulture de-LU de-CH ja Launching .NET Applications Thread.CurrentThread.CurrentUICulture = new CultureInfo(“ja");
Application Directory Root .NET Application de CultureInfo de-AT CurrentUICulture de-DE CurrentCulture de-LU de-CH ja Launching .NET Applications Thread.CurrentThread.CurrentUICulture = new CultureInfo(“de");
Application Directory Root .NET Application de CultureInfo de-AT CurrentUICulture de-DE CurrentCulture de-LU de-CH ja Launching .NET Applications Thread.CurrentThread.CurrentCulture = new CultureInfo(“de-CH");
Fallback mechanism used to locate appropriate resources Attempt to load de-CH resource assemble If not available, load de assembly If not available, load default application resources Else raise an exception! 3 2 CultureInfo CurrentUICulture CurrentCulture 1 Launching .NET Applications ResourceFallbackMechanism Root .NET Application de de-AT de-DE de-LU de-CH ja
Resources are defined in XML documents RESX Files Filenames are significant Main1.resx Main1.fr.resx Main1.de.resx Satellite Assemblies For each language variant Building .NET Applications CompilationProcess .resx file .resource file .resource.dll file
Resources are defined in XML documents RESX Files Filenames are significant Main1.resx Main1.fr.resx Main1.de.resx Satellite Assemblies For each language variant Main1.fr.resx Building .NET Applications RESXStructure Main1.resx
Resources are defined in XML documents RESX Files Filenames are significant Main1.resx Main1.fr.resx Main1.de.resx Satellite Assemblies For each language variant Main1.fr.resx Main1.de.resx Building .NET Applications RESX Structure Main1.resx
Resources are defined in XML documents RESX Files Filenames are significant Main1.resx Main1.fr.resx Main1.de.resx Satellite Assemblies For each language variant de fr Building .NET Applications Satellite Assemblies Main1.resx Main1.fr.resx Main1.de.resx Application Directory Root .NET Application
Resources are defined in XML documents RESX Files Satellite Assemblies For each language variant Filenames are significant Main1.resx Main1.fr.resx Main1.de.resx Building .NET Applications Our First .NET Application • Simple .NET Application • En, Fr, De Languages • Menu, Dialog, Strings • Rich Text Editor
Satellite Assemblies Translation Process Insertion Translation Extraction Application Rebuild Microsoft C# compiler de fr en Translating .NET Applications Application Directory Structure LrcApp.Exe Localization Process – .resx