I am having a hard time finding on OSS or commercial web-based (javascript) WYSIWYG* editor that produces XSL:FO. Would I would love to have the editor capable of doing...
(*) Since it is a WYSIWYG editor, there must be an ability to preview the document being created. Since XSL:FO requires an XLS:FO processor to translate into documents (RTF, PDF, etc etc) I would expect there to be a means to select which document type I would like to render, select "preview", and that document be rendered for preview (in an iframe, another window, whatever). I would expect this to require a server-side XSL:FO processor component as well. A bonus would be a "default" auto-preview that sends an AJAX request to the server to update the preview during a users content-creation "pause" (if the user doesn't add content for 5 seconds, auto-preview).
XSL-FO (XSL Formatting Objects) is a markup language for XML document formatting that is most often used to generate PDF files. XSL-FO is part of XSL (Extensible Stylesheet Language), a set of W3C technologies designed for the transformation and formatting of XML data.
Microsoft Word is a common example that helps to define a WYSIWYG editor. You have a blank page with some formatting tools that allow you to add and format words, tables, images, and so forth. What you see on the screen is exactly what you see when you print or share the document.
WYSIWYG (pronounced wiz-ee-wig) is a type of editing software that allows users to see and edit content in a form that appears as it would when displayed on an interface, webpage, slide presentation or printed document. WYSIWYG is an acronym for "what you see is what you get."
WYSIWYG HTML, or "what you see is what you get" HTML, is a kind of HTML editing where you are able to see how the end result will look as you are editing it.
You could try using TinyMCE or CKEditor, both let you control the features exposed to the user, then use a serverside library to convert the HTML into XML:FO. I was only able to find one library that does this, html2fo, but I don't think it supports the full range of features you're looking for.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With