1# NdkPicture 2 3## 介绍 4本示例主要实现了基于Picture的图片解码、主图获取、图片编码等功能。 5 6## 效果预览 7 8| 主界面 | 9| ---------------------------------------------- | 10|  | 11 12使用说明: 13 141. 点击'Create Picture'按钮,解码图片,并以弹窗的形式通知结果(是否解码成功)。 152. 点击'Get MainPixelMap'按钮,从解码的Picture中获取主图,并以弹窗的形式通知结果。 163. 点击'Pack To Data'按钮或'Pack To File'按钮,将Picture编码到缓冲区或图片文件,并以弹窗的形式通知结果。 174. 点击'Realease Picture'按钮,释放Picture对象。 18 19## 工程目录 20 21``` 22NdkPicture 23entry/src/main/cpp/ 24├── types 25│ └── libentry 26│ └── Index.d.ts (声明Napi接口,供ts调用) 27├── CMakeLists.txt (CMake编译配置文件) 28└── napi_init.cpp (初始化Napi接口) 29entry/src/main/ets/ 30├── utils 31│ └── Logger.ets (logger日志类) 32│ └── MyButton.ets (自定义Button按钮类) 33│ └── PictureFunctions.ets (Picture函数类) 34└── pages 35 └── Index.ets (UI界面) 36entry/src/main/resources/ 37└── rawfile 38 └── test.jpg(图片资源) 39entry/src/ohosTest/ets/ 40└── test 41 ├── Ability.test.ets (UI测试代码) 42 └── List.test.ets (测试套件列表) 43``` 44 45## 具体实现 46+ 图片解码、获取主图、图片编码等功能的CPAI封装均在napi_init中实现,源码参考[napi_init.cpp](./entry/src/main/cpp/napi_init.cpp)。 47 48## 相关权限 49 50不涉及 51 52## 依赖 53 54不涉及 55 56## 约束和限制 57 581. 本示例支持标准系统上运行,支持设备:RK3568; 59 602. 本示例支持API15版本SDK,版本号:5.0.3.135; 61 623. 本示例已支持使DevEco Studio 5.0.3 Release (构建版本:5.0.8.300,构建 2025年3月19日)编译运行 63 64## 下载 65 66如需单独下载本工程,执行如下命令: 67 68``` 69git init 70git config core.sparsecheckout true 71echo code/DocsSample/Media/Image/NdkPicture/ > .git/info/sparse-checkout 72git remote add origin OpenHarmony/applications_app_samples 73git pull origin master 74```