About Features Matrix Examples & Demos
Commercial & freeware products Try our software for free before purchase Buy now Company news channel Company informations
  Home Products CrossGL SDK Features Matrix  

SnapDraw is FREE

101+ Analog Clocks for Android

101+ Vector Clocks Available

Announcing Vector Clock Pro

New beautiful set of Free Vector Clocks


CrossGL SDK Features Matrix

General Imaging Features
Pixel geometry
  24bit - RGB, BGR
  32bit - RGBA, BGRA, ARGB, ABGR
  Foundations for implementing support for different pixel geometries
  HLS bitmap class
Alpha blending
  256 levels of transparency
Surface operations
  Attaching to various surfaces (bitmaps, frame buffers)
  Cleaning surface with color including alpha transparency
Raster Graphics Features
Raster file formats support
  Loading & Saving: JPEG, PNG, JNG
Basic bitmap operations
  Creating, Mapping, Cloning, Cropping, Tiling, Filling, Resizing (Linear & Fast Bilinear), Color count, Palette support, Pixel & Scanline access
Basic image operations
  Creating, Streaming, Cloning
  Support for frames (animated images)
  File format conversions
Color depth conversions
  Increasing color depth
  Decreasing color depth - Octree quantization, Floyd-steinberg dithering, Matching to color palette, Grayscale & Monochromatic conversion
Color names management
  Color value retrieval by name
  Embeddable custom color lists
  Built-in color families: VGA, Html, X11, SVG, WebSafeColors
Bitmap filters altering Alpha channel
  Flip, Flop, HShift, VShift, Blend, AlphaBlend, RotateSize, Rotate, RotateWrap, RotateSmooth, RotateSmoothWrap, Wave, WaveWrap, FishEye, Twist, Shake, Marble, RippleRandom, RippleTooth, RippleTriangle, Triangles, SplitBlur, GaussianBlur, Sharpen, SharpenMore, Antialias, AntialiasRect, Spray, HeightMap, Plasma, Mosaic, Zoom, Mandelbrot
Bitmap filters preserving Alpha channel
  Solorize, Posterize, Seamless, Emboss, Buttonize, GradientRect, MandelJulia, RGBShift, ExtractColor, ExcludeColor, Grayscale, Invert, Darkness, Lightness, Saturation, Contrast, SplitLight, ColorNoise, MonoNoise, KeepRed, KeepGreen, KeepBlue, DigitalConvolution (Blur, Sharp, Edge, EmbossColor, Enhance3D, HighPass, Focus, Trace )
Vector Graphics Features
Vector file formats support
  Loading: SVG Cliparts -> plain SVG (no CSS), elements: title, g, path, rect, ellipse, circle, line, polyline, polygon, defs, mask, linearGradient, radialGradient, stop
  256 levels of anti-aliasing
  Gamma corrections
  Anti-aliasing can be turned off
Subpixel accuracy
  256 levels of subpixel positioning
Coordinate systems
  Top to Bottom on Y-axis
  Bottom to Top on Y-axis
  Coordinates alignment
Rendering engine states
  Get, Set & Reset whole engine State
  Get, Set & Reset (partial): Pen, Fill, Shadow, Transformations, Clipping, MasterParameters, BitmapParameters, TextParameters
Master rendering modes
  Full -> gradients, patterns & distortions
  Draft -> just solid colors
  Outline -> all shapes drawn with outlines, no fills
  Wireframe -> all shapes drawn with single lines, no fills
  Modes individuably configurable for Pen, Fill & Shadow
  Optional single color of whole scene for Wireframe mode
Composition modes for surfaces with Alpha channel
  Alpha, Invert, Invert RGB
  SVG Compliant: Clear, Src, Dst, Scr Over, Dst Over, Src In ,Dst In, Src Out, Dst Out, Src Atop, Dst Atop, Xor, Plus, Minus, Multiply, Screen, Overlay, Darken, Lighten, Color Dodge, Color Burn, Hard Light, Soft Light, Difference, Exclusion, Contrast
  Composition modes can be set also for bitmap rendering against some color value
Transformations (primary)
  Viewport, Translation, Rotation, Scaling, Skewing, Reflection, Perspective, Bilinear, WarpMagnify, Matrix
  Transformations are stackable, so two non-multipliable transformations such as Perspective or Warp are applicable more times after each other
  UserToSurface & SurfaceToUser conversions
