Codenameone 裁剪并居中代号为1的化身,允许用户选择要裁剪的区域

Codenameone 裁剪并居中代号为1的化身,允许用户选择要裁剪的区域,codenameone,Codenameone,关于在Codename One中裁剪和居中化身,我在手册、Javadoc和博客中看到了类似的示例,例如这里的第一块代码: 但我需要一些不同的、更困难的东西 主要的问题是,人脸并不总是在照片的正中央。某些应用程序允许用户选择要裁剪的区域 例如,假设捕获照片后,它看起来会自动裁剪并居中,因此: 当然错了,我想让狮子站在中间。在这种情况下,如果用户可以捏住狮子来缩放狮子并将其拖动到裁剪区域的中心,那就太好了,,得到如下结果: 我不知道从哪里开始使用代号一。是否可以在拍摄照片后立即使用显示的表单来

关于在Codename One中裁剪和居中化身,我在手册、Javadoc和博客中看到了类似的示例,例如这里的第一块代码:

但我需要一些不同的、更困难的东西

主要的问题是,人脸并不总是在照片的正中央。某些应用程序允许用户选择要裁剪的区域

例如,假设捕获照片后,它看起来会自动裁剪并居中,因此:

当然错了,我想让狮子站在中间。在这种情况下,如果用户可以捏住狮子来缩放狮子并将其拖动到裁剪区域的中心,那就太好了,,得到如下结果:


我不知道从哪里开始使用代号一。是否可以在拍摄照片后立即使用显示的表单来执行此操作,该表单允许在裁剪区域(如上图所示)对照片进行缩放和居中?谢谢您的建议。

这不是小事,但我们可能应该有一个标准化的组件来实现这一点。通常,最好的方法是使用
ImageViewer
作为分层布局组件,并在顶部使用覆盖遮罩。这很容易实现


最难的部分是根据
ImageViewer
类中的缩放/平移值正确剪切图像。

当然,照片的来源不限于相机,也可以是画廊或其他任何地方。