|
|
|
Junior Member
      
участник
Last Login: 18.08.2004 14:12
Сообщ.: 15,
Visits: 166
|
|
Вообще-то необходимо конвертнуть TIcon в TBitmap. Я использую класс TPicture для хранения графики. С метафайлом и jpg'разобрался, а иконкой перевести в битмап не могу. неужели кроме как сохранить ее в формате bmp, а потом загрузить TBitmap'ом никак нельзя. Рзамер у иконок, насколько я знаю фиксированный - 16x15 & 32x32. Так вот как узнать большая она или маленькая ... Picture.LoadFromFile('aa.ico'); У Picture.Graphic почему-то Width&Height равны 0
|
|
|
|
|
Forum Guru
      
участник
Last Login: 23.07.2002 13:31
Сообщ.: 52,
Visits: 573
|
|
Первое . А ты знаешь что TImage грузит не все форматы jpg ?! А ! так что используй TJpegImage для загрузки jpg. Второе. Конвертация иконки в битмап. Icon:=TIcon.Create; B:=TBitmap.Create; B.Width:=Icon.Width; B.Height:=Icon.Height; B.Canvas.Draw(0,0,Icon); Третье. Image1.Picture.LoadFromFile('1.ico'); Label1.Caption := IntToStr(Image1.Picture.Graphic.width); Работает нечего делать! не знаю как ты проверял.
|
|
|
|
|
новичок
      
участник
Last Login: 02.01.2002 22:06
Сообщ.: 2,
Visits: 23
|
|
Вообще-то размер определяеться параметрами Width и Height (тобиш Icon.Width и Icon.Height) а перевести из ico в битмап можно примерно таким образом:
function IcoToBmp(Icon:TIcon):TBitmap; begin Result:=TBitmap.Create; Result.Width:=Icon.Width; Result.Height:=Icon.Height; Result.Canvas.Draw(0, 0, Icon); end;
|
|
|
|
|
Junior Member
      
участник
Last Login: 18.08.2004 14:12
Сообщ.: 15,
Visits: 166
|
|
2ALex1000T: >Icon:=TIcon.Create; >B:=TBitmap.Create; >B.Width:=Icon.Width; >B.Height:=Icon.Height; >B.Canvas.Draw(0,0,Icon); именно так я и делал... >Image1.Picture.LoadFromFile('1.ico'); >Label1.Caption := IntToStr(Image1.Picture.Graphic.width); >Работает нечего делать! не знаю как ты проверял. Это работает, но если Picture локальная, тогда не работает, а у меня именно такая ситуация. Видимо это как то связаано с кешированием изображений.
Сейчас проблема решена, спасибо всем.
|
|
|
|