cvs commit: xml-fop/src/org/apache/fop/layoutmgr AbstractBPLayoutManager.java AbstractLayoutManager.java BlockStackingLayoutManager.java LayoutManager.java PageLayoutManager.java SplitContext.java

2002-08-19 Thread keiron

keiron  2002/08/19 01:01:57

  Modified:src/org/apache/fop/layoutmgr AbstractBPLayoutManager.java
AbstractLayoutManager.java
BlockStackingLayoutManager.java LayoutManager.java
PageLayoutManager.java
  Removed: src/org/apache/fop/layoutmgr SplitContext.java
  Log:
  removed split context
  set ipd for static content
  
  Revision  ChangesPath
  1.7   +4 -2  
xml-fop/src/org/apache/fop/layoutmgr/AbstractBPLayoutManager.java
  
  Index: AbstractBPLayoutManager.java
  ===
  RCS file: 
/home/cvs/xml-fop/src/org/apache/fop/layoutmgr/AbstractBPLayoutManager.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- AbstractBPLayoutManager.java  9 Aug 2002 07:11:15 -   1.6
  +++ AbstractBPLayoutManager.java  19 Aug 2002 08:01:56 -  1.7
  @@ -100,7 +100,9 @@
   }
   m_childLMiter.next(); // Otherwise next returns same object
   }
  -m_curChildLM.resetPosition(pos);
  +if(m_curChildLM != null) {
  +m_curChildLM.resetPosition(pos);
  +}
   if (isFinished()) {
   setFinished(false);
   }
  
  
  
  1.9   +1 -6  xml-fop/src/org/apache/fop/layoutmgr/AbstractLayoutManager.java
  
  Index: AbstractLayoutManager.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/layoutmgr/AbstractLayoutManager.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- AbstractLayoutManager.java9 Aug 2002 07:11:15 -   1.8
  +++ AbstractLayoutManager.java19 Aug 2002 08:01:56 -  1.9
  @@ -91,10 +91,5 @@
*/
   abstract public boolean addChild(Area childArea);
   
  -/** Do nothing */
  -public boolean splitArea(Area areaToSplit, SplitContext context) {
  -context.nextArea = areaToSplit;
  -return false;
  -}
   }
   
  
  
  
  1.8   +1 -68 
xml-fop/src/org/apache/fop/layoutmgr/BlockStackingLayoutManager.java
  
  Index: BlockStackingLayoutManager.java
  ===
  RCS file: 
