BE1025598A1 - Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld - Google Patents

Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld Download PDF

Info

Publication number
BE1025598A1
BE1025598A1 BE20185041A BE201805041A BE1025598A1 BE 1025598 A1 BE1025598 A1 BE 1025598A1 BE 20185041 A BE20185041 A BE 20185041A BE 201805041 A BE201805041 A BE 201805041A BE 1025598 A1 BE1025598 A1 BE 1025598A1
Authority
BE
Belgium
Prior art keywords
bitmap
pixels
overlay
computer
image
Prior art date
Application number
BE20185041A
Other languages
English (en)
Other versions
BE1025598B1 (nl
Inventor
Lambert Jacobs
Original Assignee
Inventrans Bvba
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 Inventrans Bvba filed Critical Inventrans Bvba
Priority to PCT/EP2018/075836 priority Critical patent/WO2019063495A2/en
Priority to US16/650,048 priority patent/US20210026508A1/en
Publication of BE1025598A1 publication Critical patent/BE1025598A1/nl
Application granted granted Critical
Publication of BE1025598B1 publication Critical patent/BE1025598B1/nl

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03543Mice or pucks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/169Annotation, e.g. comment data or footnotes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/37Details of the operation on graphic patterns
    • G09G5/377Details of the operation on graphic patterns for mixing or overlaying two or more graphic patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0382Plural input, i.e. interface arrangements in which a plurality of input device of the same type are in communication with a PC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04804Transparency, e.g. transparent or translucent windows

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)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Position Input By Displaying (AREA)

Abstract

Een computer-geïmplementeerde werkwijze (5000) voor het overlayen van een grafisch beeld in een rekenapparaat, waarbij de werkwijze de stappen omvat van: a) het verschaffen van een semi- transparant overlayvenster met een alfa-transparantiewaarde α in het bereik van 1% tot 99% en omvattende een eerste bitmap; het herhaaldelijk uitvoeren van de volgende stappen: b) het nemen van een screenshot, waardoor een tweede bitmap bekomen wordt; c) het bepalen van ten minste één kenmerk van de tweede bitmap; e) het aanpassen van de alfa-transparantiewaarde van het overlayvenster en/of het aanpassen van een of meer pixelwaarden van de eerste bitmap, op basis van het ten minste één bepaald kenmerk. De overlaywerkwijze kan verder een verticale blak omvatten om verschillende gebieden te definiëren die individueel aangepast kunnen worden, afhankelijk van de beeldinhoud onder de gebieden.

Description

