[Feature Proposal] PDF Import Improvements

Currently, importing a PDF file in Vectornator is quite an unpleasant process.


Despite the fact that Vectornator is marketed as letting you “Edit PDFs easily”, this process is not in fact very easy at all.

Stretching the truth


Once you’ve chosen a file, you have to wait an extremely long time for your document to appear in the grid, and there’s no feedback that your document is actually importing - you just have to hope it’s working. Additionally, if you use the share sheet to open the document, there’s no feedback to show you that the import’s even started!

Other gripes I have with the PDF import process:

  • All pages have to be imported - if you only wanted a couple of pages from that 100 page PDF, you have to import it and then manually remove all the unnecessary artboards, or use a 3rd-party app to split the PDF before import. Neither options are ideal.

  • Error messages are vague (if they even appear) - if something’s wrong with the PDF file, at best you’ll get a vague error message or the app will crash, at worst nothing happens at all.

  • No feedback or progress - you have no way to know if the import is stalled, the file is corrupt, or. Many a time I’ve force closed the app after importing a PDF because nothing seems to have happened after 5 minutes.

  • Embedded fonts aren’t used - if the font in the PDF has even a slightly different name to the one on your device, it’ll be substituted with Arial, all the time. See the music notation from a few months ago for some discussion on this.


Hence why I’m suggesting a redesign/rework of the PDF import experience. Here’s are two mockups I’ve created (which are by no means perfect) that address my concerns:

The core features I’m proposing are:

  • Filtering the pages that will be imported
  • The ability to import text as a path, using the embedded fonts in the PDF
  • Providing progress indicators, a log, and a way to cancel the import process

Proposed Features


Page Selection

Design thoughts:

  • Ideally similar to the iOS printing sheet in terms of gestures - you can tap on a page to select/deselect, and pinch out outwards to view an individual page in fullscreen
  • Should long drag-and-drop be allowed (to reorder pages), or should this gesture control page selection? (like in the iOS photos app)
    • Both could be an option, but could be confusing for new users
    • If allowing drag-and-drop, an “undo” or reset is probably needed
  • Should there be additional views? (e.g smaller or larger grid sizes, a list view)
  • Keyboard navigation could be tricky to get right here

Design thoughts:

  • Should accept a similar syntax to the “Print PDF” functionality in various browsers, including all of the examples in the mockup
  • Better icon choices are needed for “Select all/none” and “Invert selection”
  • Custom keypad could be handy for users without a hardware keyboard

Import Settings

Design thoughts:

  • Maybe show image previews of text vs path import
  • Radio buttons don’t make sense on iOS, could be better to use a selectable table view

Import Screen

Design thoughts:

  • This UI could also be used for SVG/AI/other import types
  • On macOS, this would be more suited to a dialog (similar to the file copy dialog)
  • Logs can viewed by the user, and should be recoverable if the app crashes as a result of an import error

Licensing

I, llui85, license this post and any edits under CC-BY 4.0. Additionally, I grant Linearity GmbH an irrevocable license to use any or all portions of this post in any way, shape or form to improve the “Vectornator” application. If you would like the original files used in this post, please email me.

Would someone with staff/moderator privileges be able to mark the post as wiki please? (I lost TL3 a little while ago because of inactivity).