SlideShare uma empresa Scribd logo
1 de 37
Baixar para ler offline
Bopomofo Ruby
implement and requirement	

!
Bobby Tung	

!
Founder of Wanderer Digital Publishing Inc.

Consultant of Taiwan Digital Publishing Forum	

!
June 4, 2013
What is Bopomofo?
•

Bopomofo is a phonetic system with 100 years history
used by Republic of China(Taiwan).	


•
•

Bopomofo is used in education from grade 1 to grade 4 .	

90% people in Taiwan use Bopomofo as main input
method. So that's very important.

figure 1) Bopomofo is simplified symbols from character with pronunciation.
Structure of Bopomofo
• Bopomofo system contains 37 symbols
with 4 tone marks.
ㄅ

U+3105

ㄚ

U+311A

ㄆ

U+3106

ㄛ

U+311B

ㄇ

U+3107

ㄜ

U+311C

ㄈ

U+3108

ㄝ

U+311D

ㄉ

U+3109

ㄞ

U+311E

ㄊ

U+310A

ㄟ

U+311F

ㄋ

U+310B

ㄠ

U+3120

ㄌ

U+310C

ㄡ

U+3121

ㄍ

U+310D

ㄢ

U+3122

ㄎ

U+310E

ㄣ

U+3123

ㄏ

U+310F

ㄤ

U+3124

ㄐ

U+3110

ㄥ

U+3125

ㄑ

U+3111

ㄦ

U+3126

ㄒ

U+3112

ㄧ

U+3127

ㄓ

U+3113

ㄨ

U+3128

ㄔ

U+3114

ㄩ

U+3129

ㄕ

U+3115

ㄖ

U+3116

˙˙

U+02D9

ㄗ

U+3117

ˊ

U+02CA

ㄘ

U+3118

ˇ

U+02C7

ㄙ

U+3119

ˋ

U+02CB

chart 1) Bopomofo symbols and tone marks in UNICODE chart
˙	

ㄇ	

 ㄨ	

 ㄓ
ˇ ˋ
⼀一	

 ㄛ
ㄠ

21 Consonants	


•

14 cannot pronounce alone.	


•

7 can pronounce alone.
˙	

ㄇ	

 ㄨ	

 ㄩ
ˇ ˊ
⼀一	

 ㄛ
ㄠ

!

16 Rhymes and Medials	


•

All can pronounce alone.	


•

3 as medials can also pronounce
with other Rhymes.
4 Tone Marks	


˙	

ㄇ	

 ㄨ	

 ㄩ
ˇ ˊ
⼀一	

 ㄛ
ㄠ

•

3(ˊ ˇ ˋ)should be placed to
the right, usually aligned middle.

They affect whole character
pronunciation, so they should be
placed in parallel. 	


•

1(˙)should be placed above
symbols. 

It affects consonant and first
rhyme, so it should be placed
above.
Usage of Bopomofo
• Bopomofo of a character could be:	

1. a set of 1~4 full width symbol(s) and a tone mark.	

2. a set of 1~3 full width symbol(s) w/wo a tone mark
right aside.	


• Bopomofo placed to the right of the Chinese

character vertically in most all printed books,
whether horizontal or vertical writing.	


• Bopomofo usually marked with every

character in books for education purpose.
In Print Media
•

Ministry of Education Taiwan
had published its
composition rule in 2000.	


•

Almost impossible to do asis on web.	


•

Tone makers’ glyphs are
another issue.
˙

U+02D9

DOT ABOVE

ˊ

U+02CA

MODIFIER LETTER ACUTE ACCENT

ˇ

U+02C7

CARON

ˋ

U+02CB

MODIFIER LETTER GRAVE ACCENT

chart 2) Bopomofo tone makers’ glyphs are hard 	

to fulfill MoE’s requirement.

figure 2) Bopomofo composition rule	

in printed media by Ministry of Education.
100%

100%

