XPS2OneNote - Print to OneNote 2007 on 64 bit Vista or Windows 7 OS

Updated to 1.1 release on 11/26
  • Fixes issues the previous release had on Windows 7 64 bit
  • Option to print to a single OneNote page, or separate OneNote pages
  • Option to scale the printout from the printout dialog
  • Can select the destination section to print to (same as previous release)
  • You should uninstall the previous version first. You will need to restart your machine, or manually start XPS2OneNote after installation.
  • Note: this works differently to the Send to OneNote 2007 print driver. Please read the instructions below on how to use it.
This works for 32 bit OSes as well, but it's pirmarily intended to help those who cannot print to OneNote 2007 because the Send to OneNote 2007 print driver does not support 64 bit. If you're on a 32 bit OS you don't need this, but may appreciate the ability to scale print outs, print to separate pages and choose the destination section. Also note that OneNote 2010 (currently in beta) fully supports Send to OneNote 2010 print driver on 64 bit OSes so this is not necessary if you have OneNote 2010.

1. Installation

To install XPS2OneNote download and run the XPS2OneNote setup.
Note: you should uninstall the previous release first, also you will need to restart your machine or manually start XPS2OneNote after install.

2. Using XPS2OneNote

Overview of how XPS2OneNote works
XPS2OneNote should be simple to use and as easy as the Send to OneNote 2007 print driver included with OneNote but it works a little differently.
  • XPS2OneNote runs on startup and runs in the background, sitting in the system tray.
  • XPS2OneNote creates a "drop folder" on your desktop called "XPS Print to OneNote Drop Folder"
  • XPS2OneNote watches this folder for any .xps files that are added to it.
  • You print from your application using the "Microsoft XPS Document Writer" print driver, saving into this folder. The "Microsoft XPS Document Writer" comes with Vista and supports 64 bit.
  • XPS2OneNote notices the file and inserts it as a printout into OneNote. It prompts you for the section you want it sent to.
  • XPS2OneNote then removes the file from the drop folder and cleans up.

Detailed steps

Notification tray icon
XPS2OneNote will start whenever Windows starts. When it is running you will see it in the system notification tray. If you right click on it you can exit it, or change the settings. Generally you shouldn't need to touch this.
2-NotificationTrayIcon.png

Printing: 1. Choose the XPS print driver
To print using XPS2OneNote just print from your application and choose the "Microsoft XPS Document Writer" in the print dialog then click OK to print.
1-Print Dialog.png

Printing: 2. Save the printout to the XPS2OneNote drop folder on your desktop
A save dialog will pop up. Using the folder tree on the left or the folder path at the top of the dialog navigate into the "XPS Print to OneNote Drop Folder" folder on your desktop. Then in the file name field at the bottom of this dialog type a name for the XPS file.
Note: you should only have to navigate to the drop folder on first use. The XPS print driver will remember this as the default location after this.
Note2: The file name you choose will be used as part of the page name in OneNote, but you can always edit this later in OneNote.
4-FileDialog.png

Printing: 3. Choose the destination section
Next the following dialog will come up (sorry, not very pretty is it...) asking which of your OneNote sections you'd like the print out sent to. Choose one and click "Insert Printout in OneNote".
5-ChooseSectionDialog.png

Printing: Success
You will see a progress message (if the printout is short it will be very quick) and then a success message like the one below will indicate it is complete. In OneNote you will see your printout in the chosen OneNote section with one print out page per OneNote page. You're done!
6-SuccessMessage.png

Settings
In the settings dialog you can change the scaling of the pictures to something other than 100% if you want it to fit on a smaller page or blow it up larger.
You can also specify a different drop folder path (but don't need to), and if you're using a DPI other than the typical 96dpi then you can change that setting which will help make the print outs map pixel to pixel and avoid blurry scaling. Don't change this unless you know you're using a different DPI on your screen.
3-Settings.png

3. Known limitations

First caveat, this is not Microsoft supported software. The initial implementation was created in my personal time during a little rare free time during vacations and weekends. It is an open source CodePlex community project, and hopefully others can contribute. Having said that, I took a lot of short cuts and used an expedient approach to this. It is not how it would be done in a shipping product. It's likely that it will not handle error cases well (like trying multiple printouts at once, or deleting files while it's using them). In such cases it may just crash. On the plus side, a crash should be benign. It should just shut down XPS2OneNote and restarting it should be fine, and under most usage it should work fine.

4. Feedback and contributions

Please provide feedback specific to the implementation on the discussions tab (you'll need to be logged on). You can also send me general feedback at my blog.

Once I get the source code cleaned up and posted, you may directly contribute to it and improve it.

Project Description
XPS2OneNote enables printing documents to OneNote for 64bit operating systems such as Vista x64, which is not supported by the "Send to OneNote" print driver. It also enables scaling the printout size. It is written in C# and uses the XPS print driver.

Last edited Nov 26, 2009 at 8:14 PM by DavidRasmussen, version 31