WERKWIJZE, INRICHTING EN COMPUTERPROGRAMMA VOOR HET OVERLAYEN VAN EEN GRAFISCH BEELD
Domein van de uitvinding
De onderhavige uitvinding heeft in het algemeen betrekking op het gebied van grafisch overlayen in een computersysteem. Meer bepaald heeft de onderhavige uitvinding betrekking op een computer-geïmplementeerde werkwijze voor het verschaffen van een grafische overlay in een computerinrichting of in een weergave-inrichting. De onderhavige uitvinding heeft tevens betrekking op een computerinrichting geconfigureerd voor het uitvoeren van een dergelijke werkwijze, en op een computerprogrammaproduct voor het uitvoeren van een dergelijke werkwijze in een computerinrichting of in een weergave-inrichting. De onderhavige uitvinding heeft tevens betrekking op een draagbaar rekenapparaat en op een weergave-inrichting.
Achtergrond van de uitvinding
FIG. 1 toont een schematisch blokdiagram van een klassiek computersysteem 100 omvattende een computerinrichting 101 (bv. een desktopcomputer), met een toetsenbordingang verbonden met een toetsenbord 102, en een muisingang verbonden met een muisinrichting 103, en een video-uitgang verbonden met een display of monitor of scherm 104. De computerinrichting 101 omvat een centrale verwerkingseenheid CPU waarop een multi-tasking besturingssysteem O/S draait met een grafische gebruikersinterface GUI, en één of meerdere software-applicaties zoals bv. een tekstviewer of een teksteditor. Invoer vanaf het toetsenbord 102 en muisinrichting 103 wordt doorgaans behandeld door device drivers (apparaatstuurprogramma's) die informatie ontvangen van één of meerdere ingangspoort(en). Dergelijke computersystemen en applicatieprogramma's zijn gekend in de stand der techniek.
In het specifieke voorbeeld van FIG. 1, genereert de computerinrichting 101 een grafisch beeld dat op het display 104 wordt weergegeven zoals aangegeven door het rechthoekige gebied 109 (getoond met afgeronde hoeken en enigszins verschoven ten opzichte van de displayranden voor illustratieve doeleinden). Het grafisch beeld 109 van FIG. 1 omvat beeldgedeelten gerelateerd aan een desktopvenster (zichtbaar aan de linkerzijde van het scherm 104), en gerelateerd aan een applicatievenster dat een tekstdocument toont (zichtbaar aan de rechterzijde van het scherm 104).
Ongeveer twee of drie decennia geleden, toen het internet nog in de kinderschoenen stond, gaven veel mensen er de voorkeur aan om tekstuele informatie afgedrukt op papier te lezen (of te bestuderen) in plaats van rechtstreeks vanaf een scherm, dat toentertijd doorgaans een kathodestraalbuis- (CRT, Cathode Ray Tube) scherm was. In die tijd werd de meeste informatie, bijvoorbeeld technische informatie, datasheets, productcatalogi, handleidingen, computertijdschriften, etc. primair in afgedrukte vorm gedistribueerd en was minder informatie beschikbaar in elektronische vorm.
BE2018/5041
In tegenstelling daarmee worden tegenwoordig (anno 2017) zeer grote hoeveelheden informatie in elektronische vorm verschaft of beschikbaar gesteld, en veel lezers geven er de voorkeur aan om rechtstreeks vanaf een scherm te lezen, in plaats van de informatie eerst op papier af te drukken en vervolgens de papieren versie te lezen. Deze wijziging is waarschijnlijk een gevolg van de komst van LCD-schermen (stabiel beeld, hoge resolutie), de groei en snelheid van het internet, de toenemende hoeveelheid informatie die elektronisch beschikbaar is, het groeiend bewustzijn om bomen te sparen door het afdrukken te verminderen, de beschikbaarheid van hulpmiddelen om documenten elektronisch te beheren (bv. scannen, bewerken, annoteren, zoeken), de toenemende grootte van opslaginrichtingen (bv. harde schijf, geheugenstick), de mogelijkheid en snelheid om elektronisch te zoeken, de trend naar een papierloos kantoor, en de komst van draagbare apparaten (zoals smartphones, tablets, etc).
De technologie is in de laatste paar decennia aanzienlijk geëvolueerd. Enerzijds is afdrukken gemakkelijker geworden, en met de komst van laserprinters en inktjetprinters zijn printersnelheid en printerkwaliteit aanzienlijk verhoogd (vergeleken met bijvoorbeeld een matrixprinter). Anderzijds is displaykwaliteit ook aanzienlijk verhoogd, en LCD-panelen met hoge resolutie (bv. met 1920 x 1080 pixels of zelfs 3840 x 2160 aan 60 Hz beeldfrequentie) zijn alomtegenwoordig. Computers zijn sneller geworden, met meerdere processorkernen die op hoge snelheid werken (bv. aan 2 GHz), met meer RAM (bv. ten minste 4 of ten minste 8 Gigabytes RAM) waardoor meerdere applicaties gelijktijdig uitgevoerd kunnen worden.
Voor draagbare apparaten, in het bijzonder smartphones, is dezelfde trend zichtbaar: hoge schermresolutie (bijvoorbeeld 1920 x 1080 pixels, of 2560 x 1440 pixels, of 3840 x 2160 of 4096 x 2160 pixels zijn zeer gebruikelijk), meerdere processorkernen die aan hoge kloksnelheid werken (bv. 1,5 GHz of meer), grote geheugengrootte (bv. 4 Gigabytes RAM en 32 Gigabytes flash), etc. Maar het afdrukken vanaf deze apparaten is ook zeer eenvoudig, bv. gebruikmakende van een draadloze verbinding (bv. wifi) in plaats van kabels.
Mensen hebben dus nog steeds een keuze tussen lezen op het scherm versus afdrukken en lezen op papier. Echter, deze technologische vooruitgang maakt het misschien moeilijker voor mensen om informatie op een scherm te lezen.
Terwijl een hogere beeldresolutie doorgaans een scherper beeld betekent, betekent het doorgaans ook dat de lettergrootte kleiner is, en dat meer tekst op het scherm kan getoond worden. Kleinere letters en meer informatie op zichzelf maken het niet altijd gemakkelijker om die informatie daadwerkelijk te lezen, en kunnen eerder de moeilijkheid van het lezen van informatie vergroten.
Een eerste probleem dat men tegenkomt bij het lezen van tekstuele informatie op een scherm, is dat veel mensen het moeilijk vinden om geconcentreerd te blijven wanneer het vereist is om grote hoeveelheden tekst aandachtig te lezen (bv. te bestuderen), vooral wanneer de tekst niet veel opmaak bevat (zoals vette of onderstreepte karakters, titels, verschillende kleuren, verschillende
BE2018/5041 lettertypes, blanco regels, etc.). Dit is bijvoorbeeld het geval bij het lezen of bestuderen van gepubliceerde octrooidocumenten.
Dit eerste probleem wordt onderkend in de stand der techniek, en wordt bijvoorbeeld aangepakt door een tooi (hulpmiddel) gekend als LineReader, dat ten tijde van het schrijven van dit document commercieel beschikbaar is op het internet. Dit tooi verschaft een grafisch overlayvenster 483 met een semi-transparante (gedeeltelijk doorzichtige) lijn 310 die de muisaanwijzer 399 volgt, zoals schematisch geïllustreerd in FIG. 3. In FIG. 3 is de lijn 310 grijs gekleurd omdat octrooidocumenten nog steeds gedeponeerd moeten worden in zwart en wit, maar in werkelijkheid kan de lijn 310 bijvoorbeeld rood of blauw gekleurd zijn, hetgeen opvallender is en eenvoudiger te onderscheiden is dan de oorspronkelijke (native) muisaanwijzer of muiscursor 399 die doorgaans verschaft wordt door een besturingssysteem (zoals bv. Mac O/S van Apple Inc. met hoofdzetel in Cupertino, of Windows van Microsoft Corporation, Redmond), vooral op hoge-resolutie-schermen. Mensen kunnen dit hulpmiddel gebruiken om tekstuele informatie die zij op het scherm aan het lezen zijn, te onderlijnen. De lijn kan het vermogen van een gebruiker verhogen om gefocust en geconcentreerd te blijven.
Echter, voor zover als gekend bij de uitvinders, is er geen hulpmiddel op de markt beschikbaar dat het voor een gebruiker gemakkelijker maakt om gegevens in een tabel of werkblad te vinden, of te bewerken of te verifiëren, of om een bepaalde cel te lokaliseren. Hoewel er letterlijk honderden miljoenen mensen zijn die al minstens twee decennia lang dagelijks gebruik maken van spreadsheets en werkbladen, is er geen voor de hand liggende oplossing gevonden.
Een ander probleem dat men tegenkomt bij het lezen of bestuderen van documenten op het scherm, of in het algemeen, wanneer men vele uren per dag doorbrengt voor een computerscherm, is dat veel mensen oogvermoeidheid ervaren, vooral bij het lezen van grote hoeveelheden tekst op een heldere achtergrond (bv. bij het lezen van zwarte tekst op een witte achtergrond). Helaas verschaffen veel programma's (bv. PDF-viewers, teksteditors, etc.) en veel webpages een heldere, witte achtergrond, waarschijnlijk omdat deze programma's ontworpen zijn om de informatie te vertonen op de wijze waarop deze zal afgedrukt worden (zoals het acroniem WYSIWYG, dat staat voor what you see is what you get en dat wat je ziet is wat je krijgt betekent). Schermen die beelden tonen met relatief grote gedeelten van zwarte tekst op een witte achtergrond, sturen relatief grote hoeveelheden lichtenergie naar de ogen, hetgeen zeer ongemakkelijk is voor veel mensen. Dit ongemak neemt doorgaans toe als mensen meer uren voor een computerscherm doorbrengen, als de grootte van het scherm toeneemt, als de afstand tot het scherm afneemt, of combinaties hiervan, en is doorgaans erger in een slecht verlichte kamer.
Dit probleem wordt eveneens onderkend in de stand der techniek, en één van de hulpmiddelen beschikbaar in de markt om dit probleem aan te pakken is gekend als F.Lux, dat een schermvullende semi-transparante grafische overlay verschaft, schematisch weergegeven in FIG. 5. Dit
BE2018/5041 tool kan ook gebruikt worden om de zogenoemde kleurtemperatuur dynamisch te wijzigen in de loop van de dag. Relevant voor de onderhavige uitvinding is dat tools (hulpmiddelen) zoals F.Lux de helderheid van het door de computerinrichting gegenereerde grafisch beeld kunnen verminderen, en daardoor oogvermoeidheid verminderen. Het tooi is echter niet ideaal, onder meer omdat de overlay de eigenlijke helderheid van onderliggende vensters niet in beschouwing neemt, en/of omdat een gebruiker niet langer een schermopname (screenshot) kan nemen zonder de geelachtige kleur die de kleuren van de originele beelden sterk vervormt, en/of omdat het tooi het niet mogelijk maakt om tekstuele informatie te onderlijnen of te markeren.
US-octrooinr. 6,333,753, verleend op 21 december 2005, openbaart een techniek voor het implementeren van een on-demand displaywidget door gecontroleerde vervaging (fading) geïnitieerd door gebruikercontact met een aanraakgevoelige invoerinrichting. Het document beschrijft een semitransparant Tool Glass, optioneel gebruikmakende van een grafische versneller. Het in-faden (vervagen) en uit-faden kan gerealiseerd worden door dynamisch een alfatransparantiewaarde te wijzigen. Dit document is hierin in zijn geheel opgenomen door verwijzing, vooral FIG. 8 daarvan, samen met de bijhorende beschrijving.
US-octrooinr. 5,798,752, verleend op 25 augustus 1998, openbaart een techniek waarin een gebruiker een semi-transparant overlayvenster dat een zogenoemd werkstuk bevat, kan verplaatsen met de niet-dominante hand, en de muisaanwijzer kan verplaatsen met de dominante hand.
Veel mensen lezen boeken op een eReader-apparaat, maar het is moeilijk om geconcentreerd te blijven. Sommige mensen gebruiken hun vinger om de tekst die ze lezen te onderlijnen, maar wanneer het apparaat terzijde wordt gelegd, is de locatie verloren. Er is een behoefte aan een praktischer wijze om gefocust te blijven.
Samenvatting van de uitvinding
Het is een doel van de onderhavige uitvinding om een computer-geïmplementeerde werkwijze te verschaffen voor het overlayen van een door een computerinrichting gegenereerd grafisch beeld met een overlaybeeld.
Het is een doel van bepaalde uitvoeringsvormen van de onderhavige uitvinding om een overlayvenster te verschaffen dat ten minste één semi-transparant zichtbaar object omvat dat slechts een minderheidsgedeelte van het onderliggende grafisch beeld bedekt, en dat beweegbaar is in overeenstemming met bewegingen van een invoerinrichting die verbonden is met de computerinrichting.
Het is een doel van bepaalde uitvoeringsvormen van de onderhavige uitvinding om zulk een werkwijze te verschaffen die uitermate geschikt is voor het assisteren van een gebruiker bij het lezen van tekstuele informatie op een scherm.
Het is een doel van bepaalde uitvoeringsvormen van de onderhavige uitvinding om zulk een werkwijze te verschaffen die uitermate geschikt is voor het assisteren van een gebruiker bij het
BE2018/5041 extraheren van informatie uit een tabel of spreadsheet, of bij het bewerken van een tabel of spreadsheet.
Het is een doel van bepaalde uitvoeringsvormen van de onderhavige uitvinding om zulk een werkwijze te verschaffen waarbij het overlaybeeld verder ten minste een tweede semi-transparant object omvat dat een meerderheidsgedeelte van het onderliggende grafisch beeld bedekt.
Het is een doel van bepaalde uitvoeringsvormen van de onderhavige uitvinding om zulk een werkwijze te verschaffen met ten minste een eerste en een tweede semi-transparant object, waarbij het tweede semi-transparant object een hogere transparantie heeft dan het eerste semi-transparant object.
Het is een doel van bepaalde uitvoeringsvormen van de onderhavige uitvinding om zulk een werkwijze te verschaffen waarbij de transparantie van het eerste, beweegbare object voldoende laag is, zodat dit object gemakkelijk kan onderscheiden worden van de achtergrond, en waarbij de transparantie van het tweede object voldoende hoog is, zodat de onderliggende tekstuele of alfanumerieke informatie goede leesbaarheid behoudt.
Het is een doel van bepaalde uitvoeringsvormen van de onderhavige uitvinding om zulk een werkwijze te verschaffen die verder ten minste een derde semi-transparant object omvat, dat eveneens beweegbaar is in overeenstemming met bewegingen van de invoerinrichting.
Het is een doel van bepaalde uitvoeringsvormen van de onderhavige uitvinding om zulk een werkwijze te verschaffen waarbij een in hoofdzaak monochrome achtergrondkleur van een onderliggend beeld wordt getransformeerd tot een achtergrond met een textuurpatroon, bij voorkeur zonder in belangrijke mate afbreuk te doen aan de leesbaarheid van de oorspronkelijke tekstuele informatie, en/of bij voorkeur met een esthetisch meer aantrekkelijke achtergrond.
Het is tevens een doel van de onderhavige uitvinding om een computerinrichting te verschaffen aangepast voor het uitvoeren van de genoemde werkwijze.
Het is tevens een doel van de onderhavige uitvinding om een computerprogrammaproduct te verschaffen voor het verschaffen van een grafische overlay, welk computerprogrammaproduct, wanneer het wordt uitgevoerd op ten minste één verwerkingseenheid van de genoemde computerinrichting, de genoemde werkwijze voor het overlayen uitvoert.
Het is tevens een doel van de onderhavige uitvinding om een draagbaar rekenapparaat te verschaffen dat een overlaybeeld verschaft.
Het is tevens een doel van de onderhavige uitvinding om een weergave-inrichting te verschaffen die een overlay-werkwijze verschaft.
Het is tevens een doel van uitvoeringsvormen van de onderhavige uitvinding om een werkwijze te verschaffen van het overlayen die zichzelf dynamisch aanpast, afhankelijk van zichtbare kenmerken van onderliggende vensters.
BE2018/5041
Het is een doel van specifieke uitvoeringsvormen van de onderhavige uitvinding om een werkwijze van overlayen te verschaffen voor het donkerder maken van het scherm, die zichzelf dynamisch aanpast afhankelijk van de helderheid van de onderliggende vensters.
Het is tevens een doel van uitvoeringsvormen van de onderhavige uitvinding om een werkwijze van overlayen te verschaffen die het mogelijk maakt dat een screenshot van de onderliggende vensters genomen wordt (alsof de overlay er niet was), maar zonder de overlayapplicatie te deactiveren.
Deze en andere doelstellingen worden gerealiseerd door een werkwijze en een computerinrichting en een computerprogrammaproduct en een computersysteem en een draagbaar rekenapparaat en een weergave-inrichting volgens uitvoeringsvormen van de onderhavige uitvinding.
Volgens een 1ste aspect verschaft de onderhavige uitvinding een computergeïmplementeerde werkwijze voor het overlayen van een grafisch beeld in een rekenapparaat, waarbij de werkwijze de stappen omvat van: a) het verschaffen van een overlayvenster; b) het verschaffen van ten minste één zichtbaar object in het genoemde overlayvenster, waarbij het ten minste één zichtbaar object een bitmap omvat met: een eerste veelheid pixels die volledig transparante pixels zijn, en een tweede veelheid pixels die ondoorzichtige pixels of semi-transparante pixels zijn; waarbij de eerste veelheid pixels en de tweede veelheid pixels afwisselend gepositioneerd (geïnterleaved) zijn; c) het configureren van het overlayvenster in doorklikmodus.
Het overlayvenster kan geconfigureerd zijn als een ondoorzichtig venster, hetgeen betekent dat dit venster niet-transparante pixels of volledig transparante pixels kan bevatten, maar geen semitransparante pixels. (Hetzelfde visuele effect zou verkregen worden met een semi-transparant venster met een alfatransparantie van 100%).
Alternatief kan het overlayvenster geconfigureerd zijn als een semi-transparant venster met een alfatransparantie a in het bereik van 1% tot 99% of van 2% tot 98% of van 5% tot 95%, hetgeen betekent dat dit venster volledig transparante pixels of semi-transparante pixels kan bevatten, maar geen ondoorzichtige pixels.
De bitmap met de volledig transparante pixels die afgewisseld zijn met ondoorzichtige of semi-transparante pixels wordt hierin een geperforeerde bitmap genoemd (naar analogie met een geperforeerde plaat waarbij men kan zien doorheen de openingen).
Met grafisch beeld wordt het beeld bedoeld dat gevormd wordt door de onderliggende lagen van daarmee geassocieerde onderliggende applicaties. Het grafisch beeld kan een gelaagde opeenstapeling van partiële beelden omvatten of kan daaruit samengesteld zijn, waarvan ten minste sommige verschaft worden door een applicatievenster geassocieerd met een computerapplicatie, zoals een teksteditor, een PDF-documentviewer, een internetbrowser, een spreadsheet, etc. Het onderste beeld (zogenoemd desktopbeeld) kan gegenereerd worden door een besturingssysteem,
BE2018/5041 de optioneel andere beelden van de opeenstapeling kunnen gegenereerd worden door applicaties zoals een tekst-editor, PDF-documentviewer of editor, een webbrowser, een spreadsheet, een tekenprogramma, etc.
Bij voorkeur strekt het overlayvenster zich in hoofdzaak uit over het gehele grafische gebied, bijvoorbeeld (in een Windows-omgeving) kan het zich uitstrekken over het zogenaamde werkgebied (work area), dat is het ganse desktopgebied (desktop area) minus het gebied dat ingenomen wordt door een zogenoemde taakbalk (taskbar).
Het begrip volledig transparante pixel is welbekend in de stand der techniek. In de praktijk wordt het doorgaans geïmplementeerd door het toekennen van een vooraf gedefinieerde pseudokleurwaarde aan deze pixels.
De bitmap kan ten minste één rij en/of ten minste één kolom bevatten die ten minste één volledig transparante pixel bevat die zich tussen twee ondoorzichtige of tussen twee semitransparante pixels bevindt, bij voorkeur ten minste twee rijen en ten minste twee kolommen.
De bitmap kan ten minste één rij en/of ten minste één kolom bevatten die ten minste één ondoorzichtige of semi-transparante pixel bevat die zich tussen twee volledig transparante pixels bevindt, bij voorkeur ten minste twee rijen, met meer voorkeur elke rij.
De bitmap kan ten minste één rij en/of ten minste één kolom bevatten die een veelheid oneven en even genummerde verzamelingen pixels bevat, waarbij een oneven genummerde verzameling samengesteld is uit slechts één of ten minste één volledig transparante pixel, en waarin een even genummerde verzameling samengesteld is uit slechts één of ten minste één ondoorzichtige of semi-transparante pixel.
In een uitvoeringsvorm, neemt het ten minste één zichtbaar object dat de bitmap omvat, een meerderheidsgedeelte in van het gebied van het te overlayen grafisch beeld, bijvoorbeeld ten minste 75%, of ten minste 80% of ten minste 85% of ten minste 90% van het grafisch beeld.
In eenvoudige termen uitgedrukt, kan het semi-transparante object in deze uitvoeringsvorm bijvoorbeeld een filmlaag over het grafisch beeld vormen, die gebruikt kan worden om de gemiddelde kleur en/of de gemiddelde lichtintensiteit van het grafisch beeld te wijzigen.
Het ten minste één zichtbaar object kan in hoofdzaak stationair zijn, in de zin dat het niet beweegt in overeenstemming met bewegingen van een invoerinrichting.
In een uitvoeringsvorm, omvat de werkwijze verder stap d) waarbij ten minste een tweede zichtbaar object verschaft wordt dat beweegbaar is in overeenstemming met bewegingen van ten minste één aanwijsinrichting, en dat slechts een minderheidsgedeelte van het gebied van het te overlayen grafisch beeld inneemt.
In een uitvoeringsvorm is het ten minste één zichtbaar object dat de bitmap omvat beweegbaar in overeenstemming met bewegingen van een aanwijsinrichting en neemt slechts een
BE2018/5041 minderheidsgedeelte van het gebied van het te overlayen grafisch beeld in, bijvoorbeeld ten hoogste 25%, often hoogste 20%, often hoogste 15%, often hoogste 10% often hoogste 5%.
In eenvoudige termen uitgedrukt, kan het semi-transparante object in deze uitvoeringsvorm een relatief klein object vormen, zoals een kleine lijn, of een grote lijn (die zich over de volledige breedte van het scherm uitstrekt), of een klein kruis, of een groot kruis (dat zich over de volledige breedte en de volledige hoogte van het scherm uitstrekt), dat zich verplaatst in overeenstemming met bewegingen van een aanwijsinrichting, bijvoorbeeld een muisinrichting, een trackball, een touchpad, etc. Een dergelijk object is uitermate geschikt voor het markeren of onderlijnen van tekstuele informatie in een tekstdocument, of alfanumerieke informatie in een werkblad.
In een uitvoeringsvorm omvat de werkwijze verder de stappen van: het herhaaldelijk uitvoeren van de volgende stap: f) het verkrijgen van positie-informatie (X,Y) gerelateerd aan een positie van een muisaanwijzer of muiscursor; of het verkrijgen van bewegingsinformatie (dx,dy) gerelateerd aan een beweging van de ten minste één aanwijsinrichting; en het herhaaldelijk uitvoeren van de volgende stap: g) het aanpassen van een positie van het ten minste één object dat beweegbaar is en/of van het ten minste één tweede object dat beweegbaar is, gebruikmakende van de genoemde verkregen positie-informatie of gebruikmakende van de genoemde bewegingsinformatie.
Het configureren van het overlayvenster in doorklikmodus kan bijvoorbeeld geïmplementeerd worden (in een MS Windows-omgeving) gebruikmakende van één van de volgende functieaanroepen, of equivalente functieaanroepen:
SetWindowLong(Handle, GWL_EXSTYLE, WS_EX_TRANSPARENT or WS_EX_LAYERED);
SetWindowLong( Handle,GWL_EXSTYLE,GetWindowLong(Handle,GWL_EXSTYLE) or
WS_EX_TRANSPARENT);
Als een voorbeeld kan het verkrijgen van positie-informatie het opvragen omvatten aan het besturingssysteem en GUI wat de positie van de native muiscursor is, bijvoorbeeld (in een MS Windows-omgeving) gebruikmakende van de functie GetCursorPos().
Als een voorbeeld kan het verkrijgen van bewegingsinformatie omvatten: het configureren van het O/S om ruwe input-berichten te versturen, bijvoorbeeld door de applicatie te registreren bij het O/S voor het ontvangen van ruwe input-gegevens, bv. in de vorm van input-berichten gekend als WMJNPUT-berichten, bijvoorbeeld door gebruik te maken van de WinAPI functie RegisterRawinputDevices(). Er wordt opgemerkt dat applicaties niet automatisch ruwe input-berichten ontvangen.
Stap f) wordt bij voorkeur telkens uitgevoerd wanneer een nieuw bericht arriveert. Stap g) kan gebaseerd zijn op een timer, bijvoorbeeld met een periode in het bereik van 1 ms tot 100 ms, bij voorkeur in het bereik van 1 ms tot 60 ms. Stap g) hoeft dus niet uitgevoerd te worden met dezelfde frequentie als stap f).
BE2018/5041
In een uitvoeringsvorm, heeft het ten minste één object dat beweegbaar is en/of het ten minste één tweede object dat beweegbaar is, een langwerpige vorm.
Bijvoorbeeld een in hoofdzaak rechthoekige vorm, bijvoorbeeld een rechthoek met scherpe randen, of een rechthoek met afgeknotte randen, of een rechthoek met afgeronde randen, of een rechthoek met afgeronde hoeken. Een dergelijk zichtbaar object kan eenvoudig on the fly (gaandeweg) gegenereerd of gemodificeerd (grootte en/of kleur) worden, en is (door keuze van een toepasselijke hoogte en breedte) ideaal voor het onderlijnen van tekst, zonder een gebruiker af te leiden.
In een uitvoeringsvorm omvat het ten minste één tweede beweegbare object een eerste beweegbaar element met een langwerpige, horizontaal georiënteerde vorm, en een tweede beweegbaar element met een langwerpige, verticaal georiënteerde vorm; en waarbij stap g) het aanpassen omvat van een positie van het eerste beweegbaar element en het aanpassen van een positie van het tweede beweegbaar element.
Of in eenvoudige termen uitgedrukt: het eerste beweegbaar element en het tweede beweegbaar element vormen een kruis. Het is een voordeel van het overlayen met een kruis dat het duidelijk een bepaalde cel in een spreadsheet of tabel kan aangeven.
In een uitvoeringsvorm strekt het eerste beweegbaar element zich uit over een ganse breedte van het overlayvenster, en strekt het tweede beweegbaar element zich uit over een ganse hoogte van het overlayvenster.
Het is een voordeel van het overlayen met een kruis dat zich over de ganse breedte en hoogte van het scherm uitstrekt, dat niet alleen de gewenste cel duidelijk wordt aangegeven, maar dat ook de overeenkomstige rij-kop (row header) en kolom-kop (column header) van de geselecteerde cel duidelijk wordt aangegeven.
In een uitvoeringsvorm zijn de eerste veelheid pixels en de tweede veelheid pixels van de bitmap georganiseerd in een pseudo-willekeurig patroon.
In een uitvoeringsvorm zijn de eerste veelheid pixels en de tweede veelheid pixels van de bitmap georganiseerd in een regelmatig patroon.
In een uitvoeringsvorm zijn de eerste veelheid pixels en de tweede veelheid pixels van de bitmap georganiseerd in een regelmatig patroon volgens één van de volgende opties:
i) het regelmatig patroon is een 2x2 patroon, en precies één uit vier pixels is volledig transparant;
ii) het regelmatig patroon is een 2x2 patroon en precies twee van de vier pixels zijn volledig transparant, waarbij de twee volledig transparante pixels zich bij voorkeur diagonaal tegenover elkaar bevinden;
iii) het regelmatig patroon is een 2x2 patroon en precies drie van de vier pixels zijn volledig transparant.
BE2018/5041
Het is een voordeel van het gebruik van een 2x2 patroon dat het klein is ten opzichte van de gehele schermgrootte, en dat het menselijk oog de neiging heeft om de kleur en intensiteit van de vier pixelwaarden te integreren. Afhankelijk van hoeveel pixels van het patroon volledig transparant zijn (1 of 2 of 3 van de vier), kan de algehele intensiteit (of het donker worden) grof bijgesteld worden. Indien de tweede groep pixels alfagemengd (Engels: alpha-blended) is, dan kan zowel de kleur van deze pixels alsook de alfamengingswaarde (Engels: alpha-blending value) gebruikt worden om de algehele intensiteit (of het donker worden) fijn af te stemmen.
In een uitvoeringsvorm omvat de werkwijze verder de stap van: het herhaaldelijk aanpassen van een positie van het object dat de bitmap bevat of van de bitmap zodanig dat pixels van het onderliggende grafisch beeld geoverlayed (overdekt) worden door een volledig transparante pixel van de eerste veelheid pixels op een eerste tijdstip, en geoverlayed worden door een ondoorzichtige of door een semi-transparante pixel van de tweede veelheid pixels op een tweede en optioneel derde en vierde tijdstip.
Bij voorkeur wordt de aanpassing gedaan voor ieder frame (bv. aan 60 Hz), of iedere twee frames (bv. aan 30 Hz) of elke 3 frames (bv. aan 20 Hz), of iedere 4 frames (bv. aan 15 Hz). De aanpassing kan bijvoorbeeld zo eenvoudig zijn als het tweede object of het ganse overlayvenster met 1 pixel naar rechts te verschuiven of naar links of naar boven of naar beneden. Dit kan gezien worden als een soort tijdmultiplex.
In een alternatieve uitvoeringsvorm wordt een tweede bitmap verschaft die verschoven is ten opzichte van de eerste bitmap van het object, en omvat de werkwijze verder het overlayen met de eerste bitmap op een eerste tijdstip, en het overlayen met de tweede bitmap op een tweede en optioneel derde en vierde tijdstip.
In een uitvoeringsvorm omvat stap b): het verschaffen van een bitmap waarbij de tweede groep pixels geëxtraheerd of afgeleid zijn uit een textuurbitmap.
De textuurbitmap kan een vooraf gedefinieerde bitmap zijn of een selecteerbare bitmap, of een aanpassing daarvan.
In de context van de onderhavige uitvinding is een textuurbitmap bij voorkeur een bitmap die geen grafische voorstelling van eenvoudig herkenbare letters of getallen bevat, maar eerder een regelmatig of onregelmatig of pseudo-willekeurig patroon bevat, waarvan een voorbeeld is getoond in FIG. 27; een ander voorbeeld is een afbeelding van een mistige hemel.
De textuurbitmap kan veel kleiner zijn dan de bitmap van het ten minste één object in het overlayvenster, in welk geval het ten minste één keer wordt herhaald en/of wordt getegeld (Engels: tiled) en/of wordt gespiegeld en/of wordt geroteerd. Het extraheren van pixelwaarden uit een kleinere textuurbitmap biedt het voordeel van het besparen van geheugen. Het gebruik van niet-constante waarden voor de tweede groep pixels kan een papierachtig uitzicht geven aan de gebruiker, wat aangenamer is om te lezen dan een helderwit kunststofachtig uitzicht.
BE2018/5041
In een uitvoeringsvorm is het overlayvenster geconfigureerd als een semi-transparant venster met een alfatransparantie (ot) in het bereik van 1% tot 99% of van 2% tot 98% of van 5% tot 95%, en omvat de werkwijze verder de stap van: het aanpassen van pixelwaarden van de tweede veelheid pixels die geëxtraheerd of afgeleid zijn uit de genoemde textuurbitmap, als een functie van een alfatransparantiewaarde van het overlayvenster.
Bij voorkeur wordt de aanpassing zodanig uitgevoerd dat een contrastniveau van de textuur in hoofdzaak dezelfde blijft, ondanks variaties van de alfatransparantiewaarde.
In een uitvoeringsvorm omvatten de pixelwaarden drie kleurcomponenten, bijvoorbeeld Rood, Groen en Blauw, en wordt elke pixelwaarde aangepast door gebruik te maken van een lineaire uitdrukking van de respectievelijke kleurcomponent zelve, en optioneel het resultaat van die lineaire uitdrukking te begrenzen tot het bereik van 0 tot 255.
Als voorbeeld kan de Rood-component aangepast worden volgens de volgende formule, of een equivalente formule: R:= round((R-Ravg)*Fcontrast+newR; begrensd tot [0..255], waarbij R de oorspronkelijke rood-waarde is van een uit de textuurbitmap geëxtraheerde pixel, en Fcontrast een vooraf gedefinieerde of selecteerbare contrastfactor is (een drijvende-kommagetal). Deze waarde verandert bij voorkeur als een tweede-orde functie (bv. als het kwadraat) van het transparantieniveau T, waarbij T=100%-ct, newR een gewenste of geselecteerde gemiddelde waarde is voor de roodcomponenten van het overlaybeeld, die anders kan zijn dan de gemiddelde rood-waarde van de opgeslagen textuurbitmap.
Het is een voordeel indien elke componentwaarde (bv. Rood) uitsluitend berekend wordt als een functie van de oorspronkelijke componentwaarde (in het voorbeeld Rood) en niet van de andere componentwaarden van die pixel (in het voorbeeld: Blauw en Groen), omdat dit rekentijd bespaart, en geïmplementeerd kan worden door middel van een één-dimensionale opzoekingstabel.
In een uitvoeringsvorm wordt het grafisch beeld gegenereerd als een gelaagde samenstelling van een desktopbeeld en één of meerdere beelden geassocieerd met de genoemde één of meerdere applicaties; en wordt het semi-transparante overlayvenster gecreëerd door een overlay-applicatie.
De ten minste één processor zou doorgaans verder een besturingssysteem (O/S) draaien met een grafische gebruikersinterface (GUI) die slechts één enkele muisaanwijzer verschaft, en één of meerdere applicaties geselecteerd uit de groep bestaande uit: een webbrowser-applicatie, een spreadsheet-applicatie, een PDF-documentviewer, een PDF-documenteditor, een tekstviewer en een teksteditor.
Volgens een 2de aspect verschaft de onderhavige uitvinding ook een computergeïmplementeerde werkwijze voor het overlayen van een grafisch beeld in een rekenapparaat, waarbij de werkwijze de stappen omvat van: a) het verschaffen van een overlayvenster; b) het verschaffen van ten minste een eerste zichtbaar object in het overlayvenster, waarbij het eerste object een langwerpige vorm heeft, horizontaal georiënteerd is, en een minderheidsgedeelte van het
BE2018/5041 overlayvenster inneemt; c) het verschaffen van ten minste een tweede zichtbaar object in het overlayvenster, waarbij het tweede object een langwerpige vorm heeft, verticaal georiënteerd is, en een minderheidsgedeelte van het overlayvenster inneemt; d) het configureren van het overlayvenster in doorklikmodus; het herhaaldelijk uitvoeren van de volgende stap: f) het verkrijgen van positieinformatie (X,Y) gerelateerd aan een positie van een muisaanwijzer of muiscursor; of het verkrijgen van bewegingsinformatie (dx,dy) gerelateerd aan een beweging van de ten minste één aanwijsinrichting; en het herhaaldelijk uitvoeren van de volgende stap: g) het aanpassen van een positie van het eerste zichtbaar object en het aanpassen van een positie van het tweede zichtbaar object op basis van de verkregen positie-informatie of gebruikmakende van de bewegingsinformatie.
Het eerste en tweede object vormen samen een kruis. Een dergelijke overlay is in het bijzonder bruikbaar bij het extraheren van gegevens uit een tabel, of bij het bewerken van een spreadsheet.
In een uitvoeringsvorm strekt het eerste object zich uit over ten minste 80% van een breedte van het overlayvenster; en strekt het tweede object zich uit over ten minste 80% van een hoogte van het overlayvenster.
Bij voorkeur strekt het overlayvenster zich in hoofdzaak uit over het gehele scherm, of over het gehele werkgebied van het scherm (in de context van een Windows-omgeving betekent dit het gehele gebied minus het door de taakbalk ingenomen gebied).
Bij voorkeur heeft het eerste object een rechthoekige vorm met een breedte van ten minste 80% of ten minste 85% of ten minste 90% of ten minste 95% of gelijk aan 100% van de breedte van het scherm.
Bij voorkeur heeft het tweede object een rechthoekige vorm met een hoogte van ten minste 80% of ten minste 85% of ten minste 90% of ten minste 95% of gelijk aan 100% van de hoogte van het scherm.
Bij voorkeur zijn de hoogte van het horizontale object en de breedte van het verticale object gelijk.
In een uitvoeringsvorm omvat de werkwijze verder stap b) van: het configureren van het overlayvenster als een semi-transparant overlayvenster met een alfatransparantie in het bereik van 5% tot 95% of van 10% tot 90% of van 20% tot 80%.
In een alternatieve uitvoeringsvorm omvat de werkwijze verder stap b) van: het configureren van het overlayvenster als een niet-semi-transparant venster, hierin ook een ondoorzichtig venster genoemd.
In een uitvoeringsvorm, omvatten het eerste en tweede object een monochrome bitmap van pixels.
In een uitvoeringsvorm, omvatten het eerste en tweede object een bitmap met: een eerste veelheid pixels die volledig transparante pixels zijn, en een tweede veelheid pixels die ondoorzichtig
BE2018/5041 zijn of die semi-transparante pixels zijn die alfagemengd dienen te worden met pixels van vensters die onder het overlayvenster liggen; waarbij de eerste veelheid pixels en de tweede veelheid pixels afwisselend gepositioneerd zijn.
De eerste en tweede veelheid pixels kunnen opgesteld zijn in een dambordpatroon.
Volgens een 3de aspect verschaft de onderhavige uitvinding ook een computergeïmplementeerde werkwijze voor het overlayen van een grafisch beeld in een rekenapparaat, waarbij de werkwijze de stappen omvat van: a) het verschaffen van een semi-transparant overlayvenster; met een alfatransparantie in het bereik van 5% tot 95% of van 10% tot 90% of van 20% tot 80%; b) het verschaffen van ten minste één bitmap in het overlayvenster, waarbij de bitmap ten minste 50% of ten minste 60% of ten minste 70% of ten minste 80% of ten minste 90% of ongeveer gelijk aan 100% van het gebied van het overlayvenster inneemt, waarbij de bitmap een textuurbitmap bevat; c) het configureren van het overlayvenster in doorklikmodus.
Het gebruik van een textuurbitmap transformeert een glimmende of glanzende, bv. kunststofachtige, witte achtergrond tot een matte, bv. papierachtige achtergrond, waardoor een mooi esthetisch effect kan gecreëerd worden dat het lezen van een document op een scherm veraangenaamt.
Volgens een 4de aspect verschaft de onderhavige uitvinding ook een computergeïmplementeerde werkwijze voor het overlayen van een grafisch beeld in een rekenapparaat, waarbij de werkwijze de stappen omvat van: a) het verschaffen van een overlayvenster; b) het verschaffen van een eerste zichtbaar object in de vorm van een verticale lijn; c) het verschaffen van een tweede zichtbaar object in de vorm van een horizontaal lijnsegment dat zich ofwel aan de linkerzijde ofwel aan de rechterzijde van de verticale lijn bevindt; waarbij het tweede zichtbaar object beweegbaar is in overeenstemming met bewegingen van een aanwijsinrichting; * het herhaaldelijk uitvoeren van de volgende stappen: d) het verkrijgen van positie-informatie van een muisaanwijzer of muiscursor; e) het testen of de muiscursor of -aanwijzer zich op of boven de verticale lijn bevindt, en indien de uitkomst van de test waar is, doorgaan met stap f), anders doorgaan met stap h); f) indien het overlayvenster niet reeds in niet-doorklikmodus geconfigureerd is, het configureren van het overlayvenster in nietdoorklikmodus; g) het testen of een muisknop is ingedrukt, en indien de uitkomst van deze test waar is, het verslepen van de verticale lijn; en gaan naar stap d); h) indien het overlayvenster niet reeds in doorklikmodus geconfigureerd is, het configureren van het overlayvenster in doorklikmodus; i) het aanpassen van een positie van het horizontale lijnsegment op basis van de positie-informatie van de muisaanwijzer of muiscursor.
Deze uitvoeringsvorm verschaft een lijnsegment dat bevriest wanneer de muiscursor zich aan de rechterzijde van de verticale lijn bevindt of daar beweegt, en dat samen met de muiscursor beweegt wanneer de muiscursor zich aan de linkerzijde van de verticale lijn bevindt, of vice versa.
BE2018/5041
Bovendien maakt deze uitvoeringsvorm het mogelijk om de verticale lijn op een zeer intuïtieve wijze te verslepen. Deze uitvoeringsvorm is in het bijzonder geschikt voor vertalers en proeflezers.
In een uitvoeringsvorm omvat stap i): het testen of de muisaanwijzer of muiscursor zich aan dezelfde zijde van de verticale lijn bevindt als het horizontale lijnsegment, en indien de uitkomst van deze test waar is, het aanpassen van een verticale positie van het horizontale lijnsegment in overeenstemming met een verticale positie van de muisaanwijzer of muiscursor, en indien de uitkomst van deze test onwaar is, het behouden van een positie van de horizontale lijn.
In een uitvoeringsvorm omvat het horizontale lijnsegment een bitmap omvattende: * een eerste veelheid pixels die volledig transparante pixels zijn, en een tweede veelheid pixels die ondoorzichtige pixels of semi-transparante pixels zijn; waarbij de eerste veelheid pixels en de tweede veelheid pixels geïnterleaved (afwisselend gepositioneerd) zijn.
In een uitvoeringsvorm, zijn de eerste veelheid pixels en de tweede veelheid pixels van de bitmap georganiseerd in een pseudo-willekeurig patroon; of zijn de eerste veelheid pixels en de tweede veelheid pixels van de bitmap georganiseerd in een regelmatig patroon.
In een uitvoeringsvorm zijn de eerste veelheid pixels en de tweede veelheid pixels van de bitmap georganiseerd in een regelmatig patroon volgens één van de volgende opties: i) het regelmatig patroon is een 2x2 patroon, en precies één uit vier pixels is volledig transparant; ii) het regelmatig patroon is een 2x2 patroon en precies twee van de vier pixels zijn volledig transparant, waarbij de twee volledig transparante pixels zich bij voorkeur diagonaal tegenover elkaar bevinden; iii) het regelmatig patroon is een 2x2 patroon en precies drie van de vier pixels zijn volledig transparant.
Volgens een 5de aspect verschaft de onderhavige uitvinding ook een computergeïmplementeerde werkwijze voor het overlayen van een grafisch beeld in een rekenapparaat, waarbij de werkwijze de stappen omvat van: a) het verschaffen van een semi-transparant overlayvenster met een alfatransparantiewaarde in het bereik van 1% tot 99% of in het bereik van 5% tot 95% of in het bereik van 10% tot 90%, en omvattende een eerste bitmap; het herhaaldelijk uitvoeren van de volgende stappen: b) het nemen een screenshot, waardoor een tweede bitmap wordt verkregen; d) het bepalen van ten minste één kenmerk van de tweede bitmap; e) het aanpassen van de alfatransparantiewaarde van het overlayvenster en/of het aanpassen van één of meerdere pixelwaardes van de eerste bitmap, gebaseerd op het ten minste één bepaalde kenmerk.
Het is een voordeel van deze werkwijze (waarbij stappen b) tot e) herhaaldelijk uitgevoerd worden) dat de overlay dynamisch aangepast kan worden op basis van werkelijke kenmerken van het/de onderliggende beeld(en), in plaats van louter gebaseerd te zijn op het tijdstip van de dag en de geografische locatie waar het rekenapparaat zich bevindt (zoals het geval lijkt te zijn voor F.Lux). Dit is bijzonder nuttig voor gebruikers die oogvermoeidheid ervaren.
Dankzij deze werkwijze, hoeven gebruikers die aan oogvermoeidheid lijden de overlayparameters (bijvoorbeeld alfatransparantie en/of donkerte van de overlaybitmap) niet manueel
BE2018/5041 aan te passen, maar wordt dit automatisch afgehandeld gebruikmakende van de werkelijke beeldinhoud. Bijvoorbeeld, indien de onderliggende beelden heldere beelden zijn (bv. met een witte achtergrond zoals in MS Word of MS Paint of MS Powerpoint), dan kan meer verdonkering gebruikt worden, terwijl in het geval dat het/de onderliggende beeld(en) minder helder zijn (bv. bepaalde webpagina's), dan kan minder verdonkering gebruikt worden.
De lus kan periodisch herhaald worden, bijvoorbeeld gebaseerd op een timer die een periode heeft in het bereik van 0,25 s tot 10 s, of in het bereik van 0,5 s tot 5 s, bijvoorbeeld gelijk aan ongeveer 1 seconde of ongeveer 2 seconden. Hoe kleiner deze periode, hoe hoger het reactievermogen van het rekenapparaat maar hoe meer rekenkracht vereist is. Hoe groter deze periode, hoe trager het systeem reageert, maar hoe minder rekenkracht vereist is. De vakman die deze functie implementeert, kan een geschikt compromis vinden. Optioneel kan deze periode door een gebruiker gekozen worden.
De eerste bitmap bestaat niet enkel uit volledig-transparante pixels, dus de eerste bitmap bevat ten minste één semi-transparante pixel, typisch ongeveer voor 50% uit semi-transparante pixels in het geval dat de eerste bitmap geperforeerd is, of typisch ongeveer voor 100% uit semi-transparante pixels in het geval dat de eerste bitmap niet geperforeerd is.
In een uitvoeringsvorm is de eerste bitmap een monochrome bitmap, die een geperforeerde monochrome bitmap of een niet-geperforeerde monochrome bitmap kan zijn.
Het is een voordeel dat zulk een bitmap eenvoudig gegenereerd kan worden uitgaande van één enkele kleurwaarde (bv. met drie kleurcomponenten R,G,B).
In een specifieke uitvoeringsvorm, bevat de eerste bitmap enkel zwarte pixels, of enkel grijswaardenpixels met (R,G,B) waardes gelijk aan (χ,χ,χ), waarbij x een waarde is kleiner dan 93, of kleiner dan 65, of kleiner dan 49, of kleiner dan 33, of kleiner dan 17. Zulke beelden zijn ideaal geschikt voor het verdonkeren van het scherm, zonder de tint te wijzigen.
In andere uitvoeringsvormen, bevat de eerste bitmap een monochrome kleurenbitmap met pixels die (R,G,B)-waardes hebben gelijk aan (x,y,z), waarbij elk van x,y,z kleiner is dan 93 of kleiner dan 65, of kleiner dan 49, of kleiner dan 33, of kleiner dan 17. Zulke beelden zijn zeer goed geschikt voor het verdonkeren van het scherm, met wijziging van de tint.
In een andere uitvoeringsvorm, bevat de eerste bitmap een kleurgradiënt, bijvoorbeeld een horizontale kleurgradiënt, of een verticale kleurgradiënt, of een diagonale kleurgradiënt.
De kleurgradiënt kan gebaseerd zijn op slechts twee kleuren, bijvoorbeeld een linker en rechter kleur, een bovenste en onderste kleur, een linksbovenkleur en een rechtsonderkleur. Het is een voordeel dat zulk een bitmap eenvoudig gegenereerd kan worden uitgaande van slechts twee kleurwaardes (elk met bv. drie kleurcomponenten R,G,B).
In een uitvoeringsvorm, wordt het kenmerk bepaald gebruikmakende van een onderbemonsterd beeld, bijvoorbeeld door slechts 1 pixel uit elke 2x2=4 pixels te beschouwen, of door
BE2018/5041 slechts 1 pixel uit elke 4x4=16 pixels te beschouwen, of door slechts 1 pixel uit elk 8x8=64 pixels te beschouwen, of door slechts 1 pixel uit elke 16x16=256 pixels te beschouwen. Op die manier kan de rekentijd aanzienlijk gereduceerd worden, terwijl het effect in de meeste gevallen grotendeels hetzelfde is.
In een uitvoeringsvorm, omvat stap c): het bepalen van een gemiddelde intensiteit en/of een maximum-intensiteit en/of een intensiteitshistogram van de pixels van de tweede bitmap; en omvat stap e): het aanpassen van het alfa-transparantieniveau zodanig dat de gemiddelde intensiteit of de maximum-intensiteit of het intensiteitshistogram voldoet aan een vooraf bepaalde criterium.
Het criterium kan bijvoorbeeld zijn dat de gemiddelde of de maximum-intensiteit kleiner zou moeten zijn dan een bepaalde drempelwaarde. De drempelwaarde kan een vooraf bepaalde waarde zijn, of kan door de gebruiker selecteerbaar zijn.
Het is een voordeel dat op deze wijze, de gemiddelde of maximum-intensiteit gedwongen kan worden om kleiner te zijn dan een bepaalde drempelwaarde.
Het is een voordeel van deze werkwijze dat slechts één enkele waarde (namelijk de transparantiewaarde) aangepast dient te worden, hetgeen geen hoge CPU-belasting vereist. De doeltransparantiewaarde die aan het vooraf bepaalde criterium voldoet, kan in één keer berekend worden, of kan geleidelijk benaderd worden over verscheidene iteraties. Het laatstgenoemde kan mogelijks minder flikkering veroorzaken.
In een uitvoeringsvorm, omvat stap c) het bepalen van gemiddelde kleurcomponentwaardes
Ravg, Gavg, Bavg en/of kleurcomponent-histogrammen van de pixels van de tweede bitmap; en omvat stap e): het aanpassen van één of meerdere pixelwaardes van het eerste beeld (bv. ongeveer 50% van de pixelwaardes in het geval dat de bitmap geperforeerd is, of ongeveer 100% van de pixelwaardes in het geval dat de bitmap niet geperforeerd is), zodanig dat de gemiddelde kleurcomponent of het kleurcomponent-histogram aan een vooraf bepaald criterium voldoet.
De doelpixelwaardes kunnen in één keer berekend worden, of kunnen geleidelijk benaderd worden. Het laatstgenoemde kan mogelijks minder flikkering veroorzaken. Het is een voordeel van het aanpassen van de pixelwaardes van de eerste bitmap dat er veel meer flexibiliteit bestaat, omdat bijvoorbeeld gelijk welk van de kleurcomponentwaardes, of alle componentwaardes aangepast kan/kunnen worden.
In een uitvoeringsvorm, omvat de werkwijze verder stap d) van het bepalen van een helderheidswaarde als indicatie van een helderheid in een kamer; en houdt de aanpassing van stap e) verder rekening met de helderheidswaarde.
In een uitvoeringsvorm kan de helderheidswaarde bepaald worden gebruikmakende van een lichtsensor, of gebruikmakende van een webcam. Het is een voordeel van deze uitvoeringsvorm dat een slecht verlichte kamer anders geoverlayed kan worden dan een heldere kamer, zelfs voor dezelfde onderliggende beelden.
BE2018/5041
In een uitvoeringsvorm, omvat stap a) verder: het verschaffen van ten minste één verticale lijn of balk in de eerste bitmap voor het definiëren van ten minste twee gebieden omvattende een eerste gebied en een tweede gebied; en omvat stap c) het bepalen van ten minste een eerste kenmerk van het eerste gebied en een tweede kenmerk van het tweede gebied; en omvat stap e): het aanpassen van één of meerdere pixelwaardes van het eerste gebied zodanig dat het eerste kenmerk voldoet aan een eerste vooraf bepaald criterium, en het aanpassen van één of meerdere pixelwaardes van het tweede gebied, zodanig dat het tweede kenmerk voldoet aan een tweede criterium.
Het is een voordeel van deze uitvoeringsvorm dat deze het mogelijk maakt dat het scherm in twee gebieden wordt gesplitst, waardoor mogelijk wordt gemaakt dat een eerste toepassing (bv. een webbrowser) zich in het eerste gebied bevindt (bv. aan de linkerzijde van de verticale lijn of balk) en mogelijk wordt gemaakt dat een tweede toepassing (bv. een tekstverwerker) zich in het tweede gebied bevindt (bv. aan de rechterzijde van de verticale lijn). De overlay-applicatie zal automatisch een eerste kenmerk van het eerste gebied aanpassen (bv. een eerste helderheid en/of een eerste kleur), afhankelijk van de grafische informatie aanwezig aan de linkerzijde van de verticale lijn, welke hoofdzakelijk op de bezochte webpagina gebaseerd is, en de overlay-applicatie zal een tweede kenmerk van het tweede gebied aanpassen, welke hetzelfde kenmerk of een ander kenmerk kan zijn als het eerste kenmerk, bv. een tweede helderheid en/of een tweede kleur, afhankelijk van de grafisch informatie aanwezig aan de rechterzijde van de verticale lijn, welke in dit voorbeeld hoofdzakelijk afhankelijk is van de achtergrondkleur van de tekstverwerker). In het geval dat een tamelijk donkere webpagina bezocht wordt, terwijl het tekstdocument een helder witte achtergrondkleur heeft, kunnen aan de rechterzijde van de eerste bitmap donkerder pixels toegewezen worden dan aan de linkerzijde van de eerste bitmap.
Of in andere woorden uitgedrukt: Het is een voordeel van deze uitvoeringsvorm dat de overlaybitmap aangepast kan worden met verscheidene gebieden, die onafhankelijk donkerder gemaakt kunnen worden. Dit maakt veel meer geavanceerde schermaanpassingen mogelijk, hetgeen vooral nuttig is in een multi-tasking omgeving.
In een uitvoeringsvorm, bevat één van de gebieden volledig zwarte pixels met (R,G,B)=(0,0,0), terwijl de andere bitmap monochroom is en grijswaardenpixels bevat met (R,G,B)=(x,x,x), waarbij de waarde van x dynamisch wordt aangepast. Het eerste en/of het tweede gebied kan/kunnen geperforeerd zijn. Aangezien het eerste en tweede gebied zich in hetzelfde overlayvenster bevinden, hebben zij dezelfde alfa-mengingswaarde.
In een uitvoeringsvorm is de alfa-mengingswaarde vooraf bepaald (bijvoorbeeld ongeveer 50% of ongeveer 60% of ongeveer 70% of ongeveer 80%), en wordt de grijsschaal van de pixels van het tweede gebied dynamisch aangepast, of omgekeerd, of kunnen zowel de alfa-mengingswaarde als het grijsschaalniveau x beide worden aangepast.
BE2018/5041
Volgens een 6de aspect, verschaft de onderhavige uitvinding ook een computergeïmplementeerde werkwijze voor het overlayen van een grafisch beeld in een rekenapparaat, die de stappen omvat van: a) het verschaffen van een semi-transparant overlayvenster die een alfatransparantiewaarde a heeft in het bereik van 1% tot 99%, en een eerste bitmap omvat; b) het nemen van een screenshot, waardoor een tweede bitmap wordt verkregen; c) het berekenen van een derde bitmap voor het compenseren van het effect van de grafische overlay, gebaseerd op de eerste bitmap en de tweede bitmap en de alfa-transparantiewaarde.
Stap b) kan geïnitieerd worden doordat op een knop wordt geklikt door een muisaanwijzer, of doordat een toets van het toetsenbord wordt ingedrukt.
Het is een voordeel van deze werkwijze dat deze het mogelijk maakt dat een realistisch screenshot van de onderliggende vensters wordt genomen, alsof de overlay daar niet was, en zonder de overlay te deactiveren.
De uitvinders realiseerden zich verrassenderwijs dat het mogelijk is het onderliggende beeld terug te rekenen, omdat zij zich realiseerden dat het opgenomen beeld in feite een alfagemengd beeld is van de stapel onderliggende beelden geassocieerd met de onderliggende toepassingen en de bitmap van het overlayvenster, rekening houdende met de alfa-transparantie van het overlayvenster, die beide gekend zijn binnen de overlay-applicatie.
Het is een voordeel van het verschaffen van een overlay-applicatie met een ingebouwde print-screen functie, omdat de overlay-applicatie in staat is om de alfa-menging vanwege de semitransparante overlay te compenseren. Dit biedt het zeer grote voordeel aan de gebruiker dat een screenshot van de onderliggende toepassingen kan genomen worden zonder de overlay-applicatie tijdelijk te deactiveren, waardoor typisch een lichtflits vermeden wordt die typisch optreedt wanneer een verdonkerende overlay tijdelijk gedeactiveerd wordt. Deze flits kan tijdelijke verblinding en/of oogvermoeidheid veroorzaken.
In een uitvoeringsvorm, omvat de werkwijze verder stap d) van: het opslaan van de derde bitmap in een niet-vluchtig geheugen of in een opslaginrichting, optioneel na formaatconversie en/of na beeldcompressie.
Het is een voordeel dat de overlay-applicatie het mogelijk maakt om het aldus genomen screenshot te bewaren in een opslaginrichting, bijvoorbeeld door louter een klik op de knop. In voorkeursuitvoeringsvormen wordt het derde beeld opgeslagen als een gecomprimeerd beeldbestand, bijvoorbeeld als een JPEG-bestand. De overlay-applicatie kan het mogelijk maken dat de gebruiker de maplocatie en/of de compressie-verhouding kiest. De overlay-applicatie kan een automatisch gegenereerde bestandsnaam toewijzen, bijvoorbeeld gebaseerd op een tellerwaarde, of gebaseerd op tijd en datum. Dit alles is extreem handig voor een gebruiker.
BE2018/5041
Bij voorkeur maakt de overlay-applicatie het de gebruiker ook mogelijk om te kiezen of al dan niet het ganse scherm dient opgenomen te worden, of enkel het werkgebied (waarbij de taakbalk dus wordt weglaten).
In een uitvoeringsvorm, omvat de werkwijze verder stap e) van: het kopiëren van de derde bitmap naar een klembord van een besturingssysteem dat op het rekenapparaat draait.
Dit is vergelijkbaar met de print-screen knop die op vele toetsenborden aangetroffen kan worden, maar met het belangrijke verschil dat het beeld gecompenseerd is voor de alfa-menging met de overlaybitmap. De bitmap in het klembord kan daarna gebruikt worden op de in de stand der techniek gekende wijzen, bijvoorbeeld om bewerkt te worden in een grafische applicatie (bv. Paint.Net) of om geplakt te worden in een Powerpoint-document, enz.
In een uitvoeringsvorm, omvat stap c) het gebruikmaken van de volgende verzameling formules, of een equivalente verzameling formules: T=l-ct, en R3[x,y] = [ R2[x,y] - Rl[x,y]*(l-T)j /T, en G3[x,y] = [ G2[x,y] - Gl[x,y]*(l-T)] /T, en B3[x,y] = [ B2[x,y] - Bl[x,y]*(l-T)] /T, waarbij (R1,G1,B1) kleurcomponenten zijn van een pixel op een locatie (x,y) van de eerste bitmap die geoverlayed wordt, en waarbij (R2,G2,B2) kleurcomponenten zijn van een pixel op de overeenkomstige locatie (x,y) van de tweede bitmap welke als screenshot genomen werd, en waarbij (R1,G1,B1) kleurcomponenten zijn van een pixel op de overeenkomstige locatie (x,y) van de derde bitmap, en waarbij a de alfatransparantiewaarde is, en T een transparantiewaarde is.
Volgens een 7de aspect, verschaft de onderhavige uitvinding een werkwijze die de kenmerken van een werkwijze volgens één van het 1ste tot 4de aspect combineert met de kenmerken van een werkwijze volgens het 5de aspect.
Volgens een 8ste aspect, verschaft de onderhavige uitvinding een werkwijze die de kenmerken van een werkwijze volgens één van het 1ste tot 4de aspect combineert met de kenmerken van een werkwijze volgens het 6de aspect.
Volgens een 9de aspect, verschaft de onderhavige uitvinding een computerinrichting, omvattende: ten minste één centrale verwerkingseenheid, en een eerste geheugen verbonden met de ten minste één centrale verwerkingseenheid voor het daarin opslaan van computer-uitvoerbare instructies; computer-uitvoerbare instructies die codefragmenten omvatten voor het uitvoeren van een overlay-werkwijze volgens één van het 1ste tot het 8ste aspect.
De computer-uitvoerbare instructies kunnen verder computer-uitvoerbare instructies omvatten, geconfigureerd voor het genereren van een grafisch beeld als respons op het besturingssysteem en/of één of meerdere applicaties.
De computer-uitvoerbare instructies kunnen verder een besturingssysteem (O/S) omvatten met een grafische gebruikersinterface (GUI) die slechts één enkele muisaanwijzer verschaft, en één of meerdere applicaties gekozen uit de groep bestaande uit: een webbrowser-applicatie, een werkblad20
BE2018/5041 applicatie, een PDF-documentviewer, een PDF-documenteditor, een tekstviewer en een tekstverwerker.
Met computerinrichting wordt niet enkel een personal computer of een desktopcomputer of een laptop of een tabletcomputer bedoeld, maar ook draagbare apparaten, zoals een PDA of een smartphone of een eReader-apparaat.
In een uitvoeringsvorm omvat de computerinrichting verder een grafische verwerkingseenheid (GPU) met alfamengingsfunctionaliteit, en een tweede geheugen verbonden met de grafische verwerkingseenheid voor het daarin opslaan van grafische informatie; en waarbij de overlaycodefragmenten geconfigureerd zijn om gebruik te maken van de grafische processor voor het uitvoeren van ten minste alfamenging (Engels: alpha-blending), en optioneel ook tijdmultiplexing.
Volgens een 10de aspect, verschaft de onderhavige uitvinding ook een computersysteem omvattende: een computerinrichting volgens het 9de aspect; ten minste één aanwijsinrichting verbonden met de computerinrichting, waarbij de aanwijsinrichting beweegbaar is door een gebruiker, waarbij de computer-uitvoerbare instructies verder geconfigureerd zijn voor het ontvangen van invoergegevens die indicatief zijn voor bewegingen van de aanwijsinrichting; ten minste één weergaveinrichting verbonden met een uitgang van de computerinrichting, voor het weergeven van het grafisch beeld gemengd met het overlaybeeld.
De aanwijsinrichting kan bijvoorbeeld een muisinrichting zijn, of een trackball of een touchpad.
Bij voorkeur heeft de weergave-inrichting een schermresolutie van ten minste 1920 x 1080 pixels, of ten minste 2560 x 1440 pixels, of ten minste 3840 x 2160 pixels.
De uitvoerbare instructies voor het ontvangen van muisinvoergegevens worden meestal een muis device driver (muis-stuurprogramma) genoemd.
Volgens een 11de aspect, heeft de onderhavige uitvinding tevens betrekking op een computerprogrammaproduct voor het uitvoeren van een werkwijze volgens één van het 1ste tot het 8ste aspect op een computerinrichting volgens het 9de aspect of een computersysteem volgens het 10de aspect.
Of anders gezegd, volgens het 11de aspect verschaft de onderhavige uitvinding tevens een computerprogrammaproduct voor het verschaffen van een grafische overlay, waarbij het computerprogrammaproduct uitvoerbare instructies bevat die, wanneer ze uitgevoerd worden op ten minste één centrale verwerkingseenheid (CPU) van een computerinrichting volgens het 9de aspect, of een computersysteem volgens het 10de aspect, ervoor zorgen dat de computerinrichting een werkwijze uitvoert volgens het 1ste tot het 8ste aspect.
Volgens een 12de aspect, verschaft de onderhavige uitvinding ook een draagbaar rekenapparaat omvattende: een aanraakscherm; ten minste één centrale verwerkingseenheid, en een eerste geheugen verbonden met de ten minste één centrale verwerkingseenheid voor het daarin
BE2018/5041 opslaan van computer-uitvoerbare instructies; waarbij de computer-uitvoerbare instructies geconfigureerd zijn voor het genereren van een grafisch beeld dat tekstuele informatie bevat en voor het tonen van dat grafisch beeld op het aanraakscherm; waarbij de computer-uitvoerbare instructies verder geconfigureerd zijn voor het genereren van een lijn of een langwerpig object (bv. een rechthoekig object met scherpe of afgeronde randen of met scherpe of afgeronde hoeken) die de genoemde tekstuele informatie overdekt; waarbij de lijn of het langwerpig object een veelheid semitransparante pixels bevat met een transparantieniveau in het bereik van 1% tot 99% of van 2% tot 98% of van 5% tot 95%, of waarbij de lijn of het langwerpig object een eerste veelheid volledig transparante pixels bevat en een tweede veelheid ondoorzichtige of semi-transparante pixels, die geïnterleaved (afwisselend gepositioneerd) zijn; waarbij de computer-uitvoerbare instructies verder geconfigureerd zijn voor het detecteren van een contactpositie op het aanraakscherm, en voor het aanpassen van een positie van de lijn of het langwerpig object in overeenstemming met de gedetecteerde positie.
De inrichting kan bijvoorbeeld een eReader of een smartphone-apparaat zijn.
In een uitvoeringsvorm zijn de eerste veelheid pixels en de tweede veelheid pixels van de bitmap georganiseerd in een pseudo-willekeurig patroon, of zijn de eerste veelheid pixels en de tweede veelheid pixels van de bitmap georganiseerd in een regelmatig patroon.
In een uitvoeringsvorm zijn de eerste veelheid pixels en de tweede veelheid pixels van de bitmap georganiseerd in een regelmatig patroon volgens één van de volgende opties: i) het regelmatig patroon is een 2x2 patroon, en precies één uit vier pixels is volledig transparant; ii) het regelmatig patroon is een 2x2 patroon en precies twee van de vier pixels zijn volledig transparant, waarbij de twee volledig transparante pixels zich bij voorkeur diagonaal tegenover elkaar bevinden; iii) het regelmatig patroon is een 2x2 patroon en precies drie van de vier pixels zijn volledig transparant.
Volgens een 13de aspect verschaft de onderhavige uitvinding ook een weergave-inrichting voor het weergeven van een grafisch beeld dat verschaft wordt door een computerinrichting, waarbij de weergave-inrichting het volgende omvat: een displaypaneel voor het genereren van een zichtbaar beeld; een ingangspoort (bv. een video-ingangspoort) voor het ontvangen van de grafische beeldgegevens van de computerinrichting; een invoerbuffer voor het opslaan van het grafische beeld ontvangen aan de ingangspoort, en een textuurbuffer voor het opslaan van een textuurbitmap, en een framebuffer voor het opslaan van beeldgegevens die op het displaypaneel getoond moeten worden; een processor aangepast voor het genereren van de beeldgegevens die op het displaypaneel getoond moeten worden; waarbij de textuurbitmap een eerste veelheid pixels omvat die volledig transparante pixels zijn, en een tweede veelheid pixels die semi-transparante pixels zijn, bij voorkeur met een transparantieniveau van 1% tot 99% of van 2% tot 98% of van 5% tot 95%, waarbij de eerste veelheid pixels en de tweede veelheid pixels afwisselend opgesteld (geïnterleaved) zijn, waarbij de processor aangepast is voor het genereren van de beeldgegevens die getoond moeten worden door het kopiëren van beeldgegevens uit het invoerbuffer in het geval dat het overeenkomstig pixel van de
BE2018/5041 textuurbitmap een volledig transparante pixel is, en door het alfamengen van beeldgegevens uit het invoerbuffer in het geval dat het overeenkomstig pixel van de textuurbitmap een semi-transparante pixel is.
Bij voorkeur is de weergave-inrichting een LCD-apparaat of een LCD-monitor.
In een uitvoeringsvorm zijn de eerste veelheid pixels en de tweede veelheid pixels van de bitmap georganiseerd in een regelmatig patroon volgens één van de volgende opties: i) het regelmatig patroon is een 2x2 patroon, en precies één uit vier pixels is volledig transparant; ii) het regelmatig patroon is een 2x2 patroon en precies twee van de vier pixels zijn volledig transparant, waarbij de twee volledig transparante pixels zich bij voorkeur diagonaal tegenover elkaar bevinden; iii) het regelmatig patroon is een 2x2 patroon en precies drie van de vier pixels zijn volledig transparant.
In een uitvoeringsvorm is de processor verder aangepast voor het herhaaldelijk aanpassen van een positie van de textuurbitmap zodanig dat pixels van het onderliggende grafisch beeld overdekt (geoverlayed) worden door een volledig transparante pixel van de eerste veelheid pixels op een eerste tijdstip, en overdekt worden door een semi-transparante pixel van de tweede veelheid pixels op een tweede en optioneel derde en vierde tijdstip.
Volgens een 14de aspect verschaft de onderhavige uitvinding ook een weergave-inrichting voor het weergeven van een grafisch beeld dat verschaft wordt door een computerinrichting, waarbij de weergave-inrichting het volgende omvat: een displaypaneel voor het genereren van een zichtbaar beeld; een ingangspoort voor het ontvangen van de genoemde grafische beeldgegevens van de computerinrichting; een invoerbuffer voor het opslaan van het grafische beeld ontvangen aan de ingangspoort, en een textuurbuffer voor het opslaan van een textuurbitmap, en een framebuffer voor het opslaan van beeldgegevens die op het displaypaneel getoond moeten worden; een processor aangepast voor het genereren van de beeldgegevens die op het displaypaneel getoond moeten worden; waarbij de processor aangepast is om de genoemde beeldgegevens als volgt te genereren: i) op even tijdstippen het kopiëren van computerbeeldgegevens van de invoerbuffer op pixellocaties waarvoor de som van de rij-index en de kolom-index oneven is, en door het alfamengen van computerbeeldgegevens uit de invoerbuffer met overeenkomstige pixelgegevens uit de textuurbitmap op pixellocaties waarvoor de som van de rij-index en de kolom-index even is; en ii) op oneven tijdstippen het kopiëren van computerbeeldgegevens uit het invoerbuffer op pixellocaties waarvoor de som van de rij-index en de kolom-index even is, en door het alfamengen van computerbeeldgegevens uit de invoerbuffer met overeenkomstige pixelgegevens uit de textuurbitmap op pixellocaties waarvoor de som van de rij-index en de kolom-index oneven is.
Specifieke en voorkeursdragende aspecten van de uitvinding zijn opgenomen in de aangehechte onafhankelijke en afhankelijke conclusies. Kenmerken van de afhankelijke conclusies kunnen worden gecombineerd met kenmerken van de onafhankelijke conclusies en met kenmerken
BE2018/5041 van andere afhankelijke conclusies zoals aangewezen en niet enkel zoals uitdrukkelijk in de conclusies naar voren gebracht.
Deze en andere aspecten van de uitvinding zullen duidelijk worden aan de hand van en verhelderd worden met verwijzing naar de hiernavolgende beschreven uitvoeringsvormen.
Korte beschrijving van de tekeningen
FIG. 1 toont een schematisch blokdiagram van een klassiek computersysteem.
FIG. 2 is een schematische voorstelling van een zogenoemde Z-orde van drie vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 1.
FIG. 3 toont een schematisch blokdiagram van een computersysteem gelijkend op dat van FIG. 1, bij het uitvoeren van een besturingssysteem en twee applicaties: een teksteditor en een specifieke overlay-applicatie, gekend in de stand der techniek als LineReader, waarbij de laatstgenoemde een semi-transparante lijn over het teksteditorvenster toont, welke lijn door de gebruiker verplaatst kan worden om tekstfragmenten te onderlijnen.
FIG. 4 is een schematische voorstelling van een zogenoemde Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 3.
FIG. 5 toont een schematisch blokdiagram van een computersysteem gelijkend op dat van FIG. 1, bij het uitvoeren van een besturingssysteem en twee applicaties: een teksteditor en een specifieke overlay-applicatie gekend in de stand der techniek als F.Lux, waarbij de laatstgenoemde een semi-transparant schermvullend overlaybeeld over het desktopvenster en het teksteditorvenster toont.
FIG. 6 is een schematische voorstelling van een zogenoemde Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 5.
FIG. 7 toont een schematisch blokdiagram van een uitvoeringsvorm van een computersysteem volgens de onderhavige uitvinding. Het computersysteem van FIG. 7 bevat een specifieke overlay-applicatie voor het implementeren van een specifieke overlay-werkwijze. De overlay-applicatie, wanneer ze wordt uitgevoerd in het computersysteem van FIG. 7, toont een semitransparante overlay die ten minste twee semi-transparante elementen omvat: (i) een horizontale lijn of balk die zich over nagenoeg de ganse breedte van het scherm uitstrekt, en (ii) een verticale lijn of balk die zich over nagenoeg de ganse hoogte van het scherm uitstrekt. De horizontale en verticale lijn zijn beweegbaar in overeenstemming met bewegingen van de invoerinrichting.
FIG. 8 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 7.
FIG. 9 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding. Het computersysteem van FIG. 9 bevat een specifieke overlay-applicatie, geconfigureerd voor het overlayen van ten minste twee semi-transparante
BE2018/5041 elementen: i) een lijn, en ii) een zogenoemde geperforeerde bitmap. De lijn is beweegbaar in overeenstemming met bewegingen van de invoerinrichting.
FIG. 10 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 9.
FIG. 11 toont een variant van het computersysteem van FIG. 9.
FIG. 12 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 11.
FIG. 13 toont een veelheid van voorbeeldmatige screenshots (schermopnames). Elke rij toont een serie van vijf beelden die overeenkomen met een alfatransparantie of alfamengingswaarde a van respectievelijk 100%, 80%, 60%, 40% en 20%. Elk van deze beelden bevat een tekstfragment dat geoverlayed (overdekt) wordt door twee lijnen en/of een monochrome bitmap. Er worden twee lijnen gebruikt voor illustratieve doeleinden, om zowel het markeren als het onderlijnen van tekst in eenzelfde tekening te tonen.
In FIG. 13(a) is elk tekstfragment geoverlayed door twee rode lijnen met (R,G,B)=(255,0,0). De rest van het overlayvenster is volledig transparant.
In FIG. 13(b) is elk tekstfragment geoverlayed door een bitmap die lichtgrijze pixels bevat met (R,G,B)= (192,192,192).
In FIG. 13(c) is elk tekstfragment geoverlayed door een bitmap die donkergrijze pixels bevat met (R,G,B)=(64, 64, 64).
In FIG. 13(d) is elk tekstfragment geoverlayed door een loutere combinatie van de twee rode lijnen zoals in FIG. 13(a) en door een lichtgrijze bitmap zoals in FIG. 13(b).
In FIG. 13(e) is elk tekstfragment geoverlayed door een loutere combinatie van de twee rode lijnen zoals in FIG. 13(a) en door een donkergrijze bitmap zoals in FIG. 13(c).
In FIG. 13(f) tot FIG. 13(i) is elk tekstfragment overdekt door twee rode lijnen zoals in FIG. 13(a) en is het restgebied overdekt door een zogenoemde geperforeerde bitmap zoals geïllustreerd in FIG. 12, waarbij 50% van de pixels volledig transparante pixels zijn, opgesteld in een schaakbordpatroon, en de andere 50% van de pixels lichtgrijze pixels zijn met (R,G,B)= (192,192,192), zoals verschaft kan worden door overlay-werkwijzen volgens uitvoeringsvormen van de onderhavige uitvinding.
In FIG. 13(g) is elk tekstfragment geoverlayed door twee rode lijnen zoals in FIG. 13(a) en door een zogenoemde geperforeerde bitmap zoals geïllustreerd in FIG. 12, waarbij 50% van de pixels volledig transparante pixels zijn, opgesteld in een schaakbordpatroon, en de andere 50% van de pixels donkergrijze pixels zijn met (R,G,B)= (64, 64, 64), zoals verschaft kan worden door overlay-werkwijzen volgens uitvoeringsvormen van de onderhavige uitvinding.
In FIG. 13(h) is elk tekstfragment geoverlayed door twee rode lijnen zoals in FIG. 13(a) en door een zogenoemde geperforeerde bitmap zoals geïllustreerd in FIG. 12, waarbij 50% van de pixels
BE2018/5041 volledig transparante pixels zijn, opgesteld in een schaakbordpatroon, en de andere 50% van de pixels zwarte pixels zijn met (R,G,B)=(0, 0, 0), zoals verschaft kan worden door overlay-werkwijzen volgens uitvoeringsvormen van de onderhavige uitvinding.
In FIG. 13(i) is elk tekstfragment geoverlayed door twee rode lijnen zoals in FIG. 13(a) en door een zogenoemde geperforeerde bitmap zoals geïllustreerd in FIG. 12, waarbij 50% van de pixels volledig transparante pixels zijn, opgesteld in een schaakbordpatroon, en de andere 50% van de pixels witte pixels zijn met (R,G,B)= (255, 255, 255), zoals verschaft kan worden door overlay-werkwijzen volgens uitvoeringsvormen van de onderhavige uitvinding.
FIG. 14(a) illustreert schematisch wat er gebeurt met tekstinformatie samengesteld uit oorspronkelijk zwarte tekstpixels en oorspronkelijk witte achtergrondpixels, wanneer deze pixels geoverlayed worden door een bitmap die 100% zwarte pixels bevat met (R,G,B)=(0, 0, 0), voor drie verschillende alfamengingswaarden.
FIG. 14(b) illustreert schematisch wat er gebeurt met tekstinformatie samengesteld uit oorspronkelijk zwarte tekstpixels en oorspronkelijk witte achtergrondpixels, wanneer deze pixels geoverlayed worden door een bitmap die 100% witte pixels bevat met (R,G,B)=(255, 255, 255), voor drie verschillende alfamengingswaarden.
FIG. 15(a) illustreert schematisch wat er gebeurt met tekstinformatie samengesteld uit oorspronkelijk zwarte tekstpixels en oorspronkelijk witte achtergrondpixels, wanneer deze pixels geoverlayed worden door een bitmap die voor 50% volledig transparante pixels bevat en voor 50% zwarte pixels met (R,G,B)=(0, 0, 0), opgesteld in een dambordpatroon, voor drie verschillende alfamengingswaarden.
FIG. 15(b) illustreert schematisch wat er gebeurt met tekstinformatie samengesteld uit oorspronkelijk zwarte tekstpixels en oorspronkelijk witte achtergrondpixels, wanneer deze pixels geoverlayed worden door een bitmap die voor 50% volledig transparante pixels bevat en voor 50% witte pixels met (R,G,B)=(255, 255, 255), opgesteld in een dambordpatroon, voor drie verschillende alfamengingswaarden.
FIG. 16 tot FIG. 19 tonen vier voorbeelden van een groter tekstfragment.
FIG. 16 toont het tekstfragment dat zwarte tekst op een witte achtergrond bevat zoals dat weergegeven kan worden door een klassieke PDF-viewer.
FIG. 17 toont het tekstfragment van FIG. 16, geoverlayed door een blauw lijnsegment dat pixels bevat met de kleur (R,G,B)=(0,0,255), en met het transparantieniveau van het overlayvenster ingesteld op 50%.
FIG. 18 toont het tekstfragment van FIG. 16, geoverlayed op een wijze zoals beschreven in FIG. 9 en FIG. 10, in het bijzonder, gebruikmakende van een geperforeerde bitmap met 50% volledig transparante pixels, en 50% grijze pixels met kleurwaarde (128, 128, 128), opgesteld in een dambordpatroon.
BE2018/5041
FIG. 19 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding, waarbij het computersysteem een specifieke overlayapplicatie bevat die een overlayvenster verschaft dat ten minste twee semi-transparante elementen omvat: i) een lijn, en ii) een zogenoemde geperforeerde textuurbitmap. De lijn is beweegbaar in overeenstemming met bewegingen van een invoerinrichting.
FIG. 20 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 19.
FIG. 21 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding, waarbij het computersysteem een specifieke overlayapplicatie bevat die een overlayvenster verschaft dat ten minste één semi-transparant object omvat in de vorm van een zogenoemde geperforeerde textuurbitmap.
FIG. 22 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 21.
FIG. 23 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding, waarbij het computersysteem een specifieke overlayapplicatie bevat die een overlayvenster verschaft dat ten minste één semi-transparant object omvat in de vorm van een zogenoemde textuurbitmap.
FIG. 24 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 23.
FIG. 25 toont het tekstfragment van FIG. 16, geoverlayed op een wijze zoals beschreven in FIG. 19 en FIG. 20, gebruikmakende van een geperforeerde bitmap met 50% volledig transparante pixels, en 50% grijze pixels verkregen uit een textuurbitmap, zodanig gekozen dat het resulterende geoverlayde beeld een achtergrond heeft met een gemiddelde kleurwaarde van ongeveer (128, 128, 128), om vergelijking mogelijk te maken met FIG. 16 (het contrast van de textuur is instelbaar, en kan enigszins overdreven zijn voor illustratieve doeleinden).
FIG. 26 toont het tekstfragment van FIG. 16, geoverlayed op een wijze zoals beschreven in FIG. 19 en FIG. 20, waarbij een semi-transparante blauwe lijn met kleur (0,0,255) is toegevoegd en gebruikmakende van een geperforeerde bitmap met 50% volledig transparante pixels en 50% grijze pixels georganiseerd in een dambordpatroon, waarbij de grijze pixels verkregen zijn uit een textuurbitmap.
FIG. 27 toont de voorbeeldmatige textuurbitmap die gebruikt werd om het beeld van FIG. 25 en FIG. 26 te genereren, vóór perforatie, vóór optionele kleuraanpassing en vóór optionele contrastaanpassing.
FIG. 28 illustreert schematisch hoe het overlayen met een geperforeerde bitmap die heen en weer wordt verschoven over één enkele pixel, gebruikt kan worden voor tijdmultiplexing of tijdmiddeling.
BE2018/5041
FIG. 29(a) tot (c) tonen voorbeelden van een beeldfragment verkregen door het overlayen van een grafisch beeld dat zwarte tekst op een witte achtergrond bevat, gebruikmakende van een werkwijze van de onderhavige uitvinding, weergegeven op een weergave-inrichting met native (oorspronkelijke) resolutie van 3840 x 2160 geconfigureerd aan een resolutie van 2560 x 1440, met een schaalfactor voor tekst en applicaties van 100%.
FIG. 29(a) toont een gedeelte van het beeld van FIG. 18, gezien vanaf een relatief grote afstand waarbij het menselijk oog geen individuele pixels onderscheidt.
FIG. 29(b) toont hetzelfde beeld, ingezoomd met een factor van ongeveer 350%.
FIG. 29(c) toont een gedeelte van hetzelfde beeld, verder ingezoomd met een factor van ongeveer 200%.
FIG. 30(a) tot FIG. 30(c) tonen in hoofdzaak dezelfde beelden als die van FIG. 29(a) tot FIG. 29(c), weergegeven op dezelfde weergave-inrichting, wederom geconfigureerd met een resolutie van 2560 x 1440, maar geconfigureerd met 125% schaling voor tekst en applicaties.
FIG. 30(a) toont hoe het resulterende beeldfragment eruit ziet, gezien vanaf een relatief grote afstand waarbij het menselijk oog geen individuele pixels onderscheidt.
FIG. 30(b) toont hetzelfde beeld, ingezoomd met een factor van ongeveer 350%.
FIG. 30(c) toont hetzelfde beeld, verder ingezoomd met een factor van ongeveer 200%.
FIG. 31 toont een flowdiagram van overlay-werkwijzen volgens uitvoeringsvormen van de onderhavige uitvinding.
FIG. 32 toont een flowdiagram van overlay-werkwijzen volgens uitvoeringsvormen van de onderhavige uitvinding.
FIG. 33 toont een flowdiagram van overlay-werkwijzen volgens uitvoeringsvormen van de onderhavige uitvinding.
FIG. 34 toont een vereenvoudigd hoogniveau-blokdiagram van softwarecomponenten en hardwarecomponenten, gesitueerd in een computersysteem, die typisch samenwerken bij het uitvoeren van een werkwijze volgens de onderhavige uitvinding.
FIG. 35 toont een voorbeeldmatig gebruikersinterface-venster zoals gebruikt kan worden door een overlay-applicatie volgens de onderhavige uitvinding.
FIG. 36 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding, met een specifieke overlay-applicatie die een overlayvenster verschaft met een beweegbaar object dat een zogenoemde geperforeerde bitmap heeft. De lijn is beweegbaar in overeenstemming met bewegingen van de invoerinrichting.
FIG. 37 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 36.
FIG. 38 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding, met een overlay-applicatie die een overlayvenster
BE2018/5041 verschaft met een beweegbaar object in de vorm van een geperforeerd kruis, beweegbaar in overeenstemming met bewegingen van de invoerinrichting.
FIG. 39 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 38.
FIG. 40 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding, met een overlay-applicatie die een overlayvenster verschaft met een beweegbaar object in de vorm van een horizontale lijn die zich uitstrekt over de ganse breedte van het scherm, en die beweegbaar is in overeenstemming met bewegingen van de invoerinrichting.
FIG. 41 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 40.
FIG. 42 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding, met een overlay-applicatie die een overlayvenster verschaft met een verticale lijn die een linker gebied en een rechter gebied van het scherm definieert, en met een horizontale lijn die zich uitstrekt over de breedte van het linker gebied, en die verticaal beweegbaar is in overeenstemming met bewegingen van de invoerinrichting wanneer de muiscursor zich in het linker gebied bevindt, en die bevriest wanneer de muiscursor zich in het rechter gebied bevindt.
FIG. 43 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 42.
FIG. 44 toont een flowdiagram van een andere overlay-werkwijze volgens uitvoeringsvormen van de onderhavige uitvinding.
FIG. 45 toont een schematisch blokdiagram van een draagbaar apparaat zoals bv. een eReader of een smartphone, aangepast voor het tonen van tekstuele informatie geoverlayed door een semitransparante lijn, volgens een uitvoeringsvorm van de onderhavige uitvinding.
FIG. 46 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding, dat gezien kan worden als een variant van FIG. 21, waarbij het computersysteem een grafisch overlaybeeld verschaft in de vorm van een zogenoemde geperforeerde textuurbitmap, geoverlayed door de weergave-inrichting.
FIG. 47 is een schematische voorstelling van een Z-orde van drie vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 46, en daarboven een vierde semitransparant overlayvenster dat door de weergave-inrichting wordt verschaft.
FIG. 48 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding, dat gezien kan worden als een variant van FIG. 46, waarbij het computersysteem een grafisch overlaybeeld verschaft in de vorm van een nietgeperforeerde textuurbitmap, die geoverlayed wordt door de weergave-inrichting.
BE2018/5041
FIG. 49 is een schematische voorstelling van een Z-orde van drie vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 48, en daarboven een vierde semitransparant overlayvenster dat door de weergave-inrichting wordt verschaft.
FIG. 50 toont een flowdiagram van een andere computer-geïmplementeerde werkwijze volgens een uitvoeringsvorm van de onderhavige uitvinding.
FIG. 51 toont een flowdiagram van een andere computer-geïmplementeerde werkwijze volgens een uitvoeringsvorm van de onderhavige uitvinding.
Gedetailleerde beschrijving van illustratieve uitvoeringsvormen
De huidige uitvinding zal beschreven worden met betrekking tot bijzondere uitvoeringsvormen en met verwijzing naar bepaalde tekeningen, echter de uitvinding wordt daartoe niet beperkt maar is enkel beperkt door de conclusies. De figuren zijn enkel schematisch en niet limiterend. In de tekeningen kan de grootte van bepaalde elementen overdreven en niet op schaal getekend zijn voor illustratieve doeleinden. De afmetingen en de relatieve afmetingen komen soms niet overeen met de actuele praktische uitvoering van de uitvinding.
Verder worden de termen eerste, tweede en dergelijke in de beschrijving en in de conclusies gebruikt voor het onderscheiden van gelijkaardige elementen en niet noodzakelijk voor het beschrijven van een volgorde, noch in de tijd, noch spatiaal, noch in rangorde of op enige andere wijze. Het dient te worden begrepen dat de termen op die manier gebruikt onder geschikte omstandigheden verwisselbaar zijn en dat de uitvoeringsvormen van de uitvinding hierin beschreven geschikt zijn om in andere volgorde te werken dan hierin beschreven of weergegeven.
Het dient opgemerkt te worden dat de term omvat, zoals gebruikt in de conclusies, niet als beperkt tot de erna beschreven middelen dient geïnterpreteerd te worden; deze term sluit geen andere elementen of stappen uit. Hij is zodoende te interpreteren als het specificeren van de aanwezigheid van de vermelde kenmerken, waarden, stappen of componenten waarnaar verwezen wordt, maar sluit de aanwezigheid of toevoeging van één of meerdere andere kenmerken, waarden, stappen of componenten, of groepen daarvan niet uit. Dus, de omvang van de uitdrukking een inrichting omvattende middelen A en B dient niet beperkt te worden tot inrichtingen die enkel uit componenten A en B bestaan. Het betekent dat met betrekking tot de huidige uitvinding, A en B de enige relevante componenten van de inrichting zijn.
Verwijzing doorheen deze specificatie naar één uitvoeringsvorm of een uitvoeringsvorm betekent dat een specifiek kenmerk, structuur of karakteristiek beschreven in verband met de uitvoeringsvorm is opgenomen in tenminste één uitvoeringsvorm van de onderhavige uitvinding. Dus, voorkomen van de uitdrukkingen in één uitvoeringsvorm of in een uitvoeringsvorm op diverse plaatsen doorheen deze specificatie hoeven niet noodzakelijk allemaal naar dezelfde uitvoeringsvorm te refereren, maar kunnen dit wel doen. Voorts, de specifieke kenmerken, structuren of
BE2018/5041 karakteristieken kunnen gecombineerd worden op eender welke geschikte manier, zoals duidelijk zou zijn voor een gemiddelde vakman op basis van deze bekendmaking, in één of meerdere uitvoeringsvormen.
Vergelijkbaar dient het geapprecieerd te worden dat in de beschrijving van voorbeeldmatige uitvoeringsvormen van de uitvinding verscheidene kenmerken van de uitvinding soms samen gegroepeerd worden in één enkele uitvoeringsvorm, figuur of beschrijving daarvan met als doel het stroomlijnen van de openbaarmaking en het helpen in het begrijpen van één of meerdere van de verscheidene inventieve aspecten. Deze methode van openbaarmaking dient hoe dan ook niet geïnterpreteerd te worden als een weerspiegeling van een intentie dat de uitvinding meer kenmerken vereist dan expliciet vernoemd in iedere conclusie. Eerder, zoals de volgende conclusies weerspiegelen, liggen inventieve aspecten in minder dan alle kenmerken van één enkele voorafgaande openbaar gemaakte uitvoeringsvorm. Dus, de conclusies volgend op de gedetailleerde beschrijving zijn hierbij expliciet opgenomen in deze gedetailleerde beschrijving, met iedere op zichzelf staande conclusie als een afzonderlijke uitvoeringsvorm van deze uitvinding.
Voorts, terwijl sommige hierin beschreven uitvoeringsvormen sommige, maar niet andere, in andere uitvoeringsvormen inbegrepen kenmerken bevatten, zijn combinaties van kenmerken van verschillende uitvoeringsvormen bedoeld als gelegen binnen de reikwijdte van de uitvinding, en vormen deze verschillende uitvoeringsvormen, zoals zou begrepen worden door de vakman. Bijvoorbeeld, in de volgende conclusies kunnen eender welke van de beschreven uitvoeringsvormen gebruikt worden in eender welke combinatie.
In de hier voorziene beschrijving worden talrijke specifieke details naar voren gebracht. Het is hoe dan ook te begrijpen dat uitvoeringsvormen van de uitvinding kunnen uitgevoerd worden zonder deze specifieke details. In andere gevallen zijn welgekende werkwijzen, structuren en technieken niet in detail getoond om deze beschrijving helder te houden.
In dit document worden de termen alfamenging of menging of mixen (van beelden of bitmaps) als synoniemen gebruikt. In de context van grafische overlay is er een hoger gelegen beeld (met een hogere Z-orde) en een lager gelegen beeld (met een lagere Z-orde). Het mengen kan in hardware en/of software gedaan worden, en is gebaseerd op een parameter genoemd alfamengingswaarde a, die verwijst naar het niveau van mengen van de twee beelden, waarbij a =0% betekent dat het oorspronkelijke beeld niet met het overlaybeeld wordt gemengd (of dat het overlaybeeld volledig transparant is), en waarbij ct=100% betekent dat de resulterende pixelwaarde die van het overlaybeeld is (of dat het overlaybeeld volledig ondoorzichtig is) behalve voor volledig transparante pixels. De alfamengingswaarde kan uitgedrukt worden op een schaal van 0 tot 255, waarbij ct=255 overeenkomt met a=100% en a=0 overeenkomt met a=0%. Alfamenging kan bijvoorbeeld gebruikt worden voor fade-in of fade-out van een grafisch beeld. In de context van de
BE2018/5041 onderhavige uitvinding is ook een tweede parameter betrokken bij het mengen, aangeduid met de term TransparentColorValue. Indien een pixel van het overlaybeeld deze vooraf gedefinieerde (valse kleur of pseudo-kleur) waarde heeft, dan wordt deze pixel behandeld als volledig transparant. Volledig transparante pixels worden typisch gebruikt bijvoorbeeld bij het tonen van een rechthoekig beeld met afgeronde randen en/of met afgeronde hoeken. Alfamenging en volledig transparante pixels zijn beide welbekend in de stand der techniek.
Wanneer in de onderhavige uitvinding wordt verwezen naar een kleur van een pixel, dan wordt niet alleen de tint bedoeld (bv. rood of blauw of groen of geel), maar ook de intensiteit of helderheid ervan, tenzij anders gespecificeerd of duidelijk vanuit de context.
Wanneer in de onderhavige uitvinding wordt verwezen naar een kleur uitgedrukt in R,G,Bwaarden, dan wordt een kleurwaarde bedoeld die voorgesteld kan worden door een verzameling kleurcomponenten, bijvoorbeeld door een verzameling (R,G,B)-waarden, representatief voor een rode, een groene en een blauwe kleurcomponentwaarde, elk met een waarde in het bereik van 0 tot 255. Puur zwart wordt voorgesteld door (0, 0, 0) en puur wit wordt voorgesteld door (255, 255, 255). De Ren G- en B-waarden voor een grijsschaalpixel zijn gelijk.
Met pixelintensiteit of helderheid of luminantie van een pixel voorgesteld door een verzameling (R,G,B)-waarden, wordt een waarde L bedoeld die bij benadering gelijk is aan L = R*0,3 + G*0,6 + B*0,l of bij benadering gelijk is aan R*3/8 + G*5/8 + B*l/8, of andere in de stand der techniek gekende formules.
Waar in de onderhavige uitvinding wordt verwezen naar een zwarte, grijze of witte pixel, wordt een pixel bedoeld die een kleur heeft, waarvan de R-waarde en G-waarde en B-waarde gelijk zijn, wanneer de kleur wordt uitgedrukt in R,G,B-waarden, Bijvoorbeeld, een zwarte pixel heeft RGBwaarden (0, 0, 0), een witte pixel heeft RGB-waarden (255, 255, 255), aannemende dat een 8bitsvoorstelling is gebruikt.
In dit document verwijst de term kleur van een pixel of waarde van een pixel naar de verzameling kleurcomponenten, bijvoorbeeld naar een combinatie van een R-, G- en B-waarde. Een zwarte of witte of grijze pixel heeft gelijke waarden voor zijn R-, G- en B-componenten, en kan dus voorgesteld worden door de kleurwaarden (χ,χ,χ). Voor deze pixels wordt het enkele getal x ook wel de waarde van de pixel genoemd.
In dit document betekent de uitdrukking met kleur (R,G,B) hetzelfde als met een kleur die kan uitgedrukt worden in termen van Rode, Groene en Blauwe kleurcomponenten, met rood=R, groen=G, blauw=B, elk op een schaal van 0 tot 255.
In dit document worden de termen display en monitor en scherm als synoniemen gebruikt, tenzij expliciet vermeld, of tenzij uit de context duidelijk anders blijkt. In de context van de onderhavige uitvinding is het display doorgaans één enkel fysiek apparaat.
BE2018/5041
In dit document worden de termen schaakbordpatroon en dambordpatroon als synoniemen gebruikt.
In dit document betekent de term geperforeerde bitmap een bitmap die een eerste veelheid volledig transparante pixels bevat en een tweede veelheid andere pixels. In de praktijk heeft de eerste veelheid pixels een vooraf gedefinieerde pseudo-kleurwaarde die wordt herkend door een mengeenheid (bv. een software-menger of een grafische processor) teneinde deze pixels als volledig transparant te behandelen. De andere pixels van de bitmap kunnen alle dezelfde kleur hebben (monochroom), of kunnen verschillende kleuren hebben (bv. geëxtraheerd uit een textuurbitmap of kunnen een kleurgradiënt vormen). De eerste en tweede veelheid pixels zijn bij voorkeur opgesteld in een patroon, bv. in een schaakbordpatroon, zoals bijvoorbeeld geïllustreerd in FIG. 10 en FIG. 12 en FIG. 22 en FIG. 37.
Met gemiddeld wordt bedoeld door spatiaal te middelen of door de tijd te middelen, of zowel spatiaal te middelen alsook door de tijd te middelen.
In dit document kan de grootte, breedte of hoogte van het scherm verwijzen naar (i) de grootte, breedte en hoogte van de pixelmatrix van het scherm (niet de rand rondom de pixelmatrix), of kan verwijzen naar (ii) de grootte, breedte en hoogte van het zogenoemde werkgebied (work area), hetgeen hetzelfde gebied is als (i) minus het gebied dat door de zogenoemde taakbalk (task bar) ingenomen wordt. Het werkgebied is ook het gebied dat doorgaans door een applicatie wordt ingenomen wanneer ze wordt gemaximaliseerd.
In dit document worden de termen lijn of balk als synoniemen gebruikt. Zij kunnen verwijzen naar een (relatief klein) lijnsegment of blok of naar een rechthoekig gebied dat zich uitstrekt over nagenoeg de volledige breedte of de volledige hoogte van het scherm, of over de volledige breedte of de volledige hoogte van het werkgebied (work area) van het scherm.
In dit document dienen de termen tekstverwerker of teksteditor niet te eng geïnterpreteerd te worden, omdat veel zogenoemde tekstverwerkers (zoals bv. Microsoft Word) ook tekenmogelijkheden hebben. Evenzo dient de term spreadsheet of werkblad niet te eng geïnterpreteerd te worden, omdat veel zogenoemde werkblad-applicaties, bv. Microsoft Excel, ook grafische mogelijkheden hebben.
In dit document betekent de uitdrukking het overlayvenster is geconfigureerd in doorklikmodus (click-through mode) of het overlayvenster is geconfigureerd in doorlaatmodus (pass-through mode) dat het overlayvenster op een dusdanige wijze geconfigureerd is dat gebeurtenissen (events) van invoerinrichtingen (zoals bv. een muis, een toetsenbord, een touchpad etc.) door het besturingssysteem verzonden worden naar één of meerdere onderliggende applicatievensters of naar objecten daarvan, ondanks de hogere Z-orde van de overlay-applicatie. Dit is onder meer van toepassing op events veroorzaakt door een knopindrukking (button-press) of een knoploslating (button-release) of een knopklik (button-click) of een scroll-event van een muiswiel, en
BE2018/5041 op bewegingen. In de context van de onderhavige uitvinding omvat de overlay-applicatie doorgaans één venster geconfigureerd in doorklikmodus, maar bij voorkeur ook een tweede, hoofdzakelijk ondoorzichtig venster (optioneel met volledig transparante pixels), met gebruikersinterface elementen.
In dit document betekent de uitdrukking het overlayvenster is geconfigureerd in nietdoorklikmodus dat het overlayvenster niet geconfigureerd is in doorklikmodus.
In dit document verwijst de term werkgebied naar een gedeelte van het pixelgebied van een scherm, namelijk het gebied dat ingenomen zal worden door de applicatie 705 wanneer ze gemaximaliseerd wordt. In een Microsoft Windows-omgeving betekent het werkgebied (work area) het gehele pixelgebied behalve de zogenoemde taakbalk (taskbar), die zich doorgaans onderaan het scherm bevindt, maar die zich ook elders kan bevinden.
In dit document betekent de uitdrukking een bitmap bevat semi-transparante pixels doorgaans dat de bitmap niet enkel uit volledig transparante pixels bestaat (dus ten minste één kleurpixel bevat en optioneel één of meerdere volledige transparante pixels), en zich in een venster bevindt dat geconfigureerd is om semi-transparant te zijn met een alfatransparantie in het bereik van 1% tot 99%, maar andere wijzen van het verschaffen van een bitmap met semi-transparante pixels kunnen eveneens gebruikt worden.
De onderhavige uitvinding heeft betrekking op een werkwijze voor het verschaffen van een grafische overlay, en op een computerprogrammaproduct aangepast voor het uitvoeren van een dergelijke werkwijze wanneer het wordt uitgevoerd op een computersysteem, en op een computersysteem dat een dergelijk computerprogrammaproduct omvat.
De onderhavige uitvinding zal in meer detail toegelicht worden voor het voorbeeld van een Microsoft Windows desktop-PC waarop een versie van Microsoft Windows draait als het O/S (bijvoorbeeld Windows XP of Windows NT of Windows 10 of Windows 12 of latere Windows-versies die dezelfde of gelijkaardige functionaliteit hebben met betrekking tot functies die relevant zijn voor de onderhavige uitvinding, zoals alfamengen en overlayen), en waarop één of meerdere applicaties draait, geselecteerd uit de groep bestaande uit: een webbrowser-applicatie, een spreadsheetapplicatie, een PDF-documentviewer, een PDF-documenteditor, een tekstviewer en een teksteditor; maar de uitvinding is daartoe niet beperkt, en kan ook gebruikt worden op andere rekenapparaten, zoals bijvoorbeeld een Apple-computer, of op draagbare apparaten zoals smartphones, waarop respectievelijke besturingssystemen en applicaties draaien.
Verwijzend naar de figuren,
FIG. 1 toont een schematisch blokdiagram van een klassiek computersysteem 100 dat een computerinrichting 101 omvat, verbonden met een toetsenbord 102 en een muis 103 als
BE2018/5041 invoerinrichtingen, en met een monitor of display of scherm 104 als uitvoerinrichting. De computerinrichting 101 omvat verder doorgaans opslagcomponenten (bv. in de vorm van flashgeheugen of één of meerdere harde schijven) die software opslaan (uitvoerbare machineinstructies), in het bijzonder, een besturingssysteem, device drivers (apparaatstuurprogramma's), en één of meerdere applicaties. De computerinrichting 101 omvat verder ten minste één centrale verwerkingseenheid CPU, geconfigureerd voor het uitvoeren van programma-instructies van een multitasking besturingssysteem met een grafische gebruikersinterface GUI (bijvoorbeeld MICROSOFT WINDOWS 10 verkrijgbaar van Microsoft Corporation van Redmond, Wash, US), en één of meerdere software-applicaties zoals een tekstviewer of een teksteditor (bv. Microsoft Word of Notepad (Kladblok) of WordPad) en/of een PDF-documentviewer (bv. Adobe Acrobat Reader) en/of een PDFdocumenteditor (bv. Nuance Power PDF), en/of een internetbrowser (bv. Microsoft Internet Explorer of Mozilla FireFox of Google Chrome), en/of andere applicaties.
Invoer vanaf het toetsenbord 102 en de muisinrichting 103 worden typisch afgehandeld door device drivers (apparaatstuurprogramma's), geconfigureerd voor het ontvangen van informatie via respectieve ingangspoorten (bv. een seriële poort of parallelle poort of USB-poort). Dergelijke computersystemen en applicatieprogramma's en device drivers zijn gekend in de stand der techniek.
In het specifieke voorbeeld van FIG. 1, genereert de computerinrichting 101 een grafisch beeld dat op het display 104 wordt weergegeven zoals aangegeven door het rechthoekige gebied 109 (enigszins verschoven ten opzichte van de displayrand getoond voor illustratieve doeleinden). Het grafisch beeld omvat beeldgedeelten gerelateerd aan een zogenoemd desktopvenster (in dit voorbeeld zichtbaar aan de linkerzijde van het scherm 104), en gerelateerd aan een applicatievenster (bv. MS Word) dat een tekstdocument toont (in dit voorbeeld aan de rechterzijde van het scherm 104). In het specifieke voorbeeld van FIG. 1, omvat het desktopvenster een afbeelding van een auto 107 en drie pictogrammen 108, waarbij elke pictogram een applicatie voorstelt, doch dit is slechts een voorbeeld. Ook getoond is een zogenoemde muisaanwijzer 199 of muiscursor die verschillende vormen kan aannemen, en die beweegt in overeenstemming met bewegingen van de muisinrichting 103, onder besturing van het besturingssysteem.
FIG. 2 is een schematische voorstelling van een mogelijke Z-orde van drie vensters of beeldvlakken 281, 282, 283 die gebruikt kunnen worden in het computersysteem van FIG. 1, om het gecombineerde beeld 109 te verkrijgen dat getoond wordt op het display 104 van FIG. 1. Het eerste venster 281 met de laagste Z-orde Z1 wordt het desktopvenster genoemd, en wordt doorgaans door het besturingssysteem gegenereerd. Het tweede venster 282 met een tweede Z-orde Z2 hoger dan Z1 is geassocieerd met applicatie 105, (in het voorbeeld MS Word), en geeft alfanumerieke of tekstuele informatie 106 weer. Het derde venster 283 met een Z-orde Z3 hoger dan Z2 wordt hierin de muisbitmap 199 genoemd. In het voorbeeld is de muisbitmap 199 voorgesteld door een relatief klein
BE2018/5041 venster 283, bv. met een rechthoekige vorm van ongeveer 18x22 pixels, of een vierkante vorm van 32x32 pixels, omvattende een veelheid eerste pixels PI die een witte pijl met een zwarte rand toont, omgeven of gedeeltelijk omgeven door een veelheid tweede pixels P2 die volledig transparante pixels zijn. Het desktopbeeld 281 en het applicatiebeeld 282 zijn doorgaans ondoorzichtige beelden. De drie beeldvlakken 281, 282, 283 worden op gekende wijzen gecombineerd, resulterend in het gecombineerde beeld dat getoond wordt op het display 104. Dit gecombineerde beeld kan bijvoorbeeld vastgelegd worden gebruikmakende van een welgekende print-scherm functie.
FIG. 3 toont een schematisch blokdiagram van een computersysteem 300 dat dezelfde hardwareconfiguratie kan hebben als het systeem 100 van FIG. 1. Het systeem 300 heeft opslagcomponenten die uitvoerbare instructies opslaan van een besturingssysteem met een grafische gebruikersinterface (bv. Windows 10) en een teksteditor-applicatie (bv. MS Word), en met een specifieke overlay-applicatie, gekend in de stand der techniek als LineReader (dat op het moment van het schrijven van dit document gedownload kan worden van http://www.iconico.com/lineReader/). De overlay-applicatie toont een semi-transparante lijn 310 die bewegingen van de muisaanwijzer 399 volgt. De lijn 310 kan door een gebruiker gebruikt worden om tekstfragmenten 306 te onderlijnen. In feite komt LineReader ook met een gebruikersinterface, maar dat aspect is niet relevant voor de onderhavige uitvinding en wordt derhalve niet getoond of verder besproken.
FIG. 4 is een schematische voorstelling van een mogelijke Z-orde van vier vensters of beeldvlakken 481-484 zoals gebruikt kunnen worden in het computersysteem 300 van FIG. 3, om het gecombineerde beeld 309 te verkrijgen dat getoond wordt op het display 304 van FIG. 3. Voor zover de uitvinders bekend, is FIG. 4 niet publiek beschikbaar in de stand der techniek, maar is een vermoedelijke implementatie.
Het eerste venster 481 op Z1 wordt het desktopvenster genoemd. Het tweede venster 482 op Z2 is geassocieerd met applicatie 305, (in het voorbeeld MS Word) en geeft alfanumerieke of tekstuele informatie 306 weer. Een derde venster 483 is geassocieerd met de LineReader-applicatie en heeft Z-orde Z3 hoger dan Z2 van de teksteditor-applicatie 305. De muisbitmap of het muisbeeldvlak 399 is gesitueerd in venster 484 met Z-orde Z4 hoger dan Z3.
Het desktopbeeld 481 en het applicatiebeeld 482 zijn doorgaans ondoorzichtige beelden. Het venster 483 bevat een kleine lijn of balk 310, en is geconfigureerd in doorklikmodus en in semitransparante modus met een configureerbare alfamengingswaarde die het mogelijk maakt om het transparantieniveau van de lijn of balk 310 te wijzigen. Zoals in FIG. 2 heeft het muisbeeldvlak 484 eerste pixels PI die een witte pijl met een zwarte rand tonen, ten minste gedeeltelijk omgeven door een veelheid tweede pixels P2 die volledig transparante pixels zijn. De vier beeldvlakken 481-484
BE2018/5041 worden op gekende wijzen gecombineerd, resulterend in het gecombineerde beeld 309 dat getoond wordt op het display 304. Een gedeelte van de balk is vergroot weergegeven, om te tonen dat alle pixels P3 van de lijn 310 dezelfde kleur hebben, bijvoorbeeld rood of blauw.
FIG. 5 toont een schematisch blokdiagram van een computersysteem 500 gelijkend op dat van FIG. 1 wanneer het een besturingssysteem O/S en twee applicaties draait: een teksteditor en een specifieke overlay-applicatie gekend in de stand der techniek als F.Lux, (dat op het moment van het schrijven van dit document onder andere gedownload kan worden van https://www.microsoft.eom/en-us/store/p/flux/9n9kdphv91jt), dat een semi-transparant schermvullend overlayvenster toont, en dat volgens dezelfde website werd gecreëerd in 2008, hetgeen bijna een decennium geleden is.
FIG. 6 is een schematische voorstelling van een mogelijke Z-orde van vier vensters of beeldvlakken 681-684 die gebruikt kunnen worden in het computersysteem van FIG. 5, om het gecombineerde beeld 509 te verkrijgen dat getoond wordt op het display 504 van FIG. 5. Voor zover de uitvinders bekend, is FIG. 5 niet publiek beschikbaar in de stand der techniek, maar is een vermoedelijke implementatie.
Het eerste venster 681 op Z1 wordt het desktopvenster genoemd. Het tweede venster 682 op Z2 is geassocieerd met applicatie 505 (in het voorbeeld MS Word) en geeft alfanumerieke of tekstuele informatie 506 weer. Een derde venster 683 op hoogte Z3 is geassocieerd met de F.Luxapplicatie en heeft Z-orde Z3 hoger dan Z2 van de teksteditor-applicatie 505. De muisbitmap of het muisbeeldvlak 599 is gesitueerd in venster 684 met Z-orde Z4 hoger dan Z3.
Het desktopbeeld 681 en het applicatiebeeld 682 zijn doorgaans ondoorzichtige beelden. Voor zover als bekend bij de uitvinders van de onderhavige uitvinding, bevat het venster 683 een monochrome bitmap met pixels P4 die alle dezelfde kleur hebben. Het venster 683 is geconfigureerd in doorklikmodus (d.w.z. dat het O/S alle muis-events naar onderliggende lagen stuurt, in dit voorbeeld: naar het desktopvenster 681 of naar het teksteditorvenster 682, afhankelijk van de positie van de muiscursor) en is geconfigureerd in semi-transparante modus met een configureerbare alfamengingswaarde. Zoals in FIG. 2 heeft het muisbeeldvlak 684 eerste pixels PI die een witte pijl met een zwarte rand tonen, ten minste gedeeltelijk omgeven door een veelheid tweede pixels P2 die volledig transparante pixels zijn. De vier beeldvlakken 681-684 worden op gekende wijzen gecombineerd, resulterend in het gecombineerde beeld 509 dat getoond wordt op het display 504.
Het computersysteem van FIG. 3 (met de LineReader-applicatie) kan behulpzaam zijn voor een gebruiker bij het lezen van tekstuele informatie op het scherm, maar is niet ideaal bij het extraheren van informatie uit tabellen, of bij het bewerken van een werkblad.
BE2018/5041
FIG. 7 toont een schematisch blokdiagram van een computersysteem 700 volgens een uitvoeringsvorm van de onderhavige uitvinding. Het computersysteem omvat een computerinrichting 701, en een toetsenbord 702 en een aanwijsinrichting of positie-inrichting 703 (bv. een muisinrichting of een touchpad of een joystick) en een display 704 verbonden met de genoemde computerinrichting 701.
De computerinrichting 701 omvat een opslag- of een geheugeninrichting (niet getoond) dat een besturingssysteem O/S met een grafische gebruikersinterface GUI bevat (bijvoorbeeld Windows XP of Windows NT of Windows 10 of Windows 12 of latere versies van Windows), en ten minste één applicatie geselecteerd uit de groep bestaande uit: een webbrowser-applicatie, een spreadsheetapplicatie, een PDF-documentviewer, een PDF-documenteditor, een tekstviewer en een teksteditor.
De computerinrichting 701 omvat verder een overlay-applicatie die een semi-transparant overlayvenster 883 toont dat ten minste twee semi-transparante elementen omvat: i) een horizontale lijn 721 of balk, en ii) een verticale lijn 722 of balk. De horizontale lijn 721 strekt zich bij voorkeur uit over nagenoeg de ganse breedte Wo van het overlayvenster 883, welke bij voorkeur gelijk is aan de breedte Wd van het pixelgebied of van het werkgebied van het scherm. De verticale lijn 722 of balk strekt zich bij voorkeur uit over nagenoeg de ganse hoogte Ho van het overlayvenster 883, welke bij voorkeur gelijk is aan de hoogte Hd van het pixelgebied of van het werkgebied van het scherm, ongeacht de werkelijke grootte van een of ander onderliggend applicatievenster 705 (bv. MS Excel). De overlay-applicatie, ook al is deze geconfigureerd in doorklikmodus, zorgt ervoor dat de horizontale lijn
721 en de verticale lijn 722 bewegen in overeenstemming met bewegingen van de invoerinrichting 703, of meer specifiek, dat de horizontale lijn 721 in overeenstemming met de Y-coördinaat van de muisaanwijzer 799 beweegt en dat de verticale lijn 722 in overeenstemming met de X-coördinaat van de muisaanwijzer 799 beweegt. Bij voorkeur zijn de horizontale lijn 721 en de verticale lijn 722 zodanig gepositioneerd dat de muisaanwijzer 799 zich ten minste gedeeltelijk op zowel de horizontale lijn 721 als de verticale lijn 722 bevindt, bijvoorbeeld zodanig dat het puntig uiteinde van de muisaanwijzer 799 zich in of nabij het midden van de rechthoekige kruising van de horizontale lijn 721 en de verticale lijn
722 bevindt. In eenvoudige termen uitgedrukt, verschaft deze uitvoeringsvorm een overlay-applicatie met een semi-transparant kruis dat mee beweegt met de muisaanwijzer 799.
FIG. 8 is een schematische voorstelling van een mogelijke Z-orde van vier vensters of beeldvlakken 881-884 die gebruikt kunnen worden in het computersysteem 700 van FIG. 7, om het gecombineerde beeld 709 te verkrijgen dat getoond wordt op het display 704 van FIG. 7.
Het eerste venster 881 op hoogte Z1 wordt het desktopvenster genoemd. Het tweede venster 882 op Z2, groter dan Zl, is geassocieerd met applicatie 705 (in het voorbeeld MS Excel), dat doorgaans alfanumerieke en/of tekstuele informatie presenteert, georganiseerd in rijen en kolommen. Een derde venster 883 is geassocieerd met een overlay-applicatie volgens een uitvoeringsvorm van de
BE2018/5041 onderhavige uitvinding, en heeft een Z-orde Z3 hoger dan Z2 van de spreadsheet-applicatie 705. De muisbitmap of het muisbeeldvlak 799 verschaft door het O/S met grafische gebruikersinterface GUI is gesitueerd in venster 884 op Z4, hoger dan Z3.
Het desktopbeeld 881 en het applicatiebeeld 882 zijn doorgaans ondoorzichtige beelden. Het venster 883 verschaft een in hoofdzaak schermvullende overlay, geconfigureerd in doorklikmodus en ook geconfigureerd in semi-transparante modus met een configureerbare alfamengingswaarde a (ook alfatransparantie genoemd) in het bereik van 5% tot 95%, of van 10% tot 90% of van 20% tot 80%, of van 30% tot 70%, waarbij ct=O% betekent dat de lijn volledig transparant is, en ct=100% betekent dat de lijn volledig ondoorzichtig is. De waarde van a hoort niet te laag te zijn, omdat het kruis anders bijna onzichtbaar is, en moeilijk te vinden is. De waarde van a hoort niet te hoog te zijn, omdat het kruis anders bijna ondoorzichtig is, en de informatie onder het kruis verduistert. De vakman en/of de gebruiker kan geschikte waarden vinden.
Bij voorkeur heeft de overlay-applicatie ook een ander venster (niet getoond in FIG. 7 en FIG. 8, maar zie bijvoorbeeld FIG. 35 voor een voorbeeld) als een gebruikersinterface. Dit gebruikersinterface-venster bevindt zich dan bij voorkeur hoger dan Z3 van het doorklikvenster 883. Bij voorkeur maakt dit gebruikersinterface-venster het mogelijk om verschillende kenmerken van het kruis te selecteren, zoals bijvoorbeeld: kleur, breedte van de lijnen die het kruis vormen en transparantieniveau.
Terug verwijzend naar FIG. 8, is een meerderheidsgedeelte van het semi-transparante venster
883 ingenomen door volledig transparante pixels P5. Een minderheidsgedeelte van het semitransparante venster 883 is ingenomen door de beweegbare horizontale lijn 721 en de beweegbare verticale lijn 722. De lijnen 721, 722 kunnen geïmplementeerd worden als zuiver rechthoekige gebieden, met of zonder een rand (bv. een zwarte rand), en met of zonder afgeronde randen, en met of zonder andere kenmerken. De lijnen 721, 722 kunnen monochrome pixels omvatten, of kunnen een kleurgradiënt omvatten. Bij voorkeur is de kleur van beide lijnen dezelfde, en instelbaar of selecteerbaar. In voorkeursuitvoeringsvormen zijn de hoogte hh van de horizontale lijn 721, en de breedte ww van de verticale lijn 722 aanpasbaar. De waarde van hh en ww zijn bij voorkeur gelijk (hetgeen de gebruikersinstellingen vereenvoudigt), maar dat is niet absoluut vereist. Zoals in FIG. 2 heeft het muisbeeldvlak 884 eerste pixels PI die een witte pijl met een zwarte rand tonen, ten minste gedeeltelijk omgeven door een veelheid tweede pixels P2 die volledig transparante pixels zijn. De opeenstapeling van vier beeldvlakken 881 tot 884 wordt op gekende wijzen gecombineerd, resulterend in het gecombineerde beeld 709 dat getoond wordt op het display 704.
Deze overlay-applicatie is uitermate geschikt voor het vinden van een correcte cel, omdat de horizontale lijn 721 en de verticale lijn 722 zich boven de respectievelijke rij-hoofdingen en kolomhoofdingen uitstrekken. Dit laat een gebruiker toe om onmiddellijk te zien of de muisaanwijzer op of boven de correcte cel gepositioneerd is of niet, zonder op enige kolom-hoofdingen en/of rij39
BE2018/5041 hoofdingen te hoeven klikken. Deze overlay-applicatie kan gezien worden als een uitermate bruikbare add-on voor spreadsheet-applicaties, maar kan ook gebruikt worden bij het extraheren van informatie uit tabellen gepresenteerd op webpagina's. Het tooi (hulpmiddel) is vooral bruikbaar op hogeresolutieschermen (met een resolutie van ten minste 1920 x 1080 pixels).
Het tooi kan de cognitieve last drastisch verlagen van een gebruiker die een bepaalde cel tracht te vinden welke zich op de kruising bevindt van een bepaalde rij (met een bepaalde rij-hoofding) en een bepaalde kolom (met een bepaalde kolom-hoofding). Zonder het overlaytool met het semitransparante kruis klikken veel gebruikers eerst voorlopig op een cel in de nabijheid van waar zij denken dat de doelcel zich waarschijnlijk bevindt, en daarna verifiëren zij of de correcte cel werd geselecteerd, door te vertrekken vanaf de geselecteerde cel (die na het klikken gemarkeerd wordt), en dan zijn of haar ogen horizontaal naar de rij-hoofdingen te bewegen terwijl zij in dezelfde rij als de geselecteerde cel proberen te blijven, en indien de rij niet correct is, op de cel hoger dan of lager dan de geselecteerde cel te klikken, en het proces te herhalen, en dan een vergelijkbare controle uit te voeren om te verifiëren of de geselecteerde cel zich in de correcte kolom bevindt door opnieuw vanaf de geselecteerde cel te vertrekken, en zijn of haar ogen omhoog te bewegen, naar de kolomhoofdingen, en als blijkt dat de kolom niet correct is, een cel links of rechts van de geselecteerde cel te selecteren, en optioneel de uiteindelijk geselecteerde cel te dubbel-checken. Dit kost tijd en is zeer foutgevoelig. Het is uiteraard mogelijk om andere wijzen te gebruiken, bv. door panning, of door een bepaalde kolom te selecteren door op de kolom-hoofding te klikken, of door gebruik te maken van freeze panes (een functie in Excel om een bepaald aantal rijen en/of kolommen te blokkeren), maar dit kost eveneens tijd, en introduceert het risico van het onopzettelijk wijzigen van de hoogte van een rij, of de breedte van een kolom etc. Daarentegen, met het overlaytool voorgesteld in FIG. 7, kan de gebruiker eenvoudig het kruis bewegen om boven de correcte rij-hoofding en kolom-hoofding gepositioneerd te worden, en dan te klikken om rechtstreeks de correcte cel te selecteren. Bovendien maakt het tooi het mogelijk om snel de geselecteerde positie te dubbel-checken door zijn of haar ogen onmiddellijk naar de rij-hoofdingen en kolom-hoofdingen te bewegen, zonder te moeten trachten in dezelfde rij of dezelfde kolom te blijven.
Hoewel geen objectieve evaluatietesten zijn uitgevoerd, wordt verwacht dat het overlaytool de prestaties en/of de concentratie kan helpen verbeteren voor mensen die veelvuldig met spreadsheets werken, en/of dat het risico van het extraheren of invoegen van informatie uit/in een incorrecte cel drastisch wordt verminderd.
De uitvinders van de onderhavige uitvinding zijn van mening dat het niet voor de hand ligt of triviaal is om tot deze oplossing te komen, wanneer men ter dege rekening houdt met het feit dat meer dan 100 miljoen mensen dagelijks gedurende bijna twee decennia gebruikmaken van
BE2018/5041 spreadsheets. Indien de hierin voorgestelde oplossing voor de hand zou liggen, dan zou deze reeds vele jaren alom beschikbaar zijn.
In plaats van een venster 883 te verschaffen met volledig transparante pixels P5 en twee beweegbare objecten in de vorm van een horizontale lijn 721 en een verticale lijn 722, kan hetzelfde visuele effect ook op andere wijzen geïmplementeerd worden, bijvoorbeeld door het verschaffen van een venstervlak 883 met een schermvullende bitmap met pixels met de kleur van het kruis (bv. rood), en door bovenop deze schermvullende bitmap vier andere bitmaps te plaatsen, die zich elk uitstrekken van één van de vier hoeken en die volledig transparante pixels hebben, en door het aanpassen van de breedte en de hoogte van elk van deze vier rechthoeken in overeenstemming met de cursorpositie 799, of in overeenstemming met bewegingen van de aanwijsinrichting 703, teneinde het kruis te emuleren als het gebied dat niet door de vier rechthoekige bitmaps wordt geoverlayed; of op andere geschikte manieren.
Het computersysteem van FIG. 3 (met de LineReader-applicatie) kan helpen bij het lezen van tekstuele informatie, maar helpt niet om oogvermoeidheid te verminderen die bijvoorbeeld veroorzaakt wordt door een helder witte achtergrond. Het computersysteem van FIG. 5 (met de F.Lux-overlay-applicatie) kan helpen om oogvermoeidheid te verminderen, maar verschaft geen lijn of balk om tekst te onderlijnen. Het zou handig zijn om één enkele overlay-applicatie te hebben die beide functies tegelijkertijd biedt.
Voor zover als bekend bij de uitvinders, is er thans geen computer-applicatie-tool op de markt beschikbaar die een overlay verschaft die het gelijktijdig (1) mogelijk maakt om de helderheid van een heldere (bv. witte) achtergrond te verminderen, en (2) die een semi-transparante lijn of een semitransparant kruis toont die muisbewegingen volgt. Initiële experimenten hebben getoond dat een loutere combinatie van de overlayvlakken getoond in FIG. 4 en in FIG. 6 geen acceptabele resultaten oplevert, zoals begrepen kan worden uit FIG. 13(d) tot FIG. 13(e), vanwege conflicterende vereisten. Inderdaad, opdat de tekstinformatie van het onderliggend document eenvoudig leesbaar is (bv. door voldoende contrast te behouden), moet het transparantieniveau van het derde venster 883 voldoende hoog zijn (bv. T>=80% of ct<=20% in FIG. 13(d) tot FIG. 13(e)). Tegelijkertijd, opdat de lijn eenvoudig herkenbaar is en tegelijk de tekst onder de lijn leesbaar is, moet het transparantieniveau van het derde venster 883 voldoende laag zijn (bv. T in het bereik van 30% tot 70%). Over de exacte cijfers kan gediscussieerd worden, maar de deskundige lezer zal het ermee eens zijn (na het implementeren van de hierboven beschreven werkwijze op een computer) dat er geen acceptabele of aantrekkelijke combinatie kan gevonden worden, of althans dat een dergelijke oplossing een zwaar compromis is.
Er is een behoefte naar een werkwijze om tegelijk de helderheid van een heldere achtergrond te verminderen en een semi-transparante lijn of een semi-transparant kruis te tonen die/dat muisbewegingen volgt. De combinatie behoort op een zodanige wijze gerealiseerd te worden dat (1)
BE2018/5041 tekstinformatie goede leesbaarheid behoudt, zowel tekstinformatie die door de lijn wordt geoverlayed, alsook tekstinformatie die niet door de lijn wordt geoverlayed, en dat (2) de semitransparante lijn eenvoudig van de achtergrond kan onderscheiden worden, maar die toch voldoende transparant is om de leesbaarheid van de tekst onder de lijn te behouden.
De onderhavige uitvinding beantwoordt deze behoefte door zowel een hoog niveau van transparantie (hoge T, lage ct) te verschaffen voor de (bv. schermvullende) bitmap, alsook tegelijkertijd een laag niveau van transparantie (lage T, hoge ct) te verschaffen voor de lijn, door de bitmap te perforeren, bijvoorbeeld zoals geïllustreerd in FIG. 10 en FIG. 29. Met een geperforeerde bitmap wordt bedoeld een bitmap met een eerste veelheid pixels P6 die volledig transparant zijn (bv. een pseudo-kleurwaarde hebben), en met een tweede veelheid pixels P7 die één of meerdere echte kleurwaarden hebben. De pixels P7 zullen alfagemengd worden met onderliggende lagen. Zoals begrepen kan worden uit FIG. 13(f) tot FIG. 13(i) verschaft deze combinatie functionele resultaten voor bijna alle transparantieniveaus van 5% tot 95% en bijna iedere kleur of intensiteit van de pixels P7, maar een voorkeursresultaat wordt verkregen voor transparantieniveaus van ongeveer 30% tot ongeveer 70%. Afhankelijk van het beoogde gebruik kan een gebruiker het transparantieniveau configureren tot een meer voorkeurhebbend niveau.
De combinatie van de twee eigenschappen semi-transparante lijn om tekstuele informatie te onderlijnen om cognitieve last te verminderen en de semi-transparante bitmap om de kleurtemperatuur te wijzigen om oogvermoeidheid te verminderen, wanneer ze gecombineerd worden, creëren een technische uitdaging gerelateerd aan hoe een semi-transparante bitmap en een semi-transparante lijn te combineren zodanig dat het transparantieniveau van de bitmap hoger is dan het transparantieniveau van de lijn. Dit levert een technisch probleem op gerelateerd aan het overlayen van beelden, het mengen van beelden, semi-transparantie, en alfamenging, hetgeen een probleem is dat in computertechnologie is geworteld, en de oplossing voorgesteld door de onderhavige uitvinding (gebruikmaken van een geperforeerde bitmap) is eveneens in computertechnologie geworteld. Deze technologie kan gebruikt worden voor het gemakkelijk lezen van tekstuele informatie op een scherm met minder oogvermoeidheid.
Voorts wordt opgemerkt dat het niet de overlay-applicatie is die tekstuele of alfanumerieke informatie genereert of weergeeft, maar de één of meerdere onderliggende applicatie(s), bv. een teksteditor, een spreadsheet, een webbrowser etc. De werkwijze van het overlayen presenteert derhalve geen informatie.
Ook al kan de overlay-applicatie uitgevoerd worden op een standaardcomputer met een standaard O/S (bijvoorbeeld Windows 10 van Microsoft Corporation), verschaft de hierin voorgestelde oplossing een technisch effect gerelateerd aan twee verschillende transparantieniveaus in één enkel semi-transparant venster, welk effect alles behalve standaard is, en veel verder gaat dan louter elektronen die door een transistor stromen. Verder kan ten minste een deel van de functionaliteit
BE2018/5041 geïmplementeerd worden in software op de centrale verwerkingseenheid of -eenheden van het computersysteem, of kan ten minste een deel van de functionaliteit geïmplementeerd worden in een grafische verwerkingseenheid (GPU), indien aanwezig in het rekenapparaat, in het bijzonder de alfamengingsoperatie, en/of de tijdmultiplexing zoals verder beschreven zal worden bij het bespreken van FIG. 28.
FIG. 9 toont een schematisch blokdiagram van een computersysteem 900 volgens een uitvoeringsvorm van de onderhavige uitvinding. Het computersysteem 900 omvat een computerinrichting 901, en een toetsenbord 902 en een aanwijsinrichting of positie-inrichting 903 (bv. een muis of een touchpad of een joystick of een stylus) en een display 904 verbonden met de computerinrichting 901.
De computerinrichting 901 omvat een opslaginrichting (niet getoond) of een geheugeninrichting (niet getoond) die een besturingssysteem O/S met een grafische gebruikersinterface GUI omvat (bijvoorbeeld Windows XP of Windows NT of Windows 10), en ten minste één applicatie geselecteerd uit de groep bestaande uit: een webbrowser-applicatie, een spreadsheet-applicatie, een PDF-documentviewer, een PDF-documenteditor, een tekstviewer en een teksteditor. In plaats van opgeslagen te zijn in de computerinrichting zelve, kunnen het O/S en/of de ten minste één applicatie downloadbaar zijn vanaf een server, bv. via een netwerkinterface. (dit geldt ook voor andere uitvoeringsvormen van de onderhavige uitvinding).
De computerinrichting 901 omvat verder een overlay-applicatie die een semi-transparant overlayvenster 1083 toont dat ten minste twee semi-transparante elementen omvat: i) een zogenoemde geperforeerde bitmap 930 die een meerderheidsgedeelte van het overlayvenster 1083 inneemt, en ii) een blok of een lijn 910 die slechts een minderheidsgedeelte van het overlayvenster 1083 inneemt. De lijn 910 is beweegbaar overeenkomstig bewegingen van de invoerinrichting 903. In plaats van opgeslagen te zijn in de computerinrichting zelve, kan de overlay-applicatie downloadbaar zijn vanaf een server, bv. via een netwerkinterface.
Het overlayvenster 1083 is geconfigureerd in doorklikmodus en in semi-transparante modus met een vooraf gedefinieerde of instelbare alfamengingswaarde a.
De bitmap 930 bevat een eerste veelheid pixels P6 die volledig transparant zijn, en een tweede veelheid pixels P7 met een kleurwaarde die alfagemengd zal worden met het grafisch beeld dat gevormd wordt door de opeenstapeling van onderliggende vensters (in het voorbeeld venster 1081 en 1082). In voorkeursuitvoeringsvormen is de eerste veelheid pixels P6 afwisselend gepositioneerd (geïnterleaved) met de tweede veelheid pixels P7, in een dambordpatroon, zoals getoond in FIG. 10 (zie ook FIG. 29). Dus bij voorkeur is 50% van de pixels volledig transparant, terwijl de andere 50% semi-transparant zijn. Het effect van het gebruikmaken van deze geperforeerde bitmap is dat de spatiaal gemiddelde kleur van de bitmap een schijnbaar hoger niveau van transparantie heeft dan het
BE2018/5041 geval zou zijn zonder de perforatie. Op deze wijze wordt de schijnbare transparantie van de bitmap 930 hoger gemaakt dan die van de lijn 910, ondanks dat beide geassocieerd zijn met hetzelfde venster 1083 dat slechts één enkele alfamengingswaarde a heeft.
Zoals het geval was voor de overlay-applicatie van FIG. 7, komt ook de overlay-applicatie van FIG. 9 doorgaans met een gebruikersinterface, welke is weergegeven in een tweede, ondoorzichtig venster (niet getoond in FIG. 10 maar zie bijvoorbeeld FIG. 35). In de uitvoeringsvorm van FIG. 10, zal de gebruikersinterface het typisch mogelijk maken dat een gebruiker de grootte (hoogte en/of breedte) van de lijn 910, het transparantieniveau a, de kleur van de pixels P3 van de lijn 910, de kleur van de tweede veelheid pixels P7, kan aanpassen.
De overlay-applicatie, zelfs al is één van haar vensters 1083 geconfigureerd in doorklikmodus, zorgt ervoor dat de lijn 910 beweegt in overeenstemming met bewegingen van de invoerinrichting 903. Dit kan bijvoorbeeld gerealiseerd worden door herhaaldelijk de positie van de native muisaanwijzer 999 op te vragen aan het besturingssysteem (bv. op basis van een timer, of gebaseerd op polling).
Bij voorkeur is de lijn 910 zodanig gepositioneerd dat de muisaanwijzer 999 zich nabij het midden van de lijn bevindt, doch dat is niet absoluut vereist, en de muisaanwijzer kan enigszins verschoven zijn ten opzichte van deze positie, bv. boven de lijn of onder de lijn gepositioneerd. Alternatief kan de muisaanwijzer ook gepositioneerd zijn aan of nabij het linker einde van de lijn, of aan of nabij het rechter einde van de lijn. In ieder geval verschaft de overlay-applicatie een semitransparante lijn 910 die mee beweegt met de muisaanwijzer 999, die beiden zichtbaar zijn.
FIG. 10 is een schematische voorstelling van een mogelijke Z-orde van vier vensters of beeldvlakken 1081-1084 die gebruikt kunnen worden in het computersysteem 900 van FIG. 9, om het gecombineerde beeld 909 te verkrijgen dat getoond wordt op het display 904 van FIG. 9.
Het eerste venster 1081 op Z1 wordt het desktopvenster genoemd. Het tweede venster 1082 op Z2 is geassocieerd met applicatie 905 (in het voorbeeld een teksteditor-applicatie, bv. MS Word), en geeft alfanumerieke of tekstuele informatie 906 weer. Een derde venster 1083 is geassocieerd met een overlay-applicatie volgens een uitvoeringsvorm van de onderhavige uitvinding en heeft een Z-orde Z3 hoger dan Z2 van de teksteditor-applicatie 905. De muisbitmap 999 of het muisbeeldvlak is gesitueerd in venster 1084 op Z4, hoger dan Z3.
Het desktopbeeld in het eerste venster 1081 en het applicatiebeeld in het tweede venster 1082 zijn doorgaans ondoorzichtige beelden. Het venster 1083 verschaft een in hoofdzaak schermvullende overlay geconfigureerd in doorklikmodus en ook geconfigureerd in semi-transparante modus met een configureerbare alfamengingswaarde a. Een minderheidsgedeelte van het overlayvenster 1083 is ingenomen door pixels P3 met de lijnkleur (bv. rood), een meerderheidsgedeelte is ingenomen door de geperforeerde bitmap, in het voorbeeld een bitmap
BE2018/5041 met een eerste veelheid pixels P6 die volledig transparante pixels zijn, en een tweede veelheid pixels P7 met een vooraf gedefinieerde constante kleur. Er wordt opgemerkt dat een dergelijke geperforeerde bitmap efficiënt geïmplementeerd kan worden door bijvoorbeeld eerst een kleine bitmap van bijvoorbeeld 64 x 64 pixels (of 100 x 100 pixels of ieder andere geschikte grootte) te genereren, en vervolgens deze kleine bitmap te kopiëren of te tegelen (tiling) in de in hoofdzaak schermvullende bitmap 1083, maar andere wijzen kunnen eveneens gebruikt worden. In een alternatieve uitvoeringsvorm kan deze functionaliteit geïmplementeerd worden als een functionaliteit in GPU-chips, waardoor dus slechts minimale belasting van de centrale CPU van de computerinrichting vereist is.
De lijn 910 kan geïmplementeerd worden als een zuiver rechthoekig gebied, met of zonder een rand (bv. een zwarte rand), en met of zonder afgeronde randen, en met of zonder afgeronde hoeken, en met of zonder andere kenmerken (bv. met een kleurgradiënt).
De overlay-applicatie van het computersysteem 900 is uitermate geschikt voor het lezen van grote hoeveelheden tekst op het scherm. In het bijzonder kan de overlay-applicatie gebruikt worden om de kleur (of kleurtemperatuur) van het onderliggende grafisch beeld te wijzigen, en/of de helderheid daarvan, hetgeen oogvermoeidheid kan helpen verminderen, en verschaft ze een beweegbare lijn 910 die een gebruiker kan gebruiken om tekst, die getoond wordt in één of meerdere onderliggende vensters, te markeren of te onderlijnen.
In bepaalde uitvoeringsvormen kan de kleurtemperatuur gewijzigd worden teneinde de hoeveelheid blauw licht te verminderen. In andere uitvoeringsvormen kan de kleurtemperatuur gewijzigd worden teneinde de hoeveelheid blauw licht te verhogen.
Hoewel dezelfde alfamengingswaarde a gebruikt wordt voor de lijn 910 als voor de bitmap 930, is de bitmap 930 doorzichtiger dan de lijn, gezien vanaf een afstand waarbij het oog geen individuele pixels onderscheidt, maar pixelinformatie spatiaal middelt.
Volledigheidshalve wordt opgemerkt dat andere perforatiepatronen werden getest (bijvoorbeeld waarbij 4 van de 16 pixels volledig transparant zijn, of 12 van de 16 pixels volledig transparant zijn), maar het schaakbordpatroon met 50% volledig transparante pixels kan de voorkeur genieten aangezien het de beste resultaten lijkt te verschaffen in termen van minst merkbare artefacten.
FIG. 11 toont een variant van het computersysteem van FIG. 9, waarbij de semi-transparante lijn 1120 van de overlay-applicatie zich uitstrekt over nagenoeg de volledige breedte van het scherm (bv. over de volledige breedte van het pixelgebied of de volledige breedte van het werkgebied van het scherm). Dit impliceert dat de lijn 1120 enkel verticale bewegingen van de invoerinrichting 1103 hoeft te volgen, geen horizontale bewegingen.
BE2018/5041
In het getoonde voorbeeld tonen twee applicaties tekstuele informatie, bijvoorbeeld een PDFdocumentviewer aan de linkerzijde van het scherm, en een teksteditorvenster aan de rechterzijde van het scherm. Dit kan bijvoorbeeld gebruikt worden bij het zij-aan-zij vergelijken van twee documenten, bijvoorbeeld bij het proeflezen van een vertaling, waarbij de brontekst zich in het PDF-document bevindt en de doeltekst zich in het tekstdocument bevindt. In het voorbeeld presenteert het venster
1282 op hoogte Z2 informatie geassocieerd met de teksteditor-applicatie, en presenteert het venster
1283 op hoogte Z3 informatie geassocieerd met de PDF-documentviewer.
FIG. 12 is een schematische voorstelling van een mogelijke Z-orde van vier vensters of beeldvlakken 1281 - 1284 zoals gebruikt kunnen worden in het computersysteem 1100 van FIG. 11, om het gecombineerde beeld 1109 te verkrijgen dat getoond wordt op het display 1104 van FIG. 11. Het vlak voor de muiscursor is niet getoond, en het vlak voor het gebruikersinterface-venster van de overlay-applicatie (indien aanwezig) is niet getoond, teneinde de tekeningen niet te overladen. Bij voorkeur echter, is de kleur van de pixels P3 en van de pixels P7, en het transparantieniveau a, en de hoogte van de lijn 1120 instelbaar via een gebruikersinterface, bijvoorbeeld een gebruikersinterface gelijkend op de voorbeeldmatige gebruikersinterface van FIG. 35 zonder een schuifbalk voor het selecteren van de breedte van de lijn.
FIG. 13 toont een veelheid van voorbeeldmatige screenshots (schermopnames). Elke rij toont een serie van vijf beelden die overeenkomen met een alfamengingswaarde a van respectievelijk 100%, 80%, 60%, 40% en 20%, overeenkomende met een transparantiewaarde T van het overlayvenster van respectievelijk 20%, 40%, 60%, 80% en 100%, waarbij ct=100% of T=0% betekent dat het overlaybeeld volledig ondoorzichtig is (behalve voor volledig transparante pixels), en ct=O% of T=100% betekent dat het overlaybeeld volledig transparant is, en waarden van 1% tot 99% of van 2% tot 98% of van 5% tot 95% betekenen dat het overlaybeeld semi-transparant is, wat betekent dat de pixels van het overlaybeeld naar evenredigheid gemengd zijn met het onderliggend beeld (behalve voor volledig transparante pixels).
Elk van de beelden getoond in FIG. 13(a) tot FIG. 13(e) bevat een tekstfragment geoverlayed met twee rode lijnen met kleur (R,G,B)=(255, 0, 0). Er worden twee lijnen gebruikt voor illustratieve doeleinden, om zowel het markeren als het onderlijnen van tekst in eenzelfde tekening te tonen.
In FIG. 13(a) is elk tekstfragment geoverlayed door twee rode lijnen met (R,G,B)=(255, 0, 0). De rest van het overlayvenster is volledig transparant. Deze serie beelden toont resultaten die vergelijkbaar zijn met wat verkregen zou worden door de overlay-applicatie van FIG. 3. Zoals begrepen kan worden, om een lijn te verschaffen die goed geschikt is voor het markeren en/of het onderlijnen van onderliggende tekstuele informatie zonder deze duister te maken, dient het transparantieniveau
BE2018/5041 bij voorkeur in het bereik te liggen van ongeveer 30% tot ongeveer 75%. Voor lagere waarden van T wordt de tekst onleesbaar. Voor hogere waarden van T is de lijn nauwelijks zichtbaar. (Er wordt opgemerkt dat een degelijke evaluatie op een scherm zou moeten uitgevoerd worden in plaats van op papier, maar de papieren versie laat toe de principes van de onderhavige uitvinding te begrijpen).
In FIG. 13(b) is elk tekstfragment overdekt (geoverlayed) met een semi-transparante bitmap die alleen lichtgrijze pixels bevat met (R,G,B)=(192, 192, 192), en in FIG. 13(c) is elk tekstfragment overdekt (geoverlayed) met een semi-transparante bitmap die alleen donkergrijze pixels bevat met (R,G,B)=(64, 64, 64). Deze serie beelden toont resultaten vergelijkbaar met wat verkregen zou worden door de overlay-applicatie van FIG. 5. Teneinde goede leesbaarheid van de onderliggende tekst te behouden, dient het transparantieniveau T bij voorkeur ten minste ongeveer 85% te zijn (of ct<=15%).
In FIG. 13(d) is elk tekstfragment geoverlayed (overdekt) door een loutere combinatie van de twee rode lijnen zoals in FIG. 13(a) en door een lichtgrijze bitmap zoals in FIG. 13(b), en in FIG. 13(e) is elk tekstfragment geoverlayed (overdekt) door een loutere combinatie van de twee rode lijnen zoals in FIG. 13(a) en door een donkergrijze bitmap zoals in FIG. 13(c).
Zoals hoger beschreven, wanneer het transparantieniveau T zeer laag is (bijv. <30%), dan is de lijn niet voldoende doorzichtig en wordt tekst daaronder verhuld; wanneer het transparantieniveau T middelmatig is (bv. van ongeveer 30% tot ongeveer 70% of ongeveer 75%), dan is de lijn goed zichtbaar en voldoende doorzichtig, maar is de tekst niet gemakkelijk leesbaar; en wanneer het transparantieniveau T te hoog is (bv. T>85%) dan is de tekst goed leesbaar, maar is de lijn bijna onzichtbaar). Geen enkele van deze combinaties verschaft dus een goede oplossing voor zowel de lijn als de bitmap.
In FIG. 13(f) wordt elk tekstfragment geoverlayed door twee rode lijnen zoals in FIG. 13(a) en door een zogenoemde geperforeerde bitmap zoals hoger beschreven, waarbij 50% van de pixels volledig transparante pixels P6 zijn, opgesteld in een schaakbordpatroon, en de andere 50% van de pixels lichtgrijze pixels P7 zijn, met (R,G,B)=(192, 192, 192). Zoals begrepen kan worden uit de tekeningen (maar uiteraard dient men dit op een echt scherm te evalueren), worden zeer acceptabele resultaten voor zowel de lijn als de bitmap verkregen voor transparantieniveaus T van ongeveer 30% tot ongeveer 75%.
In FIG. 13(g) is elk tekstfragment overdekt (geoverlayed) door twee rode lijnen zoals in FIG. 13(a) en door een zogenoemde geperforeerde bitmap zoals hoger beschreven, waarbij 50% van de pixels volledig transparante pixels P6 zijn, opgesteld in een schaakbordpatroon, en de andere 50% van de pixels donkergrijze pixels P7 zijn, met (R,G,B)=(64, 64, 64). Wederom worden zeer acceptabele
BE2018/5041 resultaten voor zowel de lijn als de bitmap verkregen voor transparantieniveaus T van ongeveer 30% tot ongeveer 75%.
In FIG. 13(h) is elk tekstfragment geoverlayed door twee rode lijnen zoals in FIG. 13(a) en door een zogenoemde geperforeerde bitmap zoals hoger beschreven, waarbij 50% van de pixels volledig transparante pixels P6 zijn, opgesteld in een schaakbordpatroon, en de andere 50% van de pixels zwarte pixels P7 zijn, met (R,G,B)= (0, 0, 0). Zoals begrepen kan worden, blijft de tekst die door de geperforeerde bitmap geoverlayed wordt, erg verrassend zeer goed leesbaar, ondanks dat 50% van de bitmappixels zuiver zwart zijn, dankzij de perforatie.
In FIG. 13(i) is elk tekstfragment geoverlayed door twee rode lijnen zoals in FIG. 13(a) en door een zogenoemde geperforeerde bitmap zoals hierboven beschreven, waarbij 50% van de pixels volledig transparante pixels P6 zijn, opgesteld in een schaakbordpatroon, en de andere 50% van de pixels witte pixels P7 zijn, met (R,G,B)= (255, 255, 255). Zoals begrepen kan worden, blijft de tekst die door de geperforeerde bitmap geoverlayed wordt, erg verrassend zeer goed leesbaar, ondanks dat 50% van de bitmappixels zuiver wit zijn, dankzij de perforatie.
Zoals begrepen kan worden uit alle screenshots in FIG. 13(f) tot FIG. 13(i), kan begrepen worden dat de kleur van de niet-volledig transparante pixels P7 van de geperforeerde bitmap gevarieerd kan worden over een breed bereik (van zuiver zwart tot zuiver wit), en dat deze niet kritisch is voor de leesbaarheid van de onderliggende tekstuele informatie.
Hoewel de uitvinders niet gebonden wensen te worden aan enige theorie, kunnen FIG. 14 en FIG. 15 helpen om het verschil tussen mengen met een monochrome bitmap versus mengen met een geperforeerde bitmap die 50% volledig transparante pixels bevat, beter te begrijpen. Op de verticale as wordt de intensiteit (I) getoond, de horizontale as is transparantie T of alfatransparantie a, waarbij a + T=100%.
FIG. 14(a) illustreert wat er gebeurt met een grafisch beeld dat tekstinformatie bevat met Oorspronkelijke Textpixels OT (zwart) met kleur (0, 0, 0) en Oorspronkelijke Achtergrondpixels OB (wit) met kleur (255, 255, 255) wanneer dit beeld wordt geoverlayed (gemengd) met een monochrome bitmap (zoals in FIG. 6) die 100% zwarte pixels met kleur (0, 0, 0) bevat, voor verschillende waarden van de transparantie T of alfamengingswaarde a.
In het algemeen is het resultaat van het overlayen of mengen van twee bitmaps een kleur met de volgende kleurcomponenten:
(Rm,Gm,Bm) = (Rl,Gl,Bl)x(l-T) + (R2,G2,B2)xT [1]
BE2018/5041 waarbij Rm,Gm,Bm de kleurcomponenten zijn van pixels van het resulterende beeld (het gemengde beeld), T het transparantieniveau is, (R1,G1,B1) de kleur is van een pixel van de eerste (overlay) bitmap, en (R2,G2,B2) de kleur is van een pixel van de tweede (onderliggende) bitmap.
Bij het mengen met een zwarte monochrome bitmap, dan is (R1,G1,B1)=(O, 0, 0).
Indien T=100%, dan blijven oorspronkelijk witte achtergrondpixels OB (255, 255, 255) en oorspronkelijk zwarte tekstpixels OT (0,0, 0) ongewijzigd na het mengen.
Indien T=50%, dan worden oorspronkelijk witte achtergrondpixels OB (255, 255, 255) grijze pixels MB (127, 127, 127) afgezien van afrondingsfouten, en oorspronkelijk zwarte tekstpixels blijven zwart MT (0, 0, 0).
Indien T=0%, dan worden oorspronkelijk witte achtergrondpixels OB (255, 255, 255) en oorspronkelijk zwarte tekstpixels OT (0,0, 0) beide zwart (0, 0, 0).
Dit wordt min of meer gevisualiseerd door de reeks van FIG. 13(c), behalve dat in FIG. 13(c) de monochrome bitmap pixels P4 met kleur (64, 64, 64) heeft in plaats van (0,0, 0).
FIG. 14(b) illustreert wat er gebeurt met een grafisch beeld dat tekstinformatie bevat met Oorspronkelijke Textpixels OT (zwart) met kleur (0, 0, 0) en Oorspronkelijke Achtergrondpixels OB (wit) met kleur (255, 255, 255) wanneer dit beeld wordt geoverlayed (gemengd) met een monochrome bitmap (zoals in FIG. 6) die 100% witte pixels met kleur (255, 255, 255) bevat, voor verschillende waarden van de transparantie T of alfamengingswaarde a.
Dezelfde mengformule [1] is van toepassing, doch nu is (R1,G1,B1)=(255, 255, 255).
Indien T=100%, dan blijven witte pixels (255, 255, 255) en zwarte pixels (0, 0, 0) ongewijzigd na het mengen.
Indien T=50%, dan blijven witte pixels (255, 255, 255) wit (255, 255, 255), en zwarte pixels (0,
0, 0) worden grijze pixels (127,127,127), afgezien van afrondingsfouten.
Indien T=0%, dan worden witte pixels (255, 255, 255) en zwarte pixels (0, 0, 0) beiden (255, 255, 255).
Dit wordt min of meer gevisualiseerd door de reeks van FIG. 13(b), behalve dat in FIG. 13(b) de monochrome bitmap pixels P4 met kleur (192,192,192) heeft in plaats van (255, 255, 255).
FIG. 15(a) illustreert wat er gebeurt met een grafisch beeld dat tekstinformatie bevat met Oorspronkelijke Textpixels OT (zwart) met kleur (0, 0, 0) en Oorspronkelijke Achtergrondpixels OB (wit) met kleur (255, 255, 255) wanneer dit beeld wordt geoverlayed (gemengd) met een geperforeerde bitmap (zoals in FIG. 10 of FIG. 12) die 50% volledig transparante pixels P6 bevat, en 50% zwarte pixels P7 met kleur (0,0, 0), voor verschillende waarden van de transparantie T (of alfamengingswaarde ct).
In het algemeen is het resultaat van het overlayen of mengen met een geperforeerde bitmap met 50% volledig transparante pixels P6:
BE2018/5041 (Rm,Gm,Bm) = (Rl,Gl,Bl)x(l-T) + (R2,G2,B2)xT[2] indien de overlaypixel niet volledig transparant is, hetgeen het geval is voor de pixels P7, (Rm,Gm,Bm) = (R2,G2,B2)[3] indien de overlaypixel volledig transparant is, hetgeen het geval is voor de pixels P6, dus gemiddeld (indien het aantal pixels P6, P7 elk 50% is):
(Rm,Gm,Bm) = 50% * [( R1,G 1, Bl)x(l-T) + (R2,G2,B2)xT] + 50% * (R2,G2,B2)[4] waarbij Rm,Gm,Bm de kleurcomponenten zijn van pixels van het resulterende beeld (het gemengde beeld), T het transparantieniveau is, (R1,G1,B1) de kleur is van een pixel van de eerste (overlay) bitmap, en (R2,G2,B2) de kleur is van een pixel van de tweede (onderliggende) bitmap.
Specifiek, bij het mengen met een geperforeerde zwarte bitmap met 50% volledig transparante pixels P6 en 50% zwarte pixels P7, dan is (R1,Gl,Bl)=(0, 0,0).
Indien T=100%, dan blijven witte pixels (255, 255, 255) en zwarte pixels (0, 0,0) ongewijzigd.
Indien T=50%, dan worden witte pixels (255, 255, 255) gemiddeld grijze pixels (191,191,191), en zwarte pixels blijven zwart (0,0, 0).
Indien T=0%, dan worden witte pixels (255, 255, 255) gemiddeld grijze pixels (127,127,127), en zwarte pixels (0, 0, 0) blijven zwart (0, 0, 0).
Dit wordt min of meer gevisualiseerd door de reeks van FIG. 13(h), als de twee lijnen worden weggelaten.
FIG. 15(b) illustreert wat er gebeurt met een grafisch beeld dat tekstinformatie bevat met Oorspronkelijke Textpixels OT (zwart) met kleur (0, 0, 0) en Oorspronkelijke Achtergrondpixels OB (wit) met kleur (255, 255, 255) wanneer dit beeld wordt geoverlayed (gemengd) met een geperforeerde bitmap (zoals in FIG. 10) die 50% volledig transparante pixels P6 bevat, en 50% witte pixels met kleur (255, 255, 255), voor verschillende waarden van de transparantie T of alfamengingswaarde a.
Dezelfde formules [2] tot [4] gelden.
Bij het mengen met een geperforeerde witte bitmap met 50% volledig transparante pixels P6 en 50% witte pixels P7, dan geldt (R1,G 1,Bl)=(255, 255, 255).
Indien T=100%, dan blijven witte pixels (255, 255, 255) en zwarte pixels (0,0,0) ongewijzigd.
Indien T=50%, dan blijven witte pixels (255, 255, 255) wit, en worden zwarte pixels gemiddeld (64, 64, 64).
Indien T=0%, dan blijven witte pixels (255, 255, 255) wit, en zwarte pixels worden gemiddeld grijze pixels (127,127,127).
Dit wordt min of meer gevisualiseerd door de reeks van FIG. 13(i), als de twee lijnen worden weggelaten.
BE2018/5041
Dus FIG. 14 kan helpen om te begrijpen wat er gebeurt met zwarte tekst op een witte achtergrond wanneer deze wordt geoverlayed door een monochrome (niet-geperforeerde) bitmap, zoals het geval is voor het beweegbaar object, en FIG. 15 kan helpen om te begrijpen wat er gebeurt met zwarte tekst op een witte achtergrond wanneer deze wordt geoverlayed door een geperforeerde bitmap.
De volgende paragraaf legt uit wat er gebeurt met zwarte tekst op een witte achtergrond wanneer deze wordt geoverlayed door een rode lijn. Dezelfde formule [1] geldt, doch nu geldt dat (R1,G1,B1) is (255,0,0).
EERSTE VOORBEELD:
Als eerste voorbeeld worden de kleuren van het beeldfragment van FIG. 13(e) voor T=80% berekend. Het oorspronkelijke beeld omvat: zwarte tekst (0, 0, 0) op een witte achtergrond (255, 255, 255).
Het overlayvenster omvat een (niet-geperforeerde) monochrome bitmap met zwarte pixels (0,0, 0), en een lijn met rode pixels (255,0,0), en mengen wordt gedaan met T ingesteld op 80%. Gebruikmakende van formule [1], kan worden berekend dat:
- witte achtergrondpixels geoverlayed door de zwarte overlaybitmap worden: (204, 204, 204),
- zwarte tekstpixels geoverlayed door de zwarte overlaybitmap worden: (0, 0, 0),
- witte achtergrondpixels geoverlayed door de rode lijn worden: 80%*(255, 255, 255) +20%*(255, 0, 0)=(255, 204, 204), wat zeer moeilijk te onderscheiden is van (204, 204, 204),
-de zwarte tekstpixels geoverlayed door de rode lijn worden: 80%*(0, 0, 0) +20%*(255, 0, 0)= (51, 0, 0).
TWEEDE VOORBEELD:
Als een tweede voorbeeld worden de kleuren van het beeldfragment van FIG. 13(h) voor
T=60% berekend.
Het oorspronkelijke beeld omvat: zwarte tekst (0, 0, 0) op een witte achtergrond (255, 255, 255).
De overlay omvat een geperforeerde bitmap met 50% volledig transparante pixels P6 en 50% zwarte pixels P7 (0, 0, 0), en een lijn met rode pixels (255, 0, 0), en mengen wordt gedaan met T ingesteld op 60%. Gebruikmakende van formules [1] tot [5], kan berekend worden dat:
-witte achtergrondpixels geoverlayed door de geperforeerde bitmap gemiddeld (204, 204, 204) worden, namelijk (255, 255, 255) voor pixels geoverlayed door volledig transparante pixels P6, en (153,153,153) voor de pixels geoverlayed door een zwarte pixel P7;
- zwarte tekstpixels geoverlayed door de zwarte overlaybitmap worden: (0, 0, 0),
- witte achtergrondpixels geoverlayed door de rode lijn worden: 60%*(255, 255, 255) +40%*(255, 0, 0)=(255,153,153), wat gemakkelijk te onderscheiden is van (204, 204, 204),
BE2018/5041
-de zwarte tekstpixels geoverlayed door de rode lijn worden: 60%*(0, 0, 0) +40%*(255, 0, 0)= (102, 0, 0).
Vergelijking van het eerste en tweede voorbeeld (of het monster van FIG. 13(e) voor T=80% en het monster van FIG. 13(h) voor T=60%) leert dat:
- in beide gevallen wordt zwarte tekst op een witte achtergrond (0, 0, 0) op een gemiddelde achtergrondkleur van (204, 204, 204);
- in het geval van een niet-geperforeerde bitmap wordt tekst geoverlayed door de rode lijn (51, 0, 0) op (255, 204, 204), welke tekst wel leesbaar is, maar de lijn is zeer moeilijk te onderscheiden van de achtergrond van (204, 204, 204), en derhalve niet erg behulpzaam om te onderlijnen, terwijl in het geval van de geperforeerde bitmaptekst geoverlayed door de rode lijn wordt (102, 0, 0) op (255, 153,153), welke tekst nog steeds zeer goed leesbaar is, maar bovendien kan de lijn gemakkelijk onderscheiden worden van de gemiddelde achtergrond van (204, 204, 204).
Testen hebben aangetoond dat (voor de instellingen van FIG. 13(h), hetgeen betekent: een geperforeerde bitmap met 50% volledig-transparante pixels en 50% zuiver zwarte pixels, opgesteld in een schaakbordpatroon), zeer goede resultaten ook verkregen worden voor vele andere lijnkleuren naast zuiver rood, bijvoorbeeld een zwarte lijn met kleur (0, 0, 0), een blauwe lijn met kleur (0, 0, 255), een donker rode lijn met kleur (128, 0, 0), een donker blauwe lijn met kleur (0, 0, 128), een donker groene lijn met kleur (0, 50, 0), een donker teal lijn met kleur (0, 51, 102), een groene lijn met kleur (0, 128, 0), etc., in feite voor de meeste relatief donkere lijnen, maar ook voor de meeste relatief heldere lijnen, bv. een gele lijn met kleur (255, 255, 0), een helder groene lijn met kleur (0, 255, 0), een turquoise lijn met kleur (0, 255, 255), een lichtgrijze lijn van (192, 192, 192) etc. Bij voorkeur kan de lijnkleur door de gebruiker geselecteerd worden via een gebruikersinterface, die de gebruiker in staat stelt te selecteren uit een veelheid geschikte kleuren die goede resultaten opleveren.
Terwijl de voorbeelden in FIG. 13 worden verschaft voor een overlaybitmap (geperforeerd of niet geperforeerd) met zwarte, donkergrijze, lichtgrijze of witte pixels, is de uitvinding daartoe niet beperkt, en de uitvinding werkt ook wanneer deze pixels geen grijswaardenpixels zijn, maar bijvoorbeeld blauwachtige pixels of geelachtige pixels zijn (bv. met kleur (81, 69, 44) of (83, 69, 40) of (86, 69, 35) etc.) of roodachtige pixels, of eigenlijk ieder andere kleur. Op deze wijze kan de oorspronkelijk witte achtergrondkleur omgevormd worden tot een blauwachtige of geelachtige of roodachtige, ...achtergrond, hetgeen aangenamer kan zijn om te lezen. In het bijzonder hebben geelachtige pixels de neiging een papierachtig uitzicht te verschaffen, vooral in combinatie met een textuurbitmap (zie verder), en hebben blauwachtige pixels de neiging een hemel-achtige of dagachtig uitzicht te verschaffen, enz., zowel voor de geperforeerde bitmap als de niet-geperforeerde bitmap. Deze techniek kan bijvoorbeeld ook gebruikt worden om de blauw licht inhoud te verminderen die
BE2018/5041 uitgezonden wordt door een display, hetgeen volgens sommige bronnen de slaap van de gebruiker kan beïnvloeden.
FIG. 16 tot FIG. 18 tonen drie voorbeelden van een enigszins groter tekstfragment, waardoor een beter begrip mogelijk is van hoe een lezer de tekstuele informatie op een scherm zou zien.
FIG. 16 is een screenshot (schermopname) van een tekstfragment geëxtraheerd uit US6333753B1, gepresenteerd door een PDF-viewer genoemd Nuance PDF Reader, waarbij het document geschaald is tot 200% in de PDF-viewer, weergegeven op een display met een native resolutie van 3840 x 2160 pixels, geconfigureerd met een resolutie van 2560 x 1440 pixels, en waarbij de tekst en applicaties geschaald zijn op 100% in Windows scherminstellingen. FIG. 17 tot FIG. 18 is een screenshot van hetzelfde tekstfragment, maar geoverlayed door een overlay-applicatie volgens de onderhavige uitvinding.
FIG. 16 toont een voorbeeldmatige tekstfragment dat zwarte tekst op een witte achtergrond bevat. In feite geven vele applicaties tekstuele informatie niet als zuiver zwarte pixels weer, maar gebruiken ook grijswaardenpixels, vooral nabij de randen van de alfanumerieke tekens. Dit aspect is gekend, maar is niet bijzonder relevant voor de onderhavige uitvinding.
FIG. 17 toont het tekstfragment van FIG. 16, geoverlayed door een overlayvenster dat een blauw lijnsegment bevat dat pixels met de kleur (R,G,B)=(0, 0, 255) bevat, en met het transparantieniveau T van het overlayvenster ingesteld op 50%. Het transparantieniveau T heeft enkel een invloed op de transparantie van de lijn, niet op de volledig transparante overlaypixels. Een dergelijk beeld kan waarschijnlijk ook verkregen worden met de LineReader-applicatie, zoals besproken in FIG. 3 en FIG. 4.
FIG. 18 toont het tekstfragment van FIG. 16, geoverlayed door een werkwijze volgens de onderhavige uitvinding, zoals beschreven in FIG. 9 en FIG. 10. De alfamengingswaarde is 50%, een minderheidsgedeelte van het overlaybeeld wordt ingenomen door een blauw lijnsegment met kleurwaarde vóór het mengen van (R,G,B)= (0, 0, 255), een meerderheidsgedeelte van het overlayvenster wordt ingenomen door een geperforeerde bitmap, waarbij deze bitmap 50% zuiver transparante pixels P6 heeft en 50% grijze pixels P7 met kleurwaarde vóór het mengen van (R,G,B)=(128, 128, 128), opgesteld in een dambordpatroon. Zoals begrepen kan worden uit FIG. 18, is de resulterende tekstuele informatie gemakkelijk te lezen, kan de lijn de gebruiker helpen om gefocusseerd te blijven, en kan de lijn gemakkelijk onderscheiden worden van de achtergrond.
De uitvinders gingen echter nog een stap verder, en experimenteerden ook met het overlayen van texturen (geperforeerd of niet geperforeerd). Testen hebben aangetoond dat het overlayen met bepaalde texturen een zuiver witte achtergrond (die glimmend lijkt) kan transformeren tot een matte
BE2018/5041 achtergrond, die veel aangenamer kan zijn om te lezen. In één experiment werd een afbeelding gemaakt van een mistige hemel, werd een subafbeelding geëxtraheerd, werd een horizontale en verticale gradiënt verwijderd, werd de gemiddelde kleur aangepast, werd het contrast tussen de helderste pixels en de donkerste pixels aangepast, en werd de subafbeelding als een semitransparante overlay over het scherm getegeld (tiled), wat verrassend goede resultaten opleverde, in het bijzonder omdat het schijnbaar de glimmende witte achtergrond van de meeste tekstdocumenten verwijdert, en deze vervangt door een matte achtergrond, terwijl de tekst verrassend goed leesbaar blijft.
Indien in de overlay geen semi-transparante lijn of kruis is toegevoegd (bv. voor het onderlijnen van te lezen tekst, of voor het aanduiden van de positie van een cel in een tabel of spreadsheet), dan kunnen goede resultaten verkregen worden door een relatief hoge transparantiewaarde te kiezen (bv. T in het bereik van ongeveer 80% tot 99% voor een nietgeperforeerde bitmap, of T in het bereik van ongeveer 60% tot 99% voor een geperforeerde bitmap).
Indien een lijn of kruis in het overlayvenster wordt toegevoegd, dan kan het beter zijn om de bitmap te perforeren, zoals hoger beschreven. Verrassenderwijs kan het textuurpatroon zelfs met een perforatie van 50% erg zichtbaar gemaakt worden, en kunnen esthetisch aantrekkelijke resultaten bekomen worden. Testen hebben echter aangetoond dat één enkele textuurbitmap mogelijks niet geschikt is voor alle transparantieniveaus, tenzij enige modificatie van de pixelwaarden wordt gedaan. In beide gevallen (geperforeerde of niet) dient het contrast van de textuurbitmap aangepast of afgestemd te worden als een functie van het transparantieniveau T of alfatransparantieniveau a van het overlayvenster.
In voorkeursuitvoeringsvormen is het transparantieniveau T van het overlayvenster selecteerbaar of instelbaar door de gebruiker, en wordt het contrastniveau van de textuurbitmap automatisch aangepast als een eerste- of tweede-orde polynoom van het transparantieniveau T. De waarde van het contrast zelve is niet kritisch (dit kan typisch variëren van ongeveer 0,5 keer een optimale waarde tot ongeveer 2,0 keer de optimale waarde), maar het is belangrijk dat deze waarde niet vast is, maar aangepast kan worden wanneer de transparantie van het overlayvenster gevarieerd wordt, anders kan de textuur te uitgesproken zijn en storend voor de lezer, of bijna onzichtbaar zijn en er bijna hetzelfde uitzien als een monochrome kleuroverlay. Uiteraard is het ook mogelijk om meerdere textuurbitmaps in de overlay-applicatie te gebruiken, maar dat verbruikt meer geheugenruimte, en kan vermeden worden.
De uitvinders hebben gevonden dat goede resultaten, bv. bijna-optimale resultaten, verkregen worden wanneer het contrast zodanig wordt aangepast dat de textuur of het patroon nauwelijks zichtbaar is, of enigszins boven nauwelijks zichtbaar is. Indien het contrastniveau onder dit ideale waardebereik wordt gekozen, dan wordt een witte achtergrond omgezet in een glimmende (bv. glanzende kunststofachtige) achtergrond zonder dat de textuur of het patroon merkbaar is. Indien
BE2018/5041 het contrastniveau boven dit ideale waardebereik wordt gekozen, wordt het patroon of de textuur dominant en kan dit de gebruiker afleiden. Wanneer het contrastniveau echter binnen het ideale waardebereik wordt gekozen, zal het patroon of de textuur een kleine variatie van de achtergrondkleur veroorzaken, hetgeen wordt gezien of ervaren als een textuur of een patroon of een matte kleur, en dit lijkt zelfs de scherpte van de teksttekens daaronder te verhogen. Het ideale waardebereik kan verschillend zijn voor iedere patroonbitmap, en is bij voorkeur ook afstembaar door de gebruiker, naast de automatische aanpassing gerelateerd aan de transparantiewaarde T.
FIG. 19 toont een schematisch blokdiagram van een computersysteem 1900 volgens een uitvoeringsvorm van de onderhavige uitvinding, dat gezien kan worden als een variant van het computersysteem van FIG. 10 en het computersysteem van FIG. 12. Het meeste van wat hierboven is beschreven, is ook hier van toepassing, behalve dat het overlaybeeld van het computersysteem 1900 van FIG. 19 ten minste twee semi-transparante elementen omvat: i) een (niet-geperforeerde) lijn 1910, en ii) een geperforeerde textuurbitmap 1930. De lijn 1910 is beweegbaar overeenkomstig bewegingen van de invoerinrichting 1903.
De geperforeerde textuurbitmap kan afgeleid worden uit een vooraf gedefinieerde textuurbitmap (zie bijvoorbeeld FIG. 27) door het toekennen van een pseudo-kleurwaarde die overeenkomt met een vooraf gedefinieerde volledig-transparantiewaarde aan de helft van de pixellocaties, dat zijn de pixels P6, en door het optioneel wijzigen van de gemiddelde kleur van de andere pixels P8, het optioneel aanpassen van het contrast van de pixels P8, en het optioneel tegelen (tiling) van de genoemde bitmap om het gebied van het overlayvenster 2083 te vullen.
FIG. 20 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken 2081-2084 die gebruikt kunnen worden in het computersysteem van FIG. 19.
FIG. 21 toont een schematisch blokdiagram van een ander computersysteem 2100 volgens een uitvoeringsvorm van de onderhavige uitvinding, welk computersysteem een overlay-applicatie bevat voor het verschaffen van een overlayvenster dat ten minste één semi-transparant object omvat in de vorm van een zogenoemde geperforeerde textuurbitmap met een eerste veelheid volledig transparante pixels P6 en een tweede veelheid ondoorzichtige of semi-transparante pixels P8. Deze uitvoeringsvorm is een variant van de uitvoeringsvorm van FIG. 21, waarbij de lijn 1910 is weggelaten.
FIG. 22 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken 2281-2284 die gebruikt kunnen worden in het computersysteem van FIG. 21. Zoals hoger beschreven kan de overlay-applicatie ook een tweede, ondoorzichtig gebruikersinterface-venster (niet getoond) hebben, waar een gebruiker een gemiddelde kleur van de pixels P8 kan selecteren, en/of de
BE2018/5041 alfatransparantiewaarde et kan bijbestellen, en/of handmatig een contrast van de textuurbitmap kan aanpassen, en/of een textuurbitmap uit een lijst van textuurbitmaps kan selecteren.
FIG. 23 toont een schematisch blokdiagram van een ander computersysteem 2300 volgens een uitvoeringsvorm van de onderhavige uitvinding, welk computersysteem een overlay-applicatie bevat voor het verschaffen van een overlayvenster dat ten minste één semi-transparant object omvat in de vorm van een zogenoemde niet-geperforeerde textuurbitmap bestaande uit een veelheid semitransparante pixels P8. Deze uitvoeringsvorm is een variant van de uitvoeringsvorm van FIG. 23, waarbij de geperforeerde pixels P6 worden weggelaten.
FIG. 24 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken 2481-2484 die gebruikt kunnen worden in het computersysteem 2300 van FIG. 23.
Zoals begrepen kan worden uit FIG. 14 en FIG. 15, verschaffen uitvoeringsvormen met een overlay-applicatie met een geperforeerde textuurbitmap (geïllustreerd in FIG. 21 en FIG. 22) voor een transparantieniveau T in het bereik van 0% tot 100% enerzijds, en uitvoeringsvormen met een overlayapplicatie met een niet-geperforeerde textuurbitmap (geïllustreerd in FIG. 23 en FIG. 24) voor een transparantieniveau T in het bereik van 50% tot 100% anderzijds, (spatiaal gemiddeld) vergelijkbare resultaten. Deze uitvoeringsvormen zijn uitermate bruikbaar voor het omzetten van een glanzend (bv. kunststofachtig) achtergrondvlak naar een mat (bv. papierachtig) achtergrondvlak, hetgeen aangenamer is om te lezen.
FIG. 25 toont het tekstfragment van FIG. 16, geoverlayed (overdekt) door een overlaybeeld gebruikmakende van een transparantieniveau T van 50% (of een alfamengingswaarde van 50%), waarbij een minderheidsgedeelte van het overlaybeeld is ingenomen door een blauw lijnsegment (zoals in FIG. 16) en een meerderheidsgedeelte van het overlayvenster een geperforeerde textuurbitmap omvat, waarbij de bitmap 50% volledig transparante pixels heeft en waarbij de andere 50% pixels een textuurbitmap vormen met een gemiddelde kleurwaarde van (R,G,B)=( 128, 128, 128). Het resulterende geoverlayde beeld heeft dus een gemiddelde kleur van ongeveer (224, 224, 224). Vergelijking van FIG. 25 en FIG. 18 verschaft een voorbeeld van het verschil tussen een overlay met een geperforeerde monochrome bitmap, en een overlay met een geperforeerde textuurbitmap. Dit overlaybeeld kan gecreëerd worden door het computersysteem 1900 van FIG. 19.
FIG. 26 toont een voorbeeld van een overlaybeeld zoals gegenereerd kan worden door het computersysteem van FIG. 23, gebruikmakende van een niet-geperforeerde textuurbitmap met een gemiddelde kleur van ongeveer (61, 61, 61) en gebruikmakende van een transparantieniveau van
BE2018/5041
T=80%, wat resulteert in een gemiddelde achtergrondkleur van het geoverlayde beeld van ongeveer (216, 216, 216). Vergelijking van FIG. 26 en FIG. 25 demonstreert dat het gebruikmaken van een geperforeerde bitmap de beeldkwaliteit, en daardoor de leesbaarheid van de tekstuele informatie, niet of niet significant verslechtert.
FIG. 27 toont de voorbeeldmatige textuurbitmap die gebruikt werd om het beeld van FIG. 25 te genereren, vóór kleuraanpassing, contrastaanpassing en perforatie. In dit voorbeeld was de textuurbitmap een grijswaardenbeeld, maar de uitvinding is daartoe niet beperkt, en gekleurde textuurbeelden kunnen eveneens gebruikt worden.
Experimenten hebben aangetoond dat de textuurbitmap eenvoudig omgevormd kan worden tot een andere textuurbitmap met een gewenste kleur (Rnew,Gnew,Bnew) door elk van de kleurcomponenten afzonderlijk te behandelen, bijvoorbeeld gebruikmakende van de volgende formules of equivalente formules:
Rnew[x,y] = minmax(0, CF x (Rorig[x,y]-Ravg) + Rnew, 255);[6]
Gnew[x,y] = minmax(0, CF x (Gorig[x,y]-Gavg) + Gnew, 255);[7]
Bnew[x,y] = minmax(0, CF x (Borig[x,y]-Bavg) + Bnew, 255);[8] waarbij Rnew[x,y] de Rode component is van de pixel van de nieuwe textuurbitmap op positie (x,y); en Rorig [x,y] de Rode component is van de pixel van de oorspronkelijke textuurbitmap op positie (x,y); en CF de contrastfactor is (CF=1 betekent: geen contrastverhoging, CF<1 betekent het contrast verminderen, CF>1 betekent het contrast vergroten); Ravg is de gemiddelde Rode kleurcomponent, Gavg is de gemiddelde Groene kleurcomponent, en Bavg is de gemiddelde Blauwe kleurcomponent van de oorspronkelijk textuurbitmap; en waarbij minmax(a,b,c) een functie is die het resultaat b verschaft begrensd tot het bereik van a tot c, die dus de waarde b retourneert tenzij b<a in welk geval a wordt geretourneerd, of tenzij b>c in welk geval c wordt geretourneerd. CF is een drijvendekommagetal, maar het resultaat van elke formule wordt omgezet naar een geheel getal van 0 tot 255 (ook byte genoemd).
CF kan berekend worden gebruikmakende van één van de volgende formules, of een equivalente formule:
CF = K+LxT; [9] of
CF = M + N xT +Qx (TxT) [10] waarbij K, L, M, N, Q vooraf gedefinieerde constanten zijn die afhankelijk kunnen zijn van de specifiek gekozen textuurbitmap, en T het transparantieniveau van het overlayvenster is.
In eenvoudige termen uitgedrukt, kunnen deze formules gebruikt worden om een histogram van de pixelwaarden van de textuurbitmap omhoog of omlaag te verschuiven (bijvoorbeeld van Ravg naar Rnew), en die de breedte van de histogramkarakteristiek kunnen verbreden of versmallen.
BE2018/5041
FIG. 28 illustreert schematisch hoe het overlayen met een geperforeerde bitmap, bijvoorbeeld een geperforeerde monochrome bitmap of een geperforeerde textuurbitmap, die herhaaldelijk heen en weer wordt verschoven over een afstand van één enkele pixel, gebruikt kan worden voor tijdmultiplexing of tijdmiddeling, bijkomend aan het spatiaal middelen.
FIG. 28 (op tijd tl) toont een patroon bestaande uit vier pixels, twee van deze pixels zijn volledig transparante pixels P6, de andere twee pixels zijn kleurpixels die ondoorzichtig zijn of die alfagemengd zullen worden. Dit patroon van 2x2 pixels wordt typisch herhaald (getegeld) over de gehele overlaybitmap.
FIG. 28 (op tijd t2) toont een patroon gelijkend op dat van FIG. 28 (op tijd tl), maar waarbij andere pixellocaties volledig transparant zijn.
Het is interessant om op te merken dat het patroon van FIG. 28 (op t2) kan verkregen worden door een loutere verschuiving van de bitmap van FIG. 28 (op tl) met 1 pixel omhoog, of 1 pixel naar links, of 1 pixel naar rechts of 1 pixel omlaag. Dus indien de overlaybitmap opzettelijk 1 pixel breder en/of 1 pixel hoger wordt gekozen dan de breedte W en de hoogte H van het overlayvenster, en indien de overlaybitmap ieder frame met 1 pixelpositie heen en weer wordt verschoven, of iedere twee frames, of iedere drie frames, dan wordt het onderliggend beeld op een tijd-gemultiplexte wijze geoverlayed. Indien de multiplexfrequentie voldoende hoog is (bijvoorbeeld ten minste 15 Hz of ten minste 20 Hz of ten minste 25 Hz of ten minste 30 Hz), dan kan tijdmultiplexing visuele artefacten veroorzaakt door het overlayen met de geperforeerde bitmap, verminderen. Indien de multiplexfrequentie laag is (bijvoorbeeld minder dan 10 Hz), dan kunnen pixels aan randen schijnbaar wervelen.
Het is ook mogelijk om twee afzonderlijke bitmaps te gebruiken, elk ter grootte van W x H, en afwisselend te alfamengen met de ene of de andere bitmap, maar een dergelijke implementatie zou meer geheugen vereisen en meer tijd om de twee bitmaps te creëren, en geniet derhalve niet de voorkeur.
FIG. 29 en FIG. 30 zijn volledigheidshalve toegevoegd om te tonen dat de hierboven beschreven principes nog steeds werken, ondanks verdere beeldverwerking buiten de overlayapplicatie zelve. Experimenten hebben aangetoond dat de schermresolutie en de schaalfactor of zoomfactor voor tekst en applicaties geselecteerd in het rekenapparaat ook beïnvloeden hoe het uiteindelijke beeld er zal uitzien. Twee specifieke voorbeelden worden hier getoond, in FIG. 29 (a)-(c) enerzijds en FIG. 30 (a)-(c) anderzijds.
FIG. 29(a) toont een screenshot van hetzelfde beeld als werd gebruikt in FIG. 18 (met een geperforeerde monochrome bitmap-overlay), maar met 2 lijnen, weergegeven op een weergaveinrichting met een native resolutie van 3840 x 2160, geconfigureerd aan een resolutie van 2560 x 1440,
BE2018/5041 met een schaalfactor (of zoomfactor) voor tekst en applicaties van 100%, zoals bijvoorbeeld geselecteerd kan worden in het schermresolutie dialoogvenster in geval van het Windows 10 besturingssysteem.
FIG. 29(b) toont het beeld van FIG. 29(a), ingezoomd met een factor van ongeveer 350%. In dit beeld kunnen individuele pixels onderscheiden worden. Het dambordpatroon wordt zichtbaar maar de tekst blijft zeer goed leesbaar.
FIG. 29(c) toont een gedeelte van het beeld van FIG. 29(b), verder ingezoomd met een factor van ongeveer 200%, dus in totaal ingezoomd met een factor van ongeveer 700%. In dit beeld is het effect van het overlayen met een geperforeerde bitmap met 50% volledig transparante pixels en 50% semi-transparante pixels duidelijk zichtbaar. Het was erg verrassend voor de uitvinders dat de individuele pixels niet, of niet in belangrijke mate merkbaar zijn in FIG. 29(a), zelfs al zijn ze daadwerkelijk aanwezig.
FIG. 30(a) toont hetzelfde beeld als FIG. 29(a), weergegeven op een weergave-inrichting met een native resolutie van 3840 x 2160, geconfigureerd aan een resolutie van 2560 x 1440, maar met een schaalfactor (of zoomfactor) voor tekst en applicaties van 125%, zoals bijvoorbeeld geselecteerd kan worden in het schermresolutie dialoogvenster in geval van het Windows 10 besturingssysteem.
FIG. 30(b) toont het beeld van FIG. 30(a), ingezoomd met een factor van ongeveer 350%. In dit beeld kunnen individuele pixels onderscheiden worden, maar het dambordpatroon is minder uitgesproken.
FIG. 30(c) toont een gedeelte van het beeld van FIG. 30(b), verder ingezoomd met een factor van ongeveer 200%, dus in totaal ingezoomd met een factor van ongeveer 700%. In dit beeld is het effect van het overlayen met een geperforeerde bitmap met 50% volledig transparante pixels, en 50% semi-transparante pixels niet langer duidelijk zichtbaar, maar in plaats daarvan lijkt een patroon van 5 bij 5 pixels aan het beeld te zijn toegevoegd, waarschijnlijk als gevolg van filtering gerelateerd aan het zoomen, uitgevoerd buiten de overlay-applicatie, maar binnen de computerinrichting, aangezien een screenshot gemaakt kan worden.
Wederom zijn de individuele pixels niet, of niet in belangrijke mate merkbaar in FIG. 30(a), ook al zijn ze daadwerkelijk aanwezig. De tekst van FIG. 30(a) is zeer goed leesbaar, en de lijn is gemakkelijk onderscheidbaar van de achtergrond.
Het lijkt een kwestie van smaak te zijn welk van de twee beelden, dat van FIG. 29(a) of dat van FIG. 30(a) het beste is. Het beeld van FIG. 29(a) lijkt enigszins scherper, dat van FIG. 30(a) lijkt enige rimpel of patroon te vertonen vanwege het gecombineerde effect van de perforatie gevolgd door filtering, wat eveneens esthetisch aantrekkelijk is, aangezien het de indruk geeft van een matte achtergrond. In ieder geval verschaffen beide beelden een tekst die gemakkelijk leesbaar is, zowel tekst op de achtergrond alsook tekst onder de lijn, en in beide gevallen is de lijn gemakkelijk te
BE2018/5041 onderscheiden van de achtergrond, en in beide gevallen is de gemiddelde helderheid van de witte achtergrond gereduceerd, hetgeen tot minder oogvermoeidheid kan leiden.
Experimenten met andere schaalfactoren voor tekst en applicaties (in het bijzonder 150%, 175%, 225%, 250%, 350%) tonen resultaten vergelijkbaar met die van FIG. 30(a) tot FIG. 30(c), terwijl schaalfactoren van 200% of 300% resultaten lijken op te leveren vergelijkbaar met die van FIG. 29(a) tot FIG. 29(c).
FIG. 31 toont een flowdiagram van een computer-geïmplementeerde werkwijze volgens sommige uitvoeringsvormen van de onderhavige uitvinding. Deze werkwijze wordt uitgevoerd door een computersysteem van FIG. 9, FIG. 11, FIG. 19, FIG. 21, FIG. 36 en FIG. 38.
In stap 3101 wordt een overlayvenster verschaft.
Het overlayvenster kan geconfigureerd zijn als een ondoorzichtig venster, hetgeen betekent dat dit venster niet-transparante pixels en/of volledig transparante pixels kan hebben, maar geen semi-transparante pixels.
Alternatief kan het overlayvenster geconfigureerd zijn als een semi-transparant venster met een alfatransparantie a in het bereik van 1% tot 99% of van 2% tot 98% of van 5% tot 95%, hetgeen betekent dat dit venster volledig transparante pixels en/of semi-transparante pixels kan hebben, maar geen volledig ondoorzichtige pixels.
In stap 3102 wordt ten minste één zichtbaar object verschaft in het genoemde overlayvenster, waarbij het ten minste één zichtbaar object een bitmap omvat met een eerste veelheid pixels P6 die volledig transparante pixels zijn, en een tweede veelheid pixels P7, P8 die ondoorzichtige pixels of semi-transparante pixels zijn (dus niet volledig transparante pixels); en waarbij de eerste veelheid pixels P6 en de tweede veelheid pixels P7, P8 geïnterleaved (afwisselend opgesteld) zijn, bijvoorbeeld opgesteld volgens een dambordpatroon.
In stap 3103 wordt het overlayvenster geconfigureerd in doorklikmodus.
Stap 3103 kan uitgevoerd worden vóór stap 3102.
In een uitvoeringsvorm is het overlayvenster geconfigureerd als een ondoorzichtig venster, en zijn de tweede veelheid pixels P7, P8 ondoorzichtige pixels.
In een andere uitvoeringsvorm is het overlayvenster geconfigureerd als een semi-transparant venster, en zijn de tweede veelheid pixels semi-transparante pixels.
Met geconfigureerd in doorklikmodus wordt bedoeld dat het besturingssysteem O/S is geïnformeerd dat input-berichten (bv. veroorzaakt door muis- en toetsenbord-events) gestuurd moeten worden naar één of meerdere applicaties die geoverlayed worden, of naar componenten daarvan, in plaats van naar de overlay-applicatie zelve. Of meer correct, indien de overlay-applicatie bijvoorbeeld twee vensters bevat, één gebruikersinterface-venster dat niet in doorklikmodus geconfigureerd is en een ander venster dat wel in doorklikmodus geconfigureerd is, dan zal het O/S
BE2018/5041 muis-events naar het gebruikersinterface-venster sturen wanneer de muis zich boven dit Ul-venster bevindt, en naar de één of meerdere onderliggende applicaties indien de muis zich boven het doorklikvenster bevindt, maar niet boven het gebruikersinterface-venster.
FIG. 32 toont een flowdiagram van een meer specifieke werkwijze 3200 volgens een voorkeursuitvoeringsvorm van de onderhavige uitvinding. Deze werkwijze wordt uitgevoerd door een computersysteem van FIG. 9, FIG. 11, FIG. 19, FIG. 36 en FIG. 38.
In stap 3201 wordt een overlayvenster verschaft, en geconfigureerd als een semi-transparant venster met een alfatransparantie a in het bereik van 1% tot 99% of van 2% tot 98% of van 5% tot 95% of van 10% tot 90% of van 20% tot 80% of van 30% tot 70%.
In stap 3202 wordt ten minste één zichtbaar object (bv. een horizontale lijn) in het overlayvenster verschaft, die slechts een minderheidsgedeelte (bv. minder dan 20% of minder dan 10%) van het gebied van het overlayvenster inneemt. Bijvoorbeeld, indien het overlayvenster een breedte W en een hoogte H heeft, dan kan het eerste object bijvoorbeeld een korte horizontale lijn zijn met een lengte kleiner dan W/2 en een hoogte kleiner dan H/10, en dus een gebied innemen dat kleiner is dan WxH/20; of kan bijvoorbeeld een horizontale lijn zijn die zich uitstrekt over de ganse breedte W van het overlayvenster, en die een hoogte heeft kleiner dan H/10, dus een gebied inneemt dat kleiner is dan WxH/10.
In stap 3203 wordt een bitmap, of een object met een bitmap verschaft, welke bitmap een eerste veelheid pixels P6 heeft die volledig transparant zijn, en een tweede veelheid pixels P7, P8 met een kleurwaarde die alfagemengd dient te worden met pixels van één of meerdere onderliggende vensters. De tweede veelheid pixels P7 kunnen alle dezelfde kleur hebben (geperforeerde monochrome bitmap), of zij kunnen verschillende kleuren hebben. De kleuren kunnen een kleurgradiënt vormen, of kunnen een textuurbitmap vormen. De eerste en tweede veelheid pixels zijn geïnterleaved (afwisselend gepositioneerd), bijvoorbeeld volgens een vast patroon, bijvoorbeeld een schaakbordpatroon. De bitmap kan zich boven het zichtbaar object bevinden.
In stap 3204 wordt het overlayvenster geconfigureerd als een zogenoemd doorklikvenster. Het besturingssysteem zal input-events zoals muisklikken en muisbewegingen naar de één of meerdere onderliggende vensters (of naar het bureaubladvenster) versturen.
In stap 3205 wordt positie-informatie X,Y van een zogenoemde muisaanwijzer of muiscursor verkregen, bijvoorbeeld in de vorm van schermcoördinaten. De muiscursorpositie kan bijvoorbeeld opgevraagd worden bij het besturingssysteem, bijvoorbeeld in het geval van het Windows O/S door gebruik te maken van de functie GetCursorPos. Het is een voordeel om deze coördinaten te gebruiken omdat dit het mogelijk maakt om het ten minste eerste zichtbaar object uit te lijnen of te positioneren ten opzichte van de muiscursor. Alternatief kan bewegingsinformatie of verplaatsingsinformatie dx, dy verkregen worden van het besturingssysteem in de vorm van ruwe
BE2018/5041 input-berichten, bijvoorbeeld door het besturingssysteem te configureren om ruwe input-berichten te verzenden, en door de overlay-applicatie te configureren om ruwe input-berichten te ontvangen en te verwerken. Dit aspect wordt in meer detail toegelicht in octrooiaanvrage BE2017/5895, ingediend door dezelfde aanvrager op 04 december 2017, met als Engelse titel METHOD AND DEVICE AND SYSTEM FOR PROVIDING DUAL MOUSE SUPPORT, of Nederlandse titel: WERKWIJZE EN INRICHTING EN SYSTEEM VOOR HET VERSCHAFFEN VAN DUBBELE MUIS ONDERSTEUNING, welk document hierin in zijn geheel is opgenomen door verwijzing, en waarnaar hierin verder verwezen zal worden als de mede in behandeling zijnde dubbele-muis aanvrage. In het geval van tegenstrijdigheden tussen de onderhavige aanvrage en de mede in behandeling-zijnde aanvrage, dan overheerst het onderhavige document.
In stap 3206 wordt een positie van het ten minste één zichtbaar object (bv. de X- en Y-positie van een korte horizontale lijn, of de Y-positie van een grote horizontale lijn) aangepast in overeenstemming met de verkregen muiscursorpositie X,Y of in overeenstemming met de bewegingsof verplaatsingsinformatie dx,dy.
In geval van een klein of groot kruis bevindt de muiscursorpositie zich bij voorkeur aan of nabij de kruising van de horizontale en verticale lijn. In geval van een kleine horizontale lijn kan de muiscursor zich aan het linkeruiteinde of aan het rechteruiteinde of in het midden van de horizontale lijn bevinden, of in elk andere geschikte positie.
Stap 3205 en stap 3206 worden herhaald, bijvoorbeeld getriggerd door een timer-event met een periode in het bereik van 1 ms tot 200 ms, bv. in het bereik van 2 ms tot 100 ms, bijvoorbeeld gelijk aan ongeveer 5 ms of ongeveer 10 ms, of ongeveer 16,7 ms (60Hz), of ongeveer 20 ms of ongeveer 25 ms of ongeveer 30 ms of ongeveer 40 ms of ongeveer 50 ms of ongeveer 100 ms of ongeveer 150 ms. Deze waarde is niet kritisch. Hoe kleiner deze waarde, hoe sneller de overlayapplicatie reageert op muisbewegingen, maar hoe meer rekenkracht vereist is onder andere voor het tekenen van het ten minste één object op tussenliggende posities tijdens beweging van de invoerinrichting. De vakman kan een geschikt compromis vinden tussen snelle responstijd en een redelijke hoeveelheid rekenkracht. De overlay-applicatie kan het mogelijk maken voor de gebruiker om uit ten minste twee vooraf gedefinieerde waarden te selecteren.
FIG. 33 toont een flowdiagram van een andere werkwijze 3300 volgens een uitvoeringsvorm van de onderhavige uitvinding. Deze werkwijze wordt uitgevoerd door het computersysteem van FIG. 7 en het computersysteem van FIG. 38.
In stap 3301 wordt een overlayvenster verschaft.
Het overlayvenster kan een bitmap hebben die in hoofdzaak het gehele gebied van het venster vult met volledig transparante pixels (zoals getoond in FIG. 7 en in FIG. 38), of kan een
BE2018/5041 geperforeerde bitmap omvatten (zoals in FIG. 10 of FIG. 12) of een geperforeerde textuurbitmap (zoals in FIG. 20 en FIG. 22) of een niet-geperforeerde textuurbitmap (zoals in FIG. 24).
In geval het venster volledig transparante pixels omvat (zoals getoond in FIG. 7 en FIG. 38), kan het overlayvenster 883, 3983 geconfigureerd worden als ondoorzichtig of als semi-transparant. In geval het venster een geperforeerde bitmap omvat, wordt het overlayvenster 883, 3983 bij voorkeur geconfigureerd als semi-transparant. Bij voorkeur is de alfatransparantie van het semi-transparante venster een waarde ct in het bereik van 1% tot 99% of van 2% tot 98% of van 5% tot 95% of van 10% tot 90% of van 20% tot 80% of van 30% tot 70%.
In stap 3302 wordt in het overlayvenster een eerste zichtbaar en beweegbaar object verschaft dat de vorm heeft van een horizontale lijn 721, 3821 die slechts een minderheidsgedeelte (bv. minder dan 20% of minder dan 10%) inneemt van het gebied van het overlayvenster. De horizontale lijn strekt zich bij voorkeur uit over de ganse breedte van het overlayvenster, dat zich bij voorkeur zelf over het gehele pixelgebied van het scherm uitstrekt, of over het gehele werkgebied van het scherm.
In stap 3303 wordt in het overlayvenster een tweede zichtbaar en beweegbaar object verschaft dat de vorm heeft van een verticale lijn 722, 3822 die slechts een minderheidsgedeelte (bv. minder dan 20% of minder dan 10%) inneemt van het gebied van het overlayvenster. De verticale lijn strekt zich bij voorkeur uit over de ganse hoogte van het overlayvenster, dat zich bij voorkeur zelf over het gehele pixelgebied van het scherm uitstrekt, of over het gehele werkgebied van het scherm.
Samen vormen de horizontale lijn en de verticale lijn een kruis. Indien het venster een bitmap omvat, situeren de lijnen zich boven de genoemde bitmap, zodat zij zichtbaar zijn. In de uitvoeringsvorm van FIG. 7, zijn de horizontale lijn 721 en de verticale lijn 722 monochrome lijnen, bijvoorbeeld met een rode of blauwe of zwarte of paarse of gele kleur, of een andere kleur. In dit geval is het overlayvenster bij voorkeur geconfigureerd als semi-transparant, zodat tekst onder de lijnen 721, 722 zichtbaar is. In de uitvoeringsvorm van FIG. 38, bevatten de horizontale lijn 3821 en de verticale lijn 3822 een geperforeerde bitmap. In dit geval kan het overlayvenster 3983 geconfigureerd worden als semi-transparant of kan het volledig transparante pixels bevatten.
In stap 3304 is het overlayvenster geconfigureerd als een zogenoemd doorklikvenster, zodat het besturingssysteem toetsenbord- en muis-events naar het/de onderliggende venster(s) zal sturen, ondanks dat het overlayvenster daarboven ligt, en een hogere Z-orde heeft.
In stap 3305 wordt positie-informatie X,Y van een zogenoemde muisaanwijzer of muiscursor verkregen, bijvoorbeeld in de vorm van schermcoördinaten.
Alternatief kan bewegingsinformatie gerelateerd aan bewegingen van de aanwijsinrichting verkregen worden van het besturingssysteem door gebruik te maken van ruwe input-berichten, in welk geval de verwerking van de ruwe input-berichten en de eigenlijke update van de positie van het/de visuele object(en) bij voorkeur losgekoppeld is van elkaar, bijvoorbeeld zoals in meer detail wordt uitgelegd in de mede in behandeling zijnde dubbele-muis-aanvraag.
BE2018/5041
In stap 3306 wordt de positie van de beweegbare objecten (bv. de X-coördinaat van de verticale lijn, en de Y-positie van de verticale lijn) aangepast in overeenstemming met de verkregen muiscursorpositie X,Y of in overeenstemming met de bewegingsinformatie.
De native muiscursorpositie bevindt zich bij voorkeur aan of nabij de kruising van de horizontale en verticale lijn.
Stap 3305 en stap 3306 worden herhaald, bijvoorbeeld gebruikmakende van een timerinterrupt met een periode in het bereik van 1 ms tot 200 ms, bijvoorbeeld in het bereik van 2 ms tot 100 ms, bij voorbeeld gelijk aan ongeveer 5 ms of ongeveer 10 ms, of ongeveer 16,7 ms (60Hz), of ongeveer 20 ms of ongeveer 30 ms of ongeveer 40 ms of ongeveer 50 ms of ongeveer 100 ms of ongeveer 150 ms.
FIG. 34 toont een vereenvoudigd hoogniveau-blokdiagram als een mogelijke voorstelling van de softwarecomponenten en hardwarecomponenten gesitueerd in een computersysteem, die doorgaans samenwerken bij het uitvoeren van een werkwijze volgens uitvoeringsvormen van de onderhavige uitvinding, maar er wordt expliciet op gewezen dat de onderhavige uitvinding niet tot deze implementatie beperkt is, en dat andere implementaties eveneens gebruikt kunnen worden. Het hoofddoel van dit blokdiagram is een mogelijke implementatie te tonen van een uitvoeringsvorm geïmplementeerd in een Windows-compatibele computer.
FIG. 34 toont een overlay-applicatie 3474 en een besturingssysteem of O/S 3460 (bijvoorbeeld MICROSOFT WINDOWS 10 verkrijgbaar van Microsoft Corporation van Redmond, Wash, US), een grafische versneller 3425, uitvoer-interfaces 3480, een display 3492, een invoer-interface 3410, een invoer-aanwijsinrichting 3401 en een bitmapgenerator 3420. Andere componenten omvatten, binnen het O/S 3460, invoer device drivers 3466 en grafische API (Application Programming Interface) 3440.
FIG. 34 is erg gelijkend op FIG. 8 van US6333753(B1), dat door verwijzing hierin in zijn geheel is opgenomen, maar vooral FIG. 8 daarvan en de bijhorende beschrijving. Aangezien veel aspecten reeds gekend zijn, hoeven zij niet opnieuw in volle detail te worden toegelicht.
De belangrijkste overeenkomsten van het blokdiagram 3400 van dit document en het blokdiagram van FIG. 8 van US6333753(B1) zijn:
* het intern functioneren van de video back-end componenten, de grafische API 3440, en de grafische versneller 3425 en de uitvoer-interfaces 3480 kunnen grotendeels gelijkaardig zijn als die van de stand der techniek, bv. de wijze waarop volledig transparante pixels worden verwerkt, en de wijze waarop alfamenging wordt uitgevoerd.
De belangrijkste verschillen tussen het blokdiagram 3400 van dit document en het blokdiagram van FIG. 8 van US6333753(B1) zijn:
BE2018/5041 * de onderhavige uitvinding vereist geen muis met aanraaksensoren, en vereist derhalve geen speciale device drivers (apparaatstuurprogramma's) 3466. In plaats daarvan kunnen klassieke device drivers, zoals bijvoorbeeld een standaard USB-muisdriver (muisaansturing) gebruikt worden;
* de overlay-applicatie 3474 van de onderhavige uitvinding gebruikt geen geanimeerde fadein en fade-out. Optioneel kan echter tijdmultiplexing van de geperforeerde bitmap worden gebruikt zoals hoger beschreven (FIG. 28), in welk geval een tijdmultiplexcomponent 3415 wordt gebruikt, die nieuwe positie-informatie van de verschoven geperforeerde en/of getextureerde bitmap kan versturen, bijvoorbeeld ieder frame, of iedere twee frames, of iedere drie frames, of iedere vier frames. De timing is bij voorkeur gesynchroniseerd met de beeldfrequentie;
* in de onderhavige uitvinding kan de bitmapgenerator 3420 één of meerdere stationaire en/of beweegbare objecten genereren, zoals bijvoorbeeld een kleine horizontale lijn, of een klein kruis (bv. dat een kleine horizontale lijn en een kleine verticale lijn omvat), of een grote horizontale lijn (die zich bv. uitstrekt over de ganse breedte van het overlayvenster), of een groot kruis (dat bv. een grote horizontale lijn omvat die zich bij voorkeur over de ganse breedte uitstrekt, en een grote verticale lijn die zich bij voorkeur over de ganse hoogte uitstrekt);
* hoewel niet getoond in FIG. 34, verschaft de onderhavige uitvinding bij voorkeur ook een gebruikersinterface-venster, waarvan een voorbeeld wordt getoond in FIG. 35. Het gebruikersinterface-venster wordt doorgaans als een tweede, hoofdzakelijk ondoorzichtig venster geïmplementeerd (het kan volledig transparante pixels omvatten), en bevindt zich bij voorkeur (in Zorde) tussen het overlayvenster en het muiscursorvlak. Via dit gebruikersinterface-venster kan de gebruiker bijvoorbeeld afmetingen en/of een kleur van de horizontale lijn (pixels P3) instellen of selecteren of wijzigen, en/of het gewenste transparantieniveau T (of alfatransparantiewaarde ct) instellen of selecteren, en/of een kleur van monochrome pixels (P7) van de overlaybitmap instellen of selecteren, en/of een gemiddelde kleur van pixels van textuurpixels (P8) instellen of selecteren, etc. Dit gebruikersinterface-venster is niet geconfigureerd in doorklikmodus, omdat het in staat moet zijn om muisklikken en/of toetsenbordinvoer te ontvangen, en het gebied ervan is doorgaans gereduceerd, bv. geminimaliseerd tijdens normaal gebruik van de grafische overlay-applicatie.
Hoewel niet getoond in FIG. 34, voert de computerinrichting naast de overlay-applicatie 3474 doorgaans ook één of meerdere applicatieprogramma's uit, zoals bijvoorbeeld een tekstverwerker, een PDF-viewer, een webbrowser, een spreadsheet, etc.
De invoer-positioneringsinrichting 3401, bijvoorbeeld een muis of een touchpad, is via kabels 3403 verbonden met invoer-interface 3410, bijvoorbeeld een USB-invoer-interface, die signalen van de invoerinrichting verwerkt en/of doorstuurt naar invoer-device drivers 3466 die een component vormen binnen het O/S 3460. De device drivers (apparaatstuurprogramma's) 3466 interpreteren de door de aanwijsinrichting 3401 geproduceerde signalen en genereren, als reactie toepasselijke events.
BE2018/5041
In het bijzonder doet het O/S een muisaanwijzer of muiscursor bewegen in overeenstemming met bewegingen van het apparaat 3401, en geeft deze events door aan een applicatie (bv. een tekstprocessor of webbrowser), aangezien de overlay-applicatie 3474 geconfigureerd is in doorklikmodus of doorlaat-modus.
Bitmapgenerator 3420 kan het volgende omvatten:
* een horizontale-lijngenerator 3422 voor het genereren van ten minste één horizontale lijn of balk met een vooraf gedefinieerde of aanpasbare vorm (bv. rechthoekig met scherpe randen of met afgeronde randen) en grootte (bv. breedte en hoogte) en positie en uitzicht (bv. als een monochrome bitmap, of met een kleurgradiënt, of als een geperforeerde bitmap);
* een verticale-lijngenerator 3424 voor het genereren van ten minste één verticale lijn of balk met een vooraf gedefinieerde of aanpasbare vorm (bv. rechthoekig met scherpe randen of met afgeronde randen) en grootte (bv. breedte en hoogte) en positie en uitzicht (bv. als een monochrome bitmap, of met een kleurgradiënt, of als een geperforeerde bitmap);
* een achtergrond-bitmapgenerator 3426 voor het genereren van een relatief grote bitmap die bij voorkeur het gehele gebied van het overlayvenster inneemt, bijvoorbeeld als een monochrome bitmap (vergelijkbaar met FIG. 6), of als een geperforeerde bitmap met 50% volledig transparante pixels P6 en 50% monochrome pixels P7 (zoals in FIG. 10 en FIG. 12), of als een geperforeerde bitmap met 50% volledig transparante pixels P6 en 50% textuurpixels P8 (zoals in FIG. 20 en FIG. 22), of als een bitmap met 100% volledig transparante pixels P5 (zoals in FIG. 8, FIG. 37 en FIG. 39), of als een bitmap met 100% textuurpixels P8 (zoals in FIG. 24). Eén of meerdere van deze objecten kunnen on the fly (gaandeweg) gegenereerd worden, optioneel met de hulp van een grafische API 3440, en/of met behulp van een grafische versneller 3425.
Zoals hoger toegelicht, in het geval dat een semi-transparant venster als het (eerste) overlayvenster wordt gebruikt, dan wordt het transparantieniveau T daarvan bij voorkeur gekozen in het bereik van 30% tot 75% (of de alfamengingswaarde wordt bij voorkeur gekozen in het bereik van 25% tot 70%), zodanig dat onderliggende documentobjecten goed zichtbaar zijn (hoewel optioneel enigszins donkerder gemaakt of getextureerd) doorheen het overlayvenster.
In het geval dat tijdmultiplexing wordt gebruikt (hetgeen geheel optioneel is), dan zal de tijdmultiplexing-module of het tijdmultiplexing-proces 3415 instructies afgeven, bij voorkeur één zulke instructie voor iedere N displayframes (waarbij N bij voorkeur gelijk is aan 1 of 2 of 3 of 4), om de geperforeerde bitmap over een aantal pixels heen en weer te verschuiven, bij voorkeur een oneven aantal pixels, bv. 1 pixel omhoog/omlaag of 1 pixel links/rechts, zodanig dat een bepaalde pixel van het onderliggend documentobject afwisselend geoverlayed (overdekt) wordt door een volledig transparante pixel of door een semi-transparante pixel. Deze instructies zullen afgeleverd worden, zoals schematisch voorgesteld door lijn 3430 en/of lijn 3413, aan O/S 3460, dat op zijn beurt deze instructies kan doorgeven aan grafische API 3440 en uiteindelijk naar grafische versneller 3425.
BE2018/5041
Indien er geen grafische versneller wordt gebruikt, dan kan, zoals gesymboliseerd door lijn 3455, grafische API 3440 grafische uitvoer rechtstreeks afleveren aan uitvoer-interfaces 3480 (specifiek een standaard videokaart, niet getoond, daarin) die, op hun beurt toepasselijke videosignalen zullen genereren en die signalen via kabels 3486 aanbieden aan display 3492. In dit geval zal computersysteem 3400 voldoende snel moeten zijn om de toepasselijke grafische mogelijkheden in software te implementeren, die anders door versneller 3425 zouden geleverd worden.
Hoewel alfatransparantie functionaliteit ondersteund wordt door een brede verscheidenheid van tegenwoordig bestaande grafische versnellers, kan deze functionaliteit eenvoudig gesimuleerd worden in software, op een welgekende wijze, door conventionele 2-D (twee-dimensionale) of 3-D (drie-dimensionale) grafische API's, zoals D3D (dat een 3-D grafische API is, geproduceerd door Microsoft Corporation als een component van een WINDOWS-besturingssysteem, waarbij WINDOWS een geregistreerd handelsmerk is van Microsoft Corporation), OpenGL (dat tegenwoordig beschikbaar is in de stand der techniek) of GDI (dat historisch slechts een 2-D laagniveau grafische verwerkingslaag is, momenteel geproduceerd door Microsoft Corporation en eveneens als een standaardcomponent van een WINDOWS-besturingssysteem is opgenomen).
In een variant van het blokdiagram van FIG. 34 vraagt de overlay-applicatie niet de positie van de native cursorpositie van het besturingssysteem, maar omvat verder een verwerker (handler) van ruwe input-berichten geconfigureerd voor het verwerken van ruwe input-berichten verschaft door het besturingssysteem, en die aangepast is voor het extraheren van bewegingsinformatie dx, dy uit de genoemde event messages, en voor het bewegen van ten minste één beweegbaar object, en voor het optioneel overrulen van de native cursorpositie van het O/S. Hoewel niet relevant om de onderhavige uitvinding te begrijpen, wordt dit aspect in meer detail beschreven in de mede in behandeling zijnde dubbele-muis-aanvraag.
De bitmapgenerator 3420 kan één of meerdere beeldgegevensstructuren genereren, die één of meerdere bitmaps kunnen zijn, of een verzameling opdrachten in een taal zoals Display Postscript of Quickdraw. Ongeacht de details moet de beeldgegevensstructuur voldoende informatie bevatten zodat het gerasterd kan worden (indien niet reeds een bitmap) aan de displayresolutie of anderszins verwerkt voor weergave op het display.
FIG. 35 toont een voorbeeldmatig gebruikersinterface-venster zoals gebruikt kan worden door een overlay-applicatie volgens de onderhavige uitvinding. Dit gebruikersinterface-venster kan getoond worden als een tweede, ondoorzichtig venster, bovenop het eerste overlayvenster 883, 1083,1284, 2083, 2283, 2483, 3783, 3983, of kan bijvoorbeeld getoond worden als een zeer klein object (bv. een rechthoekig object met een bitmap die een logo van de overlay-applicatie bevat, of met een tekstveld dat de naam van de overlay-applicatie bevat, en met een grootte kleiner dan 150 x 30 pixels, bv.
BE2018/5041 kleiner dan 100 x 30 pixels), of kan in de taakbalk geminimaliseerd worden. De overlay-applicatie kan voorzien zijn om het gebruikersinterface-venster te vergroten wanneer de muis over de bitmap met het logo beweegt. Op deze wijze is het gebruikersinterface-venster eenvoudig bereikbaar, terwijl deze niet veel ruimte op het scherm inneemt.
FIG. 36 toont een schematisch blokdiagram van een ander computersysteem 3600 volgens een uitvoeringsvorm van de onderhavige uitvinding, met een computerinrichting 3601 die een overlayapplicatie heeft voor het verschaffen van een overlayvenster 3783 met een beweegbaar object 3610 dat een geperforeerde bitmap heeft. De lijn 3610 is beweegbaar overeenkomstig bewegingen van de invoerinrichting 3603. Deze uitvoeringsvorm biedt het voordeel dat het overlayvenster 3783 ondoorzichtig kan zijn, waarbij de meeste pixels volledig transparante pixels kunnen zijn, en toch kan het effect van een semi-transparante lijn 3610 verkregen worden. Een dergelijke uitvoeringsvorm kan in het bijzonder bruikbaar zijn in rekenapparaten die geen alfamengings-functionaliteit hebben, zoals bijvoorbeeld eReader-apparaten.
FIG. 37 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken 3781 tot 3784 die gebruikt kunnen worden in het computersysteem 3600 van FIG. 36.
FIG. 38 toont een schematisch blokdiagram van een ander computersysteem 3700 volgens een uitvoeringsvorm van de onderhavige uitvinding, met een computerinrichting 3801 die een overlayapplicatie heeft voor het verschaffen van een overlayvenster 3983 met een beweegbaar object in de vorm van een geperforeerd kruis. Het kruis is samengesteld uit een horizontale lijn 3821 en een verticale lijn 3822, en is beweegbaar in overeenstemming met bewegingen van de invoerinrichting 3803.
FIG. 39 is een schematische voorstelling van een Z-orde van vier vensters of beeldvlakken 3981-3984 die gebruikt kunnen worden in het computersysteem 3800 van FIG. 38.
FIG. 40 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding, met een overlay-applicatie die een overlayvenster 4184 verschaft met een beweegbaar object in de vorm van een horizontale lijn 4020, die zich bij voorkeur uitstrekt over de gehele breedte van het scherm.
Het overlayvenster 4184 is bij voorkeur geconfigureerd als een semi-transparant venster, bij voorkeur met een alfatransparantie in het bereik van 5% tot 95%, of van 30% tot 70%, hoewel dat niet absoluut vereist is, en het venster 4184 kan ook als ondoorzichtig geconfigureerd worden, in welk geval de pixels P5 volledig transparante pixels zouden zijn.
BE2018/5041
Het overlayvenster 4184 omvat een semi-transparante lijn met pixels P3. Een belangrijk voordeel van deze overlay-applicatie is dat de lijn gebruikt kan worden om overeenkomstige tekstfragmenten in twee verschillende applicaties te markeren of te onderlijnen, bijvoorbeeld een te vertalen PDF-brontekst gepositioneerd aan de linkerzijde van het scherm 4004 en een MS-Word doeltekst die de vertaalde tekst bevat, aan de rechterzijde van het scherm 4004. De lijn 4020 helpt om snel opnieuw de context terug te vinden bij het heen en weer schakelen tussen de twee documenten, bijvoorbeeld tijdens het proeflezen, waardoor de cognitieve last van de proeflezer significant wordt verminderd.
Aangezien de overlay-applicatie in doorklikmodus geconfigureerd is, kan de muis 4099 gebruikt worden om overal op het scherm te klikken of te slepen of te scrollen. In het bijzonder maakt ze het mogelijk het PDF-document enigszins omhoog of omlaag te bewegen (bv. door te slepen of te scrollen) om de tekstfragmenten daarin uitgelijnd te houden met overeenkomstige tekstfragmenten van het Word-document.
De overlay-applicatie zorgt ervoor dat de Y-coördinaat van de lijn 4020 verandert in overeenstemming met de Y-coördinaat van de muiscursor 4099. De Y-coördinaten kunnen identiek zijn of kunnen enigszins verschoven zijn, zodanig dat de lijn enigszins boven of enigszins onder de muiscursor verschijnt.
FIG. 41 is een schematische voorstelling van een Z-orde van vijf vensters of beeldvlakken 4181-4185 die gebruikt kunnen worden in het computersysteem van FIG. 40.
De uitvoeringsvorm van FIG. 40 en FIG. 41 kan gezien worden als een variant van de uitvoeringsvorm van FIG. 38 en FIG. 39 of als een variant van de uitvoeringsvorm van FIG. 7 en FIG. 8.
In een variant (niet getoond) van de uitvoeringsvorm van FIG. 40 en FIG. 41, bevat de lijn 4020 een geperforeerde bitmap (zoals in FIG. 37), of bevat de lijn een kleurgradiënt (verticaal of horizontaal), of bevat de lijn een textuurbitmap.
FIG. 42 toont een schematisch blokdiagram van een ander computersysteem 4200 volgens een uitvoeringsvorm van de onderhavige uitvinding, met een overlay-applicatie die een overlayvenster 4384 verschaft dat een verticale lijn 4240 omvat die een linker gebied en een rechter gebied van het scherm 4204 definieert, en een horizontaal lijnsegment 4260 dat zich uitstrekt over de breedte van hetzij het linker gebied hetzij het rechter gebied.
Het overlayvenster 4384 is bij voorkeur geconfigureerd als een semi-transparant venster, bij voorkeur met een alfatransparantie in het bereik van 5% tot 95%, of van 30% tot 70%, hoewel dat niet absoluut vereist is, en het overlayvenster 4384 kan ook als ondoorzichtig geconfigureerd worden, in welk geval de pixels P5 volledig transparante pixels zouden zijn.
BE2018/5041
De horizontale positie van de verticale lijn 4240 kan vooraf gedefinieerd zijn, bv. in hoofdzaak in het midden van het overlayvenster 4384, of kan selecteerbaar zijn via een gebruikersinterface, maar is bij voorkeur configureerbaar door het verslepen van de lijn met de muiscursor 4299. Het laatstgenoemde is niet evident indien het overlayvenster 4384 in doorklikmodus geconfigureerd is, maar is bijvoorbeeld mogelijk door het overlayvenster 4384 dynamisch te configureren in doorklikmodus of niet in doorklikmodus, afhankelijk van of de muiscursor zich boven de verticale lijn 4240 bevindt of niet.
De overlay-applicatie is geconfigureerd om de verticale positie Y van het horizontale lijnsegment 4260 bij te werken in overeenstemming met de positie van de muiscursor 4299 of bewegingen van de aanwijsinrichting of positie-inrichting, bv. muisinrichting 4203, maar alleen indien de muiscursor zich in het linker gebied bevindt (d.w.z. aan de linkerzijde van de verticale lijn 4240). Wanneer de muis zich in het rechter gebied bevindt (d.w.z. aan de rechterzijde van de verticale lijn 4240), behoudt het horizontale lijnsegment 4260 haar positie (wat hierin ook bevriest wordt genoemd).
Een belangrijk voordeel van deze overlay-applicatie is dat het lijnsegment 4260 gebruikt kan worden om tekstfragmenten in een te vertalen document te markeren of te onderlijnen (bv. een PDFdocument dat zich aan de linkerzijde van de verticale lijn 4240 bevindt), terwijl men werkt (met het toetsenbord 4202 en de aanwijsinrichting, bv. muisinrichting 4203) in een teksteditor die zich aan de rechterzijde van de verticale lijn 4240 bevindt. Het lijnsegment 4260 helpt om snel opnieuw de context terug te vinden bij het heen en weer schakelen tussen de twee documenten, bijvoorbeeld tijdens het vertalen, waardoor de cognitieve last van de vertaler significant wordt verminderd.
Deze overlay-applicatie kan eveneens gebruikt worden door proeflezers, gebruikmakende van het lijnsegment 4260 om tekstfragmenten te onderstrepen of te markeren (door de muiscursor per regel of per enkele regels brontekst naar links te bewegen), en dan de muiscursor naar het rechter gebied te bewegen, en gebruikmakende van de muiscursor 4299 om over de doeltekst te zweven, en optioneel om deze laatstgenoemde te bewerken of te corrigeren.
FIG. 43 is een schematische voorstelling van een Z-orde van vijf vensters of beeldvlakken 4381-4385 die gebruikt kunnen worden in het computersysteem van FIG. 42.
In een variant (niet getoond) van de uitvoeringsvorm van FIG. 42 en FIG. 43, bevat het lijnsegment 4260 een geperforeerde bitmap (zoals in FIG. 37), of bevat een kleurgradiënt (verticaal of horizontaal), of bevat een textuurbitmap.
In een variant van de uitvoeringsvorm van FIG. 42 en FIG. 43 bevindt het lijnsegment 4260 zich aan de rechterzijde van de verticale lijn 4240, en is beweegbaar indien de muiscursor of aanwijzer
BE2018/5041
4299 zich rechts van de verticale lijn 4240 bevindt, en bevriest indien de muiscursor of aanwijzer zich aan de linkerzijde van de verticale lijn 4240 bevindt. Deze uitvoeringsvorm wordt in het bijzonder geschikt geacht voor linkshandige personen.
FIG. 44 toont een flowdiagram van een werkwijze die door het computersysteem 4200 van
FIG. 42 en FIG. 43 uitgevoerd kan worden. FIG. 44 toont een computer-geïmplementeerde werkwijze 4400 voor het overlayen van een grafisch beeld in een rekenapparaat, waarbij de werkwijze de stappen omvat van:
a) het verschaffen 4401 van een overlayvenster 4384, bij voorkeur als een semi-transparant venster;
b) het verschaffen 4402 van een eerste zichtbaar object in de vorm van een verticale lijn 4240;
c) het verschaffen 4403 van een tweede zichtbaar object in de vorm van een horizontaal lijnsegment 4260 dat zich ofwel aan de linkerzijde ofwel aan de rechterzijde van de verticale lijn 4240 bevindt;
het herhaaldelijk uitvoeren van de volgende stappen:
d) het verkrijgen 4404 van positie-informatie X,Y van een muisaanwijzer of muiscursor 4299;
e) het testen 4405 of de muiscursor of aanwijzer 4299 zich op of boven de verticale lijn 4240 bevindt, en indien de uitkomst van de test positief is, doorgaan met stap f), anders doorgaan met stap h);
f) indien het overlayvenster niet reeds in niet-doorklikmodus geconfigureerd is, het configureren 4406 van het overlayvenster 4384 in niet-doorklikmodus (wat betekent: niet in doorklikmodus maar in een modus waarbij het besturingssysteem toetsenbord- en muis-events naar het overlayvenster of objecten daarvan zal sturen, in plaats van naar onderliggende applicaties, indien de muis boven het overlayvenster gepositioneerd is);
g) het testen of een muisknop is ingedrukt, en indien de uitkomst van deze test waar is, het verslepen van de verticale lijn; en teruggaan naar stap e);
h) indien het overlayvenster niet reeds in doorklikmodus geconfigureerd is, het configureren 4408 van het overlayvenster 4384 in doorklikmodus;
i) het aanpassen van een positie van het horizontale lijnsegment 4260, indien de muiscursor of aanwijzer 4299 zich aan dezelfde zijde van de verticale lijn 4240 bevindt als het horizontale lijnsegment 4260, en het bevriezen van het horizontale lijnsegment 4260 indien de muiscursor 4299 zich aan de overstaande zijde van de verticale lijn 4240 bevindt, en teruggaan naar stap (e).
BE2018/5041
Deze uitvoeringsvorm verschaft een lijnsegment 4260 dat bevriest wanneer de muiscursor aan de rechterzijde van de verticale lijn 4240 aan het bewegen is of zich daar bevindt, en dat samen met de muiscursor beweegt wanneer de muiscursor 4299 zich aan de linkerzijde van de verticale lijn 4240 bevindt of daar aan het bewegen is, of omgekeerd. Bovendien maakt deze uitvoeringsvorm het mogelijk om de verticale lijn 4240 op een zeer intuïtieve wijze te verslepen. Deze uitvoeringsvorm is in het bijzonder geschikt voor vertalers en proeflezers die geen CAT-tool (Computer Aided Translation tooi) gebruiken, of om een vertaling te verifiëren buiten het CAT-tool.
Er wordt opgemerkt dat er een vereiste was om de positie van de verticale lijn selecteerbaar of configureerbaar te maken, en aangezien deze configuratie gebruikerinteractie vereist, is de logische plaats om deze functionaliteit te implementeren in het gebruikersinterface-venster, omdat dat venster in staat is toetsenbord- en muis-events te ontvangen. De uitvinders kwamen echter op het idee dat het eenvoudiger en intuïtiever zou zijn voor de gebruiker indien de verticale lijn kon versleept worden, maar dat was niet mogelijk omdat de verticale lijn geïmplementeerd is in een venster dat geconfigureerd is in doorklikmodus. In een poging een oplossing te vinden om het verslepen toch mogelijk te maken, experimenteerden de uitvinders met het dynamisch wijzigen van de doorklikfunctionaliteit van het overlayvenster, niet wetende of, laat staan verwachtende dat dit überhaupt zou kunnen werken, en of het op betrouwbare wijze zou werken. De experimenten toonden verrassend aan dat het inderdaad mogelijk is de doorklikmodus van een venster dynamisch te wijzigen, afhankelijk van de positie van de muiscursor, in het bijzonder afhankelijk van of de native muiscursor zich boven het gebied van de verticale lijn bevindt. Minstens dit aspect is niet triviaal.
In een variant van de werkwijze voor FIG. 44 bevindt het lijnsegment 4260 zich aan de rechterzijde van de verticale lijn 4240, en is beweegbaar indien de muiscursor of aanwijzer 4299 zich rechts van de verticale lijn 4240 bevindt, en bevriest indien de muiscursor of aanwijzer zich aan de linkerzijde van de verticale lijn 4240 bevindt. Deze uitvoeringsvorm wordt geacht vooral bruikbaar te zijn voor linkshandige vertalers en proeflezers en schrijvers.
FIG. 45 toont een mobiel apparaat zoals bv. een eReader- of een smartphone-apparaat, dat een aanraakscherm omvat, en dat een app of applicatie uitvoert die tekstuele informatie toont, bijvoorbeeld in de vorm van een eBook, of een webbrowser. De tekstuele informatie wordt geoverlayed (overdekt) door een lijn 4510 die een gebruiker toelaat tekstinformatie die hij of zij aan het lezen is, te onderlijnen of markeren. De lijn 4510 kan geïmplementeerd worden in een overlayvenster geassocieerd met een overlay-applicatie of als deel van het besturingssysteem dat op het apparaat wordt uitgevoerd, of kan geïmplementeerd worden als deel van de app of applicatie zelve, bv. de eBook-lezer of webbrowser app.
BE2018/5041
In een uitvoeringsvorm is de lijn 4510 een semi-transparante lijn, gecreëerd in een overlayvenster met een alfatransparantie in het bereik van 1% tot 99% of van 2% tot 98% of van 5% tot 95%, bij voorkeur in het bereik van 30% tot 70%. De lijn 4510 kan een veelheid monochrome pixels bevatten (zoals in FIG. 8), of kan een kleurgradiënt (niet getoond) bevatten, of kan een textuur bevatten.
In een andere uitvoeringsvorm is de lijn 4510 gevormd door, of omvat, een bitmap die een eerste veelheid volledig transparante pixels P6 omvat en een tweede veelheid ondoorzichtige of semitransparante pixels P7, die geïnterleaved (afwisselend gepositioneerd) zijn teneinde de lijn semitransparant te doen lijken, hierin een geperforeerde bitmap genoemd. In het geval de pixels P7 ondoorzichtige pixels zijn, is geen alfamenging vereist, en toch maakt de lijn de onderliggende tekstuele informatie niet compleet duister.
De lijn 4510 kan automatisch beweegbaar zijn, bv. gebaseerd op een timer. Bij voorkeur is de snelheid configureerbaar of aanpasbaar via een gebruikersinterface (niet getoond).
De lijn 4510 kan beweegbaar zijn door middel van verslepen, op wijzen die op zich gekend zijn in de stand der techniek, op basis van een gebruiker die met zijn of haar vinger contact maakt met het scherm, en vervolgens de vinger beweegt.
De lijn kan de lezer helpen om geconcentreerd te blijven bij het lezen, ondanks afleiding.
In een uitvoeringsvorm waarbij de lijn 4510 zich in hoofdzaak over de ganse breedte van het display van het apparaat 4500 uitstrekt, hoeft de reader-applicatie of de overlay-applicatie enkel de verticale positie (Y) van de lijn ten opzichte van het scherm aan te passen, in overeenstemming met bewegingen van de gebruiker op het aanraakscherm.
In een uitvoeringsvorm waarbij de lijn 4510 zich slechts over een fractie (bv. minder dan 50%) van de breedte van het display van apparaat 4500 uitstrekt, kan de reader-applicatie of de overlayapplicatie aangepast zijn om zowel een horizontale positie X als een verticale positie Y van de lijn aan te passen, in overeenstemming met bewegingen van een vinger van een gebruiker op het aanraakscherm.
FIG. 46 toont een schematisch blokdiagram van een ander computersysteem 4600 volgens een uitvoeringsvorm van de onderhavige uitvinding, dat gezien kan worden als een variant van FIG. 21, waarbij het computersysteem 4600 een grafisch overlaybeeld 4784 verschaft in de vorm van een zogenoemde geperforeerde textuurbitmap, geoverlayed door de weergave-inrichting 4604.
In deze uitvoeringsvorm genereert de computerinrichting 4601 de beeldvlakken 4781 tot 4783, en levert overeenkomstige beeldgegevens aan de weergave-inrichting 4604, zoals een klassieke computer zou doen, maar de weergave-inrichting, in plaats van de genoemde computergegevens zonder meer op een displaypaneel weer te geven, overdekt de genoemde beeldgegevens met een overlaybeeld 4784 dat opgeslagen is in de weergave-inrichting, en geeft het resultaat weer.
BE2018/5041
Weergave-inrichtingen zijn welgekend in de stand der techniek, in het bijzonder losstaande LCD-displayapparaten of losstaande LCD-monitoren. Een dergelijke weergave-inrichting omvat hoofdzakelijk drie delen: een applicatieprocessor, een geheugeninrichting dat een framebuffer omvat, en een weergave-inrichting die een displaycontroller en een displaypaneel omvat. De applicatieprocessor is verantwoordelijk voor het tekenen en genereren van een beeldframe, en voor het opslaan van het gegenereerde beeldframe in het framebuffer in de geheugeninrichting. De framebuffer wordt gebruikt om gegevens op te slaan van pixels op een displayscherm. De displaycontroller is hoofdzakelijk verantwoordelijk voor het lezen van de gegevens van de pixels uit de framebuffer, en het sequentieel schrijven van de gegevens van de pixels naar logische schakelingen op het displaypaneel die met de pixels overeenkomen. In een proces van het weergeven van een beeld door het displaysysteem genereert de applicatieprocessor voortdurend een nieuw beeldframe, en stuurt het beeldframe naar de framebuffer.
In de context van de onderhavige uitvinding is de applicatieprocessor aangepast voor het verschaffen van een overlaybeeld 4784 over het genoemde computerbeeld, waarbij het overlaybeeld een geperforeerde textuurbitmap is zoals hoger toegelicht. Met andere woorden, omvat of bestaat deze bitmap 4730 uit een eerste veelheid pixels P6 die volledig transparante pixels zijn, en een tweede veelheid pixels P8 die semi-transparante pixels zijn, welke pixels P6 en P8 geïnterleaved (afwisselend gepositioneerd) zijn, bijvoorbeeld opgesteld in een regelmatig patroon, bij voorkeur een dambordpatroon. De feitelijke stap van het overlayen kan het alfamengen omvatten van de computerpixels met overeenkomstige pixels van de geperforeerde textuurbitmap.
De geperforeerde textuurbitmap kan een vooraf bepaalde bitmap zijn, ingebouwd in de weergave-inrichting, of is bij voorkeur een downloadbaar beeld, bv. getoond op de computerinrichting, en vastgelegd door de weergave-inrichting op aanvraag van de gebruiker, bijvoorbeeld geïnitieerd door een druk op een knop van de weergave-inrichting (niet getoond), en vervolgens opgeslagen in een niet-vluchtig geheugen van de weergave-inrichting voor verder gebruik. Maar andere middelen voor het downloaden van de textuurbitmap zijn eveneens beschouwd, bijvoorbeeld gebruikmakende van een USB-interface voor het inbrengen van een memory stick, of gebruikmakende van een draadloze verbinding, bijvoorbeeld een Bluetooth-verbinding voor het tot stand brengen van een draadloze communicatie met de computerinrichting, in welk geval de computerinrichting bij voorkeur is uitgerust met een speciale applicatie voor het selecteren en het verzenden van een textuurbitmap naar de weergave-inrichting.
Optioneel is de weergave-inrichting verder aangepast voor het schalen en/of het in grootte aanpassen en/of het tegelen en/of het perforeren van de textuurbitmap, hoewel de perforatie ook impliciet kan geïmplementeerd worden door slechts een subset van de pixels te alfamengen, bijvoorbeeld één pixel voor elke twee pixels volgens het dambordpatroon.
BE2018/5041
Bij voorkeur zijn er ten minste vier of vijf alfamengingsniveaus, bijvoorbeeld overeenkomende met een menging van 0/4=0%, 1/4=25%, 2/4=50%, 3/4=75% en 4/4=100%. Met meer voorkeur zijn er ten minste acht of negen alfamengingsniveaus, bijvoorbeeld overeenkomende met een menging van 0/8=0%, 1/8, 2/8, 3/8, 4/8, 5/8, 6/8, 7/8 en 8/8=100%.
Optioneel is de weergave-inrichting verder aangepast voor het aanpassen van het transparantieniveau en/of de kleur en/of het contrast van de textuurbitmap, bijvoorbeeld gebruikmakende van sommige of alle formules [6] tot [10], gebaseerd op een vooraf gedefinieerde kleur- en/of contrastniveau, die/dat door een gebruiker aan de weergave-inrichting verschaft kan zijn, gebruikmakende van één of meerdere knoppen op de weergave-inrichting, of gebruikmakende van de genoemde speciale applicatie voor het configureren van de weergave-inrichting gebruikmakende van de genoemde draadloze verbinding, bv. Bluetooth-verbinding.
Optioneel is de processor verder aangepast voor het herhaaldelijk aanpassen van een positie van de textuurbitmap, zodanig dat pixels van het onderliggende grafisch beeld geoverlayed worden door een volledig transparante pixel van de eerste veelheid pixels P6 op een eerste tijdstip tl, en geoverlayed worden door een semi-transparante pixel P8 van de tweede veelheid pixels op een tweede en optioneel derde en vierde tijdstip t2, t3, t4, bijvoorbeeld zoals hoger is toegelicht, bij het bespreken van FIG. 28.
Liever dan het fysiek heen en weer verschuiven van de textuurbitmap over een horizontale of verticale afstand van bijvoorbeeld één pixel voor ieder frame, en liever dan het opslaan van een geperforeerde bitmap, kan de processor aangepast zijn voor het combineren van de stap van het tegelijkertijd perforeren en tijdmultiplexen, bij het genereren van het beeld dat opgeslagen dient te worden in het framebuffer, bv. door het volgende te doen:
i) op even tijdstippen (t2, t4) het kopiëren van computerbeeldgegevens vanuit het invoerbuffer op pixellocaties X,Y waarvoor de som van de rij-index X en de kolom-index Y oneven is, en door het alfamengen van computerbeeldgegevens uit het invoerbuffer met overeenkomstige pixelgegevens uit de textuurbitmap op pixellocaties X,Y waarvoor de som van de rij-index X en de kolom-index Y even is; en ii) op oneven tijdstippen (t3, t5) het kopiëren van computerbeeldgegevens vanuit het invoerbuffer op pixellocaties X,Y waarvoor de som van de rij-index X en de kolom-index Y even is, en het alfamengen van computerbeeldgegevens uit het invoerbuffer met overeenkomstige pixelgegevens uit de textuurbitmap op pixellocaties X,Y waarvoor de som van de rij-index X en de kolom-index Y oneven is.
Hoewel deze oplossing een speciale weergave-inrichting vereist, verschaft ze verschillende voordelen: deze oplossing kan oogvermoeidheid voor gebruikers verminderen, vooral wanneer het computerbeeld een helder beeld bevat. Het is een verder voordeel van deze oplossing dat ze het uitzicht van een zuiver wit beeld kan transformeren tot een getextureerd beeld, bijvoorbeeld een
BE2018/5041 papierachtig beeld, dat esthetisch aangenamer kan zijn om te lezen. Het is een voordeel dat de weergave-inrichting de alfamenging uitvoert in plaats van de CPU van de computerinrichting, dus de CPU-belasting wordt niet beïnvloed door deze overlay. Ten slotte is het een voordeel om een geperforeerde bitmap te gebruiken in plaats van een niet-geperforeerde bitmap omdat dit minder rekenkracht vereist, aangezien slechts een subset van de pixels, bijvoorbeeld slechts 50% van de pixels van elk frame, alfagemengd moeten worden, terwijl de andere pixels zonder alfamenging kunnen doorgegeven worden.
FIG. 47 is een schematische voorstelling van een Z-orde van drie vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 46, en daarboven wordt een vierde semi-transparant overlaybeeld verschaft door de weergave-inrichting.
FIG. 48 toont een schematisch blokdiagram van een ander computersysteem volgens een uitvoeringsvorm van de onderhavige uitvinding, dat gezien kan worden als een variant van FIG. 46, waarbij het computersysteem een grafisch overlaybeeld verschaft in de vorm van een nietgeperforeerde textuurbitmap, die geoverlayed wordt door de weergave-inrichting. Alles wat vermeld is met betrekking tot FIG. 46 en FIG. 47 is ook hier van toepassing, behalve dat alle pixels van de textuurbitmap alfagemengd zouden moeten worden met de pixels van het computerbeeld.
FIG. 49 is een schematische voorstelling van een Z-orde van drie vensters of beeldvlakken die gebruikt kunnen worden in het computersysteem van FIG. 48, en daarboven, een vierde, semitransparant overlaybeeld dat verschaft wordt door de weergave-inrichting 4804.
Verwijzend naar FIG. 50 en FIG. 51.
Zoals reeds besproken in het achtergrondgedeelte, verschaft het tooi F.Lux een semitransparante grafische overlay-applicatie gebruikmakende van een bitmap, in het bijzonder een geelachtige monochrome bitmap, waarvan de kleur dynamisch wordt aangepast in de loop van de tijd. Hoewel dit tooi behulpzaam kan zijn om oogvermoeidheid te verminderen, heeft het tooi verscheidene beperkingen, bijvoorbeeld:
(1) de overlay houdt geen rekening met de eigenlijke onderliggende beelden verschaft door de onderliggende toepassingen. Inderdaad, de uitvinders vonden dat, teneinde oogvermoeidheid te verminderen, sommige beelden donkerder gemaakt moeten worden dan andere, in het bijzonder, toepassingen die een venster verschaffen met een zuiver witte achtergrond (zoals MS Paint of MS Word of MS Powerpoint) zouden donkerder gemaakt moeten worden dan toepassingen die een grijze achtergrond verschaffen. Helaas houdt F.Lux hier geen rekening mee. Een gebruiker zou handmatig kunnen aanpassen, maar dit is omslachtig.
BE2018/5041 (2) vele computergebruikers nemen nu en dan een screenshot (schermopname) (bv. gebruikmakende van de Print-Screen knop op het toetsenbord), maar wanneer F.Lux wordt uitgevoerd, zijn de kleuren van een dergelijke screenshot niet de ware kleuren van de oorspronkelijke beeldstapel geassocieerd met de onderliggende toepassingen, maar zijn geelachtig of oranje gekleurd. Een gebruiker die een screenshot wil nemen zou F.Lux tijdelijk kunnen deactiveren om een screenshot te nemen, en F.Lux vervolgens heractiveren, maar dit is tijdrovend, maar erger is, wanneer F.Lux gedeactiveerd wordt, krijgt hij of zij de originele beelden gepresenteerd die typisch veel helderder zijn en die oogvermoeidheid kunnen veroorzaken.
De uitvinders van de onderhavige uitvinding kwamen op het idee om deze problemen aan te pakken door respectievelijk de computer-geïmplementeerde werkwijze 5000, getoond in FIG. 50, en de computer-geïmplementeerde werkwijze 5100 van FIG. 51, te verschaffen.
FIG. 50 is een flowdiagram van een computer-geïmplementeerde werkwijze 5000 voor het overlayen van een grafisch beeld in een rekenapparaat, dat gezien kan worden als een variant van het rekenapparaat 2300 van FIG. 23 en FIG. 24. De werkwijze omvat de stappen van:
a) het verschaffen 5001 van een semi-transparant overlayvenster met een alfatransparantiewaarde a, en omvattende een eerste bitmap bmpl. De eerste bitmap kan een monochrome bitmap zijn waarbij alle pixels dezelfde kleur hebben, of kan een geperforeerde monochroom bitmap zijn, of kan een textuurbitmap zijn, of kan een geperforeerde textuurbitmap zijn of een andere geschikte bitmap.
De werkwijze omvat verder een lus waarbij de volgende stappen worden herhaald:
b) het nemen 5002 van een screenshot, waardoor een tweede bitmap bmp2 bekomen wordt;
d) het bepalen 5003 van ten minste één kenmerk van de tweede bitmap bmp2;
e) het aanpassen 5004 van de alfa-transparantiewaarde a van het overlayvenster en/of het aanpassen van één of meerdere pixelwaardes van de eerste bitmap bmpl, gebaseerd op het ten minste één bepaald kenmerk.
De eerste bitmap kan zijn een monochrome bitmap zijn.
De eerste bitmap kan een kleurgradiënt bevatten.
In een uitvoeringsvorm, omvat stap d): het bepalen van een gemiddelde intensiteit en/of een maximumintensiteit en/of een intensiteitshistogram van de pixels van de tweede bitmap bmp2; en omvat stap e): het aanpassen van het alfa-transparantieniveau a zodanig dat de gemiddelde intensiteit of de maximumintensiteit of het intensiteitshistogram voldoet aan een vooraf bepaald criterium.
In een uitvoeringsvorm, omvat stap d): het bepalen van gemiddelde kleurcomponentwaardes Ravg, Gavg, Bavg en/of een kleurcomponent-histogrammen van de pixels van de tweede bitmap bmp2;
BE2018/5041 en omvat stap e): het aanpassen van één of meerdere pixelwaardes van het eerste beeld bmpl zodanig dat de gemiddelde kleurcomponent of het kleurcomponent-histogram aan een vooraf bepaald criterium voldoet.
Betere resultaten (wat betreft minder oogvermoeidheid) kunnen bereikt worden indien ook de helderheid van de kamer in beschouwing wordt genomen. In zulk een uitvoeringsvorm omvat stap d) verder: het bepalen van een helderheidswaarde als indicatie van een helderheid in een kamer waarin het rekenapparaat dat de overlaywerkwijze uitvoert zich bevindt, en houdt de aanpassing van stap e) verder rekening met de helderheidswaarde. Deze helderheidswaarde kan bijvoorbeeld verkregen worden van een lichtsensor, of kan afgeleid worden uit een beeld genomen door een webcam, of op een andere geschikt wijze.
In een specifieke uitvoeringsvorm, vooral geschikt voor mensen die met twee documenten werken of die op twee verschillende displays werken, omvat stap a) verder: het verschaffen van ten minste één verticale lijn of balk in de eerste bitmap bmpl voor het definiëren van ten minste twee gebieden omvattende een eerste gebied en een tweede gebied; en omvat stap c) het bepalen van ten minste een eerste kenmerk van het eerste gebied en een tweede kenmerk van het tweede gebied; en omvat stap e): het aanpassen van één of meerdere pixelwaardes van het eerste gebied zodanig dat het eerste kenmerk voldoet aan een eerste vooraf bepaald criterium, en het aanpassen van één of meerdere pixelwaardes van het tweede gebied, zodanig dat het tweede kenmerk voldoet aan een tweede criterium.
In een variant van deze werkwijze, kan elk van het linker en rechter gebied verder verdeeld worden door middel van een horizontaal beweegbare lijn of balk, hetgeen tot vier verschillende gebieden leidt. Bij voorkeur is elk van deze gebieden van de eerste bitmap monochroom, wat wil zeggen dat het eerste gebied pixels heeft met kleurwaarde (Rl, Gl, BI), waarbij de waarde van Rl, G1 en BI bepaald wordt op basis van de grafische inhoud van de beelden die onder het eerste gebied liggen, het tweede gebied pixels heeft met kleurwaardes (R2, G2, B2) waarbij de waarde van R2, G2 en B2 bepaald wordt op basis van de grafische inhoud van de beelden die onder het tweede gebied liggen, enz. Deze gebieden kunnen geperforeerd of niet geperforeerd zijn. Alternatief bevat het eerste gebied pixels afgeleid van een eerste textuurbitmap, met een eerste gemiddelde kleur en een eerste contrastverhouding welke afgeleid is afhankelijk van ten minste één kenmerk van het/de beeld(en) dat/die onder het eerste gebied ligt/liggen, het tweede gebied bevat pixels geëxtraheerd uit een tweede textuurbitmap, met een tweede gemiddelde kleur en een tweede contrastverhouding, enz. De vakman met het voordeel van de onderhavige openbaarmaking kan eenvoudig andere varianten bedenken.
BE2018/5041
Het wordt ook overwogen dat het screenshot verder geanalyseerd kan worden, bijvoorbeeld om de aanwezigheid te detecteren van alfanumerieke karakters, en hun grootte, en/of de aanwezigheid van een monochrome achtergrond die deze karakters omgeeft, en het aanpassen van kenmerken van een textuuroverlaybitmap gebaseerd daarop, bijvoorbeeld om een textuurbitmap te creëren met een voldoende laag contrast zodat het de leesbaarheid van de karakters niet negatief beïnvloedt, en met een voldoend hoog contrast zodat het merkbaar is door de gebruiker, en bijvoorbeeld een als papier uitziend effect, of een mat uitziende achtergrond creëert.
FIG. 51 is een flowdiagram van een computer-geïmplementeerde werkwijze 5100 voor het overlayen van een grafisch beeld in een rekenapparaat, dat gezien kan worden als een variant van het rekenapparaat 2300 van FIG. 23 en FIG. 24. De werkwijze omvat de stappen van:
a) het verschaffen 5101 van een semi-transparant overlayvenster met een alfatransparantiewaarde a in het bereik van 1% tot 99%, en omvattende een eerste bitmap bmpl. De eerste bitmap kan een geperforeerde bitmap of een niet-geperforeerde monochrome bitmap zijn, of kan een geperforeerde of niet-geperforeerde textuurbitmap zijn, of een bitmap met een gradiënt gebaseerd of slechts twee kleurwaarden.
b) het nemen 5002 van een screenshot, waardoor een tweede bitmap bmp2 bekomen wordt;
c) het berekenen van een derde bitmap bmp3 teneinde het effect van de grafisch overlay te compenseren, gebaseerd op de eerste bitmap bmpl en de tweede bitmap bmp2 en de alfatransparantie waarde a.
Er wordt opgemerkt dat, in het geval dat de overlay-applicatie niet enkel een bitmap bevat maar ook één of meerdere beweegbare voorwerpen bevat zoals bijvoorbeeld een horizontale lijn of een verticale lijn, het mogelijk is om ofwel deze zichtbaar voorwerpen in het opgenomen beeld te handhaven, of om ook voor deze voorwerpen te compenseren waardoor deze voorwerpen virtueel uit het opgenomen beeld worden verwijderd. Het al dan niet verwijderen van de beweegbare voorwerpen kan vooraf bepaalde instelling zijn, of kan configureerbaar zijn door een gebruiker, bijvoorbeeld in het gebruikersinterface-venster.
Optioneel omvat de werkwijze verder stap d) van: het opslaan 5104 van de derde bitmap bmp3 naar een niet-vluchtig geheugen (bv. op een geheugenstick) of op een opslaginrichting (bv. een harde schijf of een netwerk-drive), optioneel na formaatconversie (bv. BMP naar PNG) en/of na beeldcompressie (bv. verliesvrije of verlieslatende JPEG-compressie).
Optioneel omvat de werkwijze verder stap e) van: het kopiëren 5105 van de derde bitmap bmp3 naar een klembord van een besturingssysteem dat op het rekenapparaat draait (bijvoorbeeld:
BE2018/5041
MS Windows 10 of een latere versie met dezelfde of gelijkaardige functionaliteit). Deze functie is vergelijkbaar met de print-screen-knop die op vele toetsenborden aanwezig is, maar met het additionele voordeel van het compenseren voor de alfamenging. Op deze wijze kan een gebruiker die last heeft van oogvermoeidheid werken op zijn computer, en kan zelfs screenshots nemen zonder het overlaybeeld te moeten deactiveren. Dit is een zeer groot voordeel voor zulke gebruikers, zowel vanwege gereduceerde oogvermoeidheid als vanwege bespaarde tijd.
Teneinde de compensatie uit te voeren, kan gebruik worden gemaakt van de volgende verzameling formules, of een equivalente verzameling van formules:
R3 [x,y] = [ R2 [x,y] - R1 [x,y] * ( 1-T)] /T[11]
G3[x,y] = [ G2[x,y] - Gl[x,y]*(l-T)] /T[12]
B3[x,y] = [ B2[x,y] - Bl[x,y]*(1-T)J /T[13]
T=l-a[14] waarbij R1,B1,G1 kleurcomponenten zijn van een pixel op een locatie (x,y) van de eerste bitmap bmpl die geoverlayd wordt, en waarbij R2,G2,B2 kleurcomponenten zijn van een pixel op een locatie (x,y) van de tweede bitmap bmp2 genomen als de screenshot, en waarbij R3,G3,B3 kleurcomponenten zijn van een pixel op een locatie (x,y) van de derde bitmap bmp3, en waarbij a de alfa-transparantiewaarde is, en T een transparantiewaarde is, beide uitgedrukt als een drijvendekommagetal in het bereik van 0,01 tot 0,99.
In het geval dat de eerste bitmap geperforeerd is, hoeven de formules [11] tot [14] slechts toegepast te worden in het geval dat de pixel van de eerste bitmap niet volledig transparant is.
TENSLOTTE,
Hoewel individuele kenmerken zijn toegelicht in verschillende tekeningen en in verschillende uitvoeringsvormen van de onderhavige uitvinding, wordt beschouwd dat kenmerken van verschillende uitvoeringsvormen gecombineerd kunnen worden, zoals voor de hand zou liggen voor de vakman, bij het lezen van dit document.
Hoewel alle uitvoeringsvormen getoond zijn met een desktopcomputer en een muis en een toetsenbord, kunnen andere rekenapparaten en/of andere invoerinrichtingen eveneens gebruikt worden. Bijvoorbeeld, de muisinrichting kan vervangen worden door andere inrichtingen die dezelfde of gelijkaardige functie en besturing verschaffen, zoals een aanwijsinrichting, een track ball of een joystick of een touchpad of een stylus.
Hoewel de uitvinding voornamelijk is beschreven voor het Windows-besturingssysteem van Microsoft Corporation, is de uitvinding daartoe niet beperkt, en kan bijvoorbeeld ook gebruikt worden op een Apple-computer met het Macintosh OS van Apple-computer, of op een smartphone, of op een eReader, of andere apparaten met een besturingssysteem met een grafische gebruikersinterface.
BE2018/5041
De onderhavige uitvinding openbaart verscheidene uitvoeringsvormen, die als volgt opgesomd kunnen worden:
1) een computer-geïmplementeerde werkwijze van overlayen met een geperforeerde bitmap.
Dit kan als volgt samengevat worden. Een computer-geïmplementeerde werkwijze voor het overlayen van een grafisch beeld in een rekenapparaat, die de stappen omvat van: a) het verschaffen van een overlayvenster; b) het verschaffen van ten minste één zichtbaar object in het genoemd overlayvenster, waarbij het ten minste één zichtbaar object een bitmap omvat met een eerste veelheid pixels die volledig transparante pixels zijn, en een tweede veelheid pixels die ondoorzichtige pixels of semi-transparante pixels zijn; waarbij de eerste veelheid pixels P6 en de tweede veelheid pixels geïnterleaved (afwisselend gepositioneerd) zijn, bijvoorbeeld in een schaakbordpatroon; c) het configureren van het overlayvenster in doorklikmodus. Het object is beweegbaar in overeenstemming met muisbewegingen.
2) een computer-geïmplementeerde werkwijze van het overlayen met een groot kruis.
Dit kan als volgt samengevat worden. Een computer-geïmplementeerde werkwijze voor het overlayen van een grafisch beeld in een rekenapparaat, waarbij de werkwijze de stappen omvat van: a) het verschaffen van een overlayvenster; b) het verschaffen van een langwerpig horizontaal zichtbaar object; c) het verschaffen van een langwerpig verticaal zichtbaar object in het genoemde overlayvenster; d) het configureren van het overlayvenster in doorklikmodus; herhaaldelijk f) het verkrijgen van positie-informatie X,Y van een muisaanwijzer of het verkrijgen van bewegingsinformatie dx,dy van de ten minste één aanwijsinrichting; herhaaldelijk g) het aanpassen van een positie van het eerste en tweede zichtbaar object op basis van de verkregen positie-informatie of gebruikmakende van de bewegingsinformatie. Het kruis kan semi-transparant zijn, en kan zich uitstrekken over de gehele hoogte en breedte van het scherm. Gebruik van deze overlay-applicatie als een add-on (uitbreiding) voor spreadsheet-applicaties voor het markeren van alfanumerieke informatie en/of voor het extraheren van informatie uit tabellen.
3) een computer-geïmplementeerde werkwijze van het overlayen met een textuurbitmap.
4) een computer-geïmplementeerde werkwijze van het overlayen met een verticale lijn om het scherm te splitsen, en met een horizontale lijn die beweegt of bevriest, hierin ook bevroren lijn genoemd.
Dit kan als volgt samengevat worden. Een computer-geïmplementeerde werkwijze voor het overlayen van een grafisch beeld, omvattende: a) het verschaffen van een overlayvenster; b) het verschaffen van een verticale lijn; c) het verschaffen van een horizontale lijn die zich bevindt aan de linkerzijde of rechterzijde van de verticale lijn; herhaaldelijk: d) het verkrijgen van positie-informatie van een muiscursor; e) het testen of de muiscursor zich op de verticale lijn bevindt, en zo ja, doorgaan met stap f), anders doorgaan met stap h); f) het configureren
BE2018/5041 van het overlayvenster in niet-doorklikmodus; g) testen of een muisknop is ingedrukt, en zo ja, het verslepen van de verticale lijn; en gaan naar stap d; h) het configureren van het overlayvenster in doorklikmodus; i) het aanpassen van een positie van de horizontale lijn. De verticale lijn splitst het scherm, en kan gesleept worden. De horizontale lijn beweegt of bevriest, afhankelijk van aan welke kant de muiscursor aan het bewegen is.
5) een computer-geïmplementeerde werkwijze voor het overlayen op een dynamische wijze, rekening houdende met visuele aspecten (bv. kleur en/of helderheid) van de onderliggende applicaties, hierin automatische aanpassing genoemd, bijvoorbeeld automatische verdonkeren.
Dit kan als volgt samengevat worden. Een computer-geïmplementeerde werkwijze voor het overlayen van een grafisch beeld in een rekenapparaat, waarbij de werkwijze de stappen omvat van: a) het verschaffen van een semi-transparant overlayvenster met een alfatransparantiewaarde ct in het bereik van 1% tot 99% en omvattende een eerste bitmap; het herhaaldelijk uitvoeren van de volgende stappen: b) het nemen van een screenshot, waardoor een tweede bitmap bekomen wordt; c) het bepalen van ten minste één kenmerk van de tweede bitmap; e) het aanpassen van de alfa-transparantiewaarde van het overlayvenster en/of het aanpassen van een of meer pixelwaarden van de eerste bitmap, op basis van het ten minste één bepaald kenmerk. De overlaywerkwijze kan verder een verticale blak omvatten om verschillende gebieden te definiëren die individueel aangepast kunnen worden, afhankelijk van de beeldinhoud onder de gebieden.
6) een computer-geïmplementeerde werkwijze van het overlayen terwijl het nemen van een screenshot mogelijk gemaakt wordt, welk screenshot gecompenseerd is voor de grafische overlay, hierin een gecompenseerde screenshot genoemd.
Dit kan als volgt samengevat worden. Een computer-geïmplementeerde werkwijze voor het overlayen van een grafisch beeld in een rekenapparaat, waarbij de werkwijze de stappen omvat van: a) het verschaffen van een semi-transparant overlayvenster dat een alfatransparantiewaarde a heeft in het bereik van 1% tot 99%, en dat een eerste bitmap omvat; b) het nemen van een screenshot, waardoor een tweede bitmap wordt verkregen; c) het berekenen van een derde bitmap voor het compenseren van het effect van de grafische overlay, gebaseerd op de eerste bitmap en de tweede bitmap en de alfa-transparantiewaarde a; d) het optioneel opslaan van de derde bitmap in een niet-vluchtig geheugen of een opslaginrichting; e) het optioneel kopiëren van de derde bitmap naar een klembord van het besturingssysteem.
7) Een computer-geïmplementeerde werkwijze die één of meerdere van de werkwijzen 1) tot 4) en werkwijze 5) combineert.
Bijvoorbeeld, de overlaywerkwijzen met een geperforeerde bitmap kunnen gecombineerd worden met de automatische aanpassing, en de overlaywerkwijze met een groot kruis kan
BE2018/5041 gecombineerd worden met de automatische aanpassing, en de overlaywerkwijze met een textuurbitmap kan gecombineerd worden met de automatische aanpassing, en de overlaywerkwijze met de bevroren lijn kan gecombineerd worden met de automatisch aanpassing.
8) Een computer-geïmplementeerde werkwijze die één of meerdere van de werkwijzen 1) tot 4) en werkwijze 6) combineert.
Bijvoorbeeld, de overlaywerkwijzen met een geperforeerde bitmap kunnen gecombineerd worden met het gecompenseerde screenshot, en de overlaywerkwijze met een groot kruis kan gecombineerd worden met het gecompenseerde screenshot, en de overlaywerkwijze met een textuurbitmap kan gecombineerd worden met het gecompenseerde screenshot, en de overlaywerkwijze met de bevroren lijn kan gecombineerd worden met het gecompenseerde screenshot.
9) een computerinrichting voor het uitvoeren van één der computer-geïmplementeerde werkwijzen 1) tot 8).
10) een computersysteem dat een computerinrichting 9) omvat.
11) een computerprogrammaproduct voor het uitvoeren van één der computer-geïmplementeerde werkwijzen 1) tot 8).
12) een draagbaar apparaat (bv. een eReader) met een overlay met een semi-transparante lijn.
Dit kan als volgt samengevat worden. Een draagbaar rekenapparaat omvattende: een aanraakscherm; ten minste één verwerkingseenheid en een eerste geheugen voor het opslaan van computer-uitvoerbare instructies; waarbij de instructies geconfigureerd zijn voor het genereren van een grafisch beeld dat tekstuele informatie bevat en voor het tonen van dat grafisch beeld op het aanraakscherm; waarbij de instructies verder geconfigureerd zijn voor het genereren van een lijn of een langwerpig object dat de genoemde tekstuele informatie overdekt; waarbij de lijn of het langwerpig object een veelheid semi-transparante pixels omvat met een transparantieniveau van 5% tot 95%, of waarbij de lijn of het langwerpig object een eerste veelheid volledig transparante pixels bevat en een tweede veelheid ondoorzichtige of semi-transparante pixels, die geïnterleaved (afwisselend gepositioneerd) zijn; waarbij de instructies verder geconfigureerd zijn voor het detecteren van een contactpositie op het aanraakscherm, en voor het dienovereenkomstig bijstellen van een positie van de lijn. Bijvoorbeeld een eReader-apparaat dat tekstuele informatie toont geoverlayed dooreen semi-transparante lijn.
13) een weergave-inrichting voor het overlayen met een geperforeerde bitmap,
14) een weergave-inrichting met een beweegbaar object dat er semi-transparant uitziet door tijdgemultiplexte overlay.
BE2018/5041
Er wordt verder expliciet op gewezen dat uitvoeringsvormen van de onderhavige uitvinding op iedere geschikte wijze gecombineerd kunnen worden met uitvoeringsvormen van de mede in behandeling zijnde dubbele-muis-aanvraag.
Bijvoorbeeld door aan uitvoeringsvormen van de onderhavige uitvinding een tweede aanwijsinrichting en de bijhorende functionaliteit voor het verkrijgen van dubbelemuisondersteuning toe te voegen, zoals beschreven in de mede in behandeling-zijnde aanvrage. Of bijvoorbeeld door aan uitvoeringsvormen van de onderhavige uitvinding een speciale hub en/of een speciale weergave-inrichting en/of een speciale video-adapter toe te voegen.
Sommige van deze gecombineerde uitvoeringsvormen kunnen in het bijzonder geschikt zijn voor vertalers, of proeflezers, of technisch schrijvers, of octrooigemachtigden of andere professionele gebruikers die vele uren voor een computerscherm doorbrengen en die vaak heen en weer schakelen tussen verschillende documenten, omdat de cognitieve last gerelateerd aan het opnieuw verkrijgen van de actuele context na het heen en weer schakelen tussen documenten aanmerkelijk verlaagd kan worden dankzij de meerdere zichtbare objecten die beweegbaar zijn door de twee (of meer) aanwijsinrichtingen, en omdat oogvermoeidheid gerelateerd aan een helder achtergrondlicht eveneens gereduceerd kan worden.
BE2018/5041

