px轉pt的正確演算法

2021-09-27 03:01:02 字數 767 閱讀 3768

首先,pt是乙個物理常量,是現實世界的度量單位,有確定的數值,1pt = 1/72英呎

而畫素是乙個變數,基於顯示裝置的引數不同,乙個畫素的大小也不盡相同。而畫素大小的計算方式就是dpi(dots per inch),當然,在現在這個討論的情景下,其實dpi就是ppi(pixels per inch)。一般我們聊顯示器的dpi的時候,我們說的就是ppi。

pt = px * 0.75
其實就是小學數學。已知下面的條件

1英吋=72 pt

1英吋=dpi px

求1px=多少pt?

上面公式的由來正是假設dpi是96:

pt = px * 72 / dpi

pt = px * 72 / 96

pt = px * 0.75

如果源指定了 dpi(dots per inch),視作 ppi(pixels per inch),將px單位的寬高換算為pt單位。[1]

如果源沒有 dpi 元資料,則預設為 96 dpi [1]

最終**是

from pil import image

image = image.open('in.png')

dpi = image.info.get('dpi', 96.0)

ratio = 72.0 / float(dpi)

width_by_pt = image.width * ratio

px和pt的區別

這是乙個遠古的問題,貌似很弱的問題,卻被無數人混淆的問題。或許,這問題提出來,本身就是問題。先搞清基本概念 px就是表示pixel,畫素,是螢幕上顯示資料的最基本的點 而pt就是point,是印刷行業常用單位,等於1 72英吋。這樣很明白,px是乙個點,它不是自然界的長度單位,誰能說出乙個 點 有多...

pt和px的區別

pt 全稱為 point,但中文不叫 點 查金山詞霸可以看到,確切的說法是乙個專用的印刷單位 磅 大小為 1 72 英吋。所以它是乙個自然界標準的長度單位,也稱為 絕對長度 px 全稱為 pixel,是乙個點,它不是自然界的長度單位,誰能說出乙個 點 有多長多大麼?可以畫的很小,也可以很大。如果點很...

font size裡的pt與px的區別

在看css中遇到的小問題 px和pt的區別?其實就是英文縮寫 px pixel 畫素,是最基本的點 pt point 是印刷行業常用單位,1 磅等於 1 72 英吋,或大約等於 1 厘公尺的 1 28。px是乙個點,我們無法描述一點的大小。於是引入了畫素這個概念。點很小,那畫面就清晰,我們稱它為 解...