2

我正在使用 Creative SDK 作为我的自拍应用的照片编辑器。根据 SDK 文档,我编写了以下代码将照片发送到编辑器活动。

Uri uri = Uri.fromFile(fileImg);

    //set preview size
    DisplayMetrics dm = DeviceUtils.getDisplayMetrics();
    int max_size = Math.max(dm.widthPixels, dm.heightPixels);
    max_size = (int) ((float) max_size / 1.2f);

    //prepare
    Intent newIntent = new AviaryIntent.Builder(fromAct).setData(uri)
            .withOutput(uri)
            .withOutputFormat(Bitmap.CompressFormat.JPEG)
            .withOutputSize(MegaPixels.Mp5).withNoExitConfirmation(true)
            .saveWithNoChanges(false)
            .withOutputQuality(100)
            .withPreviewSize(max_size)
            .build();

    // ..and start feather
    fromAct.startActivityForResult(newIntent, ACTION_REQUEST_FEATHER);

在 Aviary Editor 活动中,HTC 设备(HTC One M8)上的预览图像太小。它可以在另一台设备上正常工作(全尺寸)。

我该如何解决?

4

2 回答 2

2

屏幕上加载的小图像取决于不同的因素:

  • 通过withPreviewSize(max_size)的小于屏幕尺寸。
  • 图像本身小于屏幕尺寸。

在你的情况下,价值是max_size多少?尝试省略该参数(编辑器活动将尝试使用最佳分辨率加载图像)。

其次,您确定要加载的图像足够大吗?尝试在您的活动中加载该图像并打印出位图宽度和高度。

于 2016-01-06T17:32:34.480 回答
0

所以,对我来说工作得很好:

.withOutputQuality(100)
.withPreviewSize(2000)
于 2016-05-10T23:20:50.477 回答