RecordingCanvas Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada.
[Android.Runtime.Register("android/graphics/RecordingCanvas", ApiSince=29, DoNotGenerateAcw=true)]
public sealed class RecordingCanvas : Android.Graphics.Canvas
[<Android.Runtime.Register("android/graphics/RecordingCanvas", ApiSince=29, DoNotGenerateAcw=true)>]
type RecordingCanvas = class
inherit Canvas
- Herança
- Atributos
Comentários
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. Isso é usado em combinação com RenderNode. Essa classe mantém uma lista de todos os objetos Paint e Bitmap que ela desenha, impedindo que a memória de backup de Bitmaps seja liberada enquanto o RecordingCanvas ainda mantém uma referência nativa à memória.
Isso é obtido por chamada RenderNode#beginRecording() e é válido até que a correspondência RenderNode#endRecording() seja chamada. Ele não deve ser mantido além disso, pois é reutilizado internamente.
Java documentação para android.graphics.RecordingCanvas.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Propriedades
| Nome | Description |
|---|---|
| Class |
Retorna a classe de runtime deste |
| ClipBounds |
Recupere os limites do clipe atual (em coordenadas locais). (Herdado de Canvas) |
| Density |
Retorna a densidade de destino da tela. -ou- Especifica a densidade do bitmap de suporte desta tela. (Herdado de Canvas) |
| DrawFilter | (Herdado de Canvas) |
| GL |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de Canvas) |
| Handle |
O identificador para a instância subjacente do Android. (Herdado de Object) |
| Height |
Retorna a altura da camada de desenho atual (Herdado de Canvas) |
| IsHardwareAccelerated |
Indica se essa Tela usa aceleração de hardware. (Herdado de Canvas) |
| IsOpaque |
Retornará true se o dispositivo no qual a camada atual se baseia for opaco (ou seja, ele não dá suporte ao alfa por pixel). (Herdado de Canvas) |
| JniIdentityHashCode |
Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade. (Herdado de Object) |
| JniManagedPeerState |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de JavaObject) |
| JniPeerMembers |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. |
| Matrix |
Obsoleto.
Retornar uma nova matriz com uma cópia da matriz de transformação atual da tela. -ou- Substitua completamente a matriz atual pela matriz especificada. (Herdado de Canvas) |
| MaximumBitmapHeight |
Retorna a altura máxima permitida para bitmaps desenhados com essa tela. (Herdado de Canvas) |
| MaximumBitmapWidth |
Retorna a largura máxima permitida para bitmaps desenhados com essa tela. (Herdado de Canvas) |
| PeerReference |
Obtém a referência de objeto JNI para este par Java. (Herdado de Object) |
| SaveCount |
Retorna o número de estados de matriz/clipe na pilha privada da Tela. (Herdado de Canvas) |
| ThresholdClass |
Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código. (Herdado de Canvas) |
| ThresholdType |
Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código. (Herdado de Canvas) |
| Width |
Retorna a largura da camada de desenho atual (Herdado de Canvas) |
Métodos
| Nome | Description |
|---|---|
| ClipOutPath(Path) |
Defina o clipe como a diferença do clipe atual e do caminho especificado. (Herdado de Canvas) |
| ClipOutRect(Int32, Int32, Int32, Int32) |
Defina o clipe como a diferença do clipe atual e do retângulo especificado, que é expresso em coordenadas locais. (Herdado de Canvas) |
| ClipOutRect(Rect) |
Defina o clipe como a diferença do clipe atual e do retângulo especificado, que é expresso em coordenadas locais. (Herdado de Canvas) |
| ClipOutRect(RectF) |
Defina o clipe como a diferença do clipe atual e do retângulo especificado, que é expresso em coordenadas locais. (Herdado de Canvas) |
| ClipOutRect(Single, Single, Single, Single) |
Defina o clipe como a diferença do clipe atual e do retângulo especificado, que é expresso em coordenadas locais. (Herdado de Canvas) |
| ClipOutShader(Shader) |
Defina o clipe como a diferença do clipe atual e do sombreador. (Herdado de Canvas) |
| ClipPath(Path, Region+Op) |
Intersecione o clipe atual com o caminho especificado. (Herdado de Canvas) |
| ClipPath(Path) |
Intersecione o clipe atual com o caminho especificado. (Herdado de Canvas) |
| ClipRect(Int32, Int32, Int32, Int32) |
Intersecione o clipe atual com o retângulo especificado, que é expresso em coordenadas locais. (Herdado de Canvas) |
| ClipRect(Rect, Region+Op) |
Intersecione o clipe atual com o retângulo especificado, que é expresso em coordenadas locais. (Herdado de Canvas) |
| ClipRect(Rect) |
Intersecione o clipe atual com o retângulo especificado, que é expresso em coordenadas locais. (Herdado de Canvas) |
| ClipRect(RectF, Region+Op) |
Intersecione o clipe atual com o retângulo especificado, que é expresso em coordenadas locais. (Herdado de Canvas) |
| ClipRect(RectF) |
Intersecione o clipe atual com o retângulo especificado, que é expresso em coordenadas locais. (Herdado de Canvas) |
| ClipRect(Single, Single, Single, Single, Region+Op) |
Intersecione o clipe atual com o retângulo especificado, que é expresso em coordenadas locais. (Herdado de Canvas) |
| ClipRect(Single, Single, Single, Single) |
Intersecione o clipe atual com o retângulo especificado, que é expresso em coordenadas locais. (Herdado de Canvas) |
| ClipRegion(Region, Region+Op) |
Obsoleto.
Modifique o clipe atual com a região especificada. (Herdado de Canvas) |
| ClipRegion(Region) |
Obsoleto.
Intersecione o clipe atual com a região especificada. (Herdado de Canvas) |
| ClipShader(Shader) |
Intersecione o clipe atual com o sombreador especificado. (Herdado de Canvas) |
| Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
| Concat(Matrix) |
Preconcava a matriz atual com a matriz especificada. (Herdado de Canvas) |
| Concat(Matrix44) |
Preconcava a matriz atual com a matriz especificada. (Herdado de Canvas) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de JavaObject) |
| DisableZ() |
Desabilita o suporte A, impedindo que qualquer RenderNodes desenhado após esse ponto seja reordenado visualmente ou tenha sombras renderizadas. (Herdado de Canvas) |
| Dispose() |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| Dispose(Boolean) |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| DisposeUnlessReferenced() |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de JavaObject) |
| DrawArc(RectF, Single, Single, Boolean, Paint) |
Desenhe o arco especificado, que será dimensionado para caber dentro do oval especificado. |
| DrawArc(Single, Single, Single, Single, Single, Single, Boolean, Paint) |
Desenhe o arco especificado, que será dimensionado para caber dentro do oval especificado. |
| DrawARGB(Int32, Int32, Int32, Int32) |
Preencha o bitmap da tela inteira (restrito ao clipe atual) com a cor ARGB especificada, usando o modo de porterduff de srcover. |
| DrawBitmap(Bitmap, Matrix, Paint) |
Desenhe o bitmap usando a matriz especificada. |
| DrawBitmap(Bitmap, Rect, Rect, Paint) |
Desenhe o bitmap especificado, dimensionando/traduzindo automaticamente para preencher o retângulo de destino. |
| DrawBitmap(Bitmap, Rect, RectF, Paint) |
Desenhe o bitmap especificado, dimensionando/traduzindo automaticamente para preencher o retângulo de destino. |
| DrawBitmap(Bitmap, Single, Single, Paint) |
Desenhe o bitmap especificado, com seu canto superior/esquerdo em (x,y), usando a tinta especificada, transformada pela matriz atual. |
| DrawBitmap(Int32[], Int32, Int32, Int32, Int32, Int32, Int32, Boolean, Paint) |
Obsoleto.
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. |
| DrawBitmap(Int32[], Int32, Int32, Single, Single, Int32, Int32, Boolean, Paint) |
Obsoleto.
Trate a matriz de cores especificada como um bitmap e desenhe-a. |
| DrawBitmapMesh(Bitmap, Int32, Int32, Single[], Int32, Int32[], Int32, Paint) |
Desenhe o bitmap pela malha, em que os vértices de malha são distribuídos uniformemente pelo bitmap. |
| DrawCircle(Single, Single, Single, Paint) |
Desenhe o círculo especificado usando a tinta especificada. |
| DrawColor(Color, BlendMode) |
Preencha o bitmap da tela inteira (restrito ao clipe atual) com a cor e o blendmode especificados. |
| DrawColor(Color, PorterDuff+Mode) |
Preencha o bitmap da tela inteira (restrito ao clipe atual) com a cor especificada e o xfermode porter-duff. |
| DrawColor(Color) |
Preencha o bitmap da tela inteira (restrito ao clipe atual) com a cor especificada, usando o modo de porterduff de srcover. |
| DrawColor(Int64, BlendMode) |
Preencha o bitmap da tela inteira (restrito ao clipe atual) com a cor e o blendmode especificados. |
| DrawColor(Int64) |
Preencha o bitmap da tela inteira (restrito ao clipe atual) com a cor especificada, usando o modo de porterduff de srcover. (Herdado de Canvas) |
| DrawDoubleRoundRect(RectF, Single, Single, RectF, Single, Single, Paint) |
Desenha um retângulo arredondado duplo usando a tinta especificada. |
| DrawDoubleRoundRect(RectF, Single[], RectF, Single[], Paint) |
Desenha um retângulo arredondado duplo usando a tinta especificada. |
| DrawGlyphs(Int32[], Int32, Single[], Int32, Int32, Font, Paint) |
Desenhe a matriz de glifos com a fonte especificada. (Herdado de Canvas) |
| DrawLine(Single, Single, Single, Single, Paint) |
Desenhe um segmento de linha com as coordenadas start e stop x,y especificadas, usando a tinta especificada. |
| DrawLines(Single[], Int32, Int32, Paint) |
Desenhe uma série de linhas. |
| DrawLines(Single[], Paint) |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. |
| DrawMesh(Mesh, BlendMode, Paint) |
Desenha um objeto de malha para a tela. |
| DrawOval(RectF, Paint) |
Desenhe o oval especificado usando a tinta especificada. |
| DrawOval(Single, Single, Single, Single, Paint) |
Desenhe o oval especificado usando a tinta especificada. |
| DrawPaint(Paint) |
Preencha o bitmap da tela inteira (restrito ao clipe atual) com a tinta especificada. |
| DrawPatch(NinePatch, Rect, Paint) |
Desenha o bitmap especificado como um patch N (na maioria das vezes, um patch de 9.) Observação: não há suporte para a suavização, portanto, Paint.ANTI_ALIAS_FLAG é ignorado. |
| DrawPatch(NinePatch, RectF, Paint) |
Desenha o bitmap especificado como um patch N (na maioria das vezes, um patch de 9.) Observação: não há suporte para a suavização, portanto, Paint.ANTI_ALIAS_FLAG é ignorado. |
| DrawPath(Path, Paint) |
Desenhe o caminho especificado usando a tinta especificada. |
| DrawPicture(Picture, Rect) |
Desenhe a imagem, estendida para caber no retângulo dst. |
| DrawPicture(Picture, RectF) |
Desenhe a imagem, estendida para caber no retângulo dst. |
| DrawPicture(Picture) |
Salve o estado da tela, desenhe a imagem e restaure o estado da tela. |
| DrawPoint(Single, Single, Paint) |
Auxiliar para drawPoints() para desenhar um único ponto. |
| DrawPoints(Single[], Int32, Int32, Paint) |
Desenhe uma série de pontos. |
| DrawPoints(Single[], Paint) |
Auxiliar para drawPoints() que pressupõe que você deseja desenhar toda a matriz |
| DrawPosText(Char[], Int32, Int32, Single[], Paint) |
Obsoleto.
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. |
| DrawPosText(String, Single[], Paint) |
Obsoleto.
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. |
| DrawRect(Rect, Paint) |
Desenhe o Rect especificado usando o Paint especificado. |
| DrawRect(RectF, Paint) |
Desenhe o Rect especificado usando a tinta especificada. |
| DrawRect(Single, Single, Single, Single, Paint) |
Desenhe o Rect especificado usando a tinta especificada. |
| DrawRegion(Region, Paint) |
Desenha a região fornecida usando a tinta fornecida. |
| DrawRenderNode(RenderNode) |
Desenha o RenderNode especificado. (Herdado de Canvas) |
| DrawRGB(Int32, Int32, Int32) |
Preencha o bitmap da tela inteira (restrito ao clipe atual) com a cor RGB especificada, usando o modo de porterduff de srcover. |
| DrawRoundRect(RectF, Single, Single, Paint) |
Desenhe o rect redondo especificado usando a tinta especificada. |
| DrawRoundRect(Single, Single, Single, Single, Single, Single, Paint) |
Desenhe o rect redondo especificado usando a tinta especificada. |
| DrawText(Char[], Int32, Int32, Single, Single, Paint) |
Desenhe o texto, com origem em (x,y), usando a tinta especificada. |
| DrawText(ICharSequence, Int32, Int32, Single, Single, Paint) |
Desenhe o intervalo de texto especificado, especificado por início/término, com sua origem em (x,y), no Paint especificado. |
| DrawText(String, Int32, Int32, Single, Single, Paint) |
Desenhe o texto, com origem em (x,y), usando a tinta especificada. |
| DrawText(String, Single, Single, Paint) |
Desenhe o texto, com origem em (x,y), usando a tinta especificada. |
| DrawTextOnPath(Char[], Int32, Int32, Path, Single, Single, Paint) |
Desenhe o texto, com origem em (x,y), usando a tinta especificada, ao longo do caminho especificado. |
| DrawTextOnPath(String, Path, Single, Single, Paint) |
Desenhe o texto, com origem em (x,y), usando a tinta especificada, ao longo do caminho especificado. |
| DrawTextRun(Char[], Int32, Int32, Int32, Int32, Single, Single, Boolean, Paint) |
Desenhe uma execução de texto, tudo em uma única direção, com contexto opcional para formatação de texto complexa. |
| DrawTextRun(ICharSequence, Int32, Int32, Int32, Int32, Single, Single, Boolean, Paint) |
Desenhe uma execução de texto, tudo em uma única direção, com contexto opcional para formatação de texto complexa. |
| DrawTextRun(MeasuredText, Int32, Int32, Int32, Int32, Single, Single, Boolean, Paint) |
Desenhe uma execução de texto, tudo em uma única direção, com contexto opcional para formatação de texto complexa. (Herdado de Canvas) |
| DrawTextRun(String, Int32, Int32, Int32, Int32, Single, Single, Boolean, Paint) |
Desenhe uma execução de texto, tudo em uma única direção, com contexto opcional para formatação de texto complexa. (Herdado de Canvas) |
| DrawVertices(Canvas+VertexMode, Int32, Single[], Int32, Single[], Int32, Int32[], Int32, Int16[], Int32, Int32, Paint) |
Desenhe a matriz de vértices, interpretada como triângulos (com base no modo). |
| EnableZ() |
Habilita o suporte a Z que usa como padrão desabilitado. (Herdado de Canvas) |
| Equals(Object) |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de JavaObject) |
| Equals(Object) |
Indica se algum outro objeto é "igual a" este. (Herdado de Object) |
| GetClipBounds(Rect) |
Retorne os limites do clipe atual (em coordenadas locais) no parâmetro de limites e retorne true se ele não estiver vazio. (Herdado de Canvas) |
| GetHashCode() |
Retorna um valor de código hash para o objeto. (Herdado de Object) |
| GetMatrix(Matrix) |
Obsoleto.
Retorne, no ctm, a matriz de transformação atual. (Herdado de Canvas) |
| JavaFinalize() |
Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto. (Herdado de Object) |
| Notify() |
Ativa um único thread que está aguardando no monitor deste objeto. (Herdado de Object) |
| NotifyAll() |
Ativa todos os threads que estão aguardando no monitor deste objeto. (Herdado de Object) |
| QuickReject(Path, Canvas+EdgeType) |
Retornará true se o retângulo especificado, após ser transformado pela matriz atual, estiver completamente fora do clipe atual. (Herdado de Canvas) |
| QuickReject(Path) |
Retornará true se o caminho especificado, depois de ser transformado pela matriz atual, estiver completamente fora do clipe atual. (Herdado de Canvas) |
| QuickReject(RectF, Canvas+EdgeType) |
Retornará true se o retângulo especificado, após ser transformado pela matriz atual, estiver completamente fora do clipe atual. (Herdado de Canvas) |
| QuickReject(RectF) |
Retornará true se o retângulo especificado, após ser transformado pela matriz atual, estiver completamente fora do clipe atual. (Herdado de Canvas) |
| QuickReject(Single, Single, Single, Single, Canvas+EdgeType) |
Retornará true se o retângulo especificado, após ser transformado pela matriz atual, estiver completamente fora do clipe atual. (Herdado de Canvas) |
| QuickReject(Single, Single, Single, Single) |
Retornará true se o retângulo especificado, após ser transformado pela matriz atual, estiver completamente fora do clipe atual. (Herdado de Canvas) |
| Restore() |
Essa chamada equilibra uma chamada anterior para salvar() e é usada para remover todas as modificações no estado de matriz/clipe desde a última chamada de salvamento. (Herdado de Canvas) |
| RestoreToCount(Int32) |
Maneira eficiente de fazer pop de todas as chamadas para salvar() que ocorreram depois que a contagem de salvamento atingiu saveCount. (Herdado de Canvas) |
| Rotate(Single, Single, Single) |
Pré-preconca a matriz atual com a rotação especificada. (Herdado de Canvas) |
| Rotate(Single) |
Pré-preconca a matriz atual com a rotação especificada. (Herdado de Canvas) |
| Save() |
Salva a matriz atual e recortar em uma pilha privada. (Herdado de Canvas) |
| Save(SaveFlags) |
Com base em saveFlags, pode salvar a matriz atual e recortar em uma pilha privada. (Herdado de Canvas) |
| SaveLayer(RectF, Paint, SaveFlags) |
Isso se comporta da mesma forma que salvar(), mas, além disso, aloca e redireciona o desenho para um bitmap fora da tela. (Herdado de Canvas) |
| SaveLayer(RectF, Paint) |
Isso se comporta da mesma forma que salvar(), mas, além disso, aloca e redireciona o desenho para um destino de renderização fora da tela. (Herdado de Canvas) |
| SaveLayer(Single, Single, Single, Single, Paint, SaveFlags) |
Versão auxiliar do saveLayer() que usa 4 valores em vez de um RectF. (Herdado de Canvas) |
| SaveLayer(Single, Single, Single, Single, Paint) |
A conveniência para |
| SaveLayerAlpha(RectF, Int32, SaveFlags) |
Isso se comporta da mesma forma que salvar(), mas, além disso, aloca e redireciona o desenho para um bitmap fora da tela. (Herdado de Canvas) |
| SaveLayerAlpha(RectF, Int32) |
Conveniência para |
| SaveLayerAlpha(Single, Single, Single, Single, Int32, SaveFlags) |
Auxiliar para saveLayerAlpha() que usa 4 valores em vez de um RectF. (Herdado de Canvas) |
| SaveLayerAlpha(Single, Single, Single, Single, Int32) |
A conveniência para |
| Scale(Single, Single, Single, Single) |
Pré-preconca a matriz atual com a escala especificada. (Herdado de Canvas) |
| Scale(Single, Single) |
Pré-preconca a matriz atual com a escala especificada. (Herdado de Canvas) |
| SetBitmap(Bitmap) |
Especifique um bitmap para a tela a ser desenhada. (Herdado de Canvas) |
| SetHandle(IntPtr, JniHandleOwnership) |
Define a propriedade Handle (Herdado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de JavaObject) |
| SetViewport(Int32, Int32) |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de Canvas) |
| Skew(Single, Single) |
Pré-preconçar a matriz atual com a distorção especificada. (Herdado de Canvas) |
| ToArray<T>() |
Cria uma matriz gerenciada com base nesse wrapper de matriz Java. (Herdado de Object) |
| ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
| Translate(Single, Single) |
Pré-compilar a matriz atual com a tradução especificada (Herdado de Canvas) |
| UnregisterFromRuntime() |
Cancela o registro desse par Java do runtime de interoperabilidade. (Herdado de Object) |
| Wait() |
Faz com que o thread atual aguarde até ser despertado, normalmente por ser <notificado/em> ou <em>interrompido</em>.<> (Herdado de Object) |
| Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
| Wait(Int64) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IJavaPeerable.Disposed() |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de JavaObject) |
| IJavaPeerable.Finalized() |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. (Herdado de JavaObject) |
Métodos de Extensão
| Nome | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtém o nome JNI do tipo da instância |
| JavaAs<TResult>(IJavaPeerable) |
Tente coagir a digitar |
| JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo marcada por runtime do Android. |
| JavaCast<TResult>(IJavaObject) |
Uma implementação de tela que registra operações de desenho do sistema de exibição para renderização adiada. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Tente coagir a digitar |