Alterar o DPI de imagens

1,213 views
Skip to first unread message

Diogo Roldão

unread,
Nov 30, 2009, 2:43:43 PM11/30/09
to LISTA PHP
Falae lista!

Estou criando uma aplicacao que qdo o usuario manda um imagem para o
sistema, ele pega essa imagem e tem que reduzir ou aumentar o DPI dela
para sempre 120 DPI.

Estou caçando isso no google desde sexta e nada de achar algo efetivo.
Estou usando CI e a propriam image_lib do CI gera todas as imagens
sempre em 96 DPI independente do que eu mande ele fazer.

Segue o codigo que estou tentando rodar: http://pastebin.com/m664991a3
Segue a funcao getDpi que estou usando: http://pastebin.com/m74435711

Agradeço pela atencao de todos!

att,
Diogo Roldão

Diogo Roldão

unread,
Dec 8, 2009, 3:31:05 PM12/8/09
to LISTA PHP
ninguem sabe?

On 30 nov, 17:43, Diogo Roldão <diogorol...@gmail.com> wrote:
> Falae lista!
>
> Estou criando uma aplicacao que qdo o usuario manda um imagem para o
> sistema, ele pega essa imagem e tem que reduzir ou aumentar oDPIdela
> para sempre 120DPI.
>
> Estou caçando isso no google desde sexta e nada de achar algo efetivo.
> Estou usando CI e a propriam image_lib do CI gera todas as imagens
> sempre em 96DPIindependente do que eu mande ele fazer.

Rodrigo Corrêa e Castro

unread,
Dec 8, 2009, 3:50:38 PM12/8/09
to list...@googlegroups.com
Veja se é isso: http://code.google.com/p/php-dpi/

senão por aqui tem uma boa opção http://www.google.com.br/search?q=php+dpi&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:pt-BR:official&client=firefox-a


Rodrigo Corrêa e Castro
Web Developer

MSN: rcc...@hotmail.com
Twitter: http://twitter.com/rccjjf
Gtalk: rodrigocor...@gmail.com
Skype: rodrigocorreaecastro

24 9839-2129
24 3421-1956


"ECONOMIZE PAPEL - PENSE ANTES DE IMPRIMIR!"


2009/12/8 Diogo Roldão <diogo...@gmail.com>

Diogo Roldão

unread,
Dec 8, 2009, 3:53:24 PM12/8/09
to list...@googlegroups.com
achei algo proximo com o ImageMagick (http://www.imagemagick.org/discourse-server/viewtopic.php?f=1&t=15047)

mas até o momento ainda nao sei nem como usa e nem como instala isso...

e a busca continua...



2009/12/8 Rodrigo Corrêa e Castro <rodrigocor...@gmail.com>

Diogo Roldão

unread,
Dec 8, 2009, 3:56:03 PM12/8/09
to list...@googlegroups.com
orra mano, me mandar uma pesquisa do google "php pdi" ... vc ta de sacanagem né? devo ter caçado isso só hoje umas 15x.

A outra solucao só serve para descobrir o DPI da imagem, eu ja tinha ela aqui, vlw!



2009/12/8 Rodrigo Corrêa e Castro <rodrigocor...@gmail.com>

Antonio Cezar, olocutor.com

unread,
Dec 8, 2009, 6:49:23 PM12/8/09
to list...@googlegroups.com
Até não acho sacanagem, porque já fiquei horas e horas procurando por
alguma coisa no Google e, quando já estava quase desistindo, com uma
alteração qualquer nas palavras de busca, encontrei o que queria.


Antonio Cezar, olocutor.com



http://www.olocutor.com/


-------- Mensagem original --------
Assunto: [ PHP - Google ] Re: Alterar o DPI de imagens
De: Diogo Roldão <diogo...@gmail.com>
Para: list...@googlegroups.com
Data: 8/12/2009 18:56
> orra mano, me mandar uma pesquisa do google "php pdi" ... vc ta de
> sacanagem né? devo ter caçado isso só hoje umas 15x.
>
> A outra solucao só serve para descobrir o DPI da imagem, eu ja tinha
> ela aqui, vlw!
>
>
>
> 2009/12/8 Rodrigo Corrêa e Castro <rodrigocor...@gmail.com
> <mailto:rodrigocor...@gmail.com>>
> MSN: rcc...@hotmail.com <mailto:rcc...@hotmail.com>
> <mailto:rodrigocor...@gmail.com>
> Skype: rodrigocorreaecastro
>
> 24 9839-2129
> 24 3421-1956
>
>
> "ECONOMIZE PAPEL - PENSE ANTES DE IMPRIMIR!"
>
>
> 2009/12/8 Diogo Roldão <diogo...@gmail.com
> <mailto:diogo...@gmail.com>>
>
>
> ninguem sabe?
>
> On 30 nov, 17:43, Diogo Roldão <diogorol...@gmail.com

Andreus Timm

unread,
Dec 8, 2009, 3:39:31 PM12/8/09
to list...@googlegroups.com
Nunca precisei alterar o DPI de uma imagem, mas seria interessante....sempre tem a primeira vez...
Da uma olhada na classe GD sobre dpi...deve ter algo lá...só que nunca precisei usar..

2009/12/8 Diogo Roldão <diogo...@gmail.com>



--
Andreus Timm
andreu...@gmail.com
(51) 8435-4850
(51) 9243-1668

Gihovani Demétrio

unread,
Dec 8, 2009, 4:04:37 PM12/8/09
to list...@googlegroups.com
amigo no site php.net tem uma funcao pra mudar de 72 para 300 dpi talvez ajude:
não testei mais ai vai...

Link: http://php.net/manual/en/function.imagesx.php

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]);
?>


