Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
06860704
D
Docs
项目概览
OpenHarmony
/
Docs
接近 2 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
06860704
编写于
8月 29, 2023
作者:
朱
朱静茹
提交者:
Gitee
8月 29, 2023
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update zh-cn/application-dev/media/image-decoding.md.
Signed-off-by:
N
朱静茹
<
zhujingru2@huawei.com
>
上级
bd481beb
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
24 addition
and
20 deletion
+24
-20
zh-cn/application-dev/media/image-decoding.md
zh-cn/application-dev/media/image-decoding.md
+24
-20
未找到文件。
zh-cn/application-dev/media/image-decoding.md
浏览文件 @
06860704
...
...
@@ -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。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录