[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Incorrect page numbers in index for indexterms within mediaobjects?
Folks,
Now that I can include external pages in my document, I want to be able
to add indexterms to them. When I generate the index, however, the page
numbers aren't quite right. These should each end up on a separate page.
Instead, I get:
T
TEST, 144, 144
TEST2, 144
TEST3, 144
Here's my source:
<chapter>
<title>Case Study</title>
<mediaobject>
<objectinfo><indexterm><primary>TEST</primary></indexterm></objectinfo>
<imageobject>
<imagedata fileref="casestudy_001.pdf" scalefit="1"
width="100%" contentdepth="100%" format="PDF"/>
</imageobject>
</mediaobject>
<para/>
<mediaobject>
<objectinfo><indexterm><primary>TEST2</primary></indexterm></objectinfo>
<imageobject>
<imagedata fileref="casestudy_002.pdf" scalefit="1"
width="100%" contentdepth="100%" format="PDF"/>
</imageobject>
</mediaobject>
<para/>
<mediaobject>
<objectinfo><indexterm><primary>TEST3</primary></indexterm></objectinfo>
<imageobject>
<imagedata fileref="casestudy_003.pdf" scalefit="1"
width="100%" contentdepth="100%" format="PDF"/>
</imageobject>
</mediaobject>
<para/>
<mediaobject>
<objectinfo><indexterm><primary>TEST</primary></indexterm></objectinfo>
<imageobject>
<imagedata fileref="casestudy_004.pdf" scalefit="1"
width="100%" contentdepth="100%" format="PDF"/>
</imageobject>
</mediaobject>
</chapter>
Ideas?
Thanks,
--Scott
Scott Hudson wrote:
> Thanks, John! I had to add an additional template to contain the
> chapter, but otherwise works like a charm!
>
> <xsl:template match="chapter[@role='external-doc']">
> <xsl:apply-imports />
> </xsl:template>
>
> <xsl:template match="chapter[@role='external-doc']/mediaobject">
> <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"
> font-size="0"
> line-height="0" break-before="page"
> break-after="page" start-indent="0" end-indent="0">
> <xsl:apply-imports/>
> </fo:block>
> </xsl:template>
>
> Best regards,
>
> --Scott
>
>
> John Brown wrote:
>> Scott Hudson <scott.hudson <at> flatironssolutions.com> writes:
>>
>>> John Brown and Jirka Kosek both had good suggestions to split the case
>>> study into individual pages using pdftk and then use mediaobject.
>>>
>>> This approach seems to work pretty well, although the generated index
>>> entries don't seem to point to the same page where the image is rendered
>>> (pretty close, though).
>>>
>> Never used indexterm, so I have no idea.
>>
>> <! -- Docbook code snipped -->
>>
>>> The biggest problem I'm having now is that the image doesn't appear to
>>> scale the entire width of the page. I'm using XEP, but FOP 0.95 does the
>>> same (or worse).
>>>
>>> What am I missing? I've tried width="100%" but that also errors. I've
>>> also tried setting the default.image.width param, but that doesn't seem
>>> to work either.
>>>
>>> Any ideas?
>>>
>>> Thanks and best regards,
>>>
>>> --Scott
>> DocBook is making the image fit within the margins. The answer is
>> to define custom page masters with left and right margins = 0.
>> Maybe you will also want to suppress the normal DocBook headers
>> and footers with titles and page numbers.
>>
>> The following code allows you to write
>> <appendix role='external-doc'>
>> <mediaobject>
>> ...
>> </mediaobject>
>> <mediaobject>
>> ...
>> </mediaobject>
>> <!-- etc. -->
>> </appendix>
>>
>> If your external page is the same size as your DocBook page, it will
>> take up the entire page.
>>
>> <xsl:template name="user.pagemasters">
>> <fo:simple-page-master master-name="back-odd-body-only"
>> page-width="{$page.width}"
>> page-height="{$page.height}"
>> margin-top="0"
>> margin-bottom="0"
>> margin-left="0"
>> margin-right="0">
>> <xsl:if test="$axf.extensions != 0">
>> <xsl:call-template name="axf-page-master-properties">
>> <xsl:with-param name="page.master">back-odd-body-only</xsl:with-param>
>> </xsl:call-template>
>> </xsl:if>
>> <fo:region-body margin-bottom="0"
>> margin-top="0"
>> column-gap="{$column.gap.back}"
>> column-count="{$column.count.back}">
>> </fo:region-body>
>>
>> </fo:simple-page-master>
>>
>> <fo:simple-page-master master-name="back-even-body-only"
>> page-width="{$page.width}"
>> page-height="{$page.height}"
>> margin-top="0"
>> margin-bottom="0"
>> margin-left="0"
>> margin-right="0">
>> <xsl:if test="$axf.extensions != 0">
>> <xsl:call-template name="axf-page-master-properties">
>> <xsl:with-param name="page.master">back-even-body-only</xsl:with-param>
>> </xsl:call-template>
>> </xsl:if>
>> <fo:region-body margin-bottom="0"
>> margin-top="0"
>> column-gap="{$column.gap.back}"
>> column-count="{$column.count.back}">
>> </fo:region-body>
>> </fo:simple-page-master>
>>
>> <fo:page-sequence-master master-name="back-body-only">
>> <fo:repeatable-page-master-alternatives>
>> <fo:conditional-page-master-reference master-reference="blank"
>> blank-or-not-blank="blank"/>
>> <fo:conditional-page-master-reference master-reference="back-first"
>> page-position="first"/>
>> <fo:conditional-page-master-reference master-reference="back-odd-body-only"
>> odd-or-even="odd"/>
>> <fo:conditional-page-master-reference odd-or-even="even">
>> <xsl:attribute name="master-reference">
>> <xsl:choose>
>> <xsl:when test="$double.sided !=0">back-even-body-only</xsl:when>
>> <xsl:otherwise>back-odd-body-only</xsl:otherwise>
>> </xsl:choose>
>> </xsl:attribute>
>> </fo:conditional-page-master-reference>
>> </fo:repeatable-page-master-alternatives>
>> </fo:page-sequence-master>
>>
>> </xsl:template>
>>
>> <xsl:template name="select.user.pagemaster">
>> <xsl:param name="element"/>
>> <xsl:param name="pageclass"/>
>> <xsl:param name="default-pagemaster"/>
>>
>> <!-- Return my customized title page master name if for titlepage,
>> otherwise return the default -->
>>
>> <xsl:choose>
>> <xsl:when test="@role = 'external-doc'">
>> <xsl:value-of select="'back-body-only'" />
>> </xsl:when>
>> <xsl:otherwise>
>> <xsl:value-of select="$default-pagemaster"/>
>> </xsl:otherwise>
>> </xsl:choose>
>> </xsl:template>
>>
>> <xsl:template match="d:appendix[@role='external-doc']/d:mediaobject">
>> <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format" font-size="0"
>> line-height="0" break-before="page"
>> break-after="page" start-indent="0" end-indent="0">
>> <xsl:apply-imports/>
>> </fo:block>
>> </xsl:template>
>>
>> I am not sure if the back-body-even-only and back-body-odd-only
>> page masteres are strictly necessary.
>>
>> See the following thread:
>> http://thread.gmane.org/gmane.text.docbook.apps/19707
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org
>> For additional commands, e-mail: docbook-apps-help@lists.oasis-open.org
>>
>>
>
>
> ---------------------------------------------------------------------
> 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]