HarmonyOS 鸿蒙Next 图片裁剪

发布于 1周前 作者 yuanlaile 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 图片裁剪 是否有图片自由裁剪相关能力,或者是否有相关的实现方案没?

4 回复

参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-photoaccesshelper-V5#photoselectoptions

里面的PhotoSelectOptions对象的isEditSupported11+,就可以用系统自带的裁剪页面。

import photoAccessHelper from '@ohos.file.photoAccessHelper';
import { BusinessError } from '@kit.BasicServicesKit';

const photoSelectOptions = new photoAccessHelper.PhotoSelectOptions();

choosePhoto() {
  photoSelectOptions.MIMEType = photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE; // 过滤选择媒体文件类型为VIDEO
  photoSelectOptions.maxSelectNumber = 1;
  // 选择媒体文件的最大数目
  photoSelectOptions.isPhotoTakingSupported = true
  photoSelectOptions.isEditSupported = true
  let uris: Array<string> = [];
  const photoViewPicker = new photoAccessHelper.PhotoViewPicker();
  photoViewPicker.select(photoSelectOptions).then(async (photoSelectResult: photoAccessHelper.PhotoSelectResult) => {
    uris = photoSelectResult.photoUris;
  }).catch((err: BusinessError) => {
    console.error(`Invoke photoViewPicker.select failed, code is ${err.code}, message is ${err.message}`);
  })
}

更多关于HarmonyOS 鸿蒙Next 图片裁剪的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


不行呀,我选择图片后就直接返回了,不会跳到系统自带的的图片裁剪功能页面,

放弃吧,没有……废柴系统

在HarmonyOS(鸿蒙)系统中进行图片裁剪操作,通常涉及对图像数据的直接处理或使用系统提供的API来完成。以下是一个简化的说明,专注于鸿蒙系统的原生方法,不涉及Java或C语言代码:

鸿蒙系统提供了丰富的多媒体处理能力,包括图片裁剪。开发者可以通过调用鸿蒙的媒体框架API来实现图片裁剪功能。这些API通常封装在图像处理模块中,允许开发者指定裁剪区域、输出尺寸等参数。

具体到实现步骤,开发者需要:

  1. 加载图片:首先,从存储或资源中加载待裁剪的图片。
  2. 设置裁剪参数:定义裁剪区域(如左上角和右下角的坐标)以及输出图片的尺寸。
  3. 调用裁剪API:使用鸿蒙提供的裁剪函数或方法,传入图片和裁剪参数。
  4. 保存或显示裁剪后的图片:将裁剪后的图片保存到存储中,或在界面上显示。

鸿蒙系统的API设计旨在简化开发流程,提高开发效率。对于图片裁剪等常见需求,系统通常提供了直观且易于使用的接口。

如果开发者在实现图片裁剪功能时遇到困难,建议查阅鸿蒙系统的官方文档或示例代码,以获取更详细的API使用说明和代码示例。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部