Printable was created to address my own frustrations, but judging by the growing number of users, other people are finding it useful as well.
General Function
The Printable toolbar button drops down a panel listing various changes you can make to the page. The main ones are as follows:
Overriding "unbreakable" display styles.
When Firefox encounters a large content block styled using "display: flex" it won't split it across multiple pages. This function forces those blocks of content to "display: block" for printing purposes. Try the *LIGHT* changes first.
This button sometimes has unwanted side effects, such as overriding page rules that hide sidebars for printing, especially with the *DEEP* changes option. To undo those unwanted changes: as you hover the mouse over the page, affected sections will be outlined with a heavy green dashed line, and a little dialog will appear that lets you hide the section.
Overriding custom fonts.
When Firefox prints webfonts, it generates an image instead of sending text to the printer. If you are printing to PDF, you may prefer to use a more basic font so that searching and selection will work in your PDF. Currently, you don't have much control over what font will be substituted; I hope to expand the feature in the future.
Overriding fixed position elements
Some sites have fixed headers or footers that show up on every page of your printout, blocking other content. This command changes their position rules, and provides tweak panels to further adjust their position (or hide them).
Example Pages
A reviewer on AMO flagged https://www.allrecipes.com/recipe/50658/thai-peanut-chicken/?printview as a problem page where Firefox loses content after the first page. I created a PDF showing the effects of changes you can make using the drop-down: AllRecipes example PDF.
- Printout from Microsoft Edge for reference
- Printout from Firefox 75 without any modifications (content after page 1 is lost)
- Printout from Firefox 75 after clicking the "Allow Page Breaks *LIGHT*" button on this extension's drop-down panel to fix the pagination
- Printout from Firefox 75 after also clicking the "Use Basic Fonts" button to make the text searchable, which is useful if you are printing to PDF
Save as PDF (Windows and Linux only)
Firefox includes a feature extensions can use to save a PDF, but it has the same issues as printed output. So before using this function, make sure the preview looks correct. Unfortunately, extensions cannot piggyback on your Page Setup settings for orientation, background colors and images, and so forth, so you need to select those in the Printable panel if the defaults don't suit you. Your changes will be stored for future reference.
Permission Design
Printable needs to make changes to web pages, but you do not need to pre-approve access to all sites. Instead, Printable uses the activeTab permission which provides full access to the page when you click the toolbar button or select a command from the right-click context menu. In the future, if you want to apply changes to a page or a site automatically, the extension will need more privileges. However, for now, you have to do it by hand.
Source Code
Firefox extensions are .xpi files, which are .zip archives. So you can download extensions and open them in your favorite unarchiving program to see the source code. But it may be easier to read on Github: https://github.com/jscher2000/printable-print-doctor-extension.