2nd level of transformations
  Whole rendering scene can be transformed on top of existing stacked transformations by multiplying with Current System Transformation Matrix (CSTM)
Clipping (primary)
  Clipping area can consist of any number of Rectangles, Ellipses, Paths and PathGroups
  Clipping rule (NonZero or EvenOdd) applies to clipping shapes
  Clipping area can be inverted, combined or cleared
  Clipping Bounds
  Clipping transforms with 2nd level of transformations (rotates, shifts, skews, etc.)
  Besides Clipping (where rendering is filtered by Clipping Mask), Rendering Surface can be constrained to some rectangular area
  Cropping in CrossGL can be considered as a 2nd level of Clipping (Clips also primary Clipping)
  Allows custom definition of rendering origin with respect to preservation of used coordinate system. In combination with Cropping allows rendering of just exact portions of whole scene.
Pen (stroke) properties
  Pen type: Solid, Dash, Pattern
  Pen paint type for Solid & Dash: Single color or Gradient
  Pen cap: Butt, Square, Round
  Pen join: Miter, Round, Bevel
  Pen width centers on path
  Pen above or behind fill
  Pen scaling (if PenScale is off, pen width keeps same regardless of primary transformations zoom - good for cartography)
  Pen outline mode (not filling the width of pen, just pen contours, applies to dash pattern also)
  Pen dash - custom definition of dash pattern with dash start offset
  Pen pattern - from Bitmap or any custom CrossGL drawing sequence, with pattern start offset
  Pen head & tail arrows - fully customizable shapes
  Pen markers (at vertices) - fully customizable shape and color
Fill (brush) properties
  Fill type: Solid (Single color), Pattern, Gradient
  Fill rule: NonZero or EvenOdd
  Fill pattern - from Bitmap or any custom CrossGL drawing sequence, with pattern start offset, pattern mode (Repeat or Reflect) and possibility to tie or not tie to the coordinates system origin
  Fill distortion: Wave, Swirl & combinations (animatable for flowing like effects)
  LinearX, LinearY, Radial, Radial Focus, Conic, Conic Angle, Diamond, XY, Sqrt XY, Contour, Auto Contour, Bitmap, Gouraud Triangles, Gouraud Rectangles
  Gradient patterns: None, Repeat, Reflect
  Shadow type: Drop, 3D, Zoom
  Shadow effect: Single color, Blurred Color, Gradient Ramp
Drawing primitives
  Line, Polyline, Polygon
  Triangle, Multigon, Star
  Rectangle, RoundedRectangle
  Ellipse, Arc, Spiral, Circle, Chord, Pie
  BSpline, QuadCurve, CubicCurve
  Path commands (SVG compliant) - MoveTo, MoveToRel, LineTo, LineToRel, HorLineTo, HorLineToRel, VerLineTo, VerLineToRel, ArcTo, ArcToRel, QuadCurveTo, QuadCurveToRel, CubicCurveTo, CubicCurveToRel
  Reusable path objects
  Path -> Width, Height, Transform, Hit, Clone, Append
Path groups
  Ability to record desired parts of drawing routine into one Path Group object, later reuse that object as single drawing entity
Text rendering String = Non I18N char (1 byte) sequences
Text & Paragraph = Full I18N char (1 byte), wide (2 bytes), full (4 bytes) & Unicode sequences

  String, StringWidth, StringBounds
  String can have individual rotation
  StringOnPath (+Bounds)
  StringOnDoublePath (+Bounds)
  Text, TextWidth, TextBounds
  Text can have individual rotation
  TextOnPath (+Bounds)
  TextOnDoublePath (+Bounds)
  Paragraph (+Bounds)
  Paragraph Width, Align on X & Y axis, line spacing, individual whole paragraph rotation
  Text rendering mode: Flat (Single color), Full (Pen + Fill + Shadow)
  Text XY origin align: Left, Right, Center, Top, Bottom
  Hinting & Kerning
  Text background color (applies also to the OnPath & OnDoublePath)
  Underline, Underline just words, Underline with Pen (applies also to the OnPath & OnDoublePath)
  Strike, Strike just words, Strike with Pen (applies also to the OnPath & OnDoublePath)
  Font engine selection: FreeType (all platforms) or Windows True Type (only Windows)

Complex text
  Rich text capabilities provided with TemlCode markup
  font face, font size (pixels, points), font style (bold, italic, strike, underline), flat | outlined text, text color, background color, pen color, fill color, paragraph align X (top, center, bottom) align Y (left, right, center, justify, width), paragraph spacing, hypertext link, subsections
