SVG vs PNG

This SVG format gets better everyday.

For those of you unfortunate enough not to have the
choice of freedom from the M$ Monopoly, I discovered
that Visio supports SVG file directly. In fact, the
rendering is better then Inscape and get this: you can
copy and paste *directly* over to PowerPoint and Word
and you can even embed it as a Visio object. The
quality is superb!

Even the browser can read SVG file (somewhat - the
quality isn't very good).

From: Derek Hohls
Sent: Tuesday, May 15, 2007 12:19 AM
Subject: Re: [Matplotlib-users] SVG vs PNG

For those of you fortunate enough to have the
choice be free from the M$ Monopoly, you can
use the Open Office Impress package to do
something similar to the steps below.

However, if you want to work directly with SVG
files, then you should install the SVG "import
filter", available from:

http://www.ipd.uka.de/~hauma/svg-import/

(Installation and use are described very clearly).

If you have saved an SVG file from MPL, you
can now open it in Open Office Draw, ungroup
it (you will need to repeat this command a
number of times) and edit the elements.
Save the file as an Open Office drawing
(.odg) for use in other Open Office applications.

One strange thing I encountered was that the
default background for fonts was blue?
This seems to be a problem with the
import filter, and has been reported on the
wiki support page:

http://wiki.services.openoffice.org/wiki/SVG_User_Experiences#

Blue_background_for_all_text_elements

but not fixed. To change this manually:
left-click to select a text element, then
right-click and choosing Edit Style... and
then select White or None from the Area menu.

*** As a footnote, I see that an integrated
SVG filter, designed to be shipped as part of
Open Office, is scheduled to be developed as
part of the Google 2007 Summer of Code - see:

http://wiki.services.openoffice.org/wiki/Summer_of_Code_2007/p

roposals#Draw.2FImpress:_SVG_Import_Filter

>>> <kc106_2005-matplotlib@...9...> 2007/05/15

01:08 AM >>>

Not exactly OT.

I would not recommend using .eps format in order to
export MPL graphs for Inkscape. I've been playing
around with Inkscape for a few days now and I've

been

using .svg exclusively and don't have any problem.

As I said before, I like the fact that once I am
inside Inscape, I can do an ungroup of the graph,

and

work with all of the plotting elements individually.

In fact, I just discover a nice way to "cut and

paste"

a particular subplot over to PowerPoint. This gives
me very high quality graphs in Power Point (I can
scale all I want). No more fuzzy, ugly-looking

Power

Point charts.

Here's how:

a) Create MPL plots in .svg format
b) From Inscape, read in .svg
c) Select subplot and ungroup
d) Copy and paste to a new page
e) Shrink the page down to the size of the object
f) Save as emf file
g) Import into PowerPoint

In addition, I am also using Inscape to get around

the

problem with the PDF backend in MPL. I reported
previously that I am unable to save more then 8 PDF
files per execuation. Now, I save the files in .svg
format, then invoke Inscape in command line mode and
export the file in pdf format. Works great.

Regards,

> From:

matplotlib-users-bounces@lists.sourceforge.net

>

[mailto:matplotlib-users-bounces@lists.sourceforge.net]

On
> Behalf Of Fernando Perez
> Sent: Saturday, May 12, 2007 9:57 AM
> To: Steve Schmerler
> Cc: matplotlib-users@lists.sourceforge.net
> Subject: Re: [Matplotlib-users] SVG vs PNG
>
>
> > Fernando Perez wrote:
> > >
> > > Did you install pstoedit? If you do, you'll

see

that
> inkscape will
> > > then be able to load .eps/.ps files in a fully
editable format.
> > > I've used it to fix decade-old plots for which
the only
> thing around
> > > was the eps file.
> > >
> >
> > I tried to export an .svg from MPL

(0.90.0rev3131)

with
> > rcParams['text.usetex']=True and got a
NotImplementedError
> (same for
> > the pdf backend with usetex, see attached log).

I

was
> wondering: Is it
> > (technically) possible to have .svg export
capabilities with
> > usetex-support and if so, has there been no need
for this
> feature so
> > far (not that I need it urgently, just

curious..)?

>
> There's actually a real MPL bug in there (not just
the
> NotImplementedError) but I'll report it separately
in a minute.
>
> > Anyway, to work with MPL-images (.ps/.eps) in
Inkscape, I installed
> > pstoedit but loading these files doesn't work
(seems not to
> recognize
> > them as images). Sorry if I'm driving the
Inkscape-stuff a bit OT
> > here, but: What version of Inkscape & friends

are

you
> using? I'm using
> > pstoedit 3.44, Inkscape 0.44.1. The
Latex-formula-feature
> of Inkscape
> > is also not working and the error seems related

to

pstoedit. Maybe
> > someone had similar experiences ...
> >
> > Thanks for any hint!
>
> Well, unfortunately it seems that inkscape is
crashing python
> itself... I made a trivial .eps in mpl with:
>
> In [1]: plot(range(10))
> Out[1]: [<matplotlib.lines.Line2D instance at
0x8f45a8c>]
>
> In [2]: title(r'Some \LaTeX $\int_0^\infty

f(\gamma)

d\gamma = 1$')
> Out[2]: <matplotlib.text.Text instance at

0x8f4590c>

ยทยทยท

-----Original Message-----
> -----Original Message-----
> On 5/12/07, Steve Schmerler wrote:
>
> In [3]: savefig('foo.eps')
>
>
> and when I tried to load it into inkscape, I got
this very
> nasty traceback:
>
> *** glibc detected *** /usr/bin/python: free():
invalid
> pointer: 0x4081e4e0 *** ======= Backtrace:

=========

> /lib/tls/i686/cmov/libc.so.6[0x400ee7cd]
>

/lib/tls/i686/cmov/libc.so.6(cfree+0x90)[0x400f1e30]

>

/usr/lib/skencil/Sketch/../Lib/streamfilter.so[0x404e7ce5]

>

/usr/lib/skencil/Sketch/../Lib/streamfilter.so[0x404e7cd2]

> /usr/bin/python[0x8110e6a]
>

/usr/bin/python(PyEval_EvalCodeEx+0x313)[0x80c9903]

>
> etc.
>
> At this point, this is really becoming OT for the
mpl list,
> so I'll stop. But if anyone has the time, it

might

be worth
> sending this example to the inkscape list so they
work on it
> and hopefully fix it.
>
> Cheers,
>
> f

--
John Henry

--------------------------------------------------------------

--
John Henry