Export pipeline: tracking issue for PNG, SVG, PDF and font embedding #55

Open
opened 2026-09-05 15:10:42 +00:00 by ImBenji · 0 comments
Owner

Umbrella issue. The export pipeline had no board presence despite being the thing that turns a map into something a user can hand to somebody else.

What exists: lib/rendering/export/ - png.dart + png_stream_writer.dart, svg.dart + svg_draw_target.dart, pdf.dart + pdf_draw_target.dart, plus font collection (font_collect_target.dart, pdf_fonts.dart, svg_fonts.dart, google_font_source.dart) and export_bounds.dart. All three exporters drive the live CanvasPainter through the shared DrawTarget, so an export cannot silently drift from what the canvas shows - that class of bug is designed out rather than patched.

Covered by png_export_banding_test, svg_draw_target_test, pdf_draw_target_test, pdf_arc_join_seam_test, pdf_export_metadata_test, font_collect_target_test, svg_fonts_test, export_bounds_canvas_objects_test, export_dialog_widgets_test, export_progress_dialog_test.

Use this for export work that does not warrant its own issue. The one concrete open defect is filed separately: PNG export cropping.

Opened during the roadmap audit on 2026-09-05.

Umbrella issue. The export pipeline had no board presence despite being the thing that turns a map into something a user can hand to somebody else. What exists: `lib/rendering/export/` - `png.dart` + `png_stream_writer.dart`, `svg.dart` + `svg_draw_target.dart`, `pdf.dart` + `pdf_draw_target.dart`, plus font collection (`font_collect_target.dart`, `pdf_fonts.dart`, `svg_fonts.dart`, `google_font_source.dart`) and `export_bounds.dart`. All three exporters drive the live `CanvasPainter` through the shared `DrawTarget`, so an export cannot silently drift from what the canvas shows - that class of bug is designed out rather than patched. Covered by `png_export_banding_test`, `svg_draw_target_test`, `pdf_draw_target_test`, `pdf_arc_join_seam_test`, `pdf_export_metadata_test`, `font_collect_target_test`, `svg_fonts_test`, `export_bounds_canvas_objects_test`, `export_dialog_widgets_test`, `export_progress_dialog_test`. Use this for export work that does not warrant its own issue. The one concrete open defect is filed separately: PNG export cropping. Opened during the roadmap audit on 2026-09-05.
ImBenji added this to the Arcs & Angles project 2026-09-05 15:10:42 +00:00
ImBenji added the enhancement label 2026-09-05 15:13:49 +00:00
ImBenji added the area:rendering label 2026-09-05 15:14:56 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: IMBENJI.NET/Metro-Map-Maker#55