A Python library and set of command line tools for extraction, parsing, and conversion of ESRI .lyr and .style files.
- RGB colors can be parsed, within a maximum of 1 unit difference in either the R/G/B components.
- Fill symbols
- complete support for Simple Fill layers
- Line symbols
- complete support for Simple Line layers
- near complete support for Cartographic Line layers, including custom dash patterns. Arrows cannot be decoded yet.
- Marker symbols
- complete support for Simple Marker layers
- complete support for Character Marker layers
bin_dump.pyConverts a binary.styledatabase row blob into a symbol and dumps the symbol properties to the consolestyle_dump.pyDumps the complete contents of an ESRI.styledatabase, printing symbol properties to the consolestyle_to_bin.pyExports the contents of an ESRI.styledatabase to individual.binbinary files, each containing an encoded version of a single symbolstyle_to_qgis_xml.pyConverts the contents of an ESRI.styledatabase to a QGIS 3.x Style.xmlfile, ready for importing direct into your QGIS style library (requires QGIS 3.x)
All tools require the command line mdbtools for handling the .style database files. Binaries of these can be downloaded from https://github.com/lsgunth/mdbtools-win, and they should be extracted and available in the Windows path.
SLYR also functions as a QGIS plugin (for QGIS >= 3.2). Just copy the whole slyr folder to your QGIS profile Python -> plugins path, launch QGIS and enable the plugin.
The plugin adds a new group to the Processing Toolbox for "SLYR", containing tools for conversion of style databases to QGIS symbol styles. Note that Windows users will first need to setup the path to the mdbtools binaries via Options - Processing - Providers - SLYR.
- And no, this won't be distributed by the normal QGIS plugin channel. It's provided "as-is", with no support offered whatsoever.
Some description of the .style binary format can be found in specs.md, although the most up-to-date reference is the Python parsing code itself.
