目前 Webkit 可透過呼叫 -webkit-transform: rotate(90deg) 的方式,把文字及排版同時旋轉九十度。而中文直書需要的,其實只要把排版轉九十度,文字不旋轉。
...(以下刪去)
(我覺得之前好像搞錯方向了)
在 /Webkit/WebCore/ 目錄裡面搜尋 WM_TBRL ,總共出現在五個地方:
- /Webkit/WebCore/rendering/style/SVGRenderStyleDefs.h -- 定義 EWritingMode { WM_LRTB, WM_LR, WM_RLTB, WM_RL, WM_TBRL, WM_TB } ... 直書就是這兩個
- /Webkit/WebCore/svg/SVGFont.cpp -- 透過 SVGRenderStyle->writingMode() 是否為 WM_TBRL 或者 WM_TB 來判斷直書與否
- /Webkit/WebCore/svg/SVGTextContentElement.cpp -- 透過檢查 SVGRenderStyle->writingMode() 決定是否為直書,整個類別使用多次直書與否進行不同邏輯演算
- /Webkit/WebCore/css/CSSPrimitiveValueMapping.h -- 進行各種 CSSValue 與程式定義的對應
- /WebKit/WebCore/rendering/SVGTextLayoutUtilities.cpp -- 把 SVGRenderStyle->writingMode() 是否為直書,包裝成一個 isVerticalWritingMode() 的函式。
~先寫到這裡
沒有留言:
張貼留言