Bmp

Delphi

08/07/2006

Determinado arquivo BMP renomiei para *.ric, mais quando tento abrir usando o seguinte código dar erro.
É como o image1 não aceitasse a extensão *.ric, mais só que ele é um BMP renomeado para *.RIC, motivos de evitar que os usuários vejam o arquivo.

Image1.Picture.LoadFromFile(´C:\2006077-21015.ric´);

Como posso visualizar sem precisar renomear para *.BMP ?
Grato


Zlink

Zlink

Curtidas 0

Respostas

Massuda

Massuda

08/07/2006

Posso estar enganado, mas acho que não tem como fazer o que você quer, pois o TImage usa a extensão do nome do arquivo (que você renomeou) para identificar qual o tipo da imagem.


GOSTEI 0
Marcelo Saviski

Marcelo Saviski

08/07/2006

não vai funcionar mesmo usando o LoadFromFile poque o TPicture usa a extenção do arquivo para determinar o seu formato e tentar carrega-lo.

uma tentativa seria:

Image.Picture.Bitmap.LoadFromFile(arquivo);

ou

procedure LoadBitmapFromFile(FileName: TFileName; Picture: TPicture);
var
  ArquivoBitMap: TFileStream;
begin
  ArquivoBitMap := TFileStream.Create(FileName, fmOpenRead and fmShareExclusive);
  try
    Picture.Bitmap.LoadFromStream(ArquivoBitMap);
  finally
    ArquivoBitMap.Free;
  end;
end;


estou sem o Delphi para testar


GOSTEI 0
_rodfaria_

_rodfaria_

08/07/2006

retirado de http://www.delphifaq.com/faq/f395.shtml
begin
  // force it to be treated as a bitmap:
  Image1.Picture.Bitmap.LoadFromFile(´APicture.img´);

  // register your IMG extension application-wide to be treated as a bitmap:
  Image1.Picture.RegisterFileFormat(´img´,´Bitmap file´,TBitmap);
  Image1.Picture.LoadFromFile(´APicture.img´);
end.



GOSTEI 0
Zlink

Zlink

08/07/2006

Caros colegas, testei o código acima, mais continua dando erro
Alguém poderia testar ?

// force it to be treated as a bitmap:
Image1.Picture.Bitmap.LoadFromFile(´C:\XDelphi\Projetos Delphi\Utilitátios\cp3\2006076-123410.ric´);

// register your IMG extension application-wide to be treated as a bitmap:
Image1.Picture.RegisterFileFormat(´ric´,´Bitmap file´,TBitmap);
Image1.Picture.LoadFromFile(´C:\XDelphi\Projetos Delphi\Utilitátios\cp3\2006076-123410.ric´);


GOSTEI 0
_rodfaria_

_rodfaria_

08/07/2006

´Utilitátios´ ? Não seria este o erro ?


GOSTEI 0
Zlink

Zlink

08/07/2006

O erro não é este, dar para você testar aí.


GOSTEI 0
Micheus

Micheus

08/07/2006

[b:2f630a5808]infoagenda[/b:2f630a5808], testei as duas opções:
1)
Image1.Picture.Bitmap.LoadFromFile(´c:\temp\curitiba.ric´);

2)
Image1.Picture.RegisterFileFormat(´ric´,´Bitmap file´,TBitmap);
  Image1.Picture.LoadFromFile(´c:\temp\curitiba.ric´);

e em ambas não obtive erro algum, a não ser quando eu renomiei, por engando, um arquivo .jpg para .ric;

Talvez vc devesse postar a mensagem de erro apresentada. Fica muito vago não se ter uma idéia clara de que erro é este.


GOSTEI 0
Aasn

Aasn

08/07/2006

Caro infoagenda,

basta que vc faça assim:

Image1.Picture.Bitmap.LoadFromFile(´C:\200607721015.ric´); 


obs.: o caracter ´-´ não é aceito no nome do arquivo.

[]´s
AASN


GOSTEI 0
Zlink

Zlink

08/07/2006

Quando a imagem é um bmp e renomeio para ric, funciona sim

Agora o problema é que eu captura a tela, salvo como JPG e renomeio para RIC, aí não consigo abrir


GOSTEI 0
Micheus

Micheus

08/07/2006

Como ocorreu comigo no post anterior
...e em ambas não obtive erro algum, a não ser quando eu renomiei, por engando, um arquivo .jpg para .ric;

O problema é que vc não está lendo um BMP e sim um JPG renomeado!!!

Neste caso, acho que vc vai ter que registrar a extenção .ric para o TJPEGImage se estiver utilizando a unit JPEG.
  Image1.Picture.RegisterFileFormat(´ric´,´Jpeg file´,TJPEGImage);
  Image1.Picture.LoadFromFile(´c:\temp\curitiba.ric´)



GOSTEI 0
Zlink

Zlink

08/07/2006

Meu amigo deu só o file. Nem precisa eu renomeiar para *.ric já salvo como *.ric (otimização de código).
Muito obrigado pela força.
Valeu


GOSTEI 0
POSTAR