我正在嘗試為 Android 上的每個(gè) Svg 形狀繪制一個(gè)帶有位置編號的縮放文本。像這樣的東西: http://static-4.app4smart.me/uploads/posts/thumbs/13284/f-9553-1971d66549.jpg有誰知道如何實(shí)施?主要問題是找到將文本放置在形狀內(nèi)的更好位置,并根據(jù) svg 形狀的大小對其進(jìn)行縮放。實(shí)際上我想出了如何放置和縮放文本,如下例所示:<svg x="0px" y="0px" viewBox="0 0 800 800" style="enable-background:new 0 0 800 800;" xml:space="preserve"><polygon style="fill:#E2BE9C;" points="509.8,704.8 517.4,799.3 436.4,799.3 399.5,757.9 409.6,661.6 440,620.3 "/><text xmlns="http://www.w3.org/2000/svg" x="458" y="709" text- anchor="middle" textLength="20" lengthAdjust="spacingAndGlyphs" font- size="10">Hey!</text></svg>在這里,我只獲取 Path 對象的 RectF 并獲取我放置文本的確切中心。但是我仍然找不到放置文本的更好位置以及必須縮放文本的大小。因?yàn)閷τ谶@樣的形狀,不能應(yīng)用這種方法。 <svg x="0px" y="0px" viewBox="0 0 800 800" style="enable-background:new 0 0 800 800;" xml:space="preserve"> <polygon style="fill:#58585A;" points="201.7,175.9 294.4,146.9 414.9,170.2 252.5,191.4 159.6,231.3 110.1,263.9 127.4,226 "/> </svg>對于元素,這種方法也不好??磥砦冶仨氃?svg 形狀內(nèi)找到最大的矩形,并在這個(gè)矩形內(nèi)放置我的文本,縮放到矩形尺寸。知道怎么做嗎?來自 android.graphics 包的 Path 對象不提供任何方法來找到形狀的真實(shí)中心。
1 回答

aluckdog
TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超7個(gè)贊
您需要將 SVG 元素嵌套在具有固定縱橫比的 SVG 容器中。然后,您可以根據(jù)根容器 SVG 的固定縱橫比為 HTML 文本或 SVG 文本建立字體大小。
添加回答
舉報(bào)
0/150
提交
取消