PixelColor
🎨. PixelColor 是一个使用 Swift 和 SwiftUI 的像素颜色扩展。
要求
iOS 目标 | macOS 目标 | Xcode 版本 | Swift 版本 |
---|---|---|---|
iOS 10.0+ | macOS 10.13+ | Xcode 10.0+ | Swift 5.0+ |
使用
创建(十六进制字符串)
首先,提供用于使用十六进制字符串或值创建颜色的实用初始化器
let color = UIColor.init(hex: "#3498DB")
// equivalent to
// color = UIColor.init(hex: 0x3498DB)
为了平台无关性,可以使用别名 CrossPlatformColor
let color = CrossPlatformColor.init(hex: "#3498DB")
// On iOS, WatchOS or tvOS, equivalent to
// color = UIColor.init(hex: "#3498DB")
// On OSX, equivalent to
// color = NSColor.init(hex: "#3498DB")
您还可以使用多个方法,如 toHex
,toRGBA
等,非常容易地检索 RGBA 值和组件。
SwiftUI
从 v5 版本开始,也支持创建和操作颜色的基本方法。
let color = Color.init(hex: "#3498DB")
变暗 & 变亮
这两个将根据接收器的亮度调整创建一个新的像素颜色。
let pixel = PixelColor.init(hex: "#C0392B")
let lighter = pixel.lighter()
// equivalent to
// lighter = pixel.lighter(amount: 0.2)
let darker = pixel.darkened()
// equivalent to
// darker = pixel.darker(amount: 0.2)
饱和度、去饱和度 & 灰度
这些将调整像素颜色对象的饱和度,类似于 darkened
和 lighter
调整亮度。
同样,您需要使用介于 0 和 1 之间的值。
let pixel = PixelColor.init(hex: "#C0392B")
let saturated = pixel.saturated()
// equivalent to
// saturated = pixel.saturated(amount: 0.2)
let desaturated = pixel.desaturated()
// equivalent to
// desaturated = pixel.desaturated(amount: 0.2)
// equivalent to
// let grayscaled = pixel.grayscaled(mode: .weighted)
let grayscaled = pixel.grayscaled()
调整色调 & 补色
这些调整颜色的色调值,方式类似于其他方法。同样,它需要一个介于 0 和 1 之间的值来更新值。
let pixel = PixelColor.init(hex: "#C0392B")
// Hue values are in degrees
let adjustHue = pixel.adjustedHue(amount: 45)
let complemented = pixel.complemented()
// equivalent to
// complemented = pixel.adjustedHue(amount: 180)
着色 & 阴影
着色是将像素颜色与白色混合,而阴影是将像素颜色与黑色混合。
同样,需要一个介于 0 和 1 之间的值来更新值。
let pixel = PixelColor.init(hex: "#C0392B")
let tinted = pixel.tinted()
// equivalent to
// tinted = pixel.tinted(amount: 0.2)
let shaded = pixel.shaded()
// equivalent to
// shaded = pixel.shaded(amount: 0.2)
反转
这可以反转像素颜色对象。红色、绿色和蓝色值被反转,而不改变不透明度。
let pixel = PixelColor.init(hex: "#C0392B")
let inverted = pixel.inverted()
混合
这可以将给定的像素颜色与接收器混合。
它取每个 RGB 组分的平均值,可选地按照给定的百分比(在 0 和 1 之间的值)加权。
let pixel = PixelColor.init(hex: "#C0392B")
let mixed = pixel.mixed(other: .blue)
// equivalent to
// mixed = pixel.mixed(weight: 0.5, other: .blue)
// or
// mixed = pixel.mixed(in: .rgb, weight: 0.5, other: .blue)
CocoaPods
- 如果您想导入 PixelColor 模块,您需要在 Podfile 中添加
pod 'PixelColor'
Swift 包管理器
Swift 包管理器 是一个用于管理 Swift 代码分发的工具。它与 Swift 构建设置集成,以自动执行下载、编译和链接依赖项的过程。
需要 Xcode 11+ 来使用 Swift 包管理器构建 PixelColor。
要使用 Swift 包管理器将 PixelColor 集成到您的 Xcode 项目中,将它添加到 Package.swift
中的 dependencies 值。
dependencies: [
.package(url: "https://github.com/yangKJ/PixelColor.git", branch: "master"),
]
备注
一般过程几乎像这样,演示也很详细,您可以自己查看。🎷
提示:如果您觉得有帮助,请为我加星。如果您有任何问题或需求,也可以发起。
谢谢。🎇
关于作者
- 🎷 电子邮件地址: [email protected] 🎷
- 🎸 GitHub 地址: yangKJ 🎸
给我买杯咖啡或在我的 GitHub 上支持我。

支付宝或微信。谢谢。
许可证
PixelColor遵循MIT许可证。有关更多信息,请参阅LICENSE文件。