We need an hour or two of phone consultation with someone who is familiar with programmatically modifying PDF files using JAVA. Specifically, we need to know what it will take to programmatically add an annotation to a PDF which redacts an area on a page so that it is not visible (e.g. hide a social security number).
We have a webserver that will serve up static PDF files. Some of these PDFs are 'image only' PDFs (e.g. scanned without any OCR performed) and some are 'text' PDFs (e.g. an MS Word Doc printed to PDF).
The webserver requires a user to login to the web application before they can view any of the PDF files.
On both types of PDF files there is a section of content that is confidential (e.g. a Telephone Number). Users that have rights to see the confidential information should be able to see it, and those that don't have rights shouldn't.
Ideally, we would like to enforce layered security on a PDF file such that a user would have different permissions depending on their username or group. I don't know whether it is possible to implement this type of layered security in a PDF file or whether we will need to have a separate PDF file for each security group (e.g. one with the telephone # visible, and one with it hidden).
Regardless of whether it is possible to use a single PDF file with multiple layers of security or multple PDFs, we still need the ability to the telephone number on the PDF (both image only & text PDFs). We have an existing backlog of about 20,000 PDFs that we will need to run a batch process on to hide the telephone number. Additionally, on an ongoing basis we will need to hide the telephone number on all new documents that are added to the webserver.
When I say "hide" the telephone number my absolute requirements are that the telephone number not be visible on the screen or on the paper when the PDF is printed. Preferrably I would like the "hidden" status extended to copy operations (the user cannot select the text and copy it to the clipboard) and programmatic access (the user cannot write a program that opens the PDF and extracts the telephone number from the contents).
UPDATE TAKE 2 (8/31/2004)
The telephone number is in the same location on every PDF so we will know the coordinates of the area that needs to be hidden.
We will pay for actual time spent on the phone via conference call(s). Bill us in 15 minute increments.