Compartilhar via


Método IInkDisp::GetBoundingBox (msinkaut.h)

Recupera a caixa delimitadora em coordenadas de espaço à tinta para todos os traços em um objeto InkDisp , um traço individual ou uma coleção InkStrokes .

Sintaxe

HRESULT GetBoundingBox(
  [in, optional] InkBoundingBoxMode BoundingBoxMode,
  [out, retval]  IInkRectangle      **Rectangle
);

Parâmetros

[in, optional] BoundingBoxMode

Opcional. Especifica as características de traço a serem usadas para calcular a caixa delimitadora. Para obter mais detalhes sobre o uso de características de traço para calcular uma caixa delimitadora, consulte o tipo de enumeração BoundingBoxMode .

O valor padrão é -1 (IBBM_DEFAULT), o que significa que todas as características de um traço são usadas para especificar a caixa delimitadora.

[out, retval] Rectangle

Quando este método retorna, contém o retângulo que define a caixa delimitadora de um objeto InkDisp , um objeto IInkStrokeDisp ou uma coleção InkStrokes .

Nota Para um objeto IInkStrokeDisp , a caixa delimitadora retornada é uma cópia da caixa delimitadora de traços, portanto, alterar a caixa delimitadora retornada não afeta o local dos traços.
 

Valor retornado

Esse método pode retornar um desses valores.

Código de retorno Descrição
S_OK
Êxito.
E_POINTER
Um parâmetro continha um ponteiro inválido.
E_INK_EXCEPTION
Ocorreu uma exceção dentro do método .
E_UNEXPECTED
Parâmetro ou tipo de propriedade inesperado.
REGDB_CLASSNOTREG
O objeto InkRectangle não está registrado.

Comentários

Quando a caixa delimitadora é afetada pela largura da caneta, essa largura é dimensionada adequadamente para a transformação de exibição do InkRenderer . Para fazer isso, a largura da caneta é multiplicada pela raiz quadrada do determinante da transformação de exibição.

Nota No Windows Vista e em versões posteriores, o Método GetBoundingBox não leva em conta a largura do traço.
 
Nota Se você não tiver definido a largura da caneta explicitamente, ela será 53 por padrão. Você deve multiplicar a largura da caneta pela raiz quadrada do determinante para produzir a caixa delimitadora correta. A altura e a largura da caixa delimitadora são expandidas pela metade desse valor em cada direção. Por exemplo, considere que a largura da caneta é 53, a raiz quadrada do determinante é 50 e a caixa delimitadora é (0, 0, 1000, 1000). O ajuste da largura da caneta para a caixa delimitadora em cada direção é calculado como (53 * 50) / 2, e os lados direito e inferior são incrementados em um. Isso resulta em uma caixa delimitadora renderizada de (-1325, -1325, 2326, 2326).
 

Requisitos

   
Cliente mínimo com suporte Windows XP Tablet PC Edition [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Nenhum compatível
Plataforma de Destino Windows
Cabeçalho msinkaut.h
Biblioteca InkObj.dll

Confira também

Iinkdisp

Enumeração InkBoundingBoxMode

Classe InkDisp

Classe InkRectangle