当前位置: 首页 > news >正文

网站首页图片滚动线上广告平台

网站首页图片滚动,线上广告平台,网站群建设代理,长治建设工程交易网drawText() 绘制文字 绘制进度条:paint.strokeCap Paint.CAP.RONUD 线条两边样式 设置文字字体:paint.typeFace Resources.Compat.getFont(context,font) 设置加粗 paint.isFakeBoldText 设置居中: paint.setTextAlign Paint.Align.CENTER //居中, 并不是真正的居中 往…

drawText() 绘制文字

绘制进度条:paint.strokeCap = Paint.CAP.RONUD 线条两边样式 

设置文字字体:paint.typeFace = Resources.Compat.getFont(context,font)

设置加粗  paint.isFakeBoldText

设置居中: paint.setTextAlign = Paint.Align.CENTER //居中, 并不是真正的居中 往往会比较靠上,有baseLine 基线的作用, baseLine 有五条 ,(ascent,top,desencent,bottom)会有纵向 | 便宜

通过getTextBounds(text,start,end,bounds //存放结果 ) 获得left ,top  right bottom 偏移量 

静态文字设置示例:

paint.getTextBounds("AAAA",0,"AAAA".length,bounds)
canvas.drawText("AAAA",width / 2f,height / 2f - ((bounds.top + bounds.bottom) / 2),paint)

计算偏移量 设置居中,

动态设置:

paint.getFontMetrics(fontMetrices)
canvas.drawText("abcpst",width / 2f,height / 2f - ((fontMetrices.ascent + fontMetrices.descent) / 2),paint)

文字靠左显示:

paint.textAlign = Paint.Align.LEFT
canvas.drawText("ababab",0f, - fontMetrices.top,paint)

靠左上角

paint.textAlign = Paint.Align.LEFT
paint.getTextBounds("ababab",0,"ababab".length,bounds)
canvas.drawText("ababab",0f, - bounds.top.toFloat(),paint) //静态

文字左右各占空间 字体越大 占用空越大 示例:

        paint.textSize = 150.dppaint.textAlign = Paint.Align.LEFTpaint.getTextBounds("ababab",0,"ababab".length,bounds)canvas.drawText("ababab",0f, - bounds.top.toFloat(),paint) paint.textSize = 15.dppaint.getTextBounds("ababab",0,"ababab".length,bounds)canvas.drawText("ababab",0f, - bounds.top.toFloat(),paint) 

字体越大 文字间间距越大,因为有baseLine的左右以及textBound设置

解决:

        paint.textSize = 150.dppaint.textAlign = Paint.Align.LEFTpaint.getTextBounds("ababab",0,"ababab".length,bounds)canvas.drawText("ababab",- bounds.left.toFloat(), - bounds.top.toFloat(),paint) paint.textSize = 15.dppaint.getTextBounds("ababab",0,"ababab".length,bounds)canvas.drawText("ababab",-bounds.left.toFloat(), - bounds.top.toFloat(),paint) 

其实仔细看还是有一点点间距,这是文字的字体所占用的缝隙

StaticLayout 使用
StaticLayout(text,textPaint,width ,align,span 间距,行距)

val staticLayout = StaticLayout.Builder.obtain(text, 0, text.length, textPaint, width)
textPaint.textSize = 16.dp
staticLayout.build().draw(canvas)

 

paint.fontSpacing 行间距

单个图文混合排序示例

canvas.drawBitmap(bitmap, width - IMAGE_SIZE, IMAGEPADDING, paint)paint.getFontMetrics(fontMetrice)val mesureWidth = floatArrayOf(0f)var start = 0var count: Intvar offSet = -fontMetrice.topvar maxWidth: Floatwhile (start < text.length) {if (offSet + fontMetrice.bottom < IMAGEPADDING || offSet + fontMetrice.top > IMAGE_SIZE + IMAGEPADDING) {maxWidth = width.toFloat()} else {maxWidth = width.toFloat() - IMAGE_SIZE}count = paint.breakText(text,start,text.length,true,maxWidth,mesureWidth)canvas.drawText(text, start, start + count, 0f, offSet, paint)start += countoffSet += paint.fontSpacing}

 

http://www.ds6.com.cn/news/84019.html

相关文章:

  • 网站建设基本知识写软文用什么软件
  • 建设网站教程论坛seo顾问咨询
  • 重庆建网站计划推广官网
  • 网站建设怎么建网络推广 公司 200个网站
  • 做网站用什么软件方便中山360推广
  • 做英文色情网站犯法吗关键词排名技巧
  • 做毕设网站多少钱数据网站有哪些
  • 九江网站建设排名优化
  • 跨境电商平台的特点长沙seo外包
  • 阿图什网站网络推广哪个平台好
  • 酒泉网站建设企业建站用什么好
  • 兰考县红庙关东村做网站的seo推广优化培训
  • 做网站开发平台湖南优化公司
  • 长沙做网站找谁seo教程百度网盘
  • 2014网站设计趋势推广app最快的方法
  • 网站备案的公司注销了网站建设找哪家公司好
  • 网站建设策略营销百度指数怎么用
  • 做别人一样的网站吗搜索引擎营销的方法
  • 网站建设的目的定位盈利模式和功能永久免费建站系统
  • 广州市番禺建筑设计院有限公司杭州上城区抖音seo有多好
  • 商务网站开发视频外链工具
  • 恶意 镜像网站怎么建立公司网站
  • 陕西企业营销型网站建设凡科官网免费制作小程序
  • 陕西网站开发公司做一个app软件大概要多少钱
  • 惠州市做网站的公司查询关键词排名工具
  • 天长街道两学一做网站正规seo大概多少钱
  • 网站怎么集成支付宝seo俱乐部
  • 用html5做的简单的网站郑州网站推广
  • 网站服务器异常是什么意思怎么做优化关键词
  • 有没有帮忙做标书的网站培训机构排名