[cairo] [PATCH] Enable links to image files in SVG backend

Bill Spitzak spitzak at gmail.com
Wed Jan 20 12:34:29 PST 2010

I think the api should take a raw filename/uri with no encoding. Reasons 
for this:

1. There might be other backends that do not want %-encoding. They may 
need a different encoding to put the filename in the result, and they 
sure don't want to decode it and reencode it! In particular they may 
want to physically open the source file and do something with it, such 
as attach it in a zip-encoded result. It would be a total pain to have 
to use a different api for this.

2. The producers certainly do not want to have to %-encode the filename 
(though I suspect this is why you have two different apis).

3. One of the two mime names chosen is suddenly impossible to set 
directly as the backend always converts it to the other. I don't think 
you have put that name into the mime standard as "this name can never be 
used". So you are violating the standard.

4. No part of the cairo api guarantees that the text being sent in the 
encoded api is actually legal.

5. Some backends can store % not followed by a hex digit unchanged. But 
callers can never take advantage of this.

More information about the cairo mailing list