/home/cvs/xml-fop/src/org/apache/fop/layoutmgr/BlockStackingLayoutManager.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- BlockStackingLayoutManager.java   9 Aug 2002 07:11:15 -   1.7
  +++ BlockStackingLayoutManager.java   19 Aug 2002 08:01:56 -  1.8
  @@ -30,72 +30,6 @@
   super(fobj);
   }
   
  -public boolean splitArea(Area area, SplitContext splitContext) {
  -// Divide area so that it will be within targetLength if possible
  -// If not, it can be shorter, but not longer.
  -/* Iterate over contents of the area. *
  -
  -// Need to figure out if we can do this generically
  -// Logically a BlockStacking LM only handles Block-type areas
  -if (!(area instanceof BlockParent)) {
  -return false;
  -}
  -Iterator areaIter = ((BlockParent) area).getChildAreas().iterator();
  -
  -
  -BreakCost minBreakCost = null;
  -MinOptMax remainBPD = splitContext.targetBPD;
  -splitContext.nextArea = area;
  -
  -while (areaIter.hasNext()) {
  -Area childArea = (Area) areaIter.next();
  -if (remainBPD.max  childArea.getAllocationBPD().min) {
  -// Past the end point: try to break it
  -// TODO: get a LayoutManager to do the split of the child
  -// area, either Area = LM or Area = gen FO = LM
  -LayoutManager childLM =
  -  childArea.getGeneratingFObj(). getLayoutManager();
  -splitContext.targetBPD = remainBPD;
  -if (childLM.splitArea(childArea, splitContext) == false) {
  -// Can't split, so must split this area before childArea
  -// Can we pass the iter?
  -// If already saw several a potential break, use it
  -if (minBreakCost != null) {
  -/* Split 'area', placing all children after
  - * minBreakCost.getArea() into a new area,
  - * which we store in the splitContext.
  - *
  -// splitContext.nextArea = 
area.splitAfter(minBreakCost.getArea());
  -} else {
  -/* This area will be shorter than the desired minimum.
  - * Split before the current childArea (which will be
  - * the first area in the newly created Area.
  - *
  -//splitContext.nextArea = area.splitBefore(childArea);
  -}
  -} else
  -return true; // childLM has done 

cvs commit: xml-fop/src/org/apache/fop/svg SVGElement.java

2002-08-19 Thread keiron

keiron  2002/08/19 02:40:56

  Modified:src/org/apache/fop/svg SVGElement.java
  Log:
  properly sets the dpi val
  
  Revision  ChangesPath
  1.30  +4 -10 xml-fop/src/org/apache/fop/svg/SVGElement.java
  
  Index: SVGElement.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/svg/SVGElement.java,v
  retrieving revision 1.29
  retrieving revision 1.30
  diff -u -r1.29 -r1.30
  --- SVGElement.java   7 Aug 2002 16:54:58 -   1.29
  +++ SVGElement.java   19 Aug 2002 09:40:56 -  1.30
  @@ -164,8 +164,9 @@
   float pixeltoMM;
   
   public PDFUnitContext(int size, Element e, float ptmm) {
  -this.e  = e;
  +this.e = e;
   this.fontSize = size;
  +this.pixeltoMM = ptmm;
   }
   
   /**
  @@ -176,7 +177,7 @@
   }
   
   /**
  -  * Returns the context of the parent element of this context.
  + * Returns the context of the parent element of this context.
* Since this is always for the root SVG element there never
* should be one...
*/
  @@ -192,13 +193,6 @@
   }
   public float getPixelUnitToMillimeter() {
   return pixeltoMM;
  -}
  -
  -/**
  - * Returns the font-size medium value in pt.
  - */
  -public float getMediumFontSize() {
  -return 9f;
   }
   
   /**
  
  
  

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




Re: Tasks - layout

2002-08-19 Thread Keiron Liddle

On Sun, 2002-08-18 at 02:07, J.Pietschmann wrote:
 Keiron Liddle wrote:
  I don't think we should expect or even want people to understand
  everything.
 
 I think it's preferable that people hacking around in the
 code understand *something*.

Of course, but how can we make it understandable.

 I took a stab at the static content layout and even get
Great!

 some text but AcrobatReader complains about Font not
 set if there is static content. Also, the static content
 is always rendered into the upper left cornder, regardless
 which region it should be in. Meanwhile I'm completely
 out of ideas where to look, especially for the font issue.

Since each region is in its own graphics state the font needs to be set
at a higher state of for the text in each region. The problem was that
the last font state was kept from the last region.
The regions seem to be put in the right place for me, maybe the viewer
got an error so stopped doing things properly.

 Actually, how is unlimited expressed in MinOptMax terms?
 Stuffing in a large number doesn't strike me as very clean.
 I settled for the page BPD, under the assuption that the
 page viewport would not exceed this.

I'm not sure.
I could imagine that it might adjust to the size of the region. So if
larger it uses min value etc.

 J.Pietschmann



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




cvs commit: xml-fop/docs/examples/advanced K3.TTF K3.xml bar.conf.xml barcode.fo

2002-08-19 Thread keiron

keiron  2002/08/19 03:40:57

  Added:   docs/examples/advanced K3.TTF K3.xml bar.conf.xml barcode.fo
  Log:
  added example for embedding fonts
  using free barcode font for embedding
  
  Revision  ChangesPath
  1.1  xml-fop/docs/examples/advanced/K3.TTF
  
Binary file
  
  
  1.1  xml-fop/docs/examples/advanced/K3.xml
  
  Index: K3.xml
  ===
  ?xml version=1.0 encoding=UTF-8?
  !--
  Note: this file created using TTFReader
  --
  font-metrics 
type=TYPE0font-nameNew/font-nameembed/cap-height0/cap-heightx-height0/x-heightascender390/ascenderdescender0/descenderbboxleft0/leftbottom0/bottomright219/righttop390/top/bboxflags33/flagsstemv0/stemvitalicangle0/italicanglesubtypeTYPE0/subtypemultibyte-extrascid-typeCIDFontType2/cid-typedefault-width0/default-widthbfrangesbf
 gi=47 ue=32 us=32/bf gi=45 ue=36 us=36/bf gi=43 ue=37 
us=37/bf gi=40 ue=42 us=42/bf gi=42 ue=43 us=43/bf gi=0 ue=44 
us=44/bf gi=41 ue=45 us=45/bf gi=46 ue=46 us=46/bf gi=44 ue=47 
us=47/bf gi=5 ue=50 us=48/bf gi=9 ue=56 us=51/bf gi=8 ue=57 
us=57/bf gi=15 ue=83 us=65/bf gi=4 ue=84 us=84/bf gi=34 ue=90 
us=85/bf gi=0 ue=65535 us=65535//bfrangescid-widths start-index=0wx 
w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx 
w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx 
w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx 
w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx 
w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx 
w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx 
w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx 
w=156/wx w=156/wx w=156/wx w=156/wx w=156/wx 
w=156//cid-widths/multibyte-extras/font-metrics
  
  
  
  1.1  xml-fop/docs/examples/advanced/bar.conf.xml
  
  Index: bar.conf.xml
  ===
  ?xml version=1.0 encoding=ISO-8859-1?
  
  !-- TODO: use proper config --
  
  configuration
  
  fonts
  font metrics-file=K3.xml kerning=yes embed-file=K3.TTF
  font-triplet name=Barcode style=normal weight=normal/
  /font
  /fonts
  
  /configuration
  
  
  
  
  1.1  xml-fop/docs/examples/advanced/barcode.fo
  
  Index: barcode.fo
  ===
  ?xml version=1.0 encoding=ISO-8859-1?
  fo:root xmlns:fo=http://www.w3.org/1999/XSL/Format;
 fo:layout-master-set
fo:simple-page-master page-width=21cm page-height=29.7cm 
master-name=first margin-top=5mm
   fo:region-body margin-bottom=4.5in margin-right=5mm margin-left=5mm 
margin-top=5mm/
   fo:region-after extent=4in border-top-color=silver 
border-top-style=dotted border-top-width=0.13mm/
/fo:simple-page-master
fo:simple-page-master page-width=21cm page-height=29.7cm 
master-name=rest margin-right=5mm margin-left=5mm margin-top=5mm 
margin-bottom=5mm
   fo:region-body/
/fo:simple-page-master
fo:page-sequence-master master-name=A4
   fo:repeatable-page-master-alternatives
  fo:conditional-page-master-reference master-reference=first 
page-position=first/
  fo:conditional-page-master-reference master-reference=rest 
page-position=rest/
  fo:conditional-page-master-reference master-reference=rest/
   /fo:repeatable-page-master-alternatives
/fo:page-sequence-master
 /fo:layout-master-set
 fo:page-sequence master-reference=A4
fo:flow flow-name=xsl-region-body
  
  fo:block font-size=14pt font-weight=bold
  Example embedding Font
  /fo:block
  
  fo:block font-size=14pt font-weight=bold
  This example shows how to use an embedded font and
  uses a free barcode font as an example. The barcode font is from
  fo:basic-link 
external-destination=http://www.geocities.com/keith_dimmock/;http://www.geocities.com/keith_dimmock//fo:basic-link
  and is free.
  /fo:block
  
  fo:block font-family=Barcode font-size=74pt line-height=76pt
  space-before.optimum=6mm
  *ID123456*
  /fo:block
  
  fo:block font-family=Barcode font-size=74pt line-height=76pt
  space-before.optimum=6mm
  normal text
  /fo:block
  
  fo:block font-family=Barcode, Helvetica font-size=74pt line-height=76pt
  space-before.optimum=6mm
   *ID123456*   normal text
  /fo:block
  
/fo:flow
 /fo:page-sequence
  /fo:root
  
  
  

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




cvs commit: xml-fop/src/org/apache/fop/render/pdf PDFRenderer.java

2002-08-19 Thread keiron

keiron  2002/08/19 04:54:53

  Modified:src/org/apache/fop/image AbstractFopImage.java EPSImage.java
JpegImage.java XMLImage.java
   src/org/apache/fop/render/pdf PDFRenderer.java
  Log:
  load original data properly
  
  Revision  ChangesPath
  1.12  +11 -1 xml-fop/src/org/apache/fop/image/AbstractFopImage.java
  
  Index: AbstractFopImage.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/image/AbstractFopImage.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- AbstractFopImage.java 2 Aug 2002 08:47:02 -   1.11
  +++ AbstractFopImage.java 19 Aug 2002 11:54:52 -  1.12
  @@ -126,6 +126,12 @@
   loaded = loaded | BITMAP;
   }
   }
  +if(((type  ORIGINAL_DATA) != 0)  ((loaded  ORIGINAL_DATA) == 0)) {
  +success = success  loadOriginalData(ua);
  +if(success) {
  +loaded = loaded | ORIGINAL_DATA;
  +}
  +}
   return success;
   }
   
  @@ -134,6 +140,10 @@
   }
   
   protected boolean loadBitmap(FOUserAgent ua) {
  +return false;
  +}
  +
  +protected boolean loadOriginalData(FOUserAgent ua) {
   return false;
   }
   
  
  
  
  1.7   +2 -1  xml-fop/src/org/apache/fop/image/EPSImage.java
  
  Index: EPSImage.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/image/EPSImage.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- EPSImage.java 27 Jun 2002 11:45:54 -  1.6
  +++ EPSImage.java 19 Aug 2002 11:54:53 -  1.7
  @@ -71,6 +71,7 @@
   bbox[2] = (int) epsData.bbox[2];
   bbox[3] = (int) epsData.bbox[3];
   
  +loaded = loaded | ORIGINAL_DATA;
   }
   }
   
  
  
  
  1.6   +2 -2  xml-fop/src/org/apache/fop/image/JpegImage.java
  
  Index: JpegImage.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/image/JpegImage.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- JpegImage.java27 Jun 2002 11:45:54 -  1.5
  +++ JpegImage.java19 Aug 2002 11:54:53 -  1.6
  @@ -39,7 +39,7 @@
   super(href, imgReader);
   }
   
  -protected boolean loadBitmap(FOUserAgent ua) {
  +protected boolean loadOriginalData(FOUserAgent ua) {
   ByteArrayOutputStream baos = new ByteArrayOutputStream();
   ByteArrayOutputStream iccStream = new ByteArrayOutputStream();
   InputStream inStream;
  
  
  
  1.2   +2 -1  xml-fop/src/org/apache/fop/image/XMLImage.java
  
  Index: XMLImage.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/image/XMLImage.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- XMLImage.java 8 Mar 2002 11:00:19 -   1.1
  +++ XMLImage.java 19 Aug 2002 11:54:53 -  1.2
  @@ -29,6 +29,7 @@
   super(href, imgInfo);
   if(imgInfo.data instanceof Document) {
   doc = (Document)imgInfo.data;
  +loaded = loaded | ORIGINAL_DATA;
   }
   ns = imgInfo.str;
   }
  
  
  
  1.115 +2 -2  xml-fop/src/org/apache/fop/render/pdf/PDFRenderer.java
  
  Index: PDFRenderer.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/render/pdf/PDFRenderer.java,v
  retrieving revision 1.114
  retrieving revision 1.115
  diff -u -r1.114 -r1.115
  --- PDFRenderer.java  19 Aug 2002 09:57:47 -  1.114
  +++ PDFRenderer.java  19 Aug 2002 11:54:53 -  1.115
  @@ -516,7 +516,7 @@
   FopPDFImage pdfimage = new FopPDFImage(fopimage, url);
   int xobj = pdfDoc.addImage(null, pdfimage).getXNumber();
   fact.releaseImage(url, userAgent);
  -} else if (image/jpg.equals(mime)) {
  +} else if (image/jpeg.equals(mime)) {
   if (!fopimage.load(FopImage.ORIGINAL_DATA, userAgent)) {
   return;
   }
  
  
  

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




DO NOT REPLY [Bug 11783] - fo:block background-color=xtext/fo:block generates svg:rect with negative height

2002-08-19 Thread bugzilla

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

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=11783

fo:block background-color=xtext/fo:block generates svg:rect with negative 
height





--- Additional Comments From [EMAIL PROTECTED]  2002-08-19 11:55 ---
This problem appears even if the background-color attribute is not specified

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




cvs commit: xml-fop/test/resources/fop/image logo.tif

2002-08-19 Thread keiron

keiron  2002/08/19 06:45:01

  Modified:test/resources/fop/image logo.tif
  Log:
  changed to a format jimi can handle, no alpha and packed
  
  Revision  ChangesPath
  1.2   +1 -25 xml-fop/test/resources/fop/image/logo.tif
  
Binary file
  
  

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




cvs commit: xml-fop/src/org/apache/fop/fo FOAttributes.java

2002-08-19 Thread pbwest

pbwest  2002/08/19 08:59:23

  Modified:src/org/apache/fop/fo Tag: FOP_0-20-0_Alt-Design
FOAttributes.java
  Log:
  Changed names of maps from \*List\* to \*Map\*.
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.1.2.3   +71 -46xml-fop/src/org/apache/fop/fo/Attic/FOAttributes.java
  
  Index: FOAttributes.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/Attic/FOAttributes.java,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- FOAttributes.java 27 Jun 2002 12:55:18 -  1.1.2.2
  +++ FOAttributes.java 19 Aug 2002 15:59:22 -  1.1.2.3
  @@ -39,7 +39,7 @@
   private static final String revision = $Revision$;
   
   /**
  - * inSpaceAttrLists/i is an ttArrayList/tt to hold the array of 
  + * inSpaceAttrMaps/i is an ttArrayList/tt to hold the array of 
* ttHashMap/tts which contain the attribute lists for each
* namespace which may be active for a particular FO element.  The
* ttArrayList/tt is indexed by the URIIndex for this namespace
  @@ -49,18 +49,18 @@
* The ttArrayList/tt will not be created for a particular instance
* of ttFOAttributes/tt unless a namespace other than the standard
* XSL namespace is activated for this instance.
  - * See ifoAttrList/i.
  + * See ifoAttrMap/i.
*/
  -private ArrayList nSpaceAttrLists;
  +private ArrayList nSpaceAttrMaps;
   
   /**
  - * ifoAttrList/i is a ttHashMap/tt to hold the FO namespace
  + * ifoAttrMap/i is a ttHashMap/tt to hold the FO namespace
* attribute list specified in the FO element with which this list is
* associated.  The ttString/tt attribute value is stored
* indexed by the integer constant property identifier from
* ttPropertyConsts/tt.
*/
  -private HashMap foAttrList = new HashMap(0);
  +private HashMap foAttrMap = new HashMap(0);
   
   private int DefAttrNSIndex = XMLEvent.DefAttrNSIndex;
   
  @@ -71,11 +71,11 @@