Claims (10)

  1. Conclusies
    1. Een computer-geïmplementeerde werkwijze (5000) voor het overlayen van een grafisch beeld in een rekenapparaat met een overlaybeeld,waarbij de werkwijze de stappen omvat van:
    a) het verschaffen (5001) van een overlay-applicatie die een semi-transparant overlayvenster verschaft met een alfatransparantie-waarde (ot) in het bereik van 1% tot 99% en omvattende een eerste bitmap (bmpl) met het overlaybeeld;
    het herhaaldelijk uitvoeren van de volgende stappen:
    b) het nemen (5002) van een screenshot, waardoor een tweede bitmap (bmp2) bekomen wordt met pixelwaarden die overeenkomen met een alfa-menging van het onderliggend grafisch beeld en het overlaybeeld;
    c) het bepalen (5003) van ten minste één kenmerk van de tweede bitmap (bmp2);
    e) het aanpassen (5004) van de alfa-transparantiewaarde (ot) van het overlayvenster en/of het aanpassen van één of meerdere pixelwaardes van de eerste bitmap (bmpl), gebaseerd op het ten minste één bepaalde kenmerk.
  2. 2. Een computer-geïmplementeerde werkwijze volgens conclusie 1, waarbij de eerste bitmap (bmpl) een monochrome bitmap is, of waarbij de eerste bitmap (bmpl) een bitmap is met een eerste veelheid volledig transparante pixels (P6) afgewisseld met een tweede veelheid pixels (P7) die semi-transparant zijn en een monochrome kleurwaarde hebben.
  3. 3. Een computer-geïmplementeerde werkwijze volgens conclusie 1, waarbij de eerste bitmap (bmpl) een kleurgradiënt is, of waarbij de eerste bitmap (bmpl) een bitmap is met een eerste veelheid volledig transparante pixels (P6) afgewisseld met een tweede veelheid pixels (P7) die semi-transparant zijn en een kleurgradiënt als kleurwaarde hebben.
  4. 4. Een computer-geïmplementeerde werkwijze volgens één der conclusies 1 tot 3, waarbij stap c) omvat: het bepalen van een gemiddelde intensiteit en/of een maximum intensiteit en/of een intensiteitshistogram van de pixels van de tweede bitmap (bmp2);
    en waarbij stap e) omvat: het aanpassen van het alfa-transparantieniveau (ot) zodanig dat de gemiddelde intensiteit of de maximum intensiteit of het intensiteitshistogram bij een volgende iteratie voldoet aan een vooraf bepaald criterium.
  5. 5. Een computer-geïmplementeerde werkwijze volgens één der conclusies 1 tot 4, waarbij stap c) omvat: het bepalen van gemiddelde kleurcomponentwaardes (Ravg, Gavg,
    Bavg) en/of kleurcomponenthistogrammen van de pixels van de tweede bitmap (bmp2);
    BE2018/5041 en waarbij stap e) omvat: het aanpassen van één of meerdere pixelwaardes van het eerste beeld (bmpl) zodanig dat de gemiddelde kleurcomponent of het kleurcomponenthistogram bij een volgende iteratie voldoet aan een vooraf bepaald criterium.
  6. 6. Een computer-geïmplementeerde werkwijze volgens één der conclusies 1 tot 5, verder omvattend stap d) van het bepalen van een helderheidswaarde als indicatie van een helderheid in een kamer;
    en waarbij stap e) het rekening houden met de helderheidswaarde omvat.
  7. 7. Een computer-geïmplementeerde werkwijze volgens één der conclusies 1 tot 6, waarbij stap a) verder omvat: het verschaffen van ten minste één verticale lijn of balk in de eerste bitmap (bmpl) voor het definiëren van minstens twee gebieden omvattende een eerste gebied en een tweede gebied;
    en waarbij stap c) het bepalen omvat van ten minste een eerste kenmerk van het eerste gebied en een tweede kenmerk van het tweede gebied;
    en waarbij stap e) omvat: het aanpassen van één of meerdere pixelwaardes van het eerste gebied zodanig dat het eerste kenmerk voldoet aan een eerste vooraf bepaald criterium, en het aanpassen van één of meerdere pixelwaardes van het tweede gebied, zodanig dat het tweede kenmerk voldoet aan een tweede criterium.
  8. 8. Een computerinrichting, omvattende:
    - ten minste één centrale verwerkingseenheid (CPU), en een eerste geheugen verbonden met de ten minste één centrale verwerkingseenheid (CPU) voor het daarin opslaan van computeruitvoerbare instructies;
    - waarbij de computer-uitvoerbare instructies codefragmenten omvatten voor het uitvoeren van een overlay-werkwijze volgens één der conclusies 1 tot 7.
  9. 9. Een computersysteem omvattende:
    - een computerinrichting volgens conclusie 8;
    - ten minste één aanwijsinrichting verbonden met de computerinrichting, waarbij de aanwijsinrichting beweegbaar is door een gebruiker, en waarbij de computer-uitvoerbare instructies verder geconfigureerd zijn voor het ontvangen van invoergegevens als indicatie van bewegingen van de aanwijsinrichting;
    - ten minste één weergave-inrichting verbonden met een uitgang van de computerinrichting, voor het weergeven van het grafisch beeld gemengd met het overlaybeeld.
    BE2018/5041
  10. 10. Een computerprogrammaproduct voor het verschaffen van een grafische overlay, waarbij het computerprogrammaproduct uitvoerbare instructies bevat die, wanneer ze uitgevoerd worden op ten minste één centrale verwerkingseenheid (CPU) van een computerinrichting volgens conclusie 8 of een computersysteem volgens conclusie 9, ervoor zorgen dat de computerinrichting een werkwijze
    5 uitvoert volgens één der conclusies 1 tot 7.
