Re: pdf bookmarks - instructions/example?

2006-08-16 Thread paul
Thanks Jeremias

I'd been looking at these examples for 0.92 beta before, but they don't help me
with the automatic id-generation.

In a first test, I've created a bookmark-tree, and assigned the same ID to one
of the blocks

(...)
/fo:layout-master-set

!-- bookmark section --
fo:bookmark-tree
fo:bookmark internal-destination=1st Element
fo:bookmark-titleHello_Bookmark/fo:bookmark-title
/fo:bookmark
/fo:bookmark-tree

fo:page-sequence master-reference=page-content
(...)

xsl:template match=Element
fo:block id=1st Element
xsl:apply-templates/
/fo:block
/xsl:template
(...)

This worked fine. 

But I now would like to automate this process for variably many elements. The
elements are read from a XML-file. As I understand, I can automatically create
ID's for the elements with the generate-id() method. But it is not clear to me,
how I can reference those ID's in advance in my bookmark tree. I can call all
elements with a for-each select=Element, but how do I know then, what ID's
they will later be given? Or is it the other way round, do I give the id's in
the bookmarks-tree and retrieve them later? I'm afraid this is a stupid
question, but I hope someone has the patience to help me out, maybe with some
sample code. Many thanks :) 


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: pdf bookmarks - instructions/example?

2006-08-16 Thread Chris Bowditch

paul wrote:

snip/



But I now would like to automate this process for variably many elements. The
elements are read from a XML-file. As I understand, I can automatically create
ID's for the elements with the generate-id() method. But it is not clear to me,
how I can reference those ID's in advance in my bookmark tree. I can call all
elements with a for-each select=Element, but how do I know then, what ID's
they will later be given? Or is it the other way round, do I give the id's in
the bookmarks-tree and retrieve them later? I'm afraid this is a stupid
question, but I hope someone has the patience to help me out, maybe with some
sample code. Many thanks :) 


The key to working with the generate-id(.) function is the fact that it 
takes as argument an XML node AND it is guaranteed to generate the same 
id for the same node, but always generates a different id for every 
unique node in the input XML.


So you just need to make sure that generate-id() is passed the same node 
 when the block is created and when you come to generate the bookmark tree.


BTW, this is a pure XSLT question and you will get better responses to 
such questions on the XSLT Mulberry list.


Chris




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: pdf bookmarks - instructions/example?

2006-08-16 Thread paul
thank you very much, that should get me through... and sorry for posting in the
wrong place.





-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [Poll] Expectations regarding side-floats

2006-08-16 Thread Benoit Maisonny
Jeremias Maerki said:
 For the example you showed below, you don't need fo:float. You can do
that using fo:block-container:

 fo:block-container start-indent=-4.5mm height=1.2em
 space-after=-1.2em
   fo:block start-indent=0mm font-family=Symbol
 width=4.5mm#x2190;/fo:block
 /fo:block-container

You're right in a block context, but this does not work in an inline
context. inline-container does not remove its content from the flow. (am I
missing something?)

On top of it, block-container has the same problem as float: in a
table-cell context, their start-indent is computed relatively to the cell
left border, not to the region-body left border. Hence, my need for
absolute positionning on the inline progression dimension.

There are numerous examples on the Web of marginalia in XSL-FO, but none
using tables.

Suggestions welcome!



 On 13.08.2006 12:08:30 Benoit Maisonny wrote:
 Vincent Hennebert said:
  Dear Fop users,
 
  I'm currently thinking about the implementation of side-floats
(fo:float float=start/end) into Fop.
 This is great news! Lack of side float support have actually prevented us
 from using FOP in our main XSL-FO application, for the last 4 years or so.
  It turns out that there is a
  choice to make between several design decisions which imply different
behaviors regarding the placement of floats on the page.
 
  To help me make a decision, I'd like to know which usage you would
 make
  of side-floats: on a general manner, what sort of typographic
material
  would you typeset using side-floats? Particular things of which we
 don't
  think in the first place?
 We're using side floats to implement a kind of marginalia. When some
content was deleted from the previous version of a document, our
clients
 want to see a change bar and a left-pointing arrow in the left margin.
Example:
 fo:float font-family=Symbol width=4.5mm float=left
 start-indent=-6mm+1.5mm
   fo:block font-family=Symbol width=4.5mm
   #x2190;/fo:block
 /fo:float
 The negative start-indent puts the float in the left margin, out of the
