PHPCon Poland 2024

Introdução

O PHP não está limitado a criar apenas saída em HTML. Ele também pode ser usado para criar e manipular arquivos de imagem em uma diversidade de formatos, incluindo GIF, PNG, JPEG, WBMP, and XPM. E ainda mais convenientemente, o PHP pode enviar fluxos de imagem diretamente para o navegador. É necessário compilar o PHP com a biblioteca GD de funções de imagens para que isto funcione. GD e o PHP podem também requerer outras bibliotecas, dependendo de quais formatos de imagens serão trabalhados.

Pode-se usar as funções de imagem no PHP para obter o tamanho de imagens JPEG, GIF, PNG, SWF, TIFF e JPEG2000.

Com a extensão exif, pode-se trabalhar com informações armazenadas nos cabeçalhos de imagens JPEG e TIFF. Desta forma, pode-se ler metadados gerados por câmeras digitais. As funções exif não requerem a biblioteca GD.

Nota: Leia a seção de requerimentos sobre como expandir a capacidade de leitura, escrita e modificação de imagens. Para ler metadados de fotografias tiradas de uma câmera digital, é necessária a extensão exif mencionada acima.

Nota: A função getimagesize() não requqer a extensão GD.

Cuidado

Enquanto que a versão da biblioteca GD fornecida com o PHP usa o gerenciador de memória Zend para alocar memória, as versões de sistema não o fazem, de forma que memory_limit não se aplica.

GD suporta uma diversidade de formatos. Veja abaixo uma lista de formatos suportados por GD e notas sobre suas disponibilidades incluindo suporte a leitura/escrita.

Formatos suportados por GD
Formato Suporte a leitura Suporte a escrita Notas
JPEG true true  
PNG true true  
GIF true true  
XBM true true  
XPM true false  
WBMP true true  
WebP true true  
BMP true true Disponível a partir do PHP 7.2.0

Embora a maioria dos formatos esteja disponível para leitura e escrita na tabela acima, isto não significa que o PHP foi compilado com suporte a eles. Para descobrir quais formatos estavam disponíveis para o GD durante a compilação, use a função gd_info(). Para mais informação sobre compilação de suporte a um ou mais formantos, consulte o capítulo sobre instalação.

add a note

User Contributed Notes 1 note

up
-24
gamesparamundo123 at gmail dot com
4 years ago
The EXIF extension has been updated to support a much larger range of formats. This means that their format specific tags are now properly translated when parsing images with the exif_read_data() function. The following new formats are now supported:

Samsung
DJI
Panasonic
Sony
Pentax
Minolta
Sigma/Foveon
AGFA
Kyocera
Ricoh
Epson
The EXIF functions exif_read_data() and exif_thumbnail() now support passing streams as their first argument.
To Top