25%

喵

˙
ㄇ
ㄧ
ㄠ

Case 1) a set of 4 full width symbols and tone mark.	


25%
25%
25%
25%
100%

100%

25%

標

ㄅ
ㄧ
ㄠ

Case 2) a set of 3 full width symbols.	


25%
25%
25%
100%

100%

25%

飛

ㄈ
ㄟ

Case 3) a set of 2 full width symbols.	


25%
25%
100%

100%

25%

知

ㄓ

Case 4) 1 full width symbol.	


25%
100%

100%

⿃鳥

25%

25%

ㄋ
ㄧˇ
ㄠ

Case 5) a set of 3 full width symbols with a tone mark aside right.	


25%
25%
25%

25%
100%

100%

我

25%

25%

ㄨ
ˇ
ㄛ

Case 6) a set of 2 full width symbols with a tone mark aside right.	


25%
25%
25%
100%

100%

⿂魚

25%

25%

ㄩˊ

Case 7) a set of 1 full width symbols with a tone mark aside right.	


25%

25%
Samples
of Bopomofo Ruby
HTML markup
•
•
•

Marked as mono-ruby(モノルビ).	

Nested ruby structure for side tone mark.	

Add class for relative font-size setting.

<ruby>左<rt><ruby>ㄗㄨㄛ<rt class="tone">ˇ</rt></ruby></rt></ruby>	

<ruby>邊<rt>ㄅㄧㄢ</rt></ruby>	

<ruby>⼀一<rt>ㄧ</rt></ruby>	

<ruby>隻<rt>ㄓ</rt></ruby>	

<ruby>貓<rt>ㄇㄠ</rt></ruby>	

<ruby>喵<rt>˙ㄇㄧㄠ</rt></ruby>	

<ruby>喵<rt>˙ㄇㄧㄠ</rt></ruby>	

<ruby>叫<rt><ruby>ㄐㄧㄠ<rt class="tone">ˋ</rt></ruby></rt></ruby>
figure 3) HTML markup for Bopomofo implementation	

*<rp> is omitted for editing easily
Stylesheet design
•
•

<rt>’s font-size by proportion.	

<p>’s font-size must be absolute value.
h1{	

font-family: "Heiti-TC", Sans-serif;	

margin-right: 0.5em;	

}	

!
p{	

font-family: "Heiti-TC", Sans-serif;	

font-size: 12pt;	

line-height: 1.7em;	

}	


rt{	

font-size: 25%;	

line-height: normal;	

text-align: center;	

}	

!
rt.tone{	

font-size: 100%;	

}

figure 4) CSS for Bopomofo implementation
On Webkit

figure 5) Bopomofo sample on Webkit
EPUB 3 FXL

figure 6) Bopomofo EPUB 3 FXL sample on iBooks
EPUB reflow

figure 7) Bopomofo EPUB 3 sample on iBooks	

no line length

figure 8) Bopomofo EPUB 3 sample on Kobo iOS App	

no pagination
Horizontal Writing CSS
•
•

imply writing-mode: vertical-lr.	

imply display: inline.
rt{	

font-size: 25%;	

line-height: normal;	

text-align: center;	

-epub-writing-mode: vertical-lr;	

-webkit-writing-mode: vertical-lr;	

vertical-align: middle;	

display: inline;	

}	


!
figure 9) CSS for Bopomofo implementation in Horizontal Writing.
Horizontal Writing HTML
Mono	

Ruby

<ruby>左<rt><ruby>ㄗㄨㄛ<rt class="tone">ˇ</
rt></ruby></rt></ruby>	

<ruby>邊<rt>ㄅㄧㄢ</rt></ruby>	

<ruby>⼀一<rt>ㄧ</rt></ruby>	

<ruby>隻<rt>ㄓ</rt></ruby>	

<ruby>貓<rt>ㄇㄠ</rt></ruby>	

