OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: Re: [docbook-apps] Modifying line-height for table title

Hi Dave,
In order to make the titles of figures, tables, examples consistent in format, there is a separate attribute-set for them named 'formal.title.properties'.  See this reference for details:
jThat att-set does not actually set the line-height property, so I think the title is inheriting it from the root.properties attribute set, which sets its value to 'normal'.  Most FO processors interpret 'normal' as 1.2em. 
Bob Stayton
Sagehill Enterprises
----- Original Message -----
Sent: Thursday, September 29, 2011 5:54 AM
Subject: [docbook-apps] Modifying line-height for table title

I have set a parameter for line-height (“graphiclineheight”= 1) that works for all text within formal objects - figure, example and the body of tables (i.e. text within table.table). This parameter though doesn’t modify the line-height for d:table/d:title. I looked at the FO output and it seems that d:table/d:title is picking up the line-height for body text, which is 1.2. I have experimented with adding a specific smaller line-height (0.8) within table.properties then the ‘graphiclineheight’ one within table.table.properties, but this only modifies the line height of footnotes which I know is modified by attributes within table.properties – but the table title inexplicably remains unchanged.
I’ve tried to find some relevant fo:block code within tables.xsl and formal.xsl, but I can’t see what else to modify.
Here are my customisations that incorporate line-height for tables:
In “tables.xsl”:
  <xsl:param name="tabletitlelineheight">0.8 </xsl:param>
  <xsl:attribute-set name="table.properties">
<xsl:attribute name="keep-together.within-column">auto </xsl:attribute> <!-- allows tables to
      break ('auto') or not break ('always') across pages -->
<xsl:attribute name="background-color"></xsl:attribute> <!-- specify
      web colour (e.g. #e0e0e0) *****works 28/9/11 -->
<xsl:attribute name="hyphenate"> false </xsl:attribute> <!--hyphenation of text;
      default: false (do not hyphenate). OPTIONS: false, true-->
<xsl:attribute name="text-align"> justify </xsl:attribute> <!--alignment of table
      title. OPTIONS: left, justify *****works 28/9/11-->
<xsl:attribute name="margin-left"> 0pt </xsl:attribute> <!--indent from left
      margin*****works 28/9/11-->
<xsl:attribute name="margin-right"> 0pt </xsl:attribute> <!--indent from right
      margin*****works 28/9/11-->
<xsl:attribute name="margin-top"> 0pt </xsl:attribute> <!--top margin*****-->
<xsl:attribute name="margin-bottom"> 10pt </xsl:attribute> <!--add leading
      after a table (including after footnotes), to adjust text on
      page*****works 28/9/11-->
<!--padding inside table region*****works 20/9/11-->
<xsl:attribute name="padding-left"> 0pt </xsl:attribute>
<xsl:attribute name="padding-right"> 0pt </xsl:attribute>
<xsl:attribute name="padding-top"> 0pt </xsl:attribute>
<xsl:attribute name="padding-bottom"> 0pt </xsl:attribute>
<xsl:attribute name="line-height">
<xsl:value-of select="$tabletitlelineheight"/>
<xsl:attribute-set name= "table.table.properties">
<xsl:attribute name="line-height">
<xsl:value-of select="$graphiclineheight"/>
<xsl:attribute name="background-color"> #e0e0e0 </xsl:attribute> <!-- specify web colour
      (e.g. #e0e0e0) *****-->   
<xsl:attribute name="font-size">
<xsl:when test="ancestor-or-self::d:informaltable">
<xsl:value-of select="$body.font.master * 1"/> <xsl:text> pt </xsl:text>
<!-- informal tables have same font size as body text -->
<xsl:value-of select="$body.font.master * 0.8"/> <xsl:text> pt </xsl:text> <!-- small font for all
            formal tables -->  
<xsl:attribute name="text-align"> left </xsl:attribute>
<xsl:attribute name="border-after-width.conditionality">retain </xsl:attribute> <!-- displays
      bottom border for a table that breaks across to the next page; options: discard [default], retain -->
<xsl:attribute name="border-before-width.conditionality">retain </xsl:attribute> <!-- displays
      top border for a table that breaks across from the previous page; options: discard [default], retain -->
<xsl:attribute name="hyphenate"> false </xsl:attribute> <!-- hyphenation in
      tables; 'true' means turn on hyphenation -->
<xsl:attribute name="border-collapse"> collapse </xsl:attribute> <!-- merge borders
      together for adjacent cells -->
And in “graphics.xsl”:
  <xsl:param name="graphiclineheight">
<xsl:when test = "$graphicfontstyle='sans-serif'">
<xsl:value-of select="$line-height * 1"/>
<xsl:value-of select="$line-height"/>
See attached for sample FO output.
Dave Gardiner

To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]