- From: Jeremias Maerki <dev@jeremias-maerki.ch>
- Date: Tue, 05 Feb 2008 22:46:18 +0100
- To: public-svg-print@w3.org
Feedback on SVG Print 1.2 WD 2007-12-21 Foreword: SVG is still somewhat "under-adopted" in various fields which is unfortunate. It is good to see a light-weight print format based on XML/SVG. I'd like to emphasize "light-weight" since IMO there is (or will be) a better and more comprehensive approach in the form of Adobe's Mars format which is also based on SVG. I think that both have their justification. Mars is probably just a bit too complex to fit on resource-restricted devices, but SVG Print in its current setup does not have the potential to even get near the functionality of PDF to which Mars can become an alternative. IMO SVGP should be reduced to target constrained resource printing and Adobe should be encouraged to bring Mars to the W3C so it can cover the missing functionality between SVGP and PDF (features like special color spaces, encryption, signatures, marked content/logical structure, forms etc.). Realistically, SVGP will not be able to go against PDF (or Mars if Adobe chooses to put more energy into it, i.e. propagate it as a successor to PDF). SVGP will most likely remain a niche standard with the most chances in the constrained resource printing. Therefore, reduction to the necessary is IMO a good thing. My background: I'm a developer in the Apache XML Graphics project which looks after Apache FOP (open source XSL-FO implementation) and Apache Batik (I'm sure that one's well known here). Part 1: 5.1: Typo: "uuses" 5.2: "for the most part has not been well understood". It would be good to include a reference to educational material if you know any. Part 2: 3.9, The use-master-page attribute I'd skip this to keep SVG Print as light-weight as possible. I personally don't see a use case that makes sense. 3.10, The print-display attribute IMO, the print-display attribute as specified is fine like that. 5.2, Specifying paint It's important to synchronize XSL-FO and SVG as much as possible as they are often used together. Unfortunately, this hasn't happened. I'd like to point out the differences below. Maybe something can be done on some levels to bring the two more closely together. ICC is still not understood very well and although it's widely used in various technical specifications, real-world usage still seems limited. Many print shops I've worked with often say: "I don't care about color profiles, just give me a CMYK-PDF and don't dare use anything RGB!" Which includes sRGB. That's an indication that there are educational gaps. I can't even say myself that I really understand this complex field (so take what I write here with a grain of salt. I'm still learning.). Often there are also gaps in the software that is used. Anyway, people still want device-specific CMYK and they want Pantone spot colors. The introduction of the deviceColor tells half that story, I guess. (Note: syntax simplified, the listing is just to point out the differences) sRGB: XSL-FO: rgb(num, num, num) or #rgb SVGP: rgb(num, num, num) or #rgb ICC color: XSL-FO: rgb-icc(num, num, num, <name>, num*) SVGP: <color> icc-color(<name>, num*) ICC named color (=spot color, often requested by users of XSL-FO): XSL-FO: not supported XSL-FO, proprietary RenderX XEP: rgb-icc(num, num, num, #SpotColor, <spot-color-name>, tint-value, alt-color-space, num*) XSL-FO, proprietary AntennaHouse: rgb-icc([num, num, num,] #Separation, <spot-color-name>[, tint-value] [,C,M,Y,K]) SVG 1.2 Tiny: not supported SVGP: icc-named-color(<name>, value*) but possibly also via device-color, implementation-specific??? Adobe Mars: using device-color() function via Separation and DeviceN color spaces Drawback of the icc-named-color approach: It requires a profile with the color names. I wonder how many people know how to produce that. I don't, yet. This shows that there is a gap between reality and the ideal world. :-) I hope the experts in the WG have good ideas how to improve the situation. 5.4, deviceColor Element I'm not entirely happy with this. I agree that a device-color() method is necessary for specifying paint. But the deviceColor element is IMO too vague. The TODO about conformance criteria is an indicator that this may not be thought through, yet. I see this as a very important point where interoperability can become a problem. Of course, there are fallbacks in place (at least sRGB, maybe even ICC as noted in another TODO). I suggest that at least for device-specific CMYK, RGB and Gray a default representation in the deviceColor element should be specified to increase interoperability. These are AFAIK the most commonly used color spaces besides sRGB and ICC-based. Otherwise, the likelyhood of different approaches is too big. Alternatively, these three color space could be specified as implicitely defined pseudo-profiles like Adobe Mars does (DeviceRGB, DeviceCMYK, DeviceGray). Some degree of standardization for spot colors could also be good in case icc-names-color isn't well adopted. But then, thinking back to the light-weight idea, the use of deviceColor should probably better be discouraged by the spec. It's a good idea to specify the use of additional color space in SVG in general, but maybe not in SVGP. References: XSL-FO: http://www.w3.org/TR/xsl11 Adobe Mars: http://labs.adobe.com/technologies/mars/ Ideas for SVG Print: - an optional page-label attribute on the page element. This can be interesting for print preview devices. In XSL there's a distinction between page index (1, 2, 3) and page label (I, II, II, 1, 2). But of course, this opens the door for other wishes like a bookmark tree and annotations etc. So this is probably a bad idea and should be left to Mars. - 4.2: possibly mention a ZIP-based container as alternative bundling/packaging method. (Mars uses a ZIP-based container and I personally prefer that to the MIME approach.) I'm looking forward to help modifying Apache Batik so I can, at some point, implement SVGP output support for Apache FOP and to turn Batik into a SVGP converter (to PDF, PS, AFP etc.). Should be fun. Thanks to the WG for your work here. Best regards, Jeremias Märki _________________________________________________________ Jeremias Märki, Software-Development and Consulting Contact Information: http://www.jeremias-maerki.ch/contact.html Blog: http://www.jeremias-maerki.ch/blog/
Received on Tuesday, 5 February 2008 21:47:10 UTC