/*
* Copyright (C) 2025 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { Router } from '@ohos.arkui.UIContext';
const router = new Router();
@Entry
@Component
struct Index {
build() {
Column() {
Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center}) {
this.textComponent('Index');
this.buttonComponent('跳转到图片解码页面', 'pages/DecodingPixelMap');
this.buttonComponent('跳转到多图解码页面', 'pages/DecodingPicture');
this.buttonComponent('跳转到区域解码和下采样解码页面', 'pages/RegionDownsample');
this.buttonComponent('跳转到内存申请页面', 'pages/AllocateMemory');
this.buttonComponent('跳转到图片编码页面', 'pages/EncodingPixelMap');
this.buttonComponent('跳转到多图编码页面', 'pages/EncodingPicture');
this.buttonComponent('跳转到图片Exif信息编辑页面', 'pages/EditExif');
this.buttonComponent('跳转到图片接收页面', 'pages/ImageReceiver');
this.buttonComponent('跳转到转码页面', 'pages/Transcoding');
}.size({ width: '100%', height: '100%' })
}
.width('100%')
.height('100%')
.justifyContent(FlexAlign.Center)
.alignItems(HorizontalAlign.Center)
}
@Builder
textComponent(name: string) {
Text(name)
.textAlign(TextAlign.Center)
.margin(10)
.fontSize($r('app.float.index_text_font_size'))
.size({ width: '100%', height: $r('app.float.index_button_height_size') })
}
@Builder
buttonComponent(name: string, dstUri: string) {
Button(name)
.width('50%')
.margin(10)
.onClick((e: ClickEvent) => {
router.pushUrl({ url: dstUri });
})
}
}