oh-crop: OpenHarmony/HarmonyOS上的简单的图片剪裁库,可用于头像剪裁等常见场景。

📚 简介

oh-crop: OpenHarmony/HarmonyOS上的简单的图片剪裁库,可用于头像剪裁等常见场景。

代码仓库:oh-crop

📚 下载安装

ohpm i @xinyansoft/oh-crop

OpenHarmony ohpm 环境配置等更多内容,请参考: 下载安装三方库

📚 使用

  1. 定义CropModel对象
@State private model: CropModel = new CropModel();
...  
this.model.setImage(src).setFrameWidth(1000).setFrameRatio(1);
  1. 使用CropView
CropView({model: this.model,
}).layoutWeight(1).width('100%')

CropView仅仅包含图片的显示和手势操作、遮罩、取景框。

  1. 剪裁
let pm = await this.model.crop();
  1. 使用得到的PixelMap去实现你的业务逻辑

📚 CropModel支持的配置项

/**
* 图片uri
* 类型判断太麻烦了,先只支持string,其他形式的需要先转换成路径
*/
src: string = '';
/**
* 图片预览
*/
previewSource: string | Resource = '';
/**
* 是否可以拖动
*/
panEnabled: boolean = true;
/**
* 是否可以缩放
*/
zoomEnabled: boolean = true;
/**
* 取景框宽度
*/
frameWidth = 1000;
/**
* 取景框宽高比
*/
frameRatio = 1;
/**
* 遮罩颜色
*/
maskColor: string = '#AA000000';
/**
* 取景框边框颜色
*/
strokeColor: string = '#FFFFFF';
/**
* 图片加载监听
*/
imageLoadEventListener: ImageLoadEventListener | null = null;

CropModel设置支持setter链式调用。

📚 更多

我开发的其他鸿蒙库:

  1. oh-topic-editor: OpenHarmony & HarmonyOS平台上基于RichEditor实现的支持添加话题、@用户的文本编辑组件。
  2. oh-date-picker: OpenHarmony/HarmonyOS平台日期选择器增强版。

我的博客:https://blog.xinyanruanjian.com/

我的公众号:程序员吹白

鸿蒙开发交流QQ群:546723002

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1556254.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

六、Java 基础语法(下)

一、变量 1、变量的定义与使用 变量就是内存中的存储空间,空间中存储着经常发生改变的数据变量定义格式: 数据类型 变量名 数据值使用时根据变量名使用举例如下,上面是代码,下面是输出 2、变量的注意事项 变量名不允许重复…

系统分析师16:系统测试与维护

1 内容概要 2 软件测试类型 2.1 测试类型 动态测试【计算机运行】 白盒测试法:关注内部结构与逻辑灰盒测试法:介于两者之间黑盒测试法:关注输入输出及功能 静态测试【人工监测和计算机辅助分析】 桌前检查代码审查代码走查以上三个都是做的…

图解网络OSI模型与TCP/IP

一、OSI模型与TCP/IP 1、OSI模型 OSI/RM(Open System Interconnection,开放系统互联参考模型)是由ISO(国际标准组织)创建的一个有助于开放和理解计算机的通信模型,OSI七层参考模型作为一套规范的标准&…

端口冲突的解决方案以及SpringBoot自动检测可用端口demo

端口冲突的解决方案 端口冲突通常发生在尝试运行两个或多个应用程序或服务时,它们尝试使用同一个端口号,导致系统无法正确分配资源。 各种端口错误 你是否遇到过下面这些报错信息呢? Windows 系统报错: 系统错误 1004 套接字操作…

