做外貿(mào)需要用什么網(wǎng)站品牌營(yíng)銷策略案例
場(chǎng)景
- 在開發(fā)
WTL/WIN32
界面程序時(shí),有時(shí)候需要繪制多行的段落文本,但是文本里的數(shù)值需要設(shè)置紅色以便能讓人第一時(shí)間關(guān)注到它。這種文本可以稱之為富文本。GDI
的DrawText
和GDIPlus
的DrawString
方法都只能連續(xù)繪制某個(gè)顏色的文本。怎么實(shí)現(xiàn)?
說(shuō)明
-
在《繪圖實(shí)現(xiàn)單行文本的多種顏色》[1]里介紹了繪制單行多種顏色文本的實(shí)現(xiàn),但是并不支持換行,換行需要知道上一行繪制的文本長(zhǎng)度和換行后的文本起始位置,實(shí)現(xiàn)起來(lái)并不容易。
-
要實(shí)現(xiàn)多行富文本,那么關(guān)鍵的方法是計(jì)算一行字符串在給定以下的
3
個(gè)重要的參數(shù)計(jì)算當(dāng)前行需要繪制的字符個(gè)數(shù),之后把剩余的字符串交給下一行繪制。方法calcOneLineFitStringLength
就是只存儲(chǔ)給定行剩余寬度繪制適合個(gè)數(shù)的字符串,把剩余的字符遞歸傳遞給calcOneLineFitStringLength
本身計(jì)算并存儲(chǔ)。-
起始橫坐標(biāo)
x
-
縱坐標(biāo)
y</
-