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: Spans, Abstracts, and Sigplan


Dear Bob:

I am happy to report a great deal of success with the suggestions that
you gave here. I include my comments about your advise below. For more
context, I've put up the results of this work here:

  https://github.com/arcfide/DocBook-Sigplan

Hopefully this will enable academic authors to keep good source texts as
an alternative to LaTeX. I would appreciate anyone looking over the
results there and providing some advice on how to fix it or make the
deployment easier. 

Bob Stayton <bobs@sagehill.net> writes:

> 1.  By default, DocBook treats the abstract and other info elements as
> part of the titlepage information.  Which info elements are actually
> expressed in the output is governed by the titlepage spec mechanism,
> which is documented here:
>
> http://www.sagehill.net/docbookxsl/HTMLTitlePage.html
>
> Since abstract is treated as part of the titlepage, it is formatted by
> the component.titlepage.properties attribute set, which puts it into
> the span with the title.  So your customization needs to remove it
> from the titlepage spec (and rebuild the titlepage templates as
> described in the doc), and then add it as part of the content of the
> article.
>
> The template for article does <xsl:apply-templates/> after the
> titlepage and toc stuff.  By default the info element is not processed
> in normal mode, because it is handled in mode="titlepage mode".  So
> you would need this template to turn it on for body content in normal
> mode:
>
> <xsl:template match="d:info">
>   <xsl:apply-templates select="d:abstract" mode="titlepage.mode"/>
>   <xsl:apply-templates select="d:keywordset" mode="titlepage.mode"/>
>   <xsl:apply-templates select="d:subjectset" mode="titlepage.mode"/>
> </xsl:template>

This worked very well, thank you, though it did take a little bit of
time to understand how customization files worked at first. The
documentation was clear enough to figure it out, though.

> The default templates for keywordset and subjectset in that mode are
> empty in DocBook XSL, because those are typically handled in a custom
> format, if they are output at all.  So you will have to write your own
> templates to format them.

I have not made any attempt to try this yet. 

> 2.  For this author layout, you will need to rewrite the template that
> matches on d:author in mode="titlepage.mode".  You can copy the
> original from fo/titlepage.xsl.  You could use fo:list-block, with the
> author in the fo:list-item-label and the rest in fo:list-item-body.

I wasn't able to figure out how to get a list-block to align its list
items horizontally and distribute them evenly across the width of the
page. Instead, I used a table with a single row in it and a cell per
author with a block for each line of text, which corresponds to the
name, affiliation, and email address. This worked out surprisingly
well. 

> 3.  The abstract title can be formatted using the
> abstract.title.properties attribute set, setting 'text-align' to
> start'.

Thanks for this; I was able to get the abstract formatted perfectly with
this, and the title font size is correct, as well as the location.

> 4.  Text to be placed in an absolute position on a page is typically
> done using an fo:block-container with
> absolute-position="absolute". However, such a container does not
> exclude the body text flow.   If you just try to place that
> information into an fo:block-container that is absolutely positioned
> on the page, the normal body text will write over it.
>
> This one may not be possible with XSL-FO.   Such text would normally
> be put into a float, but in XSL-FO 1.0, a float to the bottom is
> handled by fo:footnote, but footnotes span across both columns.   I
> know the Antenna House XSL-FO processor has extensions for floats that
> might work here, but I don't FOP can do it.  Perhaps someone else has
> a better idea.

I'm still at a loss with this one. If there were a way to raise the
height of the first column of the page, that would probably make it
possible for me to insert the static content right down at the bottom of
the first column and ensure no overlap, but I don't know how to do
this. Other suggestions from others welcome!

-- 
Aaron W. Hsu | arcfide@sacrideo.us | http://www.sacrideo.us
לֵ֤ב חֲכָמִים֙ בְּבֵ֣ית אֵ֔בֶל וְלֵ֥ב כְּסִילִ֖ים בְּבֵ֥ית שִׂמְחָֽה׃



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