TinyLine SVG Programming Guide

1 TinyLine SVG Overview

1.1 What is Mobile SVG

This is the official W3C overview of the Scalable Vector Graphics (SVG) format. SVG 1.1, SVG 1.0 and SVG Mobile Profiles are Web standards (W3C Recommendations). Work continues on SVG 1.2 and future profiles for Mobile and Printing.

In a relaxed way, Mobile SVG describes images in XML as shapes with attributes like colors, sizes, etc. In compare with other vector graphics formats, the advantages are that Mobile SVG is XML based, open and designed for wireless transmission and display. When a bitmap format, like JPEG or PNG, is perfect for photography or icons, Mobile SVG is more suitable for dynamic and interactive graphics.

Location-based and field services are well-suited to Mobile SVG because of the ability to zoom in on images without loss of quality. SVG maps with animated objects and hyperlinks provide views of different areas of maps or topographical layers. Field services also benefit from Mobile SVG by using technical drawings that can be viewed in full or in detail. The last example but not the least is entertainment applications. Games, cartoon animations can be developed using Mobile SVG.

1.2 What is TinyLine SVG Toolkit

TinyLine SVG Toolkit is SVG Tiny applications and SDK for Java devices. These are main features that positioned TinyLine SVG aside from other Mobile SVG Viewers:

  • It is pure J2ME CLDC 1.0 implementation and it can be used on variety of devices starting from your mobile phone, then via your handheld to your laptop.
  • It includes the SDK. The SDK targets Java developers who want to use SVG Tiny in their applications and needs customization.

1.3 Key features

  • SVG Tiny engine and advanced 2D graphics.
  • Supports SVG fonts, image and text elements, paths, animations and events.
  • Allows both textual and gzipped SVG streams.
  • High performance and compact code base.
  • The same code base for CLDC/MIDP2.0, CDC/Personal Profile and J2SE.
  • Easily integrated with CLDC/MIDP2.0, CDC/Personal Profile and J2SE applications.

TinyLine API consists of the three packages

  • com.tinyline.svg
  • com.tinyline.tiny2d
  • com.tinyline.util

All packages are extremely portable across Java flavors. They use a very small subset of the CLDC 1.0 Java classes.

Here the set of Java classes TinyLine API uses:

  • java.lang.Exception
  • java.io.InputStream
  • java.lang.Object
  • java.lang.System
  • java.lang.Throwable

The diagram below illustrates the relationship between CLDC/MIDP2.0, CDC/Personal Profile and J2SE.

As shown in the diagram, the majority of functionality in CLDC and CDC has been inherited from J2SE. Each class inherited from J2SE must be precisely the same or a subset of the corresponding class in Java 2 Standard Edition.

j2me_to_j2se

TinyLine is based on the "blue ellipse" classes which APIs are the same across all Java flavors.

Now, let’s take a closer look on TinyLine packages.

© 2008 TinyLine. All rights reserved.