BE2018/5041A 2017-09-29 2018-01-25 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld BE1025598B1 (nl)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/EP2018/075836 WO2019063495A2 (en) 2017-09-29 2018-09-24 METHOD, DEVICE AND COMPUTER PROGRAM FOR OVERLAPING GRAPHIC IMAGE
US16/650,048 US20210026508A1 (en) 2017-09-29 2018-09-24 Method, device and computer program for overlaying a graphical image

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
BE201705694 2017-09-29
BE201705695 2017-09-29
BEBE2017/5694 2017-09-29

Publications (2)

Publication Number Publication Date
BE1025598A1 true BE1025598A1 (nl) 2019-04-24
BE1025598B1 BE1025598B1 (nl) 2019-04-29

Family

ID=61556987

Family Applications (11)

Application Number Title Priority Date Filing Date
BE20175899A BE1025596A9 (nl) 2017-09-29 2017-12-04 Werkwijze en inrichting en systeem voor het verschaffen van dubbele muis ondersteuning
BE2017/5891A BE1025609B1 (nl) 2017-09-29 2017-12-04 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
BE2017/5896A BE1025593B1 (nl) 2017-09-29 2017-12-04 Werkwijze en inrichting en systeem voor het verschaffen van dubbele muis ondersteuning
BE2017/5893A BE1025590B1 (nl) 2017-09-29 2017-12-04 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
BE2017/5892A BE1025610B1 (nl) 2017-09-29 2017-12-04 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
BE2017/5898A BE1025594B1 (nl) 2017-09-29 2017-12-04 Werkwijze en inrichting en systeem voor het verschaffen van dubbele muis ondersteuning
BE2017/5895A BE1025591B1 (nl) 2017-09-29 2017-12-04 Werkwijze en inrichting en systeem voor het verschaffen van dubbele muis ondersteuning
BE2017/5894A BE1025685B1 (nl) 2017-09-29 2017-12-04 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
BE2017/5897A BE1025601B1 (nl) 2017-09-29 2017-12-04 Werkwijze en inrichting en systeem voor het verschaffen van dubbele muis ondersteuning
BE2018/5041A BE1025598B1 (nl) 2017-09-29 2018-01-25 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
BE20185848A BE1026358B1 (nl) 2017-09-29 2018-12-02 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld

