Re: Area Tree vs. subsequent renderer (was Re: FO property expressions)

2003-06-03 Thread Jeremias Maerki
Peter's right. We've done some loud thinking a few months back (Dec/Jan,
I think) about the possibility to create several output files from the
same area tree. At the moment anyway, the renderer provides the fonts
and the layout engine adjusts to that. So, that means that the area tree
differs depending on the renderer used. That can be improved but only by
making a central font registry. The renderer would then announce which
font sources it supports. It's all in the archives.

On 02.06.2003 14:27:07 Peter B. West wrote:
  For those output formats requiring an area tree (i.e.,
  non-TXT, RTF, etc.), the area tree is independent of
  the renderer, correct?
  
  I.e., the area tree created for a document will be 
  the same for all renderers, and the area tree is
  created without taking into account its subsequent
  renderer.
 
 In general, no.  Most of the atoms composing the area tree are character 
 glyphs.  How they are composed on the page depends on their metrics. 
 The font metrics may vary from renderer to renderer.  For this reason, 
 the target renderer (or at the very least the font metrics associated 
 with the renderer) must be known.  Jeremias, Victor and others have been 
 concerned with factoring out a fonts subsystem, so they may be able to 
 promise that for FOP this issue will be resolved.
 
 I know nothing at all about image rendering, but there may also be 
 renderer dependencies in the composition of images.



Jeremias Maerki


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



DO NOT REPLY [Bug 20411] - German hyphenation is ^H^H^Hwas missing

2003-06-03 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=20411.
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=20411

German hyphenation is ^H^H^Hwas missing

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||WONTFIX



