Bug report for Fop [2006/10/08]

2006-10-09 Thread bugzilla
+---+
| Bugzilla Bug ID   |
| +-+
| | Status: UNC=Unconfirmed NEW=New ASS=Assigned|
| | OPN=ReopenedVER=Verified(Skipped Closed/Resolved)   |
| |   +-+
| |   | Severity: BLK=Blocker CRI=CriticalMAJ=Major |
| |   |   MIN=Minor   NOR=Normal  ENH=Enhancement   |
| |   |   +-+
| |   |   | Date Posted |
| |   |   |  +--+
| |   |   |  | Description  |
| |   |   |  |  |
|  953|Opn|Nor|2001-03-12|Incorrect hyperlinks area rendering in justified t|
| 1063|New|Nor|2001-03-21|fop does not handle large fo files|
| 1180|New|Maj|2001-04-02|Problem with monospaced font  |
| 1773|Opn|Blk|2001-05-16|A table that is bigger than the page produces an e|
| 1859|Opn|Min|2001-05-22|org.apache.fop.apps.Driver.reset() doesn't fully r|
| 1998|New|Nor|2001-06-05|linefeed-treatment not understood |
| 2150|Ass|Maj|2001-06-13|New page with  a table-header but without any tabl|
| 2475|Ass|Nor|2001-07-06|Borders don't appear to work in fo:table-row|
| 2740|New|Maj|2001-07-23|multi-page tables sometimes render badly  |
| 2909|New|Maj|2001-07-30|Gradient render error |
| 2964|Ass|Nor|2001-08-02|problems with height of cells in tables   |
| 2988|New|Maj|2001-08-03|0.19: list-item-label does not stick to list-item-|
| 3044|Ass|Maj|2001-08-08|keep-together not functioning |
| 3280|New|Nor|2001-08-27|PCL Renderer doesn't work |
| 3305|Opn|Nor|2001-08-28|list-block overlapping footnote body  |
| 3497|New|Cri|2001-09-07|id already exists error when using span=all attr|
| 3824|New|Blk|2001-09-25|MIF option with tables|
| 4030|New|Nor|2001-10-08|IOException creating Postscript with graphics on S|
| 4126|New|Nor|2001-10-12|FontState.width() returns pts instead of millipts |
| 4226|New|Nor|2001-10-17|The orphans property doesn't seem to work |
| 4388|New|Nor|2001-10-24|Nullpointer exception in the construction of new D|
| 4415|New|Nor|2001-10-25|scaling=uniform does not work on images...  |
| 4510|New|Nor|2001-10-30|fo:inline common properties ignored?  |
| 4535|New|Maj|2001-10-31|PCL renderer 1.13 not rendering SVG   |
| 4767|New|Nor|2001-11-09|SVG text is distored in PDF output|
| 4814|Opn|Nor|2001-11-12|0.20.2RC infinitely loops if there are tables in f|
| 5001|New|Nor|2001-11-21|content-width and content-height ignored? |
| 5010|New|Enh|2001-11-21|Better error reporting needed |
| 5124|New|Maj|2001-11-27|fo:block-container is not rendered properly using |
| 5335|New|Min|2001-12-10|Text with embedded CID fonts not retrievable from |
| 5655|Ass|Nor|2002-01-02|text-decoration cannot take multiple values   |
| 6094|Opn|Maj|2002-01-29|0.20.3rc hangs in endless loop|
| 6237|Opn|Nor|2002-02-05|#xFB01 (fi ligature) produces a sharp? |
| 6305|New|Nor|2002-02-07|Using fo:table-and-caption results in empty output|
| 6427|New|Enh|2002-02-13|Adding additional Type 1 fonts problem|
| 6437|New|Maj|2002-02-13|Tables without fo:table-column don't render   |
| 6483|New|Nor|2002-02-15|Table, Loop, footer could not fit on page, moving|
| 6844|New|Nor|2002-03-04|No line breaks inserted in list-item-label|
| 6918|New|Enh|2002-03-06|reference-orientation has no effect   |
| 6997|New|Nor|2002-03-09|[PATCH] Row-spanned row data breaks over a page wi|
| 7241|New|Nor|2002-03-19|keep-with-previous, keep-with-next only working on|
| 7283|New|Nor|2002-03-20|Table border misaligned when using margin-left in |
| 7337|New|Nor|2002-03-21|border around external image leaves empty space   |
| 7487|New|Nor|2002-03-26|break-before=page for table inserts empty page  |
| 7496|New|Nor|2002-03-26|The table header borders are not adjusted to the b|
| 7525|New|Cri|2002-03-27|table with spans inside a list-block  |
| 7919|New|Cri|2002-04-10|problem to use attribute linefeed-treatment and li|
| 8003|Ass|Maj|2002-04-12|FopImageFactory never releases cached images  |
| 8050|New|Nor|2002-04-13|Soft hyphen (shy;) is not handled properly   |
| 8321|New|Nor|2002-04-19|from-parent('width') returns 0 for nested tables  |
| 8463|New|Nor|2002-04-24|SVG clipping in external.fo example doc when rende|
| 

