Я полагаю, что это скорее вопрос манипуляции с графикой в целом, но я хотел бы сделать это в Qt (C++). Если у меня есть изображение - давайте просто скажем круг на прозрачном фоне - светло-серого цвета, есть ли встроенная функциональность в Qt для изменения оттенка/насыщенности, чтобы его цвет?Смещение оттенка QImage/QPixmap
Я предполагаю, что смогу пойти по пикселям и модифицировать rgb математически - добавьте x в r, g и b, чтобы получить желаемый цвет, но должен быть лучший способ, чем изменение каждого пикселя.
Ничто в Qt Docs не проникает так далеко в манипуляции с изображением, просто изменяя альфу и цвета. Должен ли я заглянуть в библиотеку с открытым исходным кодом (конечный результат, скорее всего, будет независимо проданным программным обеспечением)? Если да, есть ли рекомендации? Или есть секретная функция, скрытая в Qt-документах, которые могут выполняться без необходимости использования внешних библиотек/сумасшедших алгоритмов?
В конечном счете, любая функция в любой библиотеке должна будет проходить через каждый пиксель и изменять его. Если вам не нужны различные функции манипуляции с изображениями, будет проще просто написать его самостоятельно. Работа с оттенком/насыщенностью немного сложнее, чем добавление значений RGB; если вы что-то пишете сами, я предлагаю вам взглянуть на преобразование HSV в RGB: http: //en.wikipedia.org/wiki/HSL_and_HSV # Converting_to_RGB – kappamaki
Вот чего я боялся. Теперь я думаю о простом создании прозрачного изображения с тенями/второстепенными деталями в черном и наложением его на желаемый цвет/цвет, так как мне нужно всего лишь до 5 цветов. – giraffee