ConFoo 2025

imageresolution

(PHP 7 >= 7.2.0, PHP 8)

imageresolutionGet or set the resolution of the image

Beschreibung

imageresolution(GdImage $image, ?int $resolution_x = null, ?int $resolution_y = null): array|bool

imageresolution() allows to set and get the resolution of an image in DPI (dots per inch). If the optional parameters are null, the current resolution is returned as an indexed array. If only resolution_x is not null, the horizontal and vertical resolution are set to this value. If none of the optional parameters are null, the horizontal and vertical resolution are set to these values, respectively.

The resolution is only used as meta information when images are read from and written to formats supporting this kind of information (curently PNG and JPEG). It does not affect any drawing operations. The default resolution for new images is 96 DPI.

Parameter-Liste

image

Ein GdImage-Objekt, das von einer der Funktionen zur Bilderzeugung, z. B. imagecreatetruecolor(), zurückgegeben wurde.

resolution_x

The horizontal resolution in DPI.

resolution_y

The vertical resolution in DPI.

Rückgabewerte

When used as getter, it returns an indexed array of the horizontal and vertical resolution on success, Bei einem Fehler wird false zurückgegeben.. When used as setter, it returns true on success, Bei einem Fehler wird false zurückgegeben..

Changelog

Version Beschreibung
8.0.0 resolution_x and resolution_y are now nullable.

Beispiele

Beispiel #1 Setting and getting the resolution of an image

<?php
$im
= imagecreatetruecolor(100, 100);
imageresolution($im, 200);
print_r(imageresolution($im));
imageresolution($im, 300, 72);
print_r(imageresolution($im));
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Array
(
    [0] => 200
    [1] => 200
)
Array
(
    [0] => 300
    [1] => 72
)
add a note

User Contributed Notes 1 note

up
1
fernando dot fonseca at afteryou dot pt
3 years ago
It should be clear that the set version of the function doesn't change the image it self, just the resource in memory, which probably is fine if you didn't save the image yet. If your use case is for an image that is already on disk, image you should always do something like:

imageresolution($img, 300, 300);
imagepng($img, $filname, $quality);
To Top