就像Adobe的虚拟打印一样,当用户打印时能选择我编写的虚拟打印机,根据需要生成不同的文件格式,如何实现?