My printer doesn't support AirPrint (Apple's print over wi-fi solution) and Google has discontinued it's Cloud Print offering. But it seems like I still have a fairly regular need to print from my phone or for my child to print something from school that will be ready when they get home. I have a solution.
This solution is specifically for Mac users, but I suspect there is a similar option Windows users as well, as mentioned toward the end of this post.
You need an always-on computer that can print to the printer. A closed laptop probably won't work.
Part One: Create the Automator Script
Somewhere in your Dropbox folder, create two new folders:
"Home Office Printer" or whatever you want to call it to indicate where it will print.
"Completed" folder for items that finished printing. You could skip this step and instead trash items after they print.
I have a top level "AirPrint" folder which then contains these two folders. How it's organized doesn't really matter. It's up to you.
Open a new task in Automator, and select "Folder Action" as the type.
Add the following step in Automator:
Set variable – "doc" as the file to print. When you see "$doc" in these instructions it means I'm using the variable.
Display notification – with title "Faux AirPrint is Starting" and message "Printing $doc"
Get value – of variable: $doc.
Print finder items – and select the printer you want to print to.
Move finder items – to the "Completed" folder. Or to the trash if you prefer.
Display notification – with title "Faux AirPrint Finished" and message "The document was sent to the printer."
Save the Automator document as "Faux AirPrint" or whatever suits you.
Right-click on the "Home Office Printer" (the folder you created) and select Services > Folder Actions Setup ...
A new window will open prompting you to select a script to attach to the folder. Select the "Faux AirPrint Folder Action" or whatever name you gave your Automator file.
Click the "Attach" button.
Verify that the "On" boxes are checked next to the name of the folder and the name of the automation.
Close the "Folder Actions Setup" window.
Test this out from your phone or some other device by copying a document into the "Home Office Printer" folder. Let Dropbox sync that to the folder on the computer connected to your printer. The folder action should print the file and then move it to the "Completed" folder (or trash). What is nice about this solution is that you don't even have to be on the same network, as you do with AirPrint. You can do it from anywhere you have an internet connection.
Perhaps someone else will add instructions for Windows users to be able to do the same.
You can share the "Home Office Printer" folder with you spouse or work collegues or whomever. They don't have to set anything up. They just have to copy items to the folder to print.
You can setup a Dropbox File Request directed to the print folder to allow someone the temporary ability to print to your printer.
If you generate regular reports that need to be printed or have any other process that requires printing, you can just direct the file output to the print folder rather than trying to automate the printing process.
If you use iOS Shortcuts, you can create a shortcut to for the share sheet that automatically saves the document to the print folder. This gives you one-click printing from your iPhone or iPad. Here's a quick overview of the steps:
Get File – Set the initial path to your print folder.
If (file extension is not "pdf") then make PDF from file
Save File – to Service:Dropbox; do not ask where to save; set the destination path to your print folder.
In the shortcut options, enable "Show in Share Sheet"
That's it! This solution has been serving me flawlessly for several years, so I thought I would share. Feedback welcome.