Re: [docbook-apps] Image callouts and roles

From
Bob Stayton <>
Date
2011-10-03T10:38:14+00:00
ID
097901cc81b8$79135f20$6400a8c0@pazu
Thread
Re: [docbook-apps] Image callouts and roles


Hi  Chris,

OK.  Prior to Docbook 5, imageobjectco only 
allowed one imageobject, so that is the case that the stylesheet currently 
handles.  I did not realize that more  than one was allowed in DocBook 
5, so that will need  to get fixed in the stylesheets. I filed a bug 
report.

 

For now, the selection process applies only to the 
direct children of mediaobject.  That's why you are getting both images in 
your output.  You'll need to create two children of mediaobject for the 
selection to work.

 

Bob Stayton
Sagehill Enterprises


 

 

  
----- Original Message ----- 

  
From: 
  Chris Ridd 
  

  
To: Bob Stayton 

  
Cc:  
  

  
Sent: Monday, October 03, 2011 3:17 
  AM

  
Subject: Re: [docbook-apps] Image 
  callouts and roles

  

  
On 29 Sep, 2011,at 12:27 PM, Bob Stayton <> wrote:

  

  
    
 
    
Hi 
    Chris,

    
Rendering two 
    images side-by-side in FO output is not expected behavior.  The 
    selection process takes into account all the allowed objects:

    
 

    
<xsl:template 
    name="select.mediaobject.index">
  <xsl:param 
    name="olist"
             
    select="imageobject|imageobjectco
                     
    |videoobject|audioobject|textobject"/>

    
   
    ...

    
 

    
You say you got both the .svg 
    and the .png image in your FO output?  I copied and pasted your example 
    into a test file and processed it with the stock 1.76.1 stylesheet and 
    I got just the .svg image. 

    

 

  
Sorry, I was trying several different things and screwed up my test case. 
  The following includes both images when transformed to FO with the stock 
  1.76.1 fo/docbook.xsl stylesheet:

  

  
    <screenshot>
      
  <mediaobject>
    
  <imageobjectco>
      
  <areaspec>
        <area 
  coords="500,500,600,600" xml:id="example-co"/>
      
  </areaspec>
      <imageobject 
  role="fo">
        <imagedata 
  fileref="/path/to/MVC-DIT-structure.svg"/>
      
  </imageobject>
      <imageobject 
  role="html">
        <imagedata 
  fileref="/path/to/MVC-DIT-structure.png"/>
      
  </imageobject>
    
  </imageobjectco>
      
  </mediaobject>
    </screenshot>

  
That is, one imageobjectco containing two imageobjects that differ by 
  role. My transformation is done using:

  

  
$ xsltproc --nonet --xinclude --stringparam xep.extensions 1 --output 
  article.fo /path/to/docbook-xsl-1.76.1/fo/docbook.xsl article.xml

  

  
Cheers,

  

Chris