<ruby>喵<rt>˙ㄇㄧㄠ</rt></ruby>	

<ruby>喵<rt>˙ㄇㄧㄠ</rt></ruby>	

<ruby>叫<rt><ruby>ㄐㄧㄠ<rt class="tone">ˋ</
rt></ruby></rt></ruby>

Group	

Ruby

<ruby>左<rt><ruby>ㄗㄨㄛ<rt class="tone">ˇ</
rt></ruby></rt>	

邊<rt>ㄅㄧㄢ</rt>	

⼀一<rt>ㄧ</rt>	

隻<rt>ㄓ</rt>	

貓<rt>ㄇㄠ</rt>	

喵<rt>˙ㄇㄧㄠ</rt>	

喵<rt>˙ㄇㄧㄠ</rt>	

叫<rt><ruby>ㄐㄧㄠ<rt class="tone">ˋ</rt></
ruby></rt></ruby>
figure 10) In horizontal writing, Mono Ruby will cause layout break.
align issue

inline issue

letter spacing issue

(investigating)

figure 11) In horizontal writing, Issues Bopomofo ruby confronted.
Requirement
ruby-align: center
•
•

Behave as Case 1~7.	


•

Keep proportion even
with relative font-size.
(for ebook convention)	


•

Conflict with Japanese
Ruby Requirement?

Ruby text in this mode
compressed to fit ruby
base width.	


figure 12) In vertical writing, font-size is relative

(font-size: 100%).
ruby-position: inter-character
•

keep Bopomofo ruby
placed right of ruby base.
especially in horizontal
writing.	


•

With this property, ruby
base and ruby text
should not be separated
with line-break.(as linestart prohibition rule?)
figure 13) Taiwan’s Mandarin textbook, quiz section. 	

horizontal writing with Bopomofo.
Alternative Solution
Webfont
• It works, but not good enough.	

• Lot of Chinese characters have alternative
pronunciations, max to 6 patterns.	


• 6 fonts with contents span class markup

cannot be done easily. Even with subset to
reduce size.	


• It’s proprietary, not open standard.
Tool
Why Tool?
• Bopomofo usually marked with every

character in books for educational purpose.	


• Lot of Chinese characters have alternative
pronunciations, maximum to 6 patterns.	


=Tool to convert article into Bopomofo
ruby html with choosing for pronunciations
.
Browser implement
• Government in Taiwan is willing to host a
project to speedup browser implement. 	


• May start late this year.
Thank you!
bobbytung@wanderer.tw

Mais conteúdo relacionado

Mais de Bobby Tung

2021年台灣數位出版聯盟電子書線上直播課程
2021年台灣數位出版聯盟電子書線上直播課程2021年台灣數位出版聯盟電子書線上直播課程
2021年台灣數位出版聯盟電子書線上直播課程Bobby Tung
 
W3C數位出版組織說明與規格最新動態
W3C數位出版組織說明與規格最新動態W3C數位出版組織說明與規格最新動態
W3C數位出版組織說明與規格最新動態Bobby Tung
 
Implement bopomofo by open type font feature
Implement bopomofo by open type font featureImplement bopomofo by open type font feature
Implement bopomofo by open type font featureBobby Tung
 
幾個中文排版訣竅,有效改善閱讀體驗
幾個中文排版訣竅,有效改善閱讀體驗幾個中文排版訣竅,有效改善閱讀體驗
幾個中文排版訣竅,有效改善閱讀體驗Bobby Tung
 
Emoji再來一次之送素還真進Unicode
Emoji再來一次之送素還真進UnicodeEmoji再來一次之送素還真進Unicode
Emoji再來一次之送素還真進UnicodeBobby Tung
 
從Epub製作看編輯流程轉型
從Epub製作看編輯流程轉型從Epub製作看編輯流程轉型
從Epub製作看編輯流程轉型Bobby Tung
 
