Many people believe that there is not enough software for Mac OS X. The scarcity of software that deals with the popular Portable Document Format (PDF) seems to support that belief.
There are hundreds of utilities for Windows that convert various formats into PDF, and just an application or two, hopelessly outdated, that do the same for Mac OS X. There is also a small number of Mac OS X programs for optimization of PDF files. There are practically no available virtual printers for Mac OS X, too.
A note to those who might try to fill this gap: don't!
Users of Mac OS X don't need to buy any third party software to be able to print their data into a virtual printer. The OS itself provides a consistent and easy-to-use way to convert whatever they work with into PDF. A virtual printer of traditional Apple quality is hidden under the beautiful Aqua interface in every copy of Mac OS X.
Mac users don't have to think about virtual printers or conversion utilities to create a multi-page PDF file from almost any application. They just create their data representation and choose the "Print" command from the menu "File", then press and hold the PDF button. There is a menu with many commands, such as "Save as PDF...", "Save PDF as PS...", "Fax PDF..." and so on.
That is pretty much what a virtual printer would do. Well, virtual printers usually support more formats than just PDF or PS. Take a look at our Spool Pilot for Mac OS X, which adds support of some other formats. Spool Pilot is built upon the Mac OS X Printing System and Quartz™ graphic libraries.
The Mac OS X Printing System (that is the real name for the Mac OS X Virtual Printer) generates PDF files from whatever input you give it. These PDF files are guaranteed to open with Adobe Acrobat®, Preview™ and many other popular PDF viewers. These PDF files are good enough for almost any use.
For those who need more control over the PDF file parameters there are several third party software products in the market.
Advanced users may enhance their "PDF Workflow" with the help of scripting or programming languages.
There are 2 reasons why a virtual printer for Windows is useful (Virtual Print Pilot):
- to redirect printout into a file instead of a printer,
- to convert the redirected printout into a popular graphic format.
Printout redirection has been a built-in user-level feature of Mac OS X starting from version 10.2.4 (see "The user's perspective" section).
With Spool Pilot for Mac OS X, printout may easily be redirected into a file of any of the supported formats.
To add conversion support to an application, it is much easier to use the built-in conversion capabilities of Mac OS X than to incorporate a third party virtual printer. Mac OS X is responsible for probably 95% of what is required to transform data representation from one format to another.
It is possible to add system-wide support for additional formats by programming a special kind of software called a "Filter Service" and putting it in the right place. Read more about Mac OS X programming, Quartz™ and Filter Services development in the Mac OS X Developer documentation.
Many people believe that there is not enough software for Mac OS X.
There are indeed lots of exciting development opportunities in that market. Mac OS X is still very young. But there is no need for many kinds of software popular on other platforms because Mac OS X itself does what they would do.