Printer Emulators, PDF Writers and so on - pdf

I will soon be working on 'Print' and 'Print Preview' features of a product I am working on. I do not own a printer nor do I have any intention of buying one. I am looking for any free software which I can use to test my printing code.
What are the best free options I can use to emulate a printer? I am using GDI+ on Windows but platform independent options such as PDF writers are more than welcome.

I know a quite good pdf printer, used for many years: CutePDF and it's free :)

I would use at least 1 PDF printer and if you have a recent MS Office installed you probably already have an XPS printer as well. Otherwise, look for an XPS package at Microsoft.
Anyway, test with more than one.

PDF Creator is nice (and also open source)
.
It creates a virtual printer, and prints PDFs via Ghostscript.

There is also a list of best PDF Writers/Creater and most of them are FREE at http://www.wwwlabz.com/list-of-best-pdf-creatorswriters-mostly-free-alternative-to-adobe-pdf-writer

Related

XFA forms on PDF file

I need to fill out several PDF forms that contain XFA files, and then print them. I can only print them from a Linux machine. It has Acroread installed, but it's not working properly, besides it being outdated.
What I can do is fill them out in my Macbook. So my question is: once I fill them, can I somehow export them to "regular" pdf files that a viewer in Linux (like Okular, Evince, etc.) can open and print? That would be great since I would just e-mail them to myself and print them from the Linux computer.
Thanks!
The problem you describe was the subject of a talk with title "Who's afraid of XFA?" video/slide deck.
The solution posted by Max Wyss (fill out and print the form using Acrobat Reader DC) is certainly possible if you have only a limited number of documents that can be processed semi-automatically. If you want a fully automated process, this typically isn't a viable solution. For instance, if the form needs to be filled out in the context of a web application and people need to get the PDF in their browser as a response to a request to your Linux server, you won't use your Macbook as a server, will you?
In that case, you need a library that injects the XML into the PDF (see How to fill out a pdf file programmatically?) and then "flatten" it to an ordinary PDF (How to flatten a XFA PDF Form using iTextSharp?). The problem with this approach is that you need a software library or tool to achieve this, and other than Adobe LiveCycle and iText's XFA Worker, I don't know of any tool that can flatten XFA to ordinary PDF.
Using a PostScript driver to print a dynamic XFA form won't work because other than Adobe and iText software, there is very little support for XFA in the software world (and XFA is being deprecated in PDF 2.0).
Can the Macbook and the Linux machine be networked? If so, try to share the printer, and fill out and print the form using Acrobat Reader DC on the Macbook (or Adobe Reader XI).
An other possibility would be setting up a PostScript printer (driver) and use its help to create a PostScript file which you then could transfer to the Linux machine and send to the printer (maybe with Ghostscript as an intermediary).
The crucial point is that you will need Acrobat/Reader to fill out the form, particularly if it is a dynamic XFA.

Need to print a PDF from .net and select different trays for output

My company is moving to a new system which has a very poor printing system in place but it does create PDF's on the file system.
My Boss has asked me to create an application to print all the PDF's based on a JOB number.
I've gotten the filesystem search working, I have used the acrobat sdk to open each file and find certain strings to determine which pages go where.
The problem I'm dealing with is that the Acrobat SDK doesn't seem to support choosing printer settings.
My first thought was no big deal I just change the default windows printer and just change the tray so the invoice part and equipment listing go to white paper from tray 1, and the remittance goes to tray 2 on blue paper.
It seems like the printdocument in .net can handle alot of printer settings but I'm not sure if a PDF can be used with a print document.
Looking for any advice or assistance.
Thanks,
Joshua
I found the answer was to use Win32.
Here was the website that helped me get through some of the hurdles:
http://edinkapic.blogspot.com/2011/01/how-to-set-printer-default-paper-bin-in.html
The underlying problem is that PDFs are combination of vector graphics for the text and bitmapped images. It all needs to be rendered into a format the printer understands before being printable.
Ghostscript does this very nicely and if you need to do it from .Net, GhostScript.Net provides an excellent vb.Net interface.
The problem I'm dealing with is that the Acrobat SDK doesn't seem to support choosing printer settings.
You can't use the desktop version of Acrobat for this, since it's not designed for unattended operation and requires a user interface. Also, I believe it violates Adobe's license.

PDF conversion service

