[silva-dev] PIL problem

Tim Middleton x at vex.net
Wed Sep 14 23:14:25 CEST 2005


Just upgrading to 1.3. Creating test instances of Silva Root... if while doing 
so i have the "Add Silva Documentation" box checked, i get the following 
traceback.... 

The version of PIL installed is 1.1.5, which appears to be the latest. 

It is odd though, because running `file` on all of the *.png identifies them 
as non-interlaced. 

So I tossed in a print self.id at Silva/Image.py line 449 and it is 
"accesstabslender.jpg" which is causing the problem.. hmm... jpg...
grep doesn't seem to find that id anywhere in source code... is it being 
generated? Tracing... tracing... (i'm writing all this out for your 
amusement... at my Silvanic ignorance...) hrm... silva.xml? AH! 
silva_docs.zip ... so that's how stuff is bundled up... cool... er... what? 
The file is coming from the net?!! (<silva-extra location> tag)...

$ fetch 
http://www.infrae.com/documentationsite/temp_guido_silva_docs_XML_export/silva_docs/chief_editor/accesstabslender.jpg
accesstabslender.jpg                          100% of 1813  B 3117 kBps

$ file accesstabslender.jpg
accesstabslender.jpg: PNG image data, 538 x 28, 8-bit/color RGB, interlaced

Ah indeed. So maybe you want to avoid interlaced PNGs (unfortunately) if using 
PIL?

Traceback (innermost last):
  Module ZPublisher.Publish, line 101, in publish
  Module ZPublisher.mapply, line 88, in mapply
  Module ZPublisher.Publish, line 39, in call_object
  Module Products.Silva.Root, line 333, in manage_addRoot
  Module Products.Silva.Root, line 305, in _installDocumentation
  Module Products.Silva.adapters.zipfileimport, line 50, in importFromZip
  Module Products.Silva.silvaxml.xmlimport, line 562, in importFromFile
  Module sprout.saxext.xmlimport, line 120, in importFromFile
  Module xml.sax.expatreader, line 107, in parse
  Module xml.sax.xmlreader, line 123, in parse
  Module xml.sax.expatreader, line 207, in feed
  Module xml.sax.expatreader, line 348, in end_element_ns
  Module sprout.saxext.hookablehandler, line 74, in endElementNS
  Module sprout.saxext.hookablehandler, line 47, in _hookedExecute
  Module sprout.saxext.xmlimport, line 274, in endElementNS
  Module Products.Silva.silvaxml.xmlimport, line 402, in endElementNS
  Module Products.Silva.Image, line 713, in manage_addImage
  Module Products.Silva.Image, line 198, in set_image
  Module Products.Silva.Image, line 510, in _createDerivedImages
  Module Products.Silva.Image, line 550, in _createThumbnail
  Module PIL.Image, line 653, in copy
  Module PIL.ImageFile, line 155, in load
  Module PIL.PngImagePlugin, line 337, in load_prepare
IOError: cannot read interlaced PNG files

-- 
Tim Middleton | Vex.Net    | Christianity didn't [...] for 20 centuries
x at veX.net     | VexTech.ca | [...] shit Hallmark before a live studio...




More information about the silva-dev mailing list