The Artima Developer Community
Sponsored Link

Agile Buzz Forum
Image is Everything

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
James Robertson

Posts: 29924
Nickname: jarober61
Registered: Jun, 2003

David Buck, Smalltalker at large
Image is Everything Posted: Feb 23, 2004 2:56 PM
Reply to this message Reply

This post originated from an RSS feed registered with Agile Buzz by James Robertson.
Original Post: Image is Everything
Feed Title: Michael Lucas-Smith
Feed URL: http://www.michaellucassmith.com/site.atom
Feed Description: Smalltalk and my misinterpretations of life
Latest Agile Buzz Posts
Latest Agile Buzz Posts by James Robertson
Latest Posts From Michael Lucas-Smith

Advertisement

Images are in a sad state of affair for Cincom's VisualWorks. Let me give you a bit of a background. When image formats were starting to become a ubiquitise thing on the internet, some bright cookies at Disney made a GIF and JPG library for Squeak. This library was ported over to VisualWorks by another bright cookie.

While all this was going on, GIF added transparency to its specification - and animation - and both GIF and JPG got incremental loading, which shows you a low quality version of the image quickly, then downloads more information to make it a high quality version of the image.

All of these things are missing in VisualWorks. PNG's seem to be well supported. I may be miss seeing things but I believe there is alpha blending in there.

Moving along. Squeak realised the deficiencies with its image handling and, instead of trying to make their libraries do all these new great things, they decided to use a C library which already did them and did them quickly. In stepped Squeak VM plugins.

Just recently, Eliot has added the ability to use squeak vm plugins in VisualWorks 7.2, unfortunately, his efforts were incomplete, undocumented and the only example doesn't work. He's said he should have time soon to get back to this time.

What VisualWorks really needs is to run Squeak's image plugin and use that to do all image loading. If possible, probably even drawing.

A small ray of light - for a while now we've been ignoring the image problems at Software WithStyle, rightly assuming Cincom will get around to fixing it 'soon'. We have jerry rigged our system to use a website plugin to transform JPG's in to PNG's and we've been using Arbor's GIF reader/writer which supports transparency.

All was semi-well for a while, until we got to our license review session and discovered that Arbor's GIF reader/writer is using the GPL, not the LGPL!. Put simply, any program using a GPL'd library as a library, must also be released under the GPL. No thank you says we.

So, here's our state of play. We have a dodgy hack to make JPG's displayable by using a remote image conversion service, we can't show progressive GIF drawing, we cannot do GIF animation, we cannot do GIF transparency and about the only thing that does work right is the PNG drawing - which is slow.

So, two lessons learnt: (a) VW's image support is far far worse than I realised and (b) Be very very careful when picking up 3rd party libraries, as VW doesn't have a "spot" to tell you what license it's using.

Read: Image is Everything

Topic: Roller Architecture talk Previous Topic   Next Topic Topic: The new DLL Hell?

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use