* pThe ttAttributes/tt object on the event is scanned, and each
* attribute is examined.  If the attribute is in the default namespace
* for fo: attributes, it is an fo: property, and its value is entered
  - * into the ifoAttrList/i ttHashmap/tt indexed by the property
  + * into the ifoAttrMap/i ttHashmap/tt indexed by the property
* index.
* pIf the attribute does not belong to the default namespace, its
* value is entered into the appropriate ttHashMap/tt in the
  - * ttArrayList/tt inSpaceAttrLists/i, indexed by the attribute's
  + * ttArrayList/tt inSpaceAttrMaps/i, indexed by the attribute's
* local name.
* p
*/
  @@ -83,10 +83,10 @@
   // If the event is null, there is no event associated with this
   // node, probably because this is a manufactured node; e.g.,
   // an invented FopageSequenceMaster.  The default initialisation
  -// includes an empty foAttrList HashMap.
  +// includes an empty foAttrMap HashMap.
   if (event == null) return;
   
  -// Create the foAttrList.
  +// Create the foAttrMap.
   Attributes attributes = event.attributes;
   if (attributes == null) throw new FOPException
  (No Attributes in XMLEvent);
  @@ -109,7 +109,7 @@
   propIndex =
   PropertyConsts.getPropertyIndex(attrLocalname);
   // Known attribute name
  -foAttrList.put(Ints.consts.get(propIndex), attrValue);
  +foAttrMap.put(Ints.consts.get(propIndex), attrValue);
   } catch (PropertyException e) {
   // Not known - ignore
   MessageHandler.errorln(event.qName +  
  @@ -118,27 +118,27 @@
   }
   } else { // Not the XSL FO namespace
   int j;
  -if (nSpaceAttrLists == null) {
  +if (nSpaceAttrMaps == null) {
   //Create the list
  -System.out.println(Creating nSpaceAttrLists);
  -nSpaceAttrLists = new ArrayList(attrUriIndex + 1);
  +System.out.println(Creating nSpaceAttrMaps);
  +nSpaceAttrMaps = new ArrayList(attrUriIndex + 1);
   // Add the fo list
   for (j = 0; j  DefAttrNSIndex; j++)
  -nSpaceAttrLists.add(new HashMap(0));
  +nSpaceAttrMaps.add(new HashMap(0));
   
  -System.out.println(Adding foAttrList);
  -nSpaceAttrLists.add(foAttrList);
  +

cvs commit: xml-fop/src/org/apache/fop/fo FOTree.java

2002-08-19 Thread pbwest

pbwest  2002/08/19 09:08:22

  Modified:src/org/apache/fop/fo Tag: FOP_0-20-0_Alt-Design FOTree.java
  Log:
  Added getCurrentInherited() to return computed or specified values
  from TOStack
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.1.2.6   +19 -2 xml-fop/src/org/apache/fop/fo/Attic/FOTree.java
  
  Index: FOTree.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/Attic/FOTree.java,v
  retrieving revision 1.1.2.5
  retrieving revision 1.1.2.6
  diff -u -r1.1.2.5 -r1.1.2.6
  --- FOTree.java   4 Jul 2002 02:18:33 -   1.1.2.5
  +++ FOTree.java   19 Aug 2002 16:08:22 -  1.1.2.6
  @@ -64,6 +64,11 @@
   protected PropertyParser exprParser;
   
   /**
  + * Args array for refineParsingMethods[].invoke() calls
  + */
  +Object[] args = new Object[2];
  +
  +/**
* An Array of LinkedList[].  Each LinkedList is a stack containing the
* most recently specified value of a particular property.  The first
* element of each stack will contain the initial value.
  @@ -291,6 +296,18 @@
   throws PropertyException
   {
   return getCurrentPropertyTriplet(index).getComputed();
  +}
  +
  +/**
  + * @param index: ttint/tt property index.
  + * @return a ttPropertyValue/tt containing the inherited
  + * property value for the indexed property; i.e. computed if available,
  + * else specified.
  + */
  +public PropertyValue getCurrentInherited(int index)
  +throws PropertyException
  +{
  +return getCurrentPropertyTriplet(index).getComputedOrSpecified();
   }
   
   public void setParserThread(Thread parserThread) {
  
  
  

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




cvs commit: xml-fop/src/org/apache/fop/fo FObjects.java

2002-08-19 Thread pbwest

pbwest  2002/08/19 09:16:51

  Modified:src/org/apache/fop/fo Tag: FOP_0-20-0_Alt-Design
FObjects.java
  Log:
  Coverted subtree property sets from BitSets to ROBitSets
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.1.2.3   +73 -60xml-fop/src/org/apache/fop/fo/Attic/FObjects.java
  
  Index: FObjects.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/Attic/FObjects.java,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- FObjects.java 27 Jun 2002 12:55:18 -  1.1.2.2
  +++ FObjects.java 19 Aug 2002 16:16:50 -  1.1.2.3
  @@ -25,6 +25,7 @@
   import org.apache.fop.fo.PropNames;
   import org.apache.fop.datatypes.Ints;
   import org.apache.fop.datastructs.ROIntArray;
  +import org.apache.fop.datastructs.ROBitSet;
   
   /**
* Data class relating sets of properties to Flow Objects.
  @@ -618,7 +619,7 @@
   foPropertyLists[FObjectNames.INLINE].
   add(Ints.consts.get(PropNames.BASELINE_SHIFT));
   foPropertyLists[FObjectNames.INLINE].
  -add(Ints.consts.get(PropNames.BLOCK_PROGRESSION_DIMENSION));
  +add(Ints.consts.get(PropNames.BLOCK_PROGRESSION_DIMENSION));
   foPropertyLists[FObjectNames.INLINE].
   add(Ints.consts.get(PropNames.COLOR));
   foPropertyLists[FObjectNames.INLINE].
  @@ -628,7 +629,7 @@
   foPropertyLists[FObjectNames.INLINE].
   add(Ints.consts.get(PropNames.ID));
   foPropertyLists[FObjectNames.INLINE].
  -add(Ints.consts.get(PropNames.INLINE_PROGRESSION_DIMENSION));
  +add(Ints.consts.get(PropNames.INLINE_PROGRESSION_DIMENSION));
   foPropertyLists[FObjectNames.INLINE].
   add(Ints.consts.get(PropNames.KEEP_TOGETHER));
   foPropertyLists[FObjectNames.INLINE].
  @@ -671,7 +672,7 @@
   foPropertyLists[FObjectNames.INLINE_CONTAINER].
   add(Ints.consts.get(PropNames.BASELINE_SHIFT));
   foPropertyLists[FObjectNames.INLINE_CONTAINER].
  -add(Ints.consts.get(PropNames.BLOCK_PROGRESSION_DIMENSION));
  +add(Ints.consts.get(PropNames.BLOCK_PROGRESSION_DIMENSION));
   foPropertyLists[FObjectNames.INLINE_CONTAINER].
   add(Ints.consts.get(PropNames.CLIP));
   foPropertyLists[FObjectNames.INLINE_CONTAINER].
  @@ -683,7 +684,7 @@
   foPropertyLists[FObjectNames.INLINE_CONTAINER].
   add(Ints.consts.get(PropNames.ID));
   foPropertyLists[FObjectNames.INLINE_CONTAINER].
  -add(Ints.consts.get(PropNames.INLINE_PROGRESSION_DIMENSION));
  +add(Ints.consts.get(PropNames.INLINE_PROGRESSION_DIMENSION));
   foPropertyLists[FObjectNames.INLINE_CONTAINER].
   add(Ints.consts.get(PropNames.KEEP_TOGETHER));
   foPropertyLists[FObjectNames.INLINE_CONTAINER].
  @@ -733,7 +734,7 @@
   foPropertyLists[FObjectNames.INSTREAM_FOREIGN_OBJECT].
   add(Ints.consts.get(PropNames.BASELINE_SHIFT));
   foPropertyLists[FObjectNames.INSTREAM_FOREIGN_OBJECT].
  -add(Ints.consts.get(PropNames.BLOCK_PROGRESSION_DIMENSION));
  +add(Ints.consts.get(PropNames.BLOCK_PROGRESSION_DIMENSION));
   foPropertyLists[FObjectNames.INSTREAM_FOREIGN_OBJECT].
   add(Ints.consts.get(PropNames.CLIP));
   foPropertyLists[FObjectNames.INSTREAM_FOREIGN_OBJECT].
  @@ -751,7 +752,7 @@
   foPropertyLists[FObjectNames.INSTREAM_FOREIGN_OBJECT].
   add(Ints.consts.get(PropNames.ID));
   foPropertyLists[FObjectNames.INSTREAM_FOREIGN_OBJECT].
  -add(Ints.consts.get(PropNames.INLINE_PROGRESSION_DIMENSION));
  +add(Ints.consts.get(PropNames.INLINE_PROGRESSION_DIMENSION));
   foPropertyLists[FObjectNames.INSTREAM_FOREIGN_OBJECT].
   add(Ints.consts.get(PropNames.KEEP_WITH_NEXT));
   foPropertyLists[FObjectNames.INSTREAM_FOREIGN_OBJECT].
  @@ -881,9 +882,9 @@
   foPropertyLists[FObjectNames.LIST_BLOCK].
   add(Ints.consts.get(PropNames.KEEP_WITH_PREVIOUS));
   foPropertyLists[FObjectNames.LIST_BLOCK].
  -add(Ints.consts.get(PropNames.PROVISIONAL_DISTANCE_BETWEEN_STARTS));
  +add(Ints.consts.get(PropNames.PROVISIONAL_DISTANCE_BETWEEN_STARTS));
   foPropertyLists[FObjectNames.LIST_BLOCK].
  -add(Ints.consts.get(PropNames.PROVISIONAL_LABEL_SEPARATION));
  +add(Ints.consts.get(PropNames.PROVISIONAL_LABEL_SEPARATION));
   
   

cvs commit: xml-fop/src/org/apache/fop/fo PropertyConsts.java

2002-08-19 Thread pbwest

pbwest  2002/08/19 09:20:55

  Modified:src/org/apache/fop/fo Tag: FOP_0-20-0_Alt-Design
PropertyConsts.java
  Log:
  Renamed verifyParsing to refineParsing
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.1.2.6   +14 -14xml-fop/src/org/apache/fop/fo/Attic/PropertyConsts.java
  
  Index: PropertyConsts.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/Attic/PropertyConsts.java,v
  retrieving revision 1.1.2.5
  retrieving revision 1.1.2.6
  diff -u -r1.1.2.5 -r1.1.2.6
  --- PropertyConsts.java   9 Jul 2002 06:47:25 -   1.1.2.5
  +++ PropertyConsts.java   19 Aug 2002 16:20:54 -  1.1.2.6
  @@ -427,20 +427,20 @@
   /**
* An array of ttMethod/tt objects.  This array holds, for each
* property, the ttmethod/tt object corresponding to the
  - * emverifyParsing/em method of the property's class.br/
  - * emverifyParsing/em methods defined in individual properties
  + * emrefineParsing/em method of the property's class.br/
  + * emrefineParsing/em methods defined in individual properties
* shadow the method in the emProperties/em class.
*/
  -private static final Method[] verifyparsingmethods;
  +private static final Method[] refineparsingmethods;
   
   /**
  - * An unmodifiable List of the property iverifyParsing/i methods.
  - * This random access list is derived from iverifyparsingmethods/i,
  + * An unmodifiable List of the property irefineParsing/i methods.
  + * This random access list is derived from irefineparsingmethods/i,
* above.
* It can be indexed by the property name constants defined in
* the PropNames class.
*/
  -public static final List verifyParsingMethods;
  +public static final List refineParsingMethods;
   
   /**
* A ttHashMap/tt of ttMethod/tt objects.  It contains the
  @@ -469,7 +469,7 @@
   traitMappings= new int[PropNames.LAST_PROPERTY_INDEX + 1];
   datatypes= new int[PropNames.LAST_PROPERTY_INDEX + 1];
   classes  = new Class[PropNames.LAST_PROPERTY_INDEX + 1];
  -verifyparsingmethods = new Method[PropNames.LAST_PROPERTY_INDEX + 1];
  +refineparsingmethods = new Method[PropNames.LAST_PROPERTY_INDEX + 1];
   mappednummethods = new HashMap();
   
   for (int i = 0; i = PropNames.LAST_PROPERTY_INDEX; i++) {
  @@ -537,9 +537,9 @@
   traitMappings[i] =
   classes[i].getField(traitMapping).getInt(null);
   datatypes[i] = classes[i].getField(dataTypes).getInt(null);
  -verifyparsingmethods[i] =
  +refineparsingmethods[i] =
   classes[i].getMethod
  -(verifyParsing, new Class[]
  +(refineParsing, new Class[]
   {org.apache.fop.fo.FOTree.class,
PropertyValue.class});
   if ((datatypes[i]  Properties.MAPPED_NUMERIC) != 0)
  @@ -571,8 +571,8 @@
   (Arrays.asList(classes));
   inherited= new ROIntArray(inherit);
   dataTypes= new ROIntArray(datatypes);
  -verifyParsingMethods = Collections.unmodifiableList
  -(Arrays.asList(verifyparsingmethods));
  +refineParsingMethods = Collections.unmodifiableList
  +(Arrays.asList(refineparsingmethods));
   mappedNumMethods = Collections.unmodifiableMap(mappednummethods);
   
   }
  
  
  

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




cvs commit: xml-fop/src/org/apache/fop/fo PropNames.java

2002-08-19 Thread pbwest

pbwest  2002/08/19 09:26:55

  Modified:src/org/apache/fop/fo Tag: FOP_0-20-0_Alt-Design
PropNames.java
  Log:
  Changed ordering of property names to reflect processing order
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.1.2.3   +370 -334  xml-fop/src/org/apache/fop/fo/Attic/PropNames.java
  
  Index: PropNames.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/Attic/PropNames.java,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- PropNames.java27 Jun 2002 12:55:18 -  1.1.2.2
  +++ PropNames.java19 Aug 2002 16:26:55 -  1.1.2.3
  @@ -22,6 +22,10 @@
   private static final String revision = $Revision$;
   
   /*
  + * List of property constants in property processing order -
  + * FONT, FONT_SIZE first
  + * Shorthands must precede any of their expansion elements.
  + * Compounds must precede any of their components.
* The list of property constants can be regenerated in XEmacs by setting
* the region on the list of constants. (C-Space at the beginning,
* move to last line, C-x C-x to exchange mark and point.)  Then run
  @@ -38,223 +42,239 @@
   
   public static final int
   NO_PROPERTY = 0,
  -  ABSOLUTE_POSITION = 1,
  -   ACTIVE_STATE = 2,
  -   ALIGNMENT_ADJUST = 3,
  - ALIGNMENT_BASELINE = 4,
  -   AUTO_RESTORE = 5,
  -AZIMUTH = 6,
  - BACKGROUND = 7,
  -  BACKGROUND_ATTACHMENT = 8,
  -   BACKGROUND_COLOR = 9,
  -   BACKGROUND_IMAGE = 10,
  -BACKGROUND_POSITION = 11,
  - BACKGROUND_POSITION_HORIZONTAL = 12,
  -   BACKGROUND_POSITION_VERTICAL = 13,
  -  BACKGROUND_REPEAT = 14,
  - BASELINE_SHIFT = 15,
  - BLANK_OR_NOT_BLANK = 16,
  -BLOCK_PROGRESSION_DIMENSION = 17,
  -BLOCK_PROGRESSION_DIMENSION_MINIMUM = 18,
  -BLOCK_PROGRESSION_DIMENSION_OPTIMUM = 19,
  -BLOCK_PROGRESSION_DIMENSION_MAXIMUM = 20,
  - BORDER = 21,
  - BORDER_AFTER_COLOR = 22,
  -BORDER_AFTER_PRECEDENCE = 23,
  - BORDER_AFTER_STYLE = 24,
  - BORDER_AFTER_WIDTH = 25,
  -  BORDER_AFTER_WIDTH_LENGTH = 26,
  -  BORDER_AFTER_WIDTH_CONDITIONALITY = 27,
  -BORDER_BEFORE_COLOR = 28,
  -   BORDER_BEFORE_PRECEDENCE = 29,
  -BORDER_BEFORE_STYLE = 30,
  -BORDER_BEFORE_WIDTH = 31,
  - BORDER_BEFORE_WIDTH_LENGTH = 32,
  - BORDER_BEFORE_WIDTH_CONDITIONALITY = 33,
  -  BORDER_BOTTOM = 34,
  -BORDER_BOTTOM_COLOR = 35,
  -BORDER_BOTTOM_STYLE = 36,
  -BORDER_BOTTOM_WIDTH = 37,
  -BORDER_COLLAPSE = 38,
  -   BORDER_COLOR = 39,
  -   BORDER_END_COLOR = 40,
  -  BORDER_END_PRECEDENCE = 41,
  -   BORDER_END_STYLE = 42,
  -   BORDER_END_WIDTH = 43,
  -BORDER_END_WIDTH_LENGTH = 44,
  -BORDER_END_WIDTH_CONDITIONALITY = 45,
  -BORDER_LEFT = 46,
  -  BORDER_LEFT_COLOR = 47,
  -  BORDER_LEFT_STYLE = 48,
  -  BORDER_LEFT_WIDTH = 49,
  -   BORDER_RIGHT = 50,
  - BORDER_RIGHT_COLOR = 51,
  - BORDER_RIGHT_STYLE = 52,
  - BORDER_RIGHT_WIDTH = 53,
  -  BORDER_SEPARATION = 54,
  -  BORDER_SEPARATION_BLOCK_PROGRESSION_DIRECTION = 55,
  - BORDER_SEPARATION_INLINE_PROGRESSION_DIRECTION = 56,
  - BORDER_SPACING = 57,
  - BORDER_START_COLOR = 58,
  -BORDER_START_PRECEDENCE = 59,
  - BORDER_START_STYLE = 60,
  - BORDER_START_WIDTH = 61,
  -  BORDER_START_WIDTH_LENGTH = 62,
  -  

cvs commit: xml-fop/src/org/apache/fop/fo Properties.java

2002-08-19 Thread pbwest

pbwest  2002/08/19 09:42:15

  Modified:src/org/apache/fop/fo Tag: FOP_0-20-0_Alt-Design
Properties.java
  Log:
  Renamed verifyParsing to refineParsing.
  Removed COMPOUND and SHORTHAND_INH inhertance.  Added inheritance() method.
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.1.2.19  +269 -207  xml-fop/src/org/apache/fop/fo/Attic/Properties.java
  
  Index: Properties.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/Attic/Properties.java,v
  retrieving revision 1.1.2.18
  retrieving revision 1.1.2.19
  diff -u -r1.1.2.18 -r1.1.2.19
  --- Properties.java   3 Aug 2002 13:26:59 -   1.1.2.18
  +++ Properties.java   19 Aug 2002 16:42:14 -  1.1.2.19
  @@ -127,13 +127,13 @@
  ,COLOR_TRANS = 67108864
 ,MIMETYPE = 134217728
  ,FONTSET = 268435456
  -//   ,SPARE = 536870912
  +  ,COMPOUND = 536870912
   //   ,SPARE = 1073741824
   //   ,SPARE = -2147483648
   
   // A number of questions are unresolved about the interaction of
   // complex parsing, property expression parsing  property validation.
  -// At this time (2002/07/03) it looks as though the verifyParsing() method
  +// At this time (2002/07/03) it looks as though the refineParsing() method
   // will take full validation responsibility, so it will not be
   // necessary to specify any individual datatypes besides COMPLEX in the
   // property dataTypes field.  This renders some such specifications
  @@ -269,18 +269,33 @@
NO = 0
 ,COMPUTED = 1
,SPECIFIED = 2
  -  ,COMPOUND = 3
  - ,SHORTHAND_INH = 4
  -,VALUE_SPECIFIC = 5
  +,VALUE_SPECIFIC = 3
 ;
   
   /**
  - * Constant for nested ttverifyParsing/tt methods
  + * Derive inherited value for the given property.
  + * This method must be shadowed by properties with special requirements.
  + * @param foTree the ttFOTree/tt being built
  + * @param property the ttint/tt property index
  + * @return ttPropertyValue/tt the inherited property value for the
  + * property.  It contains the inherited icomputed/i value, and no
  + * ispecified/i value.
  + * @exception ttPropertyException/tt
  + */
  +public static PropertyValue inheritance(FOTree foTree, int property)
  +throws PropertyException
  +{
  +// Is it inherited?
  +return foTree.getCurrentInherited(property);
  +}
  +
  +/**
  + * Constant for nested ttrefineParsing/tt methods
*/
   public static boolean IS_NESTED = true;
   
   /**
  - * Constant for non-nested ttverifyParsing/tt methods
  + * Constant for non-nested ttrefineParsing/tt methods
*/
   public static boolean NOT_NESTED = false;
   
  @@ -289,7 +304,7 @@
* 1) PropertyTokenizerbr
* 2) PropertyParser - returns context-free ttPropertyValue/tts
*recognizable by the parserbr
  - * 3) verifyParsing - verifies results from parser, translates
  + * 3) refineParsing - verifies results from parser, translates
