![]()  | 
	
 
  | 
		
			
  | 	
	
	
		
		|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
![]()  | 
	
	
| 
		 | 
	Опции темы | Поиск в этой теме | Опции просмотра | 
| 
		 
			 
			#1  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Разрешение экрана 1920 на 1080 
		
	
		
		
		
		
		
		
			форма 3661 на 1920 на форме IMAGE висит поверх выводятся данные при сохранении сохраняется только видимая часть экрана а не вся форма что самое интересное что вчера вся форма сохранялась до переустановки винды. (win7) вот как сохраняю Код: 
	    wndcanvas := TCanvas.Create;
    wndcanvas.Handle := GetWindowDC(Handle);
    bmp := TBitmap.Create;
    bmp.Width := 3651;
    bmp.Height := 1920;
    bmp.Canvas.CopyRect(bmp.Canvas.ClipRect, wndcanvas, wndcanvas.ClipRect);
      bmp.PixelFormat := pf32bit;
    bmp.SaveToFile(put+'1.bmp');
    bmp.Free;
    ReleaseDC(Handle, wndcanvas.Handle);
    wndcanvas.Free;![]() вот 2 результат Код: 
	FileName := ExtractFilePath(ParamStr(0)) + 'screen.bmp'; Rec.TopLeft := ScreenToClient(Self.BoundsRect.TopLeft); Rec.BottomRight := ScreenToClient(Self.BoundsRect.BottomRight); Bit := TBitmap.Create; Bit.Width := Rec.Right - Rec.Left + 1; Bit.Height := Rec.Bottom - Rec.Top + 1; Bit.Canvas.CopyRect(Rect(0, 0, Bit.Width, Bit.Height), Self.Canvas, Rec); bit.SaveToFile(put+'2.bmp'); FreeAndNil(Bit); ![]() во втором варианте сохраняет правильный размер форму но видимая часть только с экрана Последний раз редактировалось jin_jin, 15.02.2013 в 11:54.  | 
| 
		 
			 
			#2  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Попробуй PrintWindow. 
		
	
		
		
		
		
		
	
		
		
	
	
	 |