         label.alignmentMode = kCAAlignmentCenter
         label.foregroundColor = titleColor.CGColor
         label.contentsScale = UIScreen.mainScreen().scale
+        label.shouldRasterize = true
+        label.rasterizationScale = UIScreen.mainScreen().scale
+        label.contentsScale = UIScreen.mainScreen().scale
         
         return label
     }

        borderLayer.fillColor = UIColor.clearColor().CGColor
        borderLayer.strokeColor = strokeColor.CGColor
        borderLayer.strokeEnd = 1.0
        borderLayer.path = UIBezierPath(ovalInRect:CGRectInset(bounds, lineWidth/2, lineWidth/2)).CGPath
        
        return borderLayer
    }

    }
    
    // MARK: animations
    private func animateCircleBorder(layer: CAShapeLayer) {
        let animationKey = "strokeEnd"
        let animation: CABasicAnimation = CABasicAnimation(keyPath: animationKey)