*property types like NCName into more specific value types,
*resolves enumeration types, etc.br
*
  @@ -298,23 +313,23 @@
* @param foTree the ttFOTree/tt being built
* @param value ttPropertyValue/tt returned by the parser
*/
  -public static PropertyValue verifyParsing
  +public static PropertyValue refineParsing
   (FOTree foTree, PropertyValue value)
   throws PropertyException
   {
  -return verifyParsing(foTree, value, NOT_NESTED);
  +return refineParsing(foTree, value, NOT_NESTED);
   }
   
   /**
  - * Do the work for the two argument verifyParsing method.
  + * Do the work for the two argument refineParsing method.
* @param foTree the ttFOTree/tt being built
* @param value ttPropertyValue/tt returned by the parser
* @param nested ttboolean/tt indicating whether this method is
  - * called normally (false), or as part of another iverifyParsing/i
  + * called normally (false), or as part of another irefineParsing/i
* method.
  - * @see #verifyParsing(FOTree,PropertyValue)
  + * @see #refineParsing(FOTree,PropertyValue)
*/
  -protected static PropertyValue verifyParsing
  +protected static PropertyValue refineParsing
   (FOTree foTree, PropertyValue value, boolean nested)
   throws PropertyException
   {
  @@ -371,7 +386,7 @@

cvs commit: xml-fop/src/org/apache/fop/datastructs ROBitSet.java

2002-08-19 Thread pbwest

pbwest  2002/08/19 09:46:22

  Added:   src/org/apache/fop/datastructs Tag: FOP_0-20-0_Alt-Design
ROBitSet.java
  Log:
  Read-only BitSet
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.1.2.1   +154 -0xml-fop/src/org/apache/fop/datastructs/Attic/ROBitSet.java
  
  
  
  

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




Re: cvs commit: xml-fop/src/org/apache/fop/render/pdf PDFRenderer.java

2002-08-19 Thread J.Pietschmann

[EMAIL PROTECTED] wrote:
protected void renderRegion(RegionReference region) {
...
   +currentFontName = ;

Wouldn't it be better to do this each time after
writing a BT to the PDF output? (In  startVParea(),
renderViewport() and renderLeader()).

J.Pietschmann


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




Re: URIs and URI resolvers for configuration files, fonts, and images

2002-08-19 Thread J.Pietschmann

[EMAIL PROTECTED] wrote:
 ...resolve relative paths ...
 Is there a way of doing this already, or is there a proposed change for
 this scheduled for an upcoming release?

No on both accounts. I think there will be something
in the redesigned software.
You can contribute it yourself if you like, look
into FOPImageFactory (for resolving external-graphic
source) and ConfigurationReader (for fonts). It should
probably a two-step process, an interface specific
for SVG which returns either a javax.xml.transform.Source
or a parser+InputSource pair, and an interface returning
an InputSource or a java.io.InputStream for other stuff
(which will usually be binary). Using the SVG specific
interface probably will have to be triggered by an
appropriate content-type attribute, otherwise the other
interface is used.
An interesting discussion would be whether the user config
file should be resolvable too (I think avalonizing FOP
will make this reduindant anyway).

J.Pietschmann



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




Re: Tasks - layout

2002-08-19 Thread J.Pietschmann

Keiron Liddle wrote:
 - Add markers to page when areas added 
Is this really a good idea? Markers may be referenced
long after they have been defined, tying them to the
Page object would require keeping the pages in memory
(see 0.20.5cvs: forward page references are *required*
to force keeping pages in memory so that markers can
be retrieved with document scope).
I thought about adding a running number for the page
sequence and for the page within it's page sequence
as well as the necessary information to make retrieving
markers within a page work properly to the marker itself
and store them in an Array list, with the current page
perhaps storing the array index of the first marker of
this page to speed up some retrieval modes.

J.Pietschmann


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




Re: Tasks - layout

2002-08-19 Thread J.Pietschmann

Keiron Liddle wrote:
 - Implement table layout 
 The table layout will use the same technique as the block layout. It
 will locate suitable breaks between rows or inside rows until table
 finished or end of bpd reached. 

Actually, what *are* valid breaks within a table apart from breaks
between two rows with no cell spanning both?

Some interesting situations:

  +-++
  |block|block 1 |
  | |block 2 |
  +-++
Break possibility after block 1 if
BPD(block)BPD(block 1), i.e.
  +-++
  |block|block 1 |
  +-++
---
  +-++
  | |block 2 |
  +-++


  +-++
  |block block block|block 1 |
  |block block block++
  |block block  |block 2 |
  +-++
Break possibility after row one, despite that
the cell with block 1 would have to get some
space after the block, i.e.
  +-++
  |block block block|block 1 |
  |block block block||
  |block block  ++
---
  | ++
  | |block 2 |
  +-++

J.Pietschmann


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




Re: Line breaks around dashes

2002-08-19 Thread Jessica Perry Hekman

On Mon, 19 Aug 2002, J.Pietschmann wrote:

 Unfortunately, FOP does not implement TR14, it treats nearly
 all characters except Unicode spaces as not allowing a break.
 You can insert a zero width space before and after the mdash
 in order to get the desired behaviour (as also defined by TR14).

That's a fine answer.

 Another caveat: FOP 0.20.4 has a bug in the white space width
 calculation, you'll have to get the 0.20.5cvs code from the
 repository directly or fall back to 0.20.3.

Hm. I don't mind falling back to 0.20.3 in theory. I just tried running 
the version I checked out of cvs, and found a bunch of problems:

* some stuff I'd asked to have centered is left-justified (perhaps all 
  centering is broken; I didn't check)
* some spacing between lines is way too big (padding? margins? I didn't 
  check closer)
* a graphic I include is rendered way too large
* most relevantly, the zero-width spaces are rendered as hash signs

I assume these are just problems which are going to be worked out before 
the next release, and that I should just fall back to 0.20.3; but if I did 
something wrong (like check out HEAD when I should have checked out a 
branch), please let me know.

j

---
  Users complain that they receive too much spam, while spammers protest
messages are legal. -InfoWorld
  You do not have to do everything disagreeable that you have a right to
do. -Judith Martin (Miss Manners)


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




Re: Style issues.

2002-08-19 Thread Karen Lease

Hi all,
I see this started a few days ago, but I just came back from a couple of 
weeks of vacation (and a couple of months of being totally buried in 
work), so before I go back to the office, I'll at least let you know I'm 
still around and even reading the list now and then :-)

I also recognize some of my code

J.Pietschmann wrote:

 Hello all,
 I just took a more extended look at CVS HEAD. There are
 some style issues which caught my eye.
 1. I'd appreciate if indentation uses spaces instead of
tabs. And because I can avoid using tabs, I expect
everyone else avoiding tabs too.
 2. I'd really, really appreciate if assignments were
not made operands of other expressions, especially
not operands of comparisions in if statements:
 if ((bp = getNextBreakPoss(childLC, null)) != null) {
I'd make some exceptions for more commonly used idioms
in while statements
   while ((curLM = getChildLM()) != null) {
but IMO this still s*cks.


Probably comes from long years of writing C and C++ and avoiding extra 
lines of code. Must be taste since I don't find it that bad, but if we 
all vote it out in the style rules, I'll agree to banish it!


 3. Exceptions should never, ever replace simpler flow
controls:
  try {
 return super.nextChar();
  }
  catch (NoSuchElementException e) {
if (bEndBoundary) {
   bEndBoundary=false;
   return CharUtilities.CODE_EOT;
 }
 else throw e;
  }
Apart from the potential for confusion, throwing
exceptions is an expensive operation and should really
be reserved for rare and non-local exits. (In the
particular case above, the discrepancy between hasNext()
and getNext() seems to indicate a design bug that should
be fixed rather than worked around).


Agreed, it would be better to recheck super.hasNext() rather than 
letting it throw the exception. However, you'll note that the exception 
is only propagated from this method in the case where it's hasNext() 
returns false, which is the normal behavior for an Iterator.


 4. Some identifiers make me a bit uneasy, like BreakPoss.
IMO random abbreviations should be avoided unless the
identifiers become really long and unwieldy, at least
in class names and preferably also in method names.
Furthermore, I think abbreviations should be used
consistently at least across class and method names:
  public void setStructHandler(StructureHandler sh) {
  public BreakPoss getBP() {
  protected Position getPos(Object nextObj) {
Is it really worth to save a few characters this way?
Also, capitalization should be consistent:
  class LMiter
  interface BPLayoutManager


Mea culpa. I quite agree with you that these names are not the best. All 
I can say is that I was writing code in bits and pieces over a fairly 
long period of time and wasn't paying enough attention to being 
consistent with my BP (BreakPossibility) and BreakPosition (just 
Position). I'm all for changing the names to something less confusing.


 5. I don't think naming styles should be mixed without good
(and preferably explained) reason:
  boolean m_bInited = false;
Yuck!
 6. There seems to be a drive to use hungarian notation.
While I don't have a strong feelings for or against it,
I'd like to note that in all projects I've watched such
an efford was ultimately wasted. Usage universally
degraded over time, and causal and inconsistent usage
just makes the code look ugly.


Like most everyone else that's responded, I say, let's just pick a rule 
that makes it clear what are member or static variables and which are 
local and stick to it. Personally I tend to prefer m_xxx to this.xxx, 
with or without hungarian.


...
 It would be nice to get some agreements nailed down and
 published.

 
  J.Pietschmann
 
 


All for that.

Regards,
Karen


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




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




Re: Tasks - layout

2002-08-19 Thread Karen Lease

Hi Keiron etc,

I'm really happy to see all this movement going on and folks from the 
maintenance branch getting into the redesign to help you out. I'm 
hoping to be able to start contributing again too, perhaps not right 
away, but hopefully in September. There may even be some possibility of 
getting to work on FOP as part of my real work, though it might be 
hard to work on the new layout in that context. I'll keep the group posted.

I'll start by looking at the latest and then maybe cogitating on list or 
table layout, depending on the timing and what others are interested in 
doing. It looks like status.xml is the sign-up sheet for the tasks; is 
that right?

With regard to the line-height calculations, is anybody in the group 
interested in getting into the gory details of the baseline stuff for 
different scripts? I spent some time poring over the spec and trying to 
get a handle on this, but maybe it's too much detail for now. On the 
other hand, I'd really like to make sure that this version of FOP 
handles that stuff correctly as well as being able to do the various 
kinds of line-stacking strategies defined by the XSL-FO spec.

Regards,
Karen

Keiron Liddle wrote:

 Now that we have some pagination there are lots of areas that people can
 work on. 
 If you want to implement any of these and have any questions then just
 ask. 
 
 Once we can get a few of these done then we could do a developers
 release. 
 
 
 - Add static areas to page 
 The static areas will need to be handled in a similar way to the flow
 except the bpd is unlimited and it will need to reset and repeat for
 each page. 
 
 
 - Add id areas to page when area added 
 When the layout managers add an area to the page it can also add the id
 information. 
 
 
 - Resolve id references on other pages, extensions 
 When an id is added to a page this will allow id references to be
 resolved. 
 
 
 - Add markers to page when areas added 
 When an area is added that is created by an FO that contains markers
 then the markers can also be added. There are four types of positions
 for markers. 
 
 
 - Retrieve markers from page 
 When doing the static areas the markers wil need to be available for
 retrieving. The marker can then be layed out as normal. 
 
 
 - calculate line height 
 The line height needs to be calculated while finding breaks. This needs
 to include all the alignment and height details of the inline areas. 
 
 
 - Various inline objects
 Page number, page number citation etc. need to be implemented.
 
 
 - Implement page caching 
 If a page need to be stored for the store pages or waiting to resolve
 forward references then we need a cache mechanism to save the page
 somewhere. 
 
 
 - Implement table layout 
 The table layout will use the same technique as the block layout. It
 will locate suitable breaks between rows or inside rows until table
 finished or end of bpd reached. 
 
 
 - Implement list layout 
 The list layout like the table layout will be looking for suitable
 breaks from the child objects. The it will add the appropriate areas to
 the area tree. 
 
 
 - Get bookmark extension working 
 Make sure the extension id references are resolved. Once the data is
 fully resolved then implement a way for the pdf renderer to add the
 bookmarks. See branch for code how to add bookmarks. 
 
 
 These are just some of the things, I will add them to the todo list.
 If there is a decent response then there are more that can be added.
 
 
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, email: [EMAIL PROTECTED]
 
 
 




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




Re: Line breaks around dashes

2002-08-19 Thread Karen Lease

Hi Jessica,

That's a good question. As far as I've seen there's nothing official in 
the specification, so it's up to each implementation to handle this. I 
believe it falls in the category of things which could be defined by the 
   user agent idea in FOP and then used by the line-breaking 
algorithm. In the redesign branch of FOP, the line-breaking code assumes 
it has a list of legal line-break characters; clearly this needs to 
depend on the script, which isn't yet the case.

Regards,
Karen

Jessica Perry Hekman wrote:

 Is there any way to ask FOP to allow line breaks before and after
 particular characters -- in my case, mdashes? Apologies if this should
 actually be specified in the FO; I've been trying to find a place in the
 FO spec which says how to specify legal breaking characters, and I've
 failed so far. It does seem to imply that a formatter should have access
 to rules for legal breaking characters per script.
 
 j
 
 ---
   Users complain that they receive too much spam, while spammers protest
 messages are legal. -InfoWorld
   You do not have to do everything disagreeable that you have a right to
 do. -Judith Martin (Miss Manners)
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, email: [EMAIL PROTECTED]
 
 
 




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




DO NOT REPLY [Bug 11838] New: - Error when use a user configuartion font file in embedded FOP

2002-08-19 Thread bugzilla

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

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=11838

Error when use a user configuartion font file in embedded FOP

   Summary: Error when use a user configuartion font file in
embedded FOP
   Product: Fop
   Version: 0.20.4
  Platform: PC
OS/Version: Other
Status: NEW
  Severity: Critical
  Priority: Other
 Component: general
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


I added font Arial Narrow to FOP on Windows 2000 server. 

I followed the instructions in FOP web site to generate font metrics xml file 
and register it within FOP. 

The code in userconfig.xml is:

 

!-- Arial Narrow --

font metrics-file=file:///c:/fop/fop-0.20.4/fonts/arialn.xml kerning=yes 
embed-file=c:\winnt\fonts\arialn.ttf

font-triplet name=Arial Narrow style=normal weight=normal/

font-triplet name=ArialMTN style=normal weight=normal/

 /font

 font metrics-file=file:///c:/fop/fop-0.20.4/fonts/arialnb1.xml 
kerning=yes embed-file=c:\winnt\fonts\arialnb.ttf

font-triplet name=Arial Narrow style=normal weight=bold/

font-triplet name=ArialMTN style=normal weight=bold/

 /font

 font metrics-file=file:///c:/fop/fop-0.20.4/fonts/arialni.xml kerning=yes 
embed-file=c:\winnt\fonts\arialni.ttf

font-triplet name=Arial Narrow style=italic weight=normal/

font-triplet name=ArialMTN style=italic weight=normal/

 /font

 font metrics-file=file:///c:/fop/fop-0.20.4/fonts/arialnbi.xml 
kerning=yes embed-file=c:\winnt\fonts\arialnbi.ttf

font-triplet name=Arial Narrow style=italic weight=bold/

font-triplet name=ArialMTN style=italic weight=bold/

 /font

 

When I used the following command line to excute:

 

C:\fop\fop-0.20.4fop -c conf/userconfig1.xml -xsl test.xsl -xml test.xml -pdf 
test.pdf

 

It works fine. However if I use FOP embedded mode with code:

 

Driver driver = new Driver();

String userConfig = c:/fop/fop-0.20.4/conf/userconfig.xml;

File userConfigFile = new File(userConfig);

Options options = new Options();

options.loadUserconfiguration(userConfigFile);

driver.setLogger(log);

driver.setRenderer(Driver.RENDER_PDF);

driver.setOutputStream(out);

driver.render(input.getParser(), input.getInputSource());

 

I get the following errors:

 

[ERROR] Failed to read font metrics file /c:/fop/fop-
0.20.4/fonts/arialnb1.xml : File /c:/fop/fop-0.20.4/fonts/arialnb1.xml not 
found. 

org.apache.fop.apps.FOPException: java.lang.NullPointerException 

at org.apache.fop.apps.Driver.render(Unknown Source) 

at com.ceira.apriaups.UPSManifest.FopPrintUPS.FilerenderXML
(FopPrintUPS.java:82)   

at com.ceira.apriaups.UPSManifest.FopPrintUPS.ManifestReporter
(FopPrintUPS.java:58)  

at com.ceira.apriaups.UPSManifest.FopPrintUPS.main(FopPrintUPS.java:226) 

-

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




DO NOT REPLY [Bug 11839] New: - Commandline print options does not work when use with a user configuration font file

2002-08-19 Thread bugzilla

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

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=11839

Commandline print options does not work when use with a user configuration font file

   Summary: Commandline print options does not work when use with
a user configuration font file
   Product: Fop
   Version: 0.20.4
  Platform: PC
OS/Version: Windows NT/2K
Status: NEW
  Severity: Critical
  Priority: Other
 Component: general
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]


print options does not work when use with a user configuration font file. 

I added the Arial Narrow font in Userconfig1.xsl as follows:

 

- userconfig1.xsl ---

!-- Arial Narrow --

font metrics-file=file:///c:/fop/fop-0.20.4/fonts/arialn.xml kerning=yes 
embed-file=c:\winnt\fonts\arialn.ttf

font-triplet name=Arial Narrow style=normal weight=normal/

font-triplet name=ArialMTN style=normal weight=normal/

 /font

 font metrics-file=file:///c:/fop/fop-0.20.4/fonts/arialnb1.xml 
kerning=yes embed-file=c:\winnt\fonts\arialnb.ttf

font-triplet name=Arial Narrow style=normal weight=bold/

font-triplet name=ArialMTN style=normal weight=bold/

 /font

 font metrics-file=file:///c:/fop/fop-0.20.4/fonts/arialni.xml kerning=yes 
embed-file=c:\winnt\fonts\arialni.ttf

font-triplet name=Arial Narrow style=italic weight=normal/

font-triplet name=ArialMTN style=italic weight=normal/

 /font

 font metrics-file=file:///c:/fop/fop-0.20.4/fonts/arialnbi.xml 
kerning=yes embed-file=c:\winnt\fonts\arialnbi.ttf

font-triplet name=Arial Narrow style=italic weight=bold/

font-triplet name=ArialMTN style=italic weight=bold/

 /font

 

When I ran from the commandline I got the following errors:

 

C:\fop\fop-0.20.4fop -d -c conf/userconfig1.xml -xsl testman815.xsl -xml 
manifest.xml  -print

 

C:\fop\fop-0.20.4java -cp build\fop.jar;lib\batik.jar;lib\xalan-
2.3.1.jar;lib\xercesImpl-2.0.1.jar;lib\xml-apis.jar;lib\avalon-framework-cvs-200

20315.jar;lib\logkit-1.0.jar;lib\jimi-1.0.jar org.apache.fop.apps.Fop -d -c 
conf/userconfig1.xml -xsl testman815.xsl -xml manifest.xml -print

[DEBUG] Input mode:

[DEBUG] xslt transformation

[DEBUG] xml input file: manifest.xml

[DEBUG] xslt stylesheet: testman815.xsl

[DEBUG] Output mode:

[DEBUG] print directly

[DEBUG] OPTIONS

[DEBUG] user configuration file: conf\userconfig1.xml

[DEBUG] debug mode on

[DEBUG] dump configuration

[DEBUG] quiet mode on

[DEBUG] Using org.apache.xerces.parsers.SAXParser as SAX2 Parser

[DEBUG] reading user configuration file

[DEBUG] Using org.apache.xerces.parsers.SAXParser as SAX2 Parser

[DEBUG] base directory: file:/C:/fop/fop-0.20.4/

[ERROR] FOP 0.20.4

[DEBUG] Using org.apache.xerces.parsers.SAXParser as SAX2 Parser

[ERROR] Logger not set

[INFO] building formatting object tree

[DEBUG] setting up fonts

[INFO] [1]

[DEBUG] create embedFont c:\winnt\fonts\arialnb.ttf

[ERROR] Failed to create embedFont c:\winnt\fonts\arialnb.ttf : 
java.lang.NoSuchMethodError: java.awt.Font: method createFont
(ILjava/io/InputStream;)Ljava/awt/Font; not found

[DEBUG] create embedFont c:\winnt\fonts\arialn.ttf

[ERROR] Failed to create embedFont c:\winnt\fonts\arialn.ttf : 
java.lang.NoSuchMethodError: java.awt.Font: method createFont
(ILjava/io/InputStream;)Ljava/awt/Font; not found

[INFO] [2]

[INFO] [3]

[INFO] [4]

[INFO] [5]

[INFO] [6]

[INFO] [7]

[INFO] Parsing of document complete, stopping renderer

 

C:\fop\fop-0.20.4

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




RE: Tasks - layout

2002-08-19 Thread Arved Sandstrom

 -Original Message-
 From: Karen Lease [mailto:[EMAIL PROTECTED]]
 Sent: August 19, 2002 6:58 PM
 To: [EMAIL PROTECTED]
 Subject: Re: Tasks - layout

[ SNIP ]
 With regard to the line-height calculations, is anybody in the group
 interested in getting into the gory details of the baseline stuff for
 different scripts? I spent some time poring over the spec and trying to
 get a handle on this, but maybe it's too much detail for now. On the
 other hand, I'd really like to make sure that this version of FOP
 handles that stuff correctly as well as being able to do the various
 kinds of line-stacking strategies defined by the XSL-FO spec.

I am definitely interested. I have put some thought into these things
already. Granted, when I implement it'll be a different codebase but I am
happy to work out the details on this list.

Arved


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