U.S. patent application number 14/665462 was filed with the patent office on 2015-11-26 for pen input modes for digital ink.
The applicant listed for this patent is Microsoft Technology Licensing, LLC. Invention is credited to William H. Vong.
Application Number | 20150338940 14/665462 |
Document ID | / |
Family ID | 54556059 |
Filed Date | 2015-11-26 |
United States Patent
Application |
20150338940 |
Kind Code |
A1 |
Vong; William H. |
November 26, 2015 |
Pen Input Modes for Digital Ink
Abstract
Techniques for pen input modes for digital ink are described.
According to various embodiments, a pen apparatus is described that
is switchable between providing digital ink input and
non-digital-ink input. According to various embodiments, a pen
apparatus is switchable between different ink input modes. For
instance, the pen apparatus is switchable between a permanent ink
mode in which ink is applied as permanent ink, and a transient ink
mode in which ink is applied as transient ink.
Inventors: |
Vong; William H.; (Hunts
Point, WA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Microsoft Technology Licensing, LLC |
Redmond |
WA |
US |
|
|
Family ID: |
54556059 |
Appl. No.: |
14/665462 |
Filed: |
March 23, 2015 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
62002648 |
May 23, 2014 |
|
|
|
Current U.S.
Class: |
345/179 |
Current CPC
Class: |
G06F 3/041 20130101;
G06F 2203/0381 20130101; G06T 11/60 20130101; G06F 2203/04807
20130101; G06F 3/04883 20130101; G06F 3/04842 20130101; G06F
3/03545 20130101; H04L 65/403 20130101; G06F 3/038 20130101; G06T
11/203 20130101; G06F 3/04845 20130101; G06F 3/013 20130101 |
International
Class: |
G06F 3/0354 20060101
G06F003/0354; G06F 3/038 20060101 G06F003/038 |
Claims
1. A pen apparatus comprising: a shaft; a tip portion that is
retractably engaged with the shaft such that the tip portion is
extendable from the shaft and retractable at least partially into
the shaft; and a tip button that is selectable to extend and
retract the tip portion relative to the shaft, the pen apparatus
configured to apply digital ink to an input surface of a computing
device in response to interaction of the pen with the input surface
with the tip portion extended from the shaft, and configured to
apply non-digital-ink input to the input surface of the computing
device in response to interaction of the pen with the input surface
with the tip portion at least partially retracted into the
shaft.
2. A pen apparatus as recited in claim 1, further comprising an
active component configured to interact with the input surface to
cause digital ink to be applied to the input surface in response to
interaction of the pen with the input surface with the tip portion
extended from the shaft.
3. A pen apparatus as recited in claim 1, further comprising an
active component configured to interact with the input surface to
cause digital ink to be applied to the input surface in response to
interaction of the pen with the input surface with the tip portion
at least partially extended from the shaft, and wherein the active
component is further configured to interact with the input surface
to cause non-digital ink input to be applied to the input surface
in response to interaction of the pen with the input surface with
the tip portion at least partially retracted into the shaft.
4. A pen apparatus as recited in claim 1, wherein the non-digital
ink input comprises touch input to the input surface such that
digital ink is not applied to the input surface in response to
interaction of the pen with the input surface with the tip portion
at least partially retracted into the shaft.
5. A pen apparatus as recited in claim 1, further comprising a pen
mode button positioned on the shaft, the pen mode button being
selectable to cause the pen apparatus to apply digital ink to the
input surface in different ink modes and in response to interaction
of the pen with the input surface with the tip portion at least
partially extended from the shaft.
6. A pen apparatus as recited in claim 1, further comprising a pen
mode button positioned on the shaft, the pen mode button being
selectable to cause the pen apparatus to switch between applying
digital ink in a permanent ink mode and applying digital ink in a
transient ink mode.
7. A pen apparatus as recited in claim 1, wherein retraction of the
tip portion causes the tip portion to be non-detectable to the
input surface.
8. A pen apparatus as recited in claim 1, wherein the pen apparatus
is configured such that retraction of the tip portion disables one
or more of ink functionality of the pen apparatus or ink
functionality of the input surface.
9. A pen apparatus as recited in claim 1, wherein the shaft
includes an eraser portion that is configured to erase digital ink
applied to the input surface.
10. A system comprising: an input surface; one or more processors;
and one or more computer-readable storage media storing
computer-executable instructions that, responsive to execution by
the one or more processors, cause the system to perform operations
including: detecting pen input from a pen to the input surface;
processing the pen input as digital ink input in response to
ascertaining that the pen is in an ink-enabled mode; and processing
the pen input as non-digital-ink input in response to ascertaining
that the pen is in an ink-disabled mode.
11. The system as described in claim 10, wherein the instructions
further include ascertaining whether the pen is in the ink-enabled
mode or the ink-disabled mode by determining whether a tip portion
of the pen is in an extended or retracted position.
12. The system as described in claim 10, wherein the instructions
further include determining that a tip portion of the pen is in a
retracted position, and in response processing the pen input to the
input surface as non-digital-ink input.
13. The system as described in claim 10, wherein said processing
the pen input as non-digital-ink input includes processing the pen
input such that digital ink is not applied to the input surface in
response to contact between the pen and the input surface.
14. The system as described in claim 10, wherein the pen input
comprises pen input to a digital document, and wherein the
operations further include: ascertaining that the pen is in a
transient ink mode, wherein processing the pen input as digital-ink
input comprises causing the digital ink input to be propagated to a
transient ink layer for the digital document.
15. The system as described in claim 10, wherein the operations
further include: receiving an indication of contact between an
eraser portion of the pen and digital ink displayed on the input
surface; and causing the digital ink to be removed from the input
surface in response to the indication.
16. A computer-implemented method, comprising: receiving by a
computing system ink input to an input surface from a pen
apparatus; processing by the computing system the ink input as
transient ink in response to ascertaining that the pen apparatus is
in a transient ink mode; and processing by the computing system the
ink input as permanent ink in response to ascertaining that the pen
apparatus is in a permanent ink mode.
17. A computer-implemented method as recited in claim 16, further
comprising ascertaining whether the pen apparatus is in the
transient ink mode or the permanent ink mode based on a signal from
the pen apparatus indicating a current active ink mode for the pen
apparatus.
18. A computer-implemented method as recited in claim 16, wherein
the ink input comprises ink input to a digital document, and
wherein said processing the ink input as transient ink comprises
propagating the ink input to a transient layer for the digital
document.
19. A computer-implemented method as recited in claim 16, wherein
the ink input comprises ink input to a digital document, wherein
said processing the ink input as transient ink comprises
propagating the ink input to a transient ink layer for the digital
document, and wherein the method further comprises enabling the
transient ink layer to be accessible separately from primary
content of the digital document.
20. A computer-implemented method as recited in claim 16, further
comprising: detecting further pen input to the input surface;
ascertaining that the pen apparatus is in an ink-disabled mode; and
processing further pen input to the input surface as
non-digital-ink input in response to ascertaining that the pen
apparatus is in an ink-disabled mode.
Description
RELATED APPLICATION
[0001] This application claims priority under 35 U.S.C.
.sctn.119(e) to U.S. Provisional Patent Application No. 62/002,648,
Attorney Docket Number 355121.01, filed May 23, 2014 and titled
"Ink," the entire disclosure of which is incorporated by reference
in its entirety.
BACKGROUND
[0002] Devices today (e.g., computing devices) typically support a
variety of different input techniques. For instance, a particular
device may receive input from a user via a keyboard, a mouse, voice
input, touch input (e.g., to a touchscreen), and so forth. One
particularly intuitive input technique enables a user to utilize a
touch instrument (e.g., a pen, a stylus, a finger, and so forth) to
provide freehand input to a touch-sensing functionality such as a
touchscreen, which is interpreted as digital ink. The freehand
input may be converted to a corresponding visual representation on
a display, such as for taking notes, for creating and editing an
electronic document, and so forth. Many current techniques for
digital ink, however, typically provide limited ink
functionality.
SUMMARY
[0003] This Summary is provided to introduce a selection of
concepts in a simplified form that are further described below in
the Detailed Description. This Summary is not intended to identify
key features or essential features of the claimed subject matter,
nor is it intended to be used as an aid in determining the scope of
the claimed subject matter.
[0004] Techniques for pen input modes for digital ink are
described. According to various embodiments, a pen apparatus is
described that is switchable between providing digital ink input
and non-digital-ink input. According to various embodiments, a pen
apparatus is switchable between different ink input modes. For
instance, the pen apparatus is switchable between a permanent ink
mode in which ink is applied as permanent ink, and a transient ink
mode in which ink is applied as transient ink.
BRIEF DESCRIPTION OF THE DRAWINGS
[0005] The detailed description is described with reference to the
accompanying figures. In the figures, the left-most digit(s) of a
reference number identifies the figure in which the reference
number first appears. The use of the same reference numbers in
different instances in the description and the figures may indicate
similar or identical items.
[0006] FIG. 1 is an illustration of an environment in an example
implementation that is operable to employ techniques discussed
herein in accordance with one or more embodiments.
[0007] FIG. 2 depicts an example implementation scenario for a
permanent ink mode in accordance with one or more embodiments.
[0008] FIG. 3 depicts an example implementation scenario for a
transient ink mode in accordance with one or more embodiments.
[0009] FIG. 4 depicts an example implementation scenario for a
transient ink mode in accordance with one or more embodiments.
[0010] FIG. 5 depicts an example implementation scenario for a
transient ink mode in accordance with one or more embodiments.
[0011] FIG. 6 depicts an example implementation scenario for a
transient ink mode in accordance with one or more embodiments.
[0012] FIG. 7 depicts an example implementation of a pen apparatus
in accordance with one or more embodiments.
[0013] FIG. 8 depicts an example implementation of a pen apparatus
in accordance with one or more embodiments.
[0014] FIG. 9 depicts an example implementation scenario for
receiving digital ink input and non-digital-ink input in accordance
with one or more embodiments.
[0015] FIG. 10 is a flow diagram that describes steps in a method
for processing ink according to a current ink mode in accordance
with one or more embodiments
[0016] FIG. 11 is a flow diagram that describes steps in a method
for a transient ink timer in accordance with one or more
embodiments.
[0017] FIG. 12 is a flow diagram that describes steps in a method
for processing pen input based on a pen mode in accordance with one
or more embodiments.
[0018] FIG. 13 is a flow diagram that describes steps in a method
for processing pen input based on an ink mode in accordance with
one or more embodiments.
[0019] FIG. 14 is a flow diagram that describes steps in a method
for erasing digital ink in accordance with one or more
embodiments
[0020] FIG. 15 illustrates an example system and computing device
as described with reference to FIG. 1, which are configured to
implement embodiments of techniques described herein.
DETAILED DESCRIPTION
[0021] Overview
[0022] Techniques for pen input modes for digital ink are
described. Generally, ink refers to freehand input to a
pressure-sensing functionality such as a touchscreen and/or
digitizer screen, which is interpreted as digital ink. Generally,
digital ink is referred to herein as "ink" and "digital ink." Ink
may be provided in various ways, such as using a pen (e.g., an
active pen, a passive pen, and so forth), a stylus, a finger, and
so forth.
[0023] According to various implementations, a pen apparatus is
described that is switchable between providing digital ink input
and non-digital-ink input. For instance, in an ink-enabled mode,
the pen apparatus causes ink content to be applied to an input
surface such as an active display. In an ink-disabled mode, the pen
apparatus provides input modes other than ink content, such as
touch input for object manipulation and selection, document
navigation, and so forth. For instance, when the pen apparatus is
in the ink-disabled mode, contact between the pen apparatus and an
input surface does not cause ink to be applied to the input
surface. Thus, a switchable pen apparatus enables user to provide
different types of input from a single device.
[0024] According to various implementations, a pen apparatus is
switchable to apply ink according to different ink modes. For
instance, in an ink-enabled mode a pen will apply ink whenever
input is provided to an input surface. However, the type of ink
that is applied can be switched between different types, such as
based on an application context, in response to a user selection of
an ink mode, and so forth. For instance, the pen apparatus is
switchable between a permanent ink mode in which ink is applied as
permanent ink, and a transient ink mode in which ink is applied as
transient ink.
[0025] In the following discussion, an example environment is first
described that is operable to employ techniques described herein.
Next, a section entitled "Example Implementation Scenarios and
Procedures" describes some example implementation scenarios and
methods for pen input modes for digital ink in accordance with one
or more embodiments. Finally, a section entitled "Example System
and Device" describes an example system and device that are
operable to employ techniques discussed herein in accordance with
one or more embodiments.
[0026] Example Environment
[0027] FIG. 1 is an illustration of an environment 100 in an
example implementation that is operable to employ techniques for
pen input modes for digital ink discussed herein. Environment 100
includes a client device 102 which can be embodied as any suitable
device such as, by way of example and not limitation, a smartphone,
a tablet computer, a portable computer (e.g., a laptop), a desktop
computer, a wearable device, and so forth. In at least some
implementations, the client device 102 represents a smart
appliance, such as an Internet of Things ("IoT") device. Thus, the
client device 102 may range from a system with significant
processing power, to a lightweight device with minimal processing
power. One of a variety of different examples of a client device
102 is shown and described below in FIG. 15.
[0028] The client device 102 includes a variety of different
functionalities that enable various activities and tasks to be
performed. For instance, the client device 102 includes an
operating system 104, applications 106, and a communication module
108. Generally, the operating system 104 is representative of
functionality for abstracting various system components of the
client device 102, such as hardware, kernel-level modules and
services, and so forth. The operating system 104, for instance, can
abstract various components (e.g., hardware, software, and
firmware) of the client device 102 to the applications 106 to
enable interaction between the components and the applications
106.
[0029] The applications 106 represents functionalities for
performing different tasks via the client device 102. Examples of
the applications 106 include a word processing application, a
spreadsheet application, a web browser, a gaming application, and
so forth. The applications 106 may be installed locally on the
client device 102 to be executed via a local runtime environment,
and/or may represent portals to remote functionality, such as
cloud-based services, web apps, and so forth. Thus, the
applications 106 may take a variety of forms, such as
locally-executed code, portals to remotely hosted services, and so
forth.
[0030] The communication module 108 is representative of
functionality for enabling the client device 102 to communication
over wired and/or wireless connections. For instance, the
communication module 108 represents hardware and logic for
communication via a variety of different wired and/or wireless
technologies and protocols.
[0031] The client device 102 further includes a display device 110,
input mechanisms 112 including a digitizer 114 and touch input
devices 116, and an ink module 118. The display device 110
generally represents functionality for visual output for the client
device 102. Additionally, the display device 110 represents
functionality for receiving various types of input, such as touch
input, pen input, and so forth. The input mechanisms 112 generally
represent different functionalities for receiving input to the
computing device 102. Examples of the input mechanisms 112 include
gesture-sensitive sensors and devices (e.g., such as touch-based
sensors and movement-tracking sensors (e.g., camera-based)), a
mouse, a keyboard, a stylus, a touch pad, accelerometers, a
microphone with accompanying voice recognition software, and so
forth. The input mechanisms 112 may be separate or integral with
the displays 110; integral examples include gesture-sensitive
displays with integrated touch-sensitive or motion-sensitive
sensors. The digitizer 114 represents functionality for converting
various types of input to the display device 110 and the touch
input devices 116 into digital data that can be used by the
computing device 102 in various ways, such as for generating
digital ink.
[0032] According to various implementations, the ink module 118
represents functionality for performing various aspects of
techniques for pen input modes for digital ink discussed herein.
Various functionalities of the ink module 118 are discussed below.
The ink module 118 includes a transient layer application
programming interface (API) 120 and a permanent layer API 122. The
transient layer API 120 represents functionality for enabling
interaction with a transient ink layer, and the permanent layer API
122 represents functionality for enabling ink interaction with a
permanent object (e.g., document) layer. In at least some
implementations, the transient layer API 120 and the permanent
layer API 122 may be utilized (e.g., by the applications 106) to
access transient ink functionality and permanent ink functionality,
respectively.
[0033] The environment 100 further includes a pen 124, which is
representative of an input device for providing input to the
display device 110. Generally, the pen 124 is in a form factor of a
traditional pen but includes functionality for interacting with the
display device 110 and other functionality of the client device
102. In at least some implementations, the pen 124 is an active pen
that includes electronic components for interacting with the client
device 102. The pen 124, for instance, includes a battery that can
provide power to internal components of the pen 124.
[0034] Alternatively or additionally, the pen 124 may include a
magnet or other functionality that supports hover detection over
the display device 110. This is not intended to be limiting,
however, and in at least some implementations the pen 124 may be
passive, e.g., a stylus without internal electronics. Generally,
the pen 124 is representative of an input device that can provide
input that can be differentiated from other types of input by the
client device 102. For instance, the digitizer 114 is configured to
differentiate between input provided via the pen 124, and input
provided by a different input mechanism such as a user's finger, a
stylus, and so forth. Further details concerning the pen 124 are
provided below.
[0035] Having described an example environment in which the
techniques described herein may operate, consider now a discussion
of an example implementation scenario in accordance with one or
more embodiments.
[0036] Transient Ink and Permanent Ink
[0037] According to various implementations, ink can be applied in
different ink modes including a transient ink mode and a permanent
ink mode. Generally, transient ink refers to ink that is temporary
and that can be used for various purposes, such as invoking
particular actions, annotating a document, and so forth. For
instance, in transient implementations, ink can be used for
annotation layers for electronic documents, temporary visual
emphasis, text recognition, invoking various commands and
functionalities, and so forth.
[0038] Permanent ink generally refers to implementations where ink
becomes a part of the underlying object, such as for creating a
document, writing on a document (e.g., for annotation and/or
editing), applying ink to graphics, and so forth. Permanent ink,
for example, can be considered as a graphics object, such as for
note taking, for creating visual content, and so forth.
[0039] In at least some implementations, a pen (e.g., the pen 124)
applies ink whenever the pen is in an ink-enabled mode and is in
contact with an input surface, such as the display device 104
and/or other input surface. Further, a pen can apply ink across
many different applications, platforms, and services. In one or
more implementations, an application and/or service can specify how
ink is used in relation to an underlying object, such as a word
processing document, a spreadsheet and so forth. For instance, in
some scenarios ink is applied as transient ink, and other scenarios
ink is applied as permanent ink. Examples of different
implementations and attributes of transient ink and permanent ink
are detailed below.
[0040] Example Implementation Scenarios and Procedures
[0041] This section describes some example implementation scenarios
and example procedures for ink modes in accordance with one or more
implementations. The implementation scenarios and procedures may be
implemented in the environment 100 described above, the system 1500
of FIG. 15, and/or any other suitable environment. The
implementation scenarios and procedures, for example, describe
example operations of the client device 102 and the ink module 118.
While the implementation scenarios and procedures are discussed
with reference to a particular application, it is to be appreciated
that techniques for pen input modes for digital ink discussed
herein are applicable across a variety of different applications,
services, and environments. In at least some embodiments, steps
described for the various procedures are implemented automatically
and independent of user interaction.
[0042] FIG. 2 depicts an example implementation scenario 200 for a
permanent ink mode in accordance with one or more implementations.
The upper portion of the scenario 200 includes a graphical user
interface (GUI) 202 displayed on the display device 110. Generally,
the GUI 202 represents a GUI for a particular functionality, such
as an instance of the applications 106. Also depicted is a user
holding the pen 124. Displayed within the GUI 202 is a document
204, e.g., an electronic document generated via one of the
applications 106.
[0043] Proceeding to the lower portion of the scenario 200, the
user brings the pen 124 in proximity to the surface of the display
device 110 and within the GUI 202. The pen 124, for instance, is
placed within a particular distance of the display device 110
(e.g., less than 2 centimeters) but not in contact with the display
device 110. This behavior is generally referred to herein as
"hovering" the pen 124. In response to detecting proximity of the
pen 124, a hover target 206 is displayed within the GUI 202 and at
a point within the GUI 202 that is directly beneath the tip of the
pen 124. Generally, the hover target 206 represents a visual
affordance that indicates that ink functionality is active such
that a user may apply ink to the document 204.
[0044] According to various implementations, the visual appearance
(e.g., shape, color, shading, and so forth) of the hover target 206
provides a visual cue indicating a current ink mode that is active.
In the scenario 200, the hover target is presented as a solid
circle, which indicates that a permanent ink mode is active. For
instance, if the user proceeds to put the pen 124 in contact with
the display device 110 to apply ink to the document 204 in a
permanent ink mode, the ink will become part of the document 204,
e.g., will be added to a primary content layer of the document 204.
Consider, for example, that the text (e.g., primary content)
displayed in the document 204 was created via ink input in a
permanent ink mode. Thus, ink applied in a permanent ink mode
represents a permanent ink layer that is added to a primary content
layer of the document 204.
[0045] In further response to detecting hovering of the pen 124, an
ink flag 208 is visually presented adjacent to and/or at least
partially overlaying a portion of the document 204. Generally, the
ink flag 208 represents a visual affordance that indicates that ink
functionality is active such that a user may apply ink to the
document 204. In at least some implementations, the ink flag 208
may be presented additionally or alternatively to the hover target
206. In this particular example, the ink flag 208 includes a visual
cue indicating a current ink mode that is active. In the scenario
200, the ink flag 208 includes a solid circle, which indicates that
a permanent ink mode is active. As further detailed below, the ink
flag 208 is selectable to cause an ink menu to be displayed that
includes various ink-related functionalities, options, and settings
that can be applied.
[0046] FIG. 3 depicts an example implementation scenario 300 for a
transient ink mode in accordance with one or more implementations.
The upper portion of the scenario 300 includes a graphical user
interface (GUI) 302 displayed on the display device 110. Generally,
the GUI 302 represents a GUI for a particular functionality, such
as an instance of the applications 106. Displayed within the GUI
302 is a document 304, e.g., an electronic document generating via
one of the applications 106. The document 304 includes primary
content 306, which represents content generated as part of a
primary content layer for the document 304. For instance, in this
particular example the document 304 is a text-based document, and
thus the primary content 306 includes text that is populated to the
document. Various other types of documents and primary content may
be employed, such as for graphics, multimedia, web content, and so
forth.
[0047] As further illustrated, a user is hovering the pen 124
within a certain proximity of the surface of the display device
110, such as discussed above with reference to the scenario 200. In
response, a hover target 308 is displayed within the document 304
and beneath the tip of the pen. In this particular example, the
hover target 308 is presented as a hollow circle, thus indicating
that a transient ink mode is active. For instance, if the user
proceeds to apply ink to the document 304, the ink will behave
according to a transient ink mode. Examples of different transient
ink behaviors are detailed elsewhere herein.
[0048] Further in response to the user hovering the pen 124 over
the display device 110, an ink flag 310 is presented. In this
particular example, the ink flag 310 includes a hollow circle 312,
thus providing a visual cue that a transient ink mode is
active.
[0049] Proceeding to the lower portion of the scenario 300, the
user removes the pen 124 from proximity to the display device 110.
In response, the hover target 308 and the ink flag 310 are removed
from the display device 110. For instance, in at least some
implementations, a hover target and/or an ink flag are presented
when the pen 124 is detected as being hovered over the display
device 110, and are removed from the display device 110 when the
pen 124 is removed such that the pen 124 is no longer detected as
being hovered over the display device 110. This is not intended to
be limiting, however, and in at least some implementations, an ink
flag may be persistently displayed to indicate that inking
functionality is active and/or available.
[0050] FIG. 4 depicts an example implementation scenario 400 for a
transient ink mode in accordance with one or more implementations.
The upper portion of the scenario 300 includes the GUI 302 with the
document 304 (introduced above) displayed on the display device
110. In at least some implementations, the scenario 400 represents
an extension of the scenario 300, above.
[0051] In the upper portion of the scenario 400, a user applies ink
content 402 to the document 304 using the pen 124. In this
particular scenario, the ink content 402 corresponds to an
annotation of the document 402. It is to be appreciated, however,
that a variety of different types of transient ink other than
annotations may be employed. Notice that as the user is applying
the ink content 402, a hover target is not displayed. For instance,
in at least some implementations when the pen 124 transitions from
a hover position to contact with the display device 110, a hover
target is removed. Notice also that the ink flag 310 includes a
hollow circle 312, indicating that the ink content 402 is applied
according to a transient ink mode.
[0052] Proceeding to the lower portion of the scenario 400, the
user lifts the pen 124 from the display device 110 such that the
pen 124 is not detected, e.g., the pen 124 is not in contact with
the display device 110 and is not in close enough proximity to the
display device 110 to be detected as hovering. In response to the
pen 124 no longer being detected in contact with or in proximity to
the display device 110, an ink timer 406 begins running. For
instance, the ink timer 406 begins counting down from a specific
time value, such as 30 seconds, 60 seconds, and so forth.
Generally, the ink timer is representative of functionality to
implement a countdown function, such as for tracking time between
user interactions with the display device 110 via the pen 124. The
ink timer 406, for example, represents a functionality of the ink
module 118.
[0053] As a visual cue that the ink counter 406 is elapsing, the
hollow circle 312 begins to unwind, e.g., begins to disappear from
the ink flag 310. In at least some implementations, the hollow
circle 312 unwinds at a rate that corresponds to the countdown of
the ink timer 406. For instance, when the ink timer 406 is elapsed
by 50%, then 50% of the hollow circle 312 is removed from the ink
flag 310. Thus, unwinding of the hollow circle 312 provides a
visual cue that the ink timer 406 is elapsing, and how much of the
ink timer has elapsed and/or remains to be elapsed.
[0054] In at least some implementations, if the ink timer 406 is
elapsing as in the lower portion of the scenario 400 and the user
proceeds to place the pen 124 in proximity to the display device
110 (e.g., hovered or in contact with the display device 110), the
ink timer 406 will reset and will not begin elapsing again until
the user removes the pen 124 from the display device 110 such that
the pen 124 is not detected. In such implementations, the hollow
circle 312 will be restored within the ink flag 310 as in the upper
portion of the scenario 400.
[0055] FIG. 5 depicts an example implementation scenario 500 for a
transient ink mode in accordance with one or more implementations.
The upper portion of the scenario 300 includes the GUI 302 with the
document 304 (introduced above) displayed on the display device
110. In at least some implementations, the scenario 500 represents
an extension of the scenario 400, above.
[0056] In the upper portion of the scenario 500, the ink timer 406
has elapsed. For instance, notice that the hollow circle 312 has
completely unwound within the ink flag 310, e.g., is visually
removed from the ink flag 310. According to various
implementations, this provides a visual cue that the ink timer 406
has completely elapsed.
[0057] Proceeding to the lower portion of the scenario 500, and in
response to expiry of the ink timer 406, the ink content 402 is
removed from the GUI 302 and saved as part of a transient ink layer
504 for the document 304. Further, the ink flag 310 is populated
with a user icon 502. The user icon 502, for example, represents a
user that is currently logged in to the computing device 102,
and/or a user that interacts with the document 304 to apply the ink
content 402. Alternatively or additionally, the pen 124 includes
user identification data that is detected by the computing device
102 and thus is leveraged to track which user is interacting with
the document 304. For example, the pen 124 includes a tagging
mechanism (e.g., a radio-frequency identifier (RFID) chip) embedded
with a user identity for a particular user. Thus, when the pen 124
is placed in proximity to the display device 110, the tagging
mechanism is detected by the computing device 102 and utilized to
attribute ink input and/or other types of input to a particular
user. As used herein, the term "user" may be used to refer to an
identity for an individual person, and/or an identity for a
discrete group of users that are grouped under a single user
identity.
[0058] According to various implementations, population of the user
icon 502 to the ink flag 310 represents a visual indication that
the transient ink layer 504 exists for the document 304, and that
the transient ink layer 504 is associated with (e.g., was generated
by) a particular user. Generally, the transient ink layer 504
represents a data layer that is not part of the primary content
layer of the document 304, but that is persisted and can be
referenced for various purposes. Further attributes of transient
ink layers are described elsewhere herein.
[0059] FIG. 6 depicts an example implementation scenario 600 for a
transient ink mode in accordance with one or more implementations.
The upper portion of the scenario 600 includes the GUI 302 with the
document 304 (introduced above) displayed on the display device
110. In at least some implementations, the scenario 600 represents
an extension of the scenario 500, above.
[0060] In the upper portion of the scenario 600, the ink flag 310
is displayed indicating that a transient ink layer (e.g., the
transient ink layer 504) exists for the document 304, and that the
transient ink layer is linked to a particular user represented by
the user icon 502 in the ink flag 310.
[0061] Proceeding to the lower portion of the scenario 600, a user
selects the ink flag 310 with the pen 124, which causes the ink
content 402 to be returned to display as part of the document 304.
The ink content 402, for example, is bound to the transient ink
layer 504, along with other transient ink content generated for the
transient ink layer 504. Thus, in at least some implementations,
the transient ink layer 504 is accessible by various techniques,
such as by selection of the ink flag 310.
[0062] Additionally or alternatively to selection of the ink flag
310, if the user proceeds to apply further ink content to the
document 304 while in the transient ink mode, the transient ink
layer 504 is retrieved and transient ink content included as part
of the transient ink layer 504 is displayed as part of the document
504. In at least some implementations, transient ink content of the
transient ink layer 504 is bound (e.g., anchored) to particular
portions (e.g., pages, lines, text, and so forth) of the document
304. For instance, the user generated the ink content 402 adjacent
to a particular section of text. Thus, when the transient ink layer
504 is recalled as depicted in the scenario 600, the ink content
402 is displayed adjacent to the particular section of text.
[0063] According to various implementations, the transient ink
layer 504 is cumulative such that a user may add ink content to and
remove ink content from the transient ink layer 504 over a span of
time and during multiple different interactivity sessions. Thus,
the transient ink layer 504 generally represents a record of
multiple user interactions with the document 304, such as for
annotations, proofreading, commenting, and so forth. Alternatively
or additionally, multiple transient layers may be created for the
document 304, such as when significant changes are made to the
primary content 306, when other users apply transient ink to the
document 304, and so forth.
[0064] In at least some implementations, when the user pauses
interaction with the document 304, the ink timer 406 begins
elapsing such as discussed above with reference to the scenarios
400, 500. Accordingly, the scenario 600 may return to the scenario
400.
[0065] FIG. 7 depicts an example implementation of the pen 124 in
accordance with one or more implementations. The pen 124 includes a
shaft 700, which represents a main body and/or chassis of the pen
124. For instance, various components of the pen 124 are attached
to and/or contained within the shaft 700. The pen 124 further
includes a tip 702 that extends through a tip portal 704 in a nose
706 of the shaft 700. The tip 702 represents a portion of the pen
124 that can be leveraged to provide input and/or other types of
interactions to an input surface, such as the display device 110
and/or others of the touch input devices 116. For instance, contact
between the tip 702 and an input surface causes digital ink input
to be applied to the input surface. As further detailed below, the
tip 702 can be retracted and extended relative to the shaft 700 to
provide for different input scenarios.
[0066] The pen 124 further includes a pen mode button 708, which
represents a selectable control (e.g., a switch) for switching the
pen 124 between different pen input modes. Generally, different pen
input modes enable input from the pen 124 to be utilized and/or
interpreted by the ink module 118 in different ways. For instance,
selecting the pen mode button 708 causes the pen 124 to transition
between a permanent ink mode and a transient ink mode.
[0067] A tip button 710 is attached to the shaft 700 and as further
detailed below is selectable to retract and extend the tip 702. In
at least some implementations, the pen 124 is configured to provide
digital ink input with the tip 702 extended as illustrated in FIG.
7. Further, the pen 124 is configured to provide non-digital-ink
input with the tip 702 retracted, as further detailed below.
[0068] An eraser portion 712 is attached to the pen 124 adjacent to
the tip button 710. The eraser portion 712 is representative of
functionality to enable ink content to be erased, such as permanent
and/or transient ink.
[0069] The pen 124 further includes internal components 714, which
are representative of components that enable various
functionalities of the pen 124. For instance, the internal
components 714 include active electronics such as logic and
processing components for controlling different operating modes of
the pen 124. In at least some implementations, the internal
components 714 are configured to transmit and receive wireless
signals using any suitable wireless protocol, such as Bluetooth,
radio-frequency identifier (RFID), and so forth. For instance, the
pen 124 can leverage the internal components 124 to transmit a
signal that indicates a current ink mode of the pen 124, such as
whether the pen 124 is in a permanent or transient ink mode.
Further, the pen 124 can leverage the internal components 124 to
transmit a signal that indicates whether ink functionality of the
pen 124 is enabled or disabled.
[0070] FIG. 8 depicts an example implementation of the pen 124 in
accordance with one or more implementations. In FIG. 8, the tip 702
is retracted into the shaft 700. For instance, a user selects
(e.g., presses) the tip button 710, which causes the tip 702 to at
least partially retract through the tip portal 704 into the nose
706 of the shaft 700. The tip portal 704 represents an opening in
the nose 706 through which the tip 702 may extend and retract.
According to various implementations, with the tip 702 retracted as
in FIG. 8, the pen 124 provides non-digital-ink input to an input
surface. For instance, contact between the nose 706 and an input
surface provides non-digital-ink input, such as for selection
input, object manipulation, and so forth.
[0071] According to various implementations, selecting the tip
button 710 while the tip 702 is retracted causes the tip 702 to
extend from the nose 706, such as depicted in FIG. 7.
[0072] FIG. 9 depicts an example implementation scenario 900 for
receiving digital ink input and non-digital-ink input in accordance
with one or more implementations. The upper portion of the scenario
900 includes the GUI 302 with the document 304 (introduced above)
displayed on the display device 110. In this particular
implementation, the GUI 302 includes a menu region 902 that
includes different selectable controls for performing various
actions, such as on the document 304. In at least some
implementations, the scenario 900 represents an extension of one or
more of the scenarios described above.
[0073] In the upper portion of the scenario 900, a user manipulates
the pen 124 to apply ink content (e.g., digital-ink) to the
document 304. For instance, contact between the tip 702 and the
display device 110 causes ink content to be added to the document
304. As referenced above, with the tip 702 extended the pen 124 is
in an ink-enabled mode such that ink is always application when the
pen 124 is placed in contact with the display device 110. In at
least some implementations, the ink content is added as permanent
ink that becomes part of the primary content 306 of the document
304. Alternatively, the ink content is added as transient ink of
the document 304. Examples of different transient ink behaviors are
discussed throughout.
[0074] Proceeding to the lower portion of the scenario 900, the
user selects the tip button 710, which causes the tip 702 to
retract into the nose 706. With the tip 702 retracted, the pen 124
is used to provide non-digital-ink input, such as touch input to
the display device 110. Retracting the tip 702 enables the pen 124
to be used for touch input such as a user would provide via a
finger. For instance, with the tip 702 retracted, placing the pen
124 (e.g., the nose 706) in contact with the display device 110
within the document 304 does not cause ink content to be applied to
the document 304. Non-digital-ink input can be leveraged for
various purposes, such as for manipulating the document 304 within
the GUI 302, selecting selectable controls from the menu region
902, selecting primary content within the document 304, and so
forth. In this particular example, the user places the nose 706 of
the pen 124 in contact with the display device 110 and drags (e.g.,
scrolls) the document 304 within the GUI 302. Notice that as the
user manipulates the document 304 with the tip 702 retracted, ink
content is not applied to the document 304.
[0075] FIG. 10 is a flow diagram that describes steps in a method
in accordance with one or more embodiments. The method, for
instance, describes an example procedure for processing ink
according to a current ink mode in accordance with one or more
embodiments.
[0076] Step 1000 detects a pen in proximity to an input surface.
The touch input device 116, for instance, detects that the pen 124
is hovered and/or in contact with the touch input device 116 with
the tip 702 extended. As referenced above, a hover operation can be
associated with a particular threshold proximity to an input
surface such that hovering the pen 124 at or within the threshold
proximity to the input surface is interpreted as a hover operation,
but placing the pen 124 farther than the threshold proximity from
the input surface is not interpreted as a hover operation.
[0077] Step 1002 ascertains a current ink mode. The ink module 118,
for example, ascertains an ink mode that is currently active on the
computing device 102. Examples of different ink modes are detailed
elsewhere herein, and include a permanent ink mode and a transient
ink mode.
[0078] In at least some implementations, a current ink mode may be
automatically selected by the ink module 118, such as based on an
application and/or document context that is currently in focus. For
instance, an application 106 may specify a default ink mode that is
to be active for the application. Further, some applications may
specify ink mode permissions that indicate allowed and disallowed
ink modes. A particular application 106, for example, may specify
that a permanent ink mode is not allowed for documents presented by
the application, such as to protect documents from being
edited.
[0079] Alternatively or additionally, a current ink mode is
user-selectable, such as in response to user input selecting an ink
mode from the ink menu 802. For instance, a user may cause a switch
from a default ink mode for an application to a different ink mode.
The user, for example, can select the pen mode button 708 to cause
the pen 124 and/or the ink module 118 to switch between different
ink modes.
[0080] In at least some implementations, ascertaining a current ink
mode includes ascertaining whether the pen is in an ink-enabled
mode or an ink-disabled mode, such as ascertaining whether the tip
702 of the pen 124 is extended or retracted.
[0081] Step 1004 causes a visual affordance identifying the current
ink mode to be displayed. Examples of such an affordance include a
hover target, a visual included as part of an ink flag, and so
forth. Examples of different visual affordances are detailed
throughout this description and the accompanying drawings.
[0082] Step 1006 processes ink content applied to the input surface
according to the current ink mode. The ink content, for instance,
is processed as permanent ink, transient ink, and so forth. For
example, if a permanent ink mode is active, the ink content is
saved as permanent ink, such as part of a primary content layer of
a document. If the transient ink mode is active, the ink content is
propagated to a transient ink layer of a document. Examples of
different mode-specific ink behaviors and actions are detailed
elsewhere herein.
[0083] FIG. 11 is a flow diagram that describes steps in a method
in accordance with one or more embodiments. The method, for
instance, describes an example procedure for a transient ink timer
in accordance with one or more implementations. In at least some
implementations, the method represents an extension of the method
described above with reference to FIG. 10.
[0084] Step 1100 receives ink content applied to a document via
input from a pen to an input surface while in a transient ink mode.
The ink module 118, for example, processes ink content received
from the pen 124 to the display device 110 as transient ink.
[0085] Step 1102 detects that the pen is removed from proximity to
the input surface. For instance, the touch input device 116 detects
that the pen 124 is not in contact with and is not hovering over a
surface of the touch input device 116, e.g., the display device
110.
[0086] Step 1104 initiates a timer. The timer, for example, is
initiated in response to detecting that the pen is removed from
proximity to the input surface. In at least some implementations, a
visual representation of the timer is presented. For instance, the
visual representation provides a visual cue that the timer is
elapsing, and indicates a relative amount (e.g., percentage) of the
timer that has elapsed. The visual representation, for example, is
animated to visually convey that the timer is elapsing. One example
of a visual representation of a timer is discussed above with
reference to FIGS. 4 and 5.
[0087] Step 1106 ascertains whether the pen is detected at the
input surface before the timer expires. For instance, the ink
module 118 ascertains whether the pen 124 is detected is contact
with and/or hovering over the touch input device 116 prior to
expiry of the timer. If the pen is detected at the input surface
prior to expiry of the timer ("Yes"), step 1108 resets the timer
and the process returns to step 1100.
[0088] If the pen is not detected at the input surface prior to
expiry of the timer ("No"), step 1110 removes the ink content from
the document and propagates the ink content to a transient layer
for the document. For instance, response to expiry of the timer,
the transient ink content is removed from display and propagated to
a transient data layer for the document that is separate from a
primary content layer of the document. In at least some
implementations, a new transient ink layer is created for the
document, and the transient ink content is propagated to the new
transient ink layer. Alternatively or additionally, the transient
ink content is propagated to an existing transient ink layer. For
example, the transient ink layer may represent an accumulation of
transient ink provided by a user over multiple different
interactions with the document and over a period of time.
[0089] As discussed above, the transient ink layer may be
associated with a particular user, e.g., a user that applies the
transient ink content to the document. Thus, the transient ink is
linked to the particular user and may subsequently be accessed by
the user.
[0090] FIG. 12 is a flow diagram that describes steps in a method
in accordance with one or more embodiments. The method, for
instance, describes an example procedure for processing pen input
based on a pen mode in accordance with one or more implementations.
In at least some implementations, the method represents an
extension of one or more of the methods described above.
[0091] Step 1200 detects pen input from a pen to an input surface.
The ink module 118, for instance, detects that the pen 124 is in
contact with the display device 110 provides input to the display
device 110.
[0092] Step 1202 ascertains whether the pen is in an ink-enabled
mode or an ink-disabled mode. The ink module 118, for example,
ascertains whether the pen 124 is in an ink-enabled or ink-disabled
mode. In at least some implementations, the pen 124 can transmit a
wireless signal that identifies whether the pen 124 is in an
ink-enabled or ink-disabled mode. Alternatively or additionally,
the ink module 118 can detect a state of the tip 702 and can
ascertain whether the pen 124 is in an ink-enabled or ink-disabled
mode based on the state. For instance, if the ink module 118
detects that the tip 702 is extended, the ink module 118 ascertains
that the pen 124 is in an ink-enabled mode. However, if the ink
module 118 detects that the tip 702 is retracted, the ink module
118 ascertains that the pen 124 is in an ink-disabled mode.
[0093] In at least some implementations, the ink module 118 detects
whether the tip 702 is extended or retracted, and enables or
disables ink functionality of the client device 102 based on
whether the tip 702 is extended or retracted.
[0094] If the pen is in an ink-enabled mode ("Ink-Enabled"), step
1204 processes the pen input as digital ink input. For instance,
the pen input is converted to ink content that is displayed on the
display device 110. According to various implementations, the ink
content may be permanent ink or transient ink. As referenced above,
the pen 124 will apply ink whenever the pen is in an ink-enabled
mode.
[0095] If the pen is in an ink-disabled mode ("Ink-Disabled"), step
1206 processes the pen input as non-digital-ink input. Generally,
non-digital-ink input does not cause ink content to be applied. For
instance, non-digital-ink input is used for other purposes than
applying ink content, such as object selection and manipulation,
document navigation, and so forth.
[0096] FIG. 13 is a flow diagram that describes steps in a method
in accordance with one or more embodiments. The method, for
instance, describes an example procedure for processing pen input
based on an ink mode in accordance with one or more
implementations. In at least some implementations, the method
represents an extension of one or more of the methods described
above.
[0097] Step 1300 receives ink input to an input surface from a pen.
The ink module 118, for instance, detects that ink input is
provided by the pen 124. In at least some implementations, the ink
module 118 detects that the ink input is provided when the pen 124
is in an ink-enabled mode.
[0098] Step 1302 ascertains whether the pen is in a permanent ink
mode or a transient ink mode. For instance, the pen 124
communicates a signal to the client device 102 indicating whether
the pen 124 is in a permanent ink mode or a transient ink mode. The
signal, for instance, is communicated as a wireless signal from the
pen 124. Alternatively or additionally, the signal is communicated
via contact between the pen 124 and an input surface, e.g., the
display device 110. For instance, the signal can be electrically
conducted across the tip 702 to the display device 110 and to
internal components of the client device 102 to convey information
identifying a current mode of the pen 124.
[0099] If the pen is in a permanent ink mode ("Permanent"), step
1304 processes the ink input as permanent ink. For instance, the
ink input is displayed and/or added to a permanent ink layer.
[0100] If the pen is in a transient ink mode ("Transient"), step
1306 processes the ink input as transient ink. The ink input, for
example, is added to a transient ink layer that may be subsequent
accessed. Examples of different permanent and transient ink
behaviors are detailed throughout.
[0101] FIG. 14 is a flow diagram that describes steps in a method
in accordance with one or more embodiments. The method, for
instance, describes an example procedure for erasing digital ink in
accordance with one or more implementations. In at least some
implementations, the method represents an extension of one or more
of the methods described above.
[0102] Step 1400 receives an indication of contact between an
eraser portion of a pen and digital ink displayed on an input
surface. The ink module 118, for instance, detects that the eraser
portion 712 of the pen 124 is in contact with digital ink displayed
on the display device 110.
[0103] Step 1402 causes the digital ink to be removed from the
input surface in response to the indication. The ink module 118,
for example, deletes the digital ink. For instance, the digital ink
is removed from display and data describing the digital ink is
deleted.
[0104] Although discussed separately, it is to be appreciated that
the implementations, scenarios, and procedures described above can
be combined and implemented together in various ways. For instance,
the implementations, scenarios, and procedures describe different
functionalities of single integrated inking platform, such as
implemented by the ink module 118.
[0105] Having described some example implementation scenarios and
procedures for pen input modes for digital ink, consider now a
discussion of an example system and device in accordance with one
or more embodiments.
[0106] Example System and Device
[0107] FIG. 15 illustrates an example system generally at 1500 that
includes an example computing device 1502 that is representative of
one or more computing systems and/or devices that may implement
various techniques described herein. For example, the client device
102 discussed above with reference to FIG. 1 can be embodied as the
computing device 1502. The computing device 1502 may be, for
example, a server of a service provider, a device associated with
the client (e.g., a client device), an on-chip system, and/or any
other suitable computing device or computing system.
[0108] The example computing device 1502 as illustrated includes a
processing system 1504, one or more computer-readable media 1506,
and one or more Input/Output (I/O) Interfaces 1508 that are
communicatively coupled, one to another. Although not shown, the
computing device 1502 may further include a system bus or other
data and command transfer system that couples the various
components, one to another. A system bus can include any one or
combination of different bus structures, such as a memory bus or
memory controller, a peripheral bus, a universal serial bus, and/or
a processor or local bus that utilizes any of a variety of bus
architectures. A variety of other examples are also contemplated,
such as control and data lines.
[0109] The processing system 1504 is representative of
functionality to perform one or more operations using hardware.
Accordingly, the processing system 1504 is illustrated as including
hardware element 1510 that may be configured as processors,
functional blocks, and so forth. This may include implementation in
hardware as an application specific integrated circuit or other
logic device formed using one or more semiconductors. The hardware
elements 1510 are not limited by the materials from which they are
formed or the processing mechanisms employed therein. For example,
processors may be comprised of semiconductor(s) and/or transistors
(e.g., electronic integrated circuits (ICs)). In such a context,
processor-executable instructions may be electronically-executable
instructions.
[0110] The computer-readable media 1506 is illustrated as including
memory/storage 1512. The memory/storage 1512 represents
memory/storage capacity associated with one or more
computer-readable media. The memory/storage 1512 may include
volatile media (such as random access memory (RAM)) and/or
nonvolatile media (such as read only memory (ROM), Flash memory,
optical disks, magnetic disks, and so forth). The memory/storage
1512 may include fixed media (e.g., RAM, ROM, a fixed hard drive,
and so on) as well as removable media (e.g., Flash memory, a
removable hard drive, an optical disc, and so forth). The
computer-readable media 1506 may be configured in a variety of
other ways as further described below.
[0111] Input/output interface(s) 1508 are representative of
functionality to allow a user to enter commands and information to
computing device 1502, and also allow information to be presented
to the user and/or other components or devices using various
input/output devices. Examples of input devices include a keyboard,
a cursor control device (e.g., a mouse), a microphone (e.g., for
voice recognition and/or spoken input), a scanner, touch
functionality (e.g., capacitive or other sensors that are
configured to detect physical touch), a camera (e.g., which may
employ visible or non-visible wavelengths such as infrared
frequencies to detect movement that does not involve touch as
gestures), and so forth. Examples of output devices include a
display device (e.g., a monitor or projector), speakers, a printer,
a network card, tactile-response device, and so forth. Thus, the
computing device 1502 may be configured in a variety of ways as
further described below to support user interaction.
[0112] Various techniques may be described herein in the general
context of software, hardware elements, or program modules.
Generally, such modules include routines, programs, objects,
elements, components, data structures, and so forth that perform
particular tasks or implement particular abstract data types. The
terms "module," "functionality," "entity," and "component" as used
herein generally represent software, firmware, hardware, or a
combination thereof. The features of the techniques described
herein are platform-independent, meaning that the techniques may be
implemented on a variety of commercial computing platforms having a
variety of processors.
[0113] An implementation of the described modules and techniques
may be stored on or transmitted across some form of
computer-readable media. The computer-readable media may include a
variety of media that may be accessed by the computing device 1502.
By way of example, and not limitation, computer-readable media may
include "computer-readable storage media" and "computer-readable
signal media."
[0114] "Computer-readable storage media" may refer to media and/or
devices that enable persistent storage of information in contrast
to mere signal transmission, carrier waves, or signals per se.
Computer-readable storage media do not include signals per se. The
computer-readable storage media includes hardware such as volatile
and non-volatile, removable and non-removable media and/or storage
devices implemented in a method or technology suitable for storage
of information such as computer readable instructions, data
structures, program modules, logic elements/circuits, or other
data. Examples of computer-readable storage media may include, but
are not limited to, RAM, ROM, EEPROM, flash memory or other memory
technology, CD-ROM, digital versatile disks (DVD) or other optical
storage, hard disks, magnetic cassettes, magnetic tape, magnetic
disk storage or other magnetic storage devices, or other storage
device, tangible media, or article of manufacture suitable to store
the desired information and which may be accessed by a
computer.
[0115] "Computer-readable signal media" may refer to a
signal-bearing medium that is configured to transmit instructions
to the hardware of the computing device 1502, such as via a
network. Signal media typically may embody computer readable
instructions, data structures, program modules, or other data in a
modulated data signal, such as carrier waves, data signals, or
other transport mechanism. Signal media also include any
information delivery media. The term "modulated data signal" means
a signal that has one or more of its characteristics set or changed
in such a manner as to encode information in the signal. By way of
example, and not limitation, communication media include wired
media such as a wired network or direct-wired connection, and
wireless media such as acoustic, radio frequency (RF), infrared,
and other wireless media.
[0116] As previously described, hardware elements 1510 and
computer-readable media 1506 are representative of instructions,
modules, programmable device logic and/or fixed device logic
implemented in a hardware form that may be employed in some
embodiments to implement at least some aspects of the techniques
described herein. Hardware elements may include components of an
integrated circuit or on-chip system, an application-specific
integrated circuit (ASIC), a field-programmable gate array (FPGA),
a complex programmable logic device (CPLD), and other
implementations in silicon or other hardware devices. In this
context, a hardware element may operate as a processing device that
performs program tasks defined by instructions, modules, and/or
logic embodied by the hardware element as well as a hardware device
utilized to store instructions for execution, e.g., the
computer-readable storage media described previously.
[0117] Combinations of the foregoing may also be employed to
implement various techniques and modules described herein.
Accordingly, software, hardware, or program modules and other
program modules may be implemented as one or more instructions
and/or logic embodied on some form of computer-readable storage
media and/or by one or more hardware elements 1510. The computing
device 1502 may be configured to implement particular instructions
and/or functions corresponding to the software and/or hardware
modules. Accordingly, implementation of modules that are executable
by the computing device 1502 as software may be achieved at least
partially in hardware, e.g., through use of computer-readable
storage media and/or hardware elements 1510 of the processing
system. The instructions and/or functions may be
executable/operable by one or more articles of manufacture (for
example, one or more computing devices 1502 and/or processing
systems 1504) to implement techniques, modules, and examples
described herein.
[0118] As further illustrated in FIG. 15, the example system 1500
enables ubiquitous environments for a seamless user experience when
running applications on a personal computer (PC), a television
device, and/or a mobile device. Services and applications run
substantially similar in all three environments for a common user
experience when transitioning from one device to the next while
utilizing an application, playing a video game, watching a video,
and so on.
[0119] In the example system 1500, multiple devices are
interconnected through a central computing device. The central
computing device may be local to the multiple devices or may be
located remotely from the multiple devices. In one embodiment, the
central computing device may be a cloud of one or more server
computers that are connected to the multiple devices through a
network, the Internet, or other data communication link.
[0120] In one embodiment, this interconnection architecture enables
functionality to be delivered across multiple devices to provide a
common and seamless experience to a user of the multiple devices.
Each of the multiple devices may have different physical
requirements and capabilities, and the central computing device
uses a platform to enable the delivery of an experience to the
device that is both tailored to the device and yet common to all
devices. In one embodiment, a class of target devices is created
and experiences are tailored to the generic class of devices. A
class of devices may be defined by physical features, types of
usage, or other common characteristics of the devices.
[0121] In various implementations, the computing device 1502 may
assume a variety of different configurations, such as for computer
1514, mobile 1516, and television 1518 uses. Each of these
configurations includes devices that may have generally different
constructs and capabilities, and thus the computing device 1502 may
be configured according to one or more of the different device
classes. For instance, the computing device 1502 may be implemented
as the computer 1514 class of a device that includes a personal
computer, desktop computer, a multi-screen computer, laptop
computer, netbook, and so on.
[0122] The computing device 1502 may also be implemented as the
mobile 1516 class of device that includes mobile devices, such as a
mobile phone, portable music player, portable gaming device, a
tablet computer, a wearable device, a multi-screen computer, and so
on. The computing device 1502 may also be implemented as the
television 1518 class of device that includes devices having or
connected to generally larger screens in casual viewing
environments. These devices include televisions, set-top boxes,
gaming consoles, and so on.
[0123] The techniques described herein may be supported by these
various configurations of the computing device 1502 and are not
limited to the specific examples of the techniques described
herein. For example, functionalities discussed with reference to
the client device 102 and/or ink module 118 may be implemented all
or in part through use of a distributed system, such as over a
"cloud" 1520 via a platform 1522 as described below.
[0124] The cloud 1520 includes and/or is representative of a
platform 1522 for resources 1524. The platform 1522 abstracts
underlying functionality of hardware (e.g., servers) and software
resources of the cloud 1520. The resources 1524 may include
applications and/or data that can be utilized while computer
processing is executed on servers that are remote from the
computing device 1502. Resources 1524 can also include services
provided over the Internet and/or through a subscriber network,
such as a cellular or Wi-Fi network.
[0125] The platform 1522 may abstract resources and functions to
connect the computing device 1502 with other computing devices. The
platform 1522 may also serve to abstract scaling of resources to
provide a corresponding level of scale to encountered demand for
the resources 1524 that are implemented via the platform 1522.
Accordingly, in an interconnected device embodiment, implementation
of functionality described herein may be distributed throughout the
system 1500. For example, the functionality may be implemented in
part on the computing device 1502 as well as via the platform 1522
that abstracts the functionality of the cloud 1520.
[0126] Discussed herein are a number of methods that may be
implemented to perform techniques discussed herein. Aspects of the
methods may be implemented in hardware, firmware, or software, or a
combination thereof The methods are shown as a set of steps that
specify operations performed by one or more devices and are not
necessarily limited to the orders shown for performing the
operations by the respective blocks. Further, an operation shown
with respect to a particular method may be combined and/or
interchanged with an operation of a different method in accordance
with one or more implementations. Aspects of the methods can be
implemented via interaction between various entities discussed
above with reference to the environment 100.
[0127] Implementations discussed herein include:
EXAMPLE 1
[0128] A pen apparatus including: a shaft; a tip portion that is
retractably engaged with the shaft such that the tip portion is
extendable from the shaft and retractable at least partially into
the shaft; and a tip button that is selectable to extend and
retract the tip portion relative to the shaft, the pen apparatus
configured to apply digital ink to an input surface of a computing
device in response to interaction of the pen with the input surface
with the tip portion extended from the shaft, and configured to
apply non-digital-ink input to the input surface of the computing
device in response to interaction of the pen with the input surface
with the tip portion at least partially retracted into the
shaft.
EXAMPLE 2
[0129] A pen apparatus as described in example 1, further including
an active component configured to interact with the input surface
to cause digital ink to be applied to the input surface in response
to interaction of the pen with the input surface with the tip
portion extended from the shaft.
EXAMPLE 3
[0130] A pen apparatus as described in one or more of examples 1 or
2, further including an active component configured to interact
with the input surface to cause digital ink to be applied to the
input surface in response to interaction of the pen with the input
surface with the tip portion at least partially extended from the
shaft, and wherein the active component is further configured to
interact with the input surface to cause non-digital ink input to
be applied to the input surface in response to interaction of the
pen with the input surface with the tip portion at least partially
retracted into the shaft.
EXAMPLE 4
[0131] A pen apparatus as described in one or more of examples 1-3,
wherein the non-digital ink input includes touch input to the input
surface such that digital ink is not applied to the input surface
in response to interaction of the pen with the input surface with
the tip portion at least partially retracted into the shaft.
EXAMPLE 5
[0132] A pen apparatus as described in one or more of examples 1-4,
further including a pen mode button positioned on the shaft, the
pen mode button being selectable to cause the pen apparatus to
apply digital ink to the input surface in different ink modes and
in response to interaction of the pen with the input surface with
the tip portion at least partially extended from the shaft.
EXAMPLE 6
[0133] A pen apparatus as described in one or more of examples 1-5,
further including a pen mode button positioned on the shaft, the
pen mode button being selectable to cause the pen apparatus to
switch between applying digital ink in a permanent ink mode and
applying digital ink in a transient ink mode.
EXAMPLE 7
[0134] A pen apparatus as described in one or more of examples 1-6,
wherein retraction of the tip portion causes the tip portion to be
non-detectable to the input surface.
EXAMPLE 8
[0135] A pen apparatus as described in one or more of examples 1-7,
wherein the pen apparatus is configured such that retraction of the
tip portion disables one or more of ink functionality of the pen
apparatus or ink functionality of the input surface.
EXAMPLE 9
[0136] A pen apparatus as described in one or more of examples 1-8,
wherein the shaft includes an eraser portion that is configured to
erase digital ink applied to the input surface.
EXAMPLE 10
[0137] A system for processing digital ink input and
non-digital-ink input, the system including: an input surface; one
or more processors; and one or more computer-readable storage media
storing computer-executable instructions that, responsive to
execution by the one or more processors, cause the system to
perform operations including: detecting pen input from a pen to the
input surface; processing the pen input as digital ink input in
response to ascertaining that the pen is in an ink-enabled mode;
and processing the pen input as non-digital-ink input in response
to ascertaining that the pen is in an ink-disabled mode.
EXAMPLE 11
[0138] A system as described in example 10, wherein the
instructions further include ascertaining whether the pen is in the
ink-enabled mode or the ink-disabled mode by determining whether a
tip portion of the pen is in an extended or retracted position.
EXAMPLE 12
[0139] A system as described in one or more of examples 10 or 11,
wherein the instructions further include determining that a tip
portion of the pen is in a retracted position, and in response
processing the pen input to the input surface as non-digital-ink
input.
EXAMPLE 13
[0140] A system as described in one or more of examples 10-12,
wherein said processing the pen input as non-digital-ink input
includes processing the pen input such that digital ink is not
applied to the input surface in response to contact between the pen
and the input surface.
EXAMPLE 14
[0141] A system as described in one or more of examples 10-13,
wherein the pen input includes pen input to a digital document, and
wherein the operations further include: ascertaining that the pen
is in a transient ink mode, wherein processing the pen input as
digital-ink input includes causing the digital ink input to be
propagated to a transient ink layer for the digital document.
EXAMPLE 15
[0142] A system as described in one or more of examples 10-14,
wherein the operations further include: receiving an indication of
contact between an eraser portion of the pen and digital ink
displayed on the input surface; and causing the digital ink to be
removed from the input surface in response to the indication.
EXAMPLE 16
[0143] A computer-implemented method for processing permanent ink
input and transient ink input, the method including: receiving by a
computing system ink input to an input surface from a pen
apparatus; processing by the computing system the ink input as
transient ink in response to ascertaining that the pen apparatus is
in a transient ink mode; and processing by the computing system the
ink input as permanent ink in response to ascertaining that the pen
apparatus is in a permanent ink mode.
EXAMPLE 17
[0144] A computer-implemented method as described in example 16,
further including ascertaining whether the pen apparatus is in the
transient ink mode or the permanent ink mode based on a signal from
the pen apparatus indicating a current active ink mode for the pen
apparatus.
EXAMPLE 18
[0145] A computer-implemented method as described in one or more of
examples 16 or 17, wherein the ink input includes ink input to a
digital document, and wherein said processing the ink input as
transient ink includes propagating the ink input to a transient
layer for the digital document.
EXAMPLE 19
[0146] A computer-implemented method as described in one or more of
examples 16-18, wherein the ink input includes ink input to a
digital document, wherein said processing the ink input as
transient ink includes propagating the ink input to a transient ink
layer for the digital document, and wherein the method further
includes enabling the transient ink layer to be accessible
separately from primary content of the digital document.
EXAMPLE 20
[0147] A computer-implemented method as described in one or more of
examples 16-19, further including: detecting further pen input to
the input surface; ascertaining that the pen apparatus is in an
ink-disabled mode; and processing further pen input to the input
surface as non-digital-ink input in response to ascertaining that
the pen apparatus is in an ink-disabled mode.
CONCLUSION
[0148] Techniques for pen input modes for digital ink are
described. Although embodiments are described in language specific
to structural features and/or methodological acts, it is to be
understood that the embodiments defined in the appended claims are
not necessarily limited to the specific features or acts described.
Rather, the specific features and acts are disclosed as example
forms of implementing the claimed embodiments.
* * * * *