我們需要中文公共領域作品的開放圖書館嗎?
我們需要中文公共領域作品的開放圖書館嗎?我們需要中文公共領域作品的開放圖書館嗎?
我們需要中文公共領域作品的開放圖書館嗎?Bobby Tung
 
自己的Emoji自己造
自己的Emoji自己造自己的Emoji自己造
自己的Emoji自己造Bobby Tung
 
COSCUP 2015 中文排版需求以及我在W3C看到的事情(薄碼版)
COSCUP 2015 中文排版需求以及我在W3C看到的事情(薄碼版)COSCUP 2015 中文排版需求以及我在W3C看到的事情(薄碼版)
COSCUP 2015 中文排版需求以及我在W3C看到的事情(薄碼版)Bobby Tung
 
國外電子書發展近況報告
國外電子書發展近況報告國外電子書發展近況報告
國外電子書發展近況報告Bobby Tung
 
面對電子書的下一波機會:迎接EPUB 3
面對電子書的下一波機會:迎接EPUB 3面對電子書的下一波機會:迎接EPUB 3
面對電子書的下一波機會:迎接EPUB 3Bobby Tung
 
下個世代的數位編輯
下個世代的數位編輯下個世代的數位編輯
下個世代的數位編輯Bobby Tung
 
電子書的下一個未來
電子書的下一個未來電子書的下一個未來
電子書的下一個未來Bobby Tung
 
為什麼我們需要中文排版標準,以及幾項中文的排版特色
為什麼我們需要中文排版標準,以及幾項中文的排版特色為什麼我們需要中文排版標準,以及幾項中文的排版特色
為什麼我們需要中文排版標準,以及幾項中文的排版特色Bobby Tung
 
當數位出版成為出版的一天
當數位出版成為出版的一天當數位出版成為出版的一天
當數位出版成為出版的一天Bobby Tung
 
談2013 EPUB 3 規範的變化 以及如何符合台灣在地需求
談2013 EPUB 3 規範的變化 以及如何符合台灣在地需求談2013 EPUB 3 規範的變化 以及如何符合台灣在地需求
談2013 EPUB 3 規範的變化 以及如何符合台灣在地需求Bobby Tung
 
出版商不能不了解的EPUB 3
出版商不能不了解的EPUB 3出版商不能不了解的EPUB 3
出版商不能不了解的EPUB 3Bobby Tung
 
アジアの電子書籍事情
アジアの電子書籍事情アジアの電子書籍事情
アジアの電子書籍事情Bobby Tung
 

Mais de Bobby Tung (19)

2021年台灣數位出版聯盟電子書線上直播課程
2021年台灣數位出版聯盟電子書線上直播課程2021年台灣數位出版聯盟電子書線上直播課程
2021年台灣數位出版聯盟電子書線上直播課程
 
W3C數位出版組織說明與規格最新動態
W3C數位出版組織說明與規格最新動態W3C數位出版組織說明與規格最新動態
W3C數位出版組織說明與規格最新動態
 
Implement bopomofo by open type font feature
Implement bopomofo by open type font featureImplement bopomofo by open type font feature
Implement bopomofo by open type font feature
 
幾個中文排版訣竅,有效改善閱讀體驗
幾個中文排版訣竅,有效改善閱讀體驗幾個中文排版訣竅,有效改善閱讀體驗
幾個中文排版訣竅,有效改善閱讀體驗
 
Emoji再來一次之送素還真進Unicode
Emoji再來一次之送素還真進UnicodeEmoji再來一次之送素還真進Unicode
Emoji再來一次之送素還真進Unicode
 
從Epub製作看編輯流程轉型
從Epub製作看編輯流程轉型從Epub製作看編輯流程轉型
從Epub製作看編輯流程轉型
 
我們需要中文公共領域作品的開放圖書館嗎?
我們需要中文公共領域作品的開放圖書館嗎?我們需要中文公共領域作品的開放圖書館嗎?
我們需要中文公共領域作品的開放圖書館嗎?
 
