drawable-图片绘制
首先看一下,下端代码
private Bitmap createSelectedChip(RecipientEntry contact, TextPaint paint) {
int height = (int) mChipHeight;
int deleteWidth = height;
float[] widths = new float[1];
paint.getTextWidths(" ", widths);
CharSequence ellipsizedText = ellipsizeText(createChipDisplayText(contact), paint,
calculateAvailableWidth() - deleteWidth - widths[0]);
printDebugLog(TAG,"[createSelectedChip] " + ellipsizedText); int width = Math.max( 0 /*deleteWidth * 2*/, (int) Math.floor(paint.measureText(ellipsizedText, 0,
ellipsizedText.length()))
+ (mChipPadding * 2) + deleteWidth);
/// @}
// Create the background of the chip. //创建一个画布,宽为width,高为height
Bitmap tmpBitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
//创建一个工具,这个工具的操作,都是在这个画布上进行的
Canvas canvas = new Canvas(tmpBitmap);
if (mChipBackgroundPressed != null) {
//创建一个矩形
Rect backgroundPadding = new Rect();
mChipBackgroundPressed.getPadding(backgroundPadding);
//获得一个图片的大小,这个应该是按比例压缩的感觉
mChipBackgroundPressed.setBounds(0, 0, width - deleteWidth, height);
//把这个压缩以后的图片绘制到这个画布上(图过工具)
mChipBackgroundPressed.draw(canvas);
//创建一个画笔,给他设定颜色
paint.setColor(sSelectedTextColor);
//通过工具跟画笔,绘制一个文字
canvas.drawText(ellipsizedText, 0, ellipsizedText.length(), mChipPadding,
getTextYOffset((String) ellipsizedText, paint, height), paint);
mChipDelete.setBounds(width - deleteWidth - backgroundPadding.left,
+ backgroundPadding.top/2,
width - backgroundPadding.right/2,
height);
mChipDelete.draw(canvas);
} else {
Log.w(TAG, "Unable to draw a background for the chips as it was never set");
}
return tmpBitmap;
}
如
Drawable drawable = xxxx;
drawable.setBounds(int, int, int, int);
drawable.draw(canvas);
setBounds 有人给出的解释是,绘制图片时候,相对于父容器的边距
但是,通过验证,我感觉应该是如下的解释,看图
drawable-图片绘制的更多相关文章
- ImageDrawer.js图片绘制插件
ImageDrawer.js图片绘制插件有以下一些可用的配置参数. Duration:整个动画或每个步骤的绘制时间(以秒为单位) Background:在绘图时将颜色放在图片上 Callback:绘画 ...
- canvas 2.0 图片绘制
绘制图片drawImage 2013.02.21 by 十年灯·一条评论 本文属于<html5 Canvas画图系列教程> 这里的绘制图片是指把一张现成的图片,绘制到Canvas上面. 有 ...
- 把一个base64编码的图片绘制到canvas (canvas的图片在转成dataurl)
把一个base64编码的图片绘制到canvas 需要引入jquery. <canvas id="myCanvas" width="800" height= ...
- 设置drawable图片
google官方建议在textView和imageView挨着的时候,建议使用drawable来显示图片 第一个方法:setCompoundDrawablesWithIntrinsicBounds(D ...
- GDI+ 如何将图片绘制成圆形的图片
大概意思就是不生成新的图片,而是将图片转换为圆形图片. 实现代码如下: private Image CutEllipse(Image img, Rectangle rec, Size size) { ...
- opengl打开本地bmp图片绘制
注意bmp图片的格式问题,32位ARGB 或者24位RGB.你所采用的素材一定要注意是多少位的就用多少位的.否则会显示错误的图片或者其他什么的错误. 代码如下 32位版本 #include < ...
- iOS-UIImage图片绘制颜色
- (UIImage *)dtk_setImageColor:(UIColor *)imageColor{ //获取画布 UIGraphicsBeginImageContextWithOptions( ...
- 微信小程序canvas把正方形图片绘制成圆形
wxml代码: <view class="result-page"> <canvas canvas-id='firstCanvas' style='width:1 ...
- canvas的图片绘制案例
<!doctype html><html lang="en"><head> <meta charset="UTF-8" ...
- GDI+ 怎样将图片绘制成圆形的图片
大概意思就是不生成新的图片,而是将图片转换为圆形图片. 实现代码例如以下: private Image CutEllipse(Image img, Rectangle rec, Size size) ...
随机推荐
- 4.graph.h
#pragma once #include <stdio.h> #include <graphics.h> #include <mmsystem.h> #pragm ...
- React开发实时聊天招聘工具 -第三章 React基础知识回顾
function a (props) { return <h1>hello world{this.props.asd}</h1> } class a extends React ...
- 概率编程:《贝叶斯方法概率编程与贝叶斯推断》中文PDF+英文PDF+代码
贝叶斯推理的方法非常自然和极其强大.然而,大多数图书讨论贝叶斯推理,依赖于非常复杂的数学分析和人工的例子,使没有强大数学背景的人无法接触.<贝叶斯方法概率编程与贝叶斯推断>从编程.计算的角 ...
- unbound和mail服务的部署和简单应用
1.服务的介绍 Unbound是一个缓存DNS解析器.unbound官网 它使用根区域的内置权威名称服务器列表 (.),所谓的根提示.在收到DNS查询时,它会询问 答案的根名称服务器,几乎在所有情况下 ...
- ajax和axios请求本地json数据对比
AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进 ...
- from disk cache 与 from memory cache
webkit资源的分类 webkit的资源分类主要分为两大类:主资源和派生资 http状态码 200 from memory cache 不访问服务器,直接读缓存,从内存中读取缓存.此时的数据时缓存到 ...
- PatentTips - Virtual translation lookaside buffer
BACKGROUND OF THE INVENTION A conventional virtual-machine monitor (VM monitor) typically runs on a ...
- HypericHQ
https://sourceforge.net/projects/hyperichq-zh-cn/?source=typ_redirect
- 空间矢量数据(.shp文件)之JAVA操作
Shape文件由ESRI开发.一个ESRI(Environmental Systems Research Institute)的shape文件包含一个主文件,一个索引文件,和一个dBASE表. 当中主 ...
- android 图片特效处理之 图片叠加
这篇将讲到图片特效处理的图片叠加效果.跟前面一样是对像素点进行处理,可参照前面的android图像处理系列之七--图片涂鸦,水印-图片叠加和android图像处理系列之六--给图片添加边框(下)-图片 ...