ActiveReports 6 Online Help
Draw Method
Example 

Renders the page's content to the specified Graphics object at the specified coordinates.
Overload List
OverloadDescription
Draw(Graphics,RectangleF)Renders the page's content to the specified Graphics object at the specified coordinates.  
Draw(Graphics,RectangleF,Single,Single,Boolean)For internal use.  
Draw(Graphics,RectangleF,TextRenderingHint,Single,Single)

For internal use.

 
Remarks
You can use this method to render the page content scaled to a rectangle.  This allows you to create thumbnail images of the pages or print multiple pages on a single sheet of paper.
Example
private void arScale()
{    
    aPage = new DataDynamics.ActiveReports.Document.Page();    
    DataDynamics.ActiveReports.Interop.SystemPrinter m_myARPrinter = new DataDynamics.        
        ActiveReports.Interop.SystemPrinter();    
    m_myARPrinter.StartJob("Test Printer");    
    System.Drawing.RectangleF rec;    
    float xOffSet = m_myARPrinter.PhysicalOffsetX/m_myARPrinter.Graphics.DpiX;    
    float yOffSet = m_myARPrinter.PhysicalOffsetY/m_myARPrinter.Graphics.DpiY;    
    float adjustedWidth = (aPage.Width/3)-(xOffSet*2);    
    float xPos = 0;    
    int nCount = rpt.Document.Pages.Count;    
    m_myARPrinter.StartPage();    
    for(int i=0; i < nCount; i++)    
    {        
        aPage = rpt.Document.Pages[i];        
        m_myARPrinter.Graphics.PageUnit = System.Drawing.GraphicsUnit.Pixel;        
        rec = System.Drawing.RectangleF.FromLTRB(xOffSet+xPos, yOffSet,(xOffSet+xPos)+            
            adjustedWidth,yOffSet+adjustedWidth);        
        xPos = adjustedWidth + xPos;        
        aPage.Draw(m_myARPrinter.Graphics,rec);          
    }    
    m_myARPrinter.EndPage();    
    m_myARPrinter.EndJob();
}
Private Sub arScale()    
    m_myARPrinter.StartJob("Test Printer")    
    Dim aPage As New DataDynamics.ActiveReports.Document.Page()    
    Dim rec As New System.Drawing.RectangleF()    
    Dim xOffSet As Single    
    Dim yOffSet As Single    
    Dim adjustedWidth As Single    
    Dim xPos As Single        
    xOffSet = m_myARPrinter.PhysicalOffsetX / m_myARPrinter.Graphics.DpiX    
    yOffSet = m_myARPrinter.PhysicalOffsetY / m_myARPrinter.Graphics.DpiY    
    adjustedWidth = (aPage.Width / 3) - (xOffSet / 2)    
    xPos = 0    
    Dim nCount As Integer    
    nCount = rpt.Document.Pages.Count    
    m_myARPrinter.StartPage()    
    For i = 0 To nCount - 1        
        aPage = rpt.Document.Pages(i)        
        m_myARPrinter.Graphics.PageUnit = GraphicsUnit.Pixel        
        rec = System.Drawing.RectangleF.FromLTRB(xOffSet + xPos, yOffSet, (xOffSet + xPos) + _            
            adjustedWidth, yOffSet + adjustedWidth)        
        xPos = adjustedWidth + xPos        
        aPage.Draw(m_myARPrinter.Graphics, rec)    
    Next    
    m_myARPrinter.EndPage()    
    m_myARPrinter.EndJob()
End Sub
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

Page Class
Page Members

Send Feedback