Форум: "Media";
Текущий архив: 2003.11.27;
Скачать: [xml.tar.bz2];
ВнизВопрос по изображению Найти похожие ветки
← →
[BAD]Angel (2003-07-31 13:40) [0]Люди, подскажите можно ли сделать следующее:
Есть несколько картинок BMP размер самой большой ~1030х646, далее идет штуки 4 маленькие... как мне наложить маленькие на большую и сохранить все это дело в файл? (не хотелось бы терять качество посредством Stretch)
← →
Smithson (2003-07-31 14:02) [1]BMP.LoadFromFile(большую);
BMP.Picture.Canvas.CopyRect...
← →
[BAD]Angel (2003-07-31 14:09) [2]CopyRect как я знаю он копирует с экрана или я ошибаюсь?
Ведь у меня картинка на экран не помещается по размеру...
← →
[BAD]Angel (2003-07-31 14:16) [3]Поясню вопрос:
Есть большая картинка...
Пихаю ее на форму Image1.LoadFromFile(...);
Потом поверх этой картинки таким же способом загружаю остальные... Но размер этого всего на форме уменьшен Image1.Stretch:=true;
Но в файл мне надо сохранить реальный размер этого винегреда!
Вот...
Может у меня подход не правильный! Подскажите ПЛЗ!
← →
[BAD]Angel (2003-07-31 14:45) [4]Люди... помогите ПЛЗ!
← →
NAlexey (2003-07-31 15:09) [5]CopyRect копирует от туда откуда укажешь. Укажешь скопировать такойто рект из такого то битмапа в такой то и всех делов.
← →
[BAD]Angel (2003-07-31 15:21) [6]А как быть с размерами? Ведь мое изображение больше экрана?
Какой Rect писать?
← →
[BAD]Angel (2003-07-31 15:50) [7]Да, и объясните работу CopyRect ПЛЗ!
← →
[lamer]Barmaglot (2003-07-31 16:06) [8]А справку посмотреть? Глядишь в следующий раз меньше вопросов задавать будешь...
Неужели за 2 часа не возникло ни одной мысли как это сделать?
procedure TForm1.Button1Click(Sender: TObject);
var
Dest, Source: TRect;
begin
Dest:=Rect(10,10,50,50);
Source:=Rect(10,10,50,50);
Image2.Picture.Bitmap.Canvas.CopyRect(Dest,Image1.Picture.Bitmap.Canvas, Source);
end;
← →
Photus (2003-07-31 16:32) [9]2[BAD]Angel:
Извините, не тот ли вы [BAD]Angel, с которым я недавно на другом форуме общался?
А вообще совет такой: когда непонятно какая процедура как работает иногда достаточно набрать название этой функции в Editore, "встать" на это название текстовым курсором и нажать F1. Если с английским проблем нет, то во всём сами разберётесь.
← →
[BAD]Angel (2003-07-31 17:01) [10]Нет, не тот.
Про Ф1, прикиньте, я знаю.
Хорошо, значит тут Image2 присваивается картинка из Image1 с размерами 50 на 50 и отступом 10 от верхнего левого края... Да?
Но ведь я же говорю, что у меня на форме Картинка уменьшена, не в натуральном размере (если ставить натуральный, то не хватит разрешение экрана), и что из этого примера получится?
← →
[BAD]Angel (2003-07-31 18:30) [11]Разобрался с CopyRect, но это совсем не то!
ПИШУ ПОДРОБНЕЕ:
Есть большая картинка я ее пихаю на форму и уменьшаю (Stretch)
Сверху нее я кладу еще одну картинку + четыре Label"a, так вот как мне сохранить в файл этот венигред из картинок и Лейблов да и еще размера большой картинки (1030x646)??? Вот в чем трабла... Вы меня просто не поняли!
← →
BOA_KAA (2003-07-31 18:46) [12]Вычислить координаты этого венегрета и, как ни странно, CopyRect
Например так,
bmp.Canvas.CopyRect(Rect(0,0,Width,height),Form1.Canvas,Rect(0,0,Width,height));
bmp.SaveToFile("e:\my.bmp");</code.
← →
Photus (2003-08-01 11:46) [13]2BOA_KAA:
Тогда ведь Лейблы не сохранятся.
← →
BOA_KAA (2003-08-01 15:26) [14]> Тогда ведь Лейблы не сохранятся
Это с какого перепуга???
← →
pasha676 (2003-08-01 15:46) [15]Мда. Клиника.
Ты лабелы кладешь или рисунки лабелов. Если лабелы - то может имеет смысл TextOut - ом просто на канвасе картинки писать?
← →
Photus (2003-08-01 17:40) [16]2BOA_KAA:
>Это с какого перепуга???
Да с такого, что на канве формы Лейблы не рисуются. Это отдельные компоненты, они кладутся на форму и рисуют сами себя, а не форма их рисует.
← →
[BAD]Angel (2003-08-02 12:39) [17]Мужики, а это идея!!!
СПАСИБО, а я совсем и забыл про TextOut
Ну Вы выручили :))
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2003.11.27;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.009 c