The present application relates to displaying slide presentations in a user interface (UI) of a computing device, for example, a handheld wireless communication device.
Electronic slide presentations are a common way to present information to one or more viewers. Common slide presentation software and formats include Microsoft® PowerPoint, Apple® iWork Keynote and OpenOffice.org's Impress. Slide presentation software allows users to create multimedia documents incorporating text, images and audio and/or visual clips for presentation in one or more slides. Often the documents are presented in a slideshow, displaying the slides sequentially. The slides may be displayed to a display screen of a computing device (e.g. personal computer) or remotely via a projector to a remote screen.
People on the go rely on handheld communication devices such as wireless mobile devices (cellular phones, PDAs, etc.) among others to keep in contact with others, exchanging electronic messages via email, SMS, IM, etc. Attached to or otherwise accompanying these messages are documents that the handheld user would like to view on the user's handheld communication device. The user desires a viewing experience that is similar to the experience of viewing the document on a personal computer where typically the personal computer has the appropriate software and resources for displaying the document.
Many handheld communication devices do not include full or even reduced versions of slide presentation software. Due to a variety of factors such as constrained storage and/or processor capabilities or expensive or slower communication bandwidth, it may be preferred to process slide presentation documents on another computing device (e.g. a server on a network) capable of coupling to the handheld communication device).
One solution to presenting slide presentations is to distil the presentation document to determine the text information and to transmit this information to the handheld communication device for displaying. However, this experience falls well-short of the user's desire to simulate a personal computer viewing experience and further may result in a loss of significant information contained in the slide presentation in images, graphs, etc.
A solution that addresses one or more of these issues is therefore desired.
In order that the subject matter may be readily understood, embodiments are illustrated by way of examples in the accompanying drawings, in which:
Displaying slide presentation documents in a user interface (UI) on a display screen is enhanced by providing multiple display modes in a slide presentation viewer. A text mode shows text information distilled from the slides. A preview mode shows thumbnail slide images rendered from the slides and a mixed mode shows text information and thumbnail slide images together. The slide presentation viewer further provides a slide show to display the slide images in full screen and an interface (e.g. menu) for selecting among the modes and invoking the slide show. For handheld wireless communication devices in particular, a network server may process slide presentation documents to generate the text information and slide images for communicating to the wireless devices having appropriate slide presentation viewers. The network server may be an attachment server providing services for email attachments and the slide presentation viewers may be attachment viewers for email.
View 100 of
A divider 108 divides the individual slides and may indicate the slide number and total number of slides of the document currently being displayed. Between the dividers 108, each respective slide is displayed in a thumbnail preview format 110 and a text format 114. Thumbnail preview format 110 presents a reduced-size slide image 112 of the slide as it would appear during a slide show and text format 114 shows the text information 116 distilled from the respective slide. The text information 116 is preferably shown in the manner (i.e. font, colour, style and other properties) that it appears in the slide. Font size is typically reduced from the slide size but, preferably, relative sizing is preserved. If the text information 116 appears in a bulleted or other list in the slide, such may be preserved and presented in the text format 114 portion of the mixed mode view 100.
Slides in a mixed mode view 100 may be navigated by a user to scroll about or between slides such as by moving a focus (e.g. cursor 140) about the view 100 using an input device (not shown). Such an input device may comprise a mouse or other pointing device, trackwheel, track ball, and/or key(s). Moving to bring other slides into view 100 may invoke the viewer GUI to request additional slide information (text information and/or slide images) from a network device as describe in further detail below.
View 100 further illustrates a menu 118 that may be invoked by a user to control various functions of the GUI. Pertinent functions include switching display modes such as to View Slides 120 (highlighted by a focus in the menu 118), View Text 122 or to initiate a Slide Show 124. Additional menu choices include More 128 for requesting more slide information for additional slides as will be described below and Options 130 for setting user preferences for the slide presentation viewer GUI. One user option may be setting a default mode for displaying slide presentations. Each time the slide presentation GUI is initially invoked to display a slide presentation document, it may default to a specific display mode such as mixed mode. However, a user may prefer the preview mode showing slide images as a default. Options may also enable a user to set a thumbnail size (e.g. 50% of full size) as a preferred image size.
View 200 of
View 300 of
Text may be searched, selected and copied. Copied text may be pasted into other editable documents (not shown).
View 400 of
Email 502 processed by server 508 and 510 is transmitted via public IP network 504 to a wireless gateway server 512. From there the email 502 is sent to the device 518 via a wireless carrier network 514 to which the device 518 subscribes or has rights for communications. Persons of ordinary skill in the art will understand the email communication to the device 518 may be in accordance with various different protocols (e.g. push or pull-based) and that details of these delivery mechanisms are not material to the slide presentation viewing methods described herein.
In the present embodiment, servers 508, 510 process the email 502 such that the attachment 503 is not delivered to the device 518 as part of the initial email 502 communication. Rather a link to the attachment 503 is sent and an email application 566 and attachment viewer 570 at the device 518 cooperate to retrieve the attachment via server 508 and 510 as described further.
Handheld wireless communication device 518 is configured (e.g. via software) to comprise various components including an operating system 562, a communications system 564 for wireless communication, and applications 566, 574 such as an email application 566. Email application 566 may comprise or otherwise cooperate with various attachment viewers 568 for retrieving and viewing attachments. One such attachment viewer 568 is slide presentation viewer 570 for viewing in multiple modes as described with reference to
Attachment server 510 is configured (e.g. via software) to comprise various components including a operating system 532, communications system 534, slide presentation attachment handler 536 as well as other attachment handlers for other attachment types. Slide presentation attachment handler 536 comprises or otherwise cooperates with a text distiller 538 and slide renderer 540. Text distiller 538 is configured to parse or otherwise review slide presentation documents to extract text information for delivery to handheld devices. Slider rendered 540 defines rasterized slide images (e.g. in a jpeg, tiff or other image format) from the slide presentation document for each slide for similar delivery.
The attachment server 510 and/or wireless communication device server 508 and handheld device 518 communicate such that when a user invokes the attachment viewer 570 to view the content of the slide presentation 503, the handheld device 518 transmits one or more requests 550 for slide information, (i.e. the text information (e.g. 116) and slide images (e.g. 112)) and receives same 552 in response. Requests and responses 550 and 552 are illustrated notionally as communicating directly between the handheld device store 560 and attachment server store 530 but it is understood that communications are through network 500 and in particular wireless communication server 508.
Due in part at least to communication protocol constraints on a message's size, a single message may be insufficient to communicate all of the text information and/or all of the slide images for a slide presentation document. Thus, the device 518 may make multiple requests either automatically or in response to direct or indirect user actions. For example, as described above, during a slide show, the slide presentation viewer 570 may automatically make requests for slide information in the background while a user is viewing the slide show (view 400). In the various viewing modes (view 100, view 200 and view 300), as the user navigates the screens, the viewer 570 may anticipate the need for more slide information as a user scrolls toward the end of the slides present on the handheld device. Alternatively, the user may invoke a menu choice (e.g. More 128) for additional slide information, as applicable, to pre-load slides. Should a user attempt to scroll below the slides available on the device, placeholders for the slides being retrieved may be shown or navigation halted and a message displayed that more data is being retrieved (neither is illustrated).
Requests for slide information from the handheld device 518 may indicate whether text information or slide images are to be returned. For example, when the viewer 570 is invoked for a document, an initial request may be for text information only. The response to the device 518 may include a flag or other data that slide images may be delivered, if desired. Accordingly the attachment handler determines that slide images may be rendered to be able to inform the device 518. The viewer 570 may then issue a request for slide images.
Preferably, a request (e.g. for slide information) includes a flag or other data indicating a screen size for the handheld device or use when rendering slide images. This may be a specific pixel size (e.g. 340×280), a code flag (1=340×280 pixels) or a device type, among other types, where the attachment server 510 or wireless communication device server 508 determines the screen size from the code flag or device type. Other display capabilities may be indicated to the attachment server 510 as well or alternatively. For example, the colour capabilities of the display screen (e.g. B/W only or number of colours), reflective type, etc. may be indicated to help render slide images. The attachment server may then adjust the colour palette of the rendered slide presentation for viewing on that device.
Slide presentation viewer 570 provides the GUI described above to present the slides in the various modes and provides a menu or other command interface for user input to invoke the various modes and control the viewer slide presentation. Viewer 570 may further comprise or cooperate with a thumbnail generator (not shown) for the slide images it receives to size them for the preview and mixed modes.
Though not illustrated in
To accommodate various slide presentation formats, multiple slide presentation attachment handlers may be used or multiple distillers and renderers may be used for the various formats. Persons of ordinary skill in the art will appreciate that such distillers and renderers will be configured in accordance with the particular formats of the slide presentation documents they can handle.
Though the embodiment shown and described is with respect to email attachments, slide presentations may be communicated to the device 518 as attachments to other electronic communications (e.g. IM) and the attachment viewer 570 be configured to work with a respective device application for such communications. Device 518 may be configured with a retrieval application to retrieve documents from a remote store other than an email store. For example a remote document repository or via LDAP. Slide presentation viewer 570 may be adapted to work with such a retrieval application. Similarly slide presentation attachment handler 536 maybe configured to work with a network server for such a client application.
Though described with reference to an enterprise email server 506 and an enterprise-based wireless communication device server 508 (which are typically coupled in a private network (not shown) behind a firewall(s) (not shown)), other configurations for transmitting electronic communications to a wireless device in a wireless network, particularly a non-enterprise scenario, will be well-known to persons of ordinary skill in the art.
Device 518, or another type of computing device for which a slide presentation viewer as described is implemented, may be capable of communicating in a wired network or other high bandwidth network. Multiple requests/responses for slide information as described may not be necessary in such an network communication system.
Handheld device 518 will normally incorporate a communication subsystem 611, which includes a receiver 612, a transmitter 614, and associated components, such as one or more (preferably embedded or internal) antenna elements 616 and 618, local oscillators (LOs) 613, and a processing module such as a digital signal processor (DSP) 620. As will be apparent to those skilled in field of communications, particular design of communication subsystem 611 depends on the communication network in which handheld device 518 is intended to operate.
Handheld device 518 may send and receive communication signals over the network after required network registration or activation procedures have been completed. Signals received by antenna 616 through the network are input to receiver 612, which may perform such common receiver functions as signal amplification, frequency down conversion, filtering, channel selection, and analog-to-digital (A/D) conversion. A/D conversion of a received signal allows more complex communication functions such as demodulation and decoding to be performed in DSP 620. In a similar manner, signals to be transmitted are processed, including modulation and encoding, for example, by DSP 620. These DSP-processed signals are input to transmitter 614 for digital-to-analog (D/A) conversion, frequency up conversion, filtering, amplification and transmission over communication network via antenna 618. DSP 620 not only processes communication signals, but also provides for receiver and transmitter control. For example, the gains applied to communication signals in receiver 612 and transmitter 614 may be adaptively controlled through automatic gain control algorithms implemented in DSP 620.
Network access is associated with a subscriber or user of handheld device 518, and therefore handheld device 518 comprises a memory module 662, memory module card or a Removable User Identity Module (R-UIM), to be inserted in or connected to an interface 664 in order to operate in the network. Alternatively, memory module 662 may be a non-volatile memory that is programmed with configuration data by a service provider so that mobile station 518 may operate in the network. Since handheld device 518 is a mobile battery-powered device, it also includes a battery interface 654 for receiving one or more rechargeable batteries 656. Such a battery 656 provides electrical power to most if not all electrical circuitry in handheld device 518, and battery interface 654 provides for a mechanical and electrical connection for it. The battery interface 654 is coupled to a regulator (not shown in
Handheld device 518 includes a microprocessor 638 that controls overall operation of mobile station 518. Communication functions, including at least data and voice communications, are performed through communication subsystem 611. Microprocessor 638 also interacts with additional device subsystems such as a display 622, a flash memory 624, a random access memory (RAM) 626, auxiliary input/output (I/O) subsystems 628, a serial port 630, a keyboard 632, a speaker 634, a microphone 636, a short-range communications subsystem 640, and any other device subsystems generally designated at 642. Some of the subsystems shown in
Microprocessor 638, in addition to its operating system functions, preferably enables execution of software applications on handheld device 518. A predetermined set of applications that control basic device operations, including at least data and voice communication applications, will normally be installed on handheld device 518 during its manufacture. A preferred application that may be loaded onto handheld device 518 may be a personal information manager (PIM) application having the ability to organize and manage data items relating to a user such as, but not limited to, e-mail, calendar events, voice mails, appointments, and task items. Naturally, one or more memory stores are available on handheld device 518 and memory module 662 to facilitate storage of PIM data items and other information.
The PIM application preferably has the ability to send and receive data items via the wireless network. In a preferred embodiment, PIM data items are seamlessly integrated, synchronized, and updated via the wireless network, with the mobile station user's corresponding data items stored and/or associated with a host computer system thereby creating a mirrored host computer on handheld device 518 with respect to such items. This is especially advantageous where the host computer system is the mobile station user's office or enterprise computer system. Additional applications may also be loaded onto handheld device 518 through network, an auxiliary I/O subsystem 628, serial port 630, short-range communications subsystem 640, or any other suitable subsystem 642, and installed by a user in RAM 626 or preferably a non-volatile store (not shown) for execution by microprocessor 638. Such flexibility in application installation increases the functionality of handheld device 518 and may provide enhanced on-device functions, communication-related functions, or both. For example, secure communication applications may enable electronic commerce functions and other such financial transactions to be performed using handheld device 518.
In a data communication mode, a received signal such as a text message, an e-mail message, or web page download will be processed by communication subsystem 611 and input to microprocessor 638. Microprocessor 638 will preferably further process the signal for output to display 622 or alternatively to auxiliary I/O device 628. A user of handheld device 518 may also compose data items, such as e-mail messages, for example, using keyboard 632 in conjunction with display 622 and possibly auxiliary I/O device 628. Keyboard 632 is preferably a complete alphanumeric keyboard and/or telephone-type keypad. These composed items may be transmitted over a communication network through communication subsystem 611.
For voice communications, the overall operation of handheld device 518 is substantially similar, except that the received signals would be output to speaker 634 and signals for transmission would be generated by microphone 636. Alternative voice or audio I/O subsystems, such as a voice message recording subsystem, may also be implemented. Although voice or audio signal output is preferably accomplished primarily through speaker 634, display 622 may also be used to provide an indication of the identity of a calling party, duration of a voice call, or other voice call related information, as some examples.
Serial port 630 in
Short-range communications subsystem 640 is an additional optional component that provides for communication between handheld device 518 and different systems or devices, which need not necessarily be similar devices. For example, subsystem 640 may include an infrared device and associated circuits and components, or a Bluetooth™ communication module to provide for communication with similarly enabled systems and devices. Bluetooth™ is a registered trademark of Bluetooth SIG, Inc.
Although specific embodiments of the invention have been described herein, it will be understood by those skilled in the art that variations may be made thereto without departing from the spirit of the invention or the scope of the appended claims.