androd之绘制文本(FontMetrics)
生活随笔
收集整理的這篇文章主要介紹了
androd之绘制文本(FontMetrics)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
轉(zhuǎn)自 :http://fonter.iteye.com/blog/474526
Canvas 作為繪制文本時(shí),使用FontMetrics對象,計(jì)算位置的坐標(biāo)。
它的思路和java.awt.FontMetrics的基本相同。
?
FontMetrics對象
它以四個(gè)基本坐標(biāo)為基準(zhǔn),分別為:
?FontMetrics.top
?FontMetrics.ascent
?FontMetrics.descent
?FontMetrics.bottom
?
該圖片將如下
?
?
Paint textPaint = new Paint( Paint.ANTI_ALIAS_FLAG); textPaint.setTextSize( 35); textPaint.setColor( Color.WHITE);// FontMetrics對象 FontMetrics fontMetrics = textPaint.getFontMetrics();String text = "abcdefghijklmnopqrstu";// 計(jì)算每一個(gè)坐標(biāo) float baseX = 0; float baseY = 100; float topY = baseY + fontMetrics.top; float ascentY = baseY + fontMetrics.ascent; float descentY = baseY + fontMetrics.descent; float bottomY = baseY + fontMetrics.bottom;// 繪制文本 canvas.drawText( text, baseX, baseY, textPaint);// BaseLine描畫 Paint baseLinePaint = new Paint( Paint.ANTI_ALIAS_FLAG);> baseLinePaint.setColor( Color.RED); canvas.drawLine(0, baseY, getWidth(), baseY, baseLinePaint);// Base描畫 canvas.drawCircle( baseX, baseY, 5, baseLinePaint);// TopLine描畫 Paint topLinePaint = new Paint( Paint.ANTI_ALIAS_FLAG); topLinePaint.setColor( Color.LTGRAY); canvas.drawLine(0, topY, getWidth(), topY, topLinePaint);// AscentLine描畫 Paint ascentLinePaint = new Paint( Paint.ANTI_ALIAS_FLAG); ascentLinePaint.setColor( Color.GREEN); canvas.drawLine(0, ascentY, getWidth(), ascentY, ascentLinePaint);// DescentLine描畫 Paint descentLinePaint = new Paint( Paint.ANTI_ALIAS_FLAG); descentLinePaint.setColor( Color.YELLOW); canvas.drawLine(0, descentY, getWidth(), descentY, descentLinePaint);// ButtomLine描畫 Paint bottomLinePaint = new Paint( Paint.ANTI_ALIAS_FLAG); bottomLinePaint.setColor( Color.MAGENTA); canvas.drawLine(0, bottomY, getWidth(), bottomY, bottomLinePaint);轉(zhuǎn)載于:https://my.oschina.net/u/913208/blog/122330
總結(jié)
以上是生活随笔為你收集整理的androd之绘制文本(FontMetrics)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VC++多线程编程[转]
- 下一篇: 位运算 介绍