 
 	public func get(pixel: Point) -> Color {
 		let color = gdImageGetTrueColorPixel(internalImage, Int32(pixel.x), Int32(pixel.y))
-        return Color(hex: Int(color), leadingAlpha: true)
+        let a = Double((color >> 24) & 0xFF)
+        let r = Double((color >> 16) & 0xFF)
+        let g = Double((color >> 8) & 0xFF)
+        let b = Double(color & 0xFF)
+
+        return Color(red: r / 255, green: g / 255, blue: b / 255, alpha: 1 - (a / 127))
 	}
 
 	public func strokeEllipse(center: Point, size: Size, color: Color) {


    /// Sanitizes given hexadecimal color string (strips # and forms proper length).
    ///
    /// - Parameter string: The hexadecimal color string to sanitize
    /// - Returns: The sanitized hexadecimal color string
    /// - Throws: `.invalidColor` if given string is not of proper length
    private static func sanitize(hex string: String, leadingAlpha: Bool) throws -> String {

	}

    public static func < (lhs: Size, rhs: Size) -> Bool {
        return lhs.width < rhs.width && lhs.height < rhs.height
    }

    public static func == (lhs: Size, rhs: Size) -> Bool {
