On 09/08/2010 10:40 PM, Marius Dumitru Florea
wrote:
Hi devs,
Currently the image plugin [1] allows us to create image thumbnails by
specifying the image width and/or height in the query string of the
image attachment download URL:
/xwiki/bin/download/Spage/Page/image.jpg?width=100
I propose that we:
(A) Use the image width and/or height (when they are specified in the
image syntax using pixel unit) to resize the image on the server side.
For instance:
[[image:logo.jpg||width="100px"]]
will be linked to
/xwiki/bin/download/Spage/Page/logo.jpg?width=100
and
[[image:logo.jpg||style="height: 50px; width: 70px"]]
will be linked to
/xwiki/bin/download/Spage/Page/logo.jpg?width=70&height=50
+1.
The image plugin also accepts a quality parameter
that controls the
compression quality when encoding jpeg images. The default value of this
parameter (i.e. when not specified in the URL) is configurable. I
propose we use 0.3 by default, 1 representing the best quality.
0.3 seems very low to me. The resulting image has serious artifacts,
which can be ignored for low-level photographs, but which is
unacceptable if the images are technical. I think that we should try to
give less artifacts.
One option would be to use the same quality as the original image, but I
don't know if the JDK has APIs for reading this information from the
picture, although it can be obtained by parsing the raw image. The
simpler thing would be to use something in the middle, 0.5?
The default compression quality is configurable. The question is what do
we favor by default: performance or quality?