Hi Jay, > That was right. I have corrected it by making the following change > to org.apache.fop.render.pdf.PDFRenderer: When the renderer > processes a PDFDestination, it adds a PDFGoTo and makes the > PDFDestination refer to the GoTo object. > > I've tested it on my web site. If you want to see it work, go to > http://www.bryantcs.com/fop/test, open link-test.pdf, and click > "Link test" (the only text on the page). It opens test.pdf to the > second page because the destination named block2 is on the second > page.
It works fine. But there's a problem if the target document contains multiple fox-destinations and they don't happen to be created in lexicographical order. If the /Limits are in the wrong order, most of the destinations don't work. I suppose this can be solved by making PDFdocument.destinations a SortedSet instead of a List, and add a compareTo method to PDFDestination which simply returns the compareTo result on the respective idRefs. This will also make sure that the PDFLimit's /Kids are ordered by destination name (although you don't see those names in the /Kids array). Kind regards, Paul Vinkenoog