Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB .NET > Сохранение построенного изображения в файл


Автор: kobalt 21.11.2008, 15:21
В элементе Panel рисую линии, кружочки и пр. ...
Потом необходимо все, что нарисовано сохранить в файл (jpg, bmp или пр.)
Подскажите, пожалуйста, как это сделать. smile 

Автор: diadiavova 21.11.2008, 21:00
Код

        Dim bm As New Bitmap(Panel1.Width, Panel1.Height)
        Panel1.DrawToBitmap(bm, New Rectangle(0, 0, Panel1.Width, Panel1.Height))
        bm.Save("Имя файла")
        

Автор: kobalt 23.11.2008, 09:38
во второй строке выдается ошибка
DrawToBitmap не является членом System.Windows.Forms.Panel

Автор: diadiavova 23.11.2008, 09:40
Ты на каком фреймвоке пишешь? Этот метод появился у всех контролов начиная со второго фреймвока.

Добавлено через 4 минуты и 48 секунд
http://msdn.microsoft.com/ru-ru/library/system.windows.forms.control.drawtobitmap.aspx

Автор: diadiavova 24.11.2008, 15:07
Если ты на первом фреймвоке работаешь - надо предупреждать(прочитал твой новый вопрос).
Решением проблемы может быть добавление метода в контрол. Создаёшь свою панель и добавляешь в неё что-то в этом роде (сам не пробовал, так что если что...).
Код

Public Sub DrawToBitmap( bitmap As Bitmap,  targetBounds As Rectangle )
Dim g As Graphics = Graphics.FromImage(bitmap)
Dim e As New PaintEventArgs(g,  targetBounds)
Me.OnPaint(e)
End Sub


Вроде так... и дальше как в предыдущем примере.

Автор: kobalt 25.11.2008, 15:35
diadiavova, спасибо! Все заработало в (VS2008)!
Будеш в Москве - дай знать, угощу пивом. Спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)