US6211881B1 - Image format conversion with transparency color adjustment - Google Patents
Image format conversion with transparency color adjustment Download PDFInfo
- Publication number
- US6211881B1 US6211881B1 US09/133,514 US13351498A US6211881B1 US 6211881 B1 US6211881 B1 US 6211881B1 US 13351498 A US13351498 A US 13351498A US 6211881 B1 US6211881 B1 US 6211881B1
- Authority
- US
- United States
- Prior art keywords
- image
- color
- format
- program code
- computer program
- 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.)
- Expired - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/142—Image acquisition using hand-held instruments; Constructional details of the instruments
- G06V30/1423—Image acquisition using hand-held instruments; Constructional details of the instruments the instrument generating sequences of position coordinates corresponding to handwriting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Definitions
- the present invention relates to graphical images and, more particularly, to format conversion of graphical images.
- Graphic images are often stored as image files in a variety of different formats. Often these formats contain some sort of compression to keep the size of the image files manageable. For example, GIF, TIFF and JPEG are popular formats for image files.
- the invention relates to improved image format conversion techniques that provide improved conversion from an image format supporting transparency to an image format not supporting transparency.
- the invention replaces a transparency color in an original image format prior to format conversion. Consequently, the format conversion uses the replacement transparency color instead of the original transparency color, and thus is able to provide improved image conversion when converting from an image format supporting transparency to an image format not supporting transparency.
- the replacement transparency color can be any desirable color, but is preferably chosen to blend with the image.
- the replacement transparency color can also be matched to the background color.
- the invention can be implemented in numerous ways, including as a method, an apparatus, a system, or computer readable medium. Several embodiments of the invention are summarized below.
- one embodiment of the invention includes the acts of: determining whether the source image having with the first image format uses at least one transparent portion; receiving a color table from the source image file; identifying a transparent color for the at least one transparent portion from the color table; determining a replacement transparent color for use with the target image having the second image format; modifying the color table by substituting the replacement transparent color for the transparent color; and thereafter converting the source image file having the first image format to the target image file having the second image format in accordance with the modified color table.
- one embodiment of the invention includes the acts of: allocating a memory block in the memory of the computer system; reading a header block from the source image file; reading a logical screen descriptor block from the source image file; determining whether a color table is present in the source image file; reading the color table into the memory block when the determining act determines that the color table is present in the source image file; reading a graphic control block for an image block in the source image file; determining whether transparency is used in the image block by an examination of the graphic control block; identifying a transparent color index for the color table; determining a replacement transparent color for use with the target image having the second image format, where the second image format does not support transparency; modifying the color table by substituting the replacement transparent color for the transparent color; and thereafter converting the source image file having the first image format to the target image file having the second image format in accordance with the modified color table.
- an embodiment of the invention includes: computer program code for receiving the source image file having with the first image format that uses at least one transparent portion; computer program code for receiving a color table from the source image file; computer program code for identifying a transparent color for the at least one transparent portion from the color table; computer program code for determining a replacement transparent color for use with the target image having the second image format; computer program code for modifying the color table by substituting the replacement transparent color for the transparent color; and computer program code for converting the source image file having the first image format to the target image file having the second image format in accordance with the modified color table.
- One advantage of the invention is that display of the image resulting from the image format conversion appears more like the original image.
- Another advantage of the invention is that the transparency color for those portions of an image intended to be transparent is controllable.
- FIG. 1 is a flow diagram of image format conversion processing according to an embodiment of the invention
- FIGS. 2A-2B are flow diagrams of image format conversion processing according to another embodiment of the invention.
- FIG. 3 is a diagram of an exemplary animated GIF data stream
- FIG. 4 is a proxy system that provides improved data delivery over a network
- FIG. 5 is a block diagram of a proxy system according to an embodiment of the invention.
- the invention relates to improved image format conversion techniques that provide improved conversion from an image format supporting transparency to an image format not supporting transparency.
- Graphics images are commonly converted from one file or transmission format to another for a variety of reasons.
- the original format may not be compatible with or supported by the desired viewing or manipulation tool.
- a different image format may also produce a smaller file size.
- a particular feature of particular format may be desired that is not supported by the original image format.
- the invention replaces the transparency color in the original image format prior to format conversion. Consequently, the format conversion uses the replacement transparency color instead of the original transparency color, and thus is able to provide improved image conversion when converting from an image format supporting transparency to an image format not supporting transparency.
- the replacement transparency color can be any desirable color, but is preferably chosen to blend with the image.
- the replacement transparency color can also be matched to the background color.
- FIG. 1 is a flow diagram of image format conversion processing 100 according to an embodiment of the invention.
- the image format conversion being performed is typically to allow a user to properly view the image or to convert from an original image format to another image format for any of a number of reasons.
- One reason to convert between image formats is to compress the size of the image file prior to storage or transmission of the image file.
- the image format conversion processing 100 is typically performed by a computer system.
- the image format conversion processing 100 begins with a decision block 102 that determines whether image format conversion is desired.
- the decision block 102 thus signifies that the image format conversion processing 100 is performed to convert the image from a source format to a target format.
- the image originally has the source format and the image format conversion 100 operates to change the image to the target format.
- the source format is different from the target format.
- a decision block 104 determines whether transparency is used in the source format.
- Certain image formats support the use of transparency which allows portions of an image to be transparent. The ability for images to have translucent portions allows for increased flexibility in producing graphical images with many shapes and many characteristics.
- the invention provides special processing to compensate for the lack of support for transparency.
- the special processing according to the invention is used during image format conversion which converting from an image format that provides transparency to an image format that does not.
- a decision block 106 determines whether transparency is supported in the target format.
- a transparent color in a color table associated with the source format is modified 108 .
- the transparent color in the color table is changed to a more suitable color.
- the transparent color represents the color displayed in the transparent portions of the image. Since the transparent color in the source format of the image is often not an appropriate color to actually be displayed, the invention operates to replace the original transparent color with the more suitable color.
- the more suitable color is a color that will be displayed for the image in the target format where the image was originally intended to be transparent. Examples of more suitable colors can vary with the application, but an off-white color is often a good default choice. Also, the more suitable color could be the color of the background behind the image, thus providing the same effect as transparency when displayed.
- the image is converted 110 from the source format to the target format.
- the conversion between image format is generally known in the art and such conversions will make use of the color table. In some cases the color table used has been modified by block 108 , and in other cases, the color table has not been modified.
- the image format conversion processing 100 is complete and ends.
- FIGS. 2A-2B are flow diagrams of image format conversion processing 200 according to another embodiment of the invention.
- the image format conversion 200 is performed by a computer system. As noted above, the image format conversion can be performed for any of a variety of reasons.
- the image format conversion 200 converts a source image file to a target image file. In this embodiment, it is assumed that the source image file has a GIF type format and that the target image file has a format that does not support transparency.
- GIF89a which pertains to Graphics Interchange Format (GIF), version 89a, by Compuserve Incorporated, Columbus, Ohio, and which is hereby incorporated by reference.
- GIF89a is used when the image file is to provide the appearance of animation on a display screen of a computer system by sequentially displaying a series of images.
- JPEG Joint Photographic Experts Group
- the image format conversion processing 200 initially allocates 202 memory for color table storage.
- the memory is allocated from main memory of a computer system.
- the computer system operates to perform the image format conversion processing 200 .
- a header block is read 204 from the source image file.
- a logical screen display descriptor block is read 206 from the source image file.
- a decision block 208 determines whether a global color table is present in the source image file. When the decision block 208 determines that a global color table is present, then the global color table is read 210 into the allocated memory. On the other hand, when the decision block 208 determines that the global color table is not present, then block 210 is bypassed.
- a decision block 212 determines whether a graphic control extension is present in the source image file.
- the source image file is converted 214 to the target image file using an unmodified version of the color table.
- the unmodified version of the color table is the color table that was read from the source image file.
- the color table read from the source image file can be either a global color table or a local color table. in any case, the conversion between image formats is generally known in the art. For example, the conversion of GIF89a to JPEG is known in the art.
- a decision block 216 determines whether transparency is used within the source image file.
- the image format conversion processing 200 again operates to perform conventional image format conversion by performing block 214 . Following block 214 , the image format conversion processing 200 is complete and ends.
- the image format conversion processing 200 identifies 218 a transparent color index in the global color table stored in the allocated memory.
- the transparent color index will identify a particular transparent color within the global color table that was utilized in the source image file to correspond to transparent pixels or other portions of the source image.
- an image block is identified 220 .
- the image file includes one or more image blocks that contain an image descriptor and image data.
- the image blocks can also include a local color table.
- An image descriptor for the identified image data is then read 220 .
- a decision block 224 determines whether a local color table is present in the identified image block.
- the decision block 224 evaluates the image descriptor read in block 222 to determine whether it mentions use of a local color table.
- the local color table is read 226 into the allocated memory.
- the local color table read 226 into the allocated memory it is superimposed over the global color table already stored in the allocated memory and thus supersedes its entries.
- the decision block 224 determines that a local color table is not present, then the block 226 is bypassed.
- the resulting color table (global color table or local color table) in the allocated memory is then modified 228 to substitute a replacement color at the transparent color index.
- the identified image file is converted 230 to a target image file using the modified color table.
- the format conversion performed in block 230 is generally known in the art. Following block 230 , the image format conversion processing 200 is complete and ends.
- the image format conversion processing 200 is described as a single block conversion, the conversion performed in block 230 can operate on a block-by-block basis, in which case, blocks 220 - 230 would be repeated for each of the image blocks within the image source file.
- the conversion performed in block 214 could also be performed on a block-by-block basis. With block-by-block processing some blocks could use the unmodified color table and others could use the modified color table. In any case, once the source image file has been completely converted to the target image file, the image format conversion processing 200 is completed.
- FIG. 3 is a diagram of an exemplary animated GIF data stream 300 .
- the exemplary animated GIF data stream 300 includes a header (H), a logical screen descriptor (LSD), a global palette (GP), an application extension block (AE), a first comment (C1), a second comment (C2), a first control block (CNTL-1), a first image block (IMAGE-1), a third comment (C3), and subsequent sequential pairs of control blocks and image blocks (CNTL-2, IMAGE-2, ...CNTL-n, IMAGE-n), and finally a trailer (T).
- H header
- LSD logical screen descriptor
- GP global palette
- AE application extension block
- C1 first comment
- C2 a second comment
- C2 first control block
- IMAGE-1 first image block
- C3 third comment
- subsequent sequential pairs of control blocks and image blocks CNTL-2, IMAGE-2, ...CNTL-n, IMAGE-n
- T a trailer
- the image format conversion processing 200 , 300 operates to read the global palette (GP) (global color table) and modify it to provide an appropriate transparent color in cases where the GIF data stream 300 is to be converted into a image format that does not support transparency. Additional details on animated GIF images can be found in GIF89a which is a GIF image format for animated images and GIF 87a which is an earlier GIF specification, both of which are hereby incorporated by reference.
- GP global palette
- the image format conversion processing 200 , 300 is performed by a computer system.
- the computer system is a proxy server that stores images and other objects for delivery to requesting users over a network (e.g., the Internet).
- FIG. 4 illustrates a representative proxy system that can operate to perform the image format conversion processing 200 , 300 .
- FIG. 4 is a proxy system 400 that provides improved data delivery over a network.
- the proxy system 400 includes the proxy server 402 that couples to network browsers 404 .
- the proxy server 402 is also coupled to the Internet 406 .
- the Internet 406 is a collection of interconnected computer systems, some of which act as content servers. Accordingly, FIG. 4 illustrates the Internet 406 coupled to a content server 408 as a representative one of the content servers associated with the Internet 406 .
- the proxy system 400 includes an acceleration server 410 .
- the acceleration server 410 couples to the proxy server 402 as well as the Internet 406 .
- the proxy system 400 is able to provide improved content (data) delivery over the Internet 406 .
- the proxy system 400 operates to speed up the response time that a user of one of the browsers 404 undergoes after requesting some content from the content server 408 until the requested content is supplied to the user at one of the browsers 404 .
- the requested content includes images and other objects.
- the proxy system 400 will often perform image format conversion so that the images are converted into an image format that provides more compression. For example, conversion of images from a GIF format to a JPEG format usually decreases the file sizes of the images. A reduction in file size means that the image can be stored by the proxy system 400 using less disk storage space and can be transmitted to a requestor in less time.
- the general operation of the proxy system 400 is as follows. Normally, as a user of one of the browsers 404 makes a request for data from a content server on the Internet 406 .
- the proxy server 402 initially intercepts the request for data from the browser 404 and determines whether the request for data can be satisfied locally by the proxy server 402 or the acceleration server 410 . When the proxy server 402 determines that the request for data cannot be satisfied locally, the proxy server 402 forwards the request for data to the content server 408 through the Internet 406 . In this case, the previously intercepted request for data is passed through the proxy server 402 to the content server 408 via the Internet 406 so that the request for data can be satisfied in a conventional, unaccelerated manner.
- the proxy server 402 determines that the request for data can be satisfied locally with an improved response time (i.e., accelerated delivery) to the user, then the proxy server 402 and the acceleration server 410 operate to satisfy the request for data using information locally stored, thereby avoiding the need to traverse the sluggish Internet 406 and retrieve the requested data from the content server 408 . Also, if the acceleration server 410 believes it can satisfy the request for data locally but the necessary information is not yet locally available, then the acceleration server 410 operates to retrieve the requested data from the content server 408 with a pre-fetch operation and then locally store the necessary information. Thereafter, the acceleration server 410 can satisfy the request for data from local storage.
- an improved response time i.e., accelerated delivery
- the data returned to the browser 404 in response to the request for data will not only be locally available but also be reduced in size (e.g. reduced file size). Both of these features contribute to the ability of the proxy system 400 to significantly improve the response time in which the requested data can be delivered to the browser 404 . Accordingly, the proxy server 402 acting together with the acceleration server 410 is able to accelerate the delivery of the requested data to the user of the browser 404 that has made the request.
- the addition of the acceleration server 410 to the proxy system 400 causes the delivery of requested data to be delivered to a user in an accelerated manner.
- the number of users (i.e., clients) being serviced by the proxy system 400 becomes significant and the number of accelerated versions needed at any point in time becomes too large for the acceleration server 410 to handle, this concentrated processing burden can cause the performance of the acceleration server 410 , and thus the proxy system, to degrade.
- the invention resolves this potential problem by managing the load on the acceleration server 410 such that even in the worst case condition the performance of the proxy server 400 is, for example, no worse than it would be had the proxy system been a conventional proxy server (i.e., without acceleration capabilities).
- FIG. 5 is a block diagram of a proxy system 500 according to an embodiment of the invention.
- the proxy system 500 includes a proxy server 502 and an acceleration server 504 .
- the proxy server 502 can correspond to the proxy server 402 illustrated in FIG. 4, and the acceleration server 504 can correspond to the acceleration server 410 in FIG. 4 .
- the proxy server 502 includes a proxy filter 506 and a proxy cache 508 .
- the proxy filter 506 monitors requests for data received from the browsers 404 .
- the proxy filter 506 then filters out those requests that it believes it can accelerate the delivery of the requested data to the user of the browsers 404 .
- the proxy filter 506 then forwards these requests that it believes it can accelerate to the acceleration server 504 .
- the proxy cache 508 operates as a cache storage area in which responses to earlier requests from the Internet 406 made by the browsers 404 can be temporarily saved and satisfied thereafter from the proxy cache 508 if any of the browsers 404 make the same request for data while the data remains stored in the proxy cache 508 .
- the proxy cache 508 provides local storage for content data that was previously requested by one of the browsers 404 , and thus provides rapid access to the same content data as long as the content data remains stored in the proxy cache 508 .
- the content stored in the proxy cache 508 is not accelerated, but merely non-accelerated content obtained by the proxy server 502 from a content server through the Internet 406 .
- proxy servers include a cache to temporarily store content obtained from a content server via the Internet.
- An example of such a conventional proxy server is Microsoft Proxy Server, produced by Microsoft Corporation.
- the proxy server 502 includes the proxy cache 508 because the proxy system 500 according to the invention can be built using a conventional proxy server suitably modified to include primarily the proxy filter 506 .
- the proxy cache 508 need not be included in the proxy server 502 of the proxy system 500 or if provided can be disabled or used in conjunction with the acceleration server 504 .
- the proxy filter 506 supplies those of the data requests it believes it can accelerate to the acceleration server 504 .
- a data request e.g., World Wide Web page request
- a data request associated with one or more images files is an example of a data request that the proxy filter 506 would believe it could accelerate.
- another common data request would be an image request (e.g., GET image request in HTTP) for a particular image file from a content server via the Internet. The proxy filter 506 would also believe it could accelerate the delivery of such image files.
- the acceleration server 504 includes various components to perform processing operations used in producing and/or supplying an accelerated response to a data request back to the proxy server 502 .
- the major components of the acceleration server 504 are illustrated in FIG. 5 and discussed below.
- An observer 510 receives a data request via the proxy filter 506 .
- the observer 510 examines the data request to identify images associated therewith.
- the acceleration server 504 is operating to accelerate the delivery of images to the browser 404 that made the request for data that is or includes the images.
- the identified images are then forwarded to an image manager 512 .
- the image manager 512 determines whether the desired images are already stored in an image store 514 .
- the image manager 512 can determine those images already stored in the image store 514 using an image store manager 516 .
- the desired images are already stored in the image store 514 when requested by the requesting browser 404 , copies of the desired images are supplied from the image store 514 to the proxy server 502 and then forwarded from the proxy server 502 to the requesting browser 404 .
- the image manager 512 determines that the requested images are not yet stored in the image store 514 , then the images can be obtained directly from the Internet by the image manager 512 using a high speed connection. Once retrieved, the images are evaluated to determine whether they can be accelerated by an accelerator 518 . If the images can be accelerated, then the accelerator 518 produces an accelerated version of the image and stores the accelerated version in the image store 514 .
- the image manager 512 can also store an original version of the image in the image store 514 . Thereafter, the proxy server 502 can return the requested image to the requesting browser 404 in a rapid manner when requested by the requesting browser 404 .
- the response time to the browser 404 is even further improved by the proxy system 500 . Namely, the time to transmit a file (e.g., image file) from the proxy system 500 to one of the browsers 404 is proportional to file size. Therefore, given that the accelerated versions have a smaller size, the accelerated versions can be transmitted to the browsers 404 in a reduced amount of time (i.e., improved response time).
- the acceleration server 504 can take appropriate action to reduce the processing load due to production of accelerated versions so that the overall responsiveness of the proxy system 500 is not hindered even in worst case conditions.
- the image store 514 provides storage for images and provides image data to requesting other components of the proxy system 500 . Additionally, as noted above, the image store 514 is also associated with an image store manager 516 that manages the allocation of slots, the removing of old slots, and provides state management of slots and objects.
- the images stored in the image store 514 include original versions of images that have been retrieved from a content server (e.g., original versions) and accelerated versions of these images. More particularly, within each slot provided in the image store 514 , a collection of information is provided, including HTTP request and response entities, validity information (used to implement HTTP cache coherency algorithms), statistics information, and a collection of related objects (e.g., images). Typically, the collection of related objects includes an original object and one or more accelerated objects. Associated with each object is not only the object data itself but also object state information (e.g., loading, done, etc.).
- object state information e.g., loading, done, etc.
- the image store 514 can operate to provide the following functions: creation of the slot, adding an object to the slot, streaming data to fill an object within a slot, retrieval of an object from a slot, and checking if a slot is within the image store 514 .
- the image store 514 in conjunction with the image store manager 516 can also function to perform validity checking, storage management, and slot and object state management. Normally, to prevent the image store 514 from filling up and remaining full, the slots within the image store 514 should be recycled periodically to manage the space for storage provided by the image store 514 .
- the image store 514 can also maintain and implement a HTTP proxy cache coherency protocol for all images stored in the image store 514 .
- the image store 514 can be created in a number of different ways.
- the image store can be implemented as a proxy cache, a database or a HTTP server with extensions, or some combination of the foregoing.
- the image store 514 can also be accessed by a common standard interface that is usable by the other components of the proxy system 500 .
- the interface is achieved by an image store plug-in (e.g., a DLL or a shared library), and the image store 514 uses a database and a MS PROXY 2.0 to implement the image store 514 .
- One advantage of the invention is that display of the image resulting from the image format conversion appears more like the original image.
- Another advantage of the invention is that the transparency color for those portions of an image intended to be transparent is controllable.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Image Processing (AREA)
Abstract
Description
Claims (19)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/133,514 US6211881B1 (en) | 1998-05-13 | 1998-08-12 | Image format conversion with transparency color adjustment |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US8530998P | 1998-05-13 | 1998-05-13 | |
US09/133,514 US6211881B1 (en) | 1998-05-13 | 1998-08-12 | Image format conversion with transparency color adjustment |
Publications (1)
Publication Number | Publication Date |
---|---|
US6211881B1 true US6211881B1 (en) | 2001-04-03 |
Family
ID=26772554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/133,514 Expired - Lifetime US6211881B1 (en) | 1998-05-13 | 1998-08-12 | Image format conversion with transparency color adjustment |
Country Status (1)
Country | Link |
---|---|
US (1) | US6211881B1 (en) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020123378A1 (en) * | 2001-02-07 | 2002-09-05 | Helen Bucknall | Gaming machine with transparent symbol carriers |
US20020143823A1 (en) * | 2001-01-19 | 2002-10-03 | Stevens Mark A. | Conversion system for translating structured documents into multiple target formats |
US20030043777A1 (en) * | 2001-08-31 | 2003-03-06 | Juha Koponen | Method for optimizing performance in wireless networks |
US20030128235A1 (en) * | 2002-01-10 | 2003-07-10 | International Business Machines Corporation | System for associating graphics frames with events and method therefor |
US20030174896A1 (en) * | 2002-03-12 | 2003-09-18 | Nokia Corporation | Method and apparatus for selecting a format in which to re-encode a quantized image |
US20040083430A1 (en) * | 2002-10-29 | 2004-04-29 | Boonen Paul J. J. | Method and apparatus to process portable document format data containing transparency |
US20040087591A1 (en) * | 1996-11-01 | 2004-05-06 | Garvey David S. | Phosphodiesterase inhibitors and nitric oxide donors, compositions and methods of use |
US6780654B2 (en) | 2002-06-06 | 2004-08-24 | Micron Technology, Inc. | Methods of forming magnetoresistive memory device assemblies |
US20040179712A1 (en) * | 2001-07-24 | 2004-09-16 | Gerrit Roelofsen | Method and sysem and data source for processing of image data |
US6825852B1 (en) * | 2000-05-16 | 2004-11-30 | Adobe Systems Incorporated | Combining images including transparency by selecting color components |
US6850228B1 (en) * | 1999-10-29 | 2005-02-01 | Microsoft Corporation | Universal file format for digital rich ink data |
US20050065999A1 (en) * | 1998-09-01 | 2005-03-24 | Swarup Acharya | Computer implemented method and apparatus for fulfilling a request for information content with a user-selectable version of a file containing that information content |
KR20060003209A (en) * | 2004-07-05 | 2006-01-10 | 삼성전자주식회사 | Image reproducing apparatus and method for adjusting color thereof |
US20070279410A1 (en) * | 2004-05-14 | 2007-12-06 | Tencent Technology (Shenzhen) Company Limited | Method For Synthesizing Dynamic Virtual Figures |
US20100023555A1 (en) * | 2008-07-16 | 2010-01-28 | Macaskill Don | System and method for associating a file with one or more other files in an online storage system |
US20130002827A1 (en) * | 2011-06-30 | 2013-01-03 | Samsung Electronics Co., Ltd. | Apparatus and method for capturing light field geometry using multi-view camera |
US9865230B2 (en) | 2012-07-02 | 2018-01-09 | Microsoft Technology Licensing, Llc | Animated visualization of alpha channel transparency |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US5848415A (en) * | 1996-12-18 | 1998-12-08 | Unisys Corporation | Selective multiple protocol transport and dynamic format conversion in a multi-user network |
US6057842A (en) * | 1997-03-10 | 2000-05-02 | Quickbuy, Inc. | Display layout generator for graphical representations |
US6061696A (en) * | 1997-04-28 | 2000-05-09 | Computer Associates Think, Inc. | Generating multimedia documents |
US6067571A (en) * | 1996-07-23 | 2000-05-23 | Canon Kabushiki Kaisha | Server, terminal and control method for transmitting real-time images over the internet |
US6073168A (en) * | 1996-06-03 | 2000-06-06 | Webtv Networks, Inc. | Method for reducing delivery latency of an image or other secondary information associated with a file |
-
1998
- 1998-08-12 US US09/133,514 patent/US6211881B1/en not_active Expired - Lifetime
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US6073168A (en) * | 1996-06-03 | 2000-06-06 | Webtv Networks, Inc. | Method for reducing delivery latency of an image or other secondary information associated with a file |
US6067571A (en) * | 1996-07-23 | 2000-05-23 | Canon Kabushiki Kaisha | Server, terminal and control method for transmitting real-time images over the internet |
US5848415A (en) * | 1996-12-18 | 1998-12-08 | Unisys Corporation | Selective multiple protocol transport and dynamic format conversion in a multi-user network |
US6057842A (en) * | 1997-03-10 | 2000-05-02 | Quickbuy, Inc. | Display layout generator for graphical representations |
US6061696A (en) * | 1997-04-28 | 2000-05-09 | Computer Associates Think, Inc. | Generating multimedia documents |
Non-Patent Citations (11)
Title |
---|
"All About GIF89a", www.ecafe.org/tools/gifanim/gifabout.htm, (downloaded May 7, 1998). |
"GIF Grammar", pp. 1-2. |
"Microsoft Announces Proxy Server 2.0", Microsoft Corporation (www.microsoft.com/corpinfo/press/1997/oct97/proxy2pr.htm), Oct. 8, 1997. |
"Microsoft Proxy Server 1.0", Microsoft Corporation (www.microsoft.com/products/prodrfe/130_ov.htm). |
"Microsoft Proxy Server 2.0; What's New ", Microsoft Corporation (www.microsoft.com/proxy/guide/whatsnew:asp?a=2&B=1). |
"WinGate 2.1 is Officially Released", www.wingate.net, 1997. |
"WinGate Opens the Internet Door", LAN Times (www.lanstimes.com/97/97jan/701b066a.html), Jan. 1997. |
Graphics Interchange Format (GIF) Standard, (www.ecafe.org/tools/gifanim/gif87a.txt) Jun. 15, 1997. |
Graphics Interchange Format (GIF), Version 89a, CompuServe Incorporated, Jul. 31, 1990. |
Microsoft Proxy Server 2.0; Technical Papers, Cache Array Routing Protocol (CARP) Whitepaper, Microsoft Corporation (www.microsoft.com/proxy/guide/CarpWP.asp?A=2&B=3). |
R. Fielding et al., "Hypertext Transfer Protocol-HTTP/1.1", HTTP Working Group, Aug. 12, 1996, pp. 1-110. |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040087591A1 (en) * | 1996-11-01 | 2004-05-06 | Garvey David S. | Phosphodiesterase inhibitors and nitric oxide donors, compositions and methods of use |
US7243122B2 (en) * | 1998-09-01 | 2007-07-10 | Lucent Technologies Inc. | Computer implemented method and apparatus for fulfilling a request for information content with a user-selectable version of a file containing that information content |
US20050065999A1 (en) * | 1998-09-01 | 2005-03-24 | Swarup Acharya | Computer implemented method and apparatus for fulfilling a request for information content with a user-selectable version of a file containing that information content |
US6850228B1 (en) * | 1999-10-29 | 2005-02-01 | Microsoft Corporation | Universal file format for digital rich ink data |
US6825852B1 (en) * | 2000-05-16 | 2004-11-30 | Adobe Systems Incorporated | Combining images including transparency by selecting color components |
US20020143823A1 (en) * | 2001-01-19 | 2002-10-03 | Stevens Mark A. | Conversion system for translating structured documents into multiple target formats |
US20070111788A1 (en) * | 2001-02-07 | 2007-05-17 | Helen Bucknall | Gaming machine with transparent symbol carriers |
US8727864B2 (en) * | 2001-02-07 | 2014-05-20 | Aristocrat Technologies Austrualia Pty. Ltd. | Gaming machine with transparent symbol carriers |
US20020123378A1 (en) * | 2001-02-07 | 2002-09-05 | Helen Bucknall | Gaming machine with transparent symbol carriers |
US20040179712A1 (en) * | 2001-07-24 | 2004-09-16 | Gerrit Roelofsen | Method and sysem and data source for processing of image data |
US7177277B2 (en) * | 2001-08-31 | 2007-02-13 | First Hop Oy | Method for optimizing performance in wireless networks |
US20030043777A1 (en) * | 2001-08-31 | 2003-03-06 | Juha Koponen | Method for optimizing performance in wireless networks |
US20030128235A1 (en) * | 2002-01-10 | 2003-07-10 | International Business Machines Corporation | System for associating graphics frames with events and method therefor |
US7106908B2 (en) * | 2002-03-12 | 2006-09-12 | Nokia Corporation | Method and apparatus for selecting a format in which to re-encode a quantized image |
US20030174896A1 (en) * | 2002-03-12 | 2003-09-18 | Nokia Corporation | Method and apparatus for selecting a format in which to re-encode a quantized image |
US6780654B2 (en) | 2002-06-06 | 2004-08-24 | Micron Technology, Inc. | Methods of forming magnetoresistive memory device assemblies |
US20040083430A1 (en) * | 2002-10-29 | 2004-04-29 | Boonen Paul J. J. | Method and apparatus to process portable document format data containing transparency |
US20070279410A1 (en) * | 2004-05-14 | 2007-12-06 | Tencent Technology (Shenzhen) Company Limited | Method For Synthesizing Dynamic Virtual Figures |
US10032290B2 (en) * | 2004-05-14 | 2018-07-24 | Tencent Technology (Shenzhen) Company Limited | Method for synthesizing dynamic virtual figures |
KR20060003209A (en) * | 2004-07-05 | 2006-01-10 | 삼성전자주식회사 | Image reproducing apparatus and method for adjusting color thereof |
US20100023555A1 (en) * | 2008-07-16 | 2010-01-28 | Macaskill Don | System and method for associating a file with one or more other files in an online storage system |
US20130002827A1 (en) * | 2011-06-30 | 2013-01-03 | Samsung Electronics Co., Ltd. | Apparatus and method for capturing light field geometry using multi-view camera |
US9865230B2 (en) | 2012-07-02 | 2018-01-09 | Microsoft Technology Licensing, Llc | Animated visualization of alpha channel transparency |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6211881B1 (en) | Image format conversion with transparency color adjustment | |
US7529755B2 (en) | Method for document viewing | |
AU2010202800B2 (en) | Cache system and method for generating uncached objects from cached and stored object components | |
EP1646200B1 (en) | Server based image processing for client display of documents | |
US7418673B2 (en) | Thumbnail image browsing method in an embedded system | |
US10423527B2 (en) | Memory management and image display for mobile devices | |
US6278432B1 (en) | Image delivery and display system | |
US6300959B1 (en) | Method and system condensing animated images | |
US20020186899A1 (en) | Method and computer system for prefetching of images | |
AU2001283542A1 (en) | Cache system and method for generating uncached objects from cached and stored object components | |
WO2003104914A2 (en) | Apparatus and method for sharing digital content of an image across a communication network | |
US20020178176A1 (en) | File prefetch contorol method for computer system | |
JP2000092424A (en) | Image server | |
WO2003041001A1 (en) | Display parameter-dependent pre-transmission processing of image data | |
WO2004012195A2 (en) | Efficient storage of data files received in a non-sequential manner | |
US20100131673A1 (en) | System and method for distributing foveated data in a network | |
US7903119B2 (en) | Compression of image regions according to graphics command type | |
CN114817780A (en) | Picture loading method and device and storage medium | |
US11842143B1 (en) | Techniques for thumbnail and preview generation based on document content | |
US20040215716A1 (en) | System and method for distributing foveated data in a network | |
WO2002003705A2 (en) | Compression system and method for use in a set top box environment | |
JPH09198296A (en) | Image information processing system | |
CN112558849A (en) | Graphic model generation method, device, equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: COMPAQ COMPUTER CORPORATION, TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GABLER, JEFFREY R.;STARNES, DARRELL J.;REEL/FRAME:009392/0158;SIGNING DATES FROM 19980721 TO 19980730 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FEPP | Fee payment procedure |
Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: COMPAQ INFORMATION TECHNOLOGIES GROUP, L.P., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:COMPAQ COMPUTER CORPORATION;REEL/FRAME:012418/0222 Effective date: 20010620 |
|
AS | Assignment |
Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., TEXAS Free format text: CHANGE OF NAME;ASSIGNOR:COMPAQ INFORMATION TECHNOLOGIES GROUP, LP;REEL/FRAME:015000/0305 Effective date: 20021001 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
FEPP | Fee payment procedure |
Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FPAY | Fee payment |
Year of fee payment: 12 |
|
AS | Assignment |
Owner name: PALO ALTO NETWORKS, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.;REEL/FRAME:033557/0327 Effective date: 20130904 |