[Uml-devel] Rough Hack for Scaled Print - attached packed diff
Achim.Spangler at mnet-online.de
Wed Mar 31 08:20:14 UTC 2004
as some of my diagrams don't fit to an A4 page, I implemented a rough hack for
scaled print for my own usage.
Why "rough hack"?
I simply replaced the previous distribution of one diagram to several pages by
an unchangeable scaling method ( origrinal version simply deactivated with
"#if 0" - not erased ).
There are no check-boxes in the printer dialog or whatever for selection of
What deliveres my change?
I use the QtPainter logic of a virtual draw area ( setWindow() ), where we can
simply draw the diagram for print - and the corresponding view port, which
must reflect the dimensions of the output device ( e.g. printer ).
So I just calculate the current size of the diagram, add some empty space
beneath and finalize the output with a foot text line ( like before ).
As I had some funny effects on placement of the foot-line and the diagram
( the foot line was often higher than awaited -> overlap with diagram ), I
placed some space between diagram and foot line.
If there is anybody out, who know's why my placement was wrong - please
What to do with my change?
I'm not shure!
If the diagram is too big, the scaling would lead to too thin lines, which can
get quite invisible. So my scaling method is NOT always the best method.
This means, we need a dialog option, where the user can select the suitable
method. But as I'm not familiar with GUI design, I just did the raw hack for
my own, and ask anybody interested to optimize it.
This is _NOT_ intended for merge _as_is_ !!
This would only be acceptible, if the main team of umbrello accept to
deactivate totally the distribution of one diagram to several pages - till a
suitable GUI dialog option is implemented.
I'd like to change the color of the graphical representations of actor and
note ( currently only arrow line and background color is changeable ).
Additionally the printed line width is sometimes to small - especially if the
diagram is scaled for print. So I'd like to set a line width.
( Patch aging created with "cvs diff -u -d -r1" )
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 1442 bytes
Desc: not available
More information about the umbrello-devel