.. wxPython Phoenix documentation

   This file was generated by Phoenix's sphinx generator and associated
   tools, do not edit by hand.

   Copyright: (c) 2011-2020 by Total Control Software
   License:   wxWindows License

.. include:: headings.inc



.. _wx.SVGFileDC:

==========================================================================================================================================
|phoenix_title|  **wx.SVGFileDC**
==========================================================================================================================================

A :ref:`wx.SVGFileDC`  is a device context onto which graphics and text can be drawn, and the output produced as a vector file, in ``SVG`` format.          

This format can be read by a range of programs, including a Netscape plugin (Adobe) and the open source Inkscape program (`http://inkscape.org/ <http://inkscape.org/>`_). Full details are given in the ``W3C`` ``SVG`` recommendation (`http://www.w3.org/TR/SVG/ <http://www.w3.org/TR/SVG/>`_). 

The intention behind :ref:`wx.SVGFileDC`  is that it can be used to produce a file corresponding to the screen display context, :ref:`wx.SVGFileDC`, by passing the :ref:`wx.SVGFileDC`  as a parameter instead of a :ref:`wx.DC`. Thus the :ref:`wx.SVGFileDC`  is a write-only class. 

As the :ref:`wx.SVGFileDC`  is a vector format, raster operations like :meth:`~wx.SVGFileDC.GetPixel`  are unlikely to be supported. However, the ``SVG`` specification allows for raster files to be embedded in the ``SVG``, and so bitmaps, icons and blit operations in :ref:`wx.SVGFileDC`  are supported. By default only ``PNG`` format bitmaps are supported and these are saved as separate files in the same folder as the ``SVG`` file, however it is possible to change this behaviour by replacing the built in bitmap handler using :meth:`wx.SVGFileDC.SetBitmapHandler` . 

More substantial ``SVG`` libraries (for reading and writing) are available at `wxArt2D <http://wxart2d.sourceforge.net/>`_  and `wxSVG <http://wxsvg.sourceforge.net/>`_. 









|

|class_hierarchy| Class Hierarchy
=================================

.. raw:: html

   <div id="toggleBlock" onclick="return toggleVisibility(this)" class="closed" style="cursor:pointer;">
   <img id="toggleBlock-trigger" src="_static/images/closed.png"/>
   Inheritance diagram for class <strong>SVGFileDC</strong>:
   </div>
   <div id="toggleBlock-summary" style="display:block;"></div>
   <div id="toggleBlock-content" style="display:none;">
   <p class="graphviz">
   <center><img src="_static/images/inheritance/wx.SVGFileDC_inheritance.png" alt="Inheritance diagram of SVGFileDC" usemap="#dummy" class="inheritance"/></center>
   <script type="text/javascript">toggleVisibilityOnLoad(document.getElementById('toggleBlock'))</script>
   <map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.SVGFileDC.html" title="wx.SVGFileDC" alt="" coords="5,160,119,189"/> <area shape="rect" id="node2" href="wx.DC.html" title="wx.DC" alt="" coords="26,83,98,112"/> <area shape="rect" id="node3" href="wx.Object.html" title="wx.Object" alt="" coords="19,5,105,35"/> </map> 
   </p>
   </div>

|


|method_summary| Methods Summary
================================

================================================================================ ================================================================================
:meth:`~wx.SVGFileDC.__init__`                                                   Initializes a :ref:`wx.SVGFileDC`  with the given `filename`, `width`  and `height`  at `dpi`  resolution, and an optional `title`.
:meth:`~wx.SVGFileDC.Clear`                                                      Draws a rectangle the size of the ``SVG`` using the :meth:`wx.DC.SetBackground`   brush.
:meth:`~wx.SVGFileDC.CrossHair`                                                  Function not implemented in this DC class.
:meth:`~wx.SVGFileDC.DestroyClippingRegion`                                      Destroys the current clipping region so that none of the DC is clipped.
:meth:`~wx.SVGFileDC.EndDoc`                                                     Function not implemented in this DC class.
:meth:`~wx.SVGFileDC.EndPage`                                                    Function not implemented in this DC class.
:meth:`~wx.SVGFileDC.FloodFill`                                                  Function not implemented in this DC class.
:meth:`~wx.SVGFileDC.GetDepth`                                                   Function not implemented in this DC class.
:meth:`~wx.SVGFileDC.GetLogicalFunction`                                         Function not implemented in this DC class.
:meth:`~wx.SVGFileDC.GetPixel`                                                   Function not implemented in this DC class.
:meth:`~wx.SVGFileDC.SetBitmapHandler`                                           Replaces the default bitmap handler with `handler`.
:meth:`~wx.SVGFileDC.SetClippingRegion`                                          Sets the clipping region for this device context to the intersection of the given region described by the parameters of this method and the previously set clipping region.
:meth:`~wx.SVGFileDC.SetLogicalFunction`                                         Function not implemented in this DC class.
:meth:`~wx.SVGFileDC.SetPalette`                                                 Function not implemented in this DC class.
:meth:`~wx.SVGFileDC.SetShapeRenderingMode`                                      Set the shape rendering mode of the generated ``SVG``.
:meth:`~wx.SVGFileDC.StartDoc`                                                   Function not implemented in this DC class.
:meth:`~wx.SVGFileDC.StartPage`                                                  Function not implemented in this DC class.
================================================================================ ================================================================================


|


|property_summary| Properties Summary
=====================================

