Btw, I've made some progress with my experiments with MuPDF. Attached there is a screenshot of a TeXmacs window, the document is rendered via MuPDF while the UI (toolbars, etc...) is still rendered by Qt. Essentially I create a sequence of PDF commands which then MuPDF rasterizes into an image in memory, which is then passed to Qt to be inserted in the main window. The glyphs are also rendered by MuPDF as it would if they were coming from a PDF file.
Best, Max
ps: MuPDF is produced by the same company that distribute Ghostscript. For more info about MuPDF you can check out these two presentations:
Thanks for the observation Jeroen. I've not much experience with SVG myself, so I do not have an opinion right now. If we settle for a cross-platform, easy to deploy solution, I do not think it will be difficult to integrate. I was just remarking that MuPDF comes with its own SVG interpreter, which could be ok for most use cases. Since SVG is a very complex format (like HTML/CSS), I guess at some point one should rely on an external tool like Inkscape to produce a reasonable rendering and then use that in the document. Depending on the use case, actually, once we have a PDF renderer it would be ok to convert the SVG to PDF with an high quality tool and then use the PDF version in the document. So I guess, supporting at least one vector format would be enough for creating good quality PDF documents. Best, Max On 18. Feb 2022, at 11:57, Jeroen Wouters <jeroen@diasporist.org> wrote:
Dear Max,
On Thu, 2022-02-17 at 14:03 +0000, Massimiliano Gubinelli wrote:
My current attempt is to use mupdf, it is well done and we could include it statically. It provides PDF input and also some SVG support.
Though mupdf looks promising for PDF, I'm not convinced that its SVG support is strong enough. For example, the rendering of the svg file from WikiMedia that Phillipe mentioned recently mentioned [1] is just as bad in mupdf as in Qt, if not worse. The other SVG file that was reported on the texmacs-users list (on 6 Jan 2022) also renders with the same problems as in Qt (missing markers on arrows).
The resvg library [2] could be an interesting option for SVG, as it has a C API and wide SVG coverage [3].
Best wishes, Jeroen
[1] https://commons.wikimedia.org/wiki/File:Subduction-en.svg [2] https://github.com/RazrFalcon/resvg [3] https://razrfalcon.github.io/resvg-test-suite/svg-support-table.html
_______________________________________________ Texmacs-dev mailing list Texmacs-dev@gnu.org https://lists.gnu.org/mailman/listinfo/texmacs-dev
|