View Issue Details

IDProjectCategoryView StatusLast Update
0004732ScribusImport / Exportpublic2018-04-30 12:56
Reporterchristoph_s Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
Product Version1.3.4cvs 
Target Version1.5.5 
Summary0004732: SVG test cases
DescriptionI upload two archives with svgs from open clipart that either can't be imported at all or are imported with significant loss of information or take really long to import. This is intended to ease testing and further development.
Tagsdiscussion, SVG
PatchNo

Relationships

related to 0005009 closedplinnell Imported SVG influences canvas display 
related to 0005006 closedavox Crash while resizing SVG 
related to 0004950 closedfschmid Issues with Illustrator SVG 
related to 0003714 closedfschmid SVG import causes GUI freeze 
related to 0002221 closedfschmid scribus crash with signal 0000006 or complete freeze while trying to import complex svg files 
related to 0012027 confirmed Wrong import of SVG file 
parent of 0004765 closedjghali SVG import: add handling of 'switch' element 
parent of 0010841 new importing an SVG with rasterized effects does not work 
parent of 0009404 closedale can't read SVGs created by openstreetmap 
parent of 0012305 confirmed Some SVG files not properly imported by Scribus 
parent of 0012252 closedfschmid Wrong import of SVG gradient + Crash (file attached) 
related to 0005008 closedjghali Crashes with SVG files 
related to 0005014 closedcbradney SVG import freezes Scribus 
related to 0002931 acknowledged Metabug: SVG 
Not all the children of this issue are yet resolved or closed.

Activities

2006-12-05 15:33

 

problem-svgs_1.tar.bz2 (1,429,462 bytes)

2006-12-05 15:36

 

problem-svgs_3.tar.bz2 (1,255,360 bytes)

jghali

2006-12-05 17:25

administrator   ~0013782

The first thing needed here is an overhaul of scribus graphic model. Svg import plugin is currently mostly limited by scribus graphics capabilities.

jghali

2006-12-09 19:37

administrator   ~0013841

Handling of svg 'switch' element is now implement in 1.3.3.7cvs. Most of those test cases which could not be imported at all were coming from illustrator and used that element to allow conditional handling of illustrator specific tags. Now supported parts of that 'switch' element are processed and thus most of those file can now be imported.

christoph_s

2006-12-18 13:18

developer   ~0013995

Some of the files still can't be imported or let Scribus freeze. Following a short description of the issues:

diary_costea_bogdan_01.svg: Will be imported, but doesn't display anything.

paperbag2_juliane_krug.svg: Freezes 1.3.3.7cvs and 1.3.4cvs

carnegie_library_building_01.svg: Takes a long time to import

keyboard_key_yemu.svg: Can be imported, but doesn't scale correctly, fonts are shifted/misplaced due to incorrect scaling

microchip_v.2_havok_redh_01.svg: Takes a long time to import

If possible, the speed issues should be fixed, and Scribus should discard files that can't be displayed correctly (or at all) or that cause a freeze

christoph_s

2006-12-26 16:31

developer   ~0014256

Added another archive with SVGs that can't be imported.

2006-12-26 16:31

 

svg-issues.zip (71,491 bytes)

jghali

2006-12-27 22:37

administrator   ~0014284

I had a look at svg-issues.zip svgs:
- brozo_the_clown_enrique__01.svg : parsing bug of percentages, fixed in 1.3.3.7cvs and 1.3.4cvs, group opacity not correctly handled
- cartoon_tree_01.svg : handling of <use> tag, added yesterday in 1.3.3.7cvs and 1.3.4cvs
- coat_of_arms_of_anglica_01.svg : handling of width and height attributes when expressed as a percentag of viewbox width and height
- discordian_sacred_chao_t_01.svg : same as previous
- glass.svg and glass1.svg : bad handling of clipping path
- jin-jang_multimotyl_01.svg : objects outside viewport should be ignored

note: fix for coat_of_arms_of_anglica_01.svg also fix import of keyboard_key_yemu.svg from problem-svgs_3.tar.bz2

jghali

2006-12-29 01:15

administrator   ~0014302