content flow. The objective is to not affect the content layout. We
expect this start-float to appear roughly at the same height as its
anchor, and certainly on the same page.
 
  More specifically, as the XSL-FO recommendation allows some freedom
in
  these areas:
  - would you expect a side-float being placed on another page than its
anchor? Would you prefer the whole chunk of text to be deferred on
 the
following page?
 We expect them on the same page, whatever happens. However, we put
those
 floats in the margin, so that they don't alter the region-body layout
at
 all.
  - would you expect a side-float being split on several pages?
 There's nothing to split in our case: we only have a single character
in
 the float.
  - would you expect different layouts, depending on whether a set of
side-floats would be placed on the middle of a page or at the
bottom
(thus, with some of them on the current page and the others on the
following page)?
 
 It would be problematic for us if a document had so many deletions that
the side-floats would stack horizontally and begin to alter the text
layout, or to stack vertically (with fo:float clear attribute) and be
pushed to the next page.
 The ideal for us would be to stack them on the z-axis.
 
 
  Any comments, remarks, hints of all sort would be welcome.
 I wish we could position the float in the margin using absolute x
coordinates. So, we could position the float at say -6mm from the left
border of region-body and at the same height (y axis) as the anchor. If
I'm not mistaken, this is not possible in XSL-FO, because we're mixing
absolute and relative positioning.
 I haven't looked in details into XSL-FO 1.1 change bars, so I don't
know
 if that new feature would cover our use case (i.e. if we can somehow make
 the change bar look like an arrow).
 Thanks for the poll,
 Benoit



 Jeremias Maerki




..
Benoit Maisonny[EMAIL PROTECTED]
Director  Consultant  http://synclude.com
Synclude





-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Out of HEAP memory...

2006-08-16 Thread Luis Ferro

I've read somewhere in another Java thread that the max memory one can
address as heap is 1.8GB in a 32bit processor...

That means that the max parameter for -Xms and the like is about 1.4GB or
1.5GB...

So, if anyone still gets the message after changing the memory available in
java to run fop then the only solution is to either get a JVM that doesn't
have this limitation (i'm not sure that there is one, but this limit sure is
crappy) or get a machine with 64bit processor!

LF
-- 
View this message in context: 
http://www.nabble.com/Out-of-HEAP-memory...-tf2115067.html#a5831644
Sent from the FOP - Users forum at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: RE: Commercial Documents

2006-08-16 Thread andyrob_24_7
Any clues on how you achieve crop marks and bleeds? 

quoting.. pascal sanchos
--
Our customers expect now more and more, so we can produce Hi quality PDF  
that are used for professional printing, including crop marks and bleeds  
(yes, FOP can do that, either v 0.20.5), etc...  


--
This message was sent on behalf of [EMAIL PROTECTED] at openSubscriber.com
http://www.opensubscriber.com/message/fop-users@xmlgraphics.apache.org/4603489.html

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Commercial Documents

2006-08-16 Thread Jeremias Maerki
As Chris already said, FOP doesn't have anything built-in, yet, for this.
But other have managed by experimenting (Block-containers and SVG).
You'll find some information when you search the mailing list archives:
http://xmlgraphics.apache.org/fop/maillist.html#fop-user-archive

On 16.08.2006 16:10:40 andyrob_24_7 wrote:
 Any clues on how you achieve crop marks and bleeds? 
 
 quoting.. pascal sanchos
 --
 Our customers expect now more and more, so we can produce Hi quality PDF  
 that are used for professional printing, including crop marks and bleeds  
 (yes, FOP can do that, either v 0.20.5), etc...  
 


Jeremias Maerki


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



FOP : Leaders problem

2006-08-16 Thread Buckman Ekow
Title: FOP : Leaders problem






Hello,


I'm working with FOP 0.92 and trying to use fo:leader.

I've got problem when i'm using two fo:leader in one fo:block.


FOP generates :

Text one fisrt line 

text

   on second line


or


Text one fisrt line 

 .Several text on second line with fdkdlkllkf

   fdjkldflklkllklllsddss fjdks


I'd like to generate:


Text one fisrt line 

.text on second line


or


Text one fisrt line 

..Several text on second line with fdkdlkllkf fdjkldflklkllklllsddss

  fjdks



Following the XSL sample:

