我有一个项目来定制衣服,比如一件T恤,它有以下特点:
所以我的问题是:
我应该使用多个图像来模拟颜色变化。或者我应该使用QuartzCore(我不是QuartzCore的专家,但如果我必须使用它,我会学习)。或者有更好的方法吗?
谢谢。
答案 0 :(得分:0)
这样做的简单方法是将T恤图像渲染为CGContext,然后遍历行和列,并将显示“强”原色的像素更改为所需的色调。你会拍一张穿着鲜红色(或其他原色)T恤的人的照片,然后在你的代码中只更改红色具有高亮度和饱和度的像素(即“r”值超过某个阈值并且b和g组分很低)。
然后,修改后的图像看起来有点平坦,因为当您将像素更改为一个值(新色调)时,亮度不会有变化。为了使其更加真实,您可能希望使每个像素具有与之前相同的亮度。您可以通过从RGB来回转换为像HCL这样的颜色空间来实现此目的。 Apple有一个很好的颜色文档(在Mac部分),它解释了颜色空间(google'site:developer.apple.com“Color Spaces”')
要实现目标,您必须解决这些技术:
如果所有这些看起来都很困难,那么你必须为你想要的每种颜色都有不同的图像。