Printing in Capo: Should be Easy, Right?
• Chris Liscio
• Chris Liscio
I cannot express how big of a deal it is for Capo to let users print chords. It is easily the most-requested feature.
Fortunately for my users, I am not one of those people that says "printed charts are silly" and ignores the feedback. Heck, I bought a binding machine and printed most of the research papers I read during grad school. But unfortunately for my users, I care a lot about quality printouts, and I want to get this right. So that's partly why it's taken so long for me to make progress on this.
What my users often ask for is a printout of the Chords Song View—they can see the chords, so just put that on paper. But that would actually be disappointing: chords would get cut in half across pages, and the paper would be filled with lots of wasted space.
And even if I wanted to do exactly what the users asked, I hit some snags along the way that made it impossible: mixed SwiftUI and AppKit drawing cannot be printed to a PDF context. Fortunately, this technical limitation forced me to work on a new chord layout and rendering pipeline just for printing, and now I have some flexibility in how I approach this.
I have a really bold vision for Capo's printed output, and while I might not achieve everything on my wish list in the first iteration, I think that I can produce something that will please the people who requested the feature. Sure, it's not the full vision. But it's useful, and it's a realistic goal.
It will still be a little while until this is ready to see the light of day, but I feel so much closer than I ever did before.