Jpg x bmp
Eu preciso guardar imagens e imprimí-las.
Para guardar, é claro que o jpg é melhor pois ocupa menos espaço, porém como eu preciso imprimí-la com 3 tamanhos diferentes, mas o jpg não permite a manipulação de tamanho, quem me permite isto é o bmp, o qual ocupa muito espaço. Além disto as imagens do cliente são salvas como jpg.
Então vai a pergunta, como manipular isto?
Eis o que tenho:
1) Este exemplo com bmp funciona, só que a imagem tem mais de 1MB, e são dezenas de imagens por dia
Foto := TBitMap.Create;
Foto.LoadFromFile(´Temp\Foto.bmp´);
Foto.Height := 70;
Foto.Width := 120;
Imprimir
2) Neste exemplo a imagem tem aproximadamente 200k, o que é bem mais viável, porém não tenho como alterar o tamanho da imagem para a impressão
Foto := TJPegImage.Create;
Foto := LoadFromFile(´Temp\Foto.Jpg´);
Foto.Height := 70; aqui diz que não posso mudar o tamanho da imagem
Foto.Width := 120; aqui diz a mesma coisa
Imprimir
Alguém conhece alguma solução prática para isto?
Para guardar, é claro que o jpg é melhor pois ocupa menos espaço, porém como eu preciso imprimí-la com 3 tamanhos diferentes, mas o jpg não permite a manipulação de tamanho, quem me permite isto é o bmp, o qual ocupa muito espaço. Além disto as imagens do cliente são salvas como jpg.
Então vai a pergunta, como manipular isto?
Eis o que tenho:
1) Este exemplo com bmp funciona, só que a imagem tem mais de 1MB, e são dezenas de imagens por dia
Foto := TBitMap.Create;
Foto.LoadFromFile(´Temp\Foto.bmp´);
Foto.Height := 70;
Foto.Width := 120;
Imprimir
2) Neste exemplo a imagem tem aproximadamente 200k, o que é bem mais viável, porém não tenho como alterar o tamanho da imagem para a impressão
Foto := TJPegImage.Create;
Foto := LoadFromFile(´Temp\Foto.Jpg´);
Foto.Height := 70; aqui diz que não posso mudar o tamanho da imagem
Foto.Width := 120; aqui diz a mesma coisa
Imprimir
Alguém conhece alguma solução prática para isto?
Edilcimar
Curtidas 0
Respostas
Rodc
06/11/2007
Você pode jogar dentro do bmp, alterar o tamanho e depois voltar para o Jpeg.
Eu testei isto e ele apenas alterou o tamanho da imagem, sem esticar a imagem. Para esticar a imagem para o novo tamanho, pege o Canvas do bmp e utilize a função StretchDraw().
Foto := TJPegImage.Create; Foto := LoadFromFile(´Temp\Foto.Jpg´); bmp := TBitMap.Create; bmp.Assign(Foto); bmp.Height := 70; bmp.Width := 120; Foto.Assign(bmp); Imprimir
Eu testei isto e ele apenas alterou o tamanho da imagem, sem esticar a imagem. Para esticar a imagem para o novo tamanho, pege o Canvas do bmp e utilize a função StretchDraw().
GOSTEI 0
Alexandrej
06/11/2007
Converta em BMP, trabalhe nela e volte para JPEG.
GOSTEI 0
Edilcimar
06/11/2007
grato, vou testar, qualquer coisa volto a comunicar
GOSTEI 0
Edilcimar
06/11/2007
não funcionou, na tela a imagem muda, porém na impressão não fica no tamanho desejado
GOSTEI 0
Alexandrej
06/11/2007
não funcionou, na tela a imagem muda, porém na impressão não fica no tamanho desejado
O problema parece ser na hora da impressão.
GOSTEI 0
Edilcimar
06/11/2007
sim, quando mando imprimir ele imprime no tamanho desejado, porém a imagem é cortada em vez de ser impressa por inteiro
GOSTEI 0
Rodc
06/11/2007
Foi o que eu disse, ele está aumentando (ou diminuindo) o tamanho da imagem porém sem fazer o stretch da imagem. Tenta usar a função do Canvas que lhe passei e depois reduz o tamanho da imagem.
GOSTEI 0
Edilcimar
06/11/2007
já tentei o stretch e o proportional, não adiantou, isto só funcionou na tela
GOSTEI 0
Edilcimar
06/11/2007
Eu preciso mudar o tamanho da imagem sem perder nada, quando estou enviando a mudança de tamanho, ele simplesmente imprime o tamanho da imagem mas corta um pedaço
GOSTEI 0
Rodc
06/11/2007
Eu preciso mudar o tamanho da imagem sem perder nada, quando estou enviando a mudança de tamanho, ele simplesmente imprime o tamanho da imagem mas corta um pedaço
Se você mandar salvar a imagem em arquivo ele salva cortando ou com o stretch?
GOSTEI 0
Edilcimar
06/11/2007
Consegui fazer uma POG!
peguei o jpg, transformei em bmp, joguei o bmp para dentro de um image invisível e mandei imprimir este image
peguei o jpg, transformei em bmp, joguei o bmp para dentro de um image invisível e mandei imprimir este image
GOSTEI 0
Rodc
06/11/2007
rsss....
POG sempre resolve nossos problemas!!!!
POG sempre resolve nossos problemas!!!!
GOSTEI 0