成都创新互联网站制作重庆分公司

Java实现图片倒影的源码实例内容

把做工程过程常用的一些代码段做个记录,下面代码是关于Java实现图片倒影的的代码,应该对大家有较大用处。

十余年的平遥网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网整合营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整平遥建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联公司从事“平遥网站设计”,“平遥网站推广”以来,每个客户项目都认真落实执行。

Java实现图片倒影的源码实例内容

Java实现图片倒影的源码实例内容

 

public class ButtonImageActivity extends Activity {
private ImageView image_btn;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
image_btn=(ImageView)findViewById(R.id.image_btn);
Bitmap bitmap =((BitmapDrawable)getResources().getDrawable(R.drawable.image_btn)).getBitmap();
image_btn.setImageBitmap(createReflectedImage(bitmap));
image_btn.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

}
});
}
private Bitmap createReflectedImage(Bitmap originalBitmap) { 
final int reflectionGap = 4; 

int width = originalBitmap.getWidth(); 
int height = originalBitmap.getHeight(); 

Matrix matrix = new Matrix(); 
matrix.preScale(1, -1); 
Bitmap reflectionBitmap = Bitmap.createBitmap(originalBitmap, 0, 
height / 2, width, height / 2, matrix, false); 
Bitmap withReflectionBitmap = Bitmap.createBitmap(width, (height 
+ height / 2 + reflectionGap), Config.ARGB_8888); 

Canvas canvas = new Canvas(withReflectionBitmap); 
canvas.drawBitmap(originalBitmap, 0, 0, null); 

Paint defaultPaint = new Paint(); 
canvas.drawRect(0, height, width, height + reflectionGap, defaultPaint); 

canvas.drawBitmap(reflectionBitmap, 0, height + reflectionGap, null); 

Paint paint = new Paint(); 
LinearGradient shader = new LinearGradient(0, originalBitmap.getHeight(), 
0, withReflectionBitmap.getHeight(), 0x70ffffff, 0x00ffffff, 
TileMode.MIRROR); 
paint.setShader(shader); 
paint.setXfermode(new PorterDuffXfermode(Mode.DST_IN)); 

canvas.drawRect(0, height, width, withReflectionBitmap.getHeight(), paint); 

return withReflectionBitmap; 
} 
} 

以上就是本次介绍的全部知识点内容,感谢大家对创新互联的支持。


网页名称:Java实现图片倒影的源码实例内容
文章源于:http://cxhlcq.com/article/iecgii.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部