Is keep-together.within-line=always working with nested fo:inline?

2010-07-24 Thread Alexey Neyman
Hi,

I am trying to prevent a line from breaking, so I wrapped it inside a 
fo:inline keep-together.within-line=always.../fo:inline. This works as 
long as the line is a plain text, but does not work if there is a nested 
fo:inline. In that case, the line breaks at the nested fo:inline.

Here is a FO snippet:

===
fo:inline keep-together.within-line=alwaysvery long and nasty 
fo:inline/line that should not probably wrap unless somebody is using a 
nested fo inline fo:inline/ which allows this line to wrapping 
aroundfo:inline/ even though it should not/fo:inline
===

Is it intended behavior or a bug?

I tried googling, but haven't found any definitive answer. The most relevant 
result was an item in FOP 0.94 change list which said that UAX+14 line 
breaking is implemented, but it does not propagate to nested fo:inlines. I am 
not sure if this explains such behavior.

I am using FOP 0.95, packages from Ubuntu 10.04.

Thanks,
Alexey.

-
To unsubscribe, e-mail: fop-users-unsubscr...@xmlgraphics.apache.org
For additional commands, e-mail: fop-users-h...@xmlgraphics.apache.org



Image not available: No ImagePreloader found

2010-07-24 Thread Phillip Oldham
I'm using FOP 0.95, and have happily been running with a custom URIResolver 
class to load and embed SVG images into my PDF output.

Earlier today I changed the build process so that all the jar files that were 
required by FOP to be in the classpath were un-jar'd and included in my main 
.jar file. Since then, I've not been able to load a single image. Here is my 
resolver class:

private class ImgURIResolver implements URIResolver {
private static final String uriprefix = img:;
private URIResolver defaultResolver;
protected ImgURIResolver() {}
public ImgURIResolver(URIResolver defaultResolver) {
this.defaultResolver = defaultResolver;
}
public Source resolve(String href, String base) throws 
TransformerException {
if (href.startsWith(PREFIX)){
String name = href.substring(uriprefix.length());
try {
for( int i = 0; i  PDFRenderer.images.size(); i++ ) {
Image img = PDFRenderer.images.get(i);
if( img.filename.equals(name) ) {
return new StreamSource(new 
ByteArrayInputStream(img.filedata));
}
}
} catch (Exception e) {
throw new TransformerException(e.getMessage());
}
}
return defaultResolver.resolve(href, base);
}
}

The images are loaded into memory in another class, and I can confirm that the 
img.filedata is there.

The errors I see are as follows:
242405 [pool-1-thread-2] ERROR org.apache.fop.fo.FONode - Image not available: 
No ImagePreloader found for img:myimage.svg
242408 [pool-1-thread-2] ERROR org.apache.fop.render - Image not found: 
img:myimage.svg

Inline SVGs work as expected.

I'm at a loss as to what has changed... I've not removed any files, or changed 
anything other than the build.xml file to unjar dependencies  bundle 
everything into one file.

Any ideas on how I can investigate/resolve this?
-
To unsubscribe, e-mail: fop-users-unsubscr...@xmlgraphics.apache.org
For additional commands, e-mail: fop-users-h...@xmlgraphics.apache.org