sw_engine rle: ++ precise alpha in anti-aliasing

could loss 1 pixel since it divides 255 values by 256.
This commit is contained in:
Hermet Park 2021-05-21 19:56:39 +09:00
parent edaafd99b3
commit d49e91f683

View file

@ -649,7 +649,7 @@ SwSpan* _intersectSpansRegion(const SwRleData *clip, const SwRleData *targetRle,
out->x = sx1 > cx1 ? sx1 : cx1;
out->len = (sx2 < cx2 ? sx2 : cx2) - out->x;
out->y = spans->y;
out->coverage = (uint8_t)((spansCorverage * clipSpansCoverage) >> 8);
out->coverage = (uint8_t)(((spansCorverage * clipSpansCoverage) + 0xff) >> 8);
++out;
--spanCnt;
}