tga is a Go package for decoding and encoding TARGA image format.
It supports RLE and raw TARGA images with 8/15/16/24/32 bits per pixel, monochrome, truecolor and colormapped images. It also correctly handles origins, attribute type in extensions area and successfully passes TGA 2.0 conformance suite (http://googlesites.inequation.org/tgautilities).
Encoding an image doesn't involve conversion if it's image.Gray
, image.RGBA
or image.NRGBA
. Other types are converted to image.NRGBA
prior to encoding.
$ go get github.com/ftrvxmtrx/tga
Because the TGA file format does not specify "magic bytes", the normal Go image loading
mechanism tries to open every file as if it were a TGA file. Thus, this library does
not play nice with loading other formats according to the
[]documentation](http://blog.golang.org/go-image-package). To address this, the
registration of the encoder/decoder is not done in an init()
function, rather to use
the standard Go image loading paradigm, a call to tga.RegisterFormat()
is required.
Code is licensed under the MIT license (see LICENSE.MIT
).
Several sample image files in testdata
directory are copyright to TrueVision,
Inc. and are freely available, free of charge and under no licensing terms at
http://googlesites.inequation.org/tgautilities
These sample images (and those which were converted from them) are:
bw.png
cbw8.tga
ccm8.tga
color.png
ctc16.tga
ctc24.tga
ctc32.tga
ubw8.tga
ucm8.tga
utc16.tga
utc24.tga
utc32.tga