forked from floraachy/ImageKnife
1.编译错误整改,主要涉及ThreadWorker和一些接口命名单词拼写错误
2.编译错误整改,主要涉及context对象转换为Object,Object再次转换为abilityContext声明导入 Signed-off-by: zhoulisheng1 <zhoulisheng1@huawei.com>
This commit is contained in:
parent
cfd31304d4
commit
bd887825e7
|
@ -16,7 +16,7 @@
|
|||
import { FileUtils, ImageKnifeGlobal} from '@ohos/imageknife'
|
||||
import resourceManager from '@ohos.resourceManager';
|
||||
import { BusinessError } from '@ohos.base'
|
||||
|
||||
import common from '@ohos.app.ability.common';
|
||||
@Entry
|
||||
@Component
|
||||
struct basicTestFileIOPage {
|
||||
|
@ -42,7 +42,7 @@ struct basicTestFileIOPage {
|
|||
.margin({ top: 10 })
|
||||
.onClick(() => {
|
||||
|
||||
let data:string = (ImageKnifeGlobal.getInstance().getHapContext as Record<string,Object>).filesDir as string;
|
||||
let data:string = (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).filesDir as string;
|
||||
console.log('ImageKnife filesPath = ' + data)
|
||||
this.filePath = data
|
||||
this.appFilePath = data;
|
||||
|
@ -52,7 +52,7 @@ struct basicTestFileIOPage {
|
|||
.margin({ top: 10 })
|
||||
.onClick(() => {
|
||||
|
||||
let data:string = (ImageKnifeGlobal.getInstance().getHapContext as Record<string,Object>).cacheDir as string;
|
||||
let data:string = (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).cacheDir as string;
|
||||
console.log('ImageKnife cachesPath = ' + data)
|
||||
this.filePath = data
|
||||
this.appFilePath = data;
|
||||
|
@ -80,7 +80,7 @@ struct basicTestFileIOPage {
|
|||
this.appFilePath = 'appFilePath未取到值,请按顺序从上往下,从左往右依次测试'
|
||||
return
|
||||
}
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.gifSample').id)
|
||||
.then(data => {
|
||||
console.log('result.getMedia')
|
||||
|
|
|
@ -20,6 +20,7 @@ import { Base64 } from '@ohos/imageknife'
|
|||
import { ParseImageUtil } from '@ohos/imageknife'
|
||||
import { ImageKnifeGlobal } from '@ohos/imageknife'
|
||||
import { BusinessError } from '@ohos.base'
|
||||
import common from '@ohos.app.ability.common';
|
||||
@Entry
|
||||
@Component
|
||||
struct BasicTestMediaImage {
|
||||
|
@ -31,7 +32,7 @@ struct BasicTestMediaImage {
|
|||
Flex({ direction: FlexDirection.Row }) {
|
||||
Button('本地资源jpg')
|
||||
.onClick(() => {
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.jpgSample').id)
|
||||
.then(data => {
|
||||
let arrayBuffer = this.typedArrayToBuffer(data);
|
||||
|
@ -47,7 +48,7 @@ struct BasicTestMediaImage {
|
|||
}).margin({ left: 15 }).backgroundColor(Color.Blue)
|
||||
Button('本地资源png')
|
||||
.onClick(() => {
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.pngSample').id)
|
||||
.then(data => {
|
||||
let arrayBuffer = this.typedArrayToBuffer(data);
|
||||
|
@ -63,7 +64,7 @@ struct BasicTestMediaImage {
|
|||
}).margin({ left: 15 }).backgroundColor(Color.Blue)
|
||||
Button('本地资源bmp')
|
||||
.onClick(() => {
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.bmpSample').id)
|
||||
.then(data => {
|
||||
let arrayBuffer = this.typedArrayToBuffer(data);
|
||||
|
@ -79,7 +80,7 @@ struct BasicTestMediaImage {
|
|||
}).margin({ left: 15 }).backgroundColor(Color.Blue)
|
||||
Button('本地资源webp')
|
||||
.onClick(() => {
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.jpgSample').id)
|
||||
.then(data => {
|
||||
let arrayBuffer = this.typedArrayToBuffer(data);
|
||||
|
@ -95,7 +96,7 @@ struct BasicTestMediaImage {
|
|||
}).margin({ left: 15 }).backgroundColor(Color.Blue)
|
||||
Button('本地资源gif')
|
||||
.onClick(() => {
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.gifSample').id)
|
||||
.then(data => {
|
||||
let arrayBuffer = this.typedArrayToBuffer(data);
|
||||
|
|
|
@ -19,6 +19,7 @@ import resourceManager from '@ohos.resourceManager';
|
|||
import {Base64} from '@ohos/imageknife'
|
||||
import {ImageKnifeGlobal} from '@ohos/imageknife'
|
||||
import { BusinessError } from '@ohos.base'
|
||||
import common from '@ohos.app.ability.common';
|
||||
@Entry
|
||||
@Component
|
||||
struct BasicTestResourceManagerPage {
|
||||
|
@ -32,7 +33,7 @@ struct BasicTestResourceManagerPage {
|
|||
Button('getMedia解析一张jpg图片')
|
||||
.margin({ top: 10 })
|
||||
.onClick(() => {
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.jpgSample')
|
||||
.id)
|
||||
.then(data => {
|
||||
|
@ -49,7 +50,7 @@ struct BasicTestResourceManagerPage {
|
|||
Button('getMediaBase64解析一张png图片')
|
||||
.margin({ top: 10 })
|
||||
.onClick(() => {
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContentBase64($r('app.media.pngSample')
|
||||
.id)
|
||||
.then(data => {
|
||||
|
|
|
@ -94,17 +94,18 @@ struct CompressPage {
|
|||
let data = new Array<Resource>();
|
||||
data.push($r('app.media.jpgSample'))
|
||||
|
||||
console.info("asasd start compress")
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife())
|
||||
.compressBuilder()
|
||||
.load(data)
|
||||
.ignoreBy(100)
|
||||
.get()
|
||||
.then((path:string)=>{
|
||||
this.mAsyncPathHint = path;
|
||||
this.mAsyncPath='file://' + path;
|
||||
})
|
||||
;
|
||||
let imageKnife:ImageKnife|undefined = ImageKnifeGlobal.getInstance().getImageKnife()
|
||||
if(imageKnife!=undefined) {
|
||||
imageKnife
|
||||
.compressBuilder()
|
||||
.load(data)
|
||||
.ignoreBy(100)
|
||||
.get()
|
||||
.then((path: string) => {
|
||||
this.mAsyncPathHint = path;
|
||||
this.mAsyncPath = 'file://' + path;
|
||||
});
|
||||
}
|
||||
console.info("asasd start compress end")
|
||||
}
|
||||
private cropressRecource() {
|
||||
|
@ -121,7 +122,7 @@ struct CompressPage {
|
|||
this.mResultText = "start"
|
||||
console.info("asasd start")
|
||||
},
|
||||
onScuccess:(p: PixelMap | null | undefined, path: string)=> {
|
||||
onSuccess:(p: PixelMap | null | undefined, path: string)=> {
|
||||
if(p!=null && p!=undefined) {
|
||||
let pack = p;
|
||||
this.mRPixelMap = pack as PixelMap;
|
||||
|
@ -136,14 +137,16 @@ struct CompressPage {
|
|||
}
|
||||
}
|
||||
console.info("asasd start compress")
|
||||
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife())
|
||||
.compressBuilder()
|
||||
.load(data)
|
||||
.ignoreBy(100)
|
||||
.setRenameListener(rename)
|
||||
.setCompressListener(listener)
|
||||
.launch();
|
||||
let imageKnife:ImageKnife|undefined = ImageKnifeGlobal.getInstance().getImageKnife()
|
||||
if(imageKnife != undefined) {
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife())
|
||||
.compressBuilder()
|
||||
.load(data)
|
||||
.ignoreBy(100)
|
||||
.setRenameListener(rename)
|
||||
.setCompressListener(listener)
|
||||
.launch();
|
||||
}
|
||||
console.info("asasd start compress end")
|
||||
}
|
||||
}
|
|
@ -22,7 +22,8 @@ import { CropCallback } from '@ohos/imageknife'
|
|||
import { FileUtils } from '@ohos/imageknife'
|
||||
import { ImageKnifeGlobal } from '@ohos/imageknife'
|
||||
import { BusinessError } from '@ohos.base'
|
||||
|
||||
import resourceManager from '@ohos.resourceManager';
|
||||
import common from '@ohos.app.ability.common'
|
||||
|
||||
@Entry
|
||||
@Component
|
||||
|
@ -42,7 +43,7 @@ export struct CropImagePage2 {
|
|||
Column() {
|
||||
Button('点击解析图片')
|
||||
.onClick(() => {
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.bmpSample').id)
|
||||
.then((data:Uint8Array) => {
|
||||
let arrayBuffer = FileUtils.getInstance().uint8ArrayToBuffer(data);
|
||||
|
|
|
@ -14,9 +14,11 @@
|
|||
*/
|
||||
import {GIFParseImpl} from '@ohos/imageknife'
|
||||
import {ImageKnifeGlobal} from '@ohos/imageknife'
|
||||
import {ImageKnife} from '@ohos/imageknife'
|
||||
import worker from '@ohos.worker';
|
||||
import resourceManager from '@ohos.resourceManager';
|
||||
import { BusinessError } from '@ohos.base'
|
||||
import common from '@ohos.app.ability.common';
|
||||
@Entry
|
||||
@Component
|
||||
struct gifTestCasePage {
|
||||
|
@ -30,7 +32,7 @@ struct gifTestCasePage {
|
|||
Flex({direction:FlexDirection.Row}){
|
||||
Button("加载gif图片")
|
||||
.onClick(()=>{
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.test').id)
|
||||
.then(data => {
|
||||
console.log('basicTestFileIOPage - 本地加载资源 解析后数据data length= ' + data.byteLength)
|
||||
|
@ -52,7 +54,7 @@ struct gifTestCasePage {
|
|||
}).margin({left:5}).backgroundColor(Color.Blue)
|
||||
Button("加载gif图片自带worker")
|
||||
.onClick(()=>{
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.gifSample_single_frame').id)
|
||||
.then(data => {
|
||||
console.log('basicTestFileIOPage - 本地加载资源 解析后数据data length = ' + data.byteLength)
|
||||
|
@ -78,7 +80,7 @@ struct gifTestCasePage {
|
|||
}).margin({left:5}).backgroundColor(Color.Blue)
|
||||
Button("加载gif图片全局配置worker")
|
||||
.onClick(()=>{
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.test').id)
|
||||
.then(data => {
|
||||
console.log('basicTestFileIOPage - 本地加载资源 解析后数据data length = ' + data.byteLength)
|
||||
|
@ -121,7 +123,10 @@ struct gifTestCasePage {
|
|||
type: 'classic',
|
||||
name: 'ImageKnifeParseGIF'
|
||||
})
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife()).setGifWorker(this.globalGifWorker)
|
||||
let imageKnife:ImageKnife|undefined = ImageKnifeGlobal.getInstance().getImageKnife()
|
||||
if(imageKnife != undefined) {
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife())?.setGifWorker(this.globalGifWorker)
|
||||
}
|
||||
}
|
||||
aboutToDisappear(){
|
||||
if(this.globalGifWorker){
|
||||
|
|
|
@ -17,6 +17,7 @@ import {
|
|||
ImageKnifeComponent,
|
||||
ImageKnifeOption,
|
||||
ImageKnifeGlobal,
|
||||
ImageKnife
|
||||
} from '@ohos/imageknife'
|
||||
import worker from '@ohos.worker';
|
||||
|
||||
|
@ -92,7 +93,10 @@ struct IndexFunctionDemo {
|
|||
name: 'ImageKnifeParseGIF'
|
||||
})
|
||||
// gif解析在子线程,请在页面构建后创建worker,注入imageknife
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife()).setGifWorker(this.globalGifWorker)
|
||||
let imageKnife:ImageKnife|undefined = ImageKnifeGlobal.getInstance().getImageKnife()
|
||||
if(imageKnife != undefined) {
|
||||
imageKnife?.setGifWorker(this.globalGifWorker)
|
||||
}
|
||||
}
|
||||
aboutToDisappear(){
|
||||
if(this.globalGifWorker){
|
||||
|
|
|
@ -20,6 +20,7 @@ import featureability from '@ohos.ability.featureAbility'
|
|||
import ArkWorker from '@ohos.worker'
|
||||
import worker from '@ohos.worker';
|
||||
import { BusinessError } from '@ohos.base'
|
||||
import common from '@ohos.app.ability.common';
|
||||
@Entry
|
||||
@Component
|
||||
struct PngjTestCasePage {
|
||||
|
@ -52,8 +53,8 @@ struct PngjTestCasePage {
|
|||
|
||||
Button(this.hint7).fontSize(30)
|
||||
.onClick(() => {
|
||||
this.rootFolder = (ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).filesDir as string;
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>)
|
||||
this.rootFolder = (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).filesDir as string;
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext)
|
||||
.resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.pngSample').id)
|
||||
.then(data => {
|
||||
|
@ -94,8 +95,8 @@ struct PngjTestCasePage {
|
|||
|
||||
|
||||
|
||||
this.rootFolder = (ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).filesDir as string;
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>)
|
||||
this.rootFolder = (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).filesDir as string;
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext)
|
||||
.resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.pngSample').id)
|
||||
|
||||
|
@ -140,8 +141,8 @@ struct PngjTestCasePage {
|
|||
Flex({ direction: FlexDirection.Row, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {
|
||||
Button(this.hint9).fontSize(30)
|
||||
.onClick(() => {
|
||||
this.rootFolder = (ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).filesDir as string;
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>)
|
||||
this.rootFolder = (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).filesDir as string;
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext)
|
||||
.resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.pngSample').id)
|
||||
.then(data => {
|
||||
|
@ -190,8 +191,8 @@ struct PngjTestCasePage {
|
|||
|
||||
Button(this.hint10).fontSize(30)
|
||||
.onClick(() => {
|
||||
this.rootFolder = (ImageKnifeGlobal.getInstance().getHapContext as Record<string,Object>).filesDir as string;
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>)
|
||||
this.rootFolder = (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).filesDir as string;
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext)
|
||||
.resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.pngSample').id)
|
||||
.then(data => {
|
||||
|
|
|
@ -16,6 +16,7 @@ import {SVGParseImpl} from '@ohos/imageknife'
|
|||
import {ImageKnifeGlobal} from '@ohos/imageknife'
|
||||
import resourceManager from '@ohos.resourceManager';
|
||||
import {BusinessError} from '@ohos.base'
|
||||
import common from '@ohos.app.ability.common';
|
||||
@Entry
|
||||
@Component
|
||||
struct svgTestCasePage {
|
||||
|
@ -30,7 +31,7 @@ struct svgTestCasePage {
|
|||
Button("加载SVG图片")
|
||||
.onClick(()=>{
|
||||
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.svgSample').id)
|
||||
.then((data:Uint8Array) => {
|
||||
console.log('basicTestFileIOPage - 本地加载资源 解析后数据data = ' + data)
|
||||
|
@ -60,7 +61,7 @@ struct svgTestCasePage {
|
|||
Button("加载SVG图片")
|
||||
.onClick(()=>{
|
||||
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent($r('app.media.iconsvg').id)
|
||||
.then(data => {
|
||||
console.log('basicTestFileIOPage - 本地加载资源 解析后数据data = ' + data)
|
||||
|
|
|
@ -17,6 +17,7 @@ import {
|
|||
ImageKnifeComponent,
|
||||
ImageKnifeOption,
|
||||
ImageKnifeGlobal,
|
||||
ImageKnife,
|
||||
ImageKnifeDrawFactory,
|
||||
ScaleType
|
||||
} from '@ohos/imageknife'
|
||||
|
@ -89,8 +90,11 @@ struct tempUrlTestPage {
|
|||
type: 'classic',
|
||||
name: 'ImageKnifeParseGIF'
|
||||
})
|
||||
// gif解析在子线程,请在页面构建后创建worker,注入imageknife
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife()).setGifWorker(this.globalGifWorker)
|
||||
let imageKnife:ImageKnife|undefined = ImageKnifeGlobal.getInstance().getImageKnife()
|
||||
if(imageKnife != undefined) {
|
||||
// gif解析在子线程,请在页面构建后创建worker,注入imageknife
|
||||
imageKnife.setGifWorker(this.globalGifWorker)
|
||||
}
|
||||
}
|
||||
aboutToDisappear(){
|
||||
if(this.globalGifWorker){
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
import {ImageKnifeComponent} from '@ohos/imageknife'
|
||||
import {ImageKnifeOption} from '@ohos/imageknife'
|
||||
import {ImageKnifeGlobal} from '@ohos/imageknife'
|
||||
import {ImageKnife} from '@ohos/imageknife'
|
||||
import {RotateImageTransformation} from '@ohos/imageknife'
|
||||
import worker from '@ohos.worker'
|
||||
@Entry
|
||||
|
@ -90,7 +91,10 @@ struct TestGifDontAnimatePage {
|
|||
type: 'classic',
|
||||
name: 'ImageKnifeParseGIF'
|
||||
})
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife()).setGifWorker(this.globalGifWorker)
|
||||
let imageKnife : ImageKnife|undefined = ImageKnifeGlobal.getInstance().getImageKnife()
|
||||
if(imageKnife!= undefined) {
|
||||
imageKnife.setGifWorker(this.globalGifWorker)
|
||||
}
|
||||
}
|
||||
aboutToDisappear(){
|
||||
if(this.globalGifWorker){
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { ImageKnife,ImageKnifeGlobal,ImageKnifeGlobal, ImageKnifeComponent, ImageKnifeOption } from '@ohos/imageknife'
|
||||
import { ImageKnife,ImageKnifeGlobal, ImageKnifeComponent, ImageKnifeOption } from '@ohos/imageknife'
|
||||
import worker, { MessageEvents } from '@ohos.worker'
|
||||
import Prompt from '@system.prompt'
|
||||
|
||||
|
@ -100,7 +100,7 @@ struct TestGifLoadWithWorkerPage {
|
|||
Button('加载gif')
|
||||
.margin({ top: 16 })
|
||||
.onClick(() => {
|
||||
console.log("ImageKnifeComponent button 加载gif onClick()")
|
||||
|
||||
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife()).setGifWorker(undefined)
|
||||
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
import {ImageKnifeComponent} from '@ohos/imageknife'
|
||||
import {ImageKnifeOption} from '@ohos/imageknife'
|
||||
import {ImageKnifeGlobal} from '@ohos/imageknife'
|
||||
import {ImageKnife} from '@ohos/imageknife'
|
||||
import {RotateImageTransformation} from '@ohos/imageknife'
|
||||
import ArkWorker from '@ohos.worker'
|
||||
import worker from '@ohos.worker'
|
||||
|
@ -191,7 +192,10 @@ struct TestImageKnifeOptionChangedPage {
|
|||
type: 'classic',
|
||||
name: 'ImageKnifeParseGIF'
|
||||
})
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife()).setGifWorker(this.globalGifWorker)
|
||||
let imageKnife:ImageKnife|undefined = ImageKnifeGlobal.getInstance().getImageKnife()
|
||||
if(imageKnife != undefined) {
|
||||
imageKnife.setGifWorker(this.globalGifWorker)
|
||||
}
|
||||
}
|
||||
aboutToDisappear(){
|
||||
if(this.globalGifWorker){
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
import {ImageKnifeComponent} from '@ohos/imageknife'
|
||||
import {ImageKnifeOption} from '@ohos/imageknife'
|
||||
import {ImageKnifeGlobal} from '@ohos/imageknife'
|
||||
import {ImageKnife} from '@ohos/imageknife'
|
||||
import {ScaleType} from '@ohos/imageknife'
|
||||
import {RotateImageTransformation} from '@ohos/imageknife'
|
||||
import {GrayscaleTransformation} from '@ohos/imageknife'
|
||||
|
@ -210,7 +211,10 @@ struct TestImageKnifeOptionChangedPage3 {
|
|||
type: 'classic',
|
||||
name: 'ImageKnifeParseGIF'
|
||||
})
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife()).setGifWorker(this.globalGifWorker)
|
||||
let imageKnife:ImageKnife|undefined = ImageKnifeGlobal.getInstance().getImageKnife()
|
||||
if(imageKnife != undefined) {
|
||||
imageKnife.setGifWorker(this.globalGifWorker)
|
||||
}
|
||||
}
|
||||
aboutToDisappear(){
|
||||
if(this.globalGifWorker){
|
||||
|
|
|
@ -18,6 +18,7 @@ import {
|
|||
ImageKnifeData,
|
||||
ImageKnifeGlobal,
|
||||
ImageKnifeOption,
|
||||
ImageKnife,
|
||||
RotateImageTransformation,
|
||||
SketchFilterTransformation,
|
||||
ScaleTypeHelper,
|
||||
|
@ -100,7 +101,10 @@ struct TestImageKnifeOptionChangedPage5 {
|
|||
type: 'classic',
|
||||
name: 'ImageKnifeParseGIF'
|
||||
})
|
||||
(ImageKnifeGlobal.getInstance().getImageKnife()).setGifWorker(this.globalGifWorker)
|
||||
let imageKnife:ImageKnife|undefined = ImageKnifeGlobal.getInstance().getImageKnife()
|
||||
if(imageKnife != undefined) {
|
||||
imageKnife.setGifWorker(this.globalGifWorker)
|
||||
}
|
||||
}
|
||||
aboutToDisappear(){
|
||||
if(this.globalGifWorker){
|
||||
|
|
|
@ -154,7 +154,7 @@ struct TestPreloadPage {
|
|||
request.load('https://gd-hbimg.huaban.com/e0a25a7cab0d7c2431978726971d61720732728a315ae-57EskW_fw658')
|
||||
.setImageViewSize({ width: 300, height: 300 })
|
||||
.addListener({callback:(err:BusinessError|string, data:ImageKnifeData) => {
|
||||
if (err && err.length > 0) {
|
||||
if (err) {
|
||||
console.log('预加载网络资源gif 出现错误! err=' + err)
|
||||
} else {
|
||||
console.log('预加载网络资源gif成功! imageKnifedata=' + JSON.stringify(data))
|
||||
|
@ -186,7 +186,7 @@ struct TestPreloadPage {
|
|||
.setImageViewSize({ width: 300, height: 300 })
|
||||
.dontAnimate()
|
||||
.addListener({callback:(err:BusinessError|string, data:ImageKnifeData) => {
|
||||
if (err && err.length > 0) {
|
||||
if (err) {
|
||||
console.log('预加载网络资源gif静态 出现错误! err=' + err)
|
||||
} else {
|
||||
console.log('预加载网络资源gif静态成功! imageKnifedata=' + JSON.stringify(data))
|
||||
|
@ -305,7 +305,7 @@ struct TestPreloadPage {
|
|||
request.load($r('app.media.jpgSample'))
|
||||
.setImageViewSize({ width: 300, height: 300 })
|
||||
.addListener({callback:(err:BusinessError|string, data:ImageKnifeData) => {
|
||||
if (err && err.length > 0) {
|
||||
if (err) {
|
||||
console.log('预加载本地资源webp 出现错误! err=' + err)
|
||||
} else {
|
||||
console.log('预加载本地资源webp成功! imageKnifedata=' + JSON.stringify(data))
|
||||
|
@ -344,7 +344,7 @@ struct TestPreloadPage {
|
|||
request.load('https://hbimg.huabanimg.com/95a6d37a39aa0b70d48fa18dc7df8309e2e0e8e85571e-x4hhks_fw658/format/webp')
|
||||
.setImageViewSize({ width: 300, height: 300 })
|
||||
.addListener({callback:(err:BusinessError|string, data:ImageKnifeData) => {
|
||||
if (err && err.length > 0) {
|
||||
if (err) {
|
||||
console.log('预加载网络资源webp 出现错误! err=' + err)
|
||||
} else {
|
||||
console.log('预加载网络资源webp成功! imageKnifedata=' + JSON.stringify(data))
|
||||
|
@ -383,7 +383,7 @@ struct TestPreloadPage {
|
|||
request.load($r('app.media.bmpSample'))
|
||||
.setImageViewSize({ width: 300, height: 300 })
|
||||
.addListener({callback:(err:BusinessError|string, data:ImageKnifeData) => {
|
||||
if (err && err.length > 0) {
|
||||
if (err) {
|
||||
console.log('预加载本地资源bmp 出现错误! err=' + err)
|
||||
} else {
|
||||
console.log('预加载本地资源bmp成功! imageKnifedata=' + JSON.stringify(data))
|
||||
|
@ -422,7 +422,7 @@ struct TestPreloadPage {
|
|||
request.load('https://img-blog.csdn.net/20140514114029140')
|
||||
.setImageViewSize({ width: 300, height: 300 })
|
||||
.addListener({callback:(err:BusinessError|string, data:ImageKnifeData) => {
|
||||
if (err && err.length > 0) {
|
||||
if (err) {
|
||||
console.log('预加载网络资源bmp 出现错误! err=' + err)
|
||||
} else {
|
||||
console.log('预加载网络资源bmp成功! imageKnifedata=' + JSON.stringify(data))
|
||||
|
@ -461,7 +461,7 @@ struct TestPreloadPage {
|
|||
request.load($r('app.media.pngSample'))
|
||||
.setImageViewSize({ width: 300, height: 300 })
|
||||
.addListener({callback:(err:BusinessError|string, data:ImageKnifeData) => {
|
||||
if (err && err.length > 0) {
|
||||
if (err) {
|
||||
console.log('预加载本地资源png 出现错误! err=' + err)
|
||||
} else {
|
||||
console.log('预加载本地资源png成功! imageKnifedata=' + JSON.stringify(data))
|
||||
|
@ -500,7 +500,7 @@ struct TestPreloadPage {
|
|||
request.load('https://img-blog.csdnimg.cn/20191215043500229.png')
|
||||
.setImageViewSize({ width: 300, height: 300 })
|
||||
.addListener({callback:(err:BusinessError|string, data:ImageKnifeData) => {
|
||||
if (err && err.length > 0) {
|
||||
if (err) {
|
||||
console.log('预加载网络资源bmp 出现错误! err=' + err)
|
||||
} else {
|
||||
console.log('预加载网络资源bmp成功! imageKnifedata=' + JSON.stringify(data))
|
||||
|
@ -539,7 +539,7 @@ struct TestPreloadPage {
|
|||
request.load($r('app.media.jpgSample'))
|
||||
.setImageViewSize({ width: 300, height: 300 })
|
||||
.addListener({callback:(err:BusinessError|string, data:ImageKnifeData) => {
|
||||
if (err && err.length > 0) {
|
||||
if (err) {
|
||||
console.log('预加载本地资源jpg 出现错误! err=' + err)
|
||||
} else {
|
||||
console.log('预加载本地资源jpg成功! imageKnifedata=' + JSON.stringify(data))
|
||||
|
@ -578,7 +578,7 @@ struct TestPreloadPage {
|
|||
request.load('https://hbimg.huabanimg.com/cc6af25f8d782d3cf3122bef4e61571378271145735e9-vEVggB')
|
||||
.setImageViewSize({ width: 300, height: 300 })
|
||||
.addListener({callback:(err:BusinessError|string, data:ImageKnifeData) => {
|
||||
if (err && err.length > 0) {
|
||||
if (err) {
|
||||
console.log('预加载网络资源jpg 出现错误! err=' + err)
|
||||
} else {
|
||||
console.log('预加载网络资源jpg成功! imageknifedata=' + JSON.stringify(data))
|
||||
|
|
|
@ -36,6 +36,7 @@ import {CompressBuilder} from "../imageknife/compress/CompressBuilder"
|
|||
import { IDrawLifeCycle } from '../imageknife/interface/IDrawLifeCycle'
|
||||
import {LogUtil} from '../imageknife/utils/LogUtil'
|
||||
import worker from '@ohos.worker'
|
||||
import common from '@ohos.app.ability.common'
|
||||
|
||||
export class ImageKnife {
|
||||
static readonly SEPARATOR: string = '/'
|
||||
|
@ -55,7 +56,7 @@ export class ImageKnife {
|
|||
|
||||
|
||||
private defaultListener: AsyncCallback<ImageKnifeData> = {
|
||||
callback:(err: string, data: ImageKnifeData)=>{return false};
|
||||
callback:(err: string, data: ImageKnifeData)=>{return false}
|
||||
}; // 全局监听器
|
||||
|
||||
// gifWorker
|
||||
|
@ -81,7 +82,7 @@ export class ImageKnife {
|
|||
this.resourceFetch = new ParseResClient();
|
||||
|
||||
// 初始化本地 文件保存
|
||||
this.filesPath = (ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).filesDir as string;
|
||||
this.filesPath = (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).filesDir as string;
|
||||
|
||||
this.runningRequest = new Array();
|
||||
this.pendingRequest = new Array();
|
||||
|
@ -96,7 +97,7 @@ export class ImageKnife {
|
|||
return this.memoryCache;
|
||||
}
|
||||
|
||||
public static with(context:Record<string,Object>): ImageKnifeGlobal{
|
||||
public static with(context:Object): ImageKnifeGlobal{
|
||||
// 存入hapContext;
|
||||
let global:ImageKnifeGlobal = ImageKnifeGlobal.getInstance();
|
||||
global.setHapContext(context)
|
||||
|
|
|
@ -67,7 +67,7 @@ export class ImageKnifeGlobal {
|
|||
}
|
||||
}
|
||||
|
||||
setHapContext(hapContext:Record<string,Object>):void{
|
||||
setHapContext(hapContext:Object):void{
|
||||
this._objects.set(GlobalEnum.HAP_CONTEXT_KEY, hapContext);
|
||||
}
|
||||
|
||||
|
|
|
@ -23,6 +23,7 @@ import {RecourseProvider} from '../compress/provider/RecourseProvider'
|
|||
import { Engine } from '../compress/Engine'
|
||||
import { ImageKnife } from '../ImageKnife'
|
||||
import { ImageKnifeGlobal } from '../ImageKnifeGlobal';
|
||||
import common from '@ohos.app.ability.common';
|
||||
|
||||
export class CompressBuilder {
|
||||
private _mTargetDir: string = '';
|
||||
|
@ -30,7 +31,7 @@ export class CompressBuilder {
|
|||
private _mRenameListener: OnRenameListener = {reName:()=>{return ''}};
|
||||
private _mCompressListener: OnCompressListener={
|
||||
start:()=> {},
|
||||
onScuccess:(p: PixelMap|null|undefined, path: string)=> {},
|
||||
onSuccess:(p: PixelMap|null|undefined, path: string)=> {},
|
||||
onError:(s: string)=> {}
|
||||
};
|
||||
private _mCompressionPredicate: CompressionPredicate ={
|
||||
|
@ -113,7 +114,7 @@ export class CompressBuilder {
|
|||
|
||||
public async get():Promise<string> {
|
||||
if (!this._mTargetDir) {
|
||||
let context:Record<string,Object> = (ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>);
|
||||
let context= (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext);
|
||||
let path = context.filesDir;
|
||||
let timestamp = (new Date()).valueOf();
|
||||
this._outFilePath = path + "/compress/" + timestamp + (Math.random() * 100).toFixed(0) + ".jpg";
|
||||
|
@ -131,7 +132,7 @@ export class CompressBuilder {
|
|||
let compressListener: OnCompressListener = {
|
||||
start:()=>{
|
||||
},
|
||||
onScuccess:(p: PixelMap|undefined|null, path: string)=> {
|
||||
onSuccess:(p: PixelMap|undefined|null, path: string)=> {
|
||||
resolve(path);
|
||||
},
|
||||
onError:(s: string)=> {
|
||||
|
@ -201,14 +202,14 @@ export class CompressBuilder {
|
|||
this._mCompressListener, this._mCompressionPredicate).compress();
|
||||
} else {
|
||||
if (this._mCompressListener) {
|
||||
this._mCompressListener.onScuccess(null, element.getRecoursePath());
|
||||
this._mCompressListener.onSuccess(null, element.getRecoursePath());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private getImageCacheFile() {
|
||||
let context:Record<string,Object> = (ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>)
|
||||
let context = (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext)
|
||||
let timestamp = (new Date()).valueOf();
|
||||
this._outFilePath = context.filesDir + "/compress/" + timestamp + (Math.random() * 100).toFixed(0) + ".jpg";
|
||||
this.startCompress();
|
||||
|
|
|
@ -171,7 +171,7 @@ export class Engine {
|
|||
imageRes.createPixelMap(a)
|
||||
.then(bitmap => {
|
||||
if (this.mCompressListener) {
|
||||
this.mCompressListener.onScuccess(bitmap, path);
|
||||
this.mCompressListener.onSuccess(bitmap, path);
|
||||
}
|
||||
})
|
||||
.catch((error:BusinessError) => {
|
||||
|
|
|
@ -23,7 +23,7 @@ export interface OnCompressListener {
|
|||
/**
|
||||
* compress success
|
||||
*/
|
||||
onScuccess:(p: PixelMap|undefined|null, path: string)=>void;
|
||||
onSuccess:(p: PixelMap|undefined|null, path: string)=>void;
|
||||
/**
|
||||
* compress fail
|
||||
*/
|
||||
|
|
|
@ -20,6 +20,7 @@ import { LoadLocalFileClient } from './LoadLocalFileClient'
|
|||
import { LoadDataShareFileClient } from './LoadDataShareFileClient'
|
||||
import loadRequest from '@ohos.request';
|
||||
import { ImageKnifeGlobal } from '../ImageKnifeGlobal'
|
||||
import common from '@ohos.app.ability.common'
|
||||
|
||||
// 数据加载器
|
||||
export class DownloadClient implements IDataFetch {
|
||||
|
@ -29,8 +30,8 @@ export class DownloadClient implements IDataFetch {
|
|||
|
||||
loadData(request: RequestOption, onCompleteFunction:(img: ArrayBuffer) => void, onErrorFunction: (err: string) => void) {
|
||||
if (typeof request.loadSrc == 'string') {
|
||||
let fileDir:string = (ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).filesDir as string;
|
||||
let cacheDir:string = (ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).cacheDir as string
|
||||
let fileDir:string = (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).filesDir as string;
|
||||
let cacheDir:string = (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).cacheDir as string
|
||||
|
||||
if (request.loadSrc.startsWith(fileDir) ||
|
||||
request.loadSrc.startsWith(cacheDir)) {
|
||||
|
|
|
@ -18,12 +18,13 @@ import {ResourceTypeEts} from '../../imageknife/constants/ResourceTypeEts'
|
|||
import resourceManager from '@ohos.resourceManager';
|
||||
import { ImageKnifeGlobal } from '../ImageKnifeGlobal';
|
||||
import { BusinessError } from '@ohos.base'
|
||||
import common from '@ohos.app.ability.common';
|
||||
export class ParseResClient implements IResourceFetch<ArrayBuffer> {
|
||||
loadResource(res: Resource, onCompleteFunction:(value:ArrayBuffer)=>void | PromiseLike<ArrayBuffer>, onErrorFunction:(reason?:BusinessError|string)=>void) {
|
||||
let resId = res.id;
|
||||
let resType = res.type;
|
||||
if (resType == ResourceTypeEts.MEDIA) {
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager)
|
||||
.getMediaContent(resId)
|
||||
.then(data => {
|
||||
let arrayBuffer = this.typedArrayToBuffer(data);
|
||||
|
|
|
@ -25,6 +25,7 @@ import { ImageKnifeGlobal } from '../ImageKnifeGlobal'
|
|||
import resourceManager from '@ohos.resourceManager'
|
||||
import { BusinessError } from '@ohos.base'
|
||||
import {Size} from '../../imageknife/RequestOption'
|
||||
import common from '@ohos.app.ability.common'
|
||||
|
||||
export class MaskTransformation implements BaseTransform<PixelMap> {
|
||||
private _mResourceData:Resource|undefined = undefined;
|
||||
|
@ -90,7 +91,7 @@ export class MaskTransformation implements BaseTransform<PixelMap> {
|
|||
func.asyncTransform("MaskTransformation resource is empty", null)
|
||||
}
|
||||
}
|
||||
let context = (ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>)
|
||||
let context = (ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext)
|
||||
if(context != undefined){
|
||||
let resourceManager = context.resourceManager as resourceManager.ResourceManager
|
||||
if(resourceManager != undefined && this._mResourceData != undefined)
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
import resourceManager from '@ohos.resourceManager';
|
||||
import common from '@ohos.app.ability.common';
|
||||
import { ImageKnifeGlobal } from '../ImageKnifeGlobal';
|
||||
import {DataCallBack} from "../interface/DataCallBack"
|
||||
|
||||
|
@ -25,7 +26,7 @@ export namespace ColorUtils {
|
|||
export function parseColor(c: string, callback: DataCallBack<string>) {
|
||||
|
||||
let reColor = 'sys.color.' + c;
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as Record<string,Object>).resourceManager as resourceManager.ResourceManager).getString($r(reColor)
|
||||
((ImageKnifeGlobal.getInstance().getHapContext() as common.UIAbilityContext).resourceManager as resourceManager.ResourceManager).getString($r(reColor)
|
||||
.id, (err, color) => {
|
||||
if (!err) {
|
||||
let cos = JSON.stringify(color);
|
||||
|
|
|
@ -306,7 +306,7 @@ export namespace fastBlur {
|
|||
}
|
||||
await bitmap.writeBufferToPixels(bufferNewData);
|
||||
if (func != undefined) {
|
||||
func?s.asyncTransform("success", bitmap);
|
||||
func?.asyncTransform("success", bitmap);
|
||||
}
|
||||
}
|
||||
export async function blurGPU(bitmap: PixelMap, radius: number, canReuseInBitmap: boolean, func?: AsyncTransform<PixelMap>) {
|
||||
|
|
|
@ -113,11 +113,11 @@ export class GIFParseImpl implements IParseGif {
|
|||
private useWorkerParse(worker:worker.ThreadWorker, buffer: ArrayBuffer, callback: (data?:GIFFrame[], err?:BusinessError|string) => void) {
|
||||
|
||||
worker.onerror = (err:ErrorEvent)=>{
|
||||
callback(undefined, err)
|
||||
callback(undefined, err.message)
|
||||
}
|
||||
|
||||
worker.onmessageerror = (event: MessageEvents) => {
|
||||
callback(undefined, event)
|
||||
callback(undefined, event.type)
|
||||
}
|
||||
|
||||
worker.onexit = ()=> {
|
||||
|
|
Loading…
Reference in New Issue