2009/12/8 Diogo Roldão <diogo...@gmail.com>

felipe moraes

unread,
Dec 9, 2009, 10:21:40 AM12/9/09
to list...@googlegroups.com
opa .. não entendo nada do assunto ..

alterar o dpi sem alterar os pixels da imagem .. não vai bugá-la não ??

em um scanner, por exemplo .. ao mudar o dpi .. a intensidade da luz emitida aumenta .. melhorando a qualidade da imagem captada pelos sensores ..

ou seja .. a imagem fica mais nítida, mais precisa .. ocorre mudança dos pixels em quantidade e intensidade dos valores ..

acredito que apenas alterar o dpi .. sem mudar os pixels 1 a 1 .. não vai influenciar em nada ..

apenas um palpite ..

Andreus Timm

unread,
Dec 9, 2009, 11:30:06 AM12/9/09
to list...@googlegroups.com
Alguém q talvez pode te ajudar http://twitter.com/guilhermeblanco

2009/12/9 felipe moraes <feli...@gmail.com>

Diogo Roldão

unread,
Dec 11, 2009, 8:44:46 AM12/11/09
to LISTA PHP
infelizmente essa funcao só retorna qto fica em CM o tamanho de uma
imagem para X DPI, ela nao converte efetivamente o DPI da imagem.
> 2009/12/8 Diogo Roldão <diogorol...@gmail.com>
>
> > orra mano, me mandar uma pesquisa do google "php pdi" ... vc ta de
> > sacanagem né? devo ter caçado isso só hoje umas 15x.
>
> > A outra solucao só serve para descobrir o DPI da imagem, eu ja tinha ela
> > aqui, vlw!
>
> > 2009/12/8 Rodrigo Corrêa e Castro <rodrigocorreaecas...@gmail.com>
>
> >> Veja se é isso:http://code.google.com/p/php-dpi/
>
> >> senão por aqui tem uma boa opção
> >>http://www.google.com.br/search?q=php+dpi&ie=utf-8&oe=utf-8&aq=t&rls=...
>
> >> Rodrigo Corrêa e Castro
> >> Web Developer
>
> >> MSN: rcc...@hotmail.com
> >> Twitter:http://twitter.com/rccjjf
> >> Gtalk: rodrigocorreaecas...@gmail.com
> >> Skype: rodrigocorreaecastro
>
> >> 24 9839-2129
> >> 24 3421-1956
>
> >> "ECONOMIZE PAPEL - PENSE ANTES DE IMPRIMIR!"
>
> >> 2009/12/8 Diogo Roldão <diogorol...@gmail.com>

Diogo Roldão

unread,
Dec 11, 2009, 8:45:49 AM12/11/09
to LISTA PHP
e qual seria essa funcao? n achei ainda...

On 8 dez, 18:39, Andreus Timm <andreus.t...@gmail.com> wrote:
> Nunca precisei alterar o DPI de uma imagem, mas seria interessante....sempre
> tem a primeira vez...
> Da uma olhada na classe GD sobre dpi...deve ter algo lá...só que nunca
> precisei usar..
>
> 2009/12/8 Diogo Roldão <diogorol...@gmail.com>
>
>
>
>
>
> > ninguem sabe?
>
> > On 30 nov, 17:43, Diogo Roldão <diogorol...@gmail.com> wrote:
> > > Falae lista!
>
> > > Estou criando uma aplicacao que qdo o usuario manda um imagem para o
> > > sistema, ele pega essa imagem e tem que reduzir ou aumentar oDPIdela
> > > para sempre 120DPI.
>
> > > Estou caçando isso no google desde sexta e nada de achar algo efetivo.
> > > Estou usando CI e a propriam image_lib do CI gera todas as imagens
> > > sempre em 96DPIindependente do que eu mande ele fazer.
>
> > > Segue o codigo que estou tentando rodar:http://pastebin.com/m664991a3
> > > Segue a funcao getDpi que estou usando:http://pastebin.com/m74435711
>
> > > Agradeço pela atencao de todos!
>
> > > att,
> > > Diogo Roldão
>
> --
> Andreus Timm
> andreus.t...@gmail.com
> (51) 8435-4850
> (51) 9243-1668

Jean

unread,
Dec 12, 2009, 10:52:37 AM12/12/09
to list...@googlegroups.com
eu nem sabia que isso era possivel uahuahuahua
vou parar de me fu#% no Photoshop e usar esses esquemas p/ aumentar a resolução!

Pq assim na minha cabeça não sei se funciona direito não, pois como vc
vai aumentar de 72 pontos por polegada para 300 pontos sem perder
alguam informacao dela ou deixa-la diferente? Sei la ainda quero ver
se funciona mesmo.

2009/11/30 Diogo Roldão <diogo...@gmail.com>:
> --~--~---------~--~----~------------~-------~--~----~
> ============================================================
> LEIAM SEMPRE AS REGRAS DA LISTA:
> http://groups.google.com.br/group/listaphp/web/regras-da-lista-php
> --
> LISTA PHP > http://groups.google.com.br/group/listaphp
> --
> REVISTA PHP > http://www.revistaphp.com.br
> --
> AJAX-BRASIL > http://groups.google.com/group/ajax-brasil
> --
> PYTHON-GOOGLE > http://groups.google.com.br/group/python-google
> --
> DOTNET-BRASIL > http://groups.google.com.br/group/dotnet_br
> ============================================================
> -~----------~----~----~----~------~----~------~--~---
>
>



--
[]´s Jean a.k.a Suissa

Tecnólogo em Análise de Sistemas - UTF-PR
131

www.twitter.com/suissacorp

Norivan Oliveira

unread,
Dec 11, 2009, 8:11:05 PM12/11/09
to list...@googlegroups.com
Uai camarada não tem jeito de mudar uma imagem de 72 pra 300 desse jeito.
Nem com PS, se mudar vai ficar uma imagem de 72 dpi's esticada.

2009/12/11 Diogo Roldão <diogo...@gmail.com>
> (51) 8435-4850
> (51) 9243-1668

--

============================================================
LEIAM SEMPRE AS REGRAS DA LISTA:
http://groups.google.com.br/group/listaphp/web/regras-da-lista-php
--
LISTA PHP > http://groups.google.com.br/group/listaphp
--
REVISTA PHP > http://www.revistaphp.com.br
--
AJAX-BRASIL > http://groups.google.com/group/ajax-brasil
--
PYTHON-GOOGLE > http://groups.google.com.br/group/python-google
--
DOTNET-BRASIL > http://groups.google.com.br/group/dotnet_br
============================================================



--
Att.,
Norivan Oliveira
nor...@gmail.com
http://www.sistemasgerenciais.com/norivan

Diogo Roldão

unread,
Dec 12, 2009, 5:11:43 PM12/12/09
to LISTA PHP
consegui fazer aqui, tive que usar ImageMagick e GD, provavelmente nao
deve ter sido a melhor saida nao mas funcionou, qdo eu abro a imagem
final no PS ele mostra que a imagem tem o DPI que eu quero, 150.

Na regra, essa modificacao funciona assim: Vc tem uma imagem de
500x500px com 100DPI ... se vc quer mudar ela para 200DPIs, essa
imagem vai cair para 250x205px ... pq? Pq vc aumenta o numero de
pontos por polegada, entao para nao perder a qualidade vc reduz
proporcionalmente o tamanho dela, assim ela aumenta o DPI e continua
com qualidade.

O codigo de redimencionar proporcialmente todo mundo consegue com GD,
o pulo do gato é o codigo que aumenta o numero de pontos da imagem:

$im = new Imagick();
$im->setResolution(150,150);
$im->readImage($data['full_path']);
$im->setImageFileName($data['full_path']);
$im->writeImage();

com o codigo acima eu rescrevo a mesma imagem, só que aumentando o DPI
dela.

Lembrando que para isso vc tem que instalar o ImageMagick na maquina.
No meu caso eu nao consegui instalar essa merda no Windows, mas como
server é linux, foi mole. FIz todos os testes online e funcionou
perfeitamente.

Fica ai a dica para o proximo que passar por isso nao se f**** igual
eu.

abs!
Diogo Roldao


On 11 dez, 23:11, Norivan Oliveira <nori...@gmail.com> wrote:
> Uai camarada não tem jeito de mudar uma imagem de 72 pra 300 desse jeito.
> Nem com PS, se mudar vai ficar uma imagem de 72 dpi's esticada.
>
> 2009/12/11 Diogo Roldão <diogorol...@gmail.com>
> nori...@gmail.comhttp://www.sistemasgerenciais.com/norivan

Jean

unread,
Dec 12, 2009, 5:20:16 PM12/12/09
to list...@googlegroups.com
Ah sim diminuindo a imagem com crtza deve rolar neh, mas as vezes
diminui-la mais de 3x nao eh viavel. Ex.: 72(web) p/ 300(impressao)

2009/12/12 Diogo Roldão <diogo...@gmail.com>:
Reply all
Reply to author
Forward
0 new messages