API Notes: CoreGraphics framework

Introduction

An introduction to PyObjC describes the general method for translating Objective-C calls into Python calls, including the handling of pass-by-reference arguments and buffers.

This document describes where the PyObjC bindings for this framework are different from the general rule, such as mentioning APIs that are not supported or where the interface is different than expected.

API Notes

  • See Context Managers for CoreGraphics for some extensions to the CoreGraphics API.

  • CGColorSpaceCreateWithPlatformColorSpace, CGColorSpaceCreateWithPlatformColorSpace.

    These functions are not supported.

  • The functions and data-types for parsing PDF documents (such as CGPDFStreamCreateWithStream) are for the most part unsupported at the moment. We have bindings for a subsection of the APIs, but haven’t those aren’t complete nor fully tested.

  • CGWaitForScreenUpdateRects, CGWaitForScreenRefreshRects

    This functions are not yet supported.

  • CGDataProviderCreate, CGDataProviderCreateDirectAccess

    These functions are not available when you build PyObjC on OSX 10.8, even when you run on earlier releases of OSX.

  • CGPathCreateWithRoundedRect, CGPathAddRoundedRect

    These functions will crash hard when the parameters are inconsistent, for example when the rounded corners don’t fit in the rectangle.