自己的Emoji自己造
自己的Emoji自己造自己的Emoji自己造
自己的Emoji自己造
 
COSCUP 2015 中文排版需求以及我在W3C看到的事情(薄碼版)
COSCUP 2015 中文排版需求以及我在W3C看到的事情(薄碼版)COSCUP 2015 中文排版需求以及我在W3C看到的事情(薄碼版)
COSCUP 2015 中文排版需求以及我在W3C看到的事情(薄碼版)
 
國外電子書發展近況報告
國外電子書發展近況報告國外電子書發展近況報告
國外電子書發展近況報告
 
面對電子書的下一波機會:迎接EPUB 3
面對電子書的下一波機會:迎接EPUB 3面對電子書的下一波機會:迎接EPUB 3
面對電子書的下一波機會:迎接EPUB 3
 
下個世代的數位編輯
下個世代的數位編輯下個世代的數位編輯
下個世代的數位編輯
 
電子書的下一個未來
電子書的下一個未來電子書的下一個未來
電子書的下一個未來
 
為什麼我們需要中文排版標準,以及幾項中文的排版特色
為什麼我們需要中文排版標準,以及幾項中文的排版特色為什麼我們需要中文排版標準,以及幾項中文的排版特色
為什麼我們需要中文排版標準,以及幾項中文的排版特色
 
當數位出版成為出版的一天
當數位出版成為出版的一天當數位出版成為出版的一天
當數位出版成為出版的一天
 
談2013 EPUB 3 規範的變化 以及如何符合台灣在地需求
談2013 EPUB 3 規範的變化 以及如何符合台灣在地需求談2013 EPUB 3 規範的變化 以及如何符合台灣在地需求
談2013 EPUB 3 規範的變化 以及如何符合台灣在地需求
 
出版商不能不了解的EPUB 3
出版商不能不了解的EPUB 3出版商不能不了解的EPUB 3
出版商不能不了解的EPUB 3
 
認識EPUB
認識EPUB認識EPUB
認識EPUB
 
アジアの電子書籍事情
アジアの電子書籍事情アジアの電子書籍事情
アジアの電子書籍事情
 

Último

Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 

Último (20)

Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

