2012-04-04 10 views
5

Używam komponentu TImage do załadowania niektórych obrazów PNG, ale niektóre z nich mają rozszerzenie .imp. I dodać jednostkę Vcl.Imaging.pngimage do mojego kodu i używam tego kodu, aby załadować obrazyJak mogę załadować obraz Png z pliku, który ma inne rozszerzenie?

if OpenDialog1.Execute then 
    Image1.Picture.LoadFromFile(OpenDialog1.FileName); 

Ale gdy procedura LoadFromFile wykonywany jest wyjątek jest podniesiona

nieznane rozszerzenie pliku obrazu (.imp)

te obrazy (.imp) są PNG pliki wygenerowane przez extenal aplikacji i znajdują się w folderze tylko do odczytu, więc zmiana nazwy tych plików nie jest opcją, jest pytanie Jak mogę załadować obraz Png w komponencie TImage z pliku, który ma inne rozszerzenie?

+2

załadować go do strumienia, a następnie załadować obraz z tego –

Odpowiedz

14

należy zarejestrować format pliku pierwszym użyciu metody

TPicture.RegisterFileFormat Spróbuj

TPicture.RegisterFileFormat('imp','imp (png) image file',TPngImage); 
Powiązane problemy