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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.09.2010, 00:42   #1
DeDoK
Форумчанин
 
Аватар для DeDoK
 
Регистрация: 05.11.2007
Сообщений: 392
По умолчанию вырезание фрагмента изображения

как вырезать фрагмент изображения если есть координаты левой верхней точки и правой нижней?
DeDoK вне форума Ответить с цитированием
Старый 12.09.2010, 00:48   #2
Dj_smart
Капсула от спама
Форумчанин
 
Аватар для Dj_smart
 
Регистрация: 04.03.2008
Сообщений: 779
По умолчанию

Эмм а в чем собственно сложность?
Код:
From, Cut:TBitmap;
FromRect:TRect;
// инициализация FromRect и тд.
for m:=FromRect.Top to FromRect.Bottom do
  for n:=FromRect.Left to FromRect.Right do
    Cut.Pixels[m-FromRect.Top,n-FromRect.Left]:=From.Pixels[m,n];
както так
Еще можно оптимизировать, копировав участки памяти изображения "попикселострочно".
Если данный ответ не столь конкретен, как Вы желаете его увидеть, возможно необходимо поразмыслить, стоит ли вопрос того, чтобы о нём спрашивать на форуме?
CncFiles.ru - бесплатный файловый хостинг
Dj_smart вне форума Ответить с цитированием
Старый 12.09.2010, 00:49   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

вырезать куда?(и чем надо заполнить пустое место?и чем работаем(API/VCL?)?)
вообще, копируем область в буфер, далее убираем то что скопировали, у TCanvas есть методы вполне.

Dj_smart, лучше уж рисовать этот кусок, ни в коем не через пиксели(скорость ужас)
можно BitBlt
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.09.2010, 00:50   #4
DeDoK
Форумчанин
 
Аватар для DeDoK
 
Регистрация: 05.11.2007
Сообщений: 392
По умолчанию

работаем с vcl
режем картинку из timage в нее bitmap загружен.
Просто вырезать, не заносить в буфер обмена.
DeDoK вне форума Ответить с цитированием
Старый 12.09.2010, 00:54   #5
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
var R:TRect;//её координатами заполни
Image1.Canvas.Brush.Color:=clWhite;//цвет
Image1.Canvas.FillRect(R);
помоему тогда это простая заливка выходит.
(вырезание это копирование куда то(буфер не значит буфер обмена), и удаление из старого места)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.09.2010, 01:00   #6
DeDoK
Форумчанин
 
Аватар для DeDoK
 
Регистрация: 05.11.2007
Сообщений: 392
По умолчанию

понял) сделал) спасиб)
DeDoK вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск фрагмента по Lixtbox'у. Pavarotti Общие вопросы Delphi 15 09.08.2010 12:25
Вырезание слов KoBRaAndrey Общие вопросы Delphi 5 24.12.2009 20:49
2 вопроса по c++ 1)небольшая функция 2)вырезание лишних цифр Destructor Общие вопросы C/C++ 2 23.12.2009 13:18
Удаление фрагмента текста Шурик Общие вопросы Delphi 0 31.05.2009 16:11
Печать фрагмента TImage KiLLiR Мультимедиа в Delphi 3 12.04.2009 14:34