Core Graphics 지원 이미지를 만들기 위한 그래픽 렌더러입니다.
애플문서에는 다음과 같이 설명되어 있는데
UIGraphicsImageRenderer 이니까 UIKit과 관련 있는 클래스 인것 같은데 Core Graphics와 무슨 관련이 있나.. 싶었습니다.
찾아보니 이 클래스가 UIKit 클래스이지만 UIKit 기반 앱을 위해 Core Graphics에 대한 게이트웨이 역할을 합니다.
그러니까 렌더러 개체를 만든 후, 그 개체에 렌더링 context를 작성하는데 그 context가 Core Graphics의 context와 함께 작동하도록 설계된 Core Graphics 함수 또는 UIKit 메서드라는 것입니다.
헷갈리니 코드로 이해를 해보겠습니다..
직사각형을 그리는 drawRectangle() 메서드 입니다.
UIGraphicsImageRendererContext에도 기본적인 그리기를 위한 메서드는 존재하지만, 더 좋은 유용한 것들은 Core Graphics의 기능을 제공하는 CGContext에 있습니다.
즉, UIGraphicsImageRendererContext가 Core Graphic 렌더링 기능을 직접적으로 사용할 수 있는 cgContext를 가지기 때문에
애플문서에서 UIGraphicsImageRenderer를 위와 같이 설명했나 봅니다...
그 외에도 원, 체커보드, 돌아가는 직사각형,, 등을 그리고 싶다면
HackingWithSwift < 여기를 참조하면 좋을 것 같습니다