Family Applications Before (9)

Application Number Title Priority Date Filing Date
BE20175899A BE1025596A9 (nl) 2017-09-29 2017-12-04 Werkwijze en inrichting en systeem voor het verschaffen van dubbele muis ondersteuning
BE2017/5891A BE1025609B1 (nl) 2017-09-29 2017-12-04 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
BE2017/5896A BE1025593B1 (nl) 2017-09-29 2017-12-04 Werkwijze en inrichting en systeem voor het verschaffen van dubbele muis ondersteuning
BE2017/5893A BE1025590B1 (nl) 2017-09-29 2017-12-04 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
BE2017/5892A BE1025610B1 (nl) 2017-09-29 2017-12-04 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
BE2017/5898A BE1025594B1 (nl) 2017-09-29 2017-12-04 Werkwijze en inrichting en systeem voor het verschaffen van dubbele muis ondersteuning
BE2017/5895A BE1025591B1 (nl) 2017-09-29 2017-12-04 Werkwijze en inrichting en systeem voor het verschaffen van dubbele muis ondersteuning
BE2017/5894A BE1025685B1 (nl) 2017-09-29 2017-12-04 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
BE2017/5897A BE1025601B1 (nl) 2017-09-29 2017-12-04 Werkwijze en inrichting en systeem voor het verschaffen van dubbele muis ondersteuning

