0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenHarmony像素單位

ArkUI詳解 ? 來源:鴻蒙實(shí)驗(yàn)室 ? 作者:鴻蒙實(shí)驗(yàn)室 ? 2022-08-31 08:23 ? 次閱讀

OpenHarmony像素單位

ArkUI開發(fā)框架提供了 4 種像素單位供開發(fā)者使用,分別是: px 、 vpfplpx ,框架采用vp為基準(zhǔn)數(shù)據(jù)單位。它們之間的區(qū)別如下表所示:

名稱 描述
px 屏幕物理像素單位。
vp 屏幕密度相關(guān)像素單位,根據(jù)屏幕像素密度轉(zhuǎn)換為屏幕物理像素。
fp 字體像素,與vp類似適用于屏幕密度變化,隨系統(tǒng)字體大小設(shè)置變化。
lpx 視窗邏輯像素單位,lpx單位為實(shí)際屏幕寬度與邏輯寬度(在 config.json 中配置的 designWidth )的比值,如配置 designWdith 為 720 時(shí),在實(shí)際寬度為 1440 物理像素的屏幕上, 1px 為 2px 。

ArkUI開發(fā)框架也提供了全局方法把這些不同的尺寸單位相互轉(zhuǎn)換,全局方法如下所示:

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

;

像素單位轉(zhuǎn)換

提供其他單位與px單位互相轉(zhuǎn)換的方法。

接口 描述
vp2px(value : number) : number 將vp單位的數(shù)值轉(zhuǎn)換為以px為單位的數(shù)值。
px2vp(value : number) : number 將px單位的數(shù)值轉(zhuǎn)換為以vp為單位的數(shù)值。
fp2px(value : number) : number 將fp單位的數(shù)值轉(zhuǎn)換為以px為單位的數(shù)值。
px2fp(value : number) : number 將px單位的數(shù)值轉(zhuǎn)換為以fp為單位的數(shù)值。
lpx2px(value : number) : number 將lpx單位的數(shù)值轉(zhuǎn)換為以px為單位的數(shù)值。
px2lpx(value : number) : number 將px單位的數(shù)值轉(zhuǎn)換為以lpx為單位的數(shù)值。

最后我們通過代碼來體驗(yàn)一下

