简单实现下图片倒影效果
效果图:
[img]
[/img]
PictureReflectionActivity
package com.amaker.reflection;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.LinearGradient;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.PorterDuffXfermode;
import android.graphics.Bitmap.Config;
import android.graphics.PorterDuff.Mode;
import android.graphics.Shader.TileMode;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.widget.ImageView;
public class PictureReflectionActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ImageView imageView2 = (ImageView) findViewById(R.id.picture_qian);
Bitmap bmp = ((BitmapDrawable) getResources().getDrawable(
R.drawable.qian)).getBitmap();
imageView2.setImageBitmap(createReflectedImage(bmp));
}
public static Bitmap createReflectedImage(Bitmap originalImage) {
final int reflectionGap = 4;
int width = originalImage.getWidth();
int height = originalImage.getHeight();
Matrix matrix = new Matrix();
matrix.preScale(1, -1);
Bitmap reflectionImage = Bitmap.createBitmap(originalImage, 0,
height / 2, width, height / 2, matrix, false);
Bitmap bitmapWithReflection = Bitmap.createBitmap(width,
(height + height / 2), Config.ARGB_8888);
Canvas canvas = new Canvas(bitmapWithReflection);
canvas.drawBitmap(originalImage, 0, 0, null);
Paint defaultPaint = new Paint();
canvas.drawRect(0, height, width, height + reflectionGap, defaultPaint);
canvas.drawBitmap(reflectionImage, 0, height + reflectionGap, null);
Paint paint = new Paint();
LinearGradient shader = new LinearGradient(0,
originalImage.getHeight(), 0, bitmapWithReflection.getHeight()
+ reflectionGap, 0x70ffffff, 0x00ffffff,
TileMode.MIRROR);
paint.setShader(shader);
paint.setXfermode(new PorterDuffXfermode(Mode.DST_IN));
canvas.drawRect(0, height, width, bitmapWithReflection.getHeight()
+ reflectionGap, paint);
return bitmapWithReflection;
}
}
- 大小: 17.9 KB
分享到:
相关推荐
在JavaScript中创建图片倒影效果是一项常见的前端技术,它能够为网页增添动态和美观的视觉体验。本示例提供了一种简洁且实用的方法来实现图片的倒影效果,无需大量复杂的代码。以下将详细讲解这一过程及其涉及的技术...
在JavaScript(JS)中实现图片倒影效果是一种常见的前端技术,可以为网页增添动态和美观的视觉体验。本文将深入探讨如何使用纯JS代码来创建一个动态的图片倒影效果,而无需借助像Photoshop这样的图像编辑软件进行...
在实现图片倒影效果时,我们可以借助CSS3的transform和filter属性,以及jQuery的动态操作来完成。 1. **创建HTML结构**:首先,我们需要在HTML中设置原始图片和倒影图片的容器。通常,我们将这两个元素放在一个父级...
在Qt中,QML提供了丰富的图形元素和功能,如Rectangle、Image、Transform等,可以用来实现倒影效果。以下是实现QML图像倒影的基本步骤: 1. **导入必要的模块**: 在QML文件开头,需要导入`QtQuick`和`...
通过这样的JavaScript代码,你可以在任何支持JavaScript的Web页面中轻松实现图片倒影效果。无论你使用的是ASP、JSP、PHP还是HTML,只要在合适的地方插入这段代码,就可以为你的图片添加生动有趣的倒影特效。
图片倒影效果的实现方法多种多样,可以从简单的软件操作到复杂的编程算法。接下来,我们将深入探讨如何创建图片倒影效果,以及相关的一些技术知识。 首先,我们可以通过一些图像编辑软件来实现这个效果。例如,...
首先,实现水中倒影效果的关键在于对原始元素的复制和翻转。HTML 结构中,通常会有一个原始元素(如图片或文本)和它的倒影元素。这两个元素可以分别用 `<div>` 或 `<img>` 标签表示,并通过 CSS 定位到合适的位置。...
倒影效果的实现往往涉及到图形上下文的复制、翻转和透明度调整。 5. **角度变化**:角度变化是这个`Gallery`的一个独特之处,它可能采用了3D旋转效果。在Android中,可以使用`android.view.animation....
首先,我们来讨论如何在Android中实现图片的倒影效果。倒影效果通常在UI设计中用于创造视觉上的平衡感,它可以通过Java代码或者使用第三方库来实现。基本思路是先将原始图片翻转,然后与原图拼接在一起。在Java中,...
本资源“Android 图片倒影效果源码.zip”提供了实现这一效果的源代码,适用于开发者学习和快速集成到自己的项目中。下面将详细解释如何在Android中创建图片倒影效果,并探讨相关技术点。 首先,图片倒影效果通常...
《图片倒影制作工具:轻松实现专业视觉效果》 在当今数字时代,图像处理技术已经变得日益普及,其中一种常见的视觉效果就是图片的倒影。倒影效果常常用于设计、广告以及个人创意作品中,为图片增添立体感和动态美。...
提供的"图片倒影Demo"可能包含了一个简单的Android项目,展示了如何在应用中实现图片倒影功能。通常,它会包含一个Activity,展示一个ImageView,并在点击按钮时动态生成并显示图片的倒影。 通过以上知识点,...
在Android开发中,实现图片的3D效果及倒影效果是一项常见的需求,这可以为用户带来更丰富的视觉体验。在本教程中,我们将探讨如何在Android应用中创建这些特效,特别是针对`Gallery`组件的使用。 首先,让我们了解`...
2. 使用第三方库:如Android-ReflectionImageView,这是一个专门为实现倒影效果而设计的自定义View,可以简化开发过程。 "滑动翻转"则是指在用户滑动Gallery时,当前显示的图片会有一个翻转动画,增加交互性。这种...
首先,CSS3中的`transform`属性是实现图片翻转的核心。它允许我们对元素进行二维或三维的变换,如旋转(rotate)、缩放(scale)、平移(translate)和倾斜(skew)。在这个特效中,当鼠标悬停在图片上时,`...
在程序开发中,实现特效和倒影效果是增强用户界面(UI)吸引力和用户体验(UX)的重要手段。倒影效果通常被用于图形设计和网页设计,它可以为视觉元素增添一种深度感和动态感,使整体设计更加生动。下面将详细讨论...
在iOS应用开发中,创建图片倒影效果是一项常见的视觉增强技术,可以为用户界面增添动态感和立体感。本文将详细解析如何通过源码实现这一功能,主要关注于Objective-C编程语言,适用于iOS SDK。 首先,我们需要理解...
为了实现倒影效果,我们需要创建图片的倒影。这可以通过对原始图片进行翻转、缩放和颜色反转来完成。在Android中,你可以利用`Matrix`对象进行图像变换。首先,翻转图片,然后创建一个新的`Bitmap`,将其填充为原...
在本文中,我们将深入探讨如何使用JavaScript(JS)和HTML5来实现图片倒影效果。这个技术主要依赖于CSS3的transform属性以及JavaScript对DOM的操作,以创建一个动态且易于维护的图片倒影功能。 首先,我们需要理解...
在安卓开发中,实现图片倒影效果是一种常见的需求,例如在设计美观的用户界面时。本文将详细解析如何在Android平台上通过源码实现这一功能,主要关注两个关键点:图片的复制与翻转以及倒影的渐变效果。 首先,我们...