- discordian_sacred_chao_t_01.svg : styles info at svg root were not parsed and consequently not taken into account, fixed in 1.3.3.7cvs and 1.3.4cvs

jghali

2006-12-29 22:25

administrator   ~0014312

- glass.svg and glass1.svg : have now improved handling of clip paths in 1337cvs and 134cvs, however only 134cvs will be able to import those files correctly due to specific features for groups

christoph_s

2007-01-15 15:22

developer   ~0014810

Jean, could you please test the uploaded glass1.svg? It lets Scribus freeze.

2007-01-15 15:22

 

glass1.svg.tar.bz2 (17,021 bytes)

jghali

2007-01-15 23:55

administrator   ~0014817

drawing is a bit long due to the files complexity, but no freeze here

2008-03-04 23:23

 

Chrisdesign_Diamond.svg (534,895 bytes)   
Chrisdesign_Diamond.svg (534,895 bytes)   

christoph_s

2008-03-04 23:24

developer   ~0019147

Chrisdesign_Diamond can't be imported correctly.

jghali

2008-03-05 07:55

administrator   ~0019148

Last edited: 2008-03-05 07:59

christoph_s : SVG filters are outside the scope of this bug. This SVG has also objects outside the drawing frame.

JLuc

2014-07-03 18:50

developer   ~0032451

I confirm for Diamond : it's probably the same bug as 0012187 which proposes a simple testcase, and where issue is with

     transform="scale(1,-1)"

JLuc

2014-07-03 18:55

developer   ~0032453

What is it you call a filter jghali ?
How can testers recognise that a svg include a filter ?

JLuc

2014-07-04 07:42

developer   ~0032470

Answer is "SVG contains a filter when their source code includes the 'filter' string". Filter are part of SVG2 draft specs.
More complete answer is : scribus can't import variout other sorts of SVG predicates/commands/attribute, even in the SVG1 specs (as, for example, the transform: scale (1,-1) attribute for images).

Conclusion is :
- SVG support for scribus is very partial and not reliable
- Dont report bugs about "scribus dont import this SVG properly or truthfully"
- Only report bugs about "scribus messes the document when importing this SVG" or "scribus crash when or after importing this SVG"

christoph_s

2014-07-05 23:21

developer   ~0032496

"Conclusion is :
- SVG support for scribus is very partial and not reliable"

Yep, except for the "very". It's just like import filters for non-native formats in almost all programs. Nothing new here. There will always be limits.

"- Dont report bugs about "scribus dont import this SVG properly or truthfully""

How do you reach this conclusion?

"- Only report bugs about "scribus messes the document when importing this SVG" or "scribus crash when or after importing this SVG""

How do you reach the conclusion?

It'll take a lot of work to "overhaul [the] scribus graphic model", and if you can do it or know someone who can *and* has the time, *and* is willing to contribute, please feel free to go forward. In the meantime, reporting SVG bugs of all kinds is absolutely OK.

JLuc

2014-07-06 07:30

developer   ~0032497

Last edited: 2014-07-06 13:11

I reach these conclusions because IMO, in case a developper works some day on improving-overhauling SVG support, he will look at the code and find there exactly what attributes are dealt with - and it means all the other are not supported. This will be a more global and exact view than the one achieved in blindly collecting SVG that dont work.

To start with, it would be interesting to create a detailed list of SVG attributes/features that are supported in Scribus. It would be a way to express more clearly to the wider public what can be expected of the SVG support today in scribus. And when a SVG with only these supported features goes wrong, then for sure that's a bug. But it looks like lots of effectless non-supported attributes are present in well-imported SVGs, that makes it difficult to sort "should be supported" svgs out of the lot.
If you wish to collect all sorts of SVGs that dont work, even for not supported features, i suggest to create 2 reports :
- one for unsupported features (= future overhauling test cases)
- one for crashing bugs and bugs in dealing with supported features

As with the "very not reliable", its because 1) ATM its not explained precisely what is supported and is not (not only filters which is SVG2 but also transform:scale with is SVG1) 2) I had a PDF that could not be riped probably because of too SVG imports - thats the only occurence of such a problem i've ever had with scribus.

