BRPI0614901A2 - lente de aumento virtual com funcionalidades de controle rápido - Google Patents

lente de aumento virtual com funcionalidades de controle rápido Download PDF

Info

Publication number
BRPI0614901A2
BRPI0614901A2 BRPI0614901-4A BRPI0614901A BRPI0614901A2 BR PI0614901 A2 BRPI0614901 A2 BR PI0614901A2 BR PI0614901 A BRPI0614901 A BR PI0614901A BR PI0614901 A2 BRPI0614901 A2 BR PI0614901A2
Authority
BR
Brazil
Prior art keywords
screen
magnifying
magnifier
user
readable storage
Prior art date
Application number
BRPI0614901-4A
Other languages
English (en)
Inventor
Jacob Fleisher
Joseph K Ngari
Kevin J Smith
Samuel A Mann
Scott Mitchell Mail
Michael Winser
David V Esposito
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of BRPI0614901A2 publication Critical patent/BRPI0614901A2/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04805Virtual magnifying lens, i.e. window or frame movable on top of displayed information to enlarge it for better reading or selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Digital Computer Display Output (AREA)

Abstract

LENTE DE AUMENTO VIRTUAL COM FUNCIONALIDADES DE CONTROLE RáPIDO. Uma lente de aumento de tela é controlável por um usuário para aumentar partes selecionadas de uma área de trabalho incluindo janelas abertas na tela. Um quadro de aumento móvel é fornecido, no qual uma imagem aumentada é apresentada. A imagem aumentada corresponde ao conteúdo da tela localizado em uma região de aumento subjacente ao quadro de aumento, aumentada a um nível configurado de aumento. A lente de aumento é controlável através do uso de um dispositivo de entrada de usuário. Pelo menos um parâmetro operacional da lente de aumento pode ser ajustado, sem interação com objetos na tela e sem tirar o foco da área de trabalho ou de qualquer janela aberta na tela. Em uma modalidade particular da invenção, a controlabilidade rápida da lente de aumento inclui sua ativação e desativação, ajuste do nível de aumento, e ajuste do tamanho do quadro de aumento.

Description

