Bug 753560

Summary: Converting svg's with text to wmf results in python traceback
Product: [Fedora] Fedora Reporter: Thomas Sailer <fedora>
Component: uniconvertorAssignee: Pavel Alexeev <pahan>
Status: CLOSED DEFERRED QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 16CC: pahan
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-12-03 16:08:39 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
example svg file none

Description Thomas Sailer 2011-11-13 12:04:20 UTC
Description of problem:
Converting svg's with text to wmf results in python traceback


Version-Release number of selected component (if applicable):
uniconvertor-1.1.4-4.fc15.i686

How reproducible:
always

Steps to Reproduce:
1.uniconvertor drawing.svg drawing.wmf
  
Actual results:
$ uniconvertor drawing.svg drawing.wmf
I can't find font Sans. I'll use Slim instead
I can't find font Slim. I'll use Slim instead
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/plugins/Filters/svgloader.py", line 980, in Load
    xml_reader.parse(input_source)
  File "/usr/lib/python2.7/site-packages/_xmlplus/sax/expatreader.py", line 109, in parse
    xmlreader.IncrementalParser.parse(self, source)
  File "/usr/lib/python2.7/site-packages/_xmlplus/sax/xmlreader.py", line 123, in parse
    self.feed(buffer)
  File "/usr/lib/python2.7/site-packages/_xmlplus/sax/expatreader.py", line 216, in feed
    self._parser.Parse(data, isFinal)
  File "/usr/lib/python2.7/site-packages/_xmlplus/sax/expatreader.py", line 311, in start_element
    self._cont_handler.startElement(name, AttributesImpl(attrs))
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/plugins/Filters/svgloader.py", line 338, in startElement
    getattr(self, method)(attrs)
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/plugins/Filters/svgloader.py", line 905, in begin_text
    self.parse_style(style)
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/plugins/Filters/svgloader.py", line 384, in parse_style
    self.try_add_style(key, val)
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/plugins/Filters/svgloader.py", line 422, in try_add_style
    self.style.font = GetFont(str(val))
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/Graphics/font.py", line 425, in GetFont
    return GetFont(config.preferences.fallback_font)
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/Graphics/font.py", line 426, in GetFont
    raise ValueError, 'Cannot find font %s.' % fontname
ValueError: Cannot find font Slim.
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python2.7/site-packages/uniconvertor/__init__.py", line 82, in uniconv
    doc = load.load_drawing(input_file)
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/io/load.py", line 364, in load_drawing
    return load_drawing_from_file(file, filename)
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/io/load.py", line 337, in load_drawing_from_file
    doc = loader.Load()
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/plugins/Filters/svgloader.py", line 980, in Load
    xml_reader.parse(input_source)
  File "/usr/lib/python2.7/site-packages/_xmlplus/sax/expatreader.py", line 109, in parse
    xmlreader.IncrementalParser.parse(self, source)
  File "/usr/lib/python2.7/site-packages/_xmlplus/sax/xmlreader.py", line 123, in parse
    self.feed(buffer)
  File "/usr/lib/python2.7/site-packages/_xmlplus/sax/expatreader.py", line 216, in feed
    self._parser.Parse(data, isFinal)
  File "/usr/lib/python2.7/site-packages/_xmlplus/sax/expatreader.py", line 311, in start_element
    self._cont_handler.startElement(name, AttributesImpl(attrs))
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/plugins/Filters/svgloader.py", line 338, in startElement
    getattr(self, method)(attrs)
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/plugins/Filters/svgloader.py", line 905, in begin_text
    self.parse_style(style)
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/plugins/Filters/svgloader.py", line 384, in parse_style
    self.try_add_style(key, val)
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/plugins/Filters/svgloader.py", line 422, in try_add_style
    self.style.font = GetFont(str(val))
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/Graphics/font.py", line 425, in GetFont
    return GetFont(config.preferences.fallback_font)
  File "/usr/lib/python2.7/site-packages/uniconvertor/app/Graphics/font.py", line 426, in GetFont
    raise ValueError, 'Cannot find font %s.' % fontname
ValueError: Cannot find font Slim.

Expected results:
drawing.wmf

Additional info:
updating to uniconvertor 1.1.5 fixes the problem.
http://sailer.fedorapeople.org/sk1libs-0.9.1-1.fc16.src.rpm
http://sailer.fedorapeople.org/uniconvertor-1.1.5-1.fc16.src.rpm

Comment 1 Thomas Sailer 2011-11-13 12:05:12 UTC
Created attachment 533360 [details]
example svg file

Comment 2 Pavel Alexeev 2011-11-13 15:21:18 UTC
Starting from 1.1.5 version it depends on external lib sk1libs which is not in Fedora yet. So, I can't just update uniconvertor. As you are already packaged it, may be you are also willing submit it on review and then maintain?

Comment 3 Pavel Alexeev 2011-11-13 15:21:55 UTC
If not, I'll try find time to do so himself.

Comment 4 Thomas Sailer 2011-11-14 11:36:26 UTC
I'd rather not, because I'm pretty clueless about python. But I could offer doing the package review for sk1libs

Comment 5 Pavel Alexeev 2011-12-03 15:57:38 UTC
Oh, I also not specialist on Python. Let it be, I'll try.

https://bugzilla.redhat.com/show_bug.cgi?id=759747

Comment 6 Pavel Alexeev 2011-12-03 16:08:39 UTC
I'll close then it. Because I can't fix it without review and update.