1============ 2Introduction 3============ 4 5What is ezdxf 6------------- 7 8`ezdxf` is a `Python`_ interface to the :term:`DXF` (drawing interchange file) 9format developed by `Autodesk`_, `ezdxf` allows developers to read and modify 10existing DXF drawings or create new DXF drawings. 11 12The main objective in the development of `ezdxf` was to hide complex DXF details 13from the programmer but still support most capabilities of the :term:`DXF` 14format. Nevertheless, a basic understanding of the DXF format is required, also 15to understand which tasks and goals are possible to accomplish by using the the 16DXF format. 17 18Not all DXF features are supported yet, but additional features will be added in 19the future gradually. 20 21`ezdxf` is also a replacement for my `dxfwrite`_ and my `dxfgrabber`_ packages 22but with different APIs, for more information see also: :ref:`faq001` 23 24What ezdxf can't do 25------------------- 26 27- `ezdxf` is not a DXF converter: `ezdxf` can not convert between different 28 DXF versions, if you are looking for an appropriate application, try the 29 free `ODAFileConverter`_ from the `Open Design Alliance`_, which converts 30 between different DXF version and also between the DXF and the DWG file format. 31- `ezdxf` is not a CAD file format converter: `ezdxf` can not convert DXF files 32 to other CAD formats such as DWG 33- `ezdxf` is not a CAD kernel and does not provide high level functionality for 34 construction work, it is just an interface to the DXF file format. If you are 35 looking for a CAD kernel with `Python`_ scripting support, look at `FreeCAD`_. 36 37 38Supported Python Versions 39------------------------- 40 41`ezdxf` requires at least Python 3.7 and will be tested with the latest stable 42CPython version and the latest stable release of pypy3 during development. 43 44`ezdxf` is written in pure Python with optional Cython implementations of some 45low level math classes and requires only `pyparser` as additional library beside 46the Python Standard Library. 47`pytest` is required to run the unit and integration tests. Data to run the 48stress and audit test can not be provided, because I don't have the rights for 49publishing this DXF files. 50 51Supported Operating Systems 52--------------------------- 53 54`ezdxf` is OS independent and runs on all platforms which provide an appropriate 55Python interpreter (>=3.7). 56 57Supported DXF Versions 58---------------------- 59 60.. include:: dxfversion.inc 61 62`ezdxf` also reads older DXF versions but saves it as DXF R12. 63 64Embedded DXF Information of 3rd Party Applications 65-------------------------------------------------- 66 67The DXF format allows third-party applications to embed application-specific 68information. `ezdxf` manages DXF data in a structure-preserving form, but for 69the price of large memory requirement. Because of this, processing of DXF 70information of third-party applications is possible and will retained on 71rewriting. 72 73License 74------- 75 76`ezdxf` is licensed under the very liberal MIT-License_. 77 78.. _Autodesk: http://usa.autodesk.com/ 79 80.. _Open Design Alliance: https://www.opendesign.com/ 81 82.. _ODAFileConverter: https://www.opendesign.com/guestfiles/oda_file_converter 83 84.. _DXF: http://help.autodesk.com/view/OARX/2018/ENU/?guid=GUID-235B22E0-A567-4CF6-92D3-38A2306D73F3 85 86.. _Python: http://www.python.org 87 88.. _FreeCAD: https://www.freecadweb.org/ 89 90.. _MIT-License: http://opensource.org/licenses/mit-license.php 91 92.. _dxfwrite: https://pypi.org/project/dxfwrite/ 93 94.. _dxfgrabber: https://pypi.org/project/dxfgrabber/ 95