Good question.
You need to understand what those permissions are for and what they protect against.
Think of Apache like a person, just like any other user on your system. When Apache runs, it gets a userid just like you or I would. And we need to explicitly state that the user named "apache" (or "web-root" or whatever name your sysadmin chose for Apache) is allowed to WRITE to a certain DIRECTORY.
One solution (which you have already found) is to open up the permissions on the directory so that everyone (user, group, world) all have read/write access. Another solution is to make a PDF directory that is OWNED by Apache. This way, the files that are created inside the directory will automatically be owned by Apache and instead of having to make the directory wide open (777), you really only have to make it 755 or possibly even 700.
So next we have to talk about attack vectors. You need to decide what scenarios you want to protect yourself from.
Are you worried about some kid with a web browser typing in a URL and seeing someone else's PDF?
Are you worried about some hacker cracking your Linux box and rooting around directories and discovering this PDF directory and reading all the contents?
Or are you worried about guys with guns breaking into your ISP and forcing the sysadmin to hook up a keyboard to your web server so that they can rifle through all the files on your web server?
Setting permissions one way or the other isn't going to protect your from attacks #2 or #3. Once they're into your box, permissions aren't going to stop them.
So I'm guessing that you're concerned about vector #1. You could set the permissions to 700 and the kid won't be able to see someone else's PDF's but, the real owner of the PDF's won't be able to see them either.
There are a number of solutions.
My favorite is very simple: put all the PDF's in a directory with simple 755 permissions but give them random unguessable names. Pick 25 random letters and numbers. There's your filename. Make sure the outside world can't see the directory. (Either configure Apache so that directory listings are off or put a blank index.html file in the directory). Now, someone would have to guess trillions upon trillions of possible filenames.
One problem here is that someone could use a program like Wireshark to sniff the line and find out what PDF their boss was just looking at and now they don't need to guess, they simply type in that filename. Using SSL will protect you from that.
So you could give everyone their own htaccess username/password. This is a little tricky to set up and it's still vulnerable to the line sniffing which is why SSL is used. You could set up a web page based username and password and combined with SSL, you'd be reasonably well protected. That is, the user could request a certain PDF file but without the username/password, you don't send it to them. (Note: Do not use a Javascript based username/password system as those are a joke).
There are lots more exotic techniques to protect the data but what you see above should suffice unless you are designing stuff for banks or the CIA.