Android图形 - Bitmap
16lz
2021-01-23
1 概述
1.1 编写目的
学习Android图形Bitmap相关的知识,记录下来,方便后续学习及查询。
2 Bitmap图形
Bitmap图形,共有以下属性。
<?xml version="1.0" encoding="utf-8"?>
2.1 Src属性
指向图片资源,不能使用shape、vector等自定义图形。
2.2 Alpha属性
透明度,["0~1" | "255~1"]透明到不透明。
2.3 Antialias属性
开关锯齿,["true" | "false"]。
2.4 AutoMirrored属性
设置图片是否需要镜像反转,当布局方向是RTL,即从右到左布局时才有用。
2.5 Dither属性
抖动,["true" | "false"]。值为“true”时,将在位图的像素配置与屏幕不同时(例如:ARGB 8888 位图和 RGB 565 屏幕)启用位图的抖动;值为“false”时则停用抖动。默认值为 true。
2.6 Filter属性
开关滤镜,["true" | "false"]。
2.7 Gravity属性
重心,["top " |" bottom "| " left "| " right "| " center "| " center_vertical "| " center_horizontal "| " fill "| " fill_vertical "| " fill_horizontal "| " clip_vertical "| " clip_horizontal"]。分别是:顶部、底部、左边、右边、中心、垂直中心、水平中心、填满容器、填满垂直方向、填满水平方向、剪切掉垂直方向多余容器部分、剪切掉水平方向多余容器部分。
2.8 MipMap属性
是否将图片标记为mipmap,使用mipmap能够提高显示性能,默认为false ,["true" | "false"]。
2.9 TileMode属性
TileMode:贴图模式, ["clamp" | "disable" | "repeat" | "mirror"]。
2.9.1 Clamp(边缘填充)
当图片>容器时,图片多余的部分会被截去;当图片<容器时,会复制图片的边缘部分填充空白。
创建my_bitmap.xml(图片宽868、高579):
<?xml version="1.0" encoding="utf-8"?>
效果如下:
<?xml version="1.0" encoding="utf-8"?>
效果如下:
<?xml version="1.0" encoding="utf-8"?>
效果如下:
2.9.2 Disable(缩放)
图片会根据容器大小进行缩放(默认值),如2.9.1第一图所示。
2.9.3 Repeat(重复填充)
图片会重复填充满容器。但是当图片>容器时,多余部分会被截去。修改my_bitmap.xml为(图片宽280、高180):
<?xml version="1.0" encoding="utf-8"?>
效果如下:
<?xml version="1.0" encoding="utf-8"?>
效果如下:
2.9.4 Mirror(镜像重复填充)
图片会以镜像重复的形式填满容器。同样,当图片>容器时,多余部分会被截去。修改my_bitmap.xml为(图片宽280、高180):
<?xml version="1.0" encoding="utf-8"?>
效果如下:
<?xml version="1.0" encoding="utf-8"?>
效果如下: 2.10 TileModeX属性
单独控制bitmap的X轴TileMode属性,覆盖TileMode属性。
修改my_bitmap.xml为(图片宽280、高180):<?xml version="1.0" encoding="utf-8"?>
或 <?xml version="1.0" encoding="utf-8"?>
效果如下:
2.11 TileModeY属性
单独控制bitmap的Y轴TileMode属性,覆盖TileMode属性,如2.10所示。
2.12 Tint属性
设置着色。
2.13 TintMode属性
着色模式和Tint一起使用,["src_over" | "src_in" | "src_atop" | "screen"| "add"| "multiply"]。下面分别为着色tint="#FF00FF00"和tint="#8800FF00"在各种着色模式下面的效果。
2.13.1 Src_over
2.13.2 Src_in
2.13.3 Src_atop
2.13.4 Screen
2.13.5 Add
2.13.6 Multiply
更多相关文章
- Android利用canvas画各种图形(点、直线、弧、圆、椭圆、文字、矩
- Android图片左右切换和拖动大小
- Android支持的图片格式
- Android——插入图片【ImageView】属性详解
- android图片透明度跟缩放大小动画事件
- [置顶] 基于ichartjs图形库在android上使用HTML动态实现多数据源