Take a look at the Specification document for PDF:
Adobe PDF 1.7 specification (link to adobe.com)
At over 1300 pages it represents an incredibly complex document format and if you have a project to deliver in any reasonable timescale I'd suggest (as others have) to use a library.
I confess the only library I've used myself is iTextSharp although there are license requirements - MPL and LPGL for version 4.1.6 and I think v5+ is under a different license.
If you have a project, a customer, a budget or a timescale then use a library, you'll get your product delivered *much* faster than learning PDF from scratch.
If you genuinely want to learn it for your own progression, I think the sheer complexity is going to put it beyond a kindly CodeProject member just providing code -> you'll have to get stuck into the documentation.
Best of luck!