|Version 13 (modified by robin, 7 years ago) (diff)|
Render dia and vdx files
This plugin automatically creates a bitmapped render of Dia and MS Visio VDX diagrams when attaching them to objects in Trac.
This has taken the original DiaViewPlugin and modified it for use with Trac 0.11, and at the same time included support for vdx and compressed files.
It has had very little testing. It has been set up as a separate hack to the original DiaViewPlugin so as not to break DiaViewPlugin for Trac < 0.11.
If the width was changed in the macro argument the displayed image would scale, however the source file stayed the same. To overcome this the width is checked using the image library, and if different it is re-rendered. Please see the link below for the image library.
If you have any issues, create a new ticket.
Download and Source
To install download the archive, then either $ python setup.py install or copy it to the plugins directory of the particular project
Do not forget to enable the macro in trac.ini in the components section like this:
diavisview.* = enabled
Also ensure that dia (diagram editor) and the Python Imaging Library (cf. link above) are installed.
Attach a file you wish to display to the page as per normal. The files can be either dia or vdx, compressed or uncompressed.
Make suitable macro entries in the page. If a number is given after the filename it will be taken as the width. Please see the main image macro for all the options.
- 15900 by rjollos on 2016-09-16 05:57:34
0.3dev: Make compatible with Trac 1.0
- Use Pillow rather than PIL
- Add Pillow to install requirements
- Make path to Dia binary configurable from trac.ini
- Allow Dia's output filter to be set in trac.ini
- Support options for non-png renders
- Refactor to split a long method somewhat
- Fix the output html element being <p> instead <a>
- Move RE compilation out of the macro expansion
- Do not check width if not needed
Most of the changes provided by jaroslav.benkovsky@…
- 14916 by rjollos on 2015-10-11 22:46:19
0.2dev: Tag build as dev.
- 14915 by rjollos on 2015-10-11 22:44:25
0.2dev: Branch for Trac 1.0 support.
It seems that each time when you refresh the page, the png file would generate automatically if you haven't set the png file width on the wiki. Here is my solution: Change the code
if (dia_mtime > png_mtime) or (existing_width != width):
if (dia_mtime > png_mtime) or (existing_width != width and width != None):