未验证 提交 7e6af2a2 编写于 作者: O openharmony_ci 提交者: Gitee

!23314 示例代码整改

Merge pull request !23314 from 朱静茹/master
......@@ -17,8 +17,8 @@
```ts
// Stage模型参考如下代码
const context = getContext(this);
const filePath = context.cacheDir + '/test.jpg';
const context : Context = getContext(this);
const filePath : string = context.cacheDir + '/test.jpg';
```
```ts
......@@ -39,10 +39,10 @@
```ts
// Stage模型参考如下代码
const context = getContext(this);
const filePath = context.cacheDir + '/test.jpg';
const file = fs.openSync(filePath, fs.OpenMode.READ_WRITE);
const fd = file?.fd;
const context : Context = getContext(this);
const filePath : string = context.cacheDir + '/test.jpg';
const file : File = fs.openSync(filePath, fs.OpenMode.READ_WRITE);
const fd : number = file?.fd;
```
```ts
......@@ -51,16 +51,16 @@
const context = featureAbility.getContext();
const filePath = context.getCacheDir() + "/test.jpg";
const file = fs.openSync(filePath, fs.OpenMode.READ_WRITE);
const fd = file?.fd;
const file : File = fs.openSync(filePath, fs.OpenMode.READ_WRITE);
const fd : number = file?.fd;
```
- 方法三:通过资源管理器获取资源文件的ArrayBuffer。具体请参考[ResourceManager API参考文档](../reference/apis/js-apis-resource-manager.md#getrawfilecontent9-1)
```ts
// Stage模型
const context = getContext(this);
const context : Context = getContext(this);
// 获取resourceManager资源管理器
const resourceMgr = context.resourceManager;
const resourceMgr : ResourceManager = context.resourceManager;
```
```ts
......@@ -73,7 +73,7 @@
不同模型获取资源管理器的方式不同,获取资源管理器后,再调用resourceMgr.getRawFileContent()获取资源文件的ArrayBuffer。
```ts
const fileData = await resourceMgr.getRawFileContent('test.jpg');
const fileData : Content = await resourceMgr.getRawFileContent('test.jpg');
// 获取图片的ArrayBuffer
const buffer = fileData.buffer;
```
......@@ -83,29 +83,33 @@
```ts
// path为已获得的沙箱路径
const imageSource = image.createImageSource(filePath);
const imageSource : ImageSource = image.createImageSource(filePath);
```
- 方法二:通过文件描述符fd创建ImageSource。文件描述符可以通过步骤2的方法二获取。
```ts
// fd为已获得的文件描述符
const imageSource = image.createImageSource(fd);
const imageSource : ImageSource = image.createImageSource(fd);
```
- 方法三:通过缓冲区数组创建ImageSource。缓冲区数组可以通过步骤2的方法三获取。
```ts
const imageSource = image.createImageSource(buffer);
const imageSource : ImageSource = image.createImageSource(buffer);
```
4. 设置解码参数DecodingOptions,解码获取PixelMap图片对象。
```ts
class decodingOption {
flag : boolean = true
n : number = 0
}
let decodingOptions = {
editable: true,
desiredPixelFormat: 3,
}
// 创建pixelMap并进行简单的旋转和缩放
const pixelMap = await imageSource.createPixelMap(decodingOptions);
const pixelMap : PixelMap = await imageSource.createPixelMap(decodingOptions);
```
解码完成,获取到PixelMap对象后,可以进行后续[图片处理](image-transformation.md)
......@@ -120,15 +124,15 @@
1. 获取resourceManager资源管理。
```ts
const context = getContext(this);
const context : Context = getContext(this);
// 获取resourceManager资源管理
const resourceMgr = context.resourceManager;
const resourceMgr : ResourceManager = context.resourceManager;
```
2. 获取rawfile文件夹下test.jpg的ArrayBuffer。
```ts
const fileData = await resourceMgr.getRawFileContent('test.jpg');
const fileData : Content = await resourceMgr.getRawFileContent('test.jpg');
// 获取图片的ArrayBuffer
const buffer = fileData.buffer;
```
......@@ -136,13 +140,13 @@
3. 创建imageSource。
```ts
const imageSource = image.createImageSource(buffer);
const imageSource : ImageSource = image.createImageSource(buffer);
```
4. 创建PixelMap。
```ts
const pixelMap = await imageSource.createPixelMap();
const pixelMap : PixelMap = await imageSource.createPixelMap();
```
5. 释放pixelMap。
......
......@@ -20,7 +20,7 @@
format为图像的编码格式;quality为图像质量,范围从0-100,100为最佳质量。
```ts
let packOpts = { format:"image/jpeg", quality:98 };
let packOpts : Context = { format:"image/jpeg", quality:98 };
```
3. [创建PixelMap对象或创建ImageSource](image-decoding.md)对象。
......@@ -30,9 +30,9 @@
方法一:通过PixelMap进行编码。
```ts
imagePackerApi.packing(pixelMap, packOpts).then( data => {
imagePackerApi.packing(pixelMap : PixelMap, packOpts).then( data => {
// data 为打包获取到的文件流,写入文件保存即可得到一张图片
}).catch(error => {
}).catch(error : void => {
console.error('Failed to pack the image. And the error is: ' + error);
})
```
......@@ -42,7 +42,7 @@
```ts
imagePackerApi.packing(imageSource, packOpts).then( data => {
// data 为打包获取到的文件流,写入文件保存即可得到一张图片
}).catch(error => {
}).catch(error : void => {
console.error('Failed to pack the image. And the error is: ' + error);
})
```
......@@ -17,11 +17,11 @@
```ts
// 获取图像像素的总字节数
let pixelBytesNumber = pixelMap.getPixelBytesNumber();
let pixelBytesNumber : number = pixelMap.getPixelBytesNumber();
// 获取图像像素每行字节数
let rowCount = pixelMap.getBytesNumberPerRow();
let rowCount : number = pixelMap.getBytesNumberPerRow();
// 获取当前图像像素密度。像素密度是指每英寸图片所拥有的像素数量。像素密度越大,图片越精细。
let getDensity = pixelMap.getDensity();
let getDensity : number = pixelMap.getDensity();
```
3. 读取并修改目标区域像素数据,写回原图。
......
......@@ -19,15 +19,15 @@ EXIF信息的读取与编辑相关API的详细介绍请参见[API参考](../refe
import image from '@ohos.multimedia.image';
// 获取沙箱路径创建ImageSource
const fd = ...; // 获取需要被处理的图片的fd
const imageSource = image.createImageSource(fd);
const fd : number = ...; // 获取需要被处理的图片的fd
const imageSource : ImageSource = image.createImageSource(fd);
```
2. 读取、编辑EXIF信息。
```ts
// 读取EXIF信息,BitsPerSample为每个像素比特数
imageSource.getImageProperty('BitsPerSample', (error, data) => {
imageSource.getImageProperty('BitsPerSample', (error : void, data : BitsPerSample) => {
if (error) {
console.error('Failed to get the value of the specified attribute key of the image.And the error is: ' + error);
} else {
......@@ -37,7 +37,7 @@ EXIF信息的读取与编辑相关API的详细介绍请参见[API参考](../refe
// 编辑EXIF信息
imageSource.modifyImageProperty('ImageWidth', '120').then(() => {
const width = imageSource.getImageProperty("ImageWidth");
const width : number = imageSource.getImageProperty("ImageWidth");
console.info('The new imageWidth is ' + width);
})
```
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册