ISvgClipable.cs 1.36 KB
Newer Older
davescriven's avatar
davescriven committed
1
2
3
4
5
6
7
8
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using System.Drawing.Drawing2D;

namespace Svg
{
9
10
11
    /// <summary>
    /// Defines the methods and properties that an <see cref="SvgElement"/> must implement to support clipping.
    /// </summary>
davescriven's avatar
davescriven committed
12
13
    public interface ISvgClipable
    {
14
15
16
17
        /// <summary>
        /// Gets or sets the ID of the associated <see cref="SvgClipPath"/> if one has been specified.
        /// </summary>
        Uri ClipPath { get; set; }
18
        /// <summary>
19
20
21
22
        /// Specifies the rule used to define the clipping region when the element is within a <see cref="SvgClipPath"/>.
        /// </summary>
        SvgClipRule ClipRule { get; set; }
        /// <summary>
23
24
25
        /// Sets the clipping region of the specified <see cref="SvgRenderer"/>.
        /// </summary>
        /// <param name="renderer">The <see cref="SvgRenderer"/> to have its clipping region set.</param>
26
        void SetClip(SvgRenderer renderer);
27
28
29
30
        /// <summary>
        /// Resets the clipping region of the specified <see cref="SvgRenderer"/> back to where it was before the <see cref="SetClip"/> method was called.
        /// </summary>
        /// <param name="renderer">The <see cref="SvgRenderer"/> to have its clipping region reset.</param>
31
        void ResetClip(SvgRenderer renderer);
davescriven's avatar
davescriven committed
32
33
    }
}