public void StrokeAndFill(){ MetaPen pen = state.CurrentPen; MetaBrush brush = state.CurrentBrush; int penStyle = pen.Style; int brushStyle = brush.Style; if (penStyle == MetaPen.PS_NULL) { cb.ClosePath(); if (state.PolyFillMode == MetaState.ALTERNATE) { cb.EoFill(); } else { cb.Fill(); } } else { bool isBrush = (brushStyle == MetaBrush.BS_SOLID || (brushStyle == MetaBrush.BS_HATCHED && state.BackgroundMode == MetaState.OPAQUE)); if (isBrush) { if (state.PolyFillMode == MetaState.ALTERNATE) cb.ClosePathEoFillStroke(); else cb.ClosePathFillStroke(); } else { cb.ClosePathStroke(); } } }
public void StrokeAndFill() { var pen = _state.CurrentPen; var brush = _state.CurrentBrush; var penStyle = pen.Style; var brushStyle = brush.Style; if (penStyle == MetaPen.PS_NULL) { Cb.ClosePath(); if (_state.PolyFillMode == MetaState.Alternate) { Cb.EoFill(); } else { Cb.Fill(); } } else { var isBrush = (brushStyle == MetaBrush.BS_SOLID || (brushStyle == MetaBrush.BS_HATCHED && _state.BackgroundMode == MetaState.Opaque)); if (isBrush) { if (_state.PolyFillMode == MetaState.Alternate) { Cb.ClosePathEoFillStroke(); } else { Cb.ClosePathFillStroke(); } } else { Cb.ClosePathStroke(); } } }