================================================================================ ================================================================================
:attr:`~wx.SVGFileDC.Depth`                                                      See :meth:`~wx.SVGFileDC.GetDepth`
:attr:`~wx.SVGFileDC.LogicalFunction`                                            See :meth:`~wx.SVGFileDC.GetLogicalFunction` and :meth:`~wx.SVGFileDC.SetLogicalFunction`
================================================================================ ================================================================================


|


|api| Class API
===============


.. class:: wx.SVGFileDC(DC)

   **Possible constructors**::

       SVGFileDC(filename, width=320, height=240, dpi=72, title="")
       
   
   A SVGFileDC is a device context onto which graphics and text can be
   drawn, and the output produced as a vector file, in ``SVG`` format.



   .. method:: __init__(self, filename, width=320, height=240, dpi=72, title="")

      Initializes a :ref:`wx.SVGFileDC`  with the given `filename`, `width`  and `height`  at `dpi`  resolution, and an optional `title`.                  

      The title provides a readable name for the ``SVG`` document.                  


      :param `filename`: 
      :type `filename`: string
      :param `width`: 
      :type `width`: int
      :param `height`: 
      :type `height`: int
      :param `dpi`: 
      :type `dpi`: float
      :param `title`: 
      :type `title`: string







   .. method:: Clear(self)

      Draws a rectangle the size of the ``SVG`` using the :meth:`wx.DC.SetBackground`   brush.                   





   .. method:: CrossHair(self, x, y)

      Function not implemented in this DC class.                  


      :param `x`: 
      :type `x`: int
      :param `y`: 
      :type `y`: int







   .. method:: DestroyClippingRegion(self)

      Destroys the current clipping region so that none of the DC is clipped.                  

      Since intersections arising from sequential calls to SetClippingRegion are represented with nested ``SVG`` group elements (<g>), all such groups are closed when DestroyClippingRegion is called.                   





   .. method:: EndDoc(self)

      Function not implemented in this DC class.                   





   .. method:: EndPage(self)

      Function not implemented in this DC class.                   





   .. method:: FloodFill(self, x, y, colour, style=FLOOD_SURFACE)

      Function not implemented in this DC class.                  


      :param `x`: 
      :type `x`: int
      :param `y`: 
      :type `y`: int
      :param `colour`: 
      :type `colour`: wx.Colour
      :param `style`: 
      :type `style`: wx.FloodFillStyle




      :rtype: `bool`








   .. method:: GetDepth(self)

      Function not implemented in this DC class.                  

      :rtype: `int`








   .. method:: GetLogicalFunction(self)

      Function not implemented in this DC class.                  

      :rtype: :ref:`wx.RasterOperationMode`








   .. method:: GetPixel(self, x, y, colour)

      Function not implemented in this DC class.                  


      :param `x`: 
      :type `x`: int
      :param `y`: 
      :type `y`: int
      :param `colour`: 
      :type `colour`: wx.Colour




      :rtype: `bool`








   .. method:: SetBitmapHandler(self, handler)

      Replaces the default bitmap handler with `handler`.                  

      By default, an object of :ref:`wx.SVGBitmapFileHandler`  class is used as bitmap handler. You may want to replace it with an object of predefined :ref:`wx.SVGBitmapEmbedHandler`  class to embed the bitmaps in the generated ``SVG`` instead of storing them in separate files like this: ::

          mySVGFileDC.SetBitmapHandler(wx.SVGBitmapEmbedHandler())



      or derive your own bitmap handler class and use it if you need to customize the bitmap handling further. 




      :param `handler`: The new bitmap handler. If non-NULL, this object takes ownership of this handler and will delete it when it is not needed any more.  
      :type `handler`: wx.SVGBitmapHandler




                  



      .. versionadded:: 4.1/wxWidgets-3.1.0  
     








   .. method:: SetClippingRegion(self, x, y, width, height)

      Sets the clipping region for this device context to the intersection of the given region described by the parameters of this method and the previously set clipping region.                  

      Clipping is implemented in the ``SVG`` output using ``SVG`` group elements (<g>), with nested group elements being used to represent clipping region intersections when two or more calls are made to :meth:`SetClippingRegion` .                  


      :param `x`: 
      :type `x`: int
      :param `y`: 
      :type `y`: int
      :param `width`: 
      :type `width`: int
      :param `height`: 
      :type `height`: int







   .. method:: SetLogicalFunction(self, function)

      Function not implemented in this DC class.                  


      :param `function`: 
      :type `function`: wx.RasterOperationMode







   .. method:: SetPalette(self, palette)

      Function not implemented in this DC class.                  


      :param `palette`: 
      :type `palette`: wx.Palette







   .. method:: SetShapeRenderingMode(self, renderingMode)

      Set the shape rendering mode of the generated ``SVG``.                  

      All subsequent drawing calls will have this rendering mode set in the ``SVG`` file. 

      The default mode is ``wx.SVG_SHAPE_RENDERING_AUTO``. 

                


      :param `renderingMode`: 
      :type `renderingMode`: wx.SVGShapeRenderingMode






      .. versionadded:: 4.1/wxWidgets-3.1.3  
     








   .. method:: StartDoc(self, message)

      Function not implemented in this DC class.                  


      :param `message`: 
      :type `message`: string




      :rtype: `bool`








   .. method:: StartPage(self)

      Function not implemented in this DC class.                   





   .. attribute:: Depth

      See :meth:`~wx.SVGFileDC.GetDepth`


   .. attribute:: LogicalFunction

      See :meth:`~wx.SVGFileDC.GetLogicalFunction` and :meth:`~wx.SVGFileDC.SetLogicalFunction`

