Деградация качества иконки, полученной из Handle

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

HiMik2003
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 21.07.2003 (Пн) 11:32
Откуда: Кишинёв

Деградация качества иконки, полученной из Handle

Сообщение HiMik2003 » 07.07.2006 (Пт) 18:31

(VB8(VB.NET 2005) Pro, XP SP2)
Проблема: иконка, полученная из хэндлера и сохранённая в ICO-файл
получается низкого качества.

Кто знает причину?

P.S.
кстати по-поводу SystemIcons.WinLogo -
почему оно выглядит как и SystemIcons.Application Я идиот! Убейте меня, кто-нибудь!


Пример:

Dim hIcon As IntPtr
Dim ic1 As Icon

' получим хэндлер иконки, например таким способом;
hIcon = SystemIcons.WinLogo.Handle

' создадим иконку из хэндлера;
ic1 = Drawing.Icon.FromHandle(hIcon)

Me.Icon = ic1 ' Выглядит неплохо
' Битмэпы из таких иконок тоже красивые.

Dim fs As New System.IO.FileStream("ЗДЕСЬ ИМЯ ФАЙЛА", IO.FileMode.Create, IO.FileAccess.Write)
ic1.Save(fs) 'а эта получается не очень-то: 16-цветная, выглядит погано.
' т.е. ICO-файл содержит одно изображение с низким количеством цветов!

fs.Close()
ic1.Dispose()

' Я пробовал получать хэндлер разными способами (CreateIconIndirect, LoadIcon ...)
' но результат всегда один - деградация качества в ICO-файле.

Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 34

    TopList