The unofficial comp.text.pdf FAQ ******************************** Welcome to the unofficial comp.text.pdf frequently asked questions document. If you have any suggestions on how this document could be improved, better answers to questions included, or even a new question, please contact the maintainer, Michael Still at mikal@stillhq.com Whenever the name and email address of a person who has answered a question is known, they have been credited within this document. It should be noted that some people chose to add extra text to their email addresses to confuse spam senders. These extra pieces of text have been retained in this document and will need to be removed manually before sending email. Please note that questions and answers are sometimes editted for readability. This document may also be found online at http://www.stillhq.com/cgi-bin/getpage?area=ctpfaq&page=index.htm which also includes past versions of the FAQ. This version of the FAQ covers information up to and including 08 May 2001 11:24:28 GMT and is based on 1124 postings. It also includes all comments emailed to me up to 24 May 2001 03:00:00 GMT. Version: 2001-03 ******************************************************************************* 1. Printing 1: How can I print a PDF that has the no-print option turned on by the author? 2. Development using PDF 1: APIs not developed by Adobe 2: Masks for images (PDF 1.3) 3: How can I determine the compression used in a PDF file? 4: ASCII85 encoding / decoding 5: Discussion areas for PDF developers 6: What is that stuff inserted into PostScript by Acrobat when printing encrypted PDFs? 7: Why are large GETs (PDF forms) truncated in Microsoft Internet Explorer? 8: How machine intensive is generating PDF documents dynamically? 9: Where can I find samples of xxx? 10: Problems with linking to web pages from within a PDF 11: "The file is damaged but is being repaired." 12: Compression algorithms 13: Bezier curve approximation 14: JBIG2 compression support 15: Rotated text 3. Acrobat 1: Should I upgrade from 4.0 to 5.0? 2: Toolbar icons 3: Cutting text from a PDF and pasting into Word 4: Guiding your readers through your document 5: Printing from the command line 6: Acrobat on Linux character set problems 7: Control over OLE automation 8: Editting existing PDF files 4. Distiller 1: Licensing 2: Colour in distilled PDFs 3: Distiller page size problems 4: Output file names 5. Internet stuff 1: Problems with IE displaying PDFs 2: Optimised, compressed, linearised? Arrrrgh! My brain hurts! 6. History 1: How old is PDF? 7. PDF tools from people other that Adobe 1: Truetype capable PDF generators (not APIs) 2: Page extraction 3: Distiller equivalents 4: Extracting images from PDF documents 4.1: Why can't I just cut and paste the images? 5: Inserting watermarks over pages in a PDF document 6: Linearisation tools 7: Concatenating PDFs 8: Converting HTML to PDF 9: PDF permissions tools 8. Conversion 1: Converting a PDF document to TIFF 9: Acrobat forms 1: Methods of creating Acrobat forms 2: Images inside form elements 3. Using ASP to collect form values 10: Online tutorials =========== PRINTING ========================================================== 1.1: How can I print a PDF that has the no-print option turned on by the author? How can I print a pdf of which the security setting is changed so that it cannot be printed? Should it be converted or is there a crack to enable that function? Email the owner of the document and ask their permission to be able to print the document. One must presume that the author has chosen to not let you print for a reason. Michael Still (mikal@stillhq.com) The following tools claim to be able to do what you ask: http://www.elcomsoft.com/apdfpr.html Vladimir Katalov (vkatalov@elcomsoft.com) http://www.password-crackers.com/crack/guapdf.html Christian Koch (christian_koch@gmx.de) http://www.ecn.purdue.edu/~laird/PDF/ Christian Koch (christian_koch@gmx.de) http://www.cs.wisc.edu/~ghost/ Michael Mantz (michael.mantz@de.bosch.com =========== DEVELOPMENT USING PDF ============================================= 2.1: APIs not developed by Adobe What APIs are available, and under what terms? I am aware of the following APIs: PDFLib Free for non-commercial use http://www.pdflib.com ClibPDF Free for non-commerical use http://www.fastio.com Panda Open source (GPL) http://www.stillhq.com ReportLab Open Source (BSD-style licence) http://www.reportlab.com ------------------------------------------------------------------------------- 2.2: Masks for images (PDF 1.3) PDF 1.3 has documented a new "Mask" key that provides explicit masking ability. This is supposed to allow you to embed an image (say, a jpeg) along with a 1 bit-per-sample mask that indicates where the jpeg should and should not appear on the page. I haven't been able to get this to work -- the image just renders without respecting the mask. Does anyone have any experience with this feature? The PDF reference does not have any sample code that does this, so I would be interested in any examples you could throw my way. It would be easier if you provided an excerpt of the PDF you generated. Don't forget to put the ImageMask dictionary entry in the mask image, the mask's BitsPerComponent to 1, and no color space. Pierre Baillargeon (pb@artquest.net) And another thing I noticed about legal masks is that the mask image XObject appears in the resource dictionary for the page it appears on. Ed Bomke (edb@discryptic.com) Here are some fragments from one that works: 25 0 obj << /Type /XObject /Subtype /Image /Width 317 /Height 299 /BitsPerComponent 1 /ImageMask true /Length 524 /Filter /CCITTFaxDecode /DecodeParms << /K -1 /Columns 317 >> >> stream 26 0 obj << /Type /XObject /Subtype /Image /Mask 25 0 R /Width 317 /Height 299 /BitsPerComponent 8 /ColorSpace /DeviceRGB /Length 95613 /Filter /DCTDecode >> stream Aandi Inston (quite@dial.pipex.com) ------------------------------------------------------------------------------- 2.3: How can I determine the compression used in a PDF file? I got a few documents looking good and at a reasonable size for the final use. But months later I have to re-issue and I can't repeat the results. Other than trial and error, is there a utility or steps to determine the compression options used in a PDF? Open the PDFs using a txt editor which can afford binary data (like UltraEdit on Winxx) and search for the "/Filter" keywords. Helge Blischke (H.Blischke@srz-berlin.de) http://www.enfocus.com/plugins.htm and look for the free Enfocus Browser plug-in. Enfocus Browser allows you to navigate the low-level object hierarchy in a PDF file, and view the PDF page description for a particular page. Filiep Maes (filiepm@enfocus.be) Our Quite A Box Of Tricks product will tell you the compression used, image by image. This includes the level of JPEG used. This can be done with the free demo. Aandi Inston (quite@dial.pipex.com) ------------------------------------------------------------------------------- 2.4: ASCII85 encoding / decoding I'm looking for a piece of code to do ASCII85 encoding/decoding. Does anyone know where to get this? ftp://ftp.webcom.com/pub/haahr/src/encode85.c ftp://ftp.webcom.com/pub/haahr/src/decode85.c Tom Kacvinsky (tjk@ams.org) ------------------------------------------------------------------------------- 2.5: Discussion areas for PDF developers What mailing lists are available for PDF developers? You could try some of the following: - comp.text.pdf - PDFDev (http://www.pdfzone.com) - PlanetPDF developer's forum (http://www.planetpdf.com) Aandi Inston (quite@dial.pipex.com) ------------------------------------------------------------------------------- 2.6: What is that stuff inserted into PostScript by Acrobat when printing encrypted PDFs? Encrypted PDFs when printed have the following in them: % Removing the following eight lines is illegal, subject to the Digital Copyright Act of 1998. mark currentfile eexec 54dc5232e897cbaaa7584b7da7c23a6c59e7451851159cdbf40334cc2600 30036a856fabb196b3ddab71514d79106c969797b119ae4379c5ac9b7318 33471fc81a8e4b87bac59f7003cddaebea2a741c4e80818b4b136660994b 18a85d6b60e3c6b57cc0815fe834bc82704ac2caf0b6e228ce1b2218c8c7 67e87aef6db14cd38dda844c855b4e9c46d510cab8fdaa521d67cbb83ee1 af966cc79653b9aca2a5f91f908bbd3f06ecc0c940097ec77e210e6184dc 2f5777aacfc6907d43f1edb490a2a89c9af5b90ff126c0c3c5da9ae99f59 d47040be1c0336205bf3c6169b1b01cd78f922ec384cd0fcab955c0c20de 000000000000000000000000000000000000000000000000000000000000 Which stops Distiller from converting to PDF. What is it? The eexec'd code reads in cleartext: /currentdistillerparams where { pop /pdfmark where {pop (This PostScript file was created from an encrypted PDF file.\n) print (Redistilling encrypted PDF is not permitted.\n) print userdict /quit get exec }if} if currentfile closefile That means, if either your printer knows about currentdistillerparams and pdfmark or the PostScript job itself defines these operators (even as dummies, see note below), this code assumes you are going to re-distill the PS job which is forbidden. NOTE: The PostScript driver you use might insert statements like /currentdistillerparams where {pop} {userdict/currentdistillerparams{1 dict}put}ifelse /pdfmark where {pop} {userdict/pdfmark{cleartomark}put}ifelse or the like (see the recommendations in Adobe's Pdfmark Reference Manual). Helge Blischke (H.Blischke@acm.org) ------------------------------------------------------------------------------- 2.7: Why are large GETs (PDF forms) truncated in Microsoft Internet Explorer? Sometimes GETs are truncated for web pages (including PDFs), why is this? See http://www.networkice.com/Advice/Intrusions/2000608/default.htm for a secuity discussion on GET Data Overflow, which might explain why MSIE-transmitted URL-encoded strings from PDF "submit" are sometimes truncated at something a bit less than 4KB length. Bill Segraves (wsegrave@mindspring.com) ------------------------------------------------------------------------------- 2.8: How machine intensive is generating PDF documents dynamically? Is PDF like Postscript? What I'm trying to get an idea of is whether all those PDFLib function calls that are generating parts of the file are doing massive amounts of processing or are they just doing simple things like writing PS-like markup tags wrapped around data. PDF is conceptually similar to PostScript. It isn't hugely complex to generate, but there is an additional (small) overhead of not only generating the graphical information, but also generating a file structure and index. In general, the time taken to make PostScript and PDF directly should be comparable. I wouldn't describe either of them as at all like HTML, but in the sense that you aren't rendering to a bitmap or anything like that, they are similar. This is very true. There are also the aspects of compression of data within the PDF to be considered as well... These can be quite processor intensive. PDF is also pretty thingie about the format that bitmaps take, and it take take a fair bit of memory and time to convert the bitmaps to the right format. The operations aren't slow, it's more the fact that there can be millions of them. I would say that the similarity ends when you say that both formats (HTML and PDF) have structure. PDFs are pretty funky in their object layouts. I am not sure about the timing statement comparing PS and PDF though. I have generated large PS files (containing images), which have been quite slow, but the PDF has been much faster because of better compression support. I would think the best route with your ISP is to just do some trials and logging and see what happens. Also, I don't think pdflib does linearisation, which might cause problems with large documents online. Michael Still (mikal@stillhq.com) ------------------------------------------------------------------------------- 2.9: Where can I find samples of xxx? I need to obtain samples of streams that are encoded with each of the types of filters that PDF 1.3 supports. Is there a "test bank" anywhere? Ideally, the streams would be fairly small to facilitate debugging. Some of them, like FlateDecode and CCITTFaxDecode are easy to find. But for example, I haven't been able to locate an ASCIIHexDecode stream anywhere. Have you tried the spec? There is an examples appendix, as well as many examples spread throughout the document. I can't check your specific example for you, as my copy is at work, but you should be fine. Michael Still (mikal@stillhq.com) ------------------------------------------------------------------------------- 2.10: Problems with linking to web pages from within a PDF I would like to create a link to an external document with a remote go-to action. However using a URL file specification (chapter 3.10.4 of the PDF Reference) does not work. This is the created object in the pdf file: 1 0 obj << /Type /Annot /Subtype /Link /A << /S /GoToR /F << /Type /Filespec /FS /URL /F (http://www.tug.org/applications/pdftex/calculat.pdf) >> /NewWindow true >> /Rect [124.802 706.129 266.534 791.168] >> endobj It's clear from experiments that Acrobat does not support the full generality of what might theoretically be possible. If you create something Acrobat wouldn't do, then you may be stuck, especially with indirect file references, which tend to work only if Acrobat would expect them there. An Acrobat weblink would have an /A field more like /A << /S /URI /URI (http:...) >> Aandi Inston (quite@dial.pipex.com) ------------------------------------------------------------------------------- 2.11: "The file is damaged but is being repaired." I have created a PDF file and get the following error when trying to view the file in Acrobat Reader 4.0: "The file is damaged but is being repaired." No other information is given. The file then opens and I can view the document. The file has not been zipped or e-mailed. As a test, I created a PDF example from the Adobe Portable Document Format Manual Version 1.3 and I received the same error. In both cases, the result is messed up. Is there a way to either truly fix such a file, or at least "extract" the good parts? This normally means you have the offsets in the XREF table wrong, so they are regenerated. Make sure you are using an editor that will show you binary content, and remember to count each newline as two bytes if you are running on Windows. Michael Still (mikal@stillhq.com) When I see this message it means "something is wrong" and it could be just about anything. The first thing to think of is: remember that PDF is indexed with exacty byte offsets -- so be sure you are using the right sort of line ending and counting all the bytes correctly. Aaron Watters (aaron@at.reportlab.dot.com) ------------------------------------------------------------------------------- 2.12: Compression algorithms Does anybody has a link to a site where i can download source code to do base85 encoding / decoding? http://dogma.net/DataCompression/SourceCode.shtml Guy Vdh (vdhguy@hotmail.com) ------------------------------------------------------------------------------- 2.13: Bezier curve approximation I'm trying to draw a pie slice, given the pie's center and the start and end angles. As far as I can tell, I need to use bezier curves to do the arc. Is there is an easier way, or if not, what do you use for the bezier's control points? You can calculate them like: $alpha = ($alpha * 3.1415 / 180); $beta = ($beta * 3.1415 / 180); my $bcp = (4.0/3 * (1 - cos(($beta - $alpha)/2)) / sin(($beta - $alpha)/2)); my $sin_alpha = sin($alpha); my $sin_beta = sin($beta); my $cos_alpha = cos($alpha); my $cos_beta = cos($beta); my $p0_x = $x + $a * $cos_alpha; my $p0_y = $y + $b * $sin_alpha; my $p1_x = $x + $a * ($cos_alpha - $bcp * $sin_alpha); my $p1_y = $y + $b * ($sin_alpha + $bcp * $cos_alpha); my $p2_x = $x + $a * ($cos_beta + $bcp * $sin_beta); my $p2_y = $y + $b * ($sin_beta - $bcp * $cos_beta); my $p3_x = $x + $a * $cos_beta; my $p3_y = $y + $b * $sin_beta; $x,$y ... center point of arc $alpha,$beta ... start/end angle of arc $a,$b ... x/y extens of fitting elipsis (for circle $a=$b) $p0_x,$p0_y ... start-point of bezier $p1_x,$p1_y ... control-point 1 of bezier $p2_x,$p2_y ... control-point 2 of bezier $p3_x,$p3_y ... end-point of bezier Mind that you cannot calculate correct arcs for abs($beta-$alpha)>180 using this bezier approximation, so if your arcs span more than 180 degrees split it into two using a middle angle. (alfredreibenschuh@yahoo.com) ------------------------------------------------------------------------------- 2.14: JBIG2 compression support The version 1.4 PDF specification allows JBIG2 compression to be used in PDF files. Has anybody been able to get Acrobat 5.0 create a PDF file that contains JBIG2-compressed images? I don't think it will. I couldn't do it programmatically. There is certainly nothing in the user interface. The support may be read-only at the moment (and I have no way to confirm even that). It may be that Adobe have done something unusually sensible with regard to changes: add support for reading the files, then wait another year before making anyone. This could make the transition a lot smoother. Aandi Inston (quite@dial.pipex.com) ------------------------------------------------------------------------------- 2.15: Rotated text I'm trying to draw rotated text, given the point where the text starts, and an angle of rotation (e.g., 90 degrees). So far, the text does not show up, so I guess my transformation matrix is incorrect, or maybe it's something else. If you know how to do this, could you show an example? To be more specific, what I'm trying to do is rotate text 90 degrees without "changing" the page's coordinate system. In essence, with x,y being a point in the page's "normal" coordinate system, the text is to start at x,y, except be rotated 90 degrees. What I tried was 0 1 -1 0 0 0 Tm The text matrix is the way to move text. The best approach in debugging the matrix is to do the mathematics yourself. Since the text starts at 0,0 in user space, calculate the transformation of 0,0 with your matrix and see where it is. (This assumes that cm has not also been used). Aandi Inston (quite@dial.pipex.com) OK, what you want to do is save the graphic state ("q") then do the rotation, then restore the old state ("Q"). The rotation itself is also a bit more complex than what you have. For a single line of text it will be 0 1 -1 0 h 0, where "h" is the height of the text. Think about rotating a rectangle about the origin and you can see where the "h" comes from. Arne (arnet@hpcvplnx.cv.hp.com) =========== ACROBAT =========================================================== 3.1: Should I upgrade from 4.0 to 5.0? What are the new features/improvements? Too many to list here. Adobe's site presently has a ton of material listing all the new tools and features. Here are a few of my favorites. Workflow automation Database connectivity Online collaboration Much improved javascript editor Great new JavaScript objects and interface control Tools for adding PDF structure XML support Mr T (nert@bobco.com) ***** We just got our copy of Acrobat 5. First impressions are: 1. If you use forms, you can now use all available fonts, not just the base 13. 2. You can export pdf's to jpeg, tiff, and rtf. The rtf means that you can now create Word documents from PDF documents. We tried it, and the results were OK for text, but poor for anything with complicated formatting, like tables and columns. And non existant for graphics. 3. There are numerous improvements for the colour pre-press market, but we haven't evalutated them yet Dan Sideen (dansideen@home.com) ***** 4.05 has Paper Capture. It is an add-on in 5.x. Paper Capture is OCR. Use Acrobat to scan a doc and edit the doc in Acrobat subject to the rule that you must edit text one line at a time. Very useful when making extra copies of documents. REMOVEraindoll@ziplip.com Adobe have now announced that the Capture plug-in is coming back for v5. It will be a separate download (for v5.00 users anyway) and is slated to be available about June 2001. Mark Anderson (mark@notmeyeardley.demon.co.uk) ------------------------------------------------------------------------------- 3.2: Toolbar icons I've created my own ToolButton in the default ToolBar but I'm not able to load the icon I've designed. I'm using the AVToolButtonNew method. What are the attributes of the icon: - type (bitmap, icon, ...) - size - colours? Aandi Inston (quite@dial.pipex.com) The icon type is Icon the size is 18x18 with 256 colours. Giacomo (x-ray69@usa.net) In my project it is a Bitmap, not Icon. This may be critical. Mine is also 20 x 20 with 16 colours. This may be less important. Refer to (I think) the ImageSel project; the documentation on this point is poor. Aandi Inston (quite@dial.pipex.com) It displays just a question mark insted of my icon. I've also tryed to convert the .ico file into a bitmap and load it using the same procedure as shown in ImageSel project. No way. I'm banging my head on the wall... I need it to work out! Giacomo (x-ray69@usa.net) ------------------------------------------------------------------------------- 3.3: Cutting text from a PDF and pasting into Word Is there any way to cut and paste from a pdf to a word document or to another document in the adobe suite? I want to copy text from a pdf and put it somewhere else, but not as an image. [First put Acrobat into continuous view mode. That way you can copy more than one page at a time, up to the entire document, but subject to clipboard size limits. Dave Braze (davebraze@yahoo.com)] In acroreader or acrobat just use the text select tool to select your text, copy & paste in the normal way. Steve Cook (steve.cook@spamulike.bigfoot.com) Adobe Acrobat 5.0 also has a save as RTF (a format Word can open) option... Michael Still (mikal@stillhq.com) ------------------------------------------------------------------------------- 3.4: Guiding your readers through your document I received in the mail a pdf that when over a page, the hand icon has a down arrow on it and it functions to advance forward through the document when you click. I would like to add this feature to my documents but can find no reference to it in the Acrobat User's Guide. Does anyone know how to add this? You can do this in Acrobat by using the article tool. It allows you to guide your readers through the document. It is described in the Acrobat User's Guide from page 247 onwards. mschulz (mschulz@bigpond.net.au) ------------------------------------------------------------------------------- 3.5: Printing from the command line Can anybody tell me if a PDF commandline-tool is available, ie. I would like to execute a line like: PDFPRINT ACRO.PDF PRINTERXX [COPIES=4] resulting in 4 copies of the ARCO.PDF-document on the printer called PRINTERXX You can use the Acrobat Reader for printing PDF files via the command line (although xou can't set the number of copies). From the Acrobat Developer FAQ: "Using Command Lines with Acrobat and Acrobat Reader under Windows These are unsupported command lines, but have worked for some developers. There is no documentation for these commands other than what is listed below. You can display and print a PDF file using command lines with Acrobat and Acrobat Reader. AcroRd32.exe filename - Executes the Reader and displays a file. AcroRd32.exe /p filename - Executes the Reader and prints a file. AcroRd32.exe /t path printername drivername portname - Initiates Acrobat Reader, prints a file while suppressing the Acrobat print dialog box, then terminates Reader. The four parameters of the /t option evaluate to path, printername, drivername, and portname (all strings). printername - The name of your printer. drivername - Your printer driver's name. Whatever appears in the Driver Used box when you view your printer's properties. portname - The printer's port. portname cannot contain any "/" characters; if it does, output is routed to the default port for that printer. If using Acrobat, substitute Acrobat.exe in place of AcroRd32.exe in the command lines." Gunther Schmidt (g.schmidt@bigfoot.de) ------------------------------------------------------------------------------- 3.6: Acrobat on Linux character set problems Sometimes, when trying to display a PDF file with Acrobat Reader (version 4.0 for Linux, from the Debian distribution), I get this message: Unable to extract the embedded font 'AHCAAI+CMSS17'. Some characters may not display or print correctly. You may set the locales for Acrobat Reader to english. You must edit the start script "acroread" which is normally located in /usr/local/Acrobat4/bin : ---------- #!/bin/sh # LC_ALL=C # <--- Add these export LC_ALL # <--- two lines ver=4.0 install_dir=/usr/local/Acrobat4/Reader ---------- Christian Koch (christian_koch@gmx.de) ------------------------------------------------------------------------------- 3.7: Control over OLE automation I have a general question in regard to OLE automation. I've built an application that controls Acrobat, and I'm trying to make it more robust. The problem I'm having is what to do when I try to open a non-existent file (a fdf pointing to a missing pdf file). Acrobat then displays a dialog box, and waits for user input. Since there's no user to click on the cancel or ok button, my program freezes waiting for Acrobat to respond. Is there any way to pass a "cancel" or something similar to Acrobat via OLE automation? You can get the name of the pdf file that the fdf points to using the FDFGetFile method from the Acrobat forms toolkit. Then use code to verify that the pdf exists (and display a suitable message if it doesn't) before trying to open it via the pdf. Dan Sideen (dansideen@home.com) ------------------------------------------------------------------------------- 3.8: Editting existing PDF files Using Acrobat 4 or 5, or any other program, is it possible to edit an existing PDF file: I need to add 1000 pictures (logos) to 1000 different, existing PDF-files. Well, yes, you can edit. One page at a time. You will need patience, or else some product that goes far beyond Acrobat. If using Acrobat, the easiest way to add a logo is to use the Object Touch-up tool, and copy/paste the logo from one PDF (which has it on a blank page, in the right place) to each new page. Aandi Inston (quite@dial.pipex.com) =========== DISTILLER ========================================================= 4.1: Licensing We want to use Distiller Server to create PDF versions of customer annual statements. These will then be made available to the customer over the internet. Is this a violation of the Distiller Server license agreement? I would normally have said not, but the FAQ says "Using Distiller Server, can I create an Adobe PDF file from one of my company's internal documents and publish it on the internet for someone outside my company? For example, if a customer requests a bank statement over the Internet, can I publish it in Adobe PDF?. No....[snip]" This sounds exactly like what we are doing, except that the document is not generated at the customer's request, but periodically. Also, it seems to be saying that no company documents can _ever_ be published on the internet, which can't be right!! Any advice or clarification? Tricky, it depends I believe on whether the customer will request these statements, or you will simply publish them anyway. The first is a violation, the second is (I think) not. It certainly appears that you can read it that way. This would certainly restrict the usefulness of the format. I *thought* the idea of the licence was to prevent you making a 'distillation service' available, whereby people could send you files and have them converted and sent back. Creating your own documents in PDF form would certainly seem reasonable, and if you used the standard Distiller, and paid someone to sit and convert the files, this would certainly be permitted under that licence. I think you may have to seek a legal opinion, or better, a clarification from Adobe. If you get one, I'd be interested in hearing it. Ken Sharp (ken@spamcop.net) ------------------------------------------------------------------------------- 4.2: Colour in distilled PDFs Should I be able to get the jpeg to appear in color in my pdf doc created through Distiller 3.01? Sure, use a colour driver. Aandi Inston (quite@dial.pipex.com) Yes. Do not use the HP driver, but the one Acrobat installed in your system: Acrobat Distiller 3.01. Using a black and white driver makes your images black and white. Matti Vuori (mvuori@koti.soon.fi) ------------------------------------------------------------------------------- 4.3: Distiller page size problems Why is it the whenever I create a pdf file from Word I get a page size of 8x11? I have changed the paper size in the advanced properties of the Distiller printer driver to Postscript Custom Page size and specified the new size but it makes no difference. It doesn't matter whether I print to file and then use Distiller or use the Create Adobe PDF button in Word and Use Distiller that way. I had encountered the same problem and thought it was only on a German Windows2000/NT4 platform, since it didn't occurred on an English version that was at my disposal. May be the solution works for you as well. If you have a user defined format in Word and converting it to pdf via Acrobat Destiller does not output your format, try the following (only Win2000 or NT4): In the printer dialog (- start - settings - printers) in the uppermost menu-list you'll find the "file" menu. In the file menu you'll find the entry "server properties". In the "server properties" you can add a new format (like A4 or US-Letter). Name it "myformat" (or what ever you like). Fill in the your paper size (in the lower part of the dialog). Press the "save format" button. Now every printer that is listed in the printer-dialog-window has the "myformat"-format. Switch to Word. Look in the - file - "set up paper" (or whatever it's called in the English Word) dialog. The "myformat"-format should be displayed instead of "custompapersize". The new format is only local on your workstation (independent from your computer being connected to your LAN). If you want to convert doc to pdf on another machine, you must first add your self-defined paper size to the printer server properties as described above. No convert your Word document to pdf via the destiller. It should work correctly now. Andreas Wall (Andreas.Wall@shinkatech.com) ------------------------------------------------------------------------------- 4.4: Output file names Is there a possibility to automatically generate PDF files with Acrobat Distiller without typing in the name for the output file? I heard that in Acrobat 3 patching some INI files works fine, but is there any chance to do the same in Acrobat 4? With a watched folder you can create automatically a pdf with the same name as the original postscript file. Veli Holopainen (veli.holopainen@kaleva.fi) =========== INTERNET STUFF ==================================================== 5.1: Problems with IE displaying PDFs Does anyone have any suggestions that could help us understand why IE intermittantly will not get the PDF from the web server. We just get a blank screen occasionally, with 'Done' on the status bar. We have tried unoptimizing the DPF so as not to use byte serving. Web server is Apache 3.1.12 HTTP 1.1 on solaris UNIX. The client is NT4 + IE5. I've noticed that it depends (somewhat, not always) on how your serving up your PDF's. I have some software on my site that creates PDFs on-the-fly which wasn't working in IE (got the white screen or Adobe complained it wasn't a valid PDF) but worked fine in Netscape. From your message I take it you have the PDFs on disk already? Instead of writing the PDF stream out to the user's browser I started putting the PDFs on disk and doing a redirect. It seems to have alieviated the problem (server is NT with PDFs being created from Perl scripts). What was really strange was that when I sent the data directly to the browser, and Adobe complained in IE, I did a save to my disk to inspect the contents. Parts of the PDF were missing and even some of the internal structure, like what object the page info was stored at, was changed. I suspect that the plug-in for IE was modifying it (not sure what else could have). Perhaps the same thing is happening on your end? Even some static PDFs I have out there don't always come up properly in IE although in Netscape I don't think I've ever had a problem. Mike Bernardo (mbernardo@chartermi.net) ------------------------------------------------------------------------------- 5.2: Optimised, compressed, linearised? Arrrrgh! My brain hurts! What is the difference between an optomised PDF, a compressed PDF, a linearised PDF, and a cheese stick? These terms are confusing because many people mis use them (to a certain extent Adobe didn't pick very helpful terms either). The PDF specification uses the terms to mean: Optimised: the PDF has been laid out in the most graceful manner possible. For instance, you have saved a black and white image as a colour or grayscale image, which would take a lot more space. Compressed: some elements in the PDF are compressed. The whole document is not required to be compressed however. Linearised: the document has had it's internals rearranged so that byte serving will work. Byte serving is that thing you get on some web sites when only the page you are currently reading is downloaded... This means that you can flick through large documents without having to first download the entire thing. It is often called optimised by people who haven't read the PDF specification. Michael Still (mikal@stillhq.com) =========== HISTORY =========================================================== 6.1: How old is PDF? Does anybody know when PDF was inveted or introduced? The first PDF specification was introduced in 1993. PDF's roots go back much earlier, though, to the invention of Postscript. Scott Robert Ladd (scott.ladd@maximal.com) Here is some information from the preface of Adobe's Pdf Specification. http://partners.adobe.com/asn/developer/acrosdk/docs/PDFRef.pdf Hope this helps. "THE ORIGINS OF THE Portable Document Format and the Adobe Acrobat product family date to early 1990. At that time, the PostScript page description language was rapidly becoming the worldwide standard for the production of the printed page. PDF builds on the PostScript page description language by layering a document structure and interactive navigation features on PostScript's underlying imaging model, providing a convenient, efficient mechanism enabling documents to be reliably viewed and printed anywhere. The PDF specification was first published at the same time the first Acrobat products were introduced in 1993. Since then, updated versions of the specification have been and continue to be available from Adobe via the World Wide Web. This book is the first version of the specification that is completely self-contained, including the precise documentation of the underlying imaging model from PostScript along with the PDF-specific features that are combined in version 1.3 of the PDF standard." DesQuite (desquite@hotmail.com) =========== PDF TOOLS FROM PEOPLE OTHER THAN ADOBE ============================ 7.1: Truetype capable PDF generators (not APIs) I am looking -- mainly for my Word-Docs -- for a free- or a share-ware pdf-creator (Win98) which can embed TrueType and Type1. Any idea? http://www.this.net/~frank/pstill_win.html Doug Milliken (bd427@freenet.buffalo.edu) ------------------------------------------------------------------------------- 7.2: Page extraction Is there a way to automate the extracting of pages from a PDF document by using a script or batch process? I think we might have exactly what you're looking for. Our TK40 toolkit lets you define criteria (how pages break, what indexes exist, etc.) for extracting logical documents from a larger compound PDF file. http://www.maximal.com/products Scott Robert Ladd (scott.ladd@maximal.com) http://www.reportlab.com/pageCatcher/index.html Dinu Gherman (dinu@reportlab.com) ------------------------------------------------------------------------------- 7.3: Distiller equivalents Are there any equivalents of Adobe distiller? GhostScript 7.0 supports almost all of the features of distiller. Alex Cherepanov (alexcher@erols.com) http://www.ctrlp.com/freepdf.asp?st=pdf Ingemar Djurhuus (djurhuus@mail1.stofanet.dk) Jaws Creator http://www.jawssystems.com/products/products_fs.html at $120 US, is an enhanced, commercial alternative to the original 5D program, which can still be downloaded for free at http://www.ctrlp.com/freepdf.asp?st=pdf According to the feature comparison chart, Jaws does almost everything Adobe does, including recognizing Word 97 and 2000 subcomponents. Steve Auerweck (steven.auerweck@verizon.net) ------------------------------------------------------------------------------- 7.4: Extracting images from PDF documents How can I extract images from a PDF file? You could try xpdf's pdfimages (http://www.foolabs.com/xpdf) Jorma Heimonen (Jorma.Heimonen@kone.com) Several ways... and I have used all of these, often just because it's easier than figuring out where I stored the original source imagery (or when I actually want the presented composite image, and not the original raw image). * Some applications, like PhotoShop and Illustrator can open an individual PDF page and edit it. Illustrator is ideal for this, because it preserves all of the page elements as individually selectable entities, and further, preserves their vector or raster nature (and probably the color model). PhotoShop may rasterize the whole PDF page as a single object. Rasterizing entire pages at high resolutions results in HUGE data objects. And unfortunately, unless you can calculate precisely what dpi to use to get 1:1 source:captured pixels, you want to oversample by at least 2x.Run the numbers. Neither Adobe app, however, will open the page if it has any kind of security (open or admin security). Further, embedded fonts may be incorrectly rendered. * Reprint to .eps If you can configure your PostScript driver to a. print-to-file, and b. print in EPS format you can print the page of interest to page.eps, then edit it with whatever EPS-capable image editor you have. Some apps, like Adobe FrameMaker, can import an entire PDF page as a referenced graphics object. You can then reprint it as .eps. FM won't import pages from secured PDFs. * Acrobat and Acrobat Reader can select rectangular sections of a page - if (big if) selecting graphics is allowed in the file (see File:DocInfo:Security). On Windows, place the mouse cursor over the [T] text selection tool, hold the left mouse button down, and let up over the "graphics select tool" icon. Outline the image desired. Zoom to the screen resolution desired. Edit:Copy or [Ctrl[c]] Selected image is now on clipboard. The selected area can be off-screen, and even off logical desktop, but you will be limited on some systems to a maximum graphics object size - 32MB for Windows. If you get a nastygram dialog box, zoom out until you don't. * Screen copy The last resort is to use whatever tools the OS provides, or are available in the freeware, shareware or aftermarkets to perform a full-screen-copy or window-only-copy. On MS Windows, the [PrntScrn] and [Alt[PrntScrn]] keys do this. Zoom to desired size - but the entire desired image must [usually] be on-screen. Generally, unless you can run the numbers and match the object raster res to 1 pixel per screen pixel, you want to zoom as large as possible and over-sample to minimize re-sampling damage. If your graphics card supports large logical desktops, as many Matrox cards do, the image can be partially off-screen as long as it is entirely in the card's on-board RAM, i.e. is entirely on the logical desktop. The 32MB Windows GDI limit applies. All of the above assumes that you own or have permission to re-use the image(s) in question. Bob Niland (rjn@fc.hp.com) ------------------------------------------------------------------------------- 7.4.1: Why can't I just cut and paste the images? I am astonished that this is (apparently) such a complex job. If I want to take a pdf graphic and move it to say, Word, I simply select what I want with the graphic tool (in Exchange), and paste into my Word doc. And I get the graphic - some or all of it depending on what is selected ... Am I missing something here? Possibly. What you describe has some serious limitations: 1. If the document has inhibited "selecting text and graphics", it won't work at all. You'll be limited to screen capture using host OS tools. 2. Even when it does work, you get a RASTER image of the entire selection area. You can't easily separate elements or even eliminate overlay text. Further, if the original graphic was vector, you still get raster - not as scaleable - and often vastly larger. 3. You get that raster at screen resolution. This means that even in the case of raster originals, you are either under- or over-sampling the original, with potential damage to the image. Normally, you need to select the area, then zoom until the "copy" fails due to the object size (32mb in Windows), then down-size the resulting object in your image editor. This minimizes re-sampling artifacts. Bob Niland (rjn@frii.com) Yes. What you describe is equivalent to faxing yourself a copy of the image. It's not the image itself. Not only is it no longer in PDF format but it's limited to the dot-density of your screen, so while it's OK for a Web site, the low resolution will be horribly obvious if you try to print it. Adobe went out of their way to make it _difficult_ to extract a real image from a PDF file, under pressure from publishers who don't want their expensively-generated imaged being pirated. Peter Flynn (peter@silmaril.ie) ------------------------------------------------------------------------------- 7.5: Inserting watermarks over pages in a PDF document What tools can help me insert a watermark over pages in a PDF document? http://www.reportlab.com/pageCatcher/index.html Aaron Watters (aaron@at.reportlab.com) StampPDF Batch will allow you to do this easily. More information on StampPDF Batch; including documentation and online demos, can be found on our web site at http://www.appligent.com Mark Gavin (mgavin@appligent.com) ------------------------------------------------------------------------------- 7.6: Linearisation tools http://www.pdfzone.com/products/software/tool_pdlinearize.html Bryan Guignard (bryang@sympatico.ca) ------------------------------------------------------------------------------- 7.7: Concatenating PDFs http://www.appligent.com/ Aandi Inston (quite@dial.pipex.com) ------------------------------------------------------------------------------- 7.8: Converting HTML to PDF Is there somebody who knows a solution to convert HTML files to PDF files on a linux system? Try HTMLDOC from http://www.easysw.com/htmldoc/ Matthias Haeusser (matthias.haeusser@t-systems.de) ------------------------------------------------------------------------------- 7.9: PDF permissions tools PDF Crypt What is pdfcrypt? pdfcrypt is a very flexible and powerful program. pdfcrypt allows you to set permissions to a PDF-file. For example you can publish a document without to allow to print it. The button to print the file will be disabled in Acrobat Reader application. It's simple to use it like a batch application to set permissions to every PDF in you archive. It's simple to use it like a pipe application. It's simple to use it inside your cgis. We distribute only executable versions (if you need ask us the original PERL code). Download it and test it! http://www.sanface.com/pdfcrypt.html anface@yahoo.com (SANFACE Software) =========== Conversion ======================================================== 8.1: Converting a PDF document to TIFF Is there an easy way to turn a PDF into a TIFF? I've tried exporting as an EPS then opening it in Photoshop, but Photoshop is giving me an error message. I just did it with Illustrator 9. Jim K (jkajpust@concentricRATS.net) Try using ghostscript from http://www.ghostscript.com Michael Still (mikal@stillhq.com) Try Konvertor_pdf2xxx (http://www.logipole.com) Jean Piquemal (j.piquemal@wanadoo.fr) ------------------------------------------------------------------------------- 9.1: Methods of creating Acrobat forms We use Word for producing forms, which I then dutifully run thru Distiller to get pdfs. Now I'd like to go to the next stage, which is putting in form fields so people can fill them out onscreen rather than on paper. Now the only option that I can see is that either (a) I get busy with the Acrobat Exchange form tool (boring, and the forms are vveeerryy long) or (b) I get the people who create the forms to put in some marker in Word that gets converted by a Acrobat add-on to Acrobat fields or (c) install Acrobat on form producers' PCs and train them up (not more attractive than (a), really, and it's certainly expensive). Can anyone advise on the possibilities of (b)? This must be a relatively common problem. I've checked whether Exchange converts Word forms into Acrobat ones: no, it doesn't (in v3, not sure about v5). Here are your options, and there aren't many. Learn all the intricacies of the Acrobat forms tools. It has many time saving shortcuts you can use. Learning how to duplicate and rename fields effectively can really cut down your development time. Also learn to "borrow" ready made stuff from other forms. You can easily cut your development time in half or less by using these shortcuts. There's an excellent forms tutorial that explains these tricks. It's here: http://www.planetpdf.com/mainpage.asp?webpageid=1155 Since you are using Word, you should seriously consider Caere Omni form. What it does is it opens a Word form and converts it to an Omni form, which can then be saved as a PDF form or HTML form. The conversion is not perfect, but you can expect about a 90% accuracy rate. It will even convert simple form functions and calculations for you. I highly recommend it, and the price is right. Another option is to import your Word files into a PDF savvy app like FrameMaker or PageMaker, and let them perform the PDF conversion. FrameMaker has a feature called PostScript frames which allows you to manually enter the PostScript or pdfmark code required for generating PDF form fields. PageMaker has a third party plugin you can purchase. It simulates the Acrobat forms tool. I have yet to find a way to do this with Ventura. And the last way I know, is to include pdfmarks directly in your Word documents, by inserting them through Word's field codes. Thomas Merz has an excellent pdfmark primer that explains how to do most of these procedures. It's free. Get it here: http://www.pdflib.com/pdfmark/index.html Bryan Guignard (bryang@sympatico.ca) ------------------------------------------------------------------------------- 9.2: Images inside form elements Can anyone confirm that it is not possible to put an image (jpg/gif) into a form element? I would be happy to convert the image to pdf and then placing it into the form if that needs be. I want to make a pdf document service on our website that provides our customized data and allows the user to upload their logo to place into the document. At this point, I think we need a form (FDF) which will act as a template container, into which we can populate from the database and HTML form, which will include images..... Can anyone provide some pointers, even if to say, its not possible. If you make the form of type Button, and select Icon only to display, you can choose a pdf as the icon. this effectively puts a pdf inside a pdf, and, if the pdf is an image, your problem is solved. Its even easier in Acrobat 5, which allows you to select most bit mapped image formats as icons for buttons. Dan Sideen (dansideen@home.com) ------------------------------------------------------------------------------- 9.3. Using ASP to collect form values Can I use ASP to collect field values from a pdf form? Yes, you can. Put the field values into session variables, then assign the variable name to a form field using the FDFSetValue method available in the FDF toollkit from Adobe. You can code in VBScript (preferred) or Javascript. Here is some sample code that does that, then displays the data in a "master" pdf Set FdfAcX = Server.CreateObject("FdfApp.FdfApp") Dim objFdf Set objFdf = FdfAcX.FDFCreate name = Session("name") address1 = Session("street") & " " & Session("poboxorfloor") address2 = Session("city") & " " & Session("province") & " " & Session("postalcode") title1 = Session("title1") title2 = Session("title2") email = Session("email") objFdf.FDFSetValue "name", name, Off objFdf.FDFSetValue "title1", title1, Off objFdf.FDFSetValue "title2", title2, Off objFdf.FDFSetValue "address1", address1, Off objFdf.FDFSetValue "address2", address2, Off objFdf.FDFSetValue "email", email, Off objFdf.FDFSetFile "http://warehouse.informco.com/asp_projects/liberty/lib06_D.pdf" Response.ContentType = "application/vnd.fdf" Response.BinaryWrite objFdf.FDFSavetobuf objFdf.FDFClose Set objFdf = Nothing Set FdfAcX = Nothing Dan Sideen (dansideen@home.com) =========== ONLINE TUTORIALS ================================================== There are many online tutorials for PDF things. The following might be if interest: Mark Anderson (mark@yeardley.demon.co.uk): I've a number of tutorials on my site (see www.yeardley.demon.co.uk/pdf.html and www.yeardley.demon.co.uk/morpdf.html) that might help folk & your FAQ. 4 spring to mind: 1. PDF on how to set up Reader v4.x to run from PC 2. PDF explaining the v4.x Acrobat/ABT/Reader toolbar and tool shortcuts. 3. PDF showing how to create Doc level JavaScripts. 4. PDF / Word97 DOC for troubleshooting Reader v4.05 (Win) installs (icons, double-click link, etc.)