Re: PATCH for Arabic/Persian Text, and Bidi-override!

2006-10-09 Thread Jeremias Maerki

On 08.10.2006 23:01:13 Kia Teymourian wrote:
 Hi all,
 
 I am working on a patch for Arabic/Persian Text decoration and  
 Implementation of Bidi Algorithm.
 
 I have some questions about it and writing to you to ask for your 
 assistance,
 could you please answer my questions!
 
 1. Can I use java 1.5 or should preferably use 1.4 or JDK 1.3.

Until further notice FOP must compile with JDK 1.3.
See: http://xmlgraphics.apache.org/fop/trunk/compiling.html

 2. I have a long list of constants, Unicode Arabic Presentation forms. 
 This list will be used, when the algorithm search for
 the correct glyphs forms. I think for the best Performance I should 
 define some static final arrays, and write them directly in the
 class program codes. They are some defined Unicode constants, which I 
 get from the Arabic Unicode definition.
 It is also to put them extern in some Text files, read them from 
 there.   Which form would be the best ?

Whatever is fastest. I think both approaches are fine. Have you looked
at ICU4J? Maybe it already provides the functionality you need. I
haven't checked. At any rate, we've considered the use of ICU4J before.

 3. I should add one or two new classes, something like 
 ArabicTextHandler.java
 Can I add them to the package org.apache.fop.layoutmgr ? Where is the 
 right package?

Probably org.apache.fop.layoutmgr.inline.

 4. Can I use some free TTF Fonts in my test cases, they are licensed 
 under GPL.
 I am going to use Persian TTF fonts from  
 http://www.farsiweb.ir/wiki/Persian_fonts
 Is there any license problems?