Kunda

2016-04-20 15:10

updater   ~0040332

Since SVG standard is getting more complex I think we need to educate Scribus users that Scribus only has a certain range of support for SVG. How do we communicate that to people so they don't misperceive Scribus's capabilities.
An example: 0009320

Issue History

Date Modified Username Field Change
2006-12-05 15:33 christoph_s New Issue
2006-12-05 15:33 christoph_s File Added: problem-svgs_1.tar.bz2
2006-12-05 15:36 christoph_s File Added: problem-svgs_3.tar.bz2
2006-12-05 15:50 christoph_s Description Updated
2006-12-05 17:25 jghali Note Added: 0013782
2006-12-09 19:31 jghali Relationship added parent of 0004765
2006-12-09 19:37 jghali Note Added: 0013841
2006-12-18 13:18 christoph_s Note Added: 0013995
2006-12-26 16:31 christoph_s Note Added: 0014256
2006-12-26 16:31 christoph_s File Added: svg-issues.zip
2006-12-26 17:25 christoph_s Relationship added related to 0005008
2006-12-26 17:28 christoph_s Relationship added related to 0005014
2006-12-26 17:30 christoph_s Relationship added related to 0005009
2006-12-26 17:30 christoph_s Relationship added related to 0005006
2006-12-26 17:31 christoph_s Relationship added related to 0004950
2006-12-26 17:31 christoph_s Relationship added related to 0003714
2006-12-26 17:32 christoph_s Relationship added related to 0002221
2006-12-27 22:37 jghali Note Added: 0014284
2006-12-29 01:15 jghali Note Added: 0014302
2006-12-29 22:25 jghali Note Added: 0014312
2007-01-15 15:22 christoph_s Note Added: 0014810
2007-01-15 15:22 christoph_s File Added: glass1.svg.tar.bz2
2007-01-15 23:55 jghali Note Added: 0014817
2007-03-13 08:19 jghali Relationship added related to 0002931
2007-12-11 09:57 subik Relationship added child of 0005693
2007-12-20 22:51 cbradney Target Version => 1.3.5svn
2007-12-26 17:02 cbradney Target Version 1.3.5svn => 1.3.5
2008-02-25 23:03 cbradney Target Version 1.3.5 => 1.3.6
2008-03-04 23:23 christoph_s File Added: Chrisdesign_Diamond.svg
2008-03-04 23:24 christoph_s Note Added: 0019147
2008-03-05 07:55 jghali Note Added: 0019148
2008-03-05 07:59 jghali Note Edited: 0019148
2008-03-19 09:51 jghali Relationship deleted child of 0005693
2012-07-05 12:30 ale Relationship added parent of 0010841
2012-07-05 12:31 ale Relationship added parent of 0009404
2014-07-03 17:44 FirasH Relationship added parent of 0012305
2014-07-03 17:47 FirasH Relationship added parent of 0012252
2014-07-03 18:50 JLuc Note Added: 0032451
2014-07-03 18:52 Kunda Target Version 1.5.0 => 1.5.1
2014-07-03 18:55 JLuc Note Added: 0032453
2014-07-04 07:42 JLuc Note Added: 0032470
2014-07-05 23:21 christoph_s Note Added: 0032496
2014-07-06 07:30 JLuc Note Added: 0032497
2014-07-06 07:33 JLuc Note Edited: 0032497
2014-07-06 07:46 JLuc Note Edited: 0032497
2014-07-06 13:11 JLuc Note Edited: 0032497
2015-11-29 14:06 Kunda Target Version 1.5.1 => 1.5.2
2016-01-23 17:15 cbradney Target Version 1.5.2 => 1.5.4.svn
2016-01-25 19:29 Kunda Relationship added related to 0012027
2016-04-20 15:10 Kunda Note Added: 0040332
2016-04-20 15:10 Kunda Tag Attached: discussion
2016-04-20 15:11 Kunda Tag Attached: SVG
2018-04-30 12:56 jghali Target Version 1.5.4.svn => 1.5.5
2018-04-30 12:56 jghali Patch => No