GB2397480A - Communication of a high resolution image to a low resolution display device - Google Patents
Communication of a high resolution image to a low resolution display device Download PDFInfo
- Publication number
- GB2397480A GB2397480A GB0300904A GB0300904A GB2397480A GB 2397480 A GB2397480 A GB 2397480A GB 0300904 A GB0300904 A GB 0300904A GB 0300904 A GB0300904 A GB 0300904A GB 2397480 A GB2397480 A GB 2397480A
- Authority
- GB
- United Kingdom
- Prior art keywords
- client
- image
- resolution
- portions
- data file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4092—Image resolution transcoding, e.g. by using client-server architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
An image 200 is generated at a first resolution and if the first resolution exceeds a predetermined resolution, an image 210 at a second, lower, resolution is produced for transfer to a client. The invention is directed towards viewing of computer files on PDA's, mobile phones, etc. Images of the computer files are produced at a first resolution which is much higher than the resolution capabilities of such mobile devices. The images are then generated at a lower resolution which is capable of display on such mobile devices prior to transmission to said device. Dependent claims detail how the image may be viewed on the mobile device at higher resolution by selection of a portion of the low resolution image using a viewport, the corresponding portion 220 of the higher resolution image ten being transmitted at the higher resolution for display on the mobile device. An independent claim is also provided to a client arranged to receive an image of a file at a first resolution, and to further receive portions of a second image of the file, said second image having a higher resolution than the first resolution.
Description
Data Communication Method and System
Field of the Invention
The present invention relates to a method and system for communication of data. The present invention is particularly relevant for communication and display of the contents of visually complex data files in restricted bandwidth situations, in particular on mobile devices.
Background to the Invention
1() Computer systems are a part of everyday life and most, if not all, businesses use computers to generate and store electronic data files such as word processed documents, databases and the like. However, the versatility of computer systems has, to date, been limited by accessibility to stored electronic data files.
In order to share data, many forms of data networks have been created from which the Internet and the World Wide Web have evolved.
More recently, wireless communication systems have been developed and made available to the general public in the form of wireless data networks. Such systems operate using radio transmissions or other similar technologies. However, latency, interference and other factors introduced by wireless communication systems mean that the bandwidth available for communication is less than wired communication systems used by traditional data networks.
In both wired and wireless communication systems, where sufficient bandwidth is available, it is now relatively simple to implement a system that allows a remote client to access data files on a server over a data network. However, where the amount of bandwidth is limited to a small amount (such as 9.6kbs - the maximum data rate achievable over by a standard GSM data call) a number of problems are introduced.
Firstly, the majority of applications do not create data flees intended to be accessed or manipulated over a limited bandwidth data connection. It will be appreciated that the time taken to access a data file is critical to the usability of a system. An empty Microsoft Word_ file occupies nearly 24kb without any content and could take 3+ seconds to download over a perfect 9.6kbs connection.
Secondly, a client accessing a data file must ensure it has the appropriate software to access and/or view the contents of the data file. In the case of mobile telephones, Personal Digital Assistants (PDAs) and other devices with limited memory and processing power this requires specific viewers to be written. In addition, as more viewers are held on a device, those resources are no longer available to the user for other functions.
Statement of Invention
According to a first aspect of the present invention, there is provided a data communication system comprising a data display system arranged to generate an image of a first resolution of contents of a data file to be viewed and transmit the image of the first resolution to a client, wherein if the first resolution is greater than a predetermined value, the data display system is arranged to generate a lower resolution version of the image, and to transmit the lower resolution image to the client.
Preferably, if the first resolution is greater than the predetermined value, the data display system is arranged to generate and transmit portions of the first resolution image to the client.
The data display system may include a transmission buffer, generated portions of the first resolution image being stored in the transmission buffer and selected for transmission in a sequence determined in accordance with predetermined criteria.
The client may include a cache for storing received portions of the first resolution Image.
If the first resolution is greater than the predetermined value the client may include a view-port for selecting an area of the lower resolution image to be displayed corresponding to a portion of the image of the first resolution, the client being arranged to periodically transmit the location of the view port to the data display system, the predetermined criteria including the location of the view port.
The dale display system may be arranged to determine an anticipated future location of the view-port and transmit portions in dependence on the anticipated future location.
The data display system may be arranged to transmit portions in dependence on a content type of the data file.
A non-received portion may be displayed by the client as a hatched area.
A non-received portion may be displayed by the client as an approximation determined in dependence on the corresponding area of the lowerresolution image.
If a capacity of the cache is reached and a further portion is received, the client may be arranged to delete one or more of the portions. The one or more portions may be selected hi dependence on proximity to the location of the view-port.
The one or more portions may be selected in dependence on a content type of the data file.
The client may be arranged to communicate data on deleted portions to the data display system, the data display system being arranged to insert deleted portions into the transmission buffer for retransmission.
The client may include means for initiating an operation on the data file by the data display system. The operation may include a selected one of: printing the data file, emailing the data file and faxing the data file.
The predetermined value may comprise a display resolution of the client.
The present invention seeks to provide a method and system in which data files can be substantially immediately accessed over a restricted bandwidth connection. By producing a low resolution image of the contents of a data file and allowing higher resolution portions of the image to be accessed on demand, complex documents can be viewed in substantially real time over limited bandwidth connections.
Furthermore, the present invention seeks to provide a method and system where data files can be accessed by a client using a generic viewer application. Rendering the content of data files into viewable images at the server and transmission allows all data lile types to be accessed using a single generic viewer application on the client.
According to a second aspect of the present invention, there is provided a data communication method comprising generating an image of a first resolution ol contents of a data file to be viewed and determining the resolution of the image, wherein if the first resolution is less than or equal to the predetermined value, transmitting the image of the first resolution to a client and otherwise generating a lower resolution version of the image, and transmitting the lower resolution image to the client.
If the first resolution is greater than the predetermined value the method may further comprise generating and transmitting portions ofthe first resolution image to the client.
The method may further comprise storing generated portions of the first resolution image in a transmission buffer and selecting stored portions for transmission in a sequence determined in accordance with predetermined criteria.
The method may further comprise storing received portions of the first resolution image at the client.
If the first resolution is greater than the predetermined value, the method may further comprise displaying on the client a view-port for selecting an area ol the lower resolution image to be displayed corresponding to a portion of the image of the first resolution and periodically transmitting the location of the view port from the client, the predetermined criteria including the location of the view port.
The method may further comprise determining an anticipated future location of the view-port and transmit portions in dependence on the anticipated future location.
The method may further comprise transmitting portions in dependence on a content type of the data Tic.
The method may further comprise displaying a non-received portion at the client as a hatched area.
The method may further comprise displaying a non-received portion at the client as an approximation determined in dependence on the corresponding area of the lower- resolution image.
The method may further comprise deleting one or more portions if the size of portions stored by the client exceeds a predetermined threshold and a further portion is received.
The method may further comprise selecting the one or more portions in dependence on proximity to the location of the view-port.
The method may further comprise selecting the one or more portions in dependence on a content type of the data file.
The method may further comprise communicating from the client data on deleted portions and inserting portions communicated as being deleted into the transmission buffer for retransmission.
The method may further comprise accepting one or more inputs for initiating an operation on the data file. The operation may include a selected one of: printing the data file, emailing the data file and faxing the data file.
According to another aspect of the present invention, there is provided a server arranged to communicate with a client, the server comprising a data display system for generating an image of a first resolution of contents of a data file to be viewed and to transmit the image of the first resolution to a client, wherein if the first resolution is greater than a predetermined value, the data display system is arranged to generate a lower resolution version of the image, and to transmit the lower resolution image to the client. If the first resolution is greater than the predetermined value, the data display system may be arranged to generate and transmit portions of the first resolution image to the client.
The data display system may include a transmission buffer, generated portions of the first resolution image being stored in the transmission buffer and selected for transmission in a sequence determined in accordance with predetermined criteria.
The data display system may be arranged to transmit portions in dependence on a content type of the data file.
According to another aspect of the present invention, there is provided a client for viewing contents of a remote data file via data communication system comprising a receiver for receiving a first image of contents of the data file to be viewed, the receiver being arranged to subsequently receive portions of a second image of the contents of the data file, the second image having a higher resolution than the first image.
The client may further comprise a cache for storing received portions of the second image. If a capacity of the cache is reached and a further portion is received, the client may be arranged to delete one or more of the portions.
The client may further comprise a view-port controllable for selecting an area of the first image, thereby causing the portion of the second image corresponding to the area be displayed.
The one or more portions may be selected in dependence on proximity to the location of the view-port. The one or more portions may be selected in dependence on a content type of the data file.
A non-received portion may be displayed as a hatched area. A non-received portion may be displayed as an approximation determined in dependence on the corresponding area of the first image.
The client may further comprise means for initiating an operation on the data file by the data display system. The operation may include a selected one of: printing the data file, emailing the data file and faxing the data file.
Brief Description of the Drawings
Figure I is a schematic diagram of a data communication system according to one aspect of the present invention; Figure 2 illustrates an example of predetermined criteria operated by a data display system of Figure I to select a transmission sequence; and, Figure 3 is a schematic diagram of a data display system of Figure I according to a preferred embodiment.
Detailed Description
Figure 1 is a schematic diagram of a data communication system according to one aspect of the present invention; Clients, such as PCs 20, Personal Digital Assistants (PDAs) 30 and mobile telephones connect to a data display system 10 via a wireless communications system 15.
The data display system 10 is arranged to access data files to be viewed.
In the present invention, the term data file refers to any computer file. The present invention is particularly relevant to data files that can be printed onto paper but essentially the only requirement is that a data file can be rendered to be displayed in a visual form. Rendering for display is usually is application specific, but where there is no application (for example, with executable files), the contents of a data file may be displayed as a Hexadecimal or as an ASCII text dump.
When a client 20, 30, 40 connects to the data display system 10, it is presented with an interface allowing selection of a data file. Once a data file is selected, the data display system 10 renders the data file.
When rendering a data Tic, the data display system 10 prepares a visual representation, typically in the form of an image file at a readable resolution, of the contents of the data file. A low-resolution image of the first page to be viewed is also generated along with data about the file being viewed such as number of pages, page size etc. The low resolution image is then transmitted to the client 20, 30, 40. The low resolution image typically fills the entire screen of the client device in at least one dimension (e.g. the page width is equal to the screen width on the client). This allows the user to get an overview of the page, although the page will typically appear "reeked (reduced in size or details so as to render it unreadable whilst still giving an overview of the format or layout of the image or document). The low resolution image does, however, allow the user to determine the overall page layout of the page.
The low-resolution image is generated by sampling the image at intervals determined by the resolution of the client device in such a way that the image is scaled to the width of the device's screen. The image is also scaled vertically using the same sampling 2() interval. The resolution of the client 20, 30, 40 is transmitted to the data display system upon requesting a data file. If the source image is smaller than the screen of the client 20, 30, 40 then no sampling is done and the image is transmitted at its current resolution. In this case, the client 20, 30, 40 is then responsible for padding the image with white-space.
Whilst the low-resolution ("reeked) image is sent to the client 20, 30, 40, the data display system 10 splits the original higher resolution image up into tiles of typically 32 by 32 pixels.
An interface on the client 20, 30, 40 allows the user to move a view-port around the low resolution image to choose an area corresponding to a tile to 'zoom' into and view at a readable resolution (which is user-settable, but typically around 75dpi). The interface also allows the user to pan around the document to view other tiles. The term "view-port" refers to the portion of the screen on the client device that is displaying a portion of a document being viewed. The view port can usually be moved around the document interactively by the user.
A user at a client terminal 20, 30, 40 receiving a rendered document is completely free to scroll around the document and go back to the "reeked, low resolution, image at any time. Preferably, the interface at the client terminal 20, 30, 40 is completely non blocking and allows interaction to continue whilst tiles are being loaded. Non-blocking refers to an operation, usually involving input or output from a device that does not cause the system to pause until that operation is complete. Blocking operations are typically network operations, file input/output or console/keyboard interaction.
Preferably, unloaded tiles are displayed as hatched areas or as lowresolution approximations gleaned from the low-resolution '"reeked' image of the current page.
Non-blocking behaviour is achieved by using multiple threads of execution to allow the scrolling to take place asynchronously to the communication with the data display system 10.
The user can also request, via the user interface, to go to a specific page number (or the first, last, next or previous page) of the data file contents, in which case the process starts anew by loading the lowresolution version of the selected page and continuing as before.
Each tile is preferably compressed. In a preferred embodiment, each row of pixel data of a tile is analysed one at a time and encoded as follows: The first two bits indicate the type of the current row of pixels. The four possible bit patterns encode the following: 1. The row is completely white.
2. The row is completely black.
3. The row compresses more efficiently with run-length encoding than just sending the raw data 4. The row doesn't compress well with run-length encoding.
If the row is completely white or black, no data follows, so the next data to be encoded is the two bits for the next row.
If the row can be efficiently encoded using run-length encoding, then the data that follows is the run-length encoding of the following 32 pixels. This length of this data block will be variable depending on the image data, but it is possible to detect the end of the row by adding up the lengths. The actual format of the run-length encoding is one or more sixbit fields, where the first 5 bits of the field denote the repeat length minus one (i.e. it encodes between 1 and 32 in a binary range of 0 to31, although strictly speaking this step is superfluous because you can never have a repeat of 32 because it would he encoded as completely white or completely black). The final single bit represents the colour (black or white) ofthe repeated pixels.
If the row cannot be efficiently run-length encoded, then the raw 32 bits of pixel data follows.
In a preferred embodiment of the present invention, all the tiles of a rendered image are transmitted by the data display system 10 in a sequence determined in dependence on a number of predetermined criteria. Tiles received by the client 20, 30, 40 are cached to minimise network traffic and improve responsiveness. If the client 20, 30, 40 runs out of memory and needs to discard some tiles, these are selected in dependence on a further number of predetermined criteria. Details of discarded tiles are communicated to the data display system 10 causing the tile to be queued for retransmission by the data display system 10 later.
An example of the predetermined criteria operated by the data display system 10 to select the transmission sequence is illustrated in Figure 2.
A word processed document is selected to be displayed. The first page of the document is rendered as an image 200. A lower resolution image 210 is generated and transmitted to the client 20, 30, 40 for display. Whilst the lower resolution image 210 is being transmitted, a tiled image 220 is generated from the rendered image 200. The tiled image is made up of a number of tiles 221-244, each tile corresponding to an area of the rendered image 200. In the present embodiment, each tile is of a fixed predetermined size. However, given the varying screen resolutions of potential clients, it would be possible for the tile size to be determined in dependence on client screen resolution to make best use of available resources. Each tile is compressed as discussed above to obtain an encoded image 221a-244a, respectively.
The encoded images 221a-244a are written to an output queue 250 for transmission to the client 20, 30, 40. Encoded images 221a-244a are removed in order prom the front of' the output queue 250 and sent to the client 20, SO, 40, preferably at the maximum possible rate (usually the connection to the client is bandwidth-limited).
I'he order of encoded images 221a-244a in the output queue 250 is resorted each time the client sends back information about the current location of the view-port.
Preferably, information on the current location of the view-port is included in every packet transmitted from the client to the server. Resorting is prioritised in dependence on the location of a tile of the encoded image relative to the last known position of the view-port.
In one embodiment, prioritization is based on the square of the distance from the centre of the view-port. A lower number indicates a higher priority. In other embodiments, prioritization may be dependent, at least in part, on the type of data file to thereby give optimal performance. For example, text documents tend to be read rapidly across their width, but slowly vertically, therefore an elongated oval (wider horizontally and narrower vertically) would be better than a circle (calculating priority based on the square of the distance (dx^2 + dy^2) leads to circular rings of outwardly decreasing priority).
Encoded images 221a-244a received by the client 20, 30, 40 and decoded. The images 221-244 are then cached at the client 20, 30, 40 to minimise network traffic and improve responsiveness. Eventually, the client 2O, SO, 40 will probably run out of cache memory and need to discard some of the cached images 221 -244.
Fach encoded image 221a-244a includes data on the x and y co-ordinates (from top- lei't) of the respective tile, an indication of the image being "reeked and page number.
When an image is decoded and cached, this information is stored with it.
The client 20, 30, 40 determines cached images 221-244 to discard by calculating the square of the distance between the view-port and the corresponding tile 221-244 and discarding those beyond a threshold distance. 'I'he calculation is based on the distance l'rom the view-port centre to the tile x, y co-ordinate. Greeked tiles are never discarded when a dit'ferent page is viewed. Tiles for another page are always discarded.
Once a cached image has been discarded, the client 20, 30, 40 transmits a message to the data display system 10 indicating that encoded images have been discarded along with the view port coordinates. The data display system 10 determines the encoded images that have been discarded using the co-ordinates and the same square/threshold algorithm. The discarded encoded images are written back into the output queue 250, so that they can be sent again if their priority becomes high enough (i.e. the user wishes to view that part of' the document again, possibly at the expense of cached tiles for another part of the document).
Figure 3 is a schematic diagram of a data display system of Figure 1 according to a preferred embodiment.
The data display system 10 comprises a server 300 connected either physically or virtually (such as via a Virtual Private Network) to a computer network 310 on which data files to be viewed are stored. The data display system 10 also includes at least one wireless gateway 320, such as a WAP gateway, to allow mobile clients 30, 40 to access the system 10 over a wireless connection, a bearer application system 330 and a rendering system 340. In the present invention, the gateway 320 translates between the WAP protocol stack (WSP, WTP and WDP) and the TCP/IP protocol stack (HT'l'P, TCP and UDP respectively) or other protocol stacks used by the server 300 and the network 310.
Existing WAP gateways use a store and forward technique which introduces substantial delays in the communications stream, particularly with HTTP transfers which is the minimum requirement of a MIDP compliant device. A data-bearer application manages WAP protocol connections between a client and a server. In a preferred embodiment of the present invention, a specially designed WAP gateway 320 and data-bearer are used. These allow the data display system software to tightly integrate with the WAP protocol stack. In this manner, the latency of transactions between mobile devices SO, and the data display system 10 are made more tolerable to users of mobile devices.
1() Remaining latency problems are hidden by range of techniques including progress animations on clients 2O, 30, 40, pre-pushing data in anticipation of its request during idle periods and caching of data on the clients 2O, 30, 40.
The bearer application system 330 provides the initial navigation system to clients 20, 30, 40 to allow selection of a data file to be displayed. When the bearer application system 330 initially Connects to a client 20, 30, 40, a list of sources for data files is transmitted to the client 20, 30, 40. The list may include available workstations, servers and shares (a directory on a networked machine that has been specifically labelled and made available over the network) on the network 310. The client 20, 30, 40 may cache this list in local non-volatile storage. The client 20, 30, 40 then allows the user to choose from the list at which point the bearer application server 330 is notified and any resulting file lists (for example if the user has chosen a machine, folder or share to examine rather than a file) is sent back to the client. The client may also intelligently pre-feteh data to reduce the apparent latency of the connection (or conversely, the server may pre-push data it thinks the client may want soon). The whole file selection process is repeated until the user selects a data file for viewing or the user cancels the operation.
Once a file has been selected, the bearer application system 330 identifies the name and location of the data file to be printed and sends a request to the rendering server 340 detailing the file name, where to put the resulting image file (path and file name) and any authentication information.
The bearer application system 330 and/or rendering server 340 may be hosted on the same physical machine as the data display system. In systems that must support a large number of users, multiple bearer application systems 330 and rendering servers 340 may be provided on separate machines.
The rendering server 340 retrieves the file over the network using a standard networked file system (such as SMB or NFS). This may occur over a virtual private network connection (VPN) in some cases.
The rendering server 340 is arranged to prepare the image file (typically a bitmap) for use as described above. This may be achieved by: a. By starting the application associated with the file type of the data file (if not already loaded) and instructing it to print the document to a virtual printer. This virtual printer receives commands from the application about how to render the document, but rather than render onto paper, it renders the image onto a virtual bitmap canvas and saves this as an image file (e.g. TIFF).
b. The application associated with the file type is loaded as an embedded document object, such as a Microsoft Active Document. Embedded document objects require a graphics context in which to render themselves. The rendering server 340 creates and loads one of these embedded document objects and passes it a blank canvas on which to render the document (and any associated user interface widgets). It then writes this rendered canvas either out to an image file (such as a TIFF) or passes it via shared memory.
c. Using an internal library to open and render the file type In one embodiment, the bearer application system 330 and the rendering system 340 may be arranged to offer facilities in addition to data file display. For example, the systems may also be controllable to allow faxing, printing or emailing data files to a designated destination. In the case of faxing or emailing, the client 20, 30, 40 is requested to provide a destination telephone number or address. The data file is then passed to an email or fax system as appropriate with the destination number/address for onward transmission. In the case of printing, the client terminal 20, 30, 40 may be provided with a list of available printers from which to select the printing destination.
After rendering, printing, faxing or emailing, the rendering system 340 preferably notifies the bearer application system 330 with a message toidentify the document requested and the resulting action (e.g. rendered image file name).
If the rendering system 340 has performed printing, faxing or mailing, the bearer application system 330 may simply notify the client of the result so it can display the appropriate confimnation or error message to the user. If, however, the bearer application system 330 has requested that the rendering system 340 render the document to an image file then the rendering system 340 sends back a completion message (which identifies the source and image filenames and locations). Upon receipt of the completion message, the data display system 10 loads the image and starts the document viewing process with the client 20, 30, 40.
As has been described above, various client devices are applicable for use in the present invention. Preferably the client device implements the MIDP (Mobile Information (err) Device Profile) of Sun Microsystems^Java 2 Micro Edition. This is a superset of the Connected Limited Device Configuration Profile (J2ME CLDC profile). However, it will be appreciated that many of the techniques discussed are not limited to this platform.
Whilst wireless communications systems have been discussed with reference to WAP, the reader will appreciate that this term includes any system for transferring information between two devices connected to that system using a radio-type transceiver pair. A preferred embodiment of the present invention uses a communication system operating under the GSM standard (with optional HSCSD and GPRS connections). However, embodiments may also utilise systems operating under other standards such as WCDMA, Bluetooth and IEEE 801.11 x. The present invention is particularly applicable to wireless communication systems but can also be used in wired communication systems.
It will furthermore be appreciated that although the above mentioned embodiments are limited to access of existing files within a computer system, the concepts could be extended to access of emails, facsimile messages and the like.
Claims (45)
- Claims 1. A data communication system comprising a data display systemarranged to generate an image of a first resolution of contents of a data file to be viewed and transmit the image of the first resolution to a client, wherein if the first resolution is greater than a predetermined value, the data display system is arranged to generate a lower resolution version of the image, and to transmit the lower resolution image to the client.
- 2. A system according to claim 1, wherein if the first resolution is greater than the predetermined value, the data display system is arranged to generate and transmit portions of the first resolution image to the client.
- 3. A system according to claim 2, wherein the data display system includes a transmission buffer, generated portions of the first resolution image being stored in the transmission bulkier and selecieu for transmission in a sequence determined in accordance with predetermined criteria.
- 4. A system according to claim 3, wherein the client includes a cache for storing received portions of the first resolution image.
- 5. A system according to claim 2, 3 or 4, wherein if the first resolution is greater than the predetermined value the client includes a view-port for selecting an area of the lower resolution image to be displayed corresponding to a portion of the image of the first resolution, the client being arranged to periodically transmit the location of the view port to the data display system, the predetermined criteria including the location of the view port.
- 6. A system according to claim 5, wherein the data display system is arranged to 3() determine an anticipated future location of the view-port and transmit portions in dependence on the anticipated future location.
- 7. A system according to claim S or 6, wherein the data display system is arranged to transmit portions in dependence on a content type of the data file.
- 8. A system according to claim 5, 6 or 7, wherein a non-received portion is displayed by the client as a hatched area.
- 9. A system according to claim 5, 6 or 7, wherein a non-received portion is displayed by the client as an approximation determined in dependence on the corresponding area of the lower-resolution image.
- 10. A system according to any of claims 4 to 9, wherein if a capacity of the cache is reached and a further portion is received, the client is arranged to delete one or more of the portions.
- 11. A system according to claim 10, wherein the one or more portions are selected in dependence on proximity to the location of the view-port.
- 12. A system according to claim 10 or 11, wherein the one or more portions arc selected in dependence on a content type of the data file.
- 13. A system according to claim 10, 11 or 12, wherein the client is arranged to communicate data on deleted portions to the data display system, the data display system being arranged to insert deleted portions into the transmission buffer for retransmi ssion.
- 14. A system according to any preceding claim wherein the client includes means for initiating an operation on the data file by the data display system.
- 15. A system according to claim 14, wherein the operation includes a selected one of: printing the data file, emailing the data file and faxing the data file.
- 16. A system according to any preceding claim, wherein the predetermined value comprises a display resolution of the client.
- 17. A data communication method comprising: generating an image of a first resolution of contents of a data file to be viewed and determining the resolution of the image, wherein if the first resolution is less than or equal to the predetermined value, transmitting the image of the first resolution to a client and otherwise generating a lower resolution version of the image, and transmitting the lower resolution image to the client.
- 18. A method according to claim 17, wherein if the first resolution is greater than 1() the predetermined value the method further comprising generating and transmitting portions of the first resolution image to the client.
- 19. A method according to claim 18, further comprising storing generated portions of the first resolution image in a transmission buffer and selecting stored portions for transmission in a sequence determined in accordance with predetermined criteria.
- 20. A method according to claim 19, further comprising storing received portions of the first resolution image at the client.
- 21. A method according to claim 18, 19 or 20, wherein if the first resolution is greater than the predetermined value, the method further comprising displaying on the client a view-port for selecting an area of the lower resolution image to be displayed corresponding to a portion of the image of the first resolution and periodically transmitting the location of the view port from the client, the predetermined criteria including the location of the view port.
- 22. A method according to claim 21, further comprising determining an anticipated future location of the view-port and transmit portions in dependence on the anticipated future location.
- 23. A method according to claim 21 or 22, further comprising transmitting portions in dependence on a content type of the data file.
- 24. A method according to claim 21, 22 or 23, further comprising displaying a non- received portion at the client as a hatched area.
- 25. A method according to any of claims 21 to 24, further comprising displaying a non-received portion at the client as an approximation determined in dependence on the corresponding area of the lowerresolution image.
- 26. A method according to any of claims 18 to 25, further comprising deleting one or more portions if the size of portions stored by the client exceeds a predetermined threshold and a further portion is received.
- 27. A method according to claim 26, further comprising selecting the one or more portions in dependence on proximity to the location of the viewport.
- 28. A method according to claim 26 or 27, further comprising selecting the one or more portions in dependence on a content type of the data file.
- 29. A method according to claim 26, 27 or 28, further comprising communicating from the client data on deleted portions and inserting portions communicated as being deleted into the transmission buffer for retransmission.
- 30. A method according to any of claims 17 to 29, further comprising accepting one or more inputs for initiating an operation on the data file.
- 31. A method according to claim 30, wherein the operation includes a selected one of: printing the data file, emailing the data file and faxing the data file.
- 32. A server arranged to communicate with a client, the server comprising a data display system for generating an image of a first resolution of contents of a data file to be viewed and to transmit the image of the first resolution to a client, wherein if the first resolution is greater than a predetermined value, the data display system is arranged to generate a lower resolution version of the image, and to transmit the lower resolution image to the client.
- 33. A server according to claim 32, wherein if the first resolution is greater than the predetermined value, the data display system is arranged to generate and transmit portions of the first resolution image to the client. s
- 34. A server according to claim 33, wherein the data display system includes a transmission buffer, generated portions of the first resolution image being stored in the transmission buffer and selected for transmission in a sequence determined in accordance with predetermined criteria.
- 35. A server according to claim 34, wherein the data display system is arranged to transmit portions in dependence on a content type of the data file.
- 36. A client for viewing contents of a remote data file via data communication system comprising a receiver for receiving a first image of contents of the data file to be viewed, the receiver being arranged to subsequently receive portions of a second image of the contents of the data file, the second image having a higher resolution than the first hllage.
- 37. A client according to claim 36, further comprising a cache for storing received portions of the second image.
- 38. A client according to claim 37, wherein if a capacity of the cache is reached and a further portion is received, the client is arranged to delete one or more of the portions.
- 39. A client according to claim 37 or 38, further comprising a view-port controllable for selecting an area of the first image, thereby causing the portion of the second image corresponding to the area be displayed.
- 40. A client according to claim 39, wherein the one or more portions are selected in dependence on proximity to the location of the view-port.
- 41. A client according to claim 39 or 40, wherein the one or more portions arc selected in dependence on a content type of the data file.
- 42. A client according to claim 39, 40 or 41, wherein a non-received portion is displayed as a hatched area.
- 43. A client according to any of claims 39 to 41, wherein a non-received portion is displayed as an approximation determined in dependence on the corresponding area ol the first image.
- 44. A client according to any of claims 36 to 43, further comprising means for initiating an operation on the data file by the data display system.
- 45. A client according to claim 44, wherein the operation includes a selected one of: 1 S printing the data file, emailing the data file and faxing the data file.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0300904A GB2397480A (en) | 2003-01-15 | 2003-01-15 | Communication of a high resolution image to a low resolution display device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0300904A GB2397480A (en) | 2003-01-15 | 2003-01-15 | Communication of a high resolution image to a low resolution display device |
Publications (2)
Publication Number | Publication Date |
---|---|
GB0300904D0 GB0300904D0 (en) | 2003-02-12 |
GB2397480A true GB2397480A (en) | 2004-07-21 |
Family
ID=9951194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB0300904A Withdrawn GB2397480A (en) | 2003-01-15 | 2003-01-15 | Communication of a high resolution image to a low resolution display device |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2397480A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1865725A4 (en) * | 2005-03-29 | 2012-01-25 | Nec Corp | Mobile terminal |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4742558A (en) * | 1984-02-14 | 1988-05-03 | Nippon Telegraph & Telephone Public Corporation | Image information retrieval/display apparatus |
US5764235A (en) * | 1996-03-25 | 1998-06-09 | Insight Development Corporation | Computer implemented method and system for transmitting graphical images from server to client at user selectable resolution |
WO1998036344A2 (en) * | 1997-01-30 | 1998-08-20 | Lextron Systems, Inc. | Simplified-file hyper text protocol |
GB2344197A (en) * | 1998-08-05 | 2000-05-31 | Spyglass Inc | Content conversion of electronic documents |
WO2001069855A2 (en) * | 2000-03-13 | 2001-09-20 | Spicer Corporation | Limited-bandwidth electronic data communication system |
-
2003
- 2003-01-15 GB GB0300904A patent/GB2397480A/en not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4742558A (en) * | 1984-02-14 | 1988-05-03 | Nippon Telegraph & Telephone Public Corporation | Image information retrieval/display apparatus |
US5764235A (en) * | 1996-03-25 | 1998-06-09 | Insight Development Corporation | Computer implemented method and system for transmitting graphical images from server to client at user selectable resolution |
WO1998036344A2 (en) * | 1997-01-30 | 1998-08-20 | Lextron Systems, Inc. | Simplified-file hyper text protocol |
GB2344197A (en) * | 1998-08-05 | 2000-05-31 | Spyglass Inc | Content conversion of electronic documents |
WO2001069855A2 (en) * | 2000-03-13 | 2001-09-20 | Spicer Corporation | Limited-bandwidth electronic data communication system |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1865725A4 (en) * | 2005-03-29 | 2012-01-25 | Nec Corp | Mobile terminal |
Also Published As
Publication number | Publication date |
---|---|
GB0300904D0 (en) | 2003-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4716645B2 (en) | Document viewing method | |
US8601063B2 (en) | Method for presenting an attachment within an email message | |
US7206806B2 (en) | Method and system for remote utilizing a mobile device to share data objects | |
US8775662B2 (en) | System and method for progressive delivery of multimedia objects | |
US8542808B2 (en) | Contact image selection and association method and system for mobile device | |
EP1929737B1 (en) | Progressive delivery of multimedia objects | |
US20060056604A1 (en) | Method for scaling images for usage on a mobile communication device | |
US7464140B2 (en) | Method and system for dynamically determining web resource to be loaded and saving space | |
US20040139208A1 (en) | Portable internet access device back page cache | |
EP1640877A1 (en) | Method for scaling images for usage on a mobile communication device | |
US20020184307A1 (en) | Method and apparatus for printing remote images using a mobile device and printer | |
EP1665081A1 (en) | Interface for transcoding system | |
EP1248184A1 (en) | Mobile terminal and method for scaling an option list of an application software | |
JPH10150464A (en) | Peripheral equipment | |
GB2397480A (en) | Communication of a high resolution image to a low resolution display device | |
Lee et al. | Class-based proxy server for mobile computers | |
JP2005268969A (en) | Communication device | |
JP2002073451A (en) | Mobile system, method for transmitting html file from server to client and device therefor | |
HK1088679A (en) | Method for scaling images for usage on a mobile communication device | |
Reid | Document viewer for handheld devices using JPEG 2000 technology | |
MXPA01010799A (en) | Radio terminal with browser |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WAP | Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1) |