xsl:template name=GEN-tmpl-generate-leader

 !-- Parameters definition --

 xsl:param name=param-left select=''/

 xsl:param name=param-right select=''/

 xsl:param name=param-wide select=$PAGEL-var-at4-flow-width/


 !--Variables definition--

 !-- Maximum length of the addition of the 2 variables--

 xsl:variable name=var-len-max

  xsl:if test=$QRL-var-solution-current-style-name='default'

   xsl:value-of select=($param-wide - 10) /

  /xsl:if

  xsl:if test=$QRL-var-solution-current-style-name='smoke'

   xsl:value-of select=($param-wide - 10)/

  /xsl:if

 /xsl:variable

 xsl:variable name=var-average-character-size

  xsl:if test=$QRL-var-solution-current-style-name='default'

   xsl:value-of select=3/

  /xsl:if

  xsl:if test=$QRL-var-solution-current-style-name='smoke'

   xsl:value-of select=4/

  /xsl:if

 /xsl:variable

 !-- Calculate length of two params --

 xsl:variable name=var-left

  xsl:value-of select=$param-left/

 /xsl:variable

 xsl:variable name=var-right

  xsl:value-of select=$param-right/

 /xsl:variable

 !-- We consider that in helvetica, the characters   , I, 1, / =

have a length equals to zero.

  , we replace them by an empty space.--

 xsl:variable name=var-len-left =

select=3Dstring-length(translate($var-left,' I/1.',''))/

 xsl:variable name=var-len-right =

select=3Dstring-length($var-right)/

 !--xsl:variable name=var-len-right =

select=3Dstring-length(translate($var-right,' I/1.',''))/--

 xsl:variable name=var-len

  xsl:value-of select=$var-len-left + $var-len-right/

 /xsl:variable


 !-- following length, use one block or two blocks--

 xsl:choose

  xsl:when test=$var-len*$var-average-character-size lt; =

$var-len-max

   fo:block text-align=justify

xsl:copy-of select=$param-left/

fo:leader leader-pattern=dots leader-length.maximum=100% =

leader-length.optimum={$param-wide}mm/

xsl:copy-of select=$param-right/

   /fo:block

  /xsl:when

  xsl:when test=$var-len-right*$var-average-character-size gt; =

$var-len-max

   fo:block text-align=justify

xsl:copy-of select=$param-left/

fo:leader leader-pattern=dots leader-length.maximum=100% =

leader-length.optimum={$param-wide}mm/

   /fo:block

   fo:block text-align=justify text-align-last=right

fo:leader leader-pattern=dots leader-length.maximum=0% =

leader-length.minimum={$param-wide - ($var-len-right + 10)}mm =

leader-length.optimum={$param-wide - ($var-len-right + 10)}mm/

xsl:copy-of select=$param-right/

   /fo:block =09

  /xsl:when =09

  xsl:otherwise

   fo:block text-align=justify

xsl:copy-of select=$param-left/

fo:leader leader-pattern=dots leader-length.maximum=100% =

leader-length.optimum={$param-wide}mm/

   /fo:block

   fo:block text-align=justify

fo:leader leader-pattern=dots leader-length.maximum=100% =

leader-length.optimum={$param-wide - $var-len-right -10}mm/

xsl:copy-of select=$param-right/

   /fo:block

  /xsl:otherwise

 /xsl:choose

/xsl:template



Somebody have any idea ?

Thanks and reguards.


Cordialement.



Ekow Buckman

Sopra group 

Division Midi-Pyrénées

Agence Aéronautique  Spatial

Tel.: +33 (0)5 34 56 73 61
email : [EMAIL PROTECTED] mailto:[EMAIL PROTECTED]






Re: pdf bookmarks - instructions/example?

2006-08-16 Thread paul
And here's an example, for other dummies (like me) who like to copy things. The
result is a Bookmark-Tree in the pdf-document like this

Data
  Element_nr1
  Element_nr2
  Element_nr3
  etc.

**

(...)
/fo:layout-master-set

!-- bookmark section --
fo:bookmark-tree
   fo:bookmark internal-destination=Data
   fo:bookmark-titleData/fo:bookmark-title
   xsl:for-each select=//Element
fo:bookmark internal-destination={generate-id(.)}
fo:bookmark-title
xsl:value-of select=./@element_name/
/fo:bookmark-title
/fo:bookmark
   /xsl:for-each
   /fo:bookmark
/fo:bookmark-tree

fo:page-sequence master-reference=page-content
(...)

xsl:template match=Data
fo:block id=Data
xsl:apply-templates/
/fo:block
/xsl:template

xsl:template match=Element
fo:block id={generate-id(.)}
xsl:apply-templates/
/fo:block
/xsl:template
(...)
**





-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]