Family Applications After (1)

Application Number Title Priority Date Filing Date
BE20185848A BE1026358B1 (nl) 2017-09-29 2018-12-02 Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld

Country Status (2)

Country Link
BE (11) BE1025596A9 (nl)
NL (5) NL2021695B1 (nl)

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5283560A (en) * 1991-06-25 1994-02-01 Digital Equipment Corporation Computer system and method for displaying images with superimposed partially transparent menus
CA2076466C (en) * 1991-10-21 2002-01-15 Alan R. Tannenbaum Method for buffering high bandwidth data from an input device
US5442376A (en) * 1992-10-26 1995-08-15 International Business Machines Corporation Handling multiple command recognition inputs in a multi-tasking graphical environment
US5638501A (en) * 1993-05-10 1997-06-10 Apple Computer, Inc. Method and apparatus for displaying an overlay image
CA2124505C (en) 1993-07-21 2000-01-04 William A. S. Buxton User interface having simultaneously movable tools and cursor
CA2124624C (en) * 1993-07-21 1999-07-13 Eric A. Bier User interface having click-through tools that can be composed with other tools
US5666499A (en) * 1995-08-04 1997-09-09 Silicon Graphics, Inc. Clickaround tool-based graphical interface with two cursors
US6118427A (en) * 1996-04-18 2000-09-12 Silicon Graphics, Inc. Graphical user interface with optimal transparency thresholds for maximizing user performance and system efficiency
GB2313682B (en) * 1996-05-29 2001-01-10 Icl Personal Systems Oy Personal computer systems
JPH1083253A (ja) * 1996-09-10 1998-03-31 Hitachi Ltd 情報処理装置
JPH1173294A (ja) * 1997-08-25 1999-03-16 Internatl Business Mach Corp <Ibm> ポインティング装置およびその方法
US6151030A (en) * 1998-05-27 2000-11-21 Intel Corporation Method of creating transparent graphics
US6333753B1 (en) 1998-09-14 2001-12-25 Microsoft Corporation Technique for implementing an on-demand display widget through controlled fading initiated by user contact with a touch sensitive input device
US6232957B1 (en) * 1998-09-14 2001-05-15 Microsoft Corporation Technique for implementing an on-demand tool glass for use in a desktop user interface
US6509889B2 (en) * 1998-12-03 2003-01-21 International Business Machines Corporation Method and apparatus for enabling the adaptation of the input parameters for a computer system pointing device
US6981229B1 (en) * 2000-04-28 2005-12-27 Alias Systems Corp. System for dynamically mapping input device movement as a user's viewpoint changes
US20020167534A1 (en) * 2001-05-10 2002-11-14 Garrett Burke Reading aid for electronic text and displays
US7620915B2 (en) * 2004-02-13 2009-11-17 Ludwig Lester F Electronic document editing employing multiple cursors
US7802265B2 (en) * 2004-03-15 2010-09-21 Imi Innovations, Inc. Computer interface system using multiple independent graphical data input devices
US7928959B1 (en) * 2005-05-05 2011-04-19 Imi Innovations Inc. System and method for multiple independent computer inputs using unique device and source identification systems
JP2007180641A (ja) * 2005-12-27 2007-07-12 Sony Corp 撮像装置及び撮像装置の表示方法
US8360779B1 (en) * 2006-12-11 2013-01-29 Joan Brennan Method and apparatus for a reading focus card
US8130194B1 (en) * 2006-12-18 2012-03-06 Imi Innovations, Inc. Non-mouse devices that function via mouse-like messages
US9442648B2 (en) * 2008-10-07 2016-09-13 Blackberry Limited Portable electronic device and method of controlling same
US20110035700A1 (en) * 2009-08-05 2011-02-10 Brian Meaney Multi-Operation User Interface Tool
US8717289B2 (en) * 2010-06-22 2014-05-06 Hsni Llc System and method for integrating an electronic pointing device into digital image data
KR101204186B1 (ko) * 2010-08-03 2012-11-23 정환희 디스플레이장치 상의 커서 출력방법 및 그 방법을 구현하는 프로그램이 기록된 기록매체
US20120054672A1 (en) * 2010-09-01 2012-03-01 Acta Consulting Speed Reading and Reading Comprehension Systems for Electronic Devices
US8866854B2 (en) * 2011-10-31 2014-10-21 Microsoft Corporation Consolidated orthogonal guide creation
US8990736B2 (en) * 2012-01-09 2015-03-24 International Business Machines Corporation Fast cursor location
US9564085B2 (en) * 2012-05-27 2017-02-07 Dialog Semiconductor Inc. Selective dimming to reduce power of a light emitting display device
US10915698B2 (en) * 2013-12-31 2021-02-09 Barnes & Noble College Booksellers, Llc Multi-purpose tool for interacting with paginated digital content
KR102212562B1 (ko) * 2014-05-23 2021-02-08 삼성디스플레이 주식회사 영상 처리 방법 및 이를 수행하는 영상 처리 장치
KR102253444B1 (ko) * 2014-07-08 2021-05-20 삼성디스플레이 주식회사 사용자의 눈 깜빡임을 유도하는 유도 영상 표시 방법, 장치, 및 컴퓨터 판독 가능한 기록매체

