![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
всем привет
народ подскажите как произвести копирование изображения из одного Image в другой Image с минимальной потерей качества изображения ? токо есть некоторые условия 1.... изображение в источник больше ттого изображения которое надо поместить в приемник 2.... размер приемника больше чем у источника 3.... помещать надо в указанные координаты приемника тобиш надо произвести копирование с уменьшением размера в указанные координаты с минимальной потерей качества |
|
#2
|
||||
|
||||
|
Такой вариант подойдет?
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
StretchBlt( Image2.Canvas.Handle, // Приемник
10, // Начальная координата по x
10, // Начальная координата по y
50, // Новая ширина
50, // Новая высота
Image1.Canvas.Handle, // Источник
0, // Начальная координата по x
0, // Начальная координата по y
Image1.Width, // Ширина
Image1.Height, // Высота
SRCCOPY ); // Опции рисования
end; |
|
#3
|
|||
|
|||
|
stretcblt я пробовал он очень сильно ****ует изображение
![]() |
|
#4
|
||||
|
||||
|
Тогда попробуй использовать GDI+. Скачай ее - http://decoding.narod.ru/download/units/gdiplus.zip, и посмотри пример в каталоге "demos\Using Images, Bitmaps, and Metafiles\Using Interpolation Mode to Control Image Quality During Scaling".
А здесь - http://msdn.microsoft.com/library/rus/default.asp?url=/library/rus/cpguidenf/html/_gdiplus_using_interpolation_mode_to_control_image _quality_during_scaling_usecsharp.asp, немного рассказано о использовании режима интерполяции для управления качеством изображения при масштабировании. Последний раз редактировалось Decoding, 05.09.2006 в 12:08. |
|
#5
|
|||
|
|||
|
как мне не хотелось в gdi+ лесть но пез него похоже никак
![]() приступимкизучению |