return;
}
// load dimensions
- if (!fopimage.load(FopImage.DIMENSIONS, getUserAgent())) {
+ if (!fopimage.load(FopImage.DIMENSIONS, getUserAgent().getLogger())) {
// error
url = null;
return;
import java.awt.Color;
// FOP
-import org.apache.fop.apps.FOUserAgent;
+import org.apache.avalon.framework.logger.Logger;
/**
* Base class to implement the FopImage interface.
* @param ua the user agent for handling logging etc.
* @return true if the loading was successful
*/
- public synchronized boolean load(int type, FOUserAgent ua) {
+ public synchronized boolean load(int type, Logger logger) {
if ((loaded & type) != 0) {
return true;
}
boolean success = true;
if (((type & DIMENSIONS) != 0) && ((loaded & DIMENSIONS) == 0)) {
- success = success && loadDimensions(ua);
+ success = success && loadDimensions(logger);
if (!success) {
return false;
loaded = loaded | DIMENSIONS;
}
if (((type & BITMAP) != 0) && ((loaded & BITMAP) == 0)) {
- success = success && loadBitmap(ua);
+ success = success && loadBitmap(logger);
if (success) {
loaded = loaded | BITMAP;
}
}
if (((type & ORIGINAL_DATA) != 0) && ((loaded & ORIGINAL_DATA) == 0)) {
- success = success && loadOriginalData(ua);
+ success = success && loadOriginalData(logger);
if (success) {
loaded = loaded | ORIGINAL_DATA;
}
* @param ua the user agent
* @return true if the loading was successful
*/
- protected boolean loadDimensions(FOUserAgent ua) {
+ protected boolean loadDimensions(Logger logger) {
return false;
}
* @param ua the user agent
* @return true if the loading was successful
*/
- protected boolean loadBitmap(FOUserAgent ua) {
+ protected boolean loadBitmap(Logger logger) {
return false;
}
* @param ua the user agent
* @return true if the loading was successful
*/
- protected boolean loadOriginalData(FOUserAgent ua) {
+ protected boolean loadOriginalData(Logger logger) {
return false;
}
import java.awt.color.ColorSpace;
// FOP
-import org.apache.fop.apps.FOUserAgent;
+import org.apache.avalon.framework.logger.Logger;
/**
* Bitmap image.
* @param ua the user agent
* @return true if it was loaded successfully
*/
- protected boolean loadBitmap(FOUserAgent ua) {
+ protected boolean loadBitmap(Logger logger) {
int wpos = 18;
int hpos = 22; // offset positioning for w and height in bmp files
int[] headermap = new int[54];
}
}
} catch (IOException e) {
- ua.getLogger().error("Error while loading image "
+ logger.error("Error while loading image "
+ "" + " : "
+ e.getClass() + " - "
+ e.getMessage(), e);
} else if (this.bitsPerPixel == 4 || this.bitsPerPixel == 8) {
bytes = this.width / (8 / this.bitsPerPixel);
} else {
- ua.getLogger().error("Image (" + ""
- + ") has " + this.bitsPerPixel
- + " which is not a supported BMP format.");
+ logger.error("Image (" + ""
+ + ") has " + this.bitsPerPixel
+ + " which is not a supported BMP format.");
return false;
}
if ((bytes & 0x03) != 0) {
inputStream.close();
inputStream = null;
} catch (IOException e) {
- ua.getLogger().error("Error while loading image "
- + "" + " : "
- + e.getClass() + " - "
- + e.getMessage(), e);
+ logger.error("Error while loading image "
+ + "" + " : "
+ + e.getClass() + " - "
+ + e.getMessage(), e);
return false;
}
import java.awt.color.ICC_Profile;
import java.awt.Color;
-import org.apache.fop.apps.FOUserAgent;
+import org.apache.avalon.framework.logger.Logger;
/**
* Fop image interface for loading images.
* the information.
*
* @param type the type of loading required
- * @param ua the user agent
+ * @param logger the Avalon logger
* @return boolean true if the information could be loaded
*/
- boolean load(int type, FOUserAgent ua);
+ boolean load(int type, Logger logger);
/**
* Returns the image width.
import java.net.URLConnection;
// FOP
-import org.apache.fop.apps.FOUserAgent;
+import org.apache.avalon.framework.logger.Logger;
/**
* FopImage object for GIF images, using Java native classes.
* @param ua the user agent for loading
* @return True if the load process succeeded
*/
- protected boolean loadBitmap(FOUserAgent ua) {
+ protected boolean loadBitmap(Logger logger) {
int[] tmpMap = null;
try {
URLConnection con = new DummyConnection(inputStream);
try {
tmpMap = consumer.getImage();
} catch (Exception ex) {
- ua.getLogger().error("Image grabbing interrupted : "
- + ex.getMessage(), ex);
+ logger.error("Image grabbing interrupted : "
+ + ex.getMessage(), ex);
return false;
}
this.isTransparent = false;
}
} catch (Exception ex) {
- ua.getLogger().error("Error while loading image "
- + "" + " : "
- + ex.getClass() + " - "
- + ex.getMessage(), ex);
+ logger.error("Error while loading image "
+ + "" + " : "
+ + ex.getClass() + " - "
+ + ex.getMessage(), ex);
return false;
}
// Avalon
import org.apache.avalon.framework.logger.Logger;
-// FOP
-import org.apache.fop.apps.FOUserAgent;
-
/**
* FopImage object for several images types, using Jimi.
* See Jimi documentation for supported image types.
}
}
- protected boolean loadDimensions(FOUserAgent ua) {
+ protected boolean loadDimensions(Logger logger) {
if (this.bitmaps == null) {
- loadImage(ua.getLogger());
+ loadImage(logger);
}
return this.bitmaps != null;
}
/**
- * @see org.apache.fop.image.AbstractFopImage#loadBitmap(FOUserAgent)
+ * @see org.apache.fop.image.AbstractFopImage#loadBitmap(Logger)
*/
- protected boolean loadBitmap(FOUserAgent ua) {
+ protected boolean loadBitmap(Logger logger) {
if (this.bitmaps == null) {
- loadImage(ua.getLogger());
+ loadImage(logger);
}
return this.bitmaps != null;
import java.awt.color.ICC_Profile;
// FOP
-import org.apache.fop.apps.FOUserAgent;
+import org.apache.avalon.framework.logger.Logger;
import org.apache.fop.util.CMYKColorSpace;
/**
* @param ua the user agent
* @return true if loaded false for any error
*/
- protected boolean loadOriginalData(FOUserAgent ua) {
+ protected boolean loadOriginalData(Logger logger) {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ByteArrayOutputStream iccStream = new ByteArrayOutputStream();
int index = 0;
inputStream.close();
inputStream = null;
} catch (java.io.IOException ex) {
- ua.getLogger().error("Error while loading image "
- + " : " + ex.getClass()
- + " - " + ex.getMessage(), ex);
+ logger.error("Error while loading image "
+ + " : " + ex.getClass()
+ + " - " + ex.getMessage(), ex);
return false;
}
*/
this.colorSpace = CMYKColorSpace.getInstance();
} else {
- ua.getLogger().error("Unknown ColorSpace for image: "
+ logger.error("Unknown ColorSpace for image: "
+ "");
return false;
}
}
}
} else {
- ua.getLogger().error("Error while loading "
- + "JpegImage - Invalid JPEG Header.");
+ logger.error("Error while loading "
+ + "JpegImage - Invalid JPEG Header.");
return false;
}
if (iccStream.size() > 0) {
try {
iccStream.write(align);
} catch (Exception e) {
- ua.getLogger().error("Error while loading image "
- + " : "
- + e.getMessage(), e);
+ logger.error("Error while loading image "
+ + " : "
+ + e.getMessage(), e);
return false;
}
try {
iccProfile = ICC_Profile.getInstance(iccStream.toByteArray());
} catch (Exception e) {
- ua.getLogger().error("Invalid ICC profile: " + e, e);
+ logger.error("Invalid ICC profile: " + e, e);
return false;
}
} else if (this.colorSpace == null) {
- ua.getLogger().error("ColorSpace not specified for JPEG image");
+ logger.error("ColorSpace not specified for JPEG image");
return false;
}
return true;
if (back.getURL() != null) { // TODO: implement
ImageFactory fact = ImageFactory.getInstance();
FopImage fopimage = fact.getImage(back.getURL(), userAgent);
- if (fopimage != null && fopimage.load(FopImage.DIMENSIONS, userAgent)) {
+ if (fopimage != null && fopimage.load(FopImage.DIMENSIONS, userAgent.getLogger())) {
if (back.getRepeat() == BackgroundRepeat.REPEAT) {
// create a pattern for the image
} else {
if (back.getURL() != null) {
ImageFactory fact = ImageFactory.getInstance();
FopImage fopimage = fact.getImage(back.getURL(), userAgent);
- if (fopimage != null && fopimage.load(FopImage.DIMENSIONS, userAgent)) {
+ if (fopimage != null && fopimage.load(FopImage.DIMENSIONS, userAgent.getLogger())) {
if (back.getRepeat() == BackgroundRepeat.REPEAT) {
// create a pattern for the image
} else {
if (fopimage == null) {
return;
}
- if (!fopimage.load(FopImage.DIMENSIONS, userAgent)) {
+ if (!fopimage.load(FopImage.DIMENSIONS, userAgent.getLogger())) {
return;
}
String mime = fopimage.getMimeType();
if ("text/xml".equals(mime)) {
- if (!fopimage.load(FopImage.ORIGINAL_DATA, userAgent)) {
+ if (!fopimage.load(FopImage.ORIGINAL_DATA, userAgent.getLogger())) {
return;
}
Document doc = ((XMLImage) fopimage).getDocument();
renderDocument(doc, ns, pos);
} else if ("image/svg+xml".equals(mime)) {
- if (!fopimage.load(FopImage.ORIGINAL_DATA, userAgent)) {
+ if (!fopimage.load(FopImage.ORIGINAL_DATA, userAgent.getLogger())) {
return;
}
Document doc = ((XMLImage) fopimage).getDocument();
renderDocument(doc, ns, pos);
} else if ("image/eps".equals(mime)) {
- if (!fopimage.load(FopImage.ORIGINAL_DATA, userAgent)) {
+ if (!fopimage.load(FopImage.ORIGINAL_DATA, userAgent.getLogger())) {
return;
}
FopPDFImage pdfimage = new FopPDFImage(fopimage, url);
int xobj = pdfDoc.addImage(currentContext, pdfimage).getXNumber();
fact.releaseImage(url, userAgent);
} else if ("image/jpeg".equals(mime)) {
- if (!fopimage.load(FopImage.ORIGINAL_DATA, userAgent)) {
+ if (!fopimage.load(FopImage.ORIGINAL_DATA, userAgent.getLogger())) {
return;
}
FopPDFImage pdfimage = new FopPDFImage(fopimage, url);
placeImage((int) pos.getX() / 1000,
(int) pos.getY() / 1000, w, h, xobj);
} else {
- if (!fopimage.load(FopImage.BITMAP, userAgent)) {
+ if (!fopimage.load(FopImage.BITMAP, userAgent.getLogger())) {
return;
}
FopPDFImage pdfimage = new FopPDFImage(fopimage, url);
if (back.getURL() != null) {
ImageFactory fact = ImageFactory.getInstance();
FopImage fopimage = fact.getImage(back.getURL(), userAgent);
- if (fopimage != null && fopimage.load(FopImage.DIMENSIONS, userAgent)) {
+ if (fopimage != null && fopimage.load(FopImage.DIMENSIONS, userAgent.getLogger())) {
if (back.getRepeat() == BackgroundRepeat.REPEAT) {
// create a pattern for the image
} else {
import org.w3c.dom.Element;
+import org.apache.avalon.framework.logger.ConsoleLogger;
import org.apache.batik.bridge.BridgeContext;
import org.apache.batik.gvt.AbstractGraphicsNode;
import org.apache.batik.gvt.GraphicsNode;
(purl.toString(), purl.openStream(), null);
if (ii.mimeType.toLowerCase() == "image/jpeg") {
JpegImage jpeg = new JpegImage(ii);
- jpeg.load(FopImage.ORIGINAL_DATA, null);
+ ConsoleLogger logger = new ConsoleLogger(ConsoleLogger.LEVEL_INFO);
+ jpeg.load(FopImage.ORIGINAL_DATA, logger);
PDFJpegNode node = new PDFJpegNode(jpeg, origGN);
Rectangle2D imgBounds = getImageBounds(ctx, e);