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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 29.07.2012, 18:32   #1
hon
Форумчанин
 
Регистрация: 08.06.2011
Сообщений: 693
По умолчанию Что делает эта процедура? (не студент)

Желая конвертировать RGB в CMYK и CMYK в RGB, скачал модуль с тремя процедурами. Первая - конвертировала RGB в CMYK, вторая CMYK в RGB, d третяя называется ColorCorrectCMYK. Вот ее код:
Код:
procedure ColorCorrectCMYK(var C: byte;
   var M: byte;
   var Y: byte;
   var K: byte);
var
   MinColor: byte;
begin
   if C<M then
      MinColor:=C
   else
      MinColor:=M;
   if Y<MinColor then
      MinColor:=Y;
   if MinColor+K>255 then
      MinColor:=255-K;
   C:=C-MinColor;
   M:=M-MinColor;
   Y:=Y-MinColor;
   K:=K+MinColor;
end;
Я решил протестировать процедуру выполнив следующий код и увидев результаты я удивился:
oC,oM... это значения до выполнения коррекции.

Что же делает или должна делать эта процедура?
hon вне форума
Старый 29.07.2012, 19:09   #2
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Цитата:
Сообщение от hon Посмотреть сообщение
Что же делает или должна делать эта процедура?
Похоже на cmy -> cmyk conversion. см. стр.50
http://www.math.washington.edu/tex-a...lor/xcolor.pdf
alexBlack вне форума
Старый 29.07.2012, 19:34   #3
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

hon, Вам нужно начинать не с того, что узнавать, что делает та или иная процедура, а с изучения предметной области. Для начала хоть выяснить, что такое цветовое пространство, какие они бывают, и зачем их несколько разных.

Одного умения программировать совершенно недостаточно, чтобы написать вменяемую программу. Необходимо хорошо представлять себе область, для которой предназначена программа, а Вы в этом, увы, в настоящий момент стерильны.

Вы хоть знаете, что из RGB в CMY или обратно невозможно сконвертировать без искажений? Или Вы считаете, что если Вы где-то нашли процедуру, которая якобы это делает, то все проблемы сами собой разрешились?

Последний раз редактировалось s-andriano; 29.07.2012 в 19:39.
s-andriano вне форума
Старый 29.07.2012, 21:00   #4
hon
Форумчанин
 
Регистрация: 08.06.2011
Сообщений: 693
По умолчанию

Цитата:
Сообщение от alexBlack Посмотреть сообщение
Похоже на cmy -> cmyk conversion. см. стр.50
http://www.math.washington.edu/tex-a...lor/xcolor.pdf
Спасибо, +1. Сохраню процедурку в своем сборнике. Тема закрыта.

Цитата:
Сообщение от s-andriano Посмотреть сообщение
hon, Вам нужно начинать не с того, что узнавать, что делает та или иная процедура, а с изучения предметной области. Для начала хоть выяснить, что такое цветовое пространство, какие они бывают, и зачем их несколько разных.
Я знаю, что такое цветовое пространство. Я знаю, что их несколько потому, что они используются для разных целей. Например RGB используется для отображения на дисплее, а CMYK для печати цветных изображений.

Цитата:
Сообщение от s-andriano Посмотреть сообщение
Вы хоть знаете, что из RGB в CMY или обратно невозможно сконвертировать без искажений? Или Вы считаете, что если Вы где-то нашли процедуру, которая якобы это делает, то все проблемы сами собой разрешились?
Знаю, что невозможно, за исключением редких случаев для отдельных цветов.
hon вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите разобраться,что делает эта часть программы? Селякова Елена Помощь студентам 1 29.11.2009 21:01
Что делает эта строчка??? marselik Общие вопросы C/C++ 2 02.11.2009 13:54
Что делает эта прога StudentPolitech Общие вопросы C/C++ 1 25.03.2009 22:54
FindEgual-что делает эта функция? stasig Паскаль, Turbo Pascal, PascalABC.NET 1 14.12.2008 23:02
что делает эта программа и где ошибка? дангер Паскаль, Turbo Pascal, PascalABC.NET 27 28.01.2008 13:38