Bitmap rendering
  Render by: Coordinates, Parallelogram
  Stretching, Cropping
  Render to Path
  Applicable resampling filters: Bilinear, Hanning, Hermite, Quadric, Bicubic, Catrom, Spline, Blackman, Lanczos
Special renderings
  DrawSVG (+Bounds)
Interactions support
  Hit testing available for all drawing elements (Primitives, Path, PathGroups, Text, Bitmap & Special renderings)
  Hit testing for Bitmap rendering can respect Bitmap transparency
  Configurable hit detection areas (outlines inner, polygons inner, just markers, XY tolerance, clipping)
I18N & L10N Features
Supported encodings
  Focused on Unicode: UTF8, UTF16, UTF16LE, UTF32, UTF32LE
  Base classes for SBCS, DBCS & MBCS encodings
  SBCS encodings: Windows1250, Windows1251, Windows1252, Windows1253, Windows1254, Windows1255, Windows1256, Windows1257, Windows1258, Windows874, Windows28591, Windows28592, Windows28593, Windows28594, Windows28595, Windows28596, Windows28597, Windows28598, Windows28599, Windows28605, OEM437, OEM720, OEM737, OEM775, OEM850, OEM852, OEM855, OEM857, OEM858, OEM862, OEM866, ISO8859-1, ISO8859-2, ISO8859-3, ISO8859-4, ISO8859-5, ISO8859-6, ISO8859-7, ISO8859-8, ISO8859-9, ISO8859-15
  MBCS encodings: ShiftJIS, Korean, TraditionalBig5, SimplifiedGBK
  Foundations for implementing any encoding
Supported scripts
  Arabic, Armenian, Balinese, Bengali, Bopomofo, Braille, Buginese, Buhid, Cham, Cherokee, Chinese, Cirth, Coptic, Cuneiform (Sumero-Akkadian), Cypriot, Cyrillic, Cyrillic (Old Church Slavonic), Deseret, Devanagari, Ethiopic, Georgian, Glagolitic, Gothic, Greek, Gujarati, Gurmukhi, Hangul, Hanunoo, Hebrew, Hiragana, Katakana, Kannada, Kayah Li, Kharoshti, Khmer, Korean, Lao, Latin, Lepcha, Limbu, Linear B, Malaylam, Mongolian, Myanmar (Burmese), N'Ko, New Tai Lue, Ogham, Old Italic, Old Persian, Oriya, Osmanya, Phagspa, Phoenician, Runic, Shavian, Simplified Chinese, Sinhala, Syloti Nagri, Syriac, Tagalog, Tagbanwa, Tai Le, Tamil, Telugu, Tengwar, Thaana, Thai, Tibetan, Tifinagh, Traditional Chinese, Ugaritic, Unified Canadian Aboriginal Syllabic, Yi
Text rendering
  Rendering of text (also complex layouts) encoded in any supported (or additionaly implemented) encoding with respect to BiDi rules
  Rendering of ICU's UnicodeString class
I18N functionality
  Collation, Normalization, Case Conversion, Transliteration and many more provided by directly calling ICU API
Non-imaging Crossplatform Features
  CrossTypes - unified base types naming & definition common to all platforms
  Memory lists management classes
  Sorting algorithms for memory lists: Insertion, Shell, Heap, Quick, Custom
  Data streaming classes (Abstract, Memory, File)
  zLib compression / decompression routines
  Date, Time & Timer routines
  Exception handling classes & routines
  Fullstring support routines
  String formatting & conversion routines
  TemlCode parser with Tree Structures
File functionality
  FileName class
  File & Text handles
  File streaming class
  File handle: Open, Create, Close, Read block, Write block, Insert block, Delete block, Crop, Size, Offset, Seek, Eof, Copy, Move, Remove, Rename, Exists, Attributes (get & set)
  Text handle: Open, Create, Append, Close, Readln, Writeln
  Directory: Create, Remove, Rename, Change, Current, Temporary, Startup, Exists
  Volume: Type, FreeSpace, TotalSpace
  FindFirst + FindNext


Tell Us What You Think

Your Name
Your Email
Your Message
We accept anonymous messages. However, if you wish to receive a response, please include your email and name.
  Generated from TemlCode based document. Graphics on this page is rendered with CrossGL SDK. Last page update: 19.8.2011