CGContextSetBaseCTM() and CGContextGetBaseCTM() should be public API

Originator:steipete
Number:rdar://39631107 Date Originated:22-Apr-2018 09:55 PM
Status:Open Resolved:
Product:iOS + SDK Product Version:11.3
Classification:Serious Bug Reproducible:Always
 
Summary:
This is a duplicate of radar #10221932

When porting iOS code to Mac OS X, it often becomes necessary to create a bitmap CGContextRef with a flipped y coordinate.  While CGContextConcatCTM() and CGContextScaleCTM() allow drawing operations to be flipped, all shadows will draw unflipped.    This is correct, as the headers state that shadows use the base-space.

However, there isn't a public way to transform the base space, as the CGContextSetBaseCTM() and CGContextGetBaseCTM() functions are private.   Even though these are used externally by open source projects such as WebKit, they can still result in App Store rejection.

Please consider making an exception to these API calls - allowing them to be officially used in Mac App Store applications in 10.6 and 10.7.  In addition, please consider moving them to a public header in the future.

Thanks!


Steps to Reproduce:
 

Expected Results:
 

Actual Results:
 

Version:
 11.3

Notes:
We need this to port UIKit code to the Mac.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!