考虑这个令人钦佩的脚本绘制(圆形)渐变,
https://github.com/paiv/AngleGradientLayer/blob/master/AngleGradient/AngleGradientLayer.m
int w = CGRectGetWidth(rect);
int h = CGRectGetHeight(rect);
Run Code Online (Sandbox Code Playgroud)
然后
angleGradient(data, w, h ..
Run Code Online (Sandbox Code Playgroud)
它循环遍及所有这些
for (int y = 0; y < h; y++)
for (int x = 0; x < w; x++) {
Run Code Online (Sandbox Code Playgroud)
基本上设置颜色
*p++ = color;
Run Code Online (Sandbox Code Playgroud)
但是等等 - 这不是点,而不是像素吗?
你真的会在密集的屏幕上绘制物理像素吗?
这是一个问题:
假设设备的密度为4.像上面的代码一样绘制,但是,在位图上大四倍,然后把它放在矩形中?
这看起来很乱 - 但就是这样吗?