diff --git a/CHANGELOG.md b/CHANGELOG.md
index dcad63b..be37275 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,6 @@
## 3.0.0-rc.7
- 修复成功回调获取不到宽高
+- 新增svg图片解码
## 3.0.0-rc.6
- 支持多种组合变换
diff --git a/entry/src/main/ets/pages/SingleImage.ets b/entry/src/main/ets/pages/SingleImage.ets
index c71f7bf..0aaee97 100644
--- a/entry/src/main/ets/pages/SingleImage.ets
+++ b/entry/src/main/ets/pages/SingleImage.ets
@@ -38,12 +38,12 @@ struct SingleImage {
build() {
Scroll(this.scroller) {
Column() {
- Text("本地资源图片")
+ Text("本地资源svg图片")
.fontSize(30)
.fontWeight(FontWeight.Bold)
ImageKnifeComponent({
imageKnifeOption: {
- loadSrc: $r("app.media.app_icon"),
+ loadSrc: $r("app.media.svgSample"),
placeholderSrc: $r("app.media.loading"),
errorholderSrc: $r("app.media.failed"),
objectFit: ImageFit.Contain
diff --git a/entry/src/main/resources/base/media/svgSample.svg b/entry/src/main/resources/base/media/svgSample.svg
new file mode 100644
index 0000000..dab8c8e
--- /dev/null
+++ b/entry/src/main/resources/base/media/svgSample.svg
@@ -0,0 +1,48 @@
+
+
+
diff --git a/library/src/main/ets/ImageKnifeDispatcher.ets b/library/src/main/ets/ImageKnifeDispatcher.ets
index 9eb9609..ca22f0e 100644
--- a/library/src/main/ets/ImageKnifeDispatcher.ets
+++ b/library/src/main/ets/ImageKnifeDispatcher.ets
@@ -510,6 +510,12 @@ async function requestJob(request: RequestJobRequest, requestList?: List {
+ resPixelmap = pixelmap
+ imageSource.release()
+ })
+ return {
+ pixelMap: resPixelmap,
+ bufferSize: bufferSize,
+ fileKey: fileKey,
+ };
}
-
- let imageSource: image.ImageSource = image.createImageSource(resBuf);
- let decodingOptions: image.DecodingOptions = {
- editable: true,
- }
-
- let resPixelmap: PixelMap | undefined = undefined
let size = (await imageSource.getImageInfo()).size
await imageSource.createPixelMap(decodingOptions)
.then((pixelmap: PixelMap) => {