iOS・Android・モバイル開発

dp px変換倍率を明示して計算

Androidの密度、iOSの画面倍率、または固定の色値を指定します。

dp px変換

入力

結果

32 px

計算式: 16 dp × 2 ÷ 1 = 32 px

値はブラウザー内で計算され、送信されません。

設定

結果は最新です。

デザインの16dpが端末のスクリーンショットでは32pxに見えるとき、dp px変換ならxhdpiの2倍という前提を結果と一緒に確認できます。iOSのポイントは別の倍率で扱います。

px dp変換の答えは対象端末のdensity次第です。sp px変換では文字倍率も必要で、Android 14以降の実際の文字寸法は線形式と異なる場合があります。

dp px変換を使う理由

数値だけでなく、その根拠となる画面設定も示します。

ptとdpを混同しない

dp px変換ではiOSの44ptを@2xで88px、Androidの16dpをxhdpiで32pxと別々に計算します。異なるOSの論理単位を直接同一視しません。

iOSのptとAndroidのdpが異なる倍率でpxに変わる図。

spは概算と明記

文字倍率を入力できてもAndroid 14以降の非線形な文字拡大はブラウザーだけでは再現できません。spを含む結果は線形の概算と示します。

dpの確定計算とspの概算を並べた図。

素材サイズを決める前の確認

01

対象OSを切り替える

AndroidとiOSの入力値は別々に保持されます。16dpをそのまま16ptと解釈しないためです。

  • 初期例はAndroidが16dpとxhdpi、iOSが44ptと@2xです。
02

実機の倍率を指定する

Androidは密度プリセットか実際のdensityを、iOSは画面のscaleを入力します。変更すると古い結果のコピーは無効になります。

  • 文字のspは実機のTypedValueで最終確認してください。
03

式を見て結果を使う

入力単位、倍率、出力単位を式で確認できます。自動変換を切ればボタンかCtrl/Cmd + Enterで実行します。

  • 例とクリアは変更件数を確認して適用し、取り消しもできます。

単位換算とSwift用コード

レイアウトの往復換算

dpからpx、pxからdp、iOS ptからpxと逆方向に対応。任意倍率なら標準密度以外も扱えます。

文字サイズの線形見積もり

spからpxまたはdpへの結果にはdensityとfontScaleを示し、Android 14以降の非線形差を警告します。

色から二種類のSwiftコード

HEXをUIColorとSwiftUI Colorの数値初期化式にし、alphaも保持。数値のUIColor/Color式を入力してHEXへ戻せます。 UIColor SwiftUI Color変換では固定のRGB数値だけを扱います。

単位と色の適用範囲

端末設定は自動推定しない
閲覧中のブラウザーから、開発対象アプリのDisplayMetrics.densityやiOS画面のscaleは確定できません。
spの実寸は端末で確認
Android 14以降の文字拡大は非線形です。TypedValue.applyDimensionまたはderiveDimensionを利用してください。
iOSのptだけを扱う
印刷のptやCSSのpt、Android XMLのptとは定義が異なります。この画面ではiOSレイアウトポイントに限定します。
動的カラーは変換しない
UIColor.labelやColorのアセット名は環境で変化します。8桁HEXはRRGGBBAAとしてのみ解釈します。

dp px変換のよくある質問

Androidアプリの素材は何dp・pxで用意しますか?

レイアウトにはdp、画像の書き出しには対象密度のpxが必要です。密度を入力してdp px変換の結果を確認してください。

素材はどんなサイズで用意したらよいですか?

まずdpでレイアウト寸法を決め、必要な密度ごとにpxを算出します。単一の画像pxを全端末の正解とはしません。

1440×2560pxの素材を用意すればよいですか?

画面全体の解像度だけでは素材倍率は決まりません。端末のdensityや用途を確認し、対象dpからpxを計算します。

px、dip、dp、spの違いは何ですか?

pxは画面の物理ピクセル、dipはdpと同じ密度非依存単位、spは文字設定の影響も受ける単位です。

hdpiやldpiごとにXMLを指定するのが一般的ですか?

画像リソースは密度別に用意することがあります。レイアウト数値はdpで指定し、実機の密度に応じてpxへ換算されます。

答えが見つかりませんか?

対象端末でdp px変換を試す

dp px変換に実際の密度や表示倍率を入れ、式を確認してからデザインや実装に反映してください。