写点什么

OpenHarmony 像素单位

作者:坚果
  • 2022 年 8 月 07 日
  • 本文字数:1337 字

    阅读完需:约 4 分钟

OpenHarmony 像素单位

ArkUI 开发框架提供了 4 种像素单位供开发者使用,分别是: pxvpfplpx ,框架采用 vp 为基准数据单位。它们之间的区别如下表所示:



ArkUI 开发框架也提供了全局方法把这些不同的尺寸单位相互转换,全局方法如下所示:


declare function vp2px(value: number): number;declare function px2vp(value: number): number;declare function fp2px(value: number): number;declare function px2fp(value: number): number;declare function lpx2px(value: number): number;declare function px2lpx(value: number): number;
复制代码

像素单位转换

提供其他单位与 px 单位互相转换的方法。



最后我们通过代码来体验一下


/* * Copyright (c) 2021 JianGuo 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. */@Entry@Componentstruct Example {  build() {    Column() {
Column() { Text("width(220)") .width(220).height(40).backgroundColor(0xF9CF93) .textAlign(TextAlign.Center).fontColor(Color.White).fontSize('12vp') }.margin(5) Column() { Text("width('220px')") .width('220px').height(40).backgroundColor(0xF9CF93) .textAlign(TextAlign.Center).fontColor(Color.White) }.margin(5) Column() { Text("width('220vp')") .width('220vp').height(40).backgroundColor(0xF9CF93) .textAlign(TextAlign.Center).fontColor(Color.White).fontSize('12vp') }.margin(5) Column() { Text("width('220lpx') designWidth:720") .width('220lpx').height(40).backgroundColor(0xF9CF93) .textAlign(TextAlign.Center).fontColor(Color.White).fontSize('12vp') }.margin(5) Column() { Text("width(vp2px(220) + 'px')") .width(vp2px(220) + 'px').height(40).backgroundColor(0xF9CF93) .textAlign(TextAlign.Center).fontColor(Color.White).fontSize('12vp') }.margin(5) Column() { Text("fontSize('12fp')") .width(220).height(40).backgroundColor(0xF9CF93) .textAlign(TextAlign.Center).fontColor(Color.White).fontSize('12fp') }.margin(5) }.width('100%').height("100%").justifyContent(FlexAlign.Center) }
}
复制代码


参考文档

[像素单位](

发布于: 刚刚阅读数: 5
用户头像

坚果

关注

此间若无火炬,我便是唯一的光 2020.10.25 加入

公众号:“大前端之旅”,华为云享专家,InfoQ签约作者,51CTO博客首席体验官,专注于大前端技术的分享,包括Flutter,小程序,安卓,VUE,JavaScript。

评论

发布
暂无评论
OpenHarmony像素单位_开源_坚果_InfoQ写作社区