Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.01.2010, 17:32   #1
Marsel737
Форумчанин
 
Аватар для Marsel737
 
Регистрация: 09.11.2009
Сообщений: 669
По умолчанию Как сохранить изображение с канвы в файл

Всем доброго времени суток.

Подскажите как можно сохранить изображение с канвы формы в файл.

Код:
 imgPaintPic.LoadFromFile('Data/Paint/'+IntToStr(PicNum)+'.bmp');
  frmMain.Canvas.Refresh;
  frmMain.Canvas.Draw(11,11,imgPaintPic);
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли
Marsel737 вне форума Ответить с цитированием
Старый 20.01.2010, 18:38   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Как сделать BMP снимок с экрана?

Грузин:

Код:
var
  Desktopcanvas :TCanvas ;
 BitMap  :TBitMap;
begin
  DesktopCanvas:=TCanvas.Create;
  DesktopCanvas.Handle:=GetDC(Hwnd_Desktop);
  BitMap := TBitMap.Create;
  BitMap.Width := Screen.Width;
  BitMap.Height:=Screen.Height;
  Bitmap.Canvas.CopyRect(Bitmap.Canvas.ClipRect,
  DesktopCanvas, DesktopCanvas.ClipRect);
  bitmap.SaveToFile('c:\windows\screen.bmp');
 image1.Picture.LoadFromFile('c:\windows\screen.bmp');
end;
*********************************** ******************
Alar:

Код:
var 
ScreenDC:HDC; 
Canvas:TCanvas; 
Image1:TImage; 
Begin 
ScreenDC := GetDC(0); 
Canvas:=TCanvas.Create(); 
Canvas.Handle:=ScreenDC; 
Image1 := TImage.Create(nil); 
Image1.Width := Screen.Width 
Image1.Height := Screen.Height 
Image1.Canvas.CopyRect(Rect(0, 0, Image1.Width, Image 1.Height), Canvas, Rect(0, 0, Screen.Width, Screen.Height)); 
ReleaseDC(0,ScreenDC); 
Canvas.Free; 
end;
Вам осталось подставить нужные значения Rect для клиентской области своей формы. А в совете Алара - добавить сохранение Image1 в файл...
mihali4 вне форума Ответить с цитированием
Старый 20.01.2010, 19:14   #3
Marsel737
Форумчанин
 
Аватар для Marsel737
 
Регистрация: 09.11.2009
Сообщений: 669
По умолчанию

Я выбрал вот этот код:

Код:
procedure TfrmMain.btnSaveClick(Sender: TObject);
var
 BitMap  :TBitMap;
 Desktopcanvas :TCanvas ;
begin
  DesktopCanvas:=TCanvas.Create;
  DesktopCanvas.Handle:=GetDC(Hwnd_Desktop);
  BitMap := TBitMap.Create;
  BitMap.Width := imgPaintPic.Width+12;
  BitMap.Height:=imgPaintPic.Height+12;
  Bitmap.Canvas.CopyRect(Bitmap.Canvas.ClipRect, DesktopCanvas, DesktopCanvas.ClipRect);
  bitmap.SaveToFile('Data/screen.bmp');
end;
Только не пойму, что писать вместо этого:
Код:
Bitmap.Canvas.ClipRect, DesktopCanvas, DesktopCanvas.ClipRect
У меня рисуется вот такой прямоугольник:
Код:
frmMain.Canvas.Rectangle(10,10,612,626);
И нужно его содержимое сохранить
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли
Marsel737 вне форума Ответить с цитированием
Старый 20.01.2010, 19:23   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Выберите код Алара - там проще. Нужно будет указать четыре точки...
mihali4 вне форума Ответить с цитированием
Старый 20.01.2010, 19:44   #5
Marsel737
Форумчанин
 
Аватар для Marsel737
 
Регистрация: 09.11.2009
Сообщений: 669
По умолчанию

mihali4, спасибо за помощь
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли
Marsel737 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как сохранить из memo в файл? RAVAL)) Общие вопросы Delphi 8 15.01.2013 18:09
Как сохранить изображение по ссылке? Indy. TwiX Работа с сетью в Delphi 4 29.11.2009 21:09
Сохранить с Web-камеры изображение в файл hoba БД в Delphi 3 16.10.2009 13:23
Сохранить/считать изображение в/из файл(а). amdbodia Общие вопросы C/C++ 4 26.05.2009 20:05
Как сохранить изображение Image и всё что на нём, в файл? Лукманов Александр Мультимедиа в Delphi 3 24.05.2009 00:16