Fórum Formatar imagem para banco #424817

27/09/2012

0

Alguem poderia me dar uma dica de como eu posso formatar uma imagem?
Como eu poderia carregar uma imagem e deixá-la sempre com um tamanho fixo(bytes)?
Tipo,uma imagem BMP de 800k,codificá-la para JPG até que alcance o tamanho de 100k.
Acho que é um meio de manter o banco(firebird)com tamanho menor possível no campo BLOB.
Vtrx

Vtrx

Responder

Posts

27/09/2012

Leonardo Xavier

você tem alguma função realizando a conversão de bmp para jpg?
Responder

Gostei + 0

27/09/2012

Alisson Santos

Primeiramente o que quer fazer, se for mexer com o tamanho o ideal é utilizar um programa para fazer isso pois não perde a qualidade.
Caso seja conversão ai terá que utilizar uma função para fazer essa conversão, lembrando que facilmente consegue na internet essa função.
Agora se for para colocar uma imagem na aplicação poderia utilizar o componente Image e ativar a propriedade Stretch.

Caso não seja nada disso acima, informar o que quer certinho que verifico e oriento.
Responder

Gostei + 0

27/09/2012

Vtrx

A função ainda não tenho pois estou programando em C++ (RadStudio),mas estou usando o Delphi como referencia.
Oque eu queria era não 'inchar' o banco de dados no campo BLOLB,pois o cliente vai cadastrar uma imagem para cada íten,que são componentes.
O cliente abe o forme de cadastro e escolhe uma imagem a cadastrar.
Como esta imagem ele vai gerar apartir de uma WebCam ou Camera,preciso limitar o tamanho no banco mas não para o cliente.
Seria uma conversão automática,ele escolhe a imagem e minha rotina comprime até um tamanho determinado.
Responder

Gostei + 0

28/09/2012

Leonardo Xavier

Não teria como você salvar estas imagens em uma pasta e gravar no seu banco apenas o caminho da pasta e o nome do arquivo? Não seria mais fácil?
Responder

Gostei + 0

28/09/2012

Vtrx

A respeito da compressão,eu ja consegui.
Sobre gravar o caminho do banco,não é seguro pois para acessar a pasta no PC servidor,qualquer um vai ter acesso para apagar as iamgens ou colocar outra (e serão muitas).
Abrí um tópico na sesão 'firebird' para achar um meio eficas de gravar uma imagem num campo BLOB usando ZEOS,pois nunca gravaei imagens.
Responder

Gostei + 0

29/09/2012

Alisson Santos

A respeito da compressão,eu ja consegui.
Sobre gravar o caminho do banco,não é seguro pois para acessar a pasta no PC servidor,qualquer um vai ter acesso para apagar as iamgens ou colocar outra (e serão muitas).
Abrí um tópico na sesão 'firebird' para achar um meio eficas de gravar uma imagem num campo BLOB usando ZEOS,pois nunca gravaei imagens.


Sim referente o que informou qualquer um pode apagar sim, e no banco isso não ocorre.
Mais tem que ser analisado a importancia dessa imagens estar no banco, pois pode deixar o seu banco muito grande e lento.
O ideal é criar uma pasta com permissões o que pode ou não ser feito para que isso não ocorra.
Responder

Gostei + 0

29/09/2012

Vtrx

Eu limitei o tamanho da imagem(10k/JPG),se não me engano,o banco só vai ficar lento se abrir o campo BLOB toda vez.
No meu caso,eu dou um SELECT só nos ítens texto,e o usuário tem a opção de clicar num botão para ver a imagem ou não,neste momento eu dou um SELECT apenas no campo BLOB.
Vou popular o banco todo e fazer os testes.
Responder

Gostei + 0

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

Aceitar