Fórum Mexendo com imagens na programação #228287

27/04/2004

0

Estou desenvolvendo um programa que usará imagens,
eu preciso saber quais as dimensões da imagem e como
redimencioná-la via programação, assim ocupando menos
espaço no banco de dados.
T+
:?: :?: :?:


Eniorm

Eniorm

Responder

Posts

27/04/2004

Wagnerpb

Caro amigo... aconselho vc a não armazenar as imagens no BD, nós aqui utilizado em uma pasta em um servidor, vá por mim, vai lhe poupar uma boa dor de cabeça com relação a performance do seu BD.


Responder

Gostei + 0

27/04/2004

Nigro

Concordo imagina passar o gfix e o gbak em um banco com imagens....


Responder

Gostei + 0

27/04/2004

Gandalf.nho

Tb acho. Esses tempos peguei um sistema interbase que havia desenvolvido com um campo para imagens para alterar. O coitado do banco estava com mais de 100Mb e a máquina não era lá essas coisas. Fiz um programinha para extrair as imagens do banco, salvando-as em formato GIF (eram desenhos simples) e o banco caiu para menos de 20Mb.


Responder

Gostei + 0

27/04/2004

Luizfernando777

Prezado colega:
Se por acaso as fotos que vc está pensando em colocar
em Banco de Dados [b:7e01e3e29d]não[/b:7e01e3e29d] forem confidenciais, será melhor colocar em uma pasta, salvando apenas na base o local onde a mesma foi salva,
agora, se for confidencial seria melhor colocalas em DB, mas vc tem que saber que vai ficar enorme a base,

Tenho um projeto que anexa as fotos no Banco,
com certeza está enorme 335 Mb aproximadamente,
mas no meu caso as fotos são confidenciais, não podendo
ficar em pastas simplesmente.


Responder

Gostei + 0

28/04/2004

Nigro

Mas uma sugestão...
No caso de fotos confidenciais, podria ser utilizada uma rotina para criptografia dos arquivos, certo?


Responder

Gostei + 0

28/04/2004

Eniorm

Tudo bem, vcs me convencera a usar imagens fora
do banco.
MAS COMO FAZ PARA REDIMENCIONAR A DITA CUJA
T+


Responder

Gostei + 0

28/04/2004

Nigro

use o strech


Responder

Gostei + 0

28/04/2004

Nildo

Altere a propriedade Streched para True e depois disso altere o Width e o Height do TImage conforme necessário.


Responder

Gostei + 0

28/04/2004

Cebikyn

Ou se quiser redimensionar a imagem e poder salvar a imagem reduzida, pode usar um dos códigos dos links:

Para JPEG (usar a função ResizeImage, junto com as demais):
http://www.swissdelphicenter.ch/en/showcode.php?id=1896

Para Bitmap:
http://www.swissdelphicenter.ch/en/showcode.php?id=1463


Responder

Gostei + 0

29/04/2004

Luizfernando777

caro colega:
se vc mudar o tamanho original da imagem vc vai perder a resolução da mesma, portanto vc terá que salvar em seu tamanho original,
mas acontece o seguinte, a base de dados somente salva em formato .BMP, em formato .JPG ou .JPEG vc não vai conseguir gravar, eis o motivo da base ficar grande.
(caso vc consiga salvar em formato .JPG, me informa como).

fernando


Responder

Gostei + 0

29/04/2004

Gandalf.nho

Dá pra salvar como JPeg, mas não de maneira direta como o BMP. Dê uma busca no fórum que já há vários tópicos mostrando como se faz isso.


Responder

Gostei + 0

03/05/2004

Wagnerpb

Ex: Sua imagem original tem 100pixels altura(a´) x 150pixels largura(l´), só que vc tem uma área de 500pixels altura(a´) x 400pixels largura(l´)... aplicando a regra... (a´ * 100)/ a´ = (500 * 100) / 100 = 500¬, significa dizer que vc poderia aplicar 500¬ de aumento na imagem original que ela caberia dentro da sua área disponível, porém, é preciso entender que, o mesmo ¬ de aumento aplicado na altura, deverá ser aplica na largura para a imagem não distorça, sendo assim, 150(l´) * 500¬ = 750pixel, que passa da sua largura disponível que seria 400pixels(l´), nesse caso, vc terá que ir reduzindo o tamanho do percentual de aumento , até que o resultado seja menor ou igual a largura disponível, no exemplo acim, só seria aceito um aumento de 266¬, e a imagem ficaria no seguinte tamanho Altura(266¬) 266pixels x Largura(266¬) 399 pixels...
Dá mais trabalho quando a situação acima acontece, ou seja, o percentual aplicado na altura não pode ser aplicado na largura, nesse caso vc tem que fazer um algoritmo para encontrar o ¬ de aumento que se aplique aos dois casos... espero ter ajudado


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar