Fundamentally, computers just deal with numbers. They store letters and other characters by assigning a number for each one. There are hundreds of different encoding systems for mapping characters to numbers, but Unicode promises a single mapping. Unicode enables a single software product or website to be targeted across multiple platforms, languages and countries without re-engineering. It's no wonder that industry giants like Apple, Hewlett-Packard, IBM andMicrosoft have all adopted Unicode.
Containing everything you need to understand Unicode, this comprehensive reference from O'Reilly takes you on a detailed guide through the complex character world. For starters, it explains how to identify and classify characters - whether they're common, uncommon, or exotic. It then shows you how to type them, utilize their properties, and process character data in a robust manner.
The book is broken up into three distinct parts. The first few chapters provide you with a tutorial presentation of Unicode and character data. It gives you a firm grasp of the terminology you need to reference various components, including character sets, fonts and encodings, glyphs and character repertoires.
The middle section offers more detailed information about using Unicode and other character codes. It explains the principles and methods of defining character codes, describes some of the widely used codes, and presents code conversion techniques. It also discusses properties of characters, collation and sorting, line breaking rules and Unicode encodings. The final four chapters cover more advanced material, suchas programming to support Unicode.
You simply can't afford to be without the nuggets of valuable information detailed in Unicode Explained.
Inhaltsverzeichnis
Preface;
Audience;
Assumptions and Approach;
Contents of This Book;
Self-Assessment Test;
Conventions Used in This Book;
Using Code Examples;
Safari® Enabled;
How to Contact Us;
Acknowledgments;
Working with Characters;
Chapter 1: Characters as Data;
1. 1 Introduction to Characters and Unicode;
1. 2 What's in a Character? ;
1. 3 Variation of Writing Systems;
1. 4 Glyphs and Fonts;
1. 5 Definitions of Character Repertoires;
1. 6 Numbering Characters;
1. 7 Encoding Characters as Octet Sequences;
1. 8 Working with Encodings;
1. 9 Working with Fonts;
1. 10 Summaries;
Chapter 2: Writing Characters;
2. 1 Method Varieties;
2. 2 Keyboard Variation and Settings;
2. 3 Virtual Keyboards;
2. 4 Program Commands;
2. 5 Character Maps;
2. 6 Replacements on the Fly;
2. 7 Special Techniques;
2. 8 Escape Sequences;
2. 9 Specialized Editors;
2. 10 Exercise;
Chapter 3: Character Sets and Encodings;
3. 1 Good Old ASCII;
3. 2 ISO 8859 Codes;
3. 3 Windows Latin 1 and Other Windows Codes;
3. 4 Other 8-bit Codes;
3. 5 Unicode and UTF-8;
3. 6 Encodings for East Asian Language;
3. 7 Converters and Transcoding;
3. 8 Using Character Codes;
A Systematic Look at Unicode;
Chapter 4: The Structure of Unicode;
4. 1 Design Principles;
4. 2 Versions of Unicode;
4. 3 Coding Space;
4. 4 Unicode Terms;
4. 5 Guide to the Unicode Standard;
4. 6 Unicode and Fonts;
4. 7 Criticism of Unicode;
4. 8 Questions and Answers;
Chapter 5: Properties of Characters;
5. 1 Character Classification;
5. 2 An Overview of Properties;
5. 3 Compositions and Decompositions;
5. 4 Normalization;
5. 5 Case Properties;
5. 6 Collation and Sorting;
5. 7 Text Boundaries;
5. 8 Directionality;
5. 9 Line-Breaking Properties;
5. 10 Unicode Conformance Requirements;
5. 11 Effects on Choosing Characters;
Chapter 6: Unicode Encodings;
6. 1 Unicode Encodings in General;
6. 2 UTF-32 and UCS-4;
6. 3 UTF-16 and UCS-2;
6. 4 UTF-8;
6. 5 Byte Order;
6. 6 Conversions Between Unicode Encodings;
6. 7 Other Encodings;
6. 8 Auto-Detecting the Encoding;
6. 9 Choosing an Encoding;
Advanced Unicode Topics;
Chapter 7: Characters and Languages;
7. 1 Writing Systems and IT;
7. 2 Character Requirements of Languages;
7. 3 Transliteration and Transcription;
7. 4 Language Metadata;
7. 5 Languages and Fonts;
Chapter 8: Character Usage;
8. 1 Basics of Character Usage;
8. 2 ASCII (Basic Latin);
8. 3 Latin-1 Supplement (ISO 8859-1);
8. 4 Other Latin Letters;
8. 5 Other European Alphabetic Scripts;
8. 6 Diacritic Marks;
8. 7 Letterlike Symbols;
8. 8 General Punctuation;
8. 9 Line Structure Control;
8. 10 Mathematical and Technical Symbols;
8. 11 Other Blocks;
Chapter 9: The Character Level and Above;
9. 1 Levels of Text Representation and Processing;
9. 2 Characters and Markup;
9. 3 Media Types for Text;
Chapter 10: Characters in Internet Protocols;
10. 1 Information About Encoding;
10. 2 Characters in MIME;
10. 3 Content Negotiation and Multilingual Sites;
10. 4 Characters in Protocol Headers;
10. 5 Characters in Domain Names and URLs;
Chapter 11: Characters in Programming;
11. 1 Characters in Computer Languages;
11. 2 Character and String Data;
11. 3 The Preparedness Principle;
11. 4 Character Input and Output;
11. 5 Processing Form Data;
11. 6 Identifiers, Patterns, and Regular Expressions;
11. 7 International Components for Unicode (ICU);
11. 8 Using Locales;
Tables for Writing Characters;
Additional Notes;
Colophon;