Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 谷歌照片应用程序风格的图像裁剪、矫直和平移_Android_Image_Crop_Panning - Fatal编程技术网

Android 谷歌照片应用程序风格的图像裁剪、矫直和平移

Android 谷歌照片应用程序风格的图像裁剪、矫直和平移,android,image,crop,panning,Android,Image,Crop,Panning,我正在寻找谷歌照片应用程序风格的图像处理。我对图像处理有点陌生。任何关于如何使裁剪矩形的图像与裁剪矩形的大小相同、旋转(旋转图像和裁剪矩形)、图像校正(包括如何获得角度滑块类型的UI)的线索都将非常有用。如果有一些库具有这些功能,那么也可以使用。 有一个用于加载和播放图像的库。 以下是一些功能: 在他们的网站上有关于如何使用lib的详细信息。请查看: 您需要添加的渐变线是: compile 'com.squareup.picasso:picasso:2.5.2' 它很容易使用。以下是我如何在示

我正在寻找谷歌照片应用程序风格的图像处理。我对图像处理有点陌生。任何关于如何使裁剪矩形的图像与裁剪矩形的大小相同、旋转(旋转图像和裁剪矩形)、图像校正(包括如何获得角度滑块类型的UI)的线索都将非常有用。如果有一些库具有这些功能,那么也可以使用。 有一个用于加载和播放图像的库。 以下是一些功能:

在他们的网站上有关于如何使用lib的详细信息。请查看:

您需要添加的渐变线是:

compile 'com.squareup.picasso:picasso:2.5.2'
它很容易使用。以下是我如何在示例应用程序中将图像加载并调整到ImageView中:

Picasso.with(mContext).load("http://cdn0.vox-cdn.com/uploads/chorus_asset/file/798874/DSCF1913.0.jpg").fit().centerCrop().into(imageView);
如您所见,我在这里使用了
fit().centerCrop()
。这将调整图像,使其与我的
imageView
相称。您可以尝试不同形式的图像转换,以更好地满足您的需要

您也可以从drawable文件夹或直接从以下文件加载图像:

Picasso.with(context).load(R.drawable.landing_screen).into(imageView1);
Picasso.with(context).load("file:///android_asset/DvpvklR.png").into(imageView2);
Picasso.with(context).load(new File(...)).into(imageView3);
编辑: 看起来我第一次读到你的问题时没有完全理解。以下是一些你想要达到的目标的提示。可能不是你想要的,但我想这可能是一个开始

如果要旋转图像,可以使用毕加索的
RequestCreator.rotate(float degrees)
。 这是您的文档

对于裁剪图像(如图所示,在指定的矩形内),有:

或者您可以使用并创建一个转换,如

CropTransformation(Top, Center, Bottom);
请毕加索将图像转换为如下:

Picasso.with(mContext).load(R.drawable.demo)
    .transform(transformation).into((ImageView) findViewById(R.id.image));
此外,正如@Amit K Saha在回答中所说,您可以使用一些Android SDK效果。选中android.media.effect


希望这有帮助。

android sdk提供了一些帮助。可能不是你想要的,但值得一试。看看这里

可以在这里找到可用效果的列表


这与这个问题有什么关系?@Amit K.Saha,我第一次读到他的问题时,似乎没有完全理解他的问题。我已经更新了我的答案,提供了一些他想要达到的目标的提示。虽然这可能不是他想要的最终解决方案,但我认为这可能是一个开始。谢谢你通知我。
Picasso.with(mContext).load(R.drawable.demo)
    .transform(transformation).into((ImageView) findViewById(R.id.image));