SymbolEditor File Format

From KDE UserBase Wiki

Under Construction

This is a new page, currently under construction!

The SymbolEditor application was originally written to provide symbol libraries for the KXStitch application. If anyone else finds these symbol libraries useful, these are the file format used.

Versions of the format

There are currently two versions of the file format. Version 100 is deprecated and it is unlikely that any symbol libraries will exist in the wild. Version 101 is the current format.

Version 100

Format uses QDataStream::Qt_4_0

file {

char[15] containing 'KXStitchSymbols'

qint32 file_version

qint16 next_symbol_id

QMap<qint16 index, QPainterPath path> pathsMap

}

Version 101

Format uses QDataStream::Qt_4_0

file { char[15] containing 'KXStitchSymbols'

qint32 file_version

qint16 next_symbol_id

QMap<qint16 index, symbol> symbolMap

}

Symbol Definition

The symbol definition only has one version at the moment, version 100, which is defined as

Symbol {

QPainterPath path

bool filled

qreal lineWidth

qint32 capStyle converted to Qt::PenCapStyle

qint32 joinStyle converted to Qt::PenCapStyle

}