I need to develop a service able to convert MS Office and Open Office documents to PDF. And the PDF`s also need to be commentable when opened in ADOBE Reader.
I have used a piece of software from www.neevia.com. And it does the conversion, but is not able to make the PDF´s commentable and is therefore useless in my scenario.
Ideally I would like a piece of software that is monitoring a directory, and when a file is commited to that directory, the software detects this, fetches the file, converts it, and puts it in another directory. This way I can programmatically put the file I want converted in the IN folder and monitor the OUT folder to fetch the file when converted.
So do anyone know a piece of software capable of converting MS Office and Open Office files to commentable PDF`s?
It sounds like you're after the "Extend Features In Acrobat Reader" document rights feature that's part of Acrobat Professional. If you want a programmatic way of doing it then Adobe LiveCycle is the only game in town. This is one of the features that Adobe keeps for itself and no third party is legally allowed to provide it.
You could programmatically, using office automation, print documents to a postscript printer driver to get a postscript file, then use GhostScript to convert the PS file to PDF. Not sure of the commentable features supported by Adobe Reader as opposed to the full version of Acrobat, but it should create a reasonably well supported PDF file.
A-PDF may do what you want, it's web site claims it can convert office docs into PDF including batch convertion with watching a folder.
Both Office 2007 and OpenOffice can save directly to PDF, so you could automate that process.
However, changing the "document rights" of the PDF to allow commenting is something that only Adobe Acrobat can do. (This is Adobe's way of selling more product). There are other 3rd-party tools out there that claim to be able to do it (google change pdf +"document rights"), but I can't vouch for any of them.
I believe the commentable features are part of the PDF software, and not the file. Adobe Professional will allow to add comments, while the reader has less capabilities.
Hmmm, you can develop your own or just buy it off the shelf. My company (shameless plug) has a product that does server based PDF Conversion for common Office formats and can be invoked via a web service.
Blogged about it here. Making office work reliably on the server (32bit/64bit, Win2K3/Win2K8) is challenging to say the least.

Commenting on LaTeX PDF documents with PDF reader

Im currently writing my bachelor thesis with latex and using TexnicCenter. I want to be able to send my generated pdf file to people and they should be able to write comments.
It seems like commenting is not allowed by default, how do I change this?
I am using straight to PDF with pdflatex and acrobat reader 9 to read and comment on the files
I think your problem is that acrobat reader doesn't allow commenting on documents not produced by abode approved products, which I don't think pdflatex would be.
You should look at the free PDF-XChange Viewer which allows you to comment and annotate the text. Its a portable windows app (download), so doesn't need to be installed on your (or the reviewers) machines.
In order to comment using the free Adobe Reader application, the document needs to be signed with a cryptographic key only available from Adobe's commercial (non-free, for-pay) software suites. Likewise, if one is using Adobe Acrobat (not the free Reader) to view a PDF document, commenting may be activated -- or so I hear. The idea here is that it takes some piece of commercial Adobe software in the scenario -- be it producer or consumer -- to make commenting possible.
There are other free PDF producer and consumer applications that allow some form of annotation, but none of them are equivalent to the "native" form offered by Adobe's products.
Strange... I just finished my master thesis, using TexnicCenter and the MikTeX distribution, and comments worked just fine. What build profile do you use? Straight to PDF with pdflatex, or via the PS->PDF route? You might want to try the pdflatex method.
(EDIT): ah, we used Acrobat Pro for commenting, so that's why it did work in our case... Thanks rsg!
You can download the 30 day trial of Acrobat Professional 9, and enable the user rights required on the pdf so that they can comment using Acrobat Reader.
I would definitely have a look at the LaTeX Web Companion. There is a whole section about generating PDF from LaTeX, including esoterica such as forms.

How to convert Word and Excel documents to PDF programmatically?

We are developing a little application that given a directory with PDF files creates a unique PDF file containing all the PDF files in the directory. This is a simple task using iTextSharp. The problem appears if in the directory exist some files like Word documents, or Excel documents.
My question is, is there a way to convert word, excel documents into PDF programmatically? And even better, is this possible without having the office suite installed on the computer running the application?
Office 2007 allows for this. I have found PDFCreator to be good, the VBA is included in sample files, and have heard that CutePDF is also good. PDFCreator and CutePDF are free.
To work without Office, you would need viewers, as far as I know:
http://www.microsoft.com/downloads/details.aspx?FamilyID=c8378bf4-996c-4569-b547-75edbd03aaf0&displaylang=EN
http://www.microsoft.com/downloads/details.aspx?familyid=95E24C87-8732-48D5-8689-AB826E7B8FDF&displaylang=en
I needed to do this myself, but managed to get it done with .Net and without 3rd party tools:
MSDN: Saving Word 2007 Documents to PDF and XPS Formats
Pretty simple, about 50 lines of code. However I think you will need Word 2007 installed on the machine as well as the ability to Save As PDF
To convert Word documents to PDF, take a look at jWordConvert, a java library that can do exactly that. This will not work with the Excel files though, only with the Word files. The language is not Sharp, it's Java but you could switch to use IText (which is java) instead of ITextSharp.
You can also use a component like activePDF's DocConverter to convert a lot formats to PDF.
Use PDF maker that comes with adobe 7- 9
I just used this code Covert Doc to PDF
I'm surprised Aspose wasn't mentioned here, it's easy, simple, and reliable. Downside is that it is not free.
I've used iTextSharp in the past, it's really good, easy to install (one DLL I believe), the merge takes a bit of tindering so it's not as easy to use as Aspose, but hey, it's free so that is the best part.
TallPDF.NET (comes with a hefty price tag) allows you to serve dynamic PDF from any .NET application including ASP.NET pages and web services.
PDFEdit (free and open source) is an editor for manipulating PDF documents. It has a GUI version and a command-line interface. Scripting is used to a great extent in the editor and almost anything can be scripted. It is possible to create your own scripts or plugins.
The most common way to convert files to a pdf is to print them to a pdf printer driver. There are a number of such drivers, one that i know of that will do the job is Black Ice.
Another is to use Adobe Acrobat's SDK. from memory its very expensive.
Its been a while since i have actually done any work with converting pdf's and the landscape may have changed.