2011-03-01 86 views
1

我想知道如何從另一個圖像的分辨率中確定一個圖像的分辨率是多少百分比。所以我有$ resolution1 ='480x210'和$ resolution2 ='720x480'。我想從$ resolution2中找出多少$ resolution1表示的百分比。我試圖做一個名片打印預覽,並希望向客戶展示他的上傳圖片與所需尺寸相比有多小。所以我得到了一個空白的正確大小的div,我將渲染上傳圖像的縮略圖,但縮略圖的大小是X%(這是我需要知道的),以便我可以表示卡上有多少空間他的形象會如何。PHP計算圖像分辨率超過另一個圖像分辨率的百分比

我使用PHP和imagemagick二進制文件與exec()。 任何想法?

謝謝。

+0

我愛不可讀的問題由xD – dynamic 2011-03-01 00:39:17

+0

你是不是想縮放原始圖像上/下,以適應您的目標區域內,而不去(在這種情況下,150 720x315%)之外?或者你想知道原始圖像佔用了多少區域(在本例中爲29.17%)? – 2011-03-01 00:40:03

+0

似乎有些人得到了它。或者有東西。 – 2011-03-01 01:41:10

回答

1

Soimething像這應該工作,如果沒有它會幫助你接近你的目標:

//Get the x/y of both resolutions 
list($ax,$ay) = explode("x",'480x210'); 
list($bx,$by) = explode("x",'720x480'); 

//Get the difference of both resolutions 
$calc_x = ($ax/$ay); 
$calc_y = ($bx/$by); 

//Calculate the increase 
$increase = ($calc_x/$calc_y) * 100; 

我不是最好與數學,但我認爲你這是怎麼計算的增加,結果以上是152.38095238095這是152.38%增加

+0

修改計算一下,但我得到了我所需要的,謝謝。 – 2011-03-01 01:40:14

0

$ resolution1width/$ resolution2width = $ returnwidthpercent;

$ resolution1height/$ resolution2height = $ returnhieghtpercent;

DIV寬度=渲染圖像寬度+(渲染圖像寬度* $ returnwidthpercent);

和高度相同。我認爲這應該工作。