diff options
author | jaseg <git@jaseg.net> | 2019-09-26 19:45:54 +0200 |
---|---|---|
committer | jaseg <git@jaseg.net> | 2019-09-26 19:45:54 +0200 |
commit | b2eb56076d47af08a11e10fa53446a00b849a13c (patch) | |
tree | 4537c06e2e9bc5b78a731231e6c049c8cd5f376c /support/inkscape/__main__.py | |
parent | 82b88f920a85487372cc6e0b46633e4aa328eb69 (diff) | |
download | pogojig-b2eb56076d47af08a11e10fa53446a00b849a13c.tar.gz pogojig-b2eb56076d47af08a11e10fa53446a00b849a13c.tar.bz2 pogojig-b2eb56076d47af08a11e10fa53446a00b849a13c.zip |
Pogojig mostly done: KiCAD export works
Diffstat (limited to 'support/inkscape/__main__.py')
-rw-r--r-- | support/inkscape/__main__.py | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/support/inkscape/__main__.py b/support/inkscape/__main__.py deleted file mode 100644 index 29ac745..0000000 --- a/support/inkscape/__main__.py +++ /dev/null @@ -1,64 +0,0 @@ -import os, shutil -from lib import util -from . import effect, inkscape - - -def _unfuck_svg_document(temp_svg_path): - """ - Unfucks an SVG document so is can be processed by the better_dxf_export - plugin (or what's left of it). - """ - command_line = inkscape.InkscapeCommandLine(temp_svg_path) - layers = command_line.layers - - command_line.apply_to_document('LayerUnlockAll', 'LayerShowAll') - - layer_copies = [] - - for i in layers: - layer_copy = command_line.duplicate_layer(i) - layer_copies.append(layer_copy) - - command_line.apply_to_layer_content(layer_copy, 'ObjectToPath') - command_line.apply_to_layer_content(layer_copy, 'SelectionUnGroup') - - if not i.use_paths: - command_line.apply_to_layer_content(layer_copy, 'StrokeToPath') - command_line.apply_to_layer_content(layer_copy, 'SelectionUnion') - - for original, copy in zip(layers, layer_copies): - command_line.clear_layer(original) - command_line.move_content(copy, original) - command_line.delete_layer(copy) - - command_line.apply_to_document('FileSave', 'FileClose', 'FileQuit') - - command_line.run() - - -@util.main -def main(in_path, out_path): - try: - _, out_suffix = os.path.splitext(out_path) - - effect.ExportEffect.check_document_units(in_path) - - with util.TemporaryDirectory() as temp_dir: - temp_svg_path = os.path.join(temp_dir, os.path.basename(in_path)) - - shutil.copyfile(in_path, temp_svg_path) - - _unfuck_svg_document(temp_svg_path) - - export_effect = effect.ExportEffect() - export_effect.affect(args=[temp_svg_path], output=False) - - with open(out_path, 'w') as file: - if out_suffix == '.dxf': - export_effect.write_dxf(file) - elif out_suffix == '.asy': - export_effect.write_asy(file) - else: - raise Exception('Unknown file type: {}'.format(out_suffix)) - except util.UserError as e: - raise util.UserError('While processing {}: {}', in_path, e) |