PDFCreator is an open source software based on Ghostscript library and works as a virtual PDF printer able to convert printable files into PDF.
The program has a generous Options interface where you can choose different settings for PDF quality, compression, fonts, colors, password and digital signature.
It will produce files with a small file size, from Options you can tweak settings for compression and quality of images.
It allows to set a password (different levels of encryption) and disallow users to print, copy text and images or modify the PDF's content. You can add digital signatures (certificates) to a PDF file to verify later if the PDF has been edited or modified.
Using this program to generate PDF files, you can rotate pages, choose compatibility with different versions of Adobe Acrobat Reader, embed all fonts, convert and downsample colors, set a password for document and more.
PDFCreator is easy to use if you don't need to change advanced options and will produce files in a reasonable time and with a decent file size.