gpt4 book ai didi

ios - 用颜色填充 CGBitmapContext

转载 作者:行者123 更新时间:2023-11-28 21:01:32 24 4
gpt4 key购买 nike

我正在尝试用纯红色填充 CGBitmapContext 并获取 CGImgRef,但图像是全透明的。这是代码

CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
CGContextRef context = CGBitmapContextCreate(NULL,
1,
1,
8,
0,
colorSpace,
kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);
CGFloat components[] = {1.0,0.0,0.0,1.0};
CGContextSetFillColor(context, components);
CGContextFillRect(context, CGRectMake(0, 0, 1, 1));
CGImageRef imgRef = CGBitmapContextCreateImage(context);

请不要推荐使用 UIBezierPaths 和其他 UIKit 东西。我需要使用 CoreGraphics。

最佳答案

问题是您忘记设置填充颜色空间。您必须这样做才能使 CGContextSetFillColor 正常工作(因为这会告诉它期望有多少组件以及如何解释它们)。这有效:

CGFloat components[] = {1,0,0,1};
CGContextSetFillColorSpace(context, colorSpace); // <-- this was missing
CGContextSetFillColor(context, components);
// and now fill ...

关于ios - 用颜色填充 CGBitmapContext,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48478655/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com