Bopomobo Ruby

  • 1. Bopomofo Ruby implement and requirement ! Bobby Tung ! Founder of Wanderer Digital Publishing Inc.
 Consultant of Taiwan Digital Publishing Forum ! June 4, 2013
  • 3. • Bopomofo is a phonetic system with 100 years history used by Republic of China(Taiwan). • • Bopomofo is used in education from grade 1 to grade 4 . 90% people in Taiwan use Bopomofo as main input method. So that's very important. figure 1) Bopomofo is simplified symbols from character with pronunciation.
  • 5. • Bopomofo system contains 37 symbols with 4 tone marks. ㄅ U+3105 ㄚ U+311A ㄆ U+3106 ㄛ U+311B ㄇ U+3107 ㄜ U+311C ㄈ U+3108 ㄝ U+311D ㄉ U+3109 ㄞ U+311E ㄊ U+310A ㄟ U+311F ㄋ U+310B ㄠ U+3120 ㄌ U+310C ㄡ U+3121 ㄍ U+310D ㄢ U+3122 ㄎ U+310E ㄣ U+3123 ㄏ U+310F ㄤ U+3124 ㄐ U+3110 ㄥ U+3125 ㄑ U+3111 ㄦ U+3126 ㄒ U+3112 ㄧ U+3127 ㄓ U+3113 ㄨ U+3128 ㄔ U+3114 ㄩ U+3129 ㄕ U+3115 ㄖ U+3116 ˙˙ U+02D9 ㄗ U+3117 ˊ U+02CA ㄘ U+3118 ˇ U+02C7 ㄙ U+3119 ˋ U+02CB chart 1) Bopomofo symbols and tone marks in UNICODE chart
  • 6. ˙ ㄇ ㄨ ㄓ ˇ ˋ ⼀一 ㄛ ㄠ 21 Consonants • 14 cannot pronounce alone. • 7 can pronounce alone.
  • 7. ˙ ㄇ ㄨ ㄩ ˇ ˊ ⼀一 ㄛ ㄠ ! 16 Rhymes and Medials • All can pronounce alone. • 3 as medials can also pronounce with other Rhymes.
  • 8. 4 Tone Marks ˙ ㄇ ㄨ ㄩ ˇ ˊ ⼀一 ㄛ ㄠ • 3(ˊ ˇ ˋ)should be placed to the right, usually aligned middle.
 They affect whole character pronunciation, so they should be placed in parallel. • 1(˙)should be placed above symbols. 
 It affects consonant and first rhyme, so it should be placed above.
  • 10. • Bopomofo of a character could be: 1. a set of 1~4 full width symbol(s) and a tone mark. 2. a set of 1~3 full width symbol(s) w/wo a tone mark right aside. • Bopomofo placed to the right of the Chinese character vertically in most all printed books, whether horizontal or vertical writing. • Bopomofo usually marked with every character in books for education purpose.
  • 11. In Print Media • Ministry of Education Taiwan had published its composition rule in 2000. • Almost impossible to do asis on web. • Tone makers’ glyphs are another issue. ˙ U+02D9 DOT ABOVE ˊ U+02CA MODIFIER LETTER ACUTE ACCENT ˇ U+02C7 CARON ˋ U+02CB MODIFIER LETTER GRAVE ACCENT chart 2) Bopomofo tone makers’ glyphs are hard to fulfill MoE’s requirement. figure 2) Bopomofo composition rule in printed media by Ministry of Education.
  • 12. 100% 100% 25% 喵 ˙ ㄇ ㄧ ㄠ Case 1) a set of 4 full width symbols and tone mark. 25% 25% 25% 25%
  • 13. 100% 100% 25% 標 ㄅ ㄧ ㄠ Case 2) a set of 3 full width symbols. 25% 25% 25%
  • 14. 100% 100% 25% 飛 ㄈ ㄟ Case 3) a set of 2 full width symbols. 25% 25%
  • 15. 100% 100% 25% 知 ㄓ Case 4) 1 full width symbol. 25%
  • 16. 100% 100% ⿃鳥 25% 25% ㄋ ㄧˇ ㄠ Case 5) a set of 3 full width symbols with a tone mark aside right. 25% 25% 25% 25%
  • 17. 100% 100% 我 25% 25% ㄨ ˇ ㄛ Case 6) a set of 2 full width symbols with a tone mark aside right. 25% 25% 25%
  • 18. 100% 100% ⿂魚 25% 25% ㄩˊ Case 7) a set of 1 full width symbols with a tone mark aside right. 25% 25%
  • 20. HTML markup • • • Marked as mono-ruby(モノルビ). Nested ruby structure for side tone mark. Add class for relative font-size setting. <ruby>左<rt><ruby>ㄗㄨㄛ<rt class="tone">ˇ</rt></ruby></rt></ruby> <ruby>邊<rt>ㄅㄧㄢ</rt></ruby> <ruby>⼀一<rt>ㄧ</rt></ruby> <ruby>隻<rt>ㄓ</rt></ruby> <ruby>貓<rt>ㄇㄠ</rt></ruby> <ruby>喵<rt>˙ㄇㄧㄠ</rt></ruby> <ruby>喵<rt>˙ㄇㄧㄠ</rt></ruby> <ruby>叫<rt><ruby>ㄐㄧㄠ<rt class="tone">ˋ</rt></ruby></rt></ruby> figure 3) HTML markup for Bopomofo implementation *<rp> is omitted for editing easily
  • 21. Stylesheet design • • <rt>’s font-size by proportion. <p>’s font-size must be absolute value. h1{ font-family: "Heiti-TC", Sans-serif; margin-right: 0.5em; } ! p{ font-family: "Heiti-TC", Sans-serif; font-size: 12pt; line-height: 1.7em; } rt{ font-size: 25%; line-height: normal; text-align: center; } ! rt.tone{ font-size: 100%; } figure 4) CSS for Bopomofo implementation
  • 22. On Webkit figure 5) Bopomofo sample on Webkit
  • 23. EPUB 3 FXL figure 6) Bopomofo EPUB 3 FXL sample on iBooks
  • 24. EPUB reflow figure 7) Bopomofo EPUB 3 sample on iBooks no line length figure 8) Bopomofo EPUB 3 sample on Kobo iOS App no pagination
  • 25. Horizontal Writing CSS • • imply writing-mode: vertical-lr. imply display: inline. rt{ font-size: 25%; line-height: normal; text-align: center; -epub-writing-mode: vertical-lr; -webkit-writing-mode: vertical-lr; vertical-align: middle; display: inline; } ! figure 9) CSS for Bopomofo implementation in Horizontal Writing.
  • 26. Horizontal Writing HTML Mono Ruby <ruby>左<rt><ruby>ㄗㄨㄛ<rt class="tone">ˇ</ rt></ruby></rt></ruby> <ruby>邊<rt>ㄅㄧㄢ</rt></ruby> <ruby>⼀一<rt>ㄧ</rt></ruby> <ruby>隻<rt>ㄓ</rt></ruby> <ruby>貓<rt>ㄇㄠ</rt></ruby> <ruby>喵<rt>˙ㄇㄧㄠ</rt></ruby> <ruby>喵<rt>˙ㄇㄧㄠ</rt></ruby> <ruby>叫<rt><ruby>ㄐㄧㄠ<rt class="tone">ˋ</ rt></ruby></rt></ruby> Group Ruby <ruby>左<rt><ruby>ㄗㄨㄛ<rt class="tone">ˇ</ rt></ruby></rt> 邊<rt>ㄅㄧㄢ</rt> ⼀一<rt>ㄧ</rt> 隻<rt>ㄓ</rt> 貓<rt>ㄇㄠ</rt> 喵<rt>˙ㄇㄧㄠ</rt> 喵<rt>˙ㄇㄧㄠ</rt> 叫<rt><ruby>ㄐㄧㄠ<rt class="tone">ˋ</rt></ ruby></rt></ruby> figure 10) In horizontal writing, Mono Ruby will cause layout break.
  • 27. align issue inline issue letter spacing issue
 (investigating) figure 11) In horizontal writing, Issues Bopomofo ruby confronted.
  • 29. ruby-align: center • • Behave as Case 1~7. • Keep proportion even with relative font-size. (for ebook convention) • Conflict with Japanese Ruby Requirement? Ruby text in this mode compressed to fit ruby base width. figure 12) In vertical writing, font-size is relative
 (font-size: 100%).
  • 30. ruby-position: inter-character • keep Bopomofo ruby placed right of ruby base. especially in horizontal writing. • With this property, ruby base and ruby text should not be separated with line-break.(as linestart prohibition rule?) figure 13) Taiwan’s Mandarin textbook, quiz section. horizontal writing with Bopomofo.
  • 32. Webfont • It works, but not good enough. • Lot of Chinese characters have alternative pronunciations, max to 6 patterns. • 6 fonts with contents span class markup cannot be done easily. Even with subset to reduce size. • It’s proprietary, not open standard.
  • 33. Tool
  • 34. Why Tool? • Bopomofo usually marked with every character in books for educational purpose. • Lot of Chinese characters have alternative pronunciations, maximum to 6 patterns. =Tool to convert article into Bopomofo ruby html with choosing for pronunciations .
  • 36. • Government in Taiwan is willing to host a project to speedup browser implement. • May start late this year.