"LENTE DE AUMENTO VIRTUAL COM FUNCIONALIDADES DECONTROLE RÁ-PIDO"
Uma parte da descrição desse documento de patentecontém material que está sujeito a proteção de direitos au-torais. O detentor dos direitos autorais não faz objeção àreprodução por fax do documento de patente ou da descriçãoda patente, à medida que ela aparece nos arquivos e regis-tros do Escritório de Marcas e Patentes, mas de outra formareserva todos os direitos autorais, quaisquer que sejam.
Fundamentos da Invenção
Vários tipos de funcionalidades de zoom e de au-mento de tela de computador são conhecidos. Em geral, taislentes de aumento mostram uma cópia aumentada de uma partedo que aparece em uma tela do computador. Tais funcionalida-des foram fornecidas como opções de acessibilidade para ovisualmente prejudicado, e para outros propósitos, ambos co-mo características fornecidas em software de aplicação par-ticular, e como software de especialidade pretendido parafornecer funcionalidades de aumento/zoom geralmente disponí-veis para uso em um nível do sistema operacional (por exem-plo, área de trabalho) e com aplicações de usuário. Para ovisualmente prejudicado, tais características podem ajudarna leitura de pequenos textos na tela e/ou no discernimentode ícones e seus similares. Mais geralmente, as funcionali-dades de aumento e zoom podem ser úteis em aplicações, e emum nível de sistema operacional (por exemplo, área de traba-lho) , onde pode ser desejado aumentar toda ou uma parte dosobjetos ou imagens na tela.Um exemplo de uma aplicação de usuário que fornecefuncionalidades de zoom é o leitor de documento.pdf da AdobeAcrobat. Em adição às seleções de nivel de zoom da barra deferramentas padrão via um menu de listagem suspensa, há trêscaracterísticas relacionadas com pan e zoom: Ferramenta deLupa, janela Panorâmica & Zoom, ferramenta de Zoom Dinâmico.
Com a Ferramenta de Lupa, um usuário controla onível de zoom com um controle deslizante e controla a posi-ção do zoom clicando em um documento. A área com zoom é re-presentada por um retângulo no documento que é inversamenteproporcional em tamanho ao nível de zoom; a visualização comzoom é mostrada em uma janela separada. Com a característicade janela Panorâmica & Zoom, uma caixa redimensionável é mo-vida em uma página do documento apresentada em uma pequenajanela. Uma visualização do documento é fornecida nos zoomse panorâmicas de fundo à medida que a caixa é redimensionadae movida. Com a ferramenta de Zoom Dinâmico, o cursor regu-lar muda para uma representação de uma pequena lente de au-mento significando que um modo de zoom foi entrado. Nessemodo, um usuário é capaz de clicar no documento e arrastarpara cima e para baixo dinamicamente aumentando e diminuindoo zoom, e é capaz de ter uma visualização panorâmica nasbordas laterais do documento.
Como um exemplo adicional de uma característica dezoom fornecida como parte do software de aplicação do usuá-rio, Digital Image Pro oferece um conjunto de controles emuma barra de ferramentas fornecida como parte de uma janelapara navegar através de imagens. Essa inclui um nível de zo-om baseado em controle deslizante, botão retornar para 100%,janela panorâmica, e um botão zoom para seleção. Similar àcaracterística de Panorâmica e Zoom da Adobe, uma caixa cujotamanho é inversamente proporcional a um nível de zoom sele-cionado é movida em uma imagem apresentada em uma pequenajanela. Uma visualização aumentada da parte da imagem nacaixa é fornecida no plano de fundo.
Aplicações usualmente implementam funcionalidadesde zoom utilizando ferramentas de entrada de um mouse decomputador. Por exemplo, rolando a roda de rolagem em ummouse em conjunto com a pressão da tecla CTRL no teclado(CTRL + Roda) pode permitir que os usuários aumentem ou di-minuam o zoom de aplicações. Cada aplicação tem seus pró-prios aumentos de zoom, e o zoom da roda de rolagem se apli-ca a esses documentos. Outras opções de zoom residem no pai-nel de controle de software (mouse) do Microsoft IntelliPo-int™, como já mostrado na FIG. 4. Nos botões Tab, Zoom In eZoom Out, comandos foram recentemente adicionados como op-ções para cada botão do mouse. Alguns teclados da Microsofttêm um controle de zoom (por exemplo, "controle deslizan-te"), que opera sob o controle do software IntelliType daMicrosoft.
À medida que comparado com o software de lente deaumento desenvolvido para uso em um nível do sistema opera-cional (área de trabalho), há maior flexibilidade no desen-volvimento de características de aumento e zoom para uma a-plicação de usuário particular, à medida que a aplicação po-de ser estruturada a partir do "criado" para acomodar essascaracterísticas. Também, com uma lente de aumento especificade aplicação, a interação da lente de aumento com programasde execução independente e suas janela associadas não é ge-ralmente uma preocupação. 0 zoom é facilmente alcançado emuma aplicação. Essa aplicação tem uma representação internado conteúdo a ser exibido e se projetada corretamente podeexibir o conteúdo em diferentes tamanhos ou níveis de zoom.No Word® da Microsoft, por exemplo, pode-se aumentar o zoomaté somente umas poucas linhas mostradas na tela ainda que otexto esteja muito claro porque as fontes são baseadas emvetores gráficos (descrições matemáticas dos caracteres aoinvés de mapas de bits).
Com uma lente de aumento projetada para ser geral-mente disponível para uso com a área de trabalho e comquaisquer outras janelas abertas, isto é, em um nível desistema operacional (OS), a representação interna que umaaplicação pode ter para funcionalidades de zoom não estádisponível. De preferência, o aumento é executado por mani-pulação de uma captura de tela ou mapa de bits da saída. Em-bora isso não aumente tipicamente o detalhe além da resolu-ção de tela aplicável, ele permite que os usuários visuali-zem os objetos de interface de usuário (UI) e texto em tama-nhos maiores. A maneira na qual tal lente de aumento intera-ge com os vários elementos de tela subjacentes e com janelasé de grande importância; a natureza dessa interação é prova-velmente para ter um significante impacto na usabilidade re-al e percebida da característica.
Um exemplo de uma característica de aumento de te-Ia em nivel de OS existente é o "Magnifier" do sistema ope-racional Windows XP® da Microsoft. 0 Magnifier é uma utili-dade de tela que torna a tela mais legível para usuários quetêm a visão prejudicada. Ele cria uma janela separada queexibe uma parte aumentada da tela, parte que é determinadapela posição do cursor do dispositivo de apontamento, porexemplo, apontador do mouse. Um usuário pode mudar o nivelde aumento via configurações no painel de controle da carac-terística. 0 usuário pode mover ou redimensionar a janela doMagnifier, ou arrastá-la para a borda da tela e travá-la nolocal.
Uma aplicação de especialidade de aumento de telaconhecida é a Zoom Magic. Quando iniciada, essa aplicaçãoabre uma janela de aumento padrão, como mostrado na FIG. 1.
A janela é redimensionável e móvel como uma janela regular.Todas as ferramentas/configurações estão disponíveis na bar-ra de título. A janela aumenta o que estiver imediatamenteembaixo. 0 cursor do mouse pode se mover sobre o conteúdoaumentado, mas ele não pode interagir com o conteúdo.
Com relação à FIG. 1, há um modo de rastreamentode cursor iniciado clicando-se no botão de seta na barra detítulo da janela. Clicar nas diferentes setas vermelhasprenderá a janela em cima/embaixo/na esquerda/na direita. 0centro desprenderá a janela e a reverterá para uma janelaregular. Esse modo permite sobreposição de outras janelasabertas, mas não permite interação com janelas de aplicaçãosubjacentes na janela de aumento. 0 rastreamento do cursorpode ser alternado para LIGAR/DESLIGAR clicando-se no botãode seta. Há uma opção para manter a janela de aumento no to-po da área de trabalho e quaisquer outras janelas abertas,mas nesse modo a imagem aumentada não se atualiza a menosque a janela de aumento seja clicada.
"Lente" é uma ferramenta oferecida pela ABF Mag-nifying Tools (http://www.abf-soft.com/magnifying-tools.shtml) que cria uma caricatura de uma lente de aumen-to, como já visto na FIG. 2. O usuário pode re-posicionar alente arrastando-a e usando-a para seletivamente aumentar ozoom em áreas da tela. Um usuário pode ajustar o nivel deaumento clicando nos botões + & -. Essa ferramenta tira umafoto estática da tela na hora da ativação. Se alguma coisamuda na tela, não é refletido na imagem aumentada.
Um outro exemplo de uma aplicação de especialidadeem acessibilidade conhecida é ZoomText 8.1, por AI2(http://www.aisquared.com/index.htm). Quando a aplicação éiniciada, uma interface de usuário (UI) do tipo painel decontrole modal aparece, como já mostrado na FIG. 3.
As características de aumento/zoom do ZoomText 8.1têm vários modos:
Um Modo de Tela Completa aumenta a tela inteira deforma crescente. À medida que o mouse se aproxima das bordasda tela, uma panorâmica é iniciada automaticamente.
Um Modo de Sobreposição cria uma janela quadradaredimesionável no canto direito inferior da tela. O mouserastreia na visualização regular (1:1), e esse movimento éespelhado na visualização aumentada. À medida que o mouse seaproxima das bordas da tela, uma panorâmica é iniciada auto-maticamente na janela de zoom.
0 Modo de Lente cria uma janela quadrada redimen-sionável flutuante que se move com o cursor do mouse. Um Mo-do de Linha cria uma banda horizontal através da tela que semove para cima e para baixo com as mudanças nas coordenadasY do cursor do mouse. A atualização dinâmica ocorre dentroda janela de aumento para refletir mudanças no conteúdo detela durante o uso, e a interação com janelas de aplicaçãosubjacentes está disponível através da janela de aumento,isto é, entrada de mouse e de teclado são permitidas parapassar através da lente de aumento para a janela subjacente.
Um Modo Ancorado cria uma banda redimensionável(contornada em preto) posicionada contra ou a margem esquer-da ou direita, inferior ou superior da tela. O movimento domouse é rastreado somente na visualização com zoom, enquantoa visualização 1:1 está travada.
Quando habilitada, a Ferramenta Congelar permiteque o usuário desenhe uma caixa redimensionável na tela etrave ("congele") sua posição. A visualização da caixa pré-definida trava a posição do zoom em coordenadas particularesXeY. Se o conteúdo muda na área que está aumentada, entãoele é refletido no conteúdo aumentado na caixa. 0 modo con-gelar está disponível somente no modo de lente "Tela Cheia".No modo de Tela Cheia, não há lente; a tela toda está aumen-tada e o mouse faz um panorama de áreas "fora da tela".
Lentes de aumento de tela conhecidas são menos doque ideais em termos de sua simplicidade e conveniência, eda intuição de seu uso. Também, a maneira na qual algumaslentes de aumento são implementas as torna altamente frá-geis, isto é, suscetíveis a mau funcionamento no evento deatualizações e remendos de sistema operacional/acionador.
Seria desejável ter uma lente de aumento de telaimplementada por computador robusta que se comporte mais co-mo uma lente de aumento óptica real em termos de ser capazde "flutuar acima" da área de trabalho do computador e ou-tras janelas abertas, para fornecer uma visualização aumen-tada do que está embaixo dela de uma maneira natural e intu-itiva, e para permitir visualização e interação ilimitadacom as janelas/área de trabalho subjacentes.
Implementar uma aplicação de aumento pretendidapara uso com um sistema operacional que fornece uma interfa-ce gráfica de usuário baseada em janelas (GUI), por exemplo,um sistema operacional do Microsoft Windows®, apresenta cer-tos desafios. Se a lente de aumento é criada como uma janelaconvencional, ela se torna uma parte da área de trabalhoquando ela está aberta. Como um resultado, chamados de sis-tema para obter imagens da área de trabalho para aumento in-cluirão a própria janela de aumento (e não aquela parte daGUI debaixo dela) . O uso de tais chamados de sistema parafazer o aumento, como no Magnifier do Windows XP, leva a umefeito de espelho infinito. O resultado a partir de umaperspectiva de usuário é que ele/ela é impossibilitado deobter uma visualização aumentada do que está embaixo da ja-nela de aumento.
Um número de aplicações de aumento disponíveis,tal como o produto ZoomText anteriormente mencionado, temlidado com a dificuldade acima descrita usando uma técnicaconhecida como encadeamento de acionador. Com essa aproxima-ção, uma parte selecionada do conteúdo de tela composto pelosistema operacional é interceptada e manipulada pela lentede aumento de nivel kernel antes de ir para o acionador detela de video. Com o software de aumento de tela ou de lei-tura de tela, fornecedores de tecnologia auxiliar (ATVs) es-sencialmente localizam o acionador de tela, obtêm a informa-ção necessária para ele, então passa os chamados de Interfa-ce de Acionador de Tela (DDI) algumas vezes modificados aoacionador de tela original. (Certo software de controle re-moto usa também essa técnica para interceptar informação queestá sendo passada a um computador remoto). A técnica de in-terceptação de DDI é chamada de encadeamento de acionador. Oacionador encadeado intercepta os chamados de DDI a partirda GDI para o acionador de tela e manipula os chamados detal forma a aumentar uma parte da tela. Na medida em que osistema operacional Windows® é considerado, a saida da lentede aumento sobreposta simplesmente não está lá, então oschamados para copiar partes da área de trabalho não a verão.
Como o encadeamento de acionador intervém com umarelação sistema operacional/acionador pré-estabelecida, elepode não ser oficialmente suportado pelo provedor do sistemaoperacional, por exemplo, Microsoft. Como um resultado, atécnica tende a ser muito frágil e propensa ao mau funciona-mento, por exemplo, se o sistema operacional é atualizadocom novos pacotes de serviço ou acionadores. Informação adi-cional considerando o encadeamento de acionador, e sua apli-cação em lentes de aumento de tela e outros produtos de tec-nologia auxiliar, podem ser encontrados na Microsoft Develo-pers Network (MSDN), em
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnacc/html/atg driverchain.asp.
As configurações de encadeamento para uma lente deaumento de tela de computador são lentas e inconvenientesatravés de um painel de controle tradicional. Seria altamen-te vantajoso se o usuário fosse capaz de executar funçõesbásicas rápidas de controle de lente de aumento, sem perdercontexto de tarefa e exigindo acesso a um painel de controleou, de outra forma, interagindo com ferramentas/objetos natela.
A capacidade de ativar, desativar, posicionar eajustar o tamanho e/ou o nivel de aumento de uma lente deaumento, sem tirar o foco das janelas abertas seria altamen-te benéfico. As configurações da lente de aumento poderiamser facilmente mudadas se a lente de aumento obtivesse focoe aceitasse a entrada mouse/teclado. Entretanto, isso tem oproblema de retornar o foco à aplicação de interesse uma vezque o usuário tenha terminado de ajustar as configurações.Quando a aplicação é feita ativa e retorna para o primeiroplano, ela pode não estar no mesmo estado e o foco de tecla-do pode estar em um controle diferente.
Sumário da Invenção
A presente invenção fornece sistemas e métodos ba-seados em software/suporte lógico inalterado, executáveis emum dispositivo de processamento de dados (por exemplo, umcomputador de propósito especial ou de propósito geral) for-necido com tela de exibição e dispositivo de entrada de usu-ário (por exemplo, um dispositivo de apontamento tal como ummouse de computador, mouse estacionário ("trackball") ou me-sa sensível ao toque, ou um teclado de computador) . Essessistemas e métodos servem para fornecer um dispositivo peloqual um usuário pode convenientemente, seletivamente aumen-tar partes do conteúdo da tela de exibição. Novas aproxima-ções para fornecer tal lente de aumento de tela de exibiçãosão fornecidas de modo a abordar uma ou mais desvantagens delentes de aumento conhecidas como descrito acima.
Uma lente de aumento de acordo com a invenção écontrolável por um usuário para aumentar partes selecionadasde uma área de trabalho e janelas abertas na tela. Um quadrode lente de aumento móvel é fornecido, dentro do qual umaimagem aumentada é apresentada. A imagem aumentada corres-ponde ao conteúdo de tela localizado dentro de uma região deaumento embaixo do quadro de lente de aumento, aumentado aum nível configurado de aumento.
Uma lente de aumento de acordo com a invenção écontrolável, rápida, através do uso de um dispositivo de en-trada de usuário. Pelo menos um parâmetro operacional dalente de aumento pode ser ajustado, sem interação com obje-tos na tela e sem tirar o foco da área de trabalho ou dequaisquer janelas abertas na tela. Em uma modalidade parti-cular da invenção, a controlabilidade rápida da lente de au-mento inclui a capacidade de ativar e desativar a lente deaumento, ajustar seu nível de aumento, e ajustar o tamanhode seu quadro de aumento.
De acordo com um aspecto da invenção, a lente deaumento da tela de exibição é configurada para operar poten-cializando recursos tornados disponíveis pelas interfaces deprogramação de aplicação (APIs) de um sistema operacional,chamada de estilo de janela, e pelo mecanismo de composiçãode conteúdo de tela de segundo estágio com o estilo de. jane-las .
De acordo com um aspecto da invenção, uma janelade lente de aumento é criada, a qual é efetivamente invisí-vel aos chamados para aumentar uma imagem da área de traba-lho. Isso habilita a lente de aumento a operar de uma manei-ra intuitiva, permitindo que o observador visualize o queestá diretamente embaixo da lente de aumento, e que interajacom a lente de aumento, sem tirar o foco das janelas de a-plicação abertas e/ou da área de trabalho. Uma modalidade dainvenção faz uso vantajoso de estilos de janelas tornadosdisponíveis pelas APIs dos sistemas operacionais XP e 200 doMicrosoft Windows®. Dessa maneira, a necessidade pelo uso detécnicas de encadeamento frágeis é evitada.
Os objetivos, características e vantagens acima eoutros tais da presente invenção serão prontamente aparentese completamente entendidos a partir da seguinte descriçãodetalhada das modalidades preferenciais, tomadas em conjuntocom os desenhos em anexo.
Breve Descrição dos Desenhos
A FIG. 1 é uma captura de tela que mostra uma ja-nela de aumenta na tela de um produto de lente de aumento jáconhecido.
A FIG. 2 é uma captura de tela que mostra um outroproduto de lente de aumento já conhecido.
A FIG. 3 é uma captura de tela que mostra uma ja-nela de barra de ferramentas na tela de um produto de lentede aumento já conhecido.
A FIG. 4 mostra um painel de controle fornecidocomo parte de software para uso com um produto de mouse decomputador já conhecido do presente cessionário.
A FIG. 5 é um fluxograma que ilustra uma seqüênciade etapas de processo operacional executadas por uma modali-dade de lente de aumento de tela da invenção.
A FIG. 6 é uma captura de tela que ilustra um qua-dro de aumento móvel e ajustável da invenção, incluindo grá-ficos de dicas superpostos que aparecem durante um modo deajustamento da lente de aumento.
A FIG. 7 é uma representação diagramática de umprocesso de geração de mapa.de bits de quadro de acordo comum aspecto da invenção.
A FIG. 8 é uma representação diagramática de umprocesso de geração de mapa de bits de máscara de acordo comum aspecto da invenção.
A FIG. 9A é uma representação diagramática, inclu-indo uma parte de imagem representacional selecionada paraaumento, mostrando a relação de um quadro de lente de aumen-to ("Retângulo de Janela de Lente de Aumento") e uma regiãode aumento subjacente ("Retângulo de Captura").
A FIG. 9B é uma seqüência de visualizações que i-lustra estágios de um processo da invenção para a geração eapresentação de uma imagem aumentada correspondente à parteda imagem mostrada na FIG. 9A.
As FIGs. 10A-10C são visualizações diagramáticasque ilustram um processo executado por um algoritmo de "es-tiramento" l,5x de acordo com um aspecto da invenção.
Descrição Detalhada das Modalidades Preferenciais
Uma lente de aumento na tela de acordo com a in-venção inclui um quadro de lente de aumento móvel dentro doqual uma imagem aumentada é apresentada. A imagem aumentadacorresponde ao conteúdo de tela localizado dentro de uma re-gião de aumento subjacente ao quadro de lente de aumento,aumentado a um nivel configurado de aumento.
Uma lente de aumento de tela de exibição de acordocom uma modalidade da invenção é configurada tal que enquan-to ela está ativada, ela permanece no topo da área de traba-lho e de quaisquer janelas abertas de uma tela de exibição.Ela passa eventos de um dispositivo de entrada de usuário(por exemplo, um mouse ou teclado) para janelas localizadasembaixo da lente de aumento, e dinamicamente atualiza a ima-gem aumentada para refletir mudanças no conteúdo de telasubjacente. Tal lente de aumento de tela pode ser incorpora-da em software ou suporte lógico inalterado executado em umcomputador de propósito geral ou outro dispositivo de pro-cessamento de dados fornecido com uma tela e um dispositivode entrada de usuário.
Um aspecto da invenção envolve alcançar o compor-tamento acima descrito potencializando recursos tornadosdisponíveis através das interfaces de programação de aplica-ção existentes (APIs) de um sistema operacional, particular-mente um estilo de janela, e um mecanismo de composição deconteúdo de tela de segundo estágio associado com o estilode janelas. Como usado aqui, "estilo de janela" amplamenteabrange qualquer conjunto de parâmetros que especifica ascaracterísticas funcionais e/ou visuais de uma janela queaparece como parte de uma interface gráfica de usuário(GUI), incluindo conjuntos de parâmetros incluídos em um ouvários estilos de janelas designados especificados dentro deum conjunto de APIs. A aproximação inventiva pode ser usadaem lugar de técnicas frágeis de encadeamento de acionador.
Em uma modalidade exemplificada da invenção, alente de aumento compreende uma janela de aumento criada comos seguintes estilos de janela estendida, que são fornecidoscomo parte das APIs dos sistemas operacionais Windows® 2000e XP da Microsoft para computadores pessoais.
WS_EX_TRANSPARENT: Esse estilo de janela especifi-ca que a janela não será pintada até que as janelas embaixodela sejam pintadas. Isso permite que uma "captura de tela"da tela abaixo da lente de aumento seja feita antes da lentede aumento ser desenhada.
WS EX LAYERED: Quando esse estilo é usado em con-junto com o estilo WS_EX_TRANSPARENT, a janela de lente deaumento não receberá entrada de usuário a partir do mouse outeclado; toda a entrada é passada para as aplicações abaixoda lente de aumento. Quando a janela de lente de aumento écriada como uma janela transparente em camadas, eventos dedispositivo de apontamento (por exemplo, mouse) serão passa-dos a outras janelas subjacentes à janela em camadas. Tam-bém, esse estilo de janela otimiza a combinação do canal al-fa por pixel que pode ser usada para dar à lente de aumentoum quadro de combinação de canal alfa. Essa característicapode ser usada para dar ao usuário uma pista visual de que alente de aumento está "flutuando" acima da área de trabalho.
WS EX_NOACTIVATE: Esse estilo de janela também faza janela tal que ela não obtenha "foco". Ou seja, se a jane-Ia da lente de aumento é fornecida como uma janela que ordi-nariamente se torna visualmente destacada (por exemplo, umajanela regular fornecida com uma barra de título), a janelanão se tornará visualmente destacada (por exemplo, ilumina-das) como uma janela ativa mediante o clique nela com umdispositivo de apontamento (por exemplo, mouse). 0 usuáriopode clicar através da lente de aumento. Também, eventos deteclado (entrada) não serão capturados pela lente de aumen-to. Isso. permite que o usuário interaja com uma janela deaplicação posicionada abaixo da lente de aumento. Também,com esse estilo, a lente de aumento não aparece na barra detarefas.
WS EX_TOOLWINDOW: A adição do estilo a faz tal quea lente de aumento não aparece na listagem alt-tab de apli-cações/janelas abertas.
WS EX_TOPMOST: Esse estilo de janela mantém a len-te de aumento como a janela mais no topo. Sem ele, a utili-dade da lente de aumento poderia ser diminuída pela lente deaumento desaparecendo atrás das outras janelas.Informação adicional nesses e em outros estilos dejanela estendidos incluídos nas APIs dos sistemas operacio-nais Windows® da Microsoft pode ser encontrada na MicrosoftDevelopers Network (MSDN), por exemplo, em
http://msdn.microsoft.com/library/default.asp?url=/library/en-
us/winui/winui/windowsuserinterface/windowinq/windows/window
reference/windowfunctions/createwindowex.asp.
Uma função de criação de janela de lente de aumen-to exemplificada que pode ser usada é apresentada abaixo://Criar janela de lente de aumentoHWND hwnd=::CreateWindowEx(
WS_EX_NOACTIVATE | WS_EX_TRANS PARENT |WS_EX_LAYERED | WS_EX_TOPMOST |
WS_EX_TOOLWINDOW,
WndClass.IpszClassName, L"",WS_POPUP I WS_VISIBLE | WS_DISABLED,0,0,0,0
NULL, NULL, hlnstance, 0);
Um processo operacional de uma lente de aumento deacordo com um aspecto da invenção é ilustrado na FIG. 5. Umavez que a janela da lente de aumento é ativada, um controla-dor de tempo é confiqurado tal que a lente de aumento recebeuma mensagem do controlador de tempo em uma taxa pré-determinada (por exemplo, aproximadamente 15 a 24 vezes porsegundo). Em uma modalidade, o intervalo de controlador detempo é configurado em 15 milisegundos, ou 67 vezes por se-gundo. A lente de aumento usa a mensagem do controlador detempo para continuamente atualizar a imagem da lente de au-mento para refletir mudanças no conteúdo de tela subjacenteque ocorrem enquanto a lente de aumento está em uso (ativa-da) . Uma freqüência de atualização na faixa indicada deveriapermitir que a imagem aumentada mudasse relativamente suave-mente à medida que o quadro de aumento é movido na tela, ouse houver uma animação que está sendo reproduzida em uma ja-nela abaixo dele, desse modo emulando a aparência de umalente de aumento óptica real mantida e movida em frente datela. Como mostrado na FIG. 5, quando a mensagem do contro-lador de tempo é recebida, a região a ser aumentada é captu-rada, a janela de lente de aumento é configurada para o maisno topo possível e então a região de captura é desenhada(por exemplo, "stretch blit") na lente de aumento no nívelde aumento apropriado.
Uma modalidade da invenção faz uso vantajoso dofato de que USER32 (o gerenciador de janela Win32) implemen-ta um mecanismo de composição relativamente simples para e-xecutar um segundo estagio de composição de conteúdo de telaquando as janelas Transparentes são criadas. Esse é um "se-gundo estágio" de composição no sentido de que ele é dife-rente, e em adição, ao processo de composição de área detrabalho normal ou ordinário. O processo de composição nor-mal empregado pelos sistemas operacionais Windows® da Micro-soft segue o que é algumas vezes referido como algoritmo depintores modificados. As janelas são pintadas na área detrabalho em ordem ζ reversa (de cima para baixo). "Recorte"agressivo é usado para confinar as áreas da tela a serem re-desenhadas às áreas onde conteúdo está sendo adicionado oumudanças ocorreram, para desse modo evitar tremulação de te-la e reduzir a quantidade de trabalho de pintura/desenho re-al.
Quando a janela usa sombras, transparência ouqualquer outro efeito que exige que o Windows® mescle os pi-xels das janelas com o que estiver "atrás" dela, o Windows®cria armazenadores temporários de mapa de bits intermediá-rios para a área de trabalho e as janelas transparentes,respectivamente. Os conteúdos desses armazenadores temporá-rios são então "compostos" para criar a saida final. Chama-dos para obter uma captura da área de trabalho (por exemplo,GetDC(NULL)), e para stretch blit (StretchBlt) a partir daárea de trabalho, usarão o armazenador temporário da área detrabalho, não a área de trabalho resultante do processo decomposição de segundo estágio. Fazendo ela própria uma jane-la "Transparente" do Windows® (mesmo se sua opacidade é con-figurada para 100%), a janela de aumento ambos habilita oprocesso de composição de segundo estágio, e ela mesma secoloca acima da área de trabalho principal. 0 uso do estilode janelas "Mais no Topo" manterá a lente de aumento mais notopo possível, impedindo uma nova janela de subseqüentementeaparecer e se configurar como mais no topo.
Uma lente de aumento de acordo com a invenção a-presente um quadro de aumento redimensionável que é móvel natela e dentro do qual é apresentada uma imagem aumentadacorrespondente ao conteúdo de tela localizado em uma regiãode aumento subjacente ao quadro de aumento. Na modalidadeprincipal descrita aqui, o quadro/lente de aumento é fixadoe centrado no cursor do dispositivo de apontamento, tal comopara se mover com o mesmo. Em outras modalidades, o quadrode aumento (que limita a "lente" virtual da lente de aumen-to) poderia ser feito móvel independentemente do cursor dodispositivo de apontamento.
Uma lente de aumento de tela de computador de a-cordo com um aspecto da invenção "flutua" acima da área detrabalho e de quaisquer janelas abertas, e não tira o focoda área de trabalho ou de qualquer janela aberta. Como pre-viamente descritas, essas são características desejáveis.Elas apresentam o problema, entretanto, de como redimensio-nar a lente de aumento e mudar seu nível de aumento. Parauma janela de aplicação normal, isso seria trivial; o redi-mensionamento seria alcançado clicando-se e arrastando-se asbordas da janela, e o nível de aumento poderia ser alteradocom controle na tela. Entretanto, usar métodos como esse re-sulta no foco sendo tirado de outras.janelas abertas, o quedeve ter conseqüências inesperadas e indesejáveis. As confi-gurações poderiam ser também mudadas através de uma páginade painel de controle, mas essa aproximação é inconvenientee consome tempo, especialmente para um usuário que pode de-sejar a assistência intermitente freqüente de uma lente deaumento durante o curso de executar várias tarefas em umcomputador.
De acordo com um aspecto da invenção, uma lente deaumento é fornecida, a qual pode ser alternada paraLIGAR/DESLIGAR pelo usuário substancialmente instantaneamen-te, clicando-se em um botão designado de aumento fornecidoem um dispositivo de entrada de usuário (por exemplo, ummouse ou teclado de computador). A chave de controle de len-te de aumento pode ser um botão dedicado (ou outro tipo dechave ativada por usuário), ou um botão atribuído pelo usuá-rio com a característica de aumentar.
Em uma modalidade exemplificada, uma vez que alente de aumento é exibida na tela, o usuário pode manterpressionado o botão de aumentar por um curto período de tem-po pré-determinado (por exemplo, aproximadamente meio segun-do) para entrar em um modo de ajustamento. Para sinalizar aousuário que o modo de ajustamento está ativo, um gráfico,como mostrado na FIG. 6, pode ser levado a aparecer (por e-xemplo, aparecer gradualmente) na área de lente de aumentolimitada pelo quadro de lente de aumento. Enquanto no modode ajustamento, o usuário pode mudar o aumento de tamanho dalente. Como representado na FIG. 6, o gráfico que aparece natela pode fornecer uma indicação visual de entradas de usuá-rio adequadas (por exemplo, movimentos do mouse e rotaçõesda roda de rolagem) para efetuar ajustamento da lente de au-mento. O usuário não interage, entretanto, com aqueles grá-ficos para efetuar os ajustamentos. Um esquema exemplificadopara mudar o tamanho da lente/quadro de aumento é traçadoabaixo.
Com a lente de aumento ativada, mudanças em umadimensão da largura do quadro de lente de aumento podem serefetuadas na seguinte maneira. Se o usuário pressiona e man-tém pressionado o botão do mouse atribuído com a função deaumentar, e move o mouse a uma distância pré-determinada emuma direção pré-determinada (por exemplo, 50 pixels para aDIREITA), o quadro da lente de aumento pode ser levado a au-mentar em tamanho (por exemplo, em uma ou ambas de suas Ia-terais direita e esquerda) em uma taxa correspondente ao mo-vimento do mouse naquela direção. Se o usuário pressiona emantém pressionado o botão do mouse, e move o mouse a umadistância pré-determinada em uma segunda direção pré-determinada (por exemplo, 50 pixels para a ESQUERDA), o qua-dro de lente de aumento pode ser levado a diminuir em tama-nho (por exemplo, em uma ou ambas as laterais direita e es-querda) em uma taxa correspondente ao movimento do mouse na-quela direção.
Com a lente de aumento ativada, mudanças em umadimensão de altura do quadro da lente de aumento podem serefetuadas similarmente. Se o usuário pressiona e mantémpressionado o botão do mouse determinado e move o mouse emuma distância pré-determinada em uma terceira direção pré-determinada (por exemplo, 50 pixels para BAIXO), o quadro delente de aumento iniciará a aumentar em tamanho (por exem-plo, em uma ou ambas de suas laterais inferior e superior)em uma taxa correspondente ao movimento do mouse. Se o usuá-rio pressiona e mantém pressionado o botão do mouse determi-nado e move o mouse em uma distância pré-determinada em umaquarta direção pré-determinada (por exemplo, 50 pixels paraCIMA), o quadro de lente de aumento iniciará a diminuir emtamanho (por exemplo, em uma ou ambas de suas laterais infe-rior e superior) em uma taxa correspondente ao movimento domouse.
Mudanças verticais e horizontais no tamanho doquadro de lente de aumento podem ser feitas simultaneamente,combinando-se os movimentos do mouse descritos acima. Asconfigurações de tamanho da lente de aumento podem ser pre-servadas tal que da próxima vez que a lente de aumento foriniciada, a lente/quadro da lente de aumento estará do mesmotamanho que estava antes que foi fechada.
Com a lente de aumento ativada, o nivel de aumentopode ser alterado da seguinte maneira. Se o usuário pressio-na o botão do mouse determinado, então enquanto mantendo obotão pressionado, ele rola a roda do mouse em direção a elemesmo, o nivel de aumento diminuirá em qualquer limite con-figurado por um nivel de aumento mínimo (por exemplo, razãode aumento 1:1). Se o usuário pressiona o botão do mouse de-terminado, então enquanto mantendo o botão pressionado, elerola a roda do mouse na direção oposta a ele, o nível de au-mento aumentará (dentro de qualquer limite configurado porum nível de aumento máximo). Em uma modalidade exemplifica-da, o nível de lente de aumento é ajustável de forma cres-cente para os seguintes níveis: l,5x, 2x, 3x, 4x e 5x.
Com a lente de aumento desativada (desligada),pressionando e então liberando o botão do mouse levará alente de aumento a ser ativada e a aparecer na tela. Uma de-pressão momentânea subseqüente do botão instantaneamente de-sativará a lente de aumento. Se, enquanto a lente de aumentoestá desativada, o usuário pressiona o botão determinado,então enquanto mantendo o botão pressionado, rola a roda domouse em direção ou contra ele mesmo, os eventos de rolagemirão para a aplicação que estiver em foco. Quando o usuáriolibera o botão de aumento, a lente de aumento será ativada eaparecerá na tela.
Uma lente de aumento exemplificada de acordo com a
invenção é implementada usando estilos de janelas estendidasdisponíveis como parte das APIs fornecidas pelos sistemasoperacionais Windows® 2000 e XP da Microsoft. Em particular,a lente de aumento pode ser configurada como uma única jane-la transparente (WS_EX_TRANSPARENT) , em camadas(WS EX LAYERED) que periodicamente captura uma parte da ima-gem da tela, a estica, e atualiza sua imagem de janela. Es-ses atributos de janela particular permitem que a janela"flutue" acima da área de trabalho e de quaisquer janelas deaplicação abertas. Com esse conjunto de sinalizadores de es-tilo, a lente de aumento nunca recebe foco. Ao invés, "sub-rotinas" de software são usadas para seletivamente obter en-trada de usuário a partir do mouse, que é usada para fazerajustamentos à lente de aumento sem interromper tarefas deusuário e processos de aplicação em andamento.
Na modalidade principal descrita aqui acima, ummouse de computador é usado para fornecer um botão de entra-da que é usado em conjunto com o movimento do mouse e da ro-da de rolagem para efetuar ajustamentos à lente de aumento.Será entendido, entretanto, que vários outros dispositivosde entrada de usuário conhecidos poderiam ser usados parafornecer controlabilidade rápida da lente de aumento, inclu-indo dispositivos de mouse estacionário, teclados de compu-tador, mesas sensíveis ao toque e comandos de jogos.
De acordo com uma modalidade exemplificada da in-venção, uma vez que o botão de aumento é mantido pressionadotempo o suficiente para entrar no modo de ajustamento, umasub-rotina de mouse é configurada. A sub-rotina de mouse"come" a entrada gerada pelo mouse e a redireciona para ajanela de lente de aumento, que normalmente não recebe en-trada. A entrada do mouse (movimento do mouse e informaçãode rotação de roda de rolagem) é usada para ajustar as con-figurações. Qualquer aplicação "em foco" subjacente não re-cebe movimento do mouse ou notificações de roda de rolagemenquanto a sub-rotina do mouse é configurada. A sub-rotina éliberada tão logo saia do modo de ajustamento, o que ocorreimediatamente mediante a liberação do botão, tal que a apli-cação em foco possa mais uma vez receber entrada do mouse. Aaplicação em foco nunca perde o foco, então não há efeitoslaterais inesperados. Na lente de aumento exemplificada des-crita, as configurações são armazenadas como três valores deregistro: nível de aumento; largura da lente de aumento, empixels; e altura da lente de aumento, em pixels.
Informação considerando "sub-rotinas" utilizáveiscom sistemas operacionais Windows® da Microsoft pode ser en-contrada na Microsoft Developers Network (MSDN) , por exem-plo, em:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwui/html/msdn hook32.asp.
Ver também:
http://msdn.microsoft.com/library/default.asp?url=library/en-us/winui/winui/windowuserinterface/windowing/hooks.asp.
Software adequado para implementação de uma moda-lidade exemplificada da lente de aumento inventiva pode serdescrito em termos de duas classes primárias: MagnifierWin-dow, que implementar o procedimento, criação, atualização decontrolador de tempo e destruição de janela; e MagnifierRen-derer, que implementa captura de imagem de tela e renderiza-ção de janela.
A classe MagnifierWindow cria uma janela com esti-los WS_EX_LAYERED e WS_EX_TRANSPARENT (entre outros). Na i-nicialização, ela determina o tamanho de lente de aumentoinicial e nivel de aumento e inicializa um objeto Magnifier-Renderer. Ela também cria um objeto de controlador de tempo,e em cada segundo do controlador de tempo, chama o métodoAtualizar (...) no objeto MagnifierRenderer para atualizar aimagem e posição da lente de aumento na tela. A janela delente de aumento se fecha quando o usuário clica no botão domouse de lente de aumento uma segunda vez e salva o tamanhoe nivel de aumento. 0 HWND associado com o objeto Magnifier-Window é liberado quando a mensagem WM_CL0SE é recebida.WM QUIT é postada para a bomba de mensagem de processo quan-do a janela é destruída. 0 MagnifierWindow pode ser forneci-25 do com o modo de ajustamento de lente de aumento descritoanteriormente, entrado pressionando-se e mantendo-se pres-sionado o botão do mouse de lente de aumento determinado. 0seguinte é uma listagem exemplificada de métodos constituin-tes e manipuladores de mensagem que podem ser incluído naclasse MagnifierWindow:
- Constructor: Registra a classe de janela Magni-fierWindow e cria uma ocorrência dela; carrega a dll de sub-rotina de mouse;
- Destructor: Verifica para ver ser o HWND associ-ado com o MagnifierWindow foi liberado; destrava a sub-rotina de mouse;
- GetHWND: Retorna o HWND associado com essa ocor-rência da classe MagnifierWindow (clientes podem enviar umamensagem WM_CLOSE para essa janela para fechar a lente deaumento);
- WM CREATE: Determina o melhor modo de lente deaumento (porcentagem de resolução de tela de ativação, ou apartir de configuração de registro) e nível de aumento (pa-drão l,5x, ou configuração de registro). Inicializa o objetoMagnifierRenderer e cria um controlador de tempo de janelapara atualizações;
- WM CLOSE: Destrói o controlador de tempo de atu-alização, salva configurações de registro, chama DestroyWin-dow;
- WM DESTROY: Posta uma mensagem WM_QUIT para abomba de mensagem de processo;
- WM NCDESTROY: Inicializa variáveis de membro declasse;
- WM TIMER: Se o protetor de tela está executando,fecha a lente de aumento; atualiza a animação (os gráficosde exibição na tela que aparecem quando o tamanho e o nívelde aumento estão sendo ajustados) de exibição na tela (OSD),se ativa; obtém a posição atual do ponteiro do mouse e chamaMagnifierRenderer::Update(...) para atualizar a imagem e po-sição da lente de aumento;
-WM DISPLAYCHANGE: Atualiza dimensões da lente deaumento quando as dimensões da tela são mudadas;
- WM ERASEBKGND: Sem operação. Quando essa mensa-gem é recebida, o controle é imediatamente retornado para asJanelas como uma otimização;
- WM MOUSEWHEEL: Essa mensagem é somente recebidaa partir da sub-rotina do mouse (quando ativo); muda o nivelde aumento;
- WM MOUSEMOVE: Essa mensagem é somente recebida apartir da sub-rotina do mouse (quando ativo); muda o tamanhoda janela de lente de aumento (quadro);
- No Botão para Baixo da Lente de Aumento: Entrano modo de redimensionamento; prende o mouse; inicializa oaparecimento gradual de OSD;
- No Botão para Cima da Lente de Aumento: Sai domodo de redimensionamento; destrava o mouse, inicializa odesaparecimento gradual de OSD; se nem aumento nem tamanhofoi alterado, sai da lente de aumento;
- SetBestWindowSize: Dada uma largura e altura de-sejadas, dimensiona a janela da lente de aumento para melhorse ajustar; cada borda da janela muda em aumentos de 2 vezeso aumento atual (isto é, em mag = 1,5, largura de janela émudada em aumentos de 6 pixels) de modo a impedir tremulaçãoda imagem enquanto aumentando e diminuindo o zoom; e- MouseHook: Chamado de volta da sub-rotina demouse; encaminha mensagens de roda do mouse e de mouse paraa janela de lente de aumento. Um ganho de mouse é usado paraimpedir aplicações subjacentes de receber entrada de mouseenquanto alterando o tamanho e aumento da lente de aumento.
MagnifierRenderer
A classe MagnifierRenderer executa as operações decaptura de tela e de renderização. É associada com uma mani-pulação de janela e dado um nivel de aumento. Uma listagemexemplificada de métodos constituintes que pode' ser incluídano MagnifierRenderer segue:
- Constructor: incialização padrão;
- AttachWindow: Associa o objeto MagnifierRenderercom um manipulador de janela. A largura e altura da lente deaumento é igual a largura e altura da janela especificada nahora do chamado. As imagens que representam o quadro de len-te de aumento e máscara de lentes são geradas nessa hora.Sua largura e altura combinam.com a largura e altura da ja-nela especificada. Essas duas imagens são persistidas pararápida composição enquanto renderizando. Esse método podeser chamado repetidamente para levar o MagnifierRenderer ase redimensionar a partir do tamanho da janela;
- SetMagnification: Ajusta o nível de aumento. Es-se método pode ser chamado a qualquer hora para mudar o ní-vel de aumento;
- GetMagnification: Retorna ao nível de aumentoatual;
- SetOSDAlpha: Ajusta a opacidade do gráfico deexibição na tela em modo de ajustamento indicando entradasde usuário adequadas para ajustar a lente de aumento;
- GetOSDAlpha: Obtém a opacidade do gráfico de e-xibição na tela em modo de ajustamento;
- Update: Move e atualiza a lente de aumento. Se otamanho da janela mudou, ela cria um novo mapa de bits demáscara de lente e de quadro. Se o mapa de bits de capturanão muda, nenhuma atualização ocorre, salvando muitos ciclosde atualização de imagem;
- Capture: Dois armazenadores temporários de cap-tura são fornecidos - atual e um anterior; um novo armazena-dor temporário atual é capturado e uma mensagem é retornadaindicando se os armazenadores temporários atual e anteriorsão diferentes;
- Render: Estica a imagem de captura atual, des-mascara os pixels indesejados, copia o quadro no topo;
- CreateFrameAndMask: Cria a máscara de lente,quadro, mapas de bits de. captura atual e anterior, dimensio-nados em relação à largura e altura da janela atual;
- GetBitmapSize: Retorna a largura e altura de umHBITMAP em uma estrutura de SIZE;
- GenerateBorder: Obtém nove mapas de bits de com-ponente e preenche um mapa de bits de destino com eles;
- MaskBitmap: Mascara pixels no mapa de bits dedestino usando o mapa de bits de máscara especificada - pi-xels de destino são multiplicados pelos valores alfa de más-cara ;
- AreBitmapsDifferent: Retorna se dois mapas debits são diferentes, comparando valores de pixel para deter-minar se a área de captura mudou; se a área de captura nãomudou, a lente de aumento não necessita ser atualizada comouma otimização;
- Stretch_lx5: Estica um mapa de bits por um fatorde 1,5.
Processos e funcionalidades exemplificados do Mag-nifierRenderer são descritos abaixo, com relação às FIGs. 7 - 10.
Inicialização
Com relação à FIG. 7, AttachWindow(...) salva omanipulador de janela especificada e cria as imagens para oquadro e a máscara de lentes. As imagens de quadro e de más-cara de lentes combinam a largura e altura de janela. 0 qua-dro é composto de nove elementos individuais. Os elementoscentrais são esticados para fazer um quadro do tamanho exi-gido. Nota-se que as áreas sombreadas nessas imagens repre-sentam pixels transparentes.
Com relação agora à FIG. 8, depois que a imagem doquadro é criada, uma imagem de máscara de lentes é criada damesma maneira. Os pixels opacos na máscara representados pe-la área não sombreada definem uma região onde a imagem esti-cada aparecerá. Nota-se que as áreas sombreadas nessas ima-gens representam pixels transparentes.
0 método MagnifierRenderer::Update(... ) verificapara ver se as dimensões da janela do proprietário mudaram,e se sim, atualiza as imagens de quadro e de máscara de len-tes para alcançar o novo tamanho. Clientes podem chamar At-tachWindow(...) para explicitamente levar as imagens de qua-dro e de máscara de lentes a serem recriadas.
Captura
Com relação à FIG. 9A, o retângulo de captura deimagem fonte está centrado na posição de ponteiro do mouseatual. A largura do Retângulo de Captura ilustrado (que de-fine a região de aumento) é a largura do Retângulo de Janelade Lente de Aumento (quadro de aumento) dividida pelo nivelde aumento. Igualmente, a altura do Retângulo de Captura é aaltura do Retângulo de Janela de Lente de Aumento divida pe-lo nivel de aumento. O método de Captura copia a imagem datela e retorna se a imagem capturada é diferente da imagempreviamente capturada. A imagem capturada é armazenada parauso enquanto renderizando.
Renderização
Como mostrado na FIG. 9B, primeiramente a imagemcapturada é esticada até o tamanho da janela. A seguir, aimagem esticada é mascarada com a máscara de lentes. A se-guir, o quadro é aplicado à imagem esticada. Mediante a en-trada no modo de ajustamento, os gráficos de dicas de redi-mensionamento de quadro de ajustamento de aumento (preferen-cialmente ' transparente - imagens gráficas representam pixelstransparentes) são adicionados à imagem em quadro. Os gráfi-cos de dicas aparecem somente quando o modo de ajustamentoestá ativo.
Atualização
Se a imagem e a posição da lente de aumento muda-ram, então um chamado é feito para::UpdateLayeredWindow(image & position). Se somente a posi-ção mudou, um chamado é feito para::UpdateLayeredWindow(position). Se somente a imagem mudou,um chamado é feito para ::UpdateLayeredWindow(image). A ja-nela é configurada para mais no topo possível na função Up-date ().
Algoritmo de Estiramento l,5x
Uma API de Windows padrão pode ser usada para es-ticar imagens de bit para o quadro de lente de aumento emdiferentes níveis de aumento. Em uma modalidade da invenção,nível de aumento padrão de l,5x utiliza um algoritmo dife-rente para otimizar velocidade e aperfeiçoar a aparência daimagem aumentada.
Como mostrado na FIG. 10A, quando esticando por umfator de 1,5, dois pixels fontes se tornaram três pixels nodestino. O primeiro pixel fonte é copiado para o primeiropixels de destino. O segundo pixel fonte é copiado para oterceiro pixel de destino. O segundo pixel de destino é con-figurado como a média dos primeiros dois pixels fonte.
0 algoritmo de estiramento usado pela lente de au-mento estica as linhas fonte 0, 1, 2, 3, 4, ... nas linhasdestino 0, 2, 3, 5, 6, ... respectivamente como mostrado naFIG. 10B. 0 algoritmo então volta e preenche as linhas 1, 4,7, etc. tirando a média dos pixels a partir de uma linha a-cima e abaixo do pixel de destino, como representado na FIG> 10C.
A presente invenção foi descrita em termos de mo-dalidades preferenciais e exemplificadas dessa. Numerosasoutras modalidades, modificações e variações no escopo e es-pirito das reivindicações em anexo ocorrerão a pessoas ver-sadas na técnica a partir de uma revisão dessa descrição.Nas reivindicações, qualquer uso dos rótulos para variáveisde algoritmo aparecendo na especificação é para conveniênciae esclarecimento e não pretende ter qualquer efeito limitante.

Claims (23)

1. Meio de armazenamento legível por máquina,CARACTERIZADO pelo fato de que contém instruções que, quandoexecutadas por um dispositivo de processamento de dados ten-do uma tela de exibição e dispositivo de entrada de usuário,servem para configurar o dispositivo para fornecer uma lentede aumento de tela de exibição que é controlável por um usu-ário para aumentar partes selecionadas de uma área de traba-lho incluindo janelas abertas na dita tela, a dita lente deaumento fornece um quadro de lente de aumento móvel na qualuma imagem aumentada é apresentada, a dita imagem correspon-de ao conteúdo de tela localizado em uma região de aumentosubjacente ao dito quadro de lente de aumento, aumentado aum nível configurado de aumento, a dita lente de aumento écontrolável por um usuário através do uso do dito dispositi-vo de entrada para ajustar pelo menos um parâmetro da lentede aumento, sem interação do usuário com objetos na tela esem tirar o foco da dita área de trabalho ou de quaisquerjanelas abertas na dita tela.
2. Meio de armazenamento legível por máquina, deacordo com a reivindicação 1, CARACTERIZADO pelo fato de quea lente de aumento é capaz de ativar e desativar através douso do dito dispositivo de entrada, sem interação do usuáriocom objetos na tela e sem tirar o foco da dita área de tra-balho ou de quaisquer janelas abertas na dita tela.
3. Meio de armazenamento legível por máquina, deacordo com a reivindicação 1, CARACTERIZADO pelo fato de quepelo menos um dito parâmetro operacional da lente de aumentocompreende uma dimensão de tamanho do dito quadro de lentede aumento.
4. Meio de armazenamento legivel por máquina, deacordo com a reivindicação 1, CARACTERIZADO pelo fato de quepelo menos um parâmetro operacional compreende um nível deaumento da dita lente de aumento.
5. Meio de armazenamento legível por máquina, deacordo com a reivindicação 1, CARACTERIZADO pelo fato de queum modo de ajustamento da dita lente de aumento pode ser a-tivado usando o dito dispositivo de entrada, e quando o ditomodo de ajustamento está ativado, uma sub-rotina é levada aser configurada, a qual temporariamente direciona a entradado dito dispositivo de entrada para a dita lente de aumentopara alterar pelo menos um dito parâmetro operacional.
6. Meio de armazenamento legível por máquina, deacordo com a reivindicação 5, CARACTERIZADO pelo fato de queo dito dispositivo de entrada é um dispositivo de apontamen-to de computador, e a dita sub-rotina é uma sub-rotina dodito dispositivo.de apontamento de computador.
7. Meio de armazenamento legível por máquina, deacordo com a reivindicação 6, CARACTERIZADO pelo fato de quea sub-rotina direciona para a dita lente de aumento pelo me-nos um dos dados de movimento do ponteiro e dados de rotaçãoda roda de rolagem do dito dispositivo de apontamento decomputador, para alterar pelo menos um dito parâmetro opera-cional da dita lente de aumento.
8. Meio de armazenamento legível por máquina, deacordo com a reivindicação 7, CARACTERIZADO pelo fato de quea sub-rotina direciona para a dita lente de aumento os dadosde movimento do ponteiro, que são usados para ajustar umadimensão de tamanho do quadro de lente de aumento.
9. Meio de armazenamento legível por máquina, deacordo com a reivindicação 7, CARACTERIZADO pelo fato de quea sub-rotina direciona para a dita lente de aumento os ditosdados de rotação de roda de rolagem, que são usados para a-justar um nível de aumento do quadro de lente de aumento.
10. Meio de armazenamento legível por máquina, deacordo com a reivindicação 1, CARACTERIZADO pelo fato de queo dito dispositivo de entrada compreende um dispositivo deapontamento, e a posição e movimento do dito quadro de lentede aumento correspondem à posição e movimento de um cursorna tela do dito dispositivo de apontamento.
11. Meio de armazenamento legível por máquina, deacordo com a reivindicação 1, CARACTERIZADO pelo fato de quea dita imagem aumentada é dinamicamente atualizada para re-fletir mudanças no conteúdo de tela subjacente que ocorremenquanto a lente de aumento está ativada.
12. Meio de armazenamento legível por máquina, deacordo com a reivindicação 2, CARACTERIZADO pelo fato de quea dita lente de aumento é ativada mediante a ativação de umachave no dito dispositivo de entrada de usuário, e entra emum modo de ajustamento mediante a dita chave sendo continua-mente ativada por um período pré-determinado de tempo.
13. Meio de armazenamento legível por máquina, deacordo com a reivindicação 12, CARACTERIZADO pelo fato deque quando a lente de aumento está no dito modo de ajusta-mento, ela apresenta um indicador visual na tela de que omodo de ajustamento está ativo.
14. Meio de armazenamento legível por máquina, deacordo com a reivindicação 13, CARACTERIZADO pelo fato deque o dito indicador visual fornece uma indicação de entra-das de usuário apropriadas para efetuar ajustamento de pelomenos um dito parâmetro operacional da lente de aumento.
15. Meio de armazenamento legível por máquina, deacordo com a reivindicação 14, CARACTERIZADO pelo fato deque o dito indicador visual fornece uma indicação de entra-das de usuário apropriadas para efetuar um ajustamento depelo menos uma dimensão de tamanho do dito quadro de lentede aumento.
16. Meio de armazenamento legível por máquina, deacordo com a reivindicação 13, CARACTERIZADO pelo fato deque o dito indicador visual fornece uma indicação de entra-das de usuário apropriadas para efetuar um ajustamento deuma razão de aumento da dita lente de aumento.
17. Meio de armazenamento legível por máquina, deacordo com a reivindicação 1, CARACTERIZADO pelo fato de quea dita lente de aumento de tela de exibição é configuradapor um estilo de janela de uma interface de programação deaplicação de um sistema operacional, e um mecanismo de com-posição de conteúdo de tela de segundo estágio associado como dito estilo de janelas.
18. Dispositivo de processamento de dados tendouma tela de exibição e um dispositivo de entrada de usuário,CARACTERIZADO pelo fato de que é configurado para forneceruma lente de aumento de tela de exibição que é controlávelpor um usuário para aumentar partes selecionadas de uma áreade trabalho incluindo janelas abertas na dita tela, a ditalente de aumento fornece um quadro de lente de aumento móvelno qual uma imagem aumentada é apresentada, a dita imagemcorresponde ao conteúdo de tela localizado em uma região deaumento subjacente ao dito quadro de lente de aumento, au-mentado a um nivel configurado de aumento, a dita lente deaumento é controlável por um usuário através do uso do ditodispositivo de entrada para ajustar pelo menos um parâmetrooperacional da lente de aumento, sem interação do usuáriocom objetos na tela e sem tirar o foco da dita área de tra-balho e de quaisquer janelas abertas na dita tela.
19. Dispositivo de processamento de dados, de a-cordo com a reivindicação 18, CARACTERIZADO pelo fato de quea lente de aumento é capaz de ativação e desativação atravésdo uso do dito dispositivo de entrada, sem interação do usu-ário com objetos na tela e sem tirar o foco da dita área detrabalho ou de quaisquer janelas abertas na dita tela.
20. Dispositivo de processamento de dados, de a-cordo com a reivindicação 18, CARACTERIZADO pelo fato de quea dita lente de aumento de tela de exibição é configuradapor um estilo de janelas de uma interface de programação deaplicação de um sistema operacional, e um mecanismo de com-posição de conteúdo de tela de segundo estágio associado como dito estilo de janelas.
21. Método de configurar um dispositivo de proces-samento de dados, CARACTERIZADO pelo fato de que tem uma te-Ia de exibição e dispositivo de entrada de usuário para for-necer uma lente de aumento de tela de exibição que é contro-lável por um usuário para aumentar partes selecionadas deuma área de trabalho incluindo janelas abertas na dita tela,a dita lente de aumento fornece um quadro de lente de aumen-to móvel no qual uma imagem aumentada é apresentada, a ditaimagem corresponde ao conteúdo de tela localizado em uma re-gião de aumento subjacente ao dito quadro de lente de aumen-to, aumentado a um nivel configurado de aumento, a dita Ien-te de aumento é controlável por um usuário através do uso dodito dispositivo de entrada para ajustar pelo menos um parâ-metro operacional da lente de aumento, sem interação do usu-ário com objetos na tela e sem tirar o foco da dita área detrabalho e de quaisquer janelas abertas na dita tela.
22. Método, de acordo com a reivindicação 21,CARACTERIZADO pelo fato de. que a lente de aumento é capaz deativação e desativação através do uso do dito dispositivo deentrada, sem interação do usuário com objetos na tela e semtirar o foco da dita área de trabalho ou de quaisquer jane-Ias abertas na dita tela.
23. Método, de acordo com a reivindicação 21,CARACTERIZADO pelo fato de que a lente de aumento de tela deexibição é configurada por um estilo de janelas de uma in-terface de programação de aplicação de um sistema operacio-nal, e um mecanismo de composição de conteúdo de tela de se-gundo estágio associado com o dito estilo de janelas.
BRPI0614901-4A 2005-08-04 2006-08-02 lente de aumento virtual com funcionalidades de controle rápido BRPI0614901A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/196.511 2005-08-04
US11/196,511 US7694234B2 (en) 2005-08-04 2005-08-04 Virtual magnifying glass with on-the fly control functionalities
PCT/US2006/030151 WO2007019193A2 (en) 2005-08-04 2006-08-02 Virtual magnifying glass with on-the-fly control functionalities

Publications (1)

Publication Number Publication Date
BRPI0614901A2 true BRPI0614901A2 (pt) 2011-04-19

Family

ID=37718976

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0614901-4A BRPI0614901A2 (pt) 2005-08-04 2006-08-02 lente de aumento virtual com funcionalidades de controle rápido

Country Status (12)

Country Link
US (2) US7694234B2 (pt)
EP (1) EP1910917A2 (pt)
JP (1) JP5130215B2 (pt)
KR (1) KR20080040696A (pt)
CN (1) CN101238430B (pt)
BR (1) BRPI0614901A2 (pt)
CA (1) CA2617318A1 (pt)
MX (1) MX2008001616A (pt)
NO (1) NO20080374L (pt)
RU (1) RU2409856C2 (pt)
TW (2) TW200719245A (pt)
WO (1) WO2007019193A2 (pt)

Families Citing this family (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7760187B2 (en) * 2004-07-30 2010-07-20 Apple Inc. Visual expander
US20030084087A1 (en) * 2001-10-31 2003-05-01 Microsoft Corporation Computer system with physical presence detector to optimize computer task scheduling
USD579949S1 (en) * 2004-12-17 2008-11-04 Bsh Bosch Und Siemens Hausgeraete Gmbh Display for dishwasher
US7900158B2 (en) 2005-08-04 2011-03-01 Microsoft Corporation Virtual magnifying glass with intuitive use enhancements
US7949955B2 (en) * 2005-08-04 2011-05-24 Microsoft Corporation Virtual magnifying glass system architecture
US7694234B2 (en) * 2005-08-04 2010-04-06 Microsoft Corporation Virtual magnifying glass with on-the fly control functionalities
US8108785B2 (en) * 2006-01-09 2012-01-31 Microsoft Corporation Supporting user multi-tasking with clipping lists
US8312372B2 (en) * 2006-02-10 2012-11-13 Microsoft Corporation Method for confirming touch input
US7991225B2 (en) * 2006-03-03 2011-08-02 University Of Alaska Methods and systems for dynamic color equalization
US20070268317A1 (en) * 2006-05-18 2007-11-22 Dan Banay User interface system and method for selectively displaying a portion of a display screen
US7856605B2 (en) * 2006-10-26 2010-12-21 Apple Inc. Method, system, and graphical user interface for positioning an insertion marker in a touch screen display
US8570278B2 (en) 2006-10-26 2013-10-29 Apple Inc. Portable multifunction device, method, and graphical user interface for adjusting an insertion point marker
US20100023894A1 (en) * 2006-12-20 2010-01-28 France Telecom System for selecting elements displayed on a screen
US8689132B2 (en) * 2007-01-07 2014-04-01 Apple Inc. Portable electronic device, method, and graphical user interface for displaying electronic documents and lists
US20090027421A1 (en) * 2007-07-27 2009-01-29 Franklin Servan-Schreiber Computer system with a zooming capability and method
JP2009112356A (ja) * 2007-11-02 2009-05-28 Ge Medical Systems Global Technology Co Llc 超音波診断装置
US8650507B2 (en) * 2008-03-04 2014-02-11 Apple Inc. Selecting of text using gestures
US8201109B2 (en) * 2008-03-04 2012-06-12 Apple Inc. Methods and graphical user interfaces for editing on a portable multifunction device
US20090241059A1 (en) * 2008-03-20 2009-09-24 Scott David Moore Event driven smooth panning in a computer accessibility application
US20090254853A1 (en) * 2008-04-03 2009-10-08 Donald Jacob Method of viewing a single document in multiple scaled views
JP4661909B2 (ja) * 2008-06-04 2011-03-30 富士ゼロックス株式会社 情報表示装置及びプログラム
JP2010044628A (ja) * 2008-08-13 2010-02-25 Access Co Ltd コンテンツ表示倍率変更方法、およびコンテンツ表示倍率変更プログラム
US20100077304A1 (en) * 2008-09-19 2010-03-25 Microsoft Corporation Virtual Magnification with Interactive Panning
US8887061B2 (en) * 2008-09-26 2014-11-11 Microsoft Corporation Variable screen magnifier user interface
EP2175349A1 (en) * 2008-10-08 2010-04-14 Research in Motion Limited Method and system for displaying an image on a handheld electronic communication device
JP5470861B2 (ja) * 2009-01-09 2014-04-16 ソニー株式会社 表示装置及び表示方法
US20100235734A1 (en) * 2009-03-16 2010-09-16 Bas Ording Methods and Graphical User Interfaces for Editing on a Multifunction Device with a Touch Screen Display
US20100287493A1 (en) * 2009-05-06 2010-11-11 Cadence Design Systems, Inc. Method and system for viewing and editing an image in a magnified view
USD637619S1 (en) * 2009-08-20 2011-05-10 Smart Technologies Ulc Portion of a display screen with an icon
WO2011090467A1 (en) * 2009-12-28 2011-07-28 Hillcrest Laboratories Inc. Tv internet browser
US20110173564A1 (en) * 2010-01-13 2011-07-14 Microsoft Corporation Extending view functionality of application
US20110197156A1 (en) * 2010-02-09 2011-08-11 Dynavox Systems, Llc System and method of providing an interactive zoom frame interface
US9804727B2 (en) 2010-03-09 2017-10-31 Freedom Scientific, Inc. Flexible display of visual content on multiple display devices
CN102214060A (zh) * 2010-04-12 2011-10-12 宏碁股份有限公司 触控式电子装置及其窗口操控方法
US20110261081A1 (en) * 2010-04-23 2011-10-27 Weinblatt Lee S Testing of Internet Ads
US8856682B2 (en) * 2010-05-11 2014-10-07 AI Squared Displaying a user interface in a dedicated display area
US9401099B2 (en) 2010-05-11 2016-07-26 AI Squared Dedicated on-screen closed caption display
CN102279772B (zh) * 2010-06-11 2014-10-15 宏达国际电子股份有限公司 软件对象的动态互动方法与电子装置
US8473861B2 (en) * 2010-06-17 2013-06-25 Freedom Scientific, Inc. System wide text viewer
US8667054B2 (en) 2010-07-12 2014-03-04 Opus Medicus, Inc. Systems and methods for networked, in-context, composed, high resolution image viewing
US8296359B2 (en) 2010-07-12 2012-10-23 Opus Medicus, Inc. Systems and methods for networked, in-context, high resolution image viewing
US8804186B2 (en) * 2010-07-13 2014-08-12 Tracer Imaging Llc Automated lenticular photographic system
US9024977B2 (en) 2010-08-02 2015-05-05 International Business Machines Corporation Resizing objects in regions of virtual universes
US8522158B2 (en) 2010-10-19 2013-08-27 Apple Inc. Systems, methods, and computer-readable media for providing a dynamic loupe for displayed information
US20120124514A1 (en) * 2010-11-11 2012-05-17 Microsoft Corporation Presentation focus and tagging
KR101175481B1 (ko) * 2010-11-18 2012-08-20 삼성메디슨 주식회사 확대 영상을 제공하는 초음파 시스템 및 방법
US20120159395A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Application-launching interface for multiple modes
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
WO2012083563A1 (zh) * 2010-12-24 2012-06-28 天津九安医疗电子股份有限公司 一种血压测量系统
JP5881739B2 (ja) 2011-01-03 2016-03-09 フリーダム サイエンティフィック インコーポレイテッド 非一時的コンピュータ可読媒体
DE202011001805U1 (de) 2011-01-22 2011-04-28 Jakob, Gerhard Vergrößerungsglas mit Klemmhalter für mobile Navigationsgeräte
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US9092130B2 (en) 2011-05-31 2015-07-28 Apple Inc. Devices, methods, and graphical user interfaces for document manipulation
WO2013009413A1 (en) 2011-06-06 2013-01-17 Intellitact Llc Relative touch user interface enhancements
CN102393952A (zh) * 2011-07-01 2012-03-28 深圳市斯尔顿科技有限公司 一种图像放大测量方法及装置
KR101834987B1 (ko) * 2011-08-08 2018-03-06 삼성전자주식회사 휴대용 단말기에서 화면 캡쳐를 위한 장치 및 방법
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
CN102521020B (zh) * 2011-10-26 2014-05-21 华为终端有限公司 用于移动终端的应用屏幕截图方法和装置
US9678647B2 (en) * 2012-02-28 2017-06-13 Oracle International Corporation Tooltip feedback for zoom using scroll wheel
EP2850610B1 (en) * 2012-05-18 2020-11-04 BlackBerry Limited Systems and methods to manage zooming
CN103455234A (zh) * 2012-06-01 2013-12-18 腾讯科技(深圳)有限公司 显示应用程序界面的方法及装置
RU2509377C2 (ru) * 2012-06-05 2014-03-10 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." Способ и система и для просмотра изображения на устройстве отображения
DE202012011321U1 (de) 2012-06-21 2013-02-19 Gerhard Jacob Alarmanlage gegen Taschendiebe
JP6035931B2 (ja) 2012-07-13 2016-11-30 ソニー株式会社 情報処理装置、情報処理方法、および情報処理プログラム
WO2014022919A1 (en) * 2012-08-10 2014-02-13 Transaxy Inc. System for entering data into a data processing system
JP2014038560A (ja) * 2012-08-20 2014-02-27 Canon Inc 情報処理装置、情報処理方法及びプログラム
TWI462013B (zh) * 2012-12-10 2014-11-21 Dexin Corp 輸入裝置及其執行顯示畫面放大之方法
KR101416749B1 (ko) * 2012-12-13 2014-07-08 주식회사 케이티 Tv 재생 장치 및 방법
CN103885575B (zh) * 2012-12-19 2017-04-12 宝德科技股份有限公司 输入装置及以输入装置执行显示画面放大的方法
AU350153S (en) * 2013-01-09 2013-08-13 Samsung Electronics Co Ltd Display screen for an electronic device
WO2014152581A1 (en) 2013-03-14 2014-09-25 Huawei Technologies Co., Ltd. Virtual magnifying lens touch graphic effect for mobile devices
JP6131072B2 (ja) * 2013-03-14 2017-05-17 シャープ株式会社 表示制御装置
DE202013004567U1 (de) 2013-05-16 2013-07-05 Gerhard Jacob Alarmanlage mit Smartphone, durch App und Empfänger gegen Taschendiebe
EP3032306B1 (en) * 2013-08-09 2018-10-10 Musashi Engineering, Inc. Focus adjustment method and device therefor
US10108317B2 (en) * 2013-10-14 2018-10-23 Schneider Electric Software, Llc Configuring process simulation data for semantic zooming
CN104731492B (zh) * 2013-12-19 2018-07-24 鸿合科技股份有限公司 一种魔术笔及其显示控制方法
CN104731396B (zh) * 2013-12-19 2018-03-02 鸿合科技有限公司 一种魔术笔及其显示控制方法
KR20150105140A (ko) * 2014-03-07 2015-09-16 삼성전자주식회사 휴대 단말기 및 컨텐츠 확대 표시 방법
CN103942001B (zh) * 2014-05-12 2017-02-15 上海卓悠网络科技有限公司 一种移动终端的自由截屏方法和移动终端
US9658713B2 (en) * 2014-09-22 2017-05-23 Intel Corporation Systems, methods, and applications for dynamic input mode selection based on whether an identified operating system includes an application program interface associated with the input mode
TWI583971B (zh) * 2015-01-16 2017-05-21 旺矽科技股份有限公司 檢測設備之操作方法
KR101586321B1 (ko) * 2015-03-11 2016-01-19 엘지전자 주식회사 디스플레이 디바이스 및 그 제어 방법
US20160334974A1 (en) * 2015-05-14 2016-11-17 Gilad GRAY Generating graphical representations of data using multiple rendering conventions
US10275436B2 (en) * 2015-06-01 2019-04-30 Apple Inc. Zoom enhancements to facilitate the use of touch screen devices
CN106604146A (zh) * 2015-10-20 2017-04-26 中兴通讯股份有限公司 机顶盒显示界面放大的方法和装置
JP7006184B2 (ja) * 2017-11-27 2022-01-24 富士通株式会社 制御プログラム、制御方法および制御装置
US11157130B2 (en) * 2018-02-26 2021-10-26 Adobe Inc. Cursor-based resizing for copied image portions
USD871431S1 (en) 2018-04-12 2019-12-31 Reliance Worldwide Corporation Display screen or portion thereof with graphical user interface
USD871432S1 (en) 2018-04-12 2019-12-31 Reliance Worldwide Corporation Display screen or portion thereof with graphical user interface
USD857053S1 (en) 2018-04-12 2019-08-20 Reliance Worldwide Corporation Display screen or portion thereof with animated graphical user interface
USD875777S1 (en) * 2018-05-25 2020-02-18 Apple Inc. Electronic device with animated graphical user interface
JP2018190469A (ja) * 2018-08-22 2018-11-29 キヤノン株式会社 画像形成装置、コンピュータプログラムおよび記録媒体
CN110874172B (zh) * 2018-08-31 2022-09-30 北京京东尚科信息技术有限公司 放大app界面的方法、装置、介质及电子设备
USD910709S1 (en) 2018-10-26 2021-02-16 Reliance Worldwide Corporation Display screen or portion thereof with graphical user interface
CN110032326A (zh) * 2019-03-29 2019-07-19 网易(杭州)网络有限公司 移动终端显示画面的控制方法、装置、设备和存储介质
CN110096324B (zh) * 2019-04-22 2022-11-25 四川易简天下科技股份有限公司 一种基于windows系统的自动过滤自身窗口的高效抓屏方法
US11379113B2 (en) 2019-06-01 2022-07-05 Apple Inc. Techniques for selecting text
US11908340B2 (en) * 2019-07-24 2024-02-20 Arris Enterprises Llc Magnification enhancement of video for visually impaired viewers
WO2021050421A1 (en) 2019-09-09 2021-03-18 Paige.Al, Inc. Systems and methods for processing images of slides for digital pathology
DE102020107010A1 (de) 2020-03-13 2021-09-16 Navvis Gmbh Verfahren und vorrichtung zum präzisen auswählen einer raumkoordinate mittels eines digitalen bildes
WO2023060414A1 (en) * 2021-10-12 2023-04-20 Citrix Systems, Inc. Adjustable magnifier for virtual desktop
CN118092750B (zh) * 2024-04-29 2024-08-13 杭州度康科技有限公司 适用于低视力人群的双屏助视显示方法、装置及设备

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03292524A (ja) 1990-04-11 1991-12-24 Oki Electric Ind Co Ltd カーソル移動方式
JPH04142661A (ja) * 1990-10-04 1992-05-15 Toshiba Corp 情報処理装置
US5375199A (en) 1991-06-04 1994-12-20 Digital Equipment Corporation System monitoring method and device including a graphical user interface to view and manipulate system information
JP3597543B2 (ja) 1992-10-16 2004-12-08 富士写真フイルム株式会社 カーソル制御方法および装置
DE69315969T2 (de) 1992-12-15 1998-07-30 Sun Microsystems Inc Darstellung von Informationen in einem Anzeigesystem mit transparenten Fenstern
CA2140164A1 (en) 1994-01-27 1995-07-28 Kenneth R. Robertson System and method for computer cursor control
US5808604A (en) 1994-03-10 1998-09-15 Microsoft Corporation Apparatus and method for automatically positioning a cursor on a control
JP2776246B2 (ja) 1994-05-31 1998-07-16 日本電気株式会社 マウスカーソル追従型拡大表示の移動装置
JP3890621B2 (ja) 1995-04-21 2007-03-07 ソニー株式会社 画像表示装置及び方法
US5808601A (en) 1995-09-12 1998-09-15 International Business Machines Corporation Interactive object selection pointer method and apparatus
US5754348A (en) 1996-05-14 1998-05-19 Planetweb, Inc. Method for context-preserving magnification of digital image regions
US6128006A (en) * 1998-03-26 2000-10-03 Immersion Corporation Force feedback mouse wheel and other control wheels
JP2000221874A (ja) * 1999-01-29 2000-08-11 Hitachi Eng Co Ltd 地図表示装置
FI20001506A7 (fi) * 1999-10-12 2001-04-13 Myorigo Oy Kädessäpidettävän laitteen toimintamenetelmä
US7197718B1 (en) * 1999-10-18 2007-03-27 Sharp Laboratories Of America, Inc. Interactive virtual area browser for selecting and rescaling graphical representations of displayed data
JP3345600B2 (ja) * 2000-04-10 2002-11-18 コナミ株式会社 ゲームシステムおよびコンピュータ読取可能な記憶媒体
US7450114B2 (en) * 2000-04-14 2008-11-11 Picsel (Research) Limited User interface systems and methods for manipulating and viewing digital documents
US6704034B1 (en) 2000-09-28 2004-03-09 International Business Machines Corporation Method and apparatus for providing accessibility through a context sensitive magnifying glass
KR100359921B1 (ko) * 2000-11-24 2002-11-07 엘지전자 주식회사 디스플레이 영상의 패닝 및 줌인 방법
JP2003050653A (ja) * 2001-07-18 2003-02-21 Internatl Business Mach Corp <Ibm> 入力イベントの発生方法及びその方法を備える情報端末
US8117565B2 (en) 2001-10-18 2012-02-14 Viaclix, Inc. Digital image magnification for internet appliance
CA2370751A1 (en) 2002-02-05 2003-08-05 Garth B.D. Shoemaker Fast and accurate rendering of pliable display technology distortions using pre-calculated texel coverages
JP2003287424A (ja) * 2002-03-28 2003-10-10 Mitsubishi Electric Corp ナビゲーション装置および地図情報表示方法
US20030210262A1 (en) 2002-05-10 2003-11-13 Tripath Imaging, Inc. Video microscopy system and multi-view virtual slide viewer capable of simultaneously acquiring and displaying various digital views of an area of interest located on a microscopic slide
US7009600B2 (en) 2002-09-19 2006-03-07 International Business Machines Corporation Data processing system display screen including an image alteration area
JP4266158B2 (ja) * 2003-11-28 2009-05-20 株式会社東芝 情報処理装置および表示制御方法
US7429993B2 (en) * 2004-09-17 2008-09-30 Microsoft Corporation Method and system for presenting functionally-transparent, unobtrusive on-screen windows
US7900158B2 (en) 2005-08-04 2011-03-01 Microsoft Corporation Virtual magnifying glass with intuitive use enhancements
US7694234B2 (en) * 2005-08-04 2010-04-06 Microsoft Corporation Virtual magnifying glass with on-the fly control functionalities
US7949955B2 (en) 2005-08-04 2011-05-24 Microsoft Corporation Virtual magnifying glass system architecture

Also Published As

Publication number Publication date
RU2409856C2 (ru) 2011-01-20
CN101238430B (zh) 2010-06-16
WO2007019193A2 (en) 2007-02-15
TW200719245A (en) 2007-05-16
US20070033544A1 (en) 2007-02-08
CA2617318A1 (en) 2007-02-15
US20100235736A1 (en) 2010-09-16
MX2008001616A (es) 2008-02-19
WO2007019193A3 (en) 2008-01-03
TW201337784A (zh) 2013-09-16
EP1910917A2 (en) 2008-04-16
RU2008104025A (ru) 2009-08-10
JP5130215B2 (ja) 2013-01-30
US7694234B2 (en) 2010-04-06
JP2009503742A (ja) 2009-01-29
NO20080374L (no) 2008-02-27
KR20080040696A (ko) 2008-05-08
CN101238430A (zh) 2008-08-06

Similar Documents

Publication Publication Date Title
BRPI0614901A2 (pt) lente de aumento virtual com funcionalidades de controle rápido
US7712046B2 (en) Virtual magnifying glass with intuitive use enhancements
US7949955B2 (en) Virtual magnifying glass system architecture
US5651107A (en) Method and apparatus for presenting information in a display system using transparent windows
US7274377B2 (en) Viewport panning feedback system
JP2759700B2 (ja) イメージ・エディタを作動する方法
CN100474221C (zh) 用于查看重叠对象的带有单层模式的计算机接口
CN101002252B (zh) 用于呈现合成桌面窗口的方法
JP4808158B2 (ja) デスクトップ表現を描画するためのウィンドウを定義するデータ構造を格納するコンピュータ読み取り可能な媒体、およびデータ処理システム
US8074181B2 (en) Screen magnifier panning model with dynamically resizable panning regions
US9047004B2 (en) Interface element for manipulating displayed objects on a computer interface
US5815151A (en) Graphical user interface
US20070022389A1 (en) Computer Interface Having A Virtual Single-Layer Mode For Viewing Overlapping Objects
US20070216712A1 (en) Image transformation based on underlying data
JP2009537903A (ja) 表示画面の一部分を選択表示するためのユーザーインターフェースシステムと方法
WO2018198703A1 (ja) 表示装置
Agarwal et al. WidgetLens: A system for adaptive content magnification of widgets
Tomitsch Trends and evolution of window interfaces
Krebs JDraw: a graphics application in Java

Legal Events

Date Code Title Description
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE A 7A ANUI DADE.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: REFERENTE AO DESPACHO 8.6 PUBLICADO NA RPI 2215 DE 18/06/2013.