On 2019-02-27 11:23, hh via use-livecode wrote:
That's a fake, as long it is called "SVG"-Icons.
These are ordinary images, converted from SVG, no longer
SVG objects.

Also the import is not a real SVG import but an import
of the converted image.

This is fine, but we shouldn't name these objects "SVG"
as they are ordinary images in the stack.

Well regardless of what people want to call them or how they want to refer to them...

It is possible in 9.0+ to use a reasonably sized subset of the SVG vector image format to define your icons and graphics in a highly efficient way:

- in storage: compiled svg files (drawings) are almost always a lot smaller than the original text on disk - in memory: drawings take the same amount of space in memory and to render as they do on disk (which is not true of the XML data-structure needed in memory to render raw SVG!) - in time: drawings are a sequence of vector graphics operations which require virtually no processing to execute, they are just run from start to end as needed (again something which is not true of raw SVG which, being mostly declarative, requires a lot of processing to render)

As drawings are vector based, they scale to any size and density very naturally (i.e. they are not raster images!) - which means you no longer need to have multiple rasterized versions of icons/graphics, nor re-generate them each time a new screen density appears.

Admittedly you do need to compile your SVG to the drawing format so you can use them in images, but then previously you needed to re-rasterize images at various densities anyway to make your apps look as good as possible. (However, both of these are entirely scriptable - e.g. in the standalone build start handler - or by executing a suitably crafted handler in your stack from the message box).

If you need an element of dynamic SVG image generation at runtime then you can include the drawing script-library in a standalone, and use drawingSvgCompile and friends there too.

Warmest Regards,

Mark.

P.S. In response to Haken's query: the need to compile SVG to drawings, and the SVG compiler being a LiveCode library is why you can't set the filename of an image to an SVG file - the engine only understands the 'drawing' format, not SVG.

--
Mark Waddingham ~ m...@livecode.com ~ http://www.livecode.com/
LiveCode: Everyone can create apps

_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to