Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
What Is fop.jar in fop-2.7-bin.zip
What Is fop.jar? I got it from the fop-2.7-bin.zip.
✍: FYIcenter.com
fop.jar in fop-2.7-bin.zip is the JAR file for FOP 2.7, which is a print formatter driven by XSL formatting objects (XSL-FO). You can obtain fop.jar from the build folder of the fop-2.7-bin.zip file.
Below is the information about the fop.jar (2.2) file:
JAR File Size and Download Location:
JAR name: fop.jar, fop-2.7.jar Target JDK version: 1.7 File name: fop.jar File size: 4442817 bytes Release date: 20-Jan-2022 Download: Apache FOP Website
Java source code files for fop.jar:
⏎ org/apache/fop/render/ps/NativeTextHandler.java
/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /* $Id: NativeTextHandler.java 1616590 2014-08-07 20:27:59Z gadams $ */ package org.apache.fop.render.ps; import java.awt.Graphics2D; import java.awt.Shape; import java.awt.geom.AffineTransform; import java.io.IOException; import org.apache.xmlgraphics.java2d.ps.PSGraphics2D; import org.apache.xmlgraphics.java2d.ps.PSTextHandler; import org.apache.xmlgraphics.ps.PSGenerator; import org.apache.fop.fonts.Font; import org.apache.fop.fonts.FontInfo; import org.apache.fop.fonts.FontSetup; /** * Specialized TextHandler implementation that the PSGraphics2D class delegates to to paint text * using PostScript text operations. */ public class NativeTextHandler implements PSTextHandler { private PSGraphics2D rootG2D; /** FontInfo containing all available fonts */ protected FontInfo fontInfo; /** Currently valid Font */ protected Font font; /** Overriding FontState */ protected Font overrideFont; /** the current (internal) font name */ protected String currentFontName; /** the current font size in millipoints */ protected int currentFontSize; /** * Main constructor. * @param g2d the PSGraphics2D instance this instances is used by * @param fontInfo the FontInfo object with all available fonts */ public NativeTextHandler(PSGraphics2D g2d, FontInfo fontInfo) { this.rootG2D = g2d; if (fontInfo != null) { this.fontInfo = fontInfo; } else { setupFontInfo(); } } private void setupFontInfo() { //Sets up a FontInfo with default fonts fontInfo = new FontInfo(); boolean base14Kerning = false; FontSetup.setup(fontInfo, base14Kerning); } /** * Return the font information associated with this object * @return the FontInfo object */ public FontInfo getFontInfo() { return fontInfo; } private PSGenerator getPSGenerator() { return this.rootG2D.getPSGenerator(); } /** {@inheritDoc} */ public void writeSetup() throws IOException { if (fontInfo != null) { PSFontUtils.writeFontDict(getPSGenerator(), fontInfo); } } /** {@inheritDoc} */ public void writePageSetup() throws IOException { //nop } /** * Draw a string to the PostScript document. The text is painted using * text operations. * {@inheritDoc} */ public void drawString(Graphics2D g, String s, float x, float y) throws IOException { PSGraphics2D g2d = (PSGraphics2D)g; g2d.preparePainting(); if (this.overrideFont == null) { java.awt.Font awtFont = g2d.getFont(); this.font = createFont(awtFont); } else { this.font = this.overrideFont; this.overrideFont = null; } //Color and Font state g2d.establishColor(g2d.getColor()); establishCurrentFont(); PSGenerator gen = getPSGenerator(); gen.saveGraphicsState(); //Clip Shape imclip = g2d.getClip(); g2d.writeClip(imclip); //Prepare correct transformation AffineTransform trans = g2d.getTransform(); gen.concatMatrix(trans); gen.writeln(gen.formatDouble(x) + " " + gen.formatDouble(y) + " moveto "); gen.writeln("1 -1 scale"); StringBuffer sb = new StringBuffer("("); escapeText(s, sb); sb.append(") t "); gen.writeln(sb.toString()); gen.restoreGraphicsState(); } private void escapeText(final String text, StringBuffer target) { final int l = text.length(); for (int i = 0; i < l; i++) { final char ch = text.charAt(i); final char mch = font.mapChar(ch); PSGenerator.escapeChar(mch, target); } } private Font createFont(java.awt.Font f) { return fontInfo.getFontInstanceForAWTFont(f); } private void establishCurrentFont() throws IOException { if (!currentFontName.equals(font.getFontName()) || (currentFontSize != font.getFontSize())) { PSGenerator gen = getPSGenerator(); gen.writeln("/" + font.getFontTriplet().getName() + " " + gen.formatDouble(font.getFontSize() / 1000f) + " F"); currentFontName = font.getFontName(); currentFontSize = font.getFontSize(); } } /** * Sets the overriding font. * @param override Overriding Font to set */ public void setOverrideFont(Font override) { this.overrideFont = override; } }
⏎ org/apache/fop/render/ps/NativeTextHandler.java
Or download all of them as a single archive file:
File name: fop-2.7-src.zip File size: 3401312 bytes Release date: 2022-01-20 Download
⇒ "fop" Command in fop-2.7-bin.zip
2016-07-07, 38226👍, 0💬
Popular Posts:
What Is jms.jar? I heard it's related to JMS (Java Message Service) 1.1? The if you have an jms.jar ...
Apache Log4j 1.2 Bridge allows applications coded to use Log4j 1.2 API to use Log4j 2 instead. Bytec...
The JDT project provides the tool plug-ins that implement a Java IDE supporting the development of a...
Apache Log4j IOStreams is a Log4j API extension that provides numerous classes from java.io that can...
Apache Log4j 1.2 Bridge allows applications coded to use Log4j 1.2 API to use Log4j 2 instead. Bytec...