Yes, the GPL is off-limits for software distributed by the ASF. :-(

See: http://www.apache.org/legal/3party.html

 5. The writing-mode which is entered in a block or block-container 
 statement has to be known by the TextLayoutManager but is not delivered 
 correctly. TextLayoutManager.addAreas(...) is called from 
 BlockContainerLayoutManager.getNextKnuthElements(...) and 
 BlockManager.getNextKnuthElements(...).
 Why? Could you please write me your comments about the implemented 
 writing-mode!

The writing mode is communicated to child layout managers through the
LayoutContext. See for example:
BlockContainerLayoutManager.createLayoutContext().

Would you mind showing us a short description of your approach to
implementing this? We've had people before implementing in this
direction but it was often a hack and did not fit in the whole picture.
I just want to spare you a late disappointment. Thanks. Some
documentation will be extremely important for us, since the current
team knows just about nothing about Arabic text. For example, we will
not be able to determine if some output is correct or not.

Jeremias Maerki



Re: Including an sRGB color profile?

2006-10-09 Thread Jeremias Maerki
Uh yeah, right. I didn't think about that. No way around subclassing
Color then.

On 09.10.2006 09:54:31 Peter Coppens wrote:
 
 
 Do you really have to extend the Color class? I think it already
 provides methods to access the fallback sRGB value which is actually
 what the FO spec wants (getRed(), getGreen(), getBlue()).
 
 Not sureall pretty new for me, but would the getRGB() functions not
 return the profile based converted values rather than the ones the user
 specified as first arguments to the rgb-icc function?


Jeremias Maerki



XSL 1.1 is in Proposed Recommendation phase

2006-10-09 Thread Jeremias Maerki
Subject says it all.

From the W3C news:
2006-10-06: W3C is pleased to announce the advancement of Extensible
Stylesheet Language (XSL) Version 1.1 to Proposed Recommendation.
Version 1.1 updates and enhances the XSL 1.0 Recommendation for change
marks, indexes, multiple flows, and bookmarks, and extends support for
graphics scaling, markers, and page numbers. The change list since
Candidate Recommendation is available. Comments are welcome through 3
November.

http://www.w3.org/TR/xsl11/

Jeremias Maerki



XSL-FO 2.0 workshop in Heidelberg next week

2006-10-09 Thread Jeremias Maerki
If anyone has any requirements for XSL-FO 2.0 which I should bring up at
the workshop in Heidelberg next week, please let me know. Deadline
2006-10-16 so I have time to prepare.

Luca, are you going, too? How do you travel?


Jeremias Maerki



DO NOT REPLY [Bug 40695] - FO Basic link not working on line break

2006-10-09 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://issues.apache.org/bugzilla/show_bug.cgi?id=40695.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=40695


[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |NEEDINFO




--- Additional Comments From [EMAIL PROTECTED]  2006-10-09 02:22 ---
Please state which version of FOP you are using: 0.20.5 or 0.92beta.

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug, or are watching the assignee.


DO NOT REPLY [Bug 40695] - FO Basic link not working on line break

2006-10-09 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://issues.apache.org/bugzilla/show_bug.cgi?id=40695.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=40695


[EMAIL PROTECTED] changed:

   What|Removed |Added

Version|all |0.20.4




-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug, or are watching the assignee.


DO NOT REPLY [Bug 40695] - FO Basic link not working on line break

2006-10-09 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://issues.apache.org/bugzilla/show_bug.cgi?id=40695.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=40695


[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEEDINFO|RESOLVED
 Resolution||WONTFIX




--- Additional Comments From [EMAIL PROTECTED]  2006-10-09 02:49 ---
FOP 0.20.x is no longer supported. Please retest your FO on 0.92beta. Please 
free to re-open the bug if your FO fails with 0.92beta.

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug, or are watching the assignee.


DO NOT REPLY [Bug 40655] - [PATCH] Failure in PNGRenderer when output file name is missing an extension

2006-10-09 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://issues.apache.org/bugzilla/show_bug.cgi?id=40655.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=40655


[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED




--- Additional Comments From [EMAIL PROTECTED]  2006-10-09 03:34 ---
Patch applied in revision 454331. Thanks.

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug, or are watching the assignee.


Re: Including an sRGB color profile?

2006-10-09 Thread Jeremias Maerki

On 09.10.2006 11:49:13 Peter Coppens wrote:
 
  What is not clear to me is how I can get hold of the color-profile
  information (as in 
  fo:declarations
  fo:color-profile color-profile-name= src=.../ ?
  /fo:declarations
  )
 
 Hmm, yes, I guess that will also have to be implemented. Take a look at
 org.apache.fop.fo.pagination.ColorProfile. Something is already there
 but with TODO flags. The color profiles will be stored in the
 Declarations object. You will then have to extend
 org.apache.fop.fo.pagination.Declarations with methods for accessing
 individual ColorProfiles. The Declarations object is accessible through
 the Root object.
 
 I am struggling with the fact that the Color object is created in the
 ColorUtil#parseColorString method which does not have access to the FO tree
 (I think). 

Indeed, ColorUtil.parseColorString() is used in various places in
various contexts. For this to work as needed, every such call has to
have some context information about the ICC profiles available. For
example, the AreaTreeParser should equally be able to build up the color
instances again from the serialized area tree. There, no FO tree is
available. With the switch to use java.awt.Color you have to specify the
color space when instantiating the color.

 I see two approaches. Either the signature of parseColorString has to change
 to take an extra argument that gives access to the tree or creating the
 java.awt.Color derived class has to be postponed. Perhaps there are other
 solutions as well.
 
 At first sight I would think extending parseColorString makes the most
 sense, but I am not sure all callers of parseColorString have access to the
 tree and I'd rather not see function signature changes ripple up/down
 further.

I don't think this will go without changing some method signatures.
Given that not in every context (see AreaTreeParser example above) you
have the FO tree available. So it may make sense to define a
ColorContext interface which allows access to the available color
profiles for the document. There would be an implementation for the FO
tree context and one for the AreaTreeParser context, maybe some
additional implementation if necessary. But I can see that there will
need to be some extensive changes. I currently don't see a way around
that. But maybe someone else does.

 Any thoughts?
 
 Thanks!
 
 Peter
 
 PS Apologies for the 101 nature of my questions - not sure they are actually
 suited for this list.

No, that's absolutely ok. I prefer having close contact with
contributors because it minimizes the risk of late surprises for both
sides.


Jeremias Maerki



DO NOT REPLY [Bug 40556] - [PATCH] IndexOutOfBoundsException at ListItemLayoutManager.java:495

2006-10-09 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://issues.apache.org/bugzilla/show_bug.cgi?id=40556.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=40556


[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED




--- Additional Comments From [EMAIL PROTECTED]  2006-10-09 03:58 ---
Patch applied, in revision 454338. Thanks.

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug, or are watching the assignee.


DO NOT REPLY [Bug 40695] - FO Basic link not working on line break

2006-10-09 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://issues.apache.org/bugzilla/show_bug.cgi?id=40695.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=40695


[EMAIL PROTECTED] changed:

   What|Removed |Added

Version|0.20.4  |0.92




-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug, or are watching the assignee.


Re: Including an sRGB color profile?

2006-10-09 Thread Peter Coppens


I don't think this will go without changing some method signatures.
Given that not in every context (see AreaTreeParser example above) you
have the FO tree available. So it may make sense to define a
ColorContext interface which allows access to the available color
profiles for the document. There would be an implementation for the FO
tree context and one for the AreaTreeParser context, maybe some
additional implementation if necessary. But I can see that there will
need to be some extensive changes. I currently don't see a way around
that. But maybe someone else does.



Trying to trim down the amount of code I will have to touch (this is my
first attempt to contribute to an open source project and I'd rather start
as small as possible)

Perhaps the following could work?

(*) I add a second rgb-icc function, rgb-icc-internal or whatever that does
not take an NCNAME for its colorprofile parameter, but the src of the
matching element from the declarations element.
(*) The user specifies rgb-icc (of course) which will always, I hope, be
parsed through a call to [EMAIL PROTECTED] - ? -
ColorUtil#parseColorString. The result of this is a class derived from
java.awt.Color which registers rgb replacement values, icc values, color
profile ncname and also the color profile src (setting the src happens in
the new ICCColorFunction#eval method which has access to the fo tree)
(*) If later ColorUtil#colorTOsRGBString is called, the ColorUtil returns an
rgb-icc-internal iso rgb-icc call where relevant (I guess the name should be
changed)
(*) Obviously parsing of rgb-icc-internal will also be added, but at this
stage the map is no longer needed.


Thoughts on (1) this could work (2) you guys would buy into this rather
awkward approach?

Thanks,

Peter
-- 
View this message in context: 
http://www.nabble.com/Including-an-sRGB-color-profile--tf1373500.html#a6716163
Sent from the FOP - Dev mailing list archive at Nabble.com.



DO NOT REPLY [Bug 40442] - [PATCH] percent length not working in font-size for rtf output

2006-10-09 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
http://issues.apache.org/bugzilla/show_bug.cgi?id=40442.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=40442


[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|REOPENED|RESOLVED
 Resolution||FIXED




--- Additional Comments From [EMAIL PROTECTED]  2006-10-09 06:07 ---
Patch applied in revision 454369. Thanks.

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug, or are watching the assignee.


Re: Including an sRGB color profile?

2006-10-09 Thread Peter Coppens

On second thought, having the conversion based on the profile might be the
right thing to do after all. Either the renderer knows how to deal with
color profiles and will do the necessary, or it does not in which case it
will ask the color for its rgb values. The profile based converted values
might be the best bet then. 

Also the xsl spec says the replacement values are used when the color
profile is not available (not when the renderer does not know how to deal
with it). When the profile can not be loaded, an rgb Color based on the
replacement values can be created and returned.

Leaves the CMYK casenot sure what to do there. I guess converting
device/default cmyk to (device/default?) rgb is also easy so in that case
replacement values are not needed either. That would mean that the
cmyk(c,m,y,k) approach could work just as well as the perhaps more awkward
rgb-icc(r,g,b,#CMYK,c,m,y,k) hack. It does seem necessary to create a CMYK
color space class though (or complete the one in org.apache.fop.util).

Apologies for all the confusion and unclear questions...this is (obviously)
all very new for me and I am far from confident I grasp all the details or
consequences of possible decisions made


Jeremias Maerki-2 wrote:
 
 Uh yeah, right. I didn't think about that. No way around subclassing
 Color then.
 
 On 09.10.2006 09:54:31 Peter Coppens wrote:
 
 
 Do you really have to extend the Color class? I think it already
 provides methods to access the fallback sRGB value which is actually
 what the FO spec wants (getRed(), getGreen(), getBlue()).
 
 Not sureall pretty new for me, but would the getRGB() functions not
 return the profile based converted values rather than the ones the user
 specified as first arguments to the rgb-icc function?
 
 
 Jeremias Maerki
 
 
 

-- 
View this message in context: 
http://www.nabble.com/Including-an-sRGB-color-profile--tf1373500.html#a6726105
Sent from the FOP - Dev mailing list archive at Nabble.com.



Re: Including an sRGB color profile?

2006-10-09 Thread Jeremias Maerki
Hey, we're all constantly learning here and I didn't find anything
confusing or unclear in your questions. From what I can read between the
lines you're well on your way in the right direction. However, I must
excuse myself until Wednesday before I can continue to help you since
it's already very late here and I'm not available tomorrow. Maybe
someone else might jump in and help in the meantime.


On 09.10.2006 23:35:08 Peter Coppens wrote:
 
 On second thought, having the conversion based on the profile might be the
 right thing to do after all. Either the renderer knows how to deal with
 color profiles and will do the necessary, or it does not in which case it
 will ask the color for its rgb values. The profile based converted values
 might be the best bet then. 
 
 Also the xsl spec says the replacement values are used when the color
 profile is not available (not when the renderer does not know how to deal
 with it). When the profile can not be loaded, an rgb Color based on the
 replacement values can be created and returned.
 
 Leaves the CMYK casenot sure what to do there. I guess converting
 device/default cmyk to (device/default?) rgb is also easy so in that case
 replacement values are not needed either. That would mean that the
 cmyk(c,m,y,k) approach could work just as well as the perhaps more awkward
 rgb-icc(r,g,b,#CMYK,c,m,y,k) hack. It does seem necessary to create a CMYK
 color space class though (or complete the one in org.apache.fop.util).
 
 Apologies for all the confusion and unclear questions...this is (obviously)
 all very new for me and I am far from confident I grasp all the details or
 consequences of possible decisions made
 
 
 Jeremias Maerki-2 wrote:
  
  Uh yeah, right. I didn't think about that. No way around subclassing
  Color then.
  
  On 09.10.2006 09:54:31 Peter Coppens wrote:
  
  
  Do you really have to extend the Color class? I think it already
  provides methods to access the fallback sRGB value which is actually
  what the FO spec wants (getRed(), getGreen(), getBlue()).
  
  Not sureall pretty new for me, but would the getRGB() functions not
  return the profile based converted values rather than the ones the user
  specified as first arguments to the rgb-icc function?
  
  
  Jeremias Maerki


Jeremias Maerki



Re: XSL-FO 2.0 workshop in Heidelberg next week

2006-10-09 Thread J.Pietschmann

Jeremias Maerki wrote:

If anyone has any requirements for XSL-FO 2.0 which I should bring up at
the workshop in Heidelberg next week, please let me know.


Some rough ideas, unpolished, and without even having had a look at
both 1.1 and the current 2.0 proposals:
- Generalize headers/footers for every block FO, with some control
  of behaviour:
  - render at the start resp. end of each (normal) area generated
by the FO
  - render only at page breaks, not at start of first resp. end
of last area
  - render only at start of first resp. end of last area, not at
page breaks (complement of previous behaviour)
  Needed for the dreaded continued next page stuff, which can
  then be used for lists and other blocks too.
- Blocks with multicolumn layout like for body regions (difficult
  to implement if BPD isn't easily determined from external
  constraints, needs probably a memory consuming branch  bound
  algorithm for layout). Needed for newspaper-like and journal
  layouts, for side boxes and such.
- Text floating around areas absolutely positioned on a page.
  This means, among other things, that line areas may be split.
  In multicolumn layouts, the fixed area may affect more than
  one column. Needed for some journal layouts, for focus text
  and images, side boxes and such.
- An element to get the total number of pages in a page sequence
  or for the whole document (instead of formatted page numbers).
  There are probably some generalizations in there, perhaps the
  number of pages which are plastered with normal areas from an
  arbitrary FO. Needed for some legal documents, namely contracts.
- more color models
- Doing something about the subtotals on this page and number
  of foo stuff on this page problems, preferably without plugging
  a complete spreadsheet language into XSLFO. Perhaps a fo:calculate
  refer=page/fo-id select=xpath expression/ with a possibly
  slightly restricted XPath expression, which selects from the
  referenced page. In case of subtotals, the values to be processed
  should probably be in FO properties (XML attrs) in a canonical
  lexical representation instead of using the formatted content. This
  avoids reparsing the formatted, possibly localized content. XSLT can
  easily generate the additional, redundant data.
- Clarify the hyphenation-char stuff. Is it a char or a string? A
  FO property expression or a shorthand with a special syntax?
- Fix the kludge which allows page-number-format=01 to be
  processed according to common expectations. If done properly,
  this may fix some other problems like the problem with
  hyphenation-char above as well.
- Recommendations on metadata, references to appropriate standards
- Recommendations and/or (non-)contracts on how to handle external
  ressources if they are used multiple times (e.g. images in static
  content). Useful to know how the processor may or must not behave
  if the ressource is dynamically generated on access.

More radical thoughts:
- Deprecate both list and table elements and replace by a single
  unified element set for grid layouts. A content flow is a series
  of blocks, which may contain in a blocks, inlines or a grid of other
  blocks.
- Deprecate mixing inlines and blocks :-P
- Invent controls so that blocks can be broken both in IPD and BPD
  for pagination. This may solve the break wide tables horizontally as
  well as the parallel flow text problems, unless it is already solved
  this way in 1.1
- Automatic page master switching in case of IPD overflow. This is the
  switch to landscape for wide tables/images problem. The difference
  to explicitely switching page masters is that some other content
  before/after the wide FO may flow onto the page, thereby avoiding
  unpleasant white areas on the page before and on the last page of the
  wide element.

Please tell me if you need clarifications on any of the points.

J.Pietschmann


Re: XSL-FO 2.0 workshop in Heidelberg next week

2006-10-09 Thread Nicol Bolas

A few. I do think, when proposing these things, it is important to remember
that XSL-FO is not intended to implement all possible typsetting operations,
that it still needs to remain easily implementable.

I guess one question I have is how different should XSL-FO 2.0 be from 1.1?
Should it just be some minor changes/fixes, or are they considering some
pretty substantial changes? Because if it is the latter, I've got some
suggestions with that regard:

* Eliminate entirely the notion of unbounded page lengths/viewports. That
is, browser-like viewing with scrollbars and such. This, among other things,
has the effect of making the viewport stuff unnecessary and substantially
clarifies the specification and any descriptions thereof. The primary
purpose of XSL-FO is for paged media; we already have tools for unpaged
media.

* Seriously reconsider having block-level elements and inline elements be
interleaved. It probably makes FO processor implementation a bit more
difficult. Plus, it's just needless; you can easily wrap that inline stuff
in a block.

* Page specification (simple-page-master) could be made so much more
intuitive. It is far too easy to put a header in the middle of your content
by accident, and while I support that functionality, it should not be the
default.

If it's just minor changes:

* Allow for lists that periodically reverse the left/right (IPD,
technically) positioning of the blocks. Generally, to allow for lists that
alternate one after another which side the content and which side the list
item is on. It would, also, be useful to alter other attributes when doing
this. There is a FO-processor that has an extension to do it, but I forget
its name. This alternation would likewise be reset at every page/region
break.

* In that same vein, similar alternation patters for table row properties
that reset at page/region breaks. This would allow for alternate color
backgrounds, but that always start (wherever they are visible) on a
particular boundary.

* FO 1.1 added the ability to have multiple body regions on a page, and a
flow map to dictate how data flows from one to another. What was not added
were appropriate keeps/breaks to deal with the possibility of switching to a
new region without leaving the page itself. This distinction should be made.

* The ability to specify 2-up/4-up/etc style page generation. This cannot be
done even with FO 1.1's multiple body regions, because one lacks the ability
to have multiple static content regions on a page, as well as where those
regions get placed. Something like a multiple-page-master that physically
shrinks several simple-page-masters onto a single page.

* Footnote numbering/indexing per page or region, rather than leaving it up
to the FO document. The numbering, of course, needs to be flexible and
user-definable (perhaps as a sequence of character possibilities that is
referenced).

* Meta-data needs to be handled in some way. A section, perhaps just after
the page master section, would be ideal.

* Please give us a RELAX NG+Schematron schema for XSL-FO. It would be so
incredibly useful to have such a thing.
-- 
View this message in context: 
http://www.nabble.com/XSL-FO-2.0-workshop-in-Heidelberg-next-week-tf2408511.html#a6727041
Sent from the FOP - Dev mailing list archive at Nabble.com.



Re: PATCH for Arabic/Persian Text, and Bidi-override!

2006-10-09 Thread Manuel Mall
On Monday 09 October 2006 05:01, Kia Teymourian wrote:
 Hi all,

Hi,

Jeremias already responded to you and my comments go in the same 
direction. Firstly, its great that you want to look at this aspect. I 
did investigate support for UAX#14 Unicode compliant line breaking over 
a year ago. I recommend you search the mailing list for UAX#14 and you 
will find the relevant threads.

Joerg contributed some code (never integrated) that implements the line 
breaking table lookup / state machine. That code makes use of Java 
classes created from Unicode data tables. You may want to have a look 
at that as there are possibly things you can reuse (see 
http://people.apache.org/~manuel/fop/linebreak.tar.gz).

BTW, I would place this type of code which basically deals with text 
manipulation in its separate package org.apache.fop.text or 
org.apache.fop.text.unicode.

If you look at text decorations, glyph merging, ligatures it would be 
good if it covers also non arabic languages. For example glyph merging 
applies to some european languages as well (german umlauts, french 
accents, etc.).

Don't hesitate to ask for help on this list. I'll be happy to assist.

 I am working on a patch for Arabic/Persian Text decoration and
 Implementation of Bidi Algorithm.

 I have some questions about it and writing to you to ask for your
 assistance,
 could you please answer my questions!

 1. Can I use java 1.5 or should preferably use 1.4 or JDK 1.3.

 2. I have a long list of constants, Unicode Arabic Presentation
 forms. This list will be used, when the algorithm search for
 the correct glyphs forms. I think for the best Performance I should
 define some static final arrays, and write them directly in the
 class program codes. They are some defined Unicode constants, which I
 get from the Arabic Unicode definition.
 It is also to put them extern in some Text files, read them from
 there.   Which form would be the best ?

 3. I should add one or two new classes, something like
 ArabicTextHandler.java
 Can I add them to the package org.apache.fop.layoutmgr ? Where is the
 right package?

 4. Can I use some free TTF Fonts in my test cases, they are licensed
 under GPL.
 I am going to use Persian TTF fonts from
 http://www.farsiweb.ir/wiki/Persian_fonts
 Is there any license problems?

 5. The writing-mode which is entered in a block or block-container
 statement has to be known by the TextLayoutManager but is not
 delivered correctly. TextLayoutManager.addAreas(...) is called from
 BlockContainerLayoutManager.getNextKnuthElements(...) and
 BlockManager.getNextKnuthElements(...).
 Why? Could you please write me your comments about the implemented
 writing-mode!
 Thank you!

 best regards,
 Kia Teymourian

Manuel