Older blog entries for bernhard (starting at number 1)

Found a buglet in the CMX import Filter. I'm not sure whether it's really a bug in the filter; it could just be that the CMX file is incorrect. Unfortunately, Corel's documentation mostly talks about 32bit CMX and this is a 16bit file (not to mention that the docs are incomplete and sometimes wrong and that CMX sucks) and my filter does the right thing here according to the docs. I guess I'll have to boot windows if I really want to investigate this.

More importantly, I spent some time thinking a bit again about gradient geometry representations in Sketch. Currently, positions of e.g. the center points of radial gradients are stored relative to the bounding box of the object. This has the great advantage that the same values can be used to describe the 'same' gradient geometry for several different objects at once, which is important for styles, i.e. properties shared by several objects. The disadvantage of this representation is that transformations become a bit awkward because one has to effectively convert the relative coordinates to absolute coordinates, apply the transformation and convert to the new bounding box again.

There are several approaches that at least solve some of the problems, but I haven't found the right solution yet.

I also did some more cleanup in Sketch's code. If you read the ChangeLog for the last few days, it seems that I remove more code than I add, but getting rid of old cruft and kludges is a good thing.

Interesting link of the day: A parable by Edsger W. Dijkstra (found on comp.lang.python)

Skimmed through the new SVG WD that came out a few days ago (SVG, Scalable Vector Graphics, is the w3c's XML-based vector graphics format for the web). An interesting new development is that there are now two variants of SVG, Stylable SVG and Exchange SVG.

Stylable SVG is intended for the web environment and uses style sheets for the rendering properties like e.g. fill colors. For stand-alone programs like Sketch this is quite unfortunate because you need essentially the entire stylesheet engine to be able to import an SVG file properly.

Exchange SVG is targeted at interoperability and addresses exactly this problem by specifying the rendering properties as normal XML attributes so it's a lot easier to import.

I haven't looked at this closely yet, but it sounds like a good idea.

Interesting link of the day: Wir übernehmen SuSE ("We take over SuSE"; the page is in German).

Apparently someone is unsatisfied with SuSE's distribution and wants create an organization that aquires 51% of the shares after SuSE's IPO to make them abandon their own distribution and support debian instead.

This sounds like a joke but it doesn't look like it, although it seems highly unlikely to that they have a chance to succeed.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!