You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-dev@xmlgraphics.apache.org by Zhong Yi <yi...@yahoo.com> on 2003/03/11 04:46:40 UTC

Repeat PS Renderer 3

Jeremias,
fop-dev list manager complains my part 3 too large. So
I send the WinCVS diff of PSGraphics2D.java here.

cvs diff PSGraphics2D.java (in directory
G:\xml-fop\src\org\apache\fop\render\ps\)
Index: PSGraphics2D.java
===================================================================
RCS file:
/home/cvspublic/xml-fop/src/org/apache/fop/render/ps/PSGraphics2D.java,v
retrieving revision 1.9
diff -r1.9 PSGraphics2D.java
74c74
< 
---
>     protected FontState ovFontState = null;
461c461
<             gen.writeln(c.getRed() + " " +
c.getGreen() + " " + c.getBlue()
---
>            
gen.writeln(gen.formatDouble(c.getRed()/255.0) + " " +
gen.formatDouble(c.getGreen()/255.0) + " " +
gen.formatDouble(c.getBlue()/255.0)
493,496c493,496
<                     // psRenderer.write((1000 *
PDFNumber.doubleOut(vals[0])) +
<                     // " " + (1000 *
PDFNumber.doubleOut(vals[1])) + " " +
<                     // (1000 *
PDFNumber.doubleOut(vals[2])) + " " +
<                     // (1000 *
PDFNumber.doubleOut(vals[3])) + " y\n");
---
>                    
gen.writeln(gen.formatDouble(1000 * vals[0]) + " " 
>                               +
gen.formatDouble(1000 * vals[1]) + " " 
>                               +
gen.formatDouble(1000 * vals[2]) + " " 
>                               +
gen.formatDouble(1000 * vals[3]) + " QUADTO ");
545,548c545,548
<                     // psRenderer.write(1000 *
PDFNumber.doubleOut(vals[0]) +
<                     // " " + 1000 *
PDFNumber.doubleOut(vals[1]) + " " +
<                     // 1000 *
PDFNumber.doubleOut(vals[2]) + " " +
<                     // 1000 *
PDFNumber.doubleOut(vals[3]) + " y\n");
---
>                    
gen.writeln(gen.formatDouble(1000 * vals[0]) + " " 
>                               +
gen.formatDouble(1000 * vals[1]) + " " 
>                               +
gen.formatDouble(1000 * vals[2]) + " " 
>                               +
gen.formatDouble(1000 * vals[3]) + " QUADTO ");
763,787c763,781
<         try {
<            
System.out.println("drawString(String)");
<             gen.writeln("BT");
<             Shape imclip = getClip();
<             writeClip(imclip);
<             Color c = getColor();
<             gen.writeln(c.getRed() + " " +
c.getGreen() + " " + c.getBlue()
<                              + " setrgbcolor");
<             
<             AffineTransform trans = getTransform();
<             trans.translate(x, y);
<             double[] vals = new double[6];
<             trans.getMatrix(vals);
<             
<             gen.writeln(gen.formatDouble(vals[0]) +
" "
<                       + gen.formatDouble(vals[1]) +
" "
<                       + gen.formatDouble(vals[2]) +
" "
<                       + gen.formatDouble(vals[3]) +
" "
<                       + gen.formatDouble(vals[4]) +
" "
<                       + gen.formatDouble(vals[5]) +
" "
<                       + gen.formatDouble(vals[6]) +
" Tm [" + s + "]");
<             
<             gen.writeln("ET");
<         } catch (IOException ioe) {
<             handleIOException(ioe);
---
>       try {
>         if(ovFontState == null) {
>             Font gFont = getFont();
>             String n = gFont.getFamily();
>             if (n.equals("sanserif")) {
>                 n = "sans-serif";
>             }
>             int siz = gFont.getSize();
>             String style = gFont.isItalic() ?
"italic" : "normal";
>             String weight = gFont.isBold() ? "bold"
: "normal";
>             
>             //try {
>                 //fontState = new FontState(n,
fontState.getFontMetrics(),siz);
>             //} catch
(org.apache.fop.apps.FOPException fope) {
>                 //fope.printStackTrace();
>             //}
>         } else {
>             fontState = ovFontState;
>             ovFontState = null;
788a783,828
>         Shape imclip = getClip();
>         writeClip(imclip);
>         Color c = getColor();
>         gen.writeln(c.getRed()/255.0 + " " +
c.getGreen()/255.0 + " " + c.getBlue()/255.0
>                          + " setrgbcolor");
>   
>         AffineTransform trans = getTransform();
>         trans.translate(x, y);
>         double[] vals = new double[6];
>         trans.getMatrix(vals);
>         gen.writeln(gen.formatDouble(1000*vals[4]) +
" "
>                          +
gen.formatDouble(1000*vals[5]) + " "
>                          + " moveto ");
>         //String fontWeight =
fontState.getFontWeight();
>         StringBuffer sb = new StringBuffer();
>   
>         int l = s.length();
> 
>         if ((currentFontName !=
fontState.getFontName()) || (currentFontSize !=
fontState.getFontSize())) {
>             gen.writeln(fontState.getFontName() + "
" + fontState.getFontSize() + " F");
>             currentFontName =
fontState.getFontName();
>             currentFontSize =
fontState.getFontSize();
>         }
>         for (int i = 0; i < l; i++) {
>             char ch = s.charAt(i);
>             char mch = fontState.mapChar(ch);
>             if (mch > 127) {
>                 sb = sb.append("\\" +
Integer.toOctalString(mch));
>             } else {
>                 String escape = "\\()[]{}";
>                 if (escape.indexOf(mch) >= 0) {
>                     sb.append("\\");
>                 }
>                 sb = sb.append(mch);
>             }
>         }
> 
>         String psString = null;
>         psString = " (" + sb.toString()+") " +" t ";
> 
>         gen.writeln(" 1.0 -1.0 scale");
>         gen.writeln(psString);        
>         gen.writeln(" 1.0 -1.0 scale");
>       } catch (IOException ioe) {
>           handleIOException(ioe);
>       }
877c917
<             gen.writeln(c.getRed() + " " +
c.getGreen() + " " + c.getBlue()
---
>            
gen.writeln(gen.formatDouble(c.getRed()/255.0) + " " +
gen.formatDouble(c.getGreen()/255.0) + " " +
gen.formatDouble(c.getBlue()/255.0)
908,911c948,951
<                     // psRenderer.write(1000 *
PDFNumber.doubleOut(vals[0]) +
<                     // " " + 1000 *
PDFNumber.doubleOut(vals[1]) + " " +
<                     // 1000 *
PDFNumber.doubleOut(vals[2]) + " " +
<                     // 1000 *
PDFNumber.doubleOut(vals[3]) + " y\n");
---
>                    
gen.writeln(gen.formatDouble(1000 * vals[0]) + " " 
>                               +
gen.formatDouble(1000 * vals[1]) + " " 
>                               +
gen.formatDouble(1000 * vals[2]) + " " 
>                               +
gen.formatDouble(1000 * vals[3]) + " QUADTO ");
980a1021,1024
>     public void setOverrideFontState(FontState
infont) {
>         ovFontState = infont;
>     }
>     

*****CVS exited normally with code 1*****



__________________________________________________
Do you Yahoo!?
Yahoo! Web Hosting - establish your business online
http://webhosting.yahoo.com

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org


Re: Repeat PS Renderer 3

Posted by Jeremias Maerki <de...@greenmail.ch>.
Thanks George. I'll look at the files today. If you want to avoid this
kind of problem in the future you can add a BugZilla entry and add your
files as attachment there (Use "[PATCH]" in the subject). That produces
far less traffic on the mailing list as a side effect. You can also ZIP
your files up to make them smaller. And last but not least, we normally
prefer CVS diff files over the full file. Thanks again!

On 11.03.2003 04:46:40 Zhong Yi wrote:
> Jeremias,
> fop-dev list manager complains my part 3 too large. So
> I send the WinCVS diff of PSGraphics2D.java here.


Jeremias Maerki


---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org