You can in fact convert pixels to CM or to whatever measurement you want if you know the DPI and current resolution of the image. This will of course give you the real life print size of the image and not the actual on screen size of the image.
This function seems to have been created for such a purpose. It is for this reason the creator of the function passes the DPI and resolution to his function.
imagesx
(PHP 4, PHP 5)
imagesx — Obtem a largura da imagem
Descrição
int imagesx
( resource $image
)
Retorna a largura do dado resource image .
Parâmetros
- image
-
An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().
Valor Retornado
Retorna a largura da image ou FALSE em erro.
Exemplos
Exemplo #1 Usando imagesx()
<?php
// cria uma imagem de 300*200
$img = imagecreatetruecolor(300, 200);
echo imagesx($img); // 300
?>
Veja Também
- imagecreatetruecolor() - Cria uma nova imagem true color
- getimagesize() - Obtém o tamanho de uma imagem
- imagesy() - Obtém a altura da imagem
imagesx
kris
22-Sep-2004 10:49
22-Sep-2004 10:49
anC
27-Aug-2004 04:38
27-Aug-2004 04:38
You can't convert pixels into centimeters or something else, atleast without knowing the resolution and the size of your screen and the viewrange of it. For example: The pixels on monitor that's resolution is 1024*768 and size is 17' the size of a pixel is smaller than on the monitor that's resolution is 1024*768 too but size is 21'.
leonardo AT saochico DOT com
21-Nov-2003 01:24
21-Nov-2003 01:24
This function convert image size of Pixel to Centimeter
<?
#$imagem - source of image
#$dpi - resolution to convert E.g.: 72dpi or 300dpi
function px2cm($image, $dpi) {
#Create a new image from file or URL
$img = ImageCreateFromJpeg($image);
#Get image width / height
$x = ImageSX($img);
$y = ImageSY($img);
#Convert to centimeter
$h = $x * 2.54 / $dpi;
$l = $y * 2.54 / $dpi;
#Format a number with grouped thousands
$h = number_format($h, 2, ',', ' ');
$l = number_format($l, 2, ',', ' ');
#add size unit
$px2cm[] = $h."cm";
$px2cm[] = $l."cm";
#return array w values
#$px2cm[0] = X
#$px2cm[1] = Y
return $px2cm;
}
$image = "C:\\inetpub\\wwwroot\\lab\\trata_img\\l0gik.jpg";
$dpi = 300;
$result = px2cm($image, $dpi);
print ($result[0]." x ".$result[1]);
?>
