pixie/fileformats/png

Source   Edit  

Types

ColorRGBA16 = object
  r*, g*, b*, a*: uint16
Source   Edit  
Png = ref object
  width*, height*, channels*, bitDepth*: int
  data*: seq[ColorRGBA]
  data16*: seq[ColorRGBA16]
Source   Edit  

Lets

pngSignature = [uint8(137), 80, 78, 71, 13, 10, 26, 10]
Source   Edit  

Procs

proc convertToImage(png: Png): Image {....raises: [], tags: [], forbids: [].}
Converts a PNG into an Image by moving the data. This is faster but can only be done once. Source   Edit  
proc decodePng(data: pointer; len: int): Png {....raises: [PixieError], tags: [],
    forbids: [].}
Decodes the PNG data. Source   Edit  
proc decodePng(data: string): Png {.inline, ...raises: [PixieError], tags: [],
                                    forbids: [].}
Decodes the PNG data. Source   Edit  
proc decodePngDimensions(data: pointer; len: int): ImageDimensions {.
    ...raises: [PixieError], tags: [], forbids: [].}
Decodes the PNG dimensions. Source   Edit  
proc decodePngDimensions(data: string): ImageDimensions {.inline,
    ...raises: [PixieError], tags: [], forbids: [].}
Decodes the PNG dimensions. Source   Edit  
proc encodePng(image: Image): string {....raises: [PixieError], tags: [],
                                       forbids: [].}
Encodes the image data into the PNG file format. Source   Edit  
proc encodePng(png: Png): string {....raises: [PixieError], tags: [], forbids: [].}
Source   Edit  
proc encodePng(width, height, channels: int; data: pointer; len: int): string {.
    ...raises: [PixieError], tags: [], forbids: [].}
Encodes the image data into the PNG file format. If data points to RGBA data, it is assumed to be straight alpha. Source   Edit  
proc newImage(png: Png): Image {....raises: [PixieError], tags: [], forbids: [].}
Creates a new Image from the PNG. Source   Edit  
proc rgba16(r, g, b, a: uint16): ColorRGBA16 {.inline, ...raises: [], tags: [],
    forbids: [].}
Source   Edit