Also Published As

Publication number Publication date
NL2021697B1 (nl) 2019-04-08
BE1025593A1 (nl) 2019-04-24
BE1025591B1 (nl) 2019-04-29
BE1025591A1 (nl) 2019-04-24
BE1025598B1 (nl) 2019-04-29
BE1025596A1 (nl) 2019-04-24
NL2021695B1 (nl) 2019-04-08
NL2021698B1 (nl) 2019-04-08
BE1025594A1 (nl) 2019-04-24
BE1025596A9 (nl) 2019-05-06
BE1025685A1 (nl) 2019-06-03
BE1025590A1 (nl) 2019-04-24
BE1025594B1 (nl) 2019-04-29
NL2021696B1 (nl) 2019-04-08
BE1025609B1 (nl) 2019-04-29
BE1025590B1 (nl) 2019-04-29
BE1025610A1 (nl) 2019-04-25
NL2021699B1 (nl) 2019-04-08
BE1025685B1 (nl) 2019-06-11
BE1025601A1 (nl) 2019-04-24
BE1026358B1 (nl) 2020-01-20
BE1025610B1 (nl) 2019-04-29
BE1025601B1 (nl) 2019-04-29
BE1025593B1 (nl) 2019-04-29
BE1025609A1 (nl) 2019-04-25
BE1025596B1 (nl) 2019-04-29
BE1026358A1 (nl) 2020-01-14

