** Алексей |
Отправлено: 01.05.2005, 21:27 |
|
Не зарегистрирован
|
Как загрузить картинку, изменить размер изображения (сжать или растянуть), а затем сохранить в файле. |
|
Guest |
Отправлено: 01.05.2005, 22:18 |
|
Не зарегистрирован
|
Image1->Picture->LoadFromFile(AnsiString FileName);
Image1->Picture-> ....
Image1->Picture->SaveToFile(AnsiString FileName); |
|
** Алексей |
Отправлено: 02.05.2005, 01:08 |
|
Не зарегистрирован
|
Спасибо, но это я знаю. Мне нужно перед сохранением изменить размер. |
|
Guest |
Отправлено: 02.05.2005, 18:32 |
|
Не зарегистрирован
|
CODE |
Image1->Picture->LoadFromFile("d:\\file.BMP");
Image1->Picture->Bitmap->Width = Image1->Picture->Bitmap->Width + 100;
Image1->Picture->Bitmap->Height = Image1->Picture->Bitmap->Height — 20;
Image1->Picture->SaveToFile("d:\\file_new.BMP"); | |
|
Sl@Sh |
Отправлено: 02.05.2005, 21:19 |
|
Мастер участка
Группа: Участник
Сообщений: 383
|
Используйте апишные функции StretchBlt или StretchDraw.
Тогда я бы вам рекомендовал создать временное изображение (TBitmap), с размерами, которые должны быть у целевого. Затем с помощью какой-то из этих функций скопируйте исходное изображение в целевое.
QUOTE | Image1->Picture->Bitmap->Width = Image1->Picture->Bitmap->Width + 100;
Image1->Picture->Bitmap->Height = Image1->Picture->Bitmap->Height — 20; |
Возможно я ошибаюсь, но это приведёт к обрезанию картинки.
|
|
** Алексей |
Отправлено: 02.05.2005, 23:17 |
|
Не зарегистрирован
|
Спасибо за помощь, StretchDraw это то, что было нужно.
А вот метод, который посоветовал Guest, обрезает картинку. |
|