Пример #1
0
 private static bool IsFilled(SP.Painting.Paint paint)
 {
     if (paint is null)
     {
         return(false);
     }
     return(paint.Style == SP.Painting.PaintStyle.Fill || paint.Style == SP.Painting.PaintStyle.StrokeAndFill);
 }
Пример #2
0
        private static ShapeStyleViewModel ToStyle(SP.Painting.Paint paint, IFactory factory)
        {
            var style = factory.CreateShapeStyle("Style");

            if (paint is null)
            {
                return(style);
            }

            switch (paint.Shader)
            {
            case SP.Painting.Shaders.ColorShader colorShader:
                style.Stroke.Color = ToArgbColor(colorShader, factory);
                style.Fill.Color   = ToArgbColor(colorShader, factory);
                break;

            case SP.Painting.Shaders.LinearGradientShader linearGradientShader:
                // TODO:
                break;

            case SP.Painting.Shaders.TwoPointConicalGradientShader twoPointConicalGradientShader:
                // TODO:
                break;

            case SP.Painting.Shaders.PictureShader pictureShader:
                // TODO:
                break;

            default:
                break;
            }

            style.Stroke.Thickness = paint.StrokeWidth;

            style.Stroke.LineCap = ToLineCap(paint.StrokeCap);

            if (paint.PathEffect is SP.Painting.PathEffects.DashPathEffect dashPathEffect && dashPathEffect.Intervals is { })