[C#]使用纯opencvsharp部署yolov11-onnx图像分类模型

【官方框架地址】 https://github.com/ultralytics/ultralytics.git 【算法介绍】 使用纯OpenCvSharp部署YOLOv11-ONNX图像分类模型是一项复杂的任务,但可以通过以下步骤实现: 准备环境:首先,确保开发环境已安装OpenCvSharp和必…

初始项目托管到gitee教程,开箱即用

0.本地仓库与远程仓库关联(需先在gitee创建仓库) ①打开powershell生成ssh key ssh-keygen -t ed25519 -C "Gitee SSH Key"-t key 类型-C 注释 生成成功如下,并按下三次回车 ②查看公私钥文件 ls ~/.ssh/输出: id_…

PPPoE协议个人理解+报文示例+典型配置-RFC2516

个人认为,理解报文就理解了协议。通过报文中的字段可以理解协议在交互过程中相关传递的信息,更加便于理解协议。 因此本文将在PPPoE协议报文的基础上进行介绍。 PPPoE协议发展 关于PPPoE基本原理,可参考1999年发布的《RFC2516-A Method fo…

大模型客服的未来发展趋势

在当今数字化时代,大模型客服正以惊人的速度改变着客户服务的格局。随着技术的不断进步,大模型客服的未来发展趋势充满了无限可能。随着人工智能技术的快速发展,智能客服领域正迎来一场前所未有的变革。大模型客服作为其中的重要分支&#xf…

32位机器上指针大小为什么是4字节?

(1)32位机器可寻址内存空间位4GB。为什么? 32位机器的总线宽度是32位,每一位可以是0或者1,那么32位可以表示个不同的值,也就是能寻址到个内存地址,每个内存地址对应一个内存单元(1个…

RFID学习

24.10.5学习目录 一.简介1.组成2.RFID协议3.RFID卡 一.简介 RFID被称为无线射频识别,其是一种通信技术,通过无线电讯号耦合识别特定目标并读写相关数据; RFID主要位于典型物联网架构中的感知层,其因为具有非接触式特性&#xff…

hiricacp 连接池校验机制

一、背景 项目发生告警,但是并没有影响业务,看了下日志,红框里面有循环调用了3次 ,一直以为是外部的重试在重试,但是外部确没有重试记录,就深扒了代码 二、想法 我知道hikaricp获取连接之后会校验连接的有…

k8s 之安装metrics-server

作者:程序那点事儿 日期:2024/01/29 18:25 metrics-server可帮助我们查看pod的cpu和内存占用情况 kubectl top po nginx-deploy-56696fbb5-mzsgg # 报错,需要Metrics API 下载 Metrics 解决 wget https://github.com/kubernetes-sigs/metri…

系统架构设计师⑦:企业信息化战略与实施

系统架构设计师⑦:企业信息化战略与实施 信息的概念及特点 信息的定义: ①香农:信息就是不确定性的减少。 ②维纳:信息就是信息,既不是物质,也不是能量。 信息的特点: ①客观性(真伪性):也叫事实性,不符…

【最新华为OD机试E卷-支持在线评测】简单的自动曝光(100分)多语言题解-(Python/C/JavaScript/Java/Cpp)

🍭 大家好这里是春秋招笔试突围 ,一枚热爱算法的程序员 💻 ACM金牌🏅️团队 | 大厂实习经历 | 多年算法竞赛经历 ✨ 本系列打算持续跟新华为OD-E/D卷的多语言AC题解 🧩 大部分包含 Python / C / Javascript / Java / Cpp 多语言代码 👏 感谢大家的订阅➕ 和 喜欢�…

神经网络激活函数列表大全及keras中的激活函数定义

一、概述 在机器学习中,激活函数是神经网络中的一种函数,用于在神经网络的每个神经元中引入非线性。没有激活函数,神经网络就无法学习复杂的模式,因为线性变换的组合仍然是线性的。 在神经网络的每层中,将该层所有输…

设计模式之装饰器模式(Decorator)

一、装饰器模式介绍 装饰模式(decorator pattern) 的原始定义是:动态的给一个对象添加一些额外的职责。 就扩展功能而言,装饰器模式提供了一种比使用子类更加灵活的替代方案。 在软件设计中,装饰器模式是一种用于替代继承的技术,它…

【颜色平衡树 / E】

题目 思路 DFS暴力 60分 代码 #include <bits/stdc.h> using namespace std; const int N 5010; const int M 5010; int h[N], e[M], ne[M], idx; int c[N], f; int ans; void add(int a, int b) // 添加一条边a->b {e[idx] b, ne[idx] h[a], h[a] idx ; } …

Linux防火墙-常用命令

作者介绍&#xff1a;简历上没有一个精通的运维工程师。希望大家多多关注作者&#xff0c;下面的思维导图也是预计更新的内容和当前进度(不定时更新)。 我们经过上小章节讲了Linux的部分进阶命令&#xff0c;我们接下来一章节来讲讲Linux防火墙。由于目前以云服务器为主&#x…

C语言—单链表

目录 一、链表的概念及结构 二、单链表实现 &#xff08;2.1&#xff09;基本结构定义 &#xff08;2.2&#xff09;申请节点 &#xff08;2.3&#xff09;打印函数 &#xff08;2.4&#xff09;头部插入删除\尾部插入删除 &#xff08;2.4.1&#xff09;尾部插入 &…

计算机毕业设计 基于Python的人事管理系统的设计与实现 Python+Django+Vue 前后端分离 附源码 讲解 文档

&#x1f34a;作者&#xff1a;计算机编程-吉哥 &#x1f34a;简介&#xff1a;专业从事JavaWeb程序开发&#xff0c;微信小程序开发&#xff0c;定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事&#xff0c;生活就是快乐的。 &#x1f34a;心愿&#xff1a;点…