CGContext Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Графический контекст и примитивы для рисования в них.
public class CGContext : IDisposable, ObjCRuntime.INativeObject
type CGContext = class
interface INativeObject
interface IDisposable
- Наследование
-
CGContext
- Производный
- Реализации
Комментарии
— CGContext это 2D-назначение кварца для рисования. Он содержит параметры и их состояния (задаются с помощью таких функций M:CoreGraphics.CGContext.SetFillColor*) и сведения об устройстве (например, ConvertSizeToDeviceSpace(CGSize)). CGContextс могут представлять область экрана, растровое изображение, PDF-документ или принтер.
Существует ограниченное количество доступных приложений CGContext, и разработчик приложений должен добросовестно удалять их после использования. Как правило, это означает размещение кода рисования в using
блоках, как показано в следующем примере:
public override void Draw (RectangleF rect)
{
base.Draw (rect);
using (var context = UIGraphics.GetCurrentContext ())
{
// draw a rectangle using a path
var myRectangleButtonPath = new CGPath ();
myRectangleButtonPath.AddRect (new RectangleF (new PointF (100, 10), new SizeF (200, 400)));
context.AddPath (myRectangleButtonPath);
context.DrawPath (CGPathDrawingMode.Stroke);
}
}
В примере также показан очень распространенный шаблон переопределенного Draw(CGRect) метода в пользовательском UIView и использование для извлечения текущего GetImageFromCurrentImageContext()CGContext объекта, на котором выполняется рисование.
Конструкторы
CGContext(IntPtr) |
Создает CGContext из неуправляемого дескриптора CGContextRef. |
Свойства
Handle |
Дескриптор (указатель) на представление неуправляемого объекта. |
InterpolationQuality |
Указание уровня качества, используемого при интерполяции изображений (например, при масштабировании). |
TextMatrix |
Определяет преобразование между текстовым пространством и пространством пользователя. Независимо от CGContextсостояния . |
TextPosition |
Расположение в координатах пользовательского пространства для рисования текста. |
Методы
AddArc(nfloat, nfloat, nfloat, nfloat, nfloat, Boolean) |
Графический контекст и примитивы для рисования в них. |
AddArcToPoint(nfloat, nfloat, nfloat, nfloat, nfloat) |
Добавляет дугу к текущему пути. |
AddCurveToPoint(nfloat, nfloat, nfloat, nfloat, nfloat, nfloat) |
Добавляет кубическую кривую Безье в текущей точке с указанными параметрами управления. |
AddEllipseInRect(CGRect) |
Добавляет эллипс, который помещается в указанный |
AddLines(CGPoint[]) |
Добавляет заданные строки в текущий путь. |
AddLineToPoint(nfloat, nfloat) |
Добавляет линию от текущей точки (см. GetPathCurrentPoint()) к указанным координатам в пространстве пользователя. |
AddPath(CGPath) |
Добавляет указанный путь к текущему пути. |
AddQuadCurveToPoint(nfloat, nfloat, nfloat, nfloat) |
Добавляет кривую Безье к текущему пути. |
AddRect(CGRect) |
Добавляет прямоугольный путь к текущему пути. |
AddRects(CGRect[]) |
Добавляет массив прямоугольных путей к текущему пути. |
AsBitmapContext() |
Приводит CGContext к CGBitmapContext. |
BeginPage(Nullable<CGRect>) |
Графический контекст и примитивы для рисования в них. |
BeginPath() |
Запускает новый путь в графическом контексте. |
BeginTransparencyLayer(CGRect, NSDictionary) |
Графический контекст и примитивы для рисования в них. |
BeginTransparencyLayer(NSDictionary) |
С EndTransparencyLayer()— заключает операции на полностью прозрачном слое. |
ClearRect(CGRect) |
Закрашивает прямоугольник прозрачно. |
Clip() |
Задает текущий путь графического контекста в виде пути обрезки. |
ClipToMask(CGRect, CGImage) |
Графический контекст и примитивы для рисования в них. |
ClipToRect(CGRect) |
Изменяет путь обрезки, чтобы он был пересечением текущего пути и предоставленного прямоугольника. |
ClipToRects(CGRect[]) |
Изменяет текущий путь обрезки таким образом, чтобы он был инсерсекцией текущего пути обрезки и областью, заданной предоставленными прямоугольниками. |
ClosePath() |
Закрывает и завершает текущий путь. |
ConcatCTM(CGAffineTransform) |
Сцепляет указанный |
ContextFillRects(CGRect[]) |
Графический контекст и примитивы для рисования в них. |
ConvertPointToUserSpace(CGPoint) |
Преобразует точку из координат пространства устройства в координаты пространства пользователя. |
ConvertRectToDeviceSpace(CGRect) |
Преобразует прямоугольник из координат пользовательского пространства в координаты пространства устройства. |
ConvertRectToUserSpace(CGRect) |
Преобразует прямоугольник из координат пространства устройства в координаты пользовательского пространства. |
ConvertSizeToDeviceSpace(CGSize) |
Преобразует размер из координат пользовательского пространства в координаты пространства устройства. |
ConvertSizeToUserSpace(CGSize) |
Преобразует размер из координат пространства устройства в координаты пользовательского пространства. |
CopyPath() |
Возвращает глубокую копию текущего пути в текущем контексте. |
Dispose() |
Освобождает ресурсы, используемые объектом CGContext. |
Dispose(Boolean) |
Освобождает ресурсы, используемые объектом CGContext. |
DrawImage(CGRect, CGImage) |
Графический контекст и примитивы для рисования в них. |
DrawLayer(CGLayer, CGPoint) |
Рисует слой в контексте графики в указанной точке. |
DrawLayer(CGLayer, CGRect) |
Рисует слой в контексте графики, ограниченном заданным прямоугольником. |
DrawLinearGradient(CGGradient, CGPoint, CGPoint, CGGradientDrawingOptions) |
Графический контекст и примитивы для рисования в них. |
DrawPath(CGPathDrawingMode) |
Рисует текущий CGContextпуть. |
DrawPDFPage(CGPDFPage) |
Отрисовывает указанный PDF-файл |
DrawRadialGradient(CGGradient, CGPoint, nfloat, CGPoint, nfloat, CGGradientDrawingOptions) |
Графический контекст и примитивы для рисования в них. |
DrawShading(CGShading) |
Отрисовывает указанный |
DrawTiledImage(CGRect, CGImage) |
Графический контекст и примитивы для рисования в них. |
EndPage() |
Вызывается для указания конца страницы в контексте на основе страниц. |
EndTransparencyLayer() |
Указывает конец слоя прозрачности. |
EOClip() |
Изменяет текущий путь отсечения, используя правило Even-Odd. |
EOFillPath() |
Заполняет текущий путь, используя правило Even-Odd. |
FillEllipseInRect(CGRect) |
Закрашивает многоточие, определенное . |
FillPath() |
Заполняет текущий путь, используя правило ненулевых обмоток. |
FillRect(CGRect) |
Закрашивает указанный |
Finalize() |
Метод завершения для объекта CGContext |
Flush() |
Принудительно выполняет отрисовку всех ожидающих отрисовок. |
GetClipBoundingBox() |
Ограничивающий прямоугольник текущего пути отсечения. |
GetCTM() |
Извлекает текущую матрицу преобразования контекста. |
GetPathBoundingBox() |
Возвращает ограничивающий прямоугольник для текущего пути. |
GetPathCurrentPoint() |
Текущая точка в CGContextпути. |
GetUserSpaceToDeviceSpaceTransform() |
Объект CGAffineTransform , сопоставляющий координаты пользовательского пространства с координатами пространства устройства. |
IsPathEmpty() |
Содержит ли текущий путь какие-либо вложенные пути. |
MoveTo(nfloat, nfloat) |
Начинает вложенный путь в указанной позиции. |
PathContainsPoint(CGPoint, CGPathDrawingMode) |
Графический контекст и примитивы для рисования в них. |
PointToDeviceSpace(CGPoint) |
Возвращает новый PointF объект , преобразующий пространство |
ReplacePathWithStrokedPath() |
Заменяет текущий путь на версию пути с обводкой на основе пареметров росчерка. |
ResetClip() |
Графический контекст и примитивы для рисования в них. |
RestoreState() |
Задает состояние объекта в CGContext том, каким он был при SaveState() последнем вызове. |
RotateCTM(nfloat) |
Поворачивает текущую матрицу преобразования по радианам |
SaveState() |
Хранит состояние объекта CGContext. (См. раздел RestoreState().) |
ScaleCTM(nfloat, nfloat) |
Масштабирует текущую матрицу преобразования. |
SelectFont(String, nfloat, CGTextEncoding) |
Разработчики не должны использовать этот нерекомендуемый метод. Вместо этого разработчикам следует использовать API CoreText. |
SetAllowsAntialiasing(Boolean) |
Разрешает ли контекст сглаживание. |
SetAllowsFontSmoothing(Boolean) |
Разрешает ли контекст сглаживание шрифта. |
SetAllowsFontSubpixelQuantization(Boolean) |
Позволяет ли контекст отрисовывать глифы в расположениях подпиксели. |
SetAllowsSubpixelPositioning(Boolean) |
Позволяет ли контекст выравнивать глифы, отличные от границ пикселей. |
SetAlpha(nfloat) |
Устанавливает прозрачность для рисования в диапазоне 0,0 (прозрачный) на 1,0 (непрозрачный). |
SetBlendMode(CGBlendMode) |
Задает режим создания элементов. |
SetCharacterSpacing(nfloat) |
Добавляет дополнительные интервалы между глифами. |
SetFillColor(CGColor) |
Задает для цвета заливки указанный CGColor. |
SetFillColor(nfloat, nfloat) |
Задает для цвета заливки серый уровень, в диапазоне от 0 (черный) до 1 (белый). |
SetFillColor(nfloat, nfloat, nfloat, nfloat) |
Задает для цвета заливки указанные значения RGBA. |
SetFillColor(nfloat, nfloat, nfloat, nfloat, nfloat) |
Задает цвет заливки с помощью компонентов цветового пространства CMYK, а также альфа-значения. |
SetFillColor(nfloat[]) |
Задает цвет заливки. SetFillColorSpace(CGColorSpace) должен вызываться до. |
SetFillColorSpace(CGColorSpace) |
Указывает объект , используемый CGColorSpace в контексте . |
SetFillPattern(CGPattern, nfloat[]) |
Задает шаблон заполнения контекста. |
SetFlatness(nfloat) |
Точность изогнутых путей. |
SetFont(CGFont) |
Задает объект , используемый CGFont для отрисовки текста. |
SetFontSize(nfloat) |
Задает размер шрифта, используемого для изменения текста. |
SetLineCap(CGLineCap) |
Задает стиль для конца линий. |
SetLineDash(nfloat, nfloat[]) |
Узор, используемый для рисования пунктирных линий. |
SetLineDash(nfloat, nfloat[], Int32) |
Графический контекст и примитивы для рисования в них. |
SetLineJoin(CGLineJoin) |
Задает способ соединения линий. |
SetLineWidth(nfloat) |
Задает ширину обводной линии. Линия простирается на половину |
SetMiterLimit(nfloat) |
Указывает предел митра для соединительных линий. |
SetPatternPhase(CGSize) |
Преобразовывает шаблон, прежде чем приступает к его наложению плитки. |
SetRenderingIntent(CGColorRenderingIntent) |
Обработка цветов за пределами целевого цветового пространства. |
SetShadow(CGSize, nfloat, CGColor) |
Графический контекст и примитивы для рисования в них. |
SetShouldAntialias(Boolean) |
Используется в сочетании с SetAllowsAntialiasing(Boolean) для включения или отключения сглаживания. |
SetShouldSmoothFonts(Boolean) |
Используется в сочетании с SetAllowsFontSmoothing(Boolean) для включения или отключения сглаживания шрифтов. |
SetShouldSubpixelPositionFonts(Boolean) |
Используется в сочетании с SetAllowsSubpixelPositioning(Boolean) для включения или отключения выравнивания глифов с помощью пикселей. |
SetStrokeColor(CGColor) |
Задает цвет росчерка. |
SetStrokeColor(nfloat, nfloat) |
Задает цвет росчерка в оттенках серого. |
SetStrokeColor(nfloat, nfloat, nfloat, nfloat) |
Задает цвет росчерка rgba. |
SetStrokeColor(nfloat, nfloat, nfloat, nfloat, nfloat) |
Задает цвет росчерка цветом CMYKA. |
SetStrokeColor(nfloat[]) |
Задает цвет росчерка. Этот API имеет неопределенное поведение, если вы не задали цветовое пространство заранее. |
SetStrokeColorSpace(CGColorSpace) |
Задает для CGColorSpace использования с M:CoreGraphics.CGContext.SetStrokeColor(float[])). |
SetStrokePattern(CGPattern, nfloat[]) |
Задает шаблон росчерка контекста. |
SetTextDrawingMode(CGTextDrawingMode) |
Указывает, как должны отображаться глифы. |
ShouldSubpixelQuantizeFonts(Boolean) |
С параметром SetAllowsFontSubpixelQuantization(Boolean)определяет, следует ли рисовать шрифты в расположениях субпиксели. |
ShowGlyphs(UInt16[]) |
Этот метод не рекомендуется использовать вместо . |
ShowGlyphs(UInt16[], Int32) |
Этот метод не рекомендуется использовать вместо . |
ShowGlyphsAtPoint(nfloat, nfloat, UInt16[]) |
Графический контекст и примитивы для рисования в них. |
ShowGlyphsAtPoint(nfloat, nfloat, UInt16[], Int32) |
Графический контекст и примитивы для рисования в них. |
ShowGlyphsAtPositions(UInt16[], CGPoint[], Int32) |
Графический контекст и примитивы для рисования в них. |
ShowGlyphsWithAdvances(UInt16[], CGSize[], Int32) |
Графический контекст и примитивы для рисования в них. |
ShowText(Byte[]) |
Этот метод не рекомендуется использовать вместо . |
ShowText(Byte[], Int32) |
Этот метод не рекомендуется использовать вместо . |
ShowText(String) |
Этот метод не рекомендуется использовать вместо . |
ShowText(String, Int32) |
Этот метод не рекомендуется использовать вместо . |
ShowTextAtPoint(nfloat, nfloat, Byte[]) |
Графический контекст и примитивы для рисования в них. |
ShowTextAtPoint(nfloat, nfloat, Byte[], Int32) |
Графический контекст и примитивы для рисования в них. |
ShowTextAtPoint(nfloat, nfloat, String) |
Графический контекст и примитивы для рисования в них. |
ShowTextAtPoint(nfloat, nfloat, String, Int32) |
Графический контекст и примитивы для рисования в них. |
StrokeEllipseInRect(CGRect) |
Обводка эллипса, определенного параметром |
StrokeLineSegments(CGPoint[]) |
Обводка линий, определенных парами в |
StrokePath() |
Обводка текущего пути. После этого текущий путь сбрасывается. |
StrokeRect(CGRect) |
Обводка указанного |
StrokeRectWithWidth(CGRect, nfloat) |
Обводка . |
Synchronize() |
Помечает для CGContext обновления. |
TranslateCTM(nfloat, nfloat) |
Изменяет источник пользовательской системы координат. |