/*

* 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

@

Component

struct

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

)

}

?

}

?

image-20220805133455311

參考文檔

像素單位

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 像素
    +關(guān)注

    關(guān)注

    1

    文章

    205

    瀏覽量

    18608
  • OpenHarmony
    +關(guān)注

    關(guān)注

    25

    文章

    3731

    瀏覽量

    16433
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    OpenHarmony標(biāo)準(zhǔn)系統(tǒng)】修改屏幕 DPI(像素密度)

    OpenHarmony標(biāo)準(zhǔn)系統(tǒng)】修改屏幕 DPI(像素密度)
    的頭像 發(fā)表于 05-16 10:21 ?2971次閱讀
    【<b class='flag-5'>OpenHarmony</b>標(biāo)準(zhǔn)系統(tǒng)】修改屏幕 DPI(<b class='flag-5'>像素</b>密度)

    鴻蒙基礎(chǔ)開發(fā)實(shí)戰(zhàn)-(ArkTS)像素轉(zhuǎn)換

    像素單位轉(zhuǎn)換API的使用 主要功能包括: 展示了不同像素單位的使用。 展示了像素單位轉(zhuǎn)換相關(guān)AP
    發(fā)表于 01-11 16:53

    開源的 OpenHarmony 是每個(gè)人的 OpenHarmony

    OpenHarmony”)。2020 年 12 月,博泰、華為、京東、潤(rùn)和、億咖通、中科院軟件所、中軟國(guó)際等七家單位(按各單位簡(jiǎn)稱首字母排序)在開放原子開源基金會(huì)的組織下成立了 OpenHa
    發(fā)表于 06-06 19:54

    openharmony開源項(xiàng)目

    、華為、京東、潤(rùn)和、億咖通、中科院軟件所、中軟國(guó)際等七家單位(按各單位簡(jiǎn)稱首字母排序)在開放原子開源基金會(huì)的組織下成立了 OpenHarmony 項(xiàng)目群工
    的頭像 發(fā)表于 06-21 19:17 ?1939次閱讀

    openharmony發(fā)起單位

    openharmony發(fā)起單位 openharmony發(fā)起單位,6月6日開放原子發(fā)布了《開源的 OpenHarmony 是每個(gè)人的
    的頭像 發(fā)表于 06-21 19:41 ?1464次閱讀

    OpenHarmony生態(tài)領(lǐng)航貢獻(xiàn)單位公布

    2022開放原子全球開源峰會(huì)OpenAtom OpenHarmony分論壇在北京成功舉辦。本次論壇以“萬物互聯(lián),使能千行百業(yè)”為主題,OpenHarmony共建單位、生態(tài)伙伴匯聚一堂,共同展現(xiàn)了
    的頭像 發(fā)表于 07-30 11:08 ?1670次閱讀

    OpenHarmony開發(fā)者大會(huì)2023生態(tài)示范單位OpenHarmony生態(tài)委員會(huì)成員單位致謝授牌:方案評(píng)定辦法公示

    ”)開發(fā)者大會(huì)2023即將舉辦。會(huì)上,OpenHarmony項(xiàng)目群工作委員會(huì)將授牌致謝生態(tài)示范單位OpenHarmony生態(tài)委員會(huì)成員單位。 2023年“
    的頭像 發(fā)表于 04-07 02:35 ?1752次閱讀

    OpenHarmony開發(fā)者大會(huì)2023杰出貢獻(xiàn)單位致謝授牌評(píng)選規(guī)則

    ”)開發(fā)者大會(huì)2023即將舉辦。會(huì)上,OpenHarmony 項(xiàng)目群工作委員會(huì)將授牌致謝生態(tài)開源貢獻(xiàn)及卓越貢獻(xiàn)單位。2023年“OpenHarmony生態(tài)開源貢獻(xiàn)單位”、“
    的頭像 發(fā)表于 04-07 02:35 ?916次閱讀

    OpenHarmony開發(fā)者大會(huì)舉辦,OpenHarmony項(xiàng)目群授牌30家捐贈(zèng)單位及個(gè)人

    鴻、鴻湖萬聯(lián)、優(yōu)博終端、奧思維等單位共同合作支持。 OpenHarmony自開源以來,吸引了130多家伙伴,超過5100名開發(fā)者參與共
    的頭像 發(fā)表于 04-20 05:10 ?584次閱讀
    <b class='flag-5'>OpenHarmony</b>開發(fā)者大會(huì)舉辦,<b class='flag-5'>OpenHarmony</b>項(xiàng)目群授牌30家捐贈(zèng)<b class='flag-5'>單位</b>及個(gè)人

    OpenHarmony開發(fā)者大會(huì)2023召開,致謝六家百人代碼貢獻(xiàn)單位

    OpenHarmony(簡(jiǎn)稱“OpenHarmony”)項(xiàng)目群工作委員會(huì)主辦,華為、開鴻智谷、萬里紅、深開鴻、誠(chéng)邁科技、九聯(lián)科技、潤(rùn)開鴻、鴻湖萬聯(lián)、優(yōu)博終端、奧思維等單位共同合作支持。大會(huì)現(xiàn)場(chǎng),來自開放原子開源基金會(huì)和
    的頭像 發(fā)表于 04-26 14:51 ?666次閱讀

    九聯(lián)科技獲得授牌“OpenHarmony安全委員會(huì)委員單位

    ,并向全行業(yè)發(fā)起開源生態(tài)共建的號(hào)召,共同推動(dòng)開源生態(tài)繁榮發(fā)展。 ? 九聯(lián)科技作為“OpenHarmony百人代碼貢獻(xiàn)單位”、“核心共建單位”、“A類捐贈(zèng)人”、“OpenHarmony項(xiàng)
    的頭像 發(fā)表于 06-14 10:29 ?834次閱讀

    億晟科技被評(píng)為OpenHarmony生態(tài)開發(fā)板貢獻(xiàn)單位

    近日,深圳市億晟科技有限公司被評(píng)為“OpenHarmony生態(tài)開發(fā)板貢獻(xiàn)單位”,并被OpenHarmony項(xiàng)目群工作委員會(huì)授予“OpenHarmony生態(tài)開發(fā)板貢獻(xiàn)
    的頭像 發(fā)表于 05-09 09:53 ?1119次閱讀
    億晟科技被評(píng)為<b class='flag-5'>OpenHarmony</b>生態(tài)開發(fā)板貢獻(xiàn)<b class='flag-5'>單位</b>

    潤(rùn)和軟件受聘擔(dān)任OpenHarmony安全委員會(huì)副主席單位

    在近日舉行的2023開放原子全球開源峰會(huì)上,江蘇潤(rùn)和軟件股份有限公司(以下簡(jiǎn)稱潤(rùn)和軟件)受聘擔(dān)任OpenHarmony安全委員會(huì)副主席單位。 潤(rùn)和軟件接受OpenHarmony安全委員會(huì)副主席
    的頭像 發(fā)表于 06-29 16:45 ?509次閱讀
    潤(rùn)和軟件受聘擔(dān)任<b class='flag-5'>OpenHarmony</b>安全委員會(huì)副主席<b class='flag-5'>單位</b>

    誠(chéng)邁科技獲評(píng)OpenHarmony社區(qū)優(yōu)秀貢獻(xiàn)單位

    1月23日,OpenHarmony社區(qū)年會(huì)在京舉行,誠(chéng)邁科技憑借出色的技術(shù)創(chuàng)新能力以及在生態(tài)建設(shè)方面的突出貢獻(xiàn),獲評(píng)“OpenHarmony社區(qū)優(yōu)秀貢獻(xiàn)單位”。誠(chéng)邁科技高級(jí)副總裁陳璟出席活動(dòng)并發(fā)表演講。
    的頭像 發(fā)表于 01-26 10:04 ?430次閱讀

    HarmonyOS開發(fā)案例:【卡片像素轉(zhuǎn)換】

    基于像素單位,展示了像素單位的基本知識(shí)與像素轉(zhuǎn)換API的使用。
    的頭像 發(fā)表于 05-07 10:45 ?309次閱讀
    HarmonyOS開發(fā)案例:【卡片<b class='flag-5'>像素</b>轉(zhuǎn)換】