Add info on limerest / dump drawyinglayer primitives
* Add information on dumping drawyinglayer primitives as xml * Add link to a new tool named limerest on gitlab Change-Id: I50a0018d9c3063281b2a761d437bb9def0f34bde Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132936 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
This commit is contained in:
@@ -82,3 +82,20 @@ printing), etc.
|
|||||||
above)
|
above)
|
||||||
|
|
||||||
* Custom widgets (like the Header / Footer indicator button)
|
* Custom widgets (like the Header / Footer indicator button)
|
||||||
|
|
||||||
|
## Dumping DrawingLayer Primitives as XML
|
||||||
|
|
||||||
|
For debugging purposes, it is possible to dump the drawinglayer primitives as
|
||||||
|
as an xml file. The drawinglayer xml dump can show possible problems with the
|
||||||
|
rendering.
|
||||||
|
|
||||||
|
For example, in `emfio/qa/cppunit/emf/EmfImportTest.cxx`, one can write:
|
||||||
|
|
||||||
|
Primitive2DSequence aSequence = parseEmf(u"emfio/qa/cppunit/wmf/data/stockobject.emf");
|
||||||
|
drawinglayer::Primitive2dXmlDump dumper;
|
||||||
|
Primitive2DContainer aContainer(aSequence);
|
||||||
|
dumper.dump(aContainer, "/tmp/drawyinglayer.xml");
|
||||||
|
|
||||||
|
Then, after invoking `make CppunitTest_emfio_emf`, `/tmp/drawyinglayer.xml` will
|
||||||
|
be the dump of the drawinglayer primitives used to draw the emf file in
|
||||||
|
LibreOffice. The top level tag will be <primitive2D>.
|
||||||
|
@@ -49,6 +49,10 @@ documentation.
|
|||||||
## How does it work?
|
## How does it work?
|
||||||
`emfio` module takes a byte array and turns it into a `drawinglayer` primitive container. The rendering is done via `drawinglayer` primitives. For more information, you should refer to [VCL](../vcl) documentation.
|
`emfio` module takes a byte array and turns it into a `drawinglayer` primitive container. The rendering is done via `drawinglayer` primitives. For more information, you should refer to [VCL](../vcl) documentation.
|
||||||
|
|
||||||
|
The drawinglayer primitives created to draw the emf/wmf files can be dumped as
|
||||||
|
xml for debugging purposes. For more information, please refer to the
|
||||||
|
[drawyinglayer](../drawyinglayer) documentation.
|
||||||
|
|
||||||
## Limitations
|
## Limitations
|
||||||
Not all the WMF/EMF/EMF+ records are supported by this module. Unsupported
|
Not all the WMF/EMF/EMF+ records are supported by this module. Unsupported
|
||||||
records are marked as "not implemented", and a warning message will printed
|
records are marked as "not implemented", and a warning message will printed
|
||||||
@@ -114,6 +118,8 @@ formats. Some of them are:
|
|||||||
modifies several binary formats from Microsoft including WMF/EMF/EMF+, and also
|
modifies several binary formats from Microsoft including WMF/EMF/EMF+, and also
|
||||||
other companies.
|
other companies.
|
||||||
* [EMF+ diagnostics reporting tool](https://github.com/chrissherlock/emfplus-decoder)
|
* [EMF+ diagnostics reporting tool](https://github.com/chrissherlock/emfplus-decoder)
|
||||||
|
* [limerest](https://gitlab.com/re-lab-project/limerest): A new gui tool based
|
||||||
|
on OLEToy for working with verious binary formats
|
||||||
|
|
||||||
## Related Software
|
## Related Software
|
||||||
* [libemf](http://libemf.sourceforge.net/)
|
* [libemf](http://libemf.sourceforge.net/)
|
||||||
|
Reference in New Issue
Block a user