Compartilhar via


Plug-ins do Ink-Collection

O objeto RealTimeStylus não coleta tinta inerentemente. Para usar o RealTimeStylus para coletar tinta, crie um plug-in coletor de tinta.

Veja a seguir um cenário mínimo para usar o objeto RealTimeStylus em um formulário que coleta tinta.

  1. Crie um formulário que implemente a interface IStylusAsyncPlugin .
  2. Crie um objeto RealTimeStylus e anexe-o a um controle no formulário.
  3. Defina interesse nas notificações StylusDown, Packets e StylusUp na propriedade DataInterest do formulário.
  4. Nos métodos StylusDown, Packets e StylusUp do formulário, adicione código para manipular a caneta para baixo, pacotes e notificações de caneta que são enviadas do objeto RealTimeStylus do formulário. Esse código deve armazenar os dados da caneta e criar e armazenar os traços.

Para obter um exemplo desse aplicativo, consulte o exemplo de Exemplo de Coleção de Tinta RealTimeStylus .

Observação

Quando ocorrer um evento DisplaySettingsChanged , chame o método ModifyDrawingAttributes dos traços coletados em um manipulador de eventos DisplaySettingsChanged para recalcular as propriedades Width e Height . Isso é necessário para levar em conta possíveis pontos por polegada (dpi) que resultam do evento DisplaySettingsChanged.

 

Coleção e reconhecedores de tinta

Nem a análise de tinta nem o reconhecimento de manuscrito são uma função do objeto RealTimeStylus . Como o plug-in coletor de tinta coleta tinta ou como você deseja reconhecer a tinta, você pode copiar a tinta para um objeto RecognizerContext ou Divider . Para obter mais informações sobre reconhecimento e análise de tinta, consulte Sobre o reconhecimento de manuscrito ou o objeto divisor.

Renderização estática

Para renderizar a tinta conforme ela está sendo coletada, anexe um objeto DynamicRenderer ao objeto RealTimeStylus . Para renderizar tinta depois que ela for coletada, use um objeto Renderer para desenhar os traços para o objeto Graphics apropriado. Para obter mais informações sobre o objeto DynamicRenderer, consulte Plug-ins do Dynamic-Renderer. Para obter um exemplo de renderização estática e dinâmica, consulte Exemplo de coleção de tinta RealTimeStylus.