Similar Documents

Publication Publication Date Title
US20210026508A1 (en) Method, device and computer program for overlaying a graphical image
US20160240148A1 (en) Display systems and methods
BE1026977B1 (nl) Werkwijze en inrichting en systeem voor het verschaffen van dubbele muis ondersteuning
EP2854127A1 (en) Display apparatus and method for providing font effect thereof
WO2019063495A2 (en) METHOD, DEVICE AND COMPUTER PROGRAM FOR OVERLAPING GRAPHIC IMAGE
DE202017105674U1 (de) Steuerung eines Fensters unter Verwendung eines berührungsempfindlichen Rands
BE1025598B1 (nl) Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
BE1025952B1 (nl) Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
BE1026516B1 (nl) Werkwijze, inrichting en computerprogramma voor het overlayen van een grafisch beeld
NL2023600B1 (en) Method, device and computer program for overlaying a graphical image
Chegini et al. Interaction Concepts for Collaborative Visual Analysis of Scatterplots on Large Vertically-Mounted High-Resolution Multi-Touch Displays.
NL2022859B1 (nl) Werkwijze en inrichting en systeem met dubbele muis ondersteuning
NL2022858B1 (nl) Werkwijze en inrichting en systeem met dubbele muis ondersteuning
WO2021100158A1 (ja) 電子帳票作成装置、電子帳票作成方法、及びプログラム
EP3462335A1 (en) System and method for selecting a time stamp and generating user interface elements
JP5445646B2 (ja) 表示装置
EP3462336A1 (en) System and method for generating user interface elements with a viewing pane

Legal Events

Date Code Title Description
FG Patent granted

Effective date: 20190429

MM Lapsed because of non-payment of the annual fee

Effective date: 20200131