Skip to content

Instantly share code, notes, and snippets.

Last active August 21, 2021 19:03
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
What would you like to do?
Google Summer of Code 2021 Final Report

Google Summer of Code 2021

Student: Anshudhar Kumar Singh (@SlayerAnsh)

Organization: Inkscape

Project: Improvement in Export Options


Major goal for this project was refactoring Export Dialog UI and adding preview feature in it.

The Work was mainly divided into:

  • UI Redesign of Export Dialog
  • Refactor Raster Export
  • Extend SVG export to Individual Objects
  • Add Preview Option in Export Dialog


  • Change UI of export Dialog
  • Create Svg export for individual objects
  • Refactor Export
  • Add Layer in Batch Export
  • Add Multiple Export Option in Batch Export
  • Add Preview
  • Add Dynamic Selection Output in Batch Export
  • Add on-canvas Indicator for export bounding box

New Dialog Preview

Batch Export

Single Export


Commits in Ascending order.

Commit Description
9051b639c0 Prototype using glade
56fd0fb3c6 Scrolled with fixed header and footer
d3ba221822 added remove scroll function
cf6f5a2eba Last commit before dropping glade
72830d4e53 Shifted from Glade
a95564d7bf Back to glade
2d125ff117 Connected Signal Part 1
2b06a77d5d added extention list
1acb8214c7 Single Image Export Signals Connected
f5f3bd5e4d adding export raster
0ec4b20a23 trying to separate code
b8f51529f6 separated pages and created helper
2d4f4d549c Export connected
743c2f1cc4 Added stop to prevent creating corrupted file at file location
99ef40d9bc connected browse with icon click
e654ce5561 Added SVG export
ece0cfdc09 added hide selected option
719072cba1 added batch export with multiple options
3334eca939 Resolved copy creation in batch export
6752a7df2c WIP: ading list selector UI to batch export
bf01c4e0ee Changed related to new signal
62185347e5 Added selector for batch export
3803fda526 Added vector export to batch
a8bfd6c435 WIP:Added preview file
2a6a9bc08b added preview in single export
c474b52eb6 Preview Update on Hide All and Crash resolve
48bfceed8c Export preview crash resolve and Batch Export Preview
f4d5cc9e16 Ui cleanup and review changes
a086e47936 scrollbar visibility inside batch preview
3e0e1b34a8 Clang Tidy fixes
b510f50ae8 Dpi 0 decimal, Batch Preview Style, Single Preview always on

Next Steps

  • Adding on Canvas Indicator
  • Adding Checkbox background to Preview
  • Adding other extensions in export
  • Adding Select All option in batch export
  • Check for translations


  • Handle export in '.png' using temp files. Aborting export in '.png' coz broken file in the path mainly becoz '.png' files are created directly if no extension is provided (in case of extensions we use temp files)
  • Connect selection changed signals properly
  • spin button doesn't support * and ctrl + Z
  • layer rename doesn't immediately show in export dialog
  • mystery bug where drop down inside collapsed advance option get activated.

Useful links

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment