Bug 52412 - does not respect hyphenation="false" with fo:basic-link
Summary: does not respect hyphenation="false" with fo:basic-link
Alias: None
Product: Fop - Now in Jira
Classification: Unclassified
Component: pdf (show other bugs)
Version: 1.0
Hardware: PC Linux
: P2 normal
Target Milestone: ---
Assignee: fop-dev
Depends on:
Reported: 2012-01-02 15:18 UTC by Mathieu Malaterre
Modified: 2012-04-01 13:42 UTC (History)
0 users

input fo (277.37 KB, text/x-xslfo)
2012-01-02 15:18 UTC, Mathieu Malaterre

Note You need to log in before you can comment on or make changes to this bug.
Description Mathieu Malaterre 2012-01-02 15:18:23 UTC
Created attachment 28114 [details]
input fo

I have fop set up with the appropriate facilites for English
hyphenation.  In the document I'm working on, there is a link to a
website.  When the DocBook XSL-NS stylesheets generate a link in XSL-FO,
it includes the URL in brackets.  In the FO, they look like:

  <fo:basic-link external-destination="url(http://creativecommons.org/licenses/GPL/2.0/)">
    <fo:inline>the GNU General Public License as published by the Free Software Foundation: version 2 of the License, dated June 1991</fo:inline>
  <fo:inline hyphenate="false"> [<fo:basic-link external-destination="url(http://creativecommons.org/licenses/GPL/2.0/)">http://creativecommons.org/licenses/GPL/2.0/</fo:basic-link>]</fo:inline>

The latter case, where the URL is in brackets, should not be hyphenated,
because hyphenate="false" on the enclosing fo:inline, and hyphenate is
inherited.  However, fop hyphenates the link anyway.  The offending text
is present on page 2 of the document, in the first paragraph under

Attached are the XSL-FO and the PDF of the document; the former is
bzip2'd, while the latter is not.  Also attached is the FOP
configuration file that is used when building from ant.
Comment 1 J.Pietschmann 2012-01-02 21:24:52 UTC
FOP implements XSL FO 1.0, see http://www.w3.org/TR/xsl/ 
Unfortunately, and somewhat counterintuitively, Common Hyphenation properties
apply only to fo:block and fo:character, not fo:inline or any other inline FO.
This means if you want to disable hyphenation for parts of a block, you'll have
to enclose the words with keep-together.within-line="always" or something similar.
Comment 2 Glenn Adams 2012-04-01 13:42:56 UTC
batch transition to closed for remaining resolved bugs