[xep-support] Marginals in a multi-column document

Gabriel Flepp gabriel at reichardt.ch
Tue Jun 9 04:06:43 PDT 2009


Hi,

Solved it :)
I just put the marginals on both sides of the column, pinpointed them,
and removed the superfluos ones from the xep intermediate file with a
small cpp-programm.

Thanks again for your help

Regards
Gabriel Flepp


Am Tue, 9 Jun 2009 09:47:59 +0200
schrieb Gabriel Flepp <gabriel at reichardt.ch>:

> Hi Kevin,
> 
> Thanks. That should do the trick. Can you send me these examples you
> were talking about? Then I can give it a try.
> 
> Thanks in advance
> Gabriel Flepp
> 
> 
> Am Mon, 8 Jun 2009 09:48:12 -0700
> schrieb "Kevin Brown" <kevin at renderx.com>:
> 
> > Gabriel:
> > 
> > Ah, I see now I misread the question. I am assuming that the
> > marginalis do not impact the flow of the column. If that is true
> > then one way to solve that problem is to use the XEP intermediate
> > format and <rx:pinpoint> objects. Bascially, you would format the
> > whole document with special markers and then using those markers,
> > format a document that has only the marginalis and join them. 
> > 
> > You can get the actual "X", "Y" and original value of an
> > <rx:pinpoint> and because the XEP intermediate format is an XML
> > file, you can also know the page. One could them develop an XSL that
> > "reads" the XEP intermediate file and creates a new XSL FO that just
> > contains the marginals positioned correctly. 
> > 
> > You would loop through all xep:document/xep:page then only call the
> > marginal template to place it at the known "Y" and the new "X". This
> > second FO is formatted to XEP intermediate format also. The two XEP
> > intermediate files can be joined with XSL and then finally processed
> > to desired output. 
> > 
> > So ...
> > 
> > 1) XML+XSL ------> RenderX ------> XEP W/O Marginalis 
> > You already have this, you need to hide marginallis and add
> > <rx:pinpoints>, just calling RenderX to produce XEP intermediate
> > format and not final output
> > 
> > 2) XEP W/O Marginalis+XSL -------> Marginals FO
> > We can send an example that does this step and creates special
> > headers instead of marginalis but the concept is exactly the same.
> > You would only need to place absolutely positioned block-containers
> > at known places.
> > 
> > 3) Marginals FO -> RenderX ------> XEP Marginals
> > This is just RenderX XEP. You end up with a document if formatted
> > that contains only the marginalis and nothing else.
> > 
> > 4) XEP Marginals and XEP W/O marginals --> XEP Joined
> > This is pure XSL, we can send this to you. You join the two
> > documents at the XEP intermediate format stage, basically copying
> > content for one into the other.
> > 
> > 5) XEP Joined -----> RenderX ------> PDF/PS
> > This is just RenderX XEP. You run the combined document.
> > 
> > All of the above can be in a simple program or even a single batch
> > file that does everything. You only pass the XML and XSL and get
> > final output.
> > 
> > This is the exact solution we used for custom headers and custom
> > advertising in a recent book we are working on for a customer. We
> > had to place custom headers based on page content on left/right
> > pages and also custom advertising on top of the page that could not
> > be determined using pure XSL FO.
> > 
> > More information on the XEP intermediate format is here:
> > 
> > http://www.renderx.com/reference.html#IntermediateFormatSpecification
> > 
> > A good example of similar techniques for placing form fields on a
> > page given rx:pinpoints is here:
> > 
> > http://www.renderx.com/solutions/wp_itext_forms.html
> > 
> > I promised the xep-support list a new white paper on the similar
> > solution but in order to do this, I have to clean up the data as it
> > is private. Perhaps we can walk through the solution here for you.
> >          
> > 
> > Kevin Brown
> > RenderX, Inc.
> > (650) 327-1000 Direct
> > (650) 328-8008 Fax
> > (925) 395-1772 Mobile
> > skype:kbrown01
> > kevin at renderx.com
> > 
> > 
> > 
> > 
> > 
> > 
> > -----Original Message-----
> > From: owner-xep-support at renderx.com
> > [mailto:owner-xep-support at renderx.com] On Behalf Of Gabriel Flepp
> > Sent: Monday, June 08, 2009 12:51 AM
> > To: xep-support at renderx.com
> > Subject: Re: [xep-support] Marginals in a multi-column document
> > 
> > Hi,
> > 
> > Thanks but sorry, that's not it. I need to place marginalis in a
> > two-column document. The float="outside" places the marginals on the
> > outside for odd and even pages. It doesn't work with columns.
> > 
> > This is what I need:
> > 	txttxttxt  txttxttxt
> >    mar	txttxttxt  txttxttxt
> > 	txttxttxt  txttxttxt  mar
> >    mar	txttxttxt  txttxttxt
> > 	txttxttxt  txttxttxt  mar
> > 	txttxttxt  txttxttxt
> > 	txttxttxt  txttxttxt
> > 
> > I either need to find out in wich column I am or I have to 
> > find a function like fo:change-bar wich has a
> > "placement='alternate'" parameter. But with fo:change-bar I only
> > have bars and no text:(
> > 
> > Regards
> > Gabriel Flepp
> > 
> > 
> > Am Fri, 5 Jun 2009 08:57:08 -0700
> > schrieb "Kevin Brown" <kevin at renderx.com>:
> > 
> > > Isn't this what you want:
> > > 
> > > http://xep.xattic.com/xep/testsuite/usecases/marginalia.pdf
> > > 
> > > This uses <fo:float float="outside>...</fo:float>
> > > 
> > > It is on this page:
> > > 
> > > http://renderx.net/usecasestest.html
> > > 
> > > Under the heading "Creating marginalia using side floats".
> > > 
> > > -----Original Message-----
> > > From: owner-xep-support at renderx.com
> > > [mailto:owner-xep-support at renderx.com] On Behalf Of Gabriel Flepp
> > > Sent: Friday, June 05, 2009 7:54 AM
> > > To: xep-support at renderx.com
> > > Subject: Re: [xep-support] Marginals in a multi-column document
> > > 
> > > Am Wed, 20 May 2009 09:28:29 +0200
> > > schrieb Gabriel Flepp <gabriel at reichardt.ch>:
> > > 
> > > > Am Mon, 18 May 2009 13:16:44 +0200
> > > > schrieb Gabriel Flepp <gabriel at reichardt.ch>:
> > > > 
> > > > > Hi Everyone,
> > > > > 
> > > > > I need to place marginals in a two column document. That is, I
> > > > > have to place the marginals on the left side of the document
> > > > > for the left column and on the right side for the right
> > > > > column. How do i determine in which column I am at the time,
> > > > > when I have to place the marginal?
> > > > > 
> > > > > Regards
> > > > > Gabriel
> > > > > 
> > > > 
> > > > Hi,
> > > > 
> > > > I nearly found a solution. I managed to include the xalan
> > > > classes. There is a class called NodeInfo. And this class has a
> > > > method columnNumber(). That would be it. Now I have to set an
> > > > attribute in the TransformerFactory to get this thing to work.
> > > > How/where do I set the source_location attribute to true?? I
> > > > didn't find any instructions/tutorials/howtos/examples on how
> > > > to do this. Can anybody help?
> > > > 
> > > > Regards 
> > > > Gabriel
> > > > 
> > > > 
> > > Hi,
> > > 
> > > Still no solution. But I found out that there is a
> > > getColumnNumber() method in the saxon.jar as well. Can someone
> > > point to an example on how to use this? It seems, I have trouble
> > > to understand on how this whole xmlns/java classes/extention
> > > thing works :(
> > > 
> > > Regards 
> > > Gabriel
> > > 
> > 
> > 
> 
> 


-- 
Gabriel Flepp
Reichardt Informatik AG
Hoehenweg 22
CH-4142 Muenchenstein
gabriel at reichardt.ch
-------------------
(*) To unsubscribe, send a message with words 'unsubscribe xep-support'
in the body of the message to majordomo at renderx.com from the address
you are subscribed from.
(*) By using the Service, you expressly agree to these Terms of Service http://www.renderx.com/terms-of-service.html



More information about the Xep-support mailing list