Kiosk/Silent Printing in Google Chrome

As a web developer, the easiest way for me to solve a problem is normally to develop a web app that takes care of the issue. There are certain advantages to this approach: scalability in that multiple users can access the app simultaneously, accessibility in that it can be accessed from anywhere, and hardware independence meaning if the end user’s computer goes down, all I have to do as IT support is replace their computer. At times, however, there are limitations to this “when all you’ve got is a hammer everything looks like a nail” solution. Most often for me these issues are related to functionality which would be extremely simple in a native application being difficult to achieve from a browser. Thankfully, when I encounter these issues I’m also in control of the end user’s browser and computer.

Most recently, I ran into a situation where I needed a web app to print a packing slip for an online order once that order had been confirmed by the picker and packer. The system I’m using gives the packer easy access to only the computer’s number pad as it was much simpler to repurpose hotkeys–”*”, “/”, etc.–from the number pad than try to find space for a mouse on our packing line. Because of this lack of mouse access, however, I needed the system to be able to print without requiring a click on “Print” in Chrome’s print preview dialogue or the system print dialogue. What I discovered thanks to this page on Vend’s website is that Chrome has a little-known kiosk mode with the option for “silent” printing. That is, printing which doesn’t require the user to confirm the printing.

I have Chrome launching on startup for our packers (on a Windows 7 Starter netbook) and all I had to do was right click on the Chrome shortcut in the startup folder, click “Properties” and add the following flags to the end of the “Target:” field:

--kiosk --kiosk-printing

This means that when Chrome launches it’ll launch in full-screen mode (without that annoying “Press F11 to exit full-screen” message everytime your cursor is near the top of the screen) and when you press CTRL-P or call Javascript’s “window.print();” function it will print the page without needing your user to confirm that print action.

As the name of flag suggests, this would also be an extremely useful solution in a case where Chrome were running in a Kiosk computer.


A few things to note if you do use this solution to silent printing in Chrome:

  1. “Print Preview” must be enabled in Chrome. Check “about:flags” and make sure.
  2. Slightly annoyingly, Chrome will still show the print preview for about a second before going ahead and printing so it’s not quite silent printing, more like muted printing, but it does not require user confirmation, which was my goal.
  3. This is not a way to auto-print on a users’s computer if you don’t have access to the machine yourself since it requires modifying Chrome’s launch flags. This is a good thing! Imagine visiting an unscrupulous webpage and having it auto-print itself wasting your ink and paper!
  4. Make sure you have the correct printer selected as the default since that’s the one Chrome will print to.

Related Posts

  • Restarting a MySQL Server from the Command LineJuly 10, 2013 -- Restarting a MySQL Server from the Command Line (0)
    While it doesn't come up frequently, every once in a while you'll need to restart a MySQL server from the command line. On my current webserver we're running a VPS with WHM. What this means is that...
  • Generating EAN/ISBN-13 Check Digits in ExcelJuly 3, 2013 -- Generating EAN/ISBN-13 Check Digits in Excel (1)
    When you're dealing with ISBN-13's you'll sometimes need to generate a check digit, either to verify  a number your employees are inputting during inventory, or scanning off a book or product, or p...
  • Debugging CSS Print Stylesheets without Killing TreesJune 6, 2013 -- Debugging CSS Print Stylesheets without Killing Trees (0)
    Working on a print stylesheet has been a pain for me to the point where I often don't even add print styles even to things that ought to have them. Partially this is because it so rarely comes up (...
  • Why?April 6, 2013 -- Why? (0)
    I've been in web development since 2001 starting with maintaining a relatively small site and, since then, developing many medium to large online properties. During all of this I've held off on cre...
  • Using Conditional Formatting for Zebra Striping in Microsoft ExcelJuly 12, 2013 -- Using Conditional Formatting for Zebra Striping in Microsoft Excel (0)
    Zebra Striping in Excel is a useful way to make it easier to differentiate between long (page-wide) rows of data especially when each column stores data which looks very similar. Simply put, you us...

Leave a Reply