【发布时间】:2017-12-11 19:29:36
【问题描述】:
我已经构建了一个相机应用程序,可以让我拍照,但我想以特定(预设)宽度/高度和纵横比保存它。
例子:
- 红色:旧图(来源)
- 绿色:新图片
- 红色和绿色之间:边距
我尝试了以下方法(没有运气):
BitmapFactory.Options bmOptions = new BitmapFactory.Options();
bitmap = BitmapFactory.decodeFile(editPhotoFile.getAbsolutePath(), bmOptions);
bitmap = Bitmap.createScaledBitmap(bitmap, bitmap.getWidth(), bitmap.getHeight(), true);
Bitmap croppedBmp = Bitmap.createBitmap(bitmap, margin, margin, bitmap.getWidth() - margin, bitmap.getHeight() - margin);
使用边距,我尝试在左侧(第一个边距)和顶部(第二个边距)切割特定数量的像素,并且在总宽度和高度上相同。不工作。
Github 上也有一些可用的库,但它们都可以让我选择图像并对其进行编辑 - 我不需要手动编辑,我希望有预设的边距进行裁剪。
此外,Stack Overflow 上的可能解决方案以及仅通过谷歌搜索或查找教程都不会给我带来任何运气。 搜索查询:
java android 裁剪图片
java android 裁剪图片教程
谁能帮帮我?
【问题讨论】:
-
所以你不希望用户编辑图像裁剪..部分?
-
不。我想自己裁剪图像,因此图像在每台设备上的比例相同。一些设备具有 3:4 传感器,其他设备具有 9:16 或 16:9,依此类推。这就是原因。