Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.12;
Скачать: CL | DM;

Вниз

Загрузка части картинки   Найти похожие ветки 

 
dedMazDie   (2004-09-08 11:39) [0]

Господа! Подскажите, пожалйста, как возможно загрузить в TImage
кусок картинки (т.е. прямоугольник пикселей).


 
antonn ©   (2004-09-08 13:51) [1]

А слабо просмотреть ближайшие темы?


 
dedMazDie   (2004-09-08 14:28) [2]

Там описывается работа с двумя файлами везде... А мне нада загружать из файла нужные фрагменты (если это возможно - плохо разбираюсь). А ещё лучше не загружая ни в какой компонент прямо из файла брать инфу о яркости пикселя, т.е. мне нада только получить к нему доступ, дальше я уже сам.


 
Jeer ©   (2004-09-08 14:52) [3]

Для таких как ты TImage и создан.


 
antonn ©   (2004-09-08 15:44) [4]


> dedMazDie   (08.09.04 14:28) [2]

Тебе хоть как придется "перебирать" полностью файл. Даже загружать бинарные данные придется полностью.


 
dedMazDie   (2004-09-08 15:47) [5]

2Jeer
Уважаемый! Если не знаешь как это сделать или знаешь, что этого нельзя сделать - лучше сказать, а не выпендриваться. TImage не устраивает, т.к. это медленно - при обработке сотен картинок это выливается в часы, что совсем неприемлимо.


 
dedMazDie   (2004-09-08 15:59) [6]

2antonn
Т.е. я понимаю, что повысить скорость обработки таким путем мне
не удасться?


 
Ja   (2004-09-08 16:32) [7]

Скорость загрузки файла - нет, а вот исключить обработку+прорисовку ненужных тебе областей (и как следствие общее быстродействие) - да.


 
dedMazDie   (2004-09-08 16:57) [8]

2Ja
Спасибо!
Буду благодарен также, если подскажешь, где и что искать, почитать что или пример какой...


 
Jeer ©   (2004-09-08 17:31) [9]

dedMazDie   (08.09.04 15:47) [5]

А в чем проблема-то ?

Для нужного формата файла (предварительно изучив его) пиши свой парсер. Но для некоторых форматов все равно придется загружать полностью.
И что такое часть картинки ?
Треугольная, овальная, диагональная или вообще в полосочку ?

Задумайся слегка и сложность ситуейшейн тебе станет понятнее.


 
Korneley ©   (2004-09-08 17:48) [10]

Сначала грузишь файл в обычный битмап, затем используешь его Canvas для обработки. Например:

var bmp : TBitMap;
...
 bmp := TBitMap.Create;
 try
   bmp.LoadFromFile("FileName.bmp");
{
 далее, если нужен доступ к отдельным точкам пользуешь свойство

 bmp.Canvas.Pixels[x,y]

 если кусок зарисовать на чужом Canvas-е - метод

 Canvas.CopyRect

 и т.д.
}
 finally
   bmp.Free;
 end;

Лучще ничего сходу не придумал. А читать -  хэлпы Ж:)


 
dedMazDie   (2004-09-09 11:36) [11]

Картинка - фотография с видеокамеры. Загружать нада прямоугольник определённый только, чтоб обработать нужные пиксели. Canvas.Pixel работает совсем медленно - его я использовал с самого начала, потом стал Scanline использовать - всё равно меделенно. Вот и думаю как бы ещё ускорить...


 
Jeer ©   (2004-09-09 12:36) [12]

CopyRect никто не отменял.


 
Рыба ©   (2004-09-09 18:30) [13]

>dedMazDie  (09.09.04 11:36) [11]
>потом стал Scanline использовать - всё равно меделенно. Вот и думаю как бы ещё ускорить...

FastLib, g32 или http://www.delphimaster.ru/articles/pixels/index.html


 
Mihey_temporary ©   (2004-09-09 20:06) [14]


> Jeer ©   (09.09.04 12:36) [12]


Да не старайся, всё равно конченый случай.


 
dedMazDie   (2004-09-10 13:01) [15]

Всем спасибо!



Страницы: 1 вся ветка

Текущий архив: 2004.12.12;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.025 c
3-1100522078
помаранчевий Жук
2004-11-15 15:34
2004.12.12
Парсинг строк - SQL


3-1100087505
Dmitriy O.
2004-11-10 14:51
2004.12.12
Помогите с SQL выборкой !


1-1101383806
Ego
2004-11-25 14:56
2004.12.12
Начало работы приложения.


1-1101692605
che
2004-11-29 04:43
2004.12.12
Создание нескольких текстовых файлов


3-1100244981
lightix
2004-11-12 10:36
2004.12.12
Сжать DBF