Claims
- 1. A method for reducing the size of a graphics image in a computer system, comprising:
recording a tile command executed to create a portion of the graphics image in a destination drawable; using said tile command to update a data structure associated with said destination drawable with information; and compressing one or more sub-images of the graphics image using a compression scheme, each of said sub-images having a location, said location and said compression scheme for each of said sub-images chosen based on said information in said data structure.
- 2. The method of claim 1, wherein said data structure associated with said destination drawable identifies the portion of the destination drawable image that was created with a command in a specific class of drawing commands.
- 3. The method of claim 1, further comprising:
transmitting one or more sub-images of the graphics image created using said tile command, for display or storage; and transmitting a sequence of local copy commands to repeat said one or more sub-images.
- 4. The method of claim 1, further comprising:
determining if a region compatible with one or more sub-images of the graphics image created using said tile command already exists on a display; and utilizing said compatible region to display said one or more sub-images of the graphics image created using said tile command if a compatible region already exists on said display.
- 5. The method of claim 3, further comprising:
adding said one or more sub-images of the graphics image created using said tile command to a cache.
- 6. The method of claim 5, further comprising:
determining if an image compatible with one or more sub-images of the graphics image created using said tile command already exists in said cache; and utilizing said compatible image to display said one or more sub-images of the graphics image created using said tile command if a compatible image already exists in said cache.
- 7. The method of claim 2, wherein said data structure associated with said destination drawable is a list of tile regions.
- 8. The method of claim 7, wherein said list of tile regions includes, for each tile region, the height and width of the tile image.
- 9. The method of claim 8, wherein said list of tile regions further includes, for each tile region, the origin point of the tile image.
- 10. The method of claim 9, wherein said list of tile regions further includes, for each tile region, a hash value for the tile image.
- 11. The method of claim 10, wherein said hash value is an MD5 hash value.
- 12. The method of claim 1, wherein said tile command is a command that creates a repeating image.
- 13. A method for reducing the size of a graphics image in a computer system, comprising:
detecting a tile command executed to create a portion of the graphics image in a destination drawable; computing a drawn-to region from said tile command; and adding the drawn-to region to one of one or more tile regions, each of said tile regions corresponding to a repeating image.
- 14. The method of claim 13, further comprising:
compressing said tile image; transmitting said tile image for display or storage; and transmitting a sequence of local copy commands to repeat said tile image.
- 15. The method of claim 13, further comprising:
determining if a region compatible with said tile image already exists on a display; and utilizing said compatible region to display said tile image if a compatible region already exists on said display.
- 16. The method of claim 14, further comprising:
adding said tile image to a cache.
- 17. The method of claim 16, further comprising:
determining if an image compatible with said tile image already exists in said cache; and utilizing said compatible image to display said tile image if a compatible image already exists in said cache.
- 18. The method of claim 13, further comprising subtracting the drawn-to region from one or more existing fill and/or tile images.
- 19. A method for reducing the size of a graphics image in a computer system, comprising:
detecting a tile command executed to create a portion of the graphics image in a pixmap; computing a drawn-to region from said tile command; subtracting the drawn-to region from one or more existing region tags; and adding the drawn-to region to one of one or more tile regions, said tile region corresponding to a repeating image drawn by said tile command.
- 20. The method of claim 19, further comprising:
compressing said tile image; transmitting said tile image for display or storage; and transmitting a sequence of local copy commands to repeat said tile image.
- 21. An apparatus for reducing the size of a graphics image in a computer system, comprising:
a tile command recorder; a data structure updater coupled to said tile command recorder; and an image compressor coupled to said data structure updater.
- 22. An apparatus for reducing the size of a graphics image in a computer system, comprising:
a tile command detector; a drawn-to region computer coupled to said tile command detector; a tile region adder coupled to said drawn-to region computer; and a memory coupled to said tile region adder, said drawn-to region computer, and said tile region adder.
- 23. The apparatus of claim 22, further comprising a drawn-to region to fill and tile region remover coupled to said tile command detector and to said memory.
- 24. The apparatus of claim 22, further comprising:
a tile image transmitter coupled to said memory; and a local copy command transmitter coupled to said tile image transmitter.
- 25. An apparatus for reducing the size of a graphics image in a computer system, comprising:
a tile command detector; a drawn-to region computer coupled to said tile command detector; a tile region adder coupled to said tile command detector and to said drawn-to region computer; a drawn-to region to fill and tile region remover coupled to said tile command detector and to said drawn-to region computer; a drawn-to region to miscellaneous region remover coupled to said tile command detector and to said drawn-to region computer; and a memory coupled to said tile region adder, to said drawn-to region to miscellaneous region remover, and to said drawn-to region to tile region remover.
- 26. The apparatus of claim 25, further comprising:
a tile image transmitter coupled to said memory; and a local copy command transmitter coupled to said tile image transmitter.
- 27. An apparatus for reducing the size of a graphics image in a computer system, comprising:
means for recording a tile command executed to create a portion of the graphics image in a destination drawable; means for using said tile command to update a data structure associated with said destination drawable with information; and means for compressing one or more sub-images of the graphics image using a compression scheme, each of said sub-images having a location, said location and said compression scheme for each of said sub-images chosen based on said information in said data structure.
- 28. The apparatus of claim 27, wherein said data structure associated with said destination drawable identifies the portion of the destination drawable image that was created with a command in a specific class of drawing commands.
- 29. The apparatus of claim 27, further comprising:
means for transmitting one or more sub-images of the graphics image created using said tile command, for display or storage; and means for transmitting a sequence of local copy commands to repeat said one or more sub-images.
- 30. The apparatus of claim 27, further comprising:
means for determining if a region compatible with one or more sub-images of the graphics image created using said tile command already exists on a display; and means for utilizing said compatible region to display said one or more sub-images of the graphics image created using said tile command if a compatible region already exists on said display.
- 31. The apparatus of claim 29, further comprising:
means for adding said one or more sub-images of the graphics image created using said tile command to a cache.
- 32. The apparatus of claim 31, further comprising:
means for determining if an image compatible with one or more sub-images of the graphics image created using said tile command already exists in said cache; and means for utilizing said compatible image to display said one or more sub-images of the graphics image created using said tile command if a compatible image already exists in said cache.
- 33. The apparatus of claim 28, wherein said data structure associated with said destination drawable is a list of tile regions.
- 34. The apparatus of claim 33, wherein said list of tile regions includes, for each tile region, the height and width of the tile image.
- 35. The apparatus of claim 34, wherein said list of tile regions further includes, for each tile regions, the origin point of the tile image.
- 36. The apparatus of claim 35, wherein said list of tile regions further includes, for each tile region, a hash value for the tile image.
- 37. The apparatus of claim 36, wherein said hash value is an MD5 hash value.
- 38. The apparatus of claim 27, wherein said tile command is a command that creates a repeating image.
- 39. An apparatus for reducing the size of a graphics image in a computer system, comprising:
means for detecting a tile command executed to create a portion of the graphics image in a destination drawable; means for computing a drawn-to region from said tile command; and means for adding the drawn-to region to one of one or more tile regions, each of said tile regions corresponding to a repeating image.
- 40. The apparatus of claim 39, further comprising:
means for compressing said tile image; means for transmitting said tile image for display or storage; and means for transmitting a sequence of local copy commands to repeat said tile image.
- 41. The apparatus of claim 39, further comprising:
means for determining if a region compatible with said tile image already exists on a display; and means for utilizing said compatible region to display said tile image if a compatible region already exists on said display.
- 42. The apparatus of claim 40, further comprising:
means for adding said tile image to a cache.
- 43. The apparatus of claim 42, further comprising:
means for determining if an image compatible with said tile image already exists in said cache; and means for utilizing said compatible image to display said tile image if a compatible region already exists in said cache.
- 44. The apparatus of claim 42, further comprising means for subtracting the drawn-to region from one or more existing fill and/or tile images.
- 45. An apparatus for reducing the size of a graphics image in a computer system, comprising:
means for detecting a tile command executed to create a portion of the graphics image in a pixmap; means for computing a drawn-to region from said tile command; means for subtracting the drawn-to region from one or more existing region tags; and means for adding the drawn-to region to one of a tile image, said tile corresponding to a repeating image drawn by said tile command.
- 46. The apparatus of claim 45, further comprising:
means for compressing said tile image; means for transmitting said tile image for display or storage; and means for transmitting a sequence of local copy commands to repeat said tile image.
- 47. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform a method for reducing the size of a graphics image in a computer system, the method comprising:
recording a tile command executed to create a portion of the graphics image in a destination drawable; using said tile command to update a data structure associated with said destination drawable with information; and compressing one or more sub-images of the graphics image using a compression scheme, each of said sub-images having a location, said location and said compression scheme for each of said sub-images chosen based on said information in said data structure.
- 48. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform a method for reducing the size of a graphics image in a computer system, the method comprising:
detecting a tile command executed to create a portion of the graphics image in a destination drawable; computing a drawn-to region from said tile command; and adding the drawn-to region to one of one or more tile regions, each of said tile regions corresponding to a repeating image.
- 49. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform a method for reducing the size of a graphics image in a computer system, the method comprising:
detecting a tile command executed to create a portion of the graphics image in a pixmap; computing a drawn-to region from said tile command; subtracting the drawn-to region from one or more existing region tags; and adding the drawn-to region to one of one or more tile regions, said tile region corresponding to a repeating image drawn by said tile command.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] The present application is a continuation-in-part of co-pending application Ser. No. 10/247,907, filed on Sep. 20, 2002, by Thomas G. O'Neill and Jordan M. Slott, entitled “TAGGING SINGLE-COLOR IMAGES FOR IMPROVED COMPRESSION”, attorney docket no. SUN-P7083, which is a continuation in part of co-pending application Ser. no. 10/194,123, filed on Jul. 11, 2002, by Thomas G. O'Neill and Jordan M. Slott, entitled “TAGGING MULTICOLOR IMAGES FOR IMPROVED COMPRESSION”, attorney docket no. SUN-P7082.
Continuation in Parts (2)
|
Number |
Date |
Country |
Parent |
10247907 |
Sep 2002 |
US |
Child |
10385759 |
Mar 2003 |
US |
Parent |
10194123 |
Jul 2002 |
US |
Child |
10247907 |
Sep 2002 |
US |