News in Graphics: Xamarin Kimono, Google Guetzli and Draco

| by Abel Avram Follow 11 Followers on Mar 17, 2017. Estimated reading time: 2 minutes |

Xamarin has open sourced a tool for editing SkiaSharp objects, while Google has reduced the size taken by 2D JPEG and 3D graphics.

Xamarin, a Microsoft subsidiary, has open sourced Kimono Designer, a tool for graphically editing SkiaSharp objects that can be converted later to code for the targeted platforms. SkiaSharp is a 2D API for .NET based on the Skia graphics library, a project started by Google and used as a cross-platform graphics engine by Chrome, Firefox and Android, among others. The problem with Skia and SkiaSharp is that developers need to use a low level API to create 2D graphics similar to Java 2D. An example of what it takes to draw a Bezier curve can be seen on Skia Fiddle page. The Kimono Designer enables developers to create 2D images with a graphical tool, making the task easier.

Kimono comes with a number of features, including Color Palettes, Visual Gradient Editor, Named Styles. Linked Properties, a Scripting language and others. The tool can generate code for Windows (WinForms, UWP, WPF), Android, iOS, MacOS, tvOS or cross-platform. For now, Kimono runs only on MacOS, but Xamarin plans to provide versions for UWP and Android and iOS tablets.

On a different note, Google has open sourced Guetzli [guɛtsli], a new JPEG compression algorithm and encoder that is meant to provide better compression rates while maintaining the quality of images. Guetzli images are 20-30% smaller compared to their JPEG equivalents generated with libjpeg, according to Google. The size can be reduced by 35% according to this post. This is done without changing the existing browsers or applications using JPEG. Guetzli achieves smaller file sizes by eliminating elements of the image without affecting its quality. The team developing Guetzli explains:

The visual quality of JPEG images is directly correlated to its multi-stage compression process: color space transform, discrete cosine transform, and quantization. Guetzli specifically targets the quantization stage in which the more visual quality loss is introduced, the smaller the resulting file. Guetzli strikes a balance between minimal loss and file size by employing a search algorithm that tries to overcome the difference between the psychovisual modeling of JPEG's format, and Guetzli’s psychovisual model, which approximates color perception and visual masking in a more thorough and detailed way than what is achievable by simpler color transforms and the discrete cosine transform. However, while Guetzli creates smaller image file sizes, the tradeoff is that these search algorithms take significantly longer to create compressed images than currently available methods.

Earlier this year, Google has taken another step in reducing data transferred over the internet, this time addressing 3D graphics. Draco is a compression library for 3D geometric meshes and point clouds. The library supports “compressing points, connectivity information, texture coordinates, color information, normals, and any other generic attributes associated with geometry.” The end result is that 3D graphics can be dozens of times smaller in size, according to this post comparing mesh file compression. Draco comes with a C++ encoder and a C++ plus a JavaScript decoder, the latter targeting web applications.

Rate this Article

Adoption Stage

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread


Login to InfoQ to interact with what matters most to you.

Recover your password...


Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.


More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.


Stay up-to-date

Set up your notifications and don't miss out on content that matters to you