--- Additional Comments From [EMAIL PROTECTED]  2003-06-02 13:20 ---
We've had german hyphenation files in FOP earlier but had to remove them 
because of license issues. See Release Notes 
(http://xml.apache.org/fop/relnotes.html).

Unfortunately, your hyphenation file is based on a file released under the 
LPPL which is considered incompatible with the ASL. Therefore, we can't accept 
your contribution. I'm sorry. I've recently updated the documentation on this 
topic (http://xml.apache.org/fop/configuration.html). If the LPPL works for 
your environment, fine. You can even publish the file yourself as long as you 
respect the license of the original file. But Apache can't redistribute that 
file.

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



Re: Team page

2003-06-03 Thread Clay Leeds
Wow! My name in lights. I can feel my head getting 
better^H^H^H^H^H^Hbigger already. This was a pleasant, unexpected 
honor... Thanks! I have three volumes of text (only 150-300+ pages--just 
kidding!) to add:

=-=-=-=-=
(CL) is a web/WAP/Palm developer from Laguna Beach, California, USA. A 
recent XML/XSL-FO convert, he has been nit-picking FAQs  assorted web 
pages since his first webmaster position @brain.com in 1996. Most 
important creation? Jeremy Logan Leeds was born June 18, 2002.
=-=-=-=-=

If you feel the need, you can start cutting sentences from the end. ;-p

Thanks!

Web Maestro Clay
--
Clay Leeds - [EMAIL PROTECTED]
Web Developer - Medata, Inc. - http://www.medata.com
PGP Public Key: https://mail.medata.com/pgp/cleeds.asc
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]


cvs commit: xml-fop/src/org/apache/fop/fonts Glyphs.java

2003-06-03 Thread jeremias
jeremias2003/06/02 12:52:51

  Modified:src/org/apache/fop/fonts Tag: fop-0_20_2-maintain
Glyphs.java
  Log:
  Fix bug in WinAnsiEncoding: trademark was shown as bullet
  Financed by: CTB/McGraw-Hill
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.7.2.3   +33 -22xml-fop/src/org/apache/fop/fonts/Attic/Glyphs.java
  
  Index: Glyphs.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fonts/Attic/Glyphs.java,v
  retrieving revision 1.7.2.2
  retrieving revision 1.7.2.3
  diff -u -r1.7.2.2 -r1.7.2.3
  --- Glyphs.java   25 Feb 2003 13:13:21 -  1.7.2.2
  +++ Glyphs.java   2 Jun 2003 19:52:50 -   1.7.2.3
  @@ -3,34 +3,34 @@
* 
*The Apache Software License, Version 1.1
* 
  - * 
  + *
* Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
  - * 
  + *
* Redistribution and use in source and binary forms, with or without modifica-
* tion, are permitted provided that the following conditions are met:
  - * 
  + *
* 1. Redistributions of source code must retain the above copyright notice,
*this list of conditions and the following disclaimer.
  - * 
  + *
* 2. Redistributions in binary form must reproduce the above copyright notice,
*this list of conditions and the following disclaimer in the documentation
*and/or other materials provided with the distribution.
  - * 
  + *
* 3. The end-user documentation included with the redistribution, if any, must
*include the following acknowledgment: This product includes software
*developed by the Apache Software Foundation (http://www.apache.org/).
*Alternately, this acknowledgment may appear in the software itself, if
*and wherever such third-party acknowledgments normally appear.
  - * 
  + *
* 4. The names FOP and Apache Software Foundation must not be used to
*endorse or promote products derived from this software without prior
*written permission. For written permission, please contact
*[EMAIL PROTECTED]
  - * 
  + *
* 5. Products derived from this software may not be called Apache, nor may
*Apache appear in their name, without prior written permission of the
*Apache Software Foundation.
  - * 
  + *
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
  @@ -42,12 +42,12 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* 
  - * 
  + *
* This software consists of voluntary contributions made by many individuals
* on behalf of the Apache Software Foundation and was originally created by
* James Tauber [EMAIL PROTECTED]. For more information on the Apache
* Software Foundation, please see http://www.apache.org/.
  - */ 
  + */
   package org.apache.fop.fonts;
   
   public class Glyphs {
  @@ -195,30 +195,30 @@
   '\u2022',   // bullet
   '\u2013',   // endash
   '\u2014',   // emdash
  -'~', '\u2022',  // bullet
  +'~', '\u2122',  // trademark
   '\u0161', '\u203a', '\u0153', '\u2022', '\u017e', '\u0178', // 0xA0
  - ' ', '\u00a1', '\u00a2', '\u00a3', '\u00a4', '\u00a5', 
  - '\u00a6', '\u00a7', '\u00a8', '\u00a9', '\u00aa', '\u00ab', 
  + ' ', '\u00a1', '\u00a2', '\u00a3', '\u00a4', '\u00a5',
  + '\u00a6', '\u00a7', '\u00a8', '\u00a9', '\u00aa', '\u00ab',
'\u00ac', '\u00ad',  '\u00ae', '\u00af', // 0xb0
   '\u00b0', '\u00b1', '\u00b2', '\u00b3', '\u00b4',
'\u00b5',  // This is hand-coded, the 
rest is assumption
   '\u00b6',   // and *might* not be 
correct...
  -'\u00b7', '\u00b8', '\u00b9', '\u00ba', '\u00bb', '\u00bc', '\u00bd', 
  +'\u00b7', '\u00b8', '\u00b9', '\u00ba', '\u00bb', '\u00bc', '\u00bd',
'\u00be', '\u00bf', // 0xc0
   '\u00c0', '\u00c1', '\u00c2', '\u00c3', '\u00c4', '\u00c5', // Aring
   '\u00c6',// AE
  -'\u00c7', '\u00c8', '\u00c9', '\u00ca', '\u00cb', '\u00cc', 
  +

cvs commit: xml-fop/src/org/apache/fop/render/ps PSRenderer.java

2003-06-03 Thread jeremias
jeremias2003/06/02 12:55:09

  Modified:src/org/apache/fop/render/ps Tag: fop-0_20_2-maintain
PSRenderer.java
  Log:
  Fix character set problems with Type 1 fonts
  Establish WinAnsiEncoding in PS interpreter
  Reencodes all fonts except Symbol and ZapfDingbats as WinAnsiEncoding
  Removes an ugly hack for hyphen characters
  Financed by: CTB/McGraw-Hill
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.15.2.18 +47 -14xml-fop/src/org/apache/fop/render/ps/Attic/PSRenderer.java
  
  Index: PSRenderer.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/render/ps/Attic/PSRenderer.java,v
  retrieving revision 1.15.2.17
  retrieving revision 1.15.2.18
  diff -u -r1.15.2.17 -r1.15.2.18
  --- PSRenderer.java   15 May 2003 06:50:18 -  1.15.2.17
  +++ PSRenderer.java   2 Jun 2003 19:55:08 -   1.15.2.18
  @@ -61,6 +61,7 @@
   import org.apache.fop.layout.inline.*;
   import org.apache.fop.datatypes.*;
   import org.apache.fop.fo.properties.*;
  +import org.apache.fop.fonts.Glyphs;
   import org.apache.fop.render.pdf.Font;
   import org.apache.fop.image.*;
   import org.apache.fop.apps.FOPException;
  @@ -310,22 +311,58 @@
   }
   write(end def);
   write(%%EndResource);
  +defineWinAnsiEncoding();
   
   //Rewrite font encodings
   enum = fonts.keySet().iterator();
   while (enum.hasNext()) {
   String key = (String)enum.next();
   Font fm = (Font)fonts.get(key);
  -write(/ + fm.fontName() +  findfont);
  -write(dup length dict begin);
  -write(  {1 index /FID ne {def} {pop pop} ifelse} forall);
  -write(  /Encoding ISOLatin1Encoding def);
  -write(  currentdict);
  -write(end);
  -write(/ + fm.fontName() +  exch definefont pop);
  +if (null == fm.encoding()) {
  +//ignore (ZapfDingbats and Symbol run through here
  +//TODO: ZapfDingbats and Symbol should get getEncoding() fixed!
  +} else if (WinAnsiEncoding.equals(fm.encoding())) {
  +write(/ + fm.fontName() +  findfont);
  +write(dup length dict begin);
  +write(  {1 index /FID ne {def} {pop pop} ifelse} forall);
  +write(  /Encoding  + fm.encoding() +  def);
  +write(  currentdict);
  +write(end);
  +write(/ + fm.fontName() +  exch definefont pop);
  +} else {
  +log.warn(Only WinAnsiEncoding is supported. Font '
  ++ fm.fontName() + ' asks for:  + fm.encoding());
  +}
   }
   }
   
  +private void defineWinAnsiEncoding() {
  +write(/WinAnsiEncoding [);
  +StringBuffer sb = new StringBuffer();
  +for (int i = 0; i  Glyphs.winAnsiEncoding.length; i++) {
  +if (i  0) {
  +if ((i % 5) == 0) {
  +write(sb.toString());
  +sb.setLength(0);
  +} else {
  +sb.append( );
  +}
  +}
  +final char ch = Glyphs.winAnsiEncoding[i];
  +final String glyphname = Glyphs.charToGlyphName(ch);
  +if (.equals(glyphname)) {
  +sb.append(/ + Glyphs.notdef);
  +} else {
  +sb.append(/);
  +sb.append(glyphname);
  +}
  +}
  +write(sb.toString());
  +write(] def);
  +}
  +
  +
  +
   protected void movetoCurrPosition() {
   write(this.currentXPosition +   + this.currentYPosition +  M);
   }
  @@ -457,7 +494,7 @@
   // and positive is down and to the right. (0,0) is where the
   // viewBox puts it.
   write(xOffset +   + yOffset +  translate);
  -write((at.getTranslateX() * 1000) +   
  +write((at.getTranslateX() * 1000) +  
   + (-at.getTranslateY() * 1000) +  translate);
   write(sx * at.getScaleX() +   + sy * at.getScaleY() +  scale);
   
  @@ -740,11 +777,7 @@
   char ch = s.charAt(i);
   char mch = fs.mapChar(ch);
   
  -/[EMAIL PROTECTED] Do this in a clean way */
  -// temp fix abe: map ascii '-' to ISO latin 1 hyphen char
  -if (mch == '-') {
  -  sb = sb.append(\\ + Integer.toOctalString(173));
  -} else /* fix ends */ if (mch  127) {
  +if (mch  127) {
   sb = sb.append(\\ + Integer.toOctalString(mch));
   } else {
   final String escape = \\()[]{};
  
  
  

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

cvs commit: xml-fop CHANGES

2003-06-03 Thread jeremias
jeremias2003/06/02 12:58:08

  Modified:.Tag: fop-0_20_2-maintain CHANGES
  Log:
  Update changes
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.10.2.61 +3 -0  xml-fop/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /home/cvs/xml-fop/CHANGES,v
  retrieving revision 1.10.2.60
  retrieving revision 1.10.2.61
  diff -u -r1.10.2.60 -r1.10.2.61
  --- CHANGES   27 May 2003 14:14:40 -  1.10.2.60
  +++ CHANGES   2 Jun 2003 19:58:08 -   1.10.2.61
  @@ -1,5 +1,8 @@
   ==
   Done since 0.20.4 release
  +- Fix for bad font encodings in the PS renderer (Fonts get reencoded as
  +  WinAnsiEncoding, Symbol and ZapfDingbats show correctly now) (JM)
  +  Financed by: CTB/McGraw-Hill
   - Fix for bug #20239 (Failure while generating XML metrics files from TT
 collections when names are in Unicode (JM)
   - Fix for bug #19797 (image elements in SVG may produce blank output) (JM)
  
  
  

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



cvs commit: xml-fop/src/java/org/apache/fop/fonts/type1 PFMFile.java

2003-06-03 Thread jeremias
jeremias2003/06/02 12:58:55

  Modified:src/java/org/apache/fop/fonts/type1 PFMFile.java
  Log:
  Use Commons IO methods
  
  Revision  ChangesPath
  1.2   +5 -4  xml-fop/src/java/org/apache/fop/fonts/type1/PFMFile.java
  
  Index: PFMFile.java
  ===
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fonts/type1/PFMFile.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- PFMFile.java  11 Mar 2003 13:05:36 -  1.1
  +++ PFMFile.java  2 Jun 2003 19:58:55 -   1.2
  @@ -50,16 +50,17 @@
*/ 
   package org.apache.fop.fonts.type1;
   
  +// Java
   import java.io.IOException;
   import java.io.InputStream;
   import java.util.Map;
   
  -//Avalon
  +// Apache libs
   import org.apache.avalon.framework.logger.AbstractLogEnabled;
  +import org.apache.commons.io.IOUtil;
   
  -//FOP
  +// FOP
   import org.apache.fop.fonts.Glyphs;
  -import org.apache.fop.util.StreamUtilities;
   
   /**
* This class represents a PFM file (or parts of it) as a Java object.
  @@ -100,7 +101,7 @@
* @throws IOException In case of an I/O problem
*/
   public void load(InputStream inStream) throws IOException {
  -final byte[] buf = StreamUtilities.toByteArray(inStream, 8000);
  +final byte[] buf = IOUtil.toByteArray(inStream);
   final InputStream bufin = new java.io.ByteArrayInputStream(buf);
   PFMInputStream in = new PFMInputStream(bufin);
   /*final int version =*/ in.readShort();
  
  
  

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



cvs commit: xml-fop/src/java/org/apache/fop/fonts FontUtil.java

2003-06-03 Thread jeremias
jeremias2003/06/02 12:59:43

  Added:   src/java/org/apache/fop/fonts FontUtil.java
  Log:
  Class with utility methods for fonts.
  
  Revision  ChangesPath
  1.1  xml-fop/src/java/org/apache/fop/fonts/FontUtil.java
  
  Index: FontUtil.java
  ===
  /*
   * $Id: FontUtil.java,v 1.1 2003/06/02 19:59:42 jeremias Exp $
   * 
   *The Apache Software License, Version 1.1
   * 
   * 
   * Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
   * 
   * Redistribution and use in source and binary forms, with or without modifica-
   * tion, are permitted provided that the following conditions are met:
   * 
   * 1. Redistributions of source code must retain the above copyright notice,
   *this list of conditions and the following disclaimer.
   * 
   * 2. Redistributions in binary form must reproduce the above copyright notice,
   *this list of conditions and the following disclaimer in the documentation
   *and/or other materials provided with the distribution.
   * 
   * 3. The end-user documentation included with the redistribution, if any, must
   *include the following acknowledgment: This product includes software
   *developed by the Apache Software Foundation (http://www.apache.org/).
   *Alternately, this acknowledgment may appear in the software itself, if
   *and wherever such third-party acknowledgments normally appear.
   * 
   * 4. The names FOP and Apache Software Foundation must not be used to
   *endorse or promote products derived from this software without prior
   *written permission. For written permission, please contact
   *[EMAIL PROTECTED]
   * 
   * 5. Products derived from this software may not be called Apache, nor may
   *Apache appear in their name, without prior written permission of the
   *Apache Software Foundation.
   * 
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
   * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
   * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
   * APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
   * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU-
   * DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
   * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
   * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
   * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
   * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   * 
   * 
   * This software consists of voluntary contributions made by many individuals
   * on behalf of the Apache Software Foundation and was originally created by
   * James Tauber [EMAIL PROTECTED]. For more information on the Apache
   * Software Foundation, please see http://www.apache.org/.
   */ 
  package org.apache.fop.fonts;
  
  /**
   * Font utilities.
   */
  public class FontUtil {
  
  /**
   * Parses an CSS2 (SVG and XSL-FO) font weight (normal, bold, 100-900) to 
   * an integer.
   * See http://www.w3.org/TR/REC-CSS2/fonts.html#propdef-font-weight
   * TODO: Implement lighter and bolder.
   * @param text the font weight to parse
   * @return an integer between 100 and 900 (100, 200, 300...)
   */
  public static int parseCSS2FontWeight(String text) {
  int weight = 400;
  try {
  weight = Integer.parseInt(text);
  weight = ((int)weight / 100) * 100;
  weight = Math.max(weight, 100);
  weight = Math.min(weight, 900);
  } catch (NumberFormatException nfe) {
  //weight is no number, so convert symbolic name to number
  if (text.equals(normal)) {
  weight = 400;
  } else if (text.equals(bold)) {
  weight = 700;
  } else {
  throw new IllegalArgumentException(
  Illegal value for font weight: ' 
  + text
  + '. Use one of: 100, 200, 300, 
  + 400, 500, 600, 700, 800, 900, 
  + normal (=400), bold (=700));
  }
  }
  return weight;
  }
  
  }
  
  
  

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



cvs commit: xml-fop/src/java/org/apache/fop/fonts Glyphs.java

2003-06-03 Thread jeremias
jeremias2003/06/02 13:00:29

  Modified:src/java/org/apache/fop/fonts Glyphs.java
  Log:
  Fix bug in WinAnsiEncoding: trademark was shown as bullet
  Financed by: CTB/McGraw-Hill
  
  Revision  ChangesPath
  1.2   +15 -1 xml-fop/src/java/org/apache/fop/fonts/Glyphs.java
  
  Index: Glyphs.java
  ===
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fonts/Glyphs.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Glyphs.java   11 Mar 2003 13:05:15 -  1.1
  +++ Glyphs.java   2 Jun 2003 20:00:26 -   1.2
  @@ -209,7 +209,8 @@
   '\u2022',   // bullet
   '\u2013',   // endash
   '\u2014',   // emdash
  -'~', '\u2022',  // bullet
  +'~', 
  +'\u2122',   // trademark
   '\u0161', '\u203a', '\u0153', '\u2022', '\u017e', '\u0178', // 0xA0
' ', '\u00a1', '\u00a2', '\u00a3', '\u00a4', '\u00a5',
'\u00a6', '\u00a7', '\u00a8', '\u00a9', '\u00aa', '\u00ab',
  @@ -1296,11 +1297,24 @@
   };
   
   /**
  + * Return the glyphname from a character,
  + * eg, charToGlyphName('\\') returns backslash
  + *
  + * @param ch glyph to evaluate
  + * @return the name of the glyph
  + */
  +public static final String charToGlyphName(char ch) {
  +return stringToGlyph(Character.toString(ch));
  +}
  +
  +/**
* Return the glyphname from a string,
* eg, glyphToString(\\) returns backslash
*
* @param name glyph to evaluate
* @return the name of the glyph
  + * TODO: javadocs for glyphToString and stringToGlyph are confused
  + * TODO: Improve method names
*/
   public static final String glyphToString(String name) {
   for (int i = 0; i  UNICODE_GLYPHS.length; i += 2) {
  
  
  

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



cvs commit: xml-fop/src/java/org/apache/fop/render/ps PSProcSets.java

2003-06-03 Thread jeremias
jeremias2003/06/02 13:03:59

  Modified:src/java/org/apache/fop/render/ps PSProcSets.java
  Log:
  Fix character set problems with Type 1 fonts
  Establish WinAnsiEncoding in PS interpreter
  Reencodes all fonts except Symbol and ZapfDingbats as WinAnsiEncoding
  Financed by: CTB/McGraw-Hill
  
  Revision  ChangesPath
  1.3   +41 -7 xml-fop/src/java/org/apache/fop/render/ps/PSProcSets.java
  
  Index: PSProcSets.java
  ===
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/render/ps/PSProcSets.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- PSProcSets.java   17 Apr 2003 15:35:20 -  1.2
  +++ PSProcSets.java   2 Jun 2003 20:03:59 -   1.3
  @@ -55,6 +55,7 @@
   import java.util.Map;
   
   import org.apache.fop.fonts.Font;
  +import org.apache.fop.fonts.Glyphs;
   import org.apache.fop.layout.FontInfo;
   
   /**
  @@ -225,19 +226,52 @@
   }
   gen.writeln(end def);
   gen.writeln(%%EndResource);
  +defineWinAnsiEncoding(gen);
  +
  +//Rewrite font encodings
   enum = fonts.keySet().iterator();
   while (enum.hasNext()) {
   String key = (String)enum.next();
   Font fm = (Font)fonts.get(key);
  -gen.writeln(/ + fm.getFontName() +  findfont);
  -gen.writeln(dup length dict begin);
  -gen.writeln(  {1 index /FID ne {def} {pop pop} ifelse} forall);
  -gen.writeln(  /Encoding ISOLatin1Encoding def);
  -gen.writeln(  currentdict);
  -gen.writeln(end);
  -gen.writeln(/ + fm.getFontName() +  exch definefont pop);
  +if (null == fm.getEncoding()) {
  +//ignore (ZapfDingbats and Symbol run through here
  +//TODO: ZapfDingbats and Symbol should get getEncoding() fixed!
  +} else if (WinAnsiEncoding.equals(fm.getEncoding())) {
  +gen.writeln(/ + fm.getFontName() +  findfont);
  +gen.writeln(dup length dict begin);
  +gen.writeln(  {1 index /FID ne {def} {pop pop} ifelse} forall);
  +gen.writeln(  /Encoding  + fm.getEncoding() +  def);
  +gen.writeln(  currentdict);
  +gen.writeln(end);
  +gen.writeln(/ + fm.getFontName() +  exch definefont pop);
  +} else {
  +System.out.println(Only WinAnsiEncoding is supported. Font ' 
  ++ fm.getFontName() + ' asks for:  + fm.getEncoding());
  +}
   }
   }
   
  +private static void defineWinAnsiEncoding(PSGenerator gen) throws IOException {
  +gen.writeln(/WinAnsiEncoding [);
  +for (int i = 0; i  Glyphs.WINANSI_ENCODING.length; i++) {
  +if (i  0) {
  +if ((i % 5) == 0) {
  +gen.newLine();
  +} else {
  +gen.write( );
  +}
  +}
  +final char ch = Glyphs.WINANSI_ENCODING[i];
  +final String glyphname = Glyphs.charToGlyphName(ch);
  +if (.equals(glyphname)) {
  +gen.write(/ + Glyphs.NOTDEF);
  +} else {
  +gen.write(/);
  +gen.write(glyphname);
  +}
  +}
  +gen.newLine();
  +gen.writeln(] def);
  +}
   
   }
  
  
  

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



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

2003-06-03 Thread jeremias
jeremias2003/06/02 13:20:56

  Modified:src/java/org/apache/fop/svg PDFImageElementBridge.java
  Log:
  Adjust to changes in Batik CVS
  
  Revision  ChangesPath
  1.2   +12 -0 xml-fop/src/java/org/apache/fop/svg/PDFImageElementBridge.java
  
  Index: PDFImageElementBridge.java
  ===
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/svg/PDFImageElementBridge.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- PDFImageElementBridge.java11 Mar 2003 13:05:07 -  1.1
  +++ PDFImageElementBridge.java2 Jun 2003 20:20:56 -   1.2
  @@ -176,6 +176,18 @@
   }
   return null;
   }
  +
  +/**
  + * Returns the bounds of the sensitive area covered by this node,
  + * This includes the stroked area but does not include the effects
  + * of clipping, masking or filtering.
  + * @return the bounds of the sensitive area
  + */
  +public Rectangle2D getSensitiveBounds() {
  +//No interactive features, just return primitive bounds
  +return getPrimitiveBounds();
  +}
  +
   }
   
   }
  
  
  

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



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

2003-06-03 Thread jeremias
jeremias2003/06/02 13:21:28

  Modified:src/org/apache/fop/svg Tag: fop-0_20_2-maintain
PDFImageElementBridge.java
  Log:
  Adjust to changes in Batik CVS
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.1.2.3   +16 -11xml-fop/src/org/apache/fop/svg/Attic/PDFImageElementBridge.java
  
  Index: PDFImageElementBridge.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/svg/Attic/PDFImageElementBridge.java,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- PDFImageElementBridge.java25 Feb 2003 15:08:11 -  1.1.2.2
  +++ PDFImageElementBridge.java2 Jun 2003 20:21:28 -   1.1.2.3
  @@ -3,34 +3,34 @@
* 
*The Apache Software License, Version 1.1
* 
  - * 
  + *
* Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
  - * 
  + *
* Redistribution and use in source and binary forms, with or without modifica-
* tion, are permitted provided that the following conditions are met:
  - * 
  + *
* 1. Redistributions of source code must retain the above copyright notice,
*this list of conditions and the following disclaimer.
  - * 
  + *
* 2. Redistributions in binary form must reproduce the above copyright notice,
*this list of conditions and the following disclaimer in the documentation
*and/or other materials provided with the distribution.
  - * 
  + *
* 3. The end-user documentation included with the redistribution, if any, must
*include the following acknowledgment: This product includes software
*developed by the Apache Software Foundation (http://www.apache.org/).
*Alternately, this acknowledgment may appear in the software itself, if
*and wherever such third-party acknowledgments normally appear.
  - * 
  + *
* 4. The names FOP and Apache Software Foundation must not be used to
*endorse or promote products derived from this software without prior
*written permission. For written permission, please contact
*[EMAIL PROTECTED]
  - * 
  + *
* 5. Products derived from this software may not be called Apache, nor may
*Apache appear in their name, without prior written permission of the
*Apache Software Foundation.
  - * 
  + *
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
  @@ -42,12 +42,12 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* 
  - * 
  + *
* This software consists of voluntary contributions made by many individuals
* on behalf of the Apache Software Foundation and was originally created by
* James Tauber [EMAIL PROTECTED]. For more information on the Apache
* Software Foundation, please see http://www.apache.org/.
  - */ 
  + */
   package org.apache.fop.svg;
   
   import org.apache.batik.bridge.*;
  @@ -137,6 +137,11 @@
   }
   return null;
   }
  +
  +public Rectangle2D getSensitiveBounds() {
  +return getPrimitiveBounds();
  +}
  +
   }
   
   }
  
  
  

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



cvs commit: xml-fop status.xml

2003-06-03 Thread jeremias
jeremias2003/06/02 13:24:02

  Modified:.status.xml
  Log:
  Update changes
  
  Revision  ChangesPath
  1.33  +4 -0  xml-fop/status.xml
  
  Index: status.xml
  ===
  RCS file: /home/cvs/xml-fop/status.xml,v
  retrieving revision 1.32
  retrieving revision 1.33
  diff -u -r1.32 -r1.33
  --- status.xml27 May 2003 14:43:53 -  1.32
  +++ status.xml2 Jun 2003 20:24:02 -   1.33
  @@ -104,6 +104,10 @@
   
 changes
  release version=2003 date=2003
  +action context=code dev=JM type=fix due-to=CTB/McGraw-Hill
  +  Fix for bad font encodings in the PS renderer (Fonts get reencoded as
  +  WinAnsiEncoding, Symbol and ZapfDingbats show correctly now)
  +/action
   action context=code dev=JM type=fix
 Fix for bug #20239: Failure while generating XML metrics files from TT
 collections when names are in Unicode (JM)
  
  
  

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



cvs commit: xml-fop/src/documentation/content/xdocs team.xml

2003-06-03 Thread jeremias
jeremias2003/06/02 13:51:15

  Modified:src/documentation/content/xdocs team.xml
  Log:
  Change Glen's email
  Add Clay's short description
  
  Revision  ChangesPath
  1.8   +6 -2  xml-fop/src/documentation/content/xdocs/team.xml
  
  Index: team.xml
  ===
  RCS file: /home/cvs/xml-fop/src/documentation/content/xdocs/team.xml,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- team.xml  28 May 2003 08:57:10 -  1.7
  +++ team.xml  2 Jun 2003 20:51:15 -   1.8
  @@ -32,8 +32,12 @@
 ul
   lilink href=mailto:[EMAIL PROTECTED]Marcelo Jaccoud Amaral/link/li
   lilink href=mailto:[EMAIL PROTECTED]Rhett Aultman/link/li
  -lilink href=mailto:[EMAIL PROTECTED]Clay Leeds/link/li
  -lilink href=mailto:[EMAIL PROTECTED]Glen Mazza/link/li
  +lilink href=mailto:[EMAIL PROTECTED]Clay Leeds/link (CL)
  +  is a web/WAP/Palm developer from Laguna Beach, California, USA. A 
  +  recent XML/XSL-FO convert, he has been nit-picking FAQs amp; assorted 
web 
  +  pages since his first webmaster position @brain.com in 1996. Most 
  +  important creation? Jeremy Logan Leeds was born June 18, 2002./li
  +lilink href=mailto:[EMAIL PROTECTED]Glen Mazza/link/li
   lilink href=mailto:[EMAIL PROTECTED]Anton Tagunov/link/li
   lilink href=mailto:[EMAIL PROTECTED]Zhong (George) Yi/link/li
 /ul
  
  
  

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



Re: Team page

2003-06-03 Thread Jeremias Maerki
done.

On 01.06.2003 22:46:49 Glen Mazza wrote:
 Looks good -- would you please update my email address
 to my work address on the team page:
 glen.mazza.at.eds.com. (.at. like all the other email
 addresses on that page to avoid spam concerns!)

The anti-spam stuff is done automatically by Forrest btw.


Jeremias Maerki


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



Re: Team page

2003-06-03 Thread Jeremias Maerki
done. I found this funny so I just added it. Clay, our favourite
nit-picker! :-)

On 02.06.2003 16:52:45 Clay Leeds wrote:
 Wow! My name in lights. I can feel my head getting 
 better^H^H^H^H^H^Hbigger already. This was a pleasant, unexpected 
 honor... Thanks! I have three volumes of text (only 150-300+ pages--just 
 kidding!) to add:
 
 =-=-=-=-=
 (CL) is a web/WAP/Palm developer from Laguna Beach, California, USA. A 
 recent XML/XSL-FO convert, he has been nit-picking FAQs  assorted web 
 pages since his first webmaster position @brain.com in 1996. Most 
 important creation? Jeremy Logan Leeds was born June 18, 2002.
 =-=-=-=-=
 
 If you feel the need, you can start cutting sentences from the end. ;-p


Jeremias Maerki


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



cvs commit: xml-fop/src/org/apache/fop/fonts Glyphs.java

2003-06-03 Thread jeremias
jeremias2003/06/02 14:38:39

  Modified:src/org/apache/fop/fonts Tag: fop-0_20_2-maintain
Glyphs.java
  Log:
  Reestablish JDK 1.3 compatibility. Sorry!
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.7.2.4   +2 -2  xml-fop/src/org/apache/fop/fonts/Attic/Glyphs.java
  
  Index: Glyphs.java
  ===
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fonts/Attic/Glyphs.java,v
  retrieving revision 1.7.2.3
  retrieving revision 1.7.2.4
  diff -u -r1.7.2.3 -r1.7.2.4
  --- Glyphs.java   2 Jun 2003 19:52:50 -   1.7.2.3
  +++ Glyphs.java   2 Jun 2003 21:38:38 -   1.7.2.4
  @@ -1287,7 +1287,7 @@
* @return the name of the glyph
*/
   public static final String charToGlyphName(char ch) {
  -return stringToGlyph(Character.toString(ch));
  +return stringToGlyph(new Character(ch).toString());
   }
   
   /**
  
  
  

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



Re: Team page

2003-06-03 Thread Clay Leeds
On 6/2/2003 1:55 PM, Jeremias Maerki wrote:
done. I found this funny so I just added it. Clay, our favourite
nit-picker! :-)
Thanks Jeremias! I went looking, 'cuz I wanted to see  learn, so I 
figured out where to go to check this (I remember Victor explaining how 
to find this info, but I wanted to discover it--thanks Victor for the 
help!)...

BTW, while I was perusing, I came across this page:

  http://cvs.apache.org/viewcvs.cgi/xml-site/targets/fop/

On that page is this weird notation:

[EMAIL PROTECTED] 	  1.1 	 3 days 	 jefft 	 Automatic publish at 
Fri May 30 20:37:22 CEST 2003 from http://forrestbot.cocoon...

Clicking through as one is wont to do, when one sees one's name, brings 
up this:


  Cocoon 2 - Resource not Found
  type resource-not-found

  message Page Not Available.

  description The requested resource couldn't be found.

  sender org.apache.cocoon.Main

  source Cocoon commandline (Main.java)

  request-uri

  [EMAIL PROTECTED]

  missing-file

/usr/serverlocal/forrestbot/scripts/work/build/bot/xml-fop/site/[EMAIL PROTECTED]

I don't know what it means, but there it is...

--
Clay Leeds - [EMAIL PROTECTED]
Web Developer - Medata, Inc. - http://www.medata.com
PGP Public Key: https://mail.medata.com/pgp/cleeds.asc
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]


cvs commit: xml-fop/src/java/org/apache/fop/fonts Glyphs.java

2003-06-03 Thread jeremias
jeremias2003/06/02 14:40:02

  Modified:src/java/org/apache/fop/fonts Glyphs.java
  Log:
  Reestablish JDK 1.3 compatibility. Sorry!
  
  Revision  ChangesPath
  1.3   +1 -1  xml-fop/src/java/org/apache/fop/fonts/Glyphs.java
  
  Index: Glyphs.java
  ===
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fonts/Glyphs.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Glyphs.java   2 Jun 2003 20:00:26 -   1.2
  +++ Glyphs.java   2 Jun 2003 21:40:02 -   1.3
  @@ -1304,7 +1304,7 @@
* @return the name of the glyph
*/
   public static final String charToGlyphName(char ch) {
  -return stringToGlyph(Character.toString(ch));
  +return stringToGlyph(new Character(ch).toString());
   }
   
   /**
  
  
  

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



Re: Team page

2003-06-03 Thread Jeremias Maerki
That'll go away next time the site is updated. See my change:
http://cvs.apache.org/viewcvs.cgi/xml-fop/src/documentation/content/xdocs/team.xml.diff?r1=1.5r2=1.6diff_format=h

The mailto prefixes were missing and Forrest/Cocoon thought they were
HTML pages.

On 02.06.2003 23:39:55 Clay Leeds wrote:
 /usr/serverlocal/forrestbot/scripts/work/build/bot/xml-fop/site/[EMAIL PROTECTED]
 
 
 I don't know what it means, but there it is...


Jeremias Maerki


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



cvs commit: xml-fop/src/java/org/apache/fop/apps Driver.java

2003-06-03 Thread jeremias
jeremias2003/06/02 15:17:36

  Modified:src/java/org/apache/fop/apps Driver.java
  Log:
  Make more dummy-safe (more verbose error messages).
  Reintroduce setLogger() method from maint-branch (deprecated, for 
backwards-compatibility)
  
  Revision  ChangesPath
  1.4   +34 -4 xml-fop/src/java/org/apache/fop/apps/Driver.java
  
  Index: Driver.java
  ===
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/apps/Driver.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- Driver.java   12 Mar 2003 11:00:21 -  1.3
  +++ Driver.java   2 Jun 2003 22:17:36 -   1.4
  @@ -261,11 +261,17 @@
   this.stream = stream;
   }
   
  +private boolean isInitialized() {
  +return (treeBuilder != null);
  +}
  +
   /**
* Initializes the Driver object.
*/
   public void initialize() {
  -stream = null;
  +if (isInitialized()) {
  +throw new IllegalStateException(Driver already initialized);
  +}
   treeBuilder = new FOTreeBuilder();
   treeBuilder.setUserAgent(getUserAgent());
   setupDefaultMappings();
  @@ -305,6 +311,15 @@
   }
   }
   
  +/**
  + * Provide the Driver instance with a logger. 
  + * @param log the logger. Must not be codenull/code.
  + * @deprecated Use #enableLogging(Logger) instead.
  + */
  +public void setLogger(Logger log) {
  +enableLogging(log);
  +}
  +
   
   /**
* Returns the logger for use by FOP.
  @@ -349,6 +364,12 @@
   this.stream = stream;
   }
   
  +private void validateOutputStream() {
  +if (this.stream == null) {
  +throw new IllegalStateException(OutputStream has not been set);
  +}
  +}
  +
   /**
* Set the source for the FO document. This can be a normal SAX
* InputSource, or an DocumentInputSource containing a DOM document.
  @@ -553,10 +574,10 @@
* @return a content handler for handling the SAX events.
*/
   public ContentHandler getContentHandler() {
  -if (treeBuilder == null) {
  -throw new NullPointerException(Driver isn't initialized. 
  -+ You may have to call initialize() first.);
  +if (!isInitialized()) {
  +initialize();
   }
  +validateOutputStream();
   
   // TODO: - do this stuff in a better way
   // PIJ: I guess the structure handler should be created by the renderer.
  @@ -588,6 +609,9 @@
*/
   public synchronized void render(XMLReader parser, InputSource source)
   throws FOPException {
  +if (!isInitialized()) {
  +initialize();
  +}
   parser.setContentHandler(getContentHandler());
   try {
   parser.parse(source);
  @@ -610,6 +634,9 @@
*/
   public synchronized void render(Document document)
   throws FOPException {
  +if (!isInitialized()) {
  +initialize();
  +}
   try {
   DocumentInputSource source = new DocumentInputSource(document);
   DocumentReader reader = new DocumentReader();
  @@ -638,6 +665,9 @@
* @throws FOPException if anything else goes wrong.
*/
   public synchronized void run() throws IOException, FOPException {
  +if (!isInitialized()) {
  +initialize();
  +}
   if (renderer == null) {
   setRenderer(RENDER_PDF);
   }
  
  
  

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



RE: Team page

2003-06-03 Thread Victor Mote
Jeremias Maerki wrote:

 That'll go away next time the site is updated. See my change:
 http://cvs.apache.org/viewcvs.cgi/xml-fop/src/documentation/conten
 t/xdocs/team.xml.diff?r1=1.5r2=1.6diff_format=h
 
 The mailto prefixes were missing and Forrest/Cocoon thought they were
 HTML pages.

Oops. Thanks for fixing.

Victor Mote

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



cvs commit: xml-fop/src/java/org/apache/fop/apps TraxInputHandler.java InputHandler.java XSLTInputHandler.java CommandLineOptions.java FOInputHandler.java

2003-06-03 Thread jeremias
jeremias2003/06/02 15:24:02

  Modified:src/java/org/apache/fop/apps TraxInputHandler.java
InputHandler.java XSLTInputHandler.java
CommandLineOptions.java FOInputHandler.java
  Log:
  Take over InputHandler code from maintenance branch.
  Makes the org.apache.fop.tools.xslt package superfluous.
  (#20398)
  Submitted by: Glen Mazza [EMAIL PROTECTED]
  
  Revision  ChangesPath
  1.2   +77 -13xml-fop/src/java/org/apache/fop/apps/TraxInputHandler.java
  
  Index: TraxInputHandler.java
  ===
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/apps/TraxInputHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- TraxInputHandler.java 11 Mar 2003 13:05:28 -  1.1
  +++ TraxInputHandler.java 2 Jun 2003 22:24:02 -   1.2
  @@ -54,6 +54,8 @@
   import java.io.File;
   
   // Imported TraX classes
  +import javax.xml.transform.Source;
  +import javax.xml.transform.Transformer;
   import javax.xml.transform.TransformerFactory;
   import javax.xml.transform.stream.StreamSource;
   import javax.xml.transform.sax.SAXResult;
  @@ -71,23 +73,66 @@
*/
   public class TraxInputHandler extends InputHandler {
   
  -private File xmlfile, xsltfile;
  +private Transformer transformer;
  +private StreamSource xmlSource;
  +private Source xsltSource;
   
   /**
  - * Main constructor
  + * Constructor with files as input.
* @param xmlfile XML file 
* @param xsltfile XSLT file
  + * @throws FOPException if initializing the Transformer fails
*/
  -public TraxInputHandler(File xmlfile, File xsltfile) {
  -this.xmlfile = xmlfile;
  -this.xsltfile = xsltfile;
  +public TraxInputHandler(File xmlfile, File xsltfile) throws FOPException {
  +this.xmlSource  = new StreamSource(xmlfile);
  +this.xsltSource = new StreamSource(xsltfile);
  +initTransformer();
  +}
  +
  +/**
  + * Constructor with URIs/URLs as input.
  + * @param xmlURL XML URL
  + * @param xsltURL XSLT URL
  + * @throws FOPException if initializing the Transformer fails
  + */
  +public TraxInputHandler(String xmlURL, String xsltURL) throws FOPException {
  +this.xmlSource  = new StreamSource(xmlURL);
  +this.xsltSource = new StreamSource(xsltURL);
  +initTransformer();
  +}
  +
  +/**
  + * Constructor with InputSources as input.
  + * @param xmlSource XML InputSource
  + * @param xsltSource XSLT InputSource
  + * @throws FOPException if initializing the Transformer fails
  + */
  +public TraxInputHandler(InputSource xmlSource, InputSource xsltSource) 
  +throws FOPException {
  +this.xmlSource  = new StreamSource(xmlSource.getByteStream(),
  +   xmlSource.getSystemId());
  +this.xsltSource = new StreamSource(xsltSource.getByteStream(),
  +   xsltSource.getSystemId());
  +initTransformer();
  +}
  +
  +private void initTransformer() throws FOPException {
  +try {
  +this.transformer = 
  +TransformerFactory.newInstance().newTransformer(xsltSource);
  +} catch (Exception ex) {
  +throw new FOPException(ex);
  +}
   }
   
   /**
* @see org.apache.fop.apps.InputHandler#getInputSource()
*/
   public InputSource getInputSource() {
  -return fileInputSource(xmlfile);
  +InputSource is = new InputSource();
  +is.setByteStream(xmlSource.getInputStream());
  +is.setSystemId(xmlSource.getSystemId());
  +return is;
   }
   
   /**
  @@ -96,7 +141,7 @@
* @see org.apache.fop.apps.InputHandler#getParser()
*/
   public XMLReader getParser() throws FOPException {
  -return this.getXMLFilter(xmlfile, xsltfile);
  +return getXMLFilter(xsltSource);
   }
   
   /**
  @@ -104,14 +149,12 @@
* then can be used in a chain with the XMLReader passed to Driver. This way
* during the conversion of the xml file + xslt stylesheet the resulting
* data is fed into Fop. This should help to avoid memory problems
  - * @param xmlfile The xmlfile containing the text data
  - * @param xsltfile An xslt stylesheet
  + * @param xsltSource An xslt stylesheet
* @return an XMLFilter which can be chained together with other 
* XMLReaders or XMLFilters
* @throws FOPException if setting up the XMLFilter fails
*/
  -public static XMLFilter getXMLFilter(File xmlfile,
  - File xsltfile) throws FOPException {
  +public static XMLFilter getXMLFilter(Source xsltSource) throws FOPException {
   try {
 

cvs commit: xml-fop/src/java/org/apache/fop/tools/xslt TraxTransform.java XSLTransform.java

2003-06-03 Thread jeremias
jeremias2003/06/02 15:26:28

  Removed: src/java/org/apache/fop/tools/xslt TraxTransform.java
XSLTransform.java
  Log:
  Remove the org.apache.fop.tools.xslt package.
  (#20398)
  Submitted by: Glen Mazza [EMAIL PROTECTED]

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



DO NOT REPLY [Bug 20398] - [PATCH] removing org.apache.fop.tools.xslt package

2003-06-03 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=20398.
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=20398

[PATCH] removing org.apache.fop.tools.xslt package

[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED



--- Additional Comments From [EMAIL PROTECTED]  2003-06-02 22:29 ---
Applied. Thanks.

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



Re: [GUMP] Build Failure - xml-fop

2003-06-03 Thread Jeremias Maerki

On 02.06.2003 14:12:43 Thomas E Deweese wrote:
  JM == Jeremias Maerki [EMAIL PROTECTED] writes:
 
 JM However, I'm worrying about binary compatibility. At the moment we
 JM have to tell our users that they have to use the Batik-version
 JM delivered with FOP. I'd like to see Batik's API stabilize some
 JM more so people can just download the latest version of Batik and
 JM replace it in their installation. I realize that FOP is a somehat
 JM special Batik customer from an API-POV. But let's take Cocoon: It
 JM contains blocks for Batik and FOP (where FOP uses Batik for SVG
 JM support). If a Cocoon user needs to use Batik (for generating SVG)
 JM and FOP (for generating PDF containing SVG graphics) this user is
 JM constrained to use the Batik version that FOP was compiled
 JM with. He cannot simply upgrade his Batik version to avoid a bug,
 JM for example. The very least he has to do is recompile FOP with
 JM that specific version of Batik he wants to use. Hopefully it
 JM compiles. To illustrate:
 
 Clearly having no interfaces change is a good thing, but we also
 need to support SVG properly - the equivalent of this change was
 _required_ to properly support SVG.  It could have been done other
 ways that (I think) would have preserved binary compatibility but they
 would have had significant drawbacks on performance, maintainability
 and robustness.

I understand. We have similar problems with the transition from
maintenance branch to redeign.

 FOP is a special customer and I am actually quite
 surprised that you are creating subclasses of GraphicsNode (I
 understand what is being done there but I could have suggested a
 couple of 'better' ways to do it I think).

Well, it's the way it is done now. It would be great if you could
outline better ways to do what we need to do.

 JM As I said before, the FOP teams produced similar problems in the
 JM past.  After a recent problem between Cocoon and FOP I'm committed
 JM to watching over FOP's APIs. I'm hoping that the Batik team will
 JM similarly watch over what happens in their APIs.
 
 So you are now committed to not introducing any binary or source
 incompatibilities?

I want to avoid them where possible. I want to help making sure that
everyone thinks twice before changing an API. I'm not going to stand in
the way of change. But we always have to be aware of our customers' needs.

 I don't think Batik is in a position to do this
 yet.  I would say that when 1.5 goes final we might be willing to
 offer that assurance for releases in the '1.5' branch.  But we still
 need at some point to support SMIL Animation I can guarantee you that
 this will involve incompatible API changes/extensions/etc.

Sounds to me like some problems could be avoided by separating
non-interactive and interactive APIs. Like subclassing
AbstractGraphicsNode to AbstractInteractiveGraphicsNode (which contains
the getSensitiveBound() method). Just a thought, I'm not familiar enough
with Batik.

  BTW perhaps I'm missing the point of the 'maintence' build but
  shouldn't that be done off one of the release versions of Batik?
 
 JM I'm under the impression that Gump is intended to check
 JM code-compatibility between projects in CVS, not against released
 JM versions. This is to have an early warning about incompatible
 JM changes (before a release), so they can be resolved (hopefully
 JM with a compatibility layer) before the release.
 
 I guess as long as you can still make changes in the 'maintence'
 branch it isn't an issue - but I would have thought that a particular
 version of Batik would have already been targeted for the release of
 FOP - rather than tracking 'HEAD'.  It just seems odd to me that a
 'stable' version of FOP would track 'HEAD' on Batik.

Not really stable. :-) The branch is more than 20 months old and has
seen very active development. It's really two development tracks like
Xalan 1 and 2. The older gets discarded eventually.

 JM With my findings above I think it would even make sense to have an
 JM additional mechanism to check binary compatibility (just some
 JM runtime tests using JUnit, for example) between projects (CVS of
 JM project 1 against release xy of project 2).
 
 Binary compatibility is really, really hard to ensure and I think
 it only makes sense on 'point' releases, so 1.5 and 1.5.1 _should_ be
 binary compatible, 1.5 and 1.6 may not be (and similarly 1.5b4 and
 1.5b5 do not need to be) - all of course IMHO - other Batik developers
 may (and probably will :) disagree.

Batik's in beta mode, FOP's in release candidate modefor a very long
time. :-) That basically makes each beta/rc releases quite important.
But you're right, except that I would expect compatibility over a full
version (1.x).

I think you're missing my point about that idea: Testing a project CVS
against dependent releases may be a good way to make a developer think
twice (TM). That's basically the only thing I ask. Anyway, it was just
an idea.


Jeremias 

Re: [GUMP] Build Failure - xml-fop

2003-06-03 Thread Thomas E Deweese
 JM == Jeremias Maerki [EMAIL PROTECTED] writes:

 FOP is a special customer and I am actually quite surprised that
 you are creating subclasses of GraphicsNode (I understand what is
 being done there but I could have suggested a couple of 'better'
 ways to do it I think).

JM Well, it's the way it is done now. It would be great if you could
JM outline better ways to do what we need to do.

I would have simply attached the JpegImage as a rendering hint on
the standard Batik RasterImageNode.  Then the PDF Graphics can check
if the hint is present when drawImage is called, if so use that hint.
Alternately, I would have derived off the existing RasterImageNode (a
known concrete class) rather than creating a new subclass of an
abstract class.

Both of these preserve the normal workings of the rendering engine
yet enables you to annotate the GraphicsNode tree with your additional
information.  

We also should have made the construction of the
RasterImageGraphcisNode a method you could easily override.

 I don't think Batik is in a position to do this yet.  I would say
 that when 1.5 goes final we might be willing to offer that
 assurance for releases in the '1.5' branch.  But we still need at
 some point to support SMIL Animation I can guarantee you that this
 will involve incompatible API changes/extensions/etc.

JM Sounds to me like some problems could be avoided by separating
JM non-interactive and interactive APIs. Like subclassing
JM AbstractGraphicsNode to AbstractInteractiveGraphicsNode (which
JM contains the getSensitiveBound() method). Just a thought, I'm not
JM familiar enough with Batik.

If we had done this from the start this might have helped FOP in
this particular case but the addition still would have hurt anyone
extending the existing dynamic portion of Batik.  So it might have
limited the impact but it would not have eliminated it, and I had
already considered the fact that the impact was limited to people who
were extending GraphicsNode which is already a _very_small_ population
AFAIK (as I said I was a bit surprised that even FOP, who I knew was
pretty deeply involved with Batik, was extending Graphics Nodes).

JM With my findings above I think it would even make sense to have an
JM additional mechanism to check binary compatibility (just some
JM runtime tests using JUnit, for example) between projects (CVS of
JM project 1 against release xy of project 2).

  Binary compatibility is really, really hard to ensure and I think
 it only makes sense on 'point' releases, so 1.5 and 1.5.1 _should_
 be binary compatible, 1.5 and 1.6 may not be (and similarly 1.5b4
 and 1.5b5 do not need to be) - all of course IMHO - other Batik
 developers may (and probably will :) disagree.

JM Batik's in beta mode, FOP's in release candidate modefor a
JM very long time. :-) That basically makes each beta/rc releases
JM quite important.  But you're right, except that I would expect
JM compatibility over a full version (1.x).

This then just becomes a 'naming issue'.

JM I think you're missing my point about that idea: Testing a project
JM CVS against dependent releases may be a good way to make a
JM developer think twice (TM). That's basically the only thing I
JM ask. Anyway, it was just an idea.

I think it's better of developers just think twice (TM).  BTW I
did think twice about about this change but it really is needed.  I am
sorry about the trouble.



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