© Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

32
© Zühlke 2014 Tobias Kniep Effective Internationalizati on for Embedded Systems 26. February 2014

Transcript of © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Page 1: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

© Zühlke 2014

Tobias Kniep

Effective Internationalization for Embedded Systems

26. February 2014

Page 2: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

SafetyUsability Acceptance

Page 3: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.
Page 4: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.
Page 5: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Shibuya Crossing, Tokyo by Terrazo, on Flickr. Creative Commons Attribution 2.0 Generic License

Page 6: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.
Page 7: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Coded Character Set“A mapping from a set of abstract characters to a set of integers.” Ken Lunde,

CJKV Information Processing

Page 8: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.
Page 9: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Unicode

Page 10: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

ASCII128

JIS X 0213:2004 4354

Unicode BMP 65536

Unicode1114112

Number of characters

Page 11: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

How to represent the chars?

Page 12: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

ASCII

H e a l t h 0x48 0x65 0x61 0x6C 0x74 0x68

[0x48,0x65,0x61,0x6C,0x74,0x68]

Page 13: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Encoding Form

„A character encoding form plus byte serialization “

Glossary of theUnicode Consortium

„Mapping from a character set definition to the actual code units used to represent the data.”

Encoding Scheme

Page 14: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.
Page 15: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Unicode

健 康 0x5065 0x5EB7

UTF-16LE:[0x65,0x50,0xB7,0x5E]? UTF-8:[0xE5,0x81,0xA5,0xE5,0xBA,0xB7]

UTF-32BE:[0x00,0x00,0x50,0x65,0x00,0x00,0x5E,0xB7]

�康

Page 16: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Endianess

Page 17: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Little Endian

Big Endian [0x65,0x50,0xB7,0x5E]

[0x50,0x65,0x5E,0xB7]

健康(0x6550,0xB75E)

敐띞

Page 18: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

UTF-8H 0x48¥ 0xC2,0xA5

健 0xE5,0x81,0xA5

𠀷 0xF0,0xA0,0x80,0xB7

0x48 010010000xC2 110000100xE5 111001010xF0 11110000

Page 19: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

UTF-16H 0x0048¥ 0x00A5

健 0x5065

𠀷 0xD840,0xDC37

Page 20: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

UTF-32H 0x00000048¥ 0x000000A5

健 0x00005065

𠀷 0x00020037

Page 21: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

UTF-8

Page 22: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

How to display chars?

Page 23: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Font“A collection of glyphs usedfor the visual depictionof character data.”

Glossary of theUnicode Consortium

Page 24: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Pixel-Matrix Here:

3 bits/pixel

No scaling

Easy todisplay

Predictable

output

Bitmap Font

Large

Page 25: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.
Page 26: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Outline FontLines, Arcs,

CurvesNeeds Renderer

Scaling

Output hard

to predict

Page 27: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Bitmap Font

Page 28: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Anti-aliasing

Page 29: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

CharacterSet Encoding Font

Page 30: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Ken Lunde, CJKV Information ProcessingO’Reilly 2009

Page 31: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Question? Comments? Opinions?

[email protected] 5 / 5-240

Page 32: © Zühlke 2014 Tobias Kniep Effective Internationalization for Embedded Systems 26. February 2014.

Kontaktieren Sie mich! Gerne beantworte ich Ihre Fragen…

Tobias Kniep