Question
I require a free .net XSL-FO processor and have initially tested nfop's functionality. I have found some shortcomings which are significant in allowing me to meet the requirements for my project.
The issues I have encountered are:
- SVG do not render
watermark functionality is basically impossible to render - body renders before all other panels, no SVG (above) and no text rotation
keep-together attribute is not implemented* (http://www.w3schools.com/xslfo/prop_keep-together.asp)
The third point is particularly annoying, I have found workarounds for some of the above issues(1,2) by using iTextSharp and editing the PDF afterwards (messy).
My questions are:
- Are there workarounds for any of the issues mentioned above?
- What other issues have people encountered with nfop?
- Are there alternative XSL FO processors for .net?
Solution
Other FOP engines with .NET interfaces to consider:
The level of FOP standards compliance and bugs/issues varies between FOP engines, so I would recommend using several FOP engines(many offer trial versions) when developing in order to determine if there is a problem with your FOP or a bug/issue with your rendering engine.
OTHER TIPS
I have found 1 work around for the keep-together attribute issue. Instead of using this attribute, I chain table-row elements together using:
<fo:table-row keep-with-previous="always">
The above attribute appears to be implemented.
I used the following site as a reference: http://www.ibm.com/developerworks/xml/library/x-tippgbk/index.html
I still would like to hear other issues/workarounds/alternatives for nfop.
Thanks for your answer Mads. Unfortunately those options are unavailable to me, due to budget constraints and what-not.
I will have to use iTextSharp and add in the watermark afterward manually (yay).
Well this puppy reared its head again and I was confronted with the "keeping blocks on the same page" issue.
I found
<fo:table-row keep-together="always">
worked a charm.