//-------------------------------------------------------------------- public override void BlendHLine(int x1, int y, int x2, RGBA_Bytes c, byte cover) { int len = x2 - x1 + 1; if (cover == CoverFull) { ReAllocSpan(len); unsafe { fixed(byte *pBuffer = m_span.Array) { m_mask.CombineHSpanFullCover(x1, y, pBuffer, (int)len); m_pixf.BlendSolidHSpan(x1, y, (uint)len, c, pBuffer); } } } else { InitSpan(len, cover); unsafe { fixed(byte *pBuffer = m_span.Array) { m_mask.CombineHSpan(x1, y, pBuffer, (int)len); m_pixf.BlendSolidHSpan(x1, y, (uint)len, c, pBuffer); } } } }