作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在我的 android 应用程序中使用 jhlabs
的 WarpFilter
。为此,我使用了 jhlabs 提供的 jar,但其中没有 WarpFilter 类的定义。我推荐了WarpFilter和 this链接。我试图通过在我的应用程序中复制它来使用该类。但问题是,它使用了一些android sdk不支持的类。我也提到了Google code链接,但它也没有为此提供任何实现。任何人都可以建议我一些解决方案吗?有没有其他提供变形图像功能的库/jar?请帮我解决这个问题。
谢谢。
最佳答案
使用这样的过滤器:
final Bitmap bmporg = BitmapFactory.decodeByteArray(byteArrayorg, 0, byteArrayorg.length);
Line line1 = new Line(0, 0, bmporg.getWidth(), 0);
Line line2 = new Line(0, bmporg.getHeight()/2, bmporg.getWidth(), bmporg.getHeight()/2);
Line line3 = new Line(0, bmporg.getHeight(), bmporg.getWidth(), bmporg.getHeight());
final Line[] lineArray = {line1, line2, line3 };
Line line4 = new Line(0, 0, bmporg.getWidth(), bmporg.getHeight());
Line line5 = new Line(0, 0, bmporg.getWidth(), bmporg.getHeight());
Line line6 = new Line(0, 0, bmporg.getWidth(), bmporg.getHeight());
final Line[] lineArray2 = {line4, line5, line6 };
FieldWarpFilter fieldWarpFilter = new FieldWarpFilter();
fieldWarpFilter.setAmount(amountFieldWarpFilter);
fieldWarpFilter.setPower(powerFieldWarpFilter);
fieldWarpFilter.setStrength(strengthFieldWarpFilter);
fieldWarpFilter.setInLines(lineArray);
fieldWarpFilter.setOutLines(lineArray2);
int[] src22 = AndroidUtils.bitmapToIntArray(bmporg);
int width22 = bmporg.getWidth();
int height22 = bmporg.getHeight();
int[] dest22 = fieldWarpFilter.filter(src22, width22, height22);
Bitmap destBitmap = Bitmap.createBitmap(dest22, width22, height22, Bitmap.Config.ARGB_8888);
imageView1.setImageBitmap(destBitmap);
关于android - 如何在android中使用jhlabs图片库的Warp滤镜,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19114499/
我是一名优秀的程序员,十分优秀!