interface Infragistics.Documents.Report.ICanvas
   inherits Infragistics.Documents.Graphics.IGraphics:

   def public property Width as Infragistics.Documents.Report.Width
      get.
      set.

   def public property Height as Infragistics.Documents.Report.Height
      get.
      set.

   def public property Borders as Infragistics.Documents.Report.Borders
      get.
      set.

   def public property Margins as Infragistics.Documents.Report.Margins
      get.
      set.

   def public property Paddings as Infragistics.Documents.Report.Paddings
      get.
      set.

   def public property Background as Infragistics.Documents.Report.Background
      get.
      set.

   def public property Parent as System.Object
      get.

   def public property Font as Infragistics.Documents.Graphics.Font
      get.
      set.

   def public property Brush as Infragistics.Documents.Graphics.Brush
      get.
      set.

   def public property Pen as Infragistics.Documents.Graphics.Pen
      get.
      set.

   def public property FontMetrics as Infragistics.Documents.Graphics.FontMetrics
      get.

   def public property Transformation as Infragistics.Documents.Graphics.Matrix
      get.

   def public property HyperlinkStarted as logical
      get.

   def public property HyperlinkPaused as logical
      get.

   def public property TextPosition as Infragistics.Documents.Graphics.Point
      get.
      set.

   def public property CharSpacing as decimal
      get.
      set.

   def public property AlternateFill as logical
      get.
      set.

   method public System.Drawing.Graphics CreateGraphics().

   method public void SaveClip(input x as decimal, input y as decimal, input width as decimal, input height as decimal).

   method public void RestoreClip().

   method public void SaveState().

   method public void RestoreState().

   method public void Transform(input matrix as Infragistics.Documents.Graphics.Matrix).

   method public void Translate(input offsetX as decimal, input offsetY as decimal).

   method public void Rotate(input centerX as decimal, input centerY as decimal, input angle as decimal).

   method public void Scale(input scaleX as decimal, input scaleY as decimal).

   method public void Shear(input shearX as decimal, input shearY as decimal).

   method public void Skew(input skewX as decimal, input skewY as decimal).

   method public void StartHyperlink(input reference as character).

   method public void StartHyperlink(input pageIndex as integer, input x as decimal, input y as decimal).

   method public void PauseHyperlink().

   method public void ResumeHyperlink().

   method public void EndHyperlink().

   method public void AddHyperlinkArea(input x as decimal, input y as decimal, input width as decimal, input height as decimal).

   method public decimal GetCharWidth(input ch as character).

   method public decimal GetStringWidth(input text as character).

   method public void DrawString(input text as character).

   method public void DrawString(input x as decimal, input y as decimal, input text as character).

   method public void DrawSpacing(input width as decimal).

   method public void DrawRectangle(input x as decimal, input y as decimal, input width as decimal, input height as decimal).

   method public void FillRectangle(input x as decimal, input y as decimal, input width as decimal, input height as decimal).

   method public void ClipRectangle(input x as decimal, input y as decimal, input width as decimal, input height as decimal).

   method public void DrawRectangle(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input mode as Infragistics.Documents.Graphics.PaintMode).

   method public void DrawRoundedRect(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input ew as decimal, input eh as decimal).

   method public void FillRoundedRect(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input ew as decimal, input eh as decimal).

   method public void ClipRoundedRect(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input ew as decimal, input eh as decimal).

   method public void DrawRoundedRect(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input ew as decimal, input eh as decimal, input mode as Infragistics.Documents.Graphics.PaintMode).

   method public void DrawLine(input x1 as decimal, input y1 as decimal, input x2 as decimal, input y2 as decimal).

   method public void DrawLines(input points as Infragistics.Documents.Graphics.Point extent).

   method public void DrawPolygon(input points as Infragistics.Documents.Graphics.Point extent).

   method public void FillPolygon(input points as Infragistics.Documents.Graphics.Point extent).

   method public void ClipPolygon(input points as Infragistics.Documents.Graphics.Point extent).

   method public void DrawPolygon(input points as Infragistics.Documents.Graphics.Point extent, input mode as Infragistics.Documents.Graphics.PaintMode).

   method public void DrawEllipse(input x as decimal, input y as decimal, input width as decimal, input height as decimal).

   method public void FillEllipse(input x as decimal, input y as decimal, input width as decimal, input height as decimal).

   method public void ClipEllipse(input x as decimal, input y as decimal, input width as decimal, input height as decimal).

   method public void DrawEllipse(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input mode as Infragistics.Documents.Graphics.PaintMode).

   method public void DrawArc(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal).

   method public void FillArc(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal).

   method public void ClipArc(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal).

   method public void DrawArc(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal, input mode as Infragistics.Documents.Graphics.PaintMode).

   method public void DrawPie(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal).

   method public void FillPie(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal).

   method public void ClipPie(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal).

   method public void DrawPie(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal, input mode as Infragistics.Documents.Graphics.PaintMode).

   method public void DrawChord(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal).

   method public void FillChord(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal).

   method public void ClipChord(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal).

   method public void DrawChord(input x as decimal, input y as decimal, input width as decimal, input height as decimal, input startAngle as decimal, input endAngle as decimal, input mode as Infragistics.Documents.Graphics.PaintMode).

   method public void DrawCurve(input points as Infragistics.Documents.Graphics.Point extent, input tension as decimal).

   method public void DrawClosedCurve(input points as Infragistics.Documents.Graphics.Point extent, input tension as decimal).

   method public void FillClosedCurve(input points as Infragistics.Documents.Graphics.Point extent, input tension as decimal).

   method public void ClipClosedCurve(input points as Infragistics.Documents.Graphics.Point extent, input tension as decimal).

   method public void DrawClosedCurve(input points as Infragistics.Documents.Graphics.Point extent, input tension as decimal, input mode as Infragistics.Documents.Graphics.PaintMode).

   method public void DrawBezier(input x1 as decimal, input y1 as decimal, input x2 as decimal, input y2 as decimal, input x3 as decimal, input y3 as decimal, input x4 as decimal, input y4 as decimal).

   method public void DrawBeziers(input points as Infragistics.Documents.Graphics.Point extent).

   method public void FillBeziers(input points as Infragistics.Documents.Graphics.Point extent).

   method public void ClipBeziers(input points as Infragistics.Documents.Graphics.Point extent).

   method public void DrawBeziers(input points as Infragistics.Documents.Graphics.Point extent, input mode as Infragistics.Documents.Graphics.PaintMode).

   method public void StartShape(input mode as Infragistics.Documents.Graphics.PaintMode).

   method public void StartShape(input mode as Infragistics.Documents.Graphics.PaintMode, input clipToBounds as logical).

   method public void MoveTo(input x as decimal, input y as decimal).

   method public void LineTo(input x as decimal, input y as decimal).

   method public void CurveTo(input x1 as decimal, input y1 as decimal, input x2 as decimal, input y2 as decimal, input x3 as decimal, input y3 as decimal).

   method public void ClosePath().

   method public void EndShape().

   method public void DrawImage(input image as Infragistics.Documents.Graphics.Image, input x as decimal, input y as decimal, input width as decimal, input height as decimal).

   method public void DrawImage(input image as Infragistics.Documents.Graphics.Image, input x as decimal, input y as decimal, input width as decimal, input height as decimal, input transparentColor as Infragistics.Documents.Graphics.Color).

   method public void DrawImage(input image as Infragistics.Documents.Graphics.Image, input x as decimal, input y as decimal, input width as decimal, input height as decimal, input alpha as decimal).

   method public void DrawImage(input image as Infragistics.Documents.Graphics.Image, input x as decimal, input y as decimal, input width as decimal, input height as decimal, input transparentColor as Infragistics.Documents.Graphics.Color, input alpha as decimal).

   method public void Flush().

end interface.
