CA2714865C - Color printer technology - Google Patents
Color printer technology Download PDFInfo
- Publication number
- CA2714865C CA2714865C CA2714865A CA2714865A CA2714865C CA 2714865 C CA2714865 C CA 2714865C CA 2714865 A CA2714865 A CA 2714865A CA 2714865 A CA2714865 A CA 2714865A CA 2714865 C CA2714865 C CA 2714865C
- Authority
- CA
- Canada
- Prior art keywords
- color
- image object
- inks
- printer
- original
- 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.)
- Active
Links
- 238000005516 engineering process Methods 0.000 title description 2
- 238000000034 method Methods 0.000 claims abstract description 33
- 238000007639 printing Methods 0.000 claims abstract description 31
- 239000003086 colorant Substances 0.000 claims description 30
- 238000005299 abrasion Methods 0.000 claims description 3
- 239000000976 ink Substances 0.000 claims 46
- 238000004891 communication Methods 0.000 abstract description 28
- 206010010099 Combined immunodeficiency Diseases 0.000 description 32
- 239000000047 product Substances 0.000 description 21
- 230000006870 function Effects 0.000 description 11
- 230000008685 targeting Effects 0.000 description 10
- 238000001360 collision-induced dissociation Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- LZDYZEGISBDSDP-UHFFFAOYSA-N 2-(1-ethylaziridin-1-ium-1-yl)ethanol Chemical compound OCC[N+]1(CC)CC1 LZDYZEGISBDSDP-UHFFFAOYSA-N 0.000 description 1
- 108010068977 Golgi membrane glycoproteins Proteins 0.000 description 1
- 101150012828 UPC2 gene Proteins 0.000 description 1
- 239000006227 byproduct Substances 0.000 description 1
- 208000018747 cerebellar ataxia with neuropathy and bilateral vestibular areflexia syndrome Diseases 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000007688 edging Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013213 extrapolation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 235000011868 grain product Nutrition 0.000 description 1
- 230000002209 hydrophobic effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000031700 light absorption Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- SUTJFACQYOCLNG-UHFFFAOYSA-N methyl 6-[[2-[9a-[2-[(2-methoxycarbonyl-3,3-dimethyl-7-oxo-4-thia-1-azabicyclo[3.2.0]heptan-6-yl)amino]-2-oxoethyl]-7-oxo-5a,6-dihydrodibenzofuran-3-yl]acetyl]amino]-3,3-dimethyl-7-oxo-4-thia-1-azabicyclo[3.2.0]heptane-2-carboxylate Chemical compound C1=C2OC3CC(=O)C=CC3(CC(=O)NC3C(N4C(C(C)(C)SC43)C(=O)OC)=O)C2=CC=C1CC(=O)NC(C1=O)C2N1C(C(=O)OC)C(C)(C)S2 SUTJFACQYOCLNG-UHFFFAOYSA-N 0.000 description 1
- 239000008267 milk Substances 0.000 description 1
- 210000004080 milk Anatomy 0.000 description 1
- 235000013336 milk Nutrition 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000000049 pigment Substances 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Color Image Communication Systems (AREA)
- Record Information Processing For Printing (AREA)
- Ink Jet (AREA)
Abstract
The invention provides a method of printing at a POS of register receipts and marketing information in which the required network bandwidth and quantity of ink are both reduced. SVG files are used to specify communications, associated modified image objects are stored locally to the POS, and associated modified image objects are modified version of original objects in which color values are replaced with other color values that result in the same print image, but with printing of less ink.
Description
1 TITLE: COLOR PRINTER TECHNOLOGY
2
3 FIELD OF THE INVENTION
4 This invention is directed to color printing at the Point Of Sale (POS).
7 Herein, RS is an acronym for retail store.
8 Herein, ID is an acronym for identification.
9 Herein, CS is an acronym for computer system.
Herein, POS is an acronym for point of sale.
11 Herein, SVG is an acronym for scalable vector graphics. Scalable Vector Graphics 12 (SVG) is an XML markup language for describing two-dimensional vector graphics, both 13 static and animated, and either declarative or scripted. It is an open standard created by the 14 World Wide Web Consortium.
Herein, SVG means any XML markup language for describing two-dimensional 16 vector graphics.
17 Herein, CID is an acronym for a customer identification.
18 Scalable Vector Graphics 19 Scalable Vector Graphics (SVG) is an XML markup language for describing two-dimensional vector graphics, both static and animated, and either declarative or scripted.
21 It is an open standard created by the World Wide Web Consortium. SVG allows three types 22 of graphic objects: Vector graphic shapes (e.g. paths consisting of straight lines and curves, 23 and areas bounded by them); Raster graphics images / digital images; and text. Graphical 24 objects can be grouped, styled, transformed and composited into previously rendered objects.
Text can be in any XML namespace suitable to the application, which enhances searchability 26 and accessibility of the SVG graphics. The feature set includes nested transformations, 27 clipping paths, alpha masks, filter effects, template objects and extensibility. SVG drawings 28 can be dynamic and interactive. The Document Object Model (DOM) for SVG, which 29 includes the full XML DOM, allows straightforward and efficient vector graphics animation via ECMA Script or SMIL. A rich set of event handlers such as "mouseover" and "onclick"
31 can be assigned to any SVG graphical object. Because of its compatibility and leveraging of 1 other Web standards, features like scripting can be done on SVG elements and other XML
2 elements from different namespaces simultaneously within the same web page.
SVG images 3 can be saved with gzip compression, in which case they may be called "SVGZ
files".
4 Color Mapping The RGB color model is an additive model in which red, green and blue (often used in 6 additive light models) are combined in various ways to reproduce other colors. The name of 7 the model and the abbreviation "RGB" come from the three primary colors, Red, Green and 8 Blue.
9 CMYK (sometimes spelled YMCK or CYM) is a subtractive color model used in color printing. This color model is based on mixing pigments of the following colors in order 11 to make other colors: C=cyan; M=magenta; Y=yellow; K=key (black). The mixture of ideal 12 CMY colors is subtractive (cyan, magenta, and yellow printed together on white result in 13 black). CMYK works through light absorption. The colors that are seen are from the part of 14 light that is not absorbed. In CMYK, magenta plus yellow produces red, magenta plus cyan makes blue and cyan plus yellow generates green.
16 Color models do not define what is meant by each color, and the results of mixing 17 them are not exact unless the exact spectral make-up of the colors are defined. The color 18 model then becomes an absolute color space, such as sRGB or Adobe RGB. An absolute 19 color space is a color space in which colors are unambiguous, where they do not depend on any external factors. A popular way to make a color space like RGB into an absolute color is 21 to define an ICC profile, which contains the attributes of the RGB. This is not the only way to 22 express an absolute color, but it is the standard in many industries. RGB
colors defined by 23 widely accepted profiles include sRGB and Adobe RGB. The process of adding an ICC
24 profile to a graphic or document is sometimes called tagging; tagging therefore marks the absolute meaning of colors in that graphic or document. The International Color Consortium 26 (CCC) was formed in 1993 by eight industry vendors in order to create a universal color 27 management system that would function transparently across all operating systems and 28 software packages.
29 sRGB color space, or standard RGB (Red Green Blue), is an RGB color space created cooperatively by Hewlett-Packard and Microsoft Corporation. It has been endorsed by the 31 W3C, Exif, Intel, Pantone, Corel, and many other industry players. It is also well accepted by 1 Open Source software such as the GIMP, and is used in proprietary and open graphics file 2 formats such as SVG.
3 sRGB defines the red, green, and blue primaries as colors where one of the three 4 channels is at the maximum value and the other two are at zero. In CIE xy chromaticity coordinates red is at [0.6400, 0.3300], green at [0.3000, 0.6000] and blue is at [0.1500, 6 0.0600] and the white point is the D65 white point at [0.3127,0.3290]. sRGB
has been 7 criticized for poor placement of these primary colors. If you restrict the indexes to the 0-to-1 8 range you are unable to address outside the gamut (the triangle produced by them), which is 9 well inside the set of visible colors to a human.
sRGB also defines a non-linear transformation between the intensity of these 11 primaries and the actual number stored. The curve is similar to the gamma response of a CRT
12 display. It is more important to replicate this curve than the primaries to get correct display of 13 an sRGB image. This non-linear conversion means that sRGB is a reasonably efficient use of 14 the values in an integer-based image file to display human-discernable light levels.
The ICC specification allows for fidelity of color when moved between applications 16 and operating systems, from the point of creation to the final print. The main emphasis of the 17 ICC is to define a format for ICC Profiles, which describe the color attributes of a particular 18 device or viewing requirement by defining a mapping between the source or target color 19 space and a profile connection space (PCS). This PCS is either L*a*b* or CIE XYZ color space. Mappings may be done using tables, to which interpolation is applied, or through a 21 series of parameters for transformations.
22 To see how this works in practice, suppose we have a particular RGB and CMYK
23 color space, and want to convert from this RGB to that CMYK. The first step is to obtain the 24 two ICC profiles concerned. To perform the conversion, each RGB triplet R,G,B is first converted to the PCS using the RGB profile. If necessary the PCS is converted between 26 L*a*b* and CIE XYZ, a well defined transformation. Then the PCS is converted to the four 27 values of C,M,Y,K required. Formula for converting from RGB to CMYK colors are well 28 known. See for example the conversion formula specified at 29 http://en.wikipedia.org/wiki/CMYK color model.
Color printers and printer media 31 Ink from a color printer is typically shot at the paper, propelled to the paper, in shots.
1 Each shot of ink of the same color has the same volume of ink. Thus, shots and volume of 2 ink are synonymous. Color printer drivers typically render print files to a flat file for printing.
4 Thus, printer driver software would render a single flat print file from an SVG file and the multiple image files the SVG file referenced.
6 Printers print to sheet or tape material, typically a paper. These materials have the 7 following quantifiable properties: basis weight; caliper; thickness;
density; tensile strength;
8 smoothness; brightness / whiteness; gloss; opacity; tearing strength;
porosity; air permeance;
9 elasticity; ink bleed; and abrasion. These quantities may characterize, amongst other things, hydrophilic versus hydrophobic properties, fiber orientation, density, and composition.
11 Most color printers print based upon a CMYK standard, and they internally convert 12 image data in RGB format to a CMYK format prior to printing. Most if not all color printer 13 drivers do not now incorporate the SVG standard, that is, they do not render SVG files.
Objects of the Invention 16 It is one object of the invention to reduce the amount of ink used to print certain 17 image objects.
18 It is another object of the invention to reduce the amount of network data transfer 19 required to print marketing information at the POS.
It is another object of the invention to provide color printing of purchase transaction 21 information and marketing information at the POS.
22 Brief Description of the Drawings 23 Fig. 1 is a schematic view of a network computer system 1;
24 Fig. 2 is a schematic view of an embodiment of local computer system of Fig. 1;
Fig. 3 is schematic of a data structure included in central CS database 1 OA;
26 Fig. 4 is a schematic of a data structure included in POS computer database 20A;
27 Fig. 5 a schematic of a data structure included in incentive computer database 30A;
28 Fig. 6 a schematic of a data structure included in POS color printer database 40A; and 29 Fig. 7 is a flow chart showing an overview of a method of use of network CS
1.
Brief Summary of the Invention 31 These and other objects are provided by a novel network computer system, including a 1 central CS remote from a RS, a local CS local to the RS, and a POS color printer in the RS.
2 A database of image object files is stored local to the RS. A database of SVG files is stored 3 by the central CS. At least one of the SVG files references an image object in the image 4 objects database. Each such SVG file defines vector locations and sizes (scale) for the image objects it references. Each such SVG file and the files it references defines data necessary to 6 print a corresponding marketing communication.
7 The central CS transmits in association with a CID at least one SVG file to the local 8 CS. When the local CS subsequently recognizes a purchase transaction is occurring that 9 involves that CID, the local CS employs the SVG file associated with the CID
to print the corresponding marketing communication along with the register receipt for the purchase 11 transaction.
12 The central CS preferably also stores the image object database or library including 13 version of the image objects, versions of each SVG file, and the latest version information for 14 versions to be sent to each RS. Each RS may receive different image objects, SVG files, and versions thereof. The central CS generates and transmits to each local CS
image object files 16 database updates for image object versions the corresponding RS will need to print new or 17 updated SVG files referencing those new or updated image objects.
18 The image objects database would for example include background image field files, 19 such as various color field files, that are image field components of potentially more than one coupon defined using a SVG file. For example all coupons for all products of a specified 21 manufacturer may use a certain background image file.
22 The central CS implements rules to determine marketing communications to associate 23 with each CID. The central CS associates the corresponding SVG files with the CID. Image 24 object files referenced by the SVG files are stored in the local CS of the retail store.
Recognition of the CID in a transaction at the local store results in a POS
color printer 26 printing the marketing communication based upon the SVG file associated with that CID.
27 Ink used in color printing is minimized by printing only the minimum number of ink 28 shots of the various colors (Cyan, Magenta, Yellow, and optionally Black) required to result 29 in a print have that desired color. Typically, the four different ink colors are used to generate a print color by shooting shots of each color of ink at paper. Printer driver software typically 31 instructs the printer to shoot more shots of each color of ink than the minimum number of ink
7 Herein, RS is an acronym for retail store.
8 Herein, ID is an acronym for identification.
9 Herein, CS is an acronym for computer system.
Herein, POS is an acronym for point of sale.
11 Herein, SVG is an acronym for scalable vector graphics. Scalable Vector Graphics 12 (SVG) is an XML markup language for describing two-dimensional vector graphics, both 13 static and animated, and either declarative or scripted. It is an open standard created by the 14 World Wide Web Consortium.
Herein, SVG means any XML markup language for describing two-dimensional 16 vector graphics.
17 Herein, CID is an acronym for a customer identification.
18 Scalable Vector Graphics 19 Scalable Vector Graphics (SVG) is an XML markup language for describing two-dimensional vector graphics, both static and animated, and either declarative or scripted.
21 It is an open standard created by the World Wide Web Consortium. SVG allows three types 22 of graphic objects: Vector graphic shapes (e.g. paths consisting of straight lines and curves, 23 and areas bounded by them); Raster graphics images / digital images; and text. Graphical 24 objects can be grouped, styled, transformed and composited into previously rendered objects.
Text can be in any XML namespace suitable to the application, which enhances searchability 26 and accessibility of the SVG graphics. The feature set includes nested transformations, 27 clipping paths, alpha masks, filter effects, template objects and extensibility. SVG drawings 28 can be dynamic and interactive. The Document Object Model (DOM) for SVG, which 29 includes the full XML DOM, allows straightforward and efficient vector graphics animation via ECMA Script or SMIL. A rich set of event handlers such as "mouseover" and "onclick"
31 can be assigned to any SVG graphical object. Because of its compatibility and leveraging of 1 other Web standards, features like scripting can be done on SVG elements and other XML
2 elements from different namespaces simultaneously within the same web page.
SVG images 3 can be saved with gzip compression, in which case they may be called "SVGZ
files".
4 Color Mapping The RGB color model is an additive model in which red, green and blue (often used in 6 additive light models) are combined in various ways to reproduce other colors. The name of 7 the model and the abbreviation "RGB" come from the three primary colors, Red, Green and 8 Blue.
9 CMYK (sometimes spelled YMCK or CYM) is a subtractive color model used in color printing. This color model is based on mixing pigments of the following colors in order 11 to make other colors: C=cyan; M=magenta; Y=yellow; K=key (black). The mixture of ideal 12 CMY colors is subtractive (cyan, magenta, and yellow printed together on white result in 13 black). CMYK works through light absorption. The colors that are seen are from the part of 14 light that is not absorbed. In CMYK, magenta plus yellow produces red, magenta plus cyan makes blue and cyan plus yellow generates green.
16 Color models do not define what is meant by each color, and the results of mixing 17 them are not exact unless the exact spectral make-up of the colors are defined. The color 18 model then becomes an absolute color space, such as sRGB or Adobe RGB. An absolute 19 color space is a color space in which colors are unambiguous, where they do not depend on any external factors. A popular way to make a color space like RGB into an absolute color is 21 to define an ICC profile, which contains the attributes of the RGB. This is not the only way to 22 express an absolute color, but it is the standard in many industries. RGB
colors defined by 23 widely accepted profiles include sRGB and Adobe RGB. The process of adding an ICC
24 profile to a graphic or document is sometimes called tagging; tagging therefore marks the absolute meaning of colors in that graphic or document. The International Color Consortium 26 (CCC) was formed in 1993 by eight industry vendors in order to create a universal color 27 management system that would function transparently across all operating systems and 28 software packages.
29 sRGB color space, or standard RGB (Red Green Blue), is an RGB color space created cooperatively by Hewlett-Packard and Microsoft Corporation. It has been endorsed by the 31 W3C, Exif, Intel, Pantone, Corel, and many other industry players. It is also well accepted by 1 Open Source software such as the GIMP, and is used in proprietary and open graphics file 2 formats such as SVG.
3 sRGB defines the red, green, and blue primaries as colors where one of the three 4 channels is at the maximum value and the other two are at zero. In CIE xy chromaticity coordinates red is at [0.6400, 0.3300], green at [0.3000, 0.6000] and blue is at [0.1500, 6 0.0600] and the white point is the D65 white point at [0.3127,0.3290]. sRGB
has been 7 criticized for poor placement of these primary colors. If you restrict the indexes to the 0-to-1 8 range you are unable to address outside the gamut (the triangle produced by them), which is 9 well inside the set of visible colors to a human.
sRGB also defines a non-linear transformation between the intensity of these 11 primaries and the actual number stored. The curve is similar to the gamma response of a CRT
12 display. It is more important to replicate this curve than the primaries to get correct display of 13 an sRGB image. This non-linear conversion means that sRGB is a reasonably efficient use of 14 the values in an integer-based image file to display human-discernable light levels.
The ICC specification allows for fidelity of color when moved between applications 16 and operating systems, from the point of creation to the final print. The main emphasis of the 17 ICC is to define a format for ICC Profiles, which describe the color attributes of a particular 18 device or viewing requirement by defining a mapping between the source or target color 19 space and a profile connection space (PCS). This PCS is either L*a*b* or CIE XYZ color space. Mappings may be done using tables, to which interpolation is applied, or through a 21 series of parameters for transformations.
22 To see how this works in practice, suppose we have a particular RGB and CMYK
23 color space, and want to convert from this RGB to that CMYK. The first step is to obtain the 24 two ICC profiles concerned. To perform the conversion, each RGB triplet R,G,B is first converted to the PCS using the RGB profile. If necessary the PCS is converted between 26 L*a*b* and CIE XYZ, a well defined transformation. Then the PCS is converted to the four 27 values of C,M,Y,K required. Formula for converting from RGB to CMYK colors are well 28 known. See for example the conversion formula specified at 29 http://en.wikipedia.org/wiki/CMYK color model.
Color printers and printer media 31 Ink from a color printer is typically shot at the paper, propelled to the paper, in shots.
1 Each shot of ink of the same color has the same volume of ink. Thus, shots and volume of 2 ink are synonymous. Color printer drivers typically render print files to a flat file for printing.
4 Thus, printer driver software would render a single flat print file from an SVG file and the multiple image files the SVG file referenced.
6 Printers print to sheet or tape material, typically a paper. These materials have the 7 following quantifiable properties: basis weight; caliper; thickness;
density; tensile strength;
8 smoothness; brightness / whiteness; gloss; opacity; tearing strength;
porosity; air permeance;
9 elasticity; ink bleed; and abrasion. These quantities may characterize, amongst other things, hydrophilic versus hydrophobic properties, fiber orientation, density, and composition.
11 Most color printers print based upon a CMYK standard, and they internally convert 12 image data in RGB format to a CMYK format prior to printing. Most if not all color printer 13 drivers do not now incorporate the SVG standard, that is, they do not render SVG files.
Objects of the Invention 16 It is one object of the invention to reduce the amount of ink used to print certain 17 image objects.
18 It is another object of the invention to reduce the amount of network data transfer 19 required to print marketing information at the POS.
It is another object of the invention to provide color printing of purchase transaction 21 information and marketing information at the POS.
22 Brief Description of the Drawings 23 Fig. 1 is a schematic view of a network computer system 1;
24 Fig. 2 is a schematic view of an embodiment of local computer system of Fig. 1;
Fig. 3 is schematic of a data structure included in central CS database 1 OA;
26 Fig. 4 is a schematic of a data structure included in POS computer database 20A;
27 Fig. 5 a schematic of a data structure included in incentive computer database 30A;
28 Fig. 6 a schematic of a data structure included in POS color printer database 40A; and 29 Fig. 7 is a flow chart showing an overview of a method of use of network CS
1.
Brief Summary of the Invention 31 These and other objects are provided by a novel network computer system, including a 1 central CS remote from a RS, a local CS local to the RS, and a POS color printer in the RS.
2 A database of image object files is stored local to the RS. A database of SVG files is stored 3 by the central CS. At least one of the SVG files references an image object in the image 4 objects database. Each such SVG file defines vector locations and sizes (scale) for the image objects it references. Each such SVG file and the files it references defines data necessary to 6 print a corresponding marketing communication.
7 The central CS transmits in association with a CID at least one SVG file to the local 8 CS. When the local CS subsequently recognizes a purchase transaction is occurring that 9 involves that CID, the local CS employs the SVG file associated with the CID
to print the corresponding marketing communication along with the register receipt for the purchase 11 transaction.
12 The central CS preferably also stores the image object database or library including 13 version of the image objects, versions of each SVG file, and the latest version information for 14 versions to be sent to each RS. Each RS may receive different image objects, SVG files, and versions thereof. The central CS generates and transmits to each local CS
image object files 16 database updates for image object versions the corresponding RS will need to print new or 17 updated SVG files referencing those new or updated image objects.
18 The image objects database would for example include background image field files, 19 such as various color field files, that are image field components of potentially more than one coupon defined using a SVG file. For example all coupons for all products of a specified 21 manufacturer may use a certain background image file.
22 The central CS implements rules to determine marketing communications to associate 23 with each CID. The central CS associates the corresponding SVG files with the CID. Image 24 object files referenced by the SVG files are stored in the local CS of the retail store.
Recognition of the CID in a transaction at the local store results in a POS
color printer 26 printing the marketing communication based upon the SVG file associated with that CID.
27 Ink used in color printing is minimized by printing only the minimum number of ink 28 shots of the various colors (Cyan, Magenta, Yellow, and optionally Black) required to result 29 in a print have that desired color. Typically, the four different ink colors are used to generate a print color by shooting shots of each color of ink at paper. Printer driver software typically 31 instructs the printer to shoot more shots of each color of ink than the minimum number of ink
5 1 shots of the various colors required to result in a print of a specified color.
2 The minimum number of ink shots of each color that results in a particular print color 3 (herein after referred to as the minimum number of ink shots) may depend upon printer driver 4 software, printer brand, printer paper properties, and classification of the image object's properties including whether it is background, foreground, text, and quantification of the
2 The minimum number of ink shots of each color that results in a particular print color 3 (herein after referred to as the minimum number of ink shots) may depend upon printer driver 4 software, printer brand, printer paper properties, and classification of the image object's properties including whether it is background, foreground, text, and quantification of the
6 image object in print dimensions including length in x and y coordinates and total area.
7 As an example, assume a digital representation of a dark magenta background may
8 indicate particular conventional color ink jet printer driver to use 20 ink shots per pixel. The
9 minimum number of ink shots required to produce that color in print is determined, by examination of color of printed matter, for text to be only 5 magenta ink shots, in small cross 11 section foreground material to be only 8 magenta ink shots, and in large area canvass 12 background to be only 12 magenta ink shots.
13 The invention provides for generating a modified image object instead of an original 14 image object, and then printing the modified image object, so that only the minimum number of ink shots are used for each point in the print to achieve the specified print color. The 16 modified image object contains data defining each original color in the original image object 17 with data defining a modified color. The data defining the modified color is data that results 18 in printer driver software printing the minimum number of ink shots that result in print of the 19 original color, or a number of ink shots of each color nearly equal to the minimum number of ink shots that result in print of the original color.
21 Returning to the example, the invention provides a modified image object background 22 that replaces the original magenta color data with data for a lighter shade of magenta that will 23 result printing only the 12 magenta ink shots per pixel required to reproduce the desired print 24 color.
Not all combinations of shots of cyan, magenta, yellow, and black exist as colors in a 26 color map. It may be that some sets of minimum number of ink shots does not exactly 27 correspond to colors. In that case, a color whose set of ink shots is most nearly equal to the 28 set of minimum number of ink shots may be selected to correspond thereto.
Most nearly 29 equal may be determined for example by choosing the color having the smallest least squares value of the differences of the number of ink shots for CYMK in the set of minimum number 31 of ink shots and the set of ink shots associated with each color in the CYMK color space.
1 The minimum number of CMYK ink shots may be determined for a set of measured 2 colors. An interpolation and/or extrapolation of the minimum number of ink shots from the 3 set of measured colors may then be used to determine a minimum number of ink shots for all 4 colors in the color space. The presently preferred color is an RGB color space that has 256,000 digital color definitions, each for a different color. A color in the color space (that is, 6 a digital representation of a color) nearly equal to the minimum number of ink shots may be 7 selected in various ways. For example, the color may be selected by determining which color 8 in the color space has the minimum least squares difference to the color in the color space 9 specified by the minimum number of ink shots, and selecting that color.
Since most color printers print based upon CMYK software must convert the RGB datum to CMYK
datum at 11 or prior to transmission of data to the printer. Current printers typically perform this RGB to 12 CMYK conversion internally. Thus, it is sufficient to define colors in RGB
that correspond 13 to minimum number of ink shots for an original image object digitally defined in an RGB
14 color space.
The foregoing image object database or library is formed by starting with a set of 16 original image objects (preferably represented using RGB) and generating modified image 17 objects (preferably represented using RGB) as specified above. For each original image 18 object, there may be a plurality of modified image objects or versions, each of which is 19 associated with meta data. The meta data may define a corresponding paper properties or paper type, printer type, print driver, dimensions and z position of the image object. (Thus, 21 each original object may be associated with a set of original image object files each of which 22 differs in one or more of the associated properties.) The central CS tracks SVG files 23 specifying marketing communication markup data, associated with each RS, determines what 24 subset of the image objects database that RS requires to print its SVG
files, and transmits that subset of image objects to that RS's local CS.
26 The inventors have found that the minimum number of ink shots required to print a 27 large area may exceed the number of ink shots required to print the same color to a small 28 area, and the minimum number of ink shots required to print lighter colors exceeds the 29 minimum number of ink shots to print darker colors.
The image objects in the image objects database are components of images included 31 in marketing communications printed at the POS. The marketing communications may be 1 coupons. The marketing communications may include image elements for manufacturer logs, 2 brand logos, product logos, product pictures, backgrounds, highlights, watermarks, and 3 coupon or communication borders such as peripheral regions of rectangles.
4 The amount of ink required depends in part upon the lateral (in the plane of the paper) bleed of ink - how far it spreads. Hence, one obvious variation would be to skip 6 printing at certain pixels, such as alternate pixels, if lateral bleed in a specified paper were 7 sufficient so that ink from alternate pixels would merge in the paper to reproduce the desired 8 color at the non printed pixel locations. In conjunction with that, printing could optionally 9 include all edge pixels, to prevent fuzzy edging. Finally, black ink for printing bar codes could be replaced by printing bars in blue or blue and black.
13 Fig. 1 schematically shows computer network system 1 including central CS
13 The invention provides for generating a modified image object instead of an original 14 image object, and then printing the modified image object, so that only the minimum number of ink shots are used for each point in the print to achieve the specified print color. The 16 modified image object contains data defining each original color in the original image object 17 with data defining a modified color. The data defining the modified color is data that results 18 in printer driver software printing the minimum number of ink shots that result in print of the 19 original color, or a number of ink shots of each color nearly equal to the minimum number of ink shots that result in print of the original color.
21 Returning to the example, the invention provides a modified image object background 22 that replaces the original magenta color data with data for a lighter shade of magenta that will 23 result printing only the 12 magenta ink shots per pixel required to reproduce the desired print 24 color.
Not all combinations of shots of cyan, magenta, yellow, and black exist as colors in a 26 color map. It may be that some sets of minimum number of ink shots does not exactly 27 correspond to colors. In that case, a color whose set of ink shots is most nearly equal to the 28 set of minimum number of ink shots may be selected to correspond thereto.
Most nearly 29 equal may be determined for example by choosing the color having the smallest least squares value of the differences of the number of ink shots for CYMK in the set of minimum number 31 of ink shots and the set of ink shots associated with each color in the CYMK color space.
1 The minimum number of CMYK ink shots may be determined for a set of measured 2 colors. An interpolation and/or extrapolation of the minimum number of ink shots from the 3 set of measured colors may then be used to determine a minimum number of ink shots for all 4 colors in the color space. The presently preferred color is an RGB color space that has 256,000 digital color definitions, each for a different color. A color in the color space (that is, 6 a digital representation of a color) nearly equal to the minimum number of ink shots may be 7 selected in various ways. For example, the color may be selected by determining which color 8 in the color space has the minimum least squares difference to the color in the color space 9 specified by the minimum number of ink shots, and selecting that color.
Since most color printers print based upon CMYK software must convert the RGB datum to CMYK
datum at 11 or prior to transmission of data to the printer. Current printers typically perform this RGB to 12 CMYK conversion internally. Thus, it is sufficient to define colors in RGB
that correspond 13 to minimum number of ink shots for an original image object digitally defined in an RGB
14 color space.
The foregoing image object database or library is formed by starting with a set of 16 original image objects (preferably represented using RGB) and generating modified image 17 objects (preferably represented using RGB) as specified above. For each original image 18 object, there may be a plurality of modified image objects or versions, each of which is 19 associated with meta data. The meta data may define a corresponding paper properties or paper type, printer type, print driver, dimensions and z position of the image object. (Thus, 21 each original object may be associated with a set of original image object files each of which 22 differs in one or more of the associated properties.) The central CS tracks SVG files 23 specifying marketing communication markup data, associated with each RS, determines what 24 subset of the image objects database that RS requires to print its SVG
files, and transmits that subset of image objects to that RS's local CS.
26 The inventors have found that the minimum number of ink shots required to print a 27 large area may exceed the number of ink shots required to print the same color to a small 28 area, and the minimum number of ink shots required to print lighter colors exceeds the 29 minimum number of ink shots to print darker colors.
The image objects in the image objects database are components of images included 31 in marketing communications printed at the POS. The marketing communications may be 1 coupons. The marketing communications may include image elements for manufacturer logs, 2 brand logos, product logos, product pictures, backgrounds, highlights, watermarks, and 3 coupon or communication borders such as peripheral regions of rectangles.
4 The amount of ink required depends in part upon the lateral (in the plane of the paper) bleed of ink - how far it spreads. Hence, one obvious variation would be to skip 6 printing at certain pixels, such as alternate pixels, if lateral bleed in a specified paper were 7 sufficient so that ink from alternate pixels would merge in the paper to reproduce the desired 8 color at the non printed pixel locations. In conjunction with that, printing could optionally 9 include all edge pixels, to prevent fuzzy edging. Finally, black ink for printing bar codes could be replaced by printing bars in blue or blue and black.
13 Fig. 1 schematically shows computer network system 1 including central CS
10, 14 central CS database 1 OA, local CS 80 for retail store RS 1, and wide area network (WAN) 70.
In addition, Fig. 1 shows WAN 70 connecting to CSs for retail store RS2, etc.
16 Fig. 1 shows RS1 (retail store 1) in dashed lines enclosing local CS 80 schematically 17 indicating that local CS 80 operates to support operations of retail store 1, including logging 18 transaction data, performing accounting functions, and providing register receipts at POSs in 19 RS 1. RS2, RS3, etc. indicate the existence of additional retail stores having local CSs similar to local CS 80 and all enabled to communicate with central CS 10 via WAN 70.
21 Preferably, WAN 70 is a packet switched network employing TCP/IP.
Preferably, 22 WAN 70 is the Internet. WAN 70 may a private network.
23 Preferably, each CS includes at least one digital central processing unit, memory, and 24 operating system software. Lines between CS, databases, and WAN 70 each indicate a means for data transmission, such as network cards, data cables, and wireless transmission 26 and reception hardware. In all embodiments, databases shown having a line connecting to a 27 CS indicate that the CS controls read and write access to the database.
28 Local CS 80 and central CS 10 can communicate via WAN 70.
29 Fig. 2 shows one embodiment of local CS 80 for RS1. Local CS 80 includes POS
computer 20, POS computer database 20A, incentive computer 30, incentive computer 31 database 30A, POS color printer 40, POS color printer database 40A, POS
terminal 50, and 1 LAN 60. In RS 1, each POS terminal has an associated POS color printer nearby. RS1 may 2 include a plurality of POS terminals and corresponding POS color printers adjacent each POS
3 terminal.
4 POS computer 20 receives transaction data over LAN 60 from each POS terminal 50.
POS computer 20 functions to track product inventory stock, product item costs, sales 6 proceeds, and finances for RS1, storing relevant information in POS computer database 20A.
7 Incentive computer 30 functions to determine when, and optionally in some cases, 8 what, marketing communications POS color printer 40 prints. Incentive computer 30 9 preferably also stores in incentive computer database 30A transaction data for transactions that occurred at the POSs in RS 1, and also stores marketing information in association with
In addition, Fig. 1 shows WAN 70 connecting to CSs for retail store RS2, etc.
16 Fig. 1 shows RS1 (retail store 1) in dashed lines enclosing local CS 80 schematically 17 indicating that local CS 80 operates to support operations of retail store 1, including logging 18 transaction data, performing accounting functions, and providing register receipts at POSs in 19 RS 1. RS2, RS3, etc. indicate the existence of additional retail stores having local CSs similar to local CS 80 and all enabled to communicate with central CS 10 via WAN 70.
21 Preferably, WAN 70 is a packet switched network employing TCP/IP.
Preferably, 22 WAN 70 is the Internet. WAN 70 may a private network.
23 Preferably, each CS includes at least one digital central processing unit, memory, and 24 operating system software. Lines between CS, databases, and WAN 70 each indicate a means for data transmission, such as network cards, data cables, and wireless transmission 26 and reception hardware. In all embodiments, databases shown having a line connecting to a 27 CS indicate that the CS controls read and write access to the database.
28 Local CS 80 and central CS 10 can communicate via WAN 70.
29 Fig. 2 shows one embodiment of local CS 80 for RS1. Local CS 80 includes POS
computer 20, POS computer database 20A, incentive computer 30, incentive computer 31 database 30A, POS color printer 40, POS color printer database 40A, POS
terminal 50, and 1 LAN 60. In RS 1, each POS terminal has an associated POS color printer nearby. RS1 may 2 include a plurality of POS terminals and corresponding POS color printers adjacent each POS
3 terminal.
4 POS computer 20 receives transaction data over LAN 60 from each POS terminal 50.
POS computer 20 functions to track product inventory stock, product item costs, sales 6 proceeds, and finances for RS1, storing relevant information in POS computer database 20A.
7 Incentive computer 30 functions to determine when, and optionally in some cases, 8 what, marketing communications POS color printer 40 prints. Incentive computer 30 9 preferably also stores in incentive computer database 30A transaction data for transactions that occurred at the POSs in RS 1, and also stores marketing information in association with
11 CIDs. Preferably, Incentive computer database 30A stores SVG rendering software including
12 an SVG library enabling incentive computer 30 to render into a single image object the
13 individual image objects and text identified in an SVG file. Incentive computer 30 would then
14 transmit that single image object file in Windows (trademark) Graphic Device Interface (GDI) format to POS color printer 40.
16 POS color printer 40 prints marketing communications and preferably also prints 17 register receipts. Each or both may be printed in color. POS color printer database 40A
18 includes printer driver software, preferably including RGB to CMYK
conversion software.
19 Optionally, POS color printer database 40A includes SVG rendering software including an SVG library enabling POS color printer 40 to both render into a single image object the 21 individual image objects and text identified in an SVG file, and then print SVG file.
22 In a currently preferred embodiment, POS color printer 40 driver software includes 23 code for interpreting Windows (trademark) Graphic Device Interface (GDI) format files, and 24 for converting in those files RGB image data to CMYK image data.
POS terminal 40 preferably includes transaction data input mechanisms, such as 26 scanners for scanning UPC codes and customer identification cards, and a keyboard. It may 27 also include customer biometric data readers and a microphone. POS terminal 40 functions 28 to identify the beginning and end of purchase transactions, to obtain a CID
and product 29 identifications for products being purchased in association with the CID.
POS terminal 40 also transmits the transaction data (product identifiers, CID, POS ID, etc) over LAN 60 to 31 POS computer 20 and preferably incentive computer 30. POS terminal 40 may also function 1 to look up pricing and discounting information, or to request that information from POS
2 computer 20 via LAN 60.
3 LAN 60 preferably includes one or more digital network switches enabling it to route 4 packets containing destination address information to the appropriate network address.
In one alternative embodiment, POS computer 20 may perform all functions 6 associated herein with incentive computer 30 in which case POS computer database 20A
7 includes the data structures disclosed herein in association with database 30A.
8 POS computer database 20A or incentive computer database 30A may store all data 9 disclosed herein for POS color printer database 40A, in which case POS
computer 20 or incentive computer 30 performs the processing functions disclosed herein for printer 40.
11 POS color printer 40 may be connected directly to POS computer 20 instead of via 12 LAN 60.
13 In other embodiments, POS color printer driver software and SVG file rendering 14 software may reside in any database in local CS 80, and may be invoked by any of the computers in local CS 80. Other modifications of the local network architecture are obvious 16 to one skilled in the art that preserve the existence of the WAN connection between the 17 central CS and one or more local CS each associated with a RS.
18 Fig. 3 shows a relational database embodiment of central CS database 10A.
However, 19 other data structures may accomplish the same result, providing the same or similar data relationships.
21 Fig. 3 shows a schema in table design views of tables 310, 320, 330, 340, 350, and 22 360, and table relationships 315, 325, 335, 345, and 355. Relationships 315 and 325, are one 23 to many relationships. Relationships 335, 345, and 355 are one to one relationships.
24 Image objects table 310 stores image objects and their properties. Table 310 includes fields for image object, Image object identification (IOID), and image object properties 26 (propl, prop2, etc.). Herein all "ID" fields are some form of identification for associated data.
27 Properties of the image object include intended layer position (foreground, background), 28 image dimensions, color or colors. The image objects contained in 310 preferably are 29 modified image objects for an original image object, modified as described herein to reduce the amount of ink used to generate a print similar in color to the original image object.
31 Relationship 315 indicates that Image Object ID field IOID in 310 contains the same 1 type of data (image object identification data) as IOID fields in table 320.
2 Marketing communications table 320 stores in associated fields an SVG and the 3 image object that SVG references. Table 320 has fields for SVG, SVGID, and IDs of 4 associated image objects IOID1, I0ID2, I0ID3, etc.
Table association 325 indicates that data in the SVGID field in table 320 is the same 6 type of data as data in the SVGID1, SVGID2, SVGID3, etc., fields, in table 330.
7 Table 330 stores IDs of those SVGs associated with each RS. That is, table 330 stores 8 for each RS IDs of only those SVGs associated with CIDs associated with those stores. The 9 number of SVGs associated with any particular RS may be a small subset of all SVGs stored by central CS 10 in database 10A.
11 Table 330 associates fields for RS identification (RSID) with fields for a set of SVG
12 identifications, SVGIDI, SVGID2, SVGID3, etc.
13 Targeting table 340 contains targeted marketing communication trigger data.
Table 14 340 stores in association with a CID marketing communications for the corresponding customer (SVG files) and the retail store ID associated with purchases by the corresponding 16 customer. The data in table 340 is transmitted to local CS 80. Local CS 80 can then trigger 17 rendering of an SVG and then printing of the marketing communication defined by the 18 rendered SVG file. Local CS 80 can do this during a transaction when the local CS matches a 19 CID entered at POS terminal with a CID received from central CS 10.
Targeting determinations table 350 contains data that central CS 10 uses to determine 21 what marketing communications to target to each CID. Table 350 contains fields for RSID, 22 targeting criteria, marketing communication, and SVGID. Each marketing communication is 23 associated with an SVG file. Each marketing communication is targeted for deliver to a 24 particular CID only if targeting criteria are met for that CID. Targeting criteria frequently depend upon product purchases associated with that CID in some prior time period, which is 26 the data stored in product purchase history table 360. Thus, central CS 10 may apply the 27 targeting criteria in table 350 to data associated with a CID in product purchase history table 28 360 to generate data in table 340.
29 Product purchase history table 360 contains field for storing in association with one another RSID, CID, date, total (currency amount total for a purchase transaction), and product 31 identifier, quantity of that product, and price of that product (UPC 1, NUPC 1, PUPC 1, 1 respective, and UPC2, NUPC2, PUPC2, respective, etc,), and coupon identifiers and coupon 2 discount amounts (Cl, D1, respectively, C2, D2, respectively, etc.).
3 Generally speaking, tables 310, 320, 330, enable central CS to track SVGs and image 4 objects files previously transmitted to each RS and therefore to determine and transmit to each RS SVG files and image objects data not previously transmitted to that store but 6 currently associated with that RS via table 340. Tables 340, 350, and 360, enable central CS
7 to associate with each CID targeted marketing communications (and corresponding SVG
8 files) for consumers that have purchased in the RS.
9 An example of associated (1) targeting criteria and (2) marketing communication are (1) existence of UPC for a quart of milk in an immediately preceding 30 day period from the 11 current time and (2) a coupon for a particular dry cereal product.
12 Fig. 4 shows a relational database embodiment of POS computer database 20A.
POS
13 computer database 20A includes RS product purchase history table 360', inventory stock table 14 420, and coupon discount table 430.
RS product purchase history table 360' has the same data fields as table 360.
16 However, RS product purchase history table 360' preferably only stores product purchase 17 history for transactions that occurred in RS 1. Inventory stock table 420 stores by product 18 identifier (UPC code) the number of product items in stock. Coupon discount table 430 19 stores coupon identification C in association with a discount to include for a purchase including the coupon identification. In operation, the local CS 80 may use the coupon 21 discount table to determine discounts to apply to a customer's purchase transaction. See the 22 data for coupons and their discounts shown in table 360'.
23 Fig. 5 shows a relational database embodiment of incentive computer database 30A
24 including RS image objects table 310', Marketing communications table 320', RS targeting table 340', RS product purchase history table 360', and SVG code library 510.
The RS tables 26 310', 320', 340', and 360' have the same data structure as tables 310, 320, 340, and 360.
27 However, tables 310', 320', 340', and 360' store only data from or for RS1.
SVG code library 28 510 is software code capable of rendering SVG files to generate a single image file as 29 specified by the SVG file, including any image object files referenced by the SVG file.
Preferably, incentive computer 30 determines when a CID read at POS terminal 31 matches a CID stored in targeting table 340', responds by generating an image file in 1 Windows GDI format for an associated marketing incentive, and transmitting that file to POS
2 color printer 40.
3 Preferably, incentive computer 30 periodically or a-periodically transmits new data for 4 RS1 in table 360' not yet transmitted to central CS 10 to central CS 10.
Fig. 6 shows contents of POS color printer database 40A. This data preferably 6 includes coupon image files data 610, register receipt data 620, printer driver 630, 7 printer/print head control 640, and printer queue memory 650.
8 Each file in coupon image files data 610 includes image data for one or more 9 marketing communications, typically coupons. Register receipt data 620 includes data for printing descriptions and quantities and prices of items purchased, discounts applied to the 11 purchase, and transaction currency total.
12 Alternatively, coupon image files data 610 may be a single image file containing any 13 and all marketing communications data.
14 Alternatively, both coupon image files data and register receipt data may be merged by local CS 80 into a single file, such as a file in Windows (trademark) GDI
format, prior to 16 transmission to POS color printer 40. In this case, register receipt data 620 and coupon image 17 files data 610 are a single merged data file in POS color printer database 40A.
18 Printer driver 630 preferably converts RGB color data to CMYK or CMY color data 19 for printing, and orders the data into a data stream for transmission to printer queue memory.
Printer queue memory 650 stores in sequence commands to issue to print heads (structures 21 that transmit ink to paper) and to paper position controllers, such as paper rollers.
22 Optionally, POS color printer database 40A also includes a separate printer/head 23 control 640 for rewinding printer paper to enable consecutive printing by more than one print 24 head with at least one print head facing each side of a paper roll.
In embodiments in which local CS 80 sends to POS color printer 40 more than one 26 file for printing for a transaction, such as a register receipt file and one or more marketing 27 communication, business rules may be implemented to ensure reliability and minimize 28 transaction time. For example, POS color printer 40 may implement time out code such that 29 it will print a register receipt file after a specified time has elapsed, such as 2 seconds, after receipt of that file, if it has not by then received coupon image files data.
In addition, it may 31 include code for determining print length of register receipt information and print length of 1 marketing communication, for printing register receipt or marketing communication on one 2 side of paper, rewinding the paper by about the length of the first print, and then printing to 3 the second side of the paper for the other print.
4 Fig. 7 shows flow chart 700 showing steps occurring in network CS 1.
In step 705, central CS 10 receives coupon data, which may include image data or 6 image files.
7 In step 710, central CS 10 generates SVG files from the coupon data.
8 In step 715, central CS 10 generates modified image data for the image data or image 9 files associated with each SVG file.
In step 720, central CS 10 associates certain SVG files with certain CIDs local CS 80 11 (RS1). The CIDs are ones previously received from local CS 80. The SVG
files are those 12 that meet targeting criteria applied to those CIDs.
13 In step 725, central CS 10 determines which of the SVG and associated image object 14 files have not previously been sent to RS 1. It may do this by filtering the SVG newly associated with CIDs for RS1 against a database of SVGs previously transmitted to RS 1. For 16 each new SVG for RS 1, there may be corresponding new image files for RS 1.
17 In step 730, central CS 10 transmits data to local CS 80. This data may include the 18 new CIDs and associated SVG and image files for RS 1.
19 In step 735, local CS 80 identifies a CID as being involved in a transaction at POS
terminal 50. In the preferred embodiment, this function is performed by incentive computer 21 30.
22 In step 740, local CS 80 identifies any SVG files stored in local CS 80 in association 23 with that CID. In the preferred embodiment, this function is performed by incentive 24 computer 30.
In step 745, local CS 80 renders to image files the associated SVGs. In the preferred 26 embodiment, this function is performed by incentive computer 30.
27 In step 750, POS color printer 40 prints the rendered SVGs and register receipt for the 28 transaction.
29 In step 755, local CS 80 transmits transaction logs to central CS 10.
In step 750, local CS 80 renders the SVGs and their associated image files to a single 31 image file per SVG or set of SVGs. These image files may saved in Windows (Trademark) 32 GDI format.
16 POS color printer 40 prints marketing communications and preferably also prints 17 register receipts. Each or both may be printed in color. POS color printer database 40A
18 includes printer driver software, preferably including RGB to CMYK
conversion software.
19 Optionally, POS color printer database 40A includes SVG rendering software including an SVG library enabling POS color printer 40 to both render into a single image object the 21 individual image objects and text identified in an SVG file, and then print SVG file.
22 In a currently preferred embodiment, POS color printer 40 driver software includes 23 code for interpreting Windows (trademark) Graphic Device Interface (GDI) format files, and 24 for converting in those files RGB image data to CMYK image data.
POS terminal 40 preferably includes transaction data input mechanisms, such as 26 scanners for scanning UPC codes and customer identification cards, and a keyboard. It may 27 also include customer biometric data readers and a microphone. POS terminal 40 functions 28 to identify the beginning and end of purchase transactions, to obtain a CID
and product 29 identifications for products being purchased in association with the CID.
POS terminal 40 also transmits the transaction data (product identifiers, CID, POS ID, etc) over LAN 60 to 31 POS computer 20 and preferably incentive computer 30. POS terminal 40 may also function 1 to look up pricing and discounting information, or to request that information from POS
2 computer 20 via LAN 60.
3 LAN 60 preferably includes one or more digital network switches enabling it to route 4 packets containing destination address information to the appropriate network address.
In one alternative embodiment, POS computer 20 may perform all functions 6 associated herein with incentive computer 30 in which case POS computer database 20A
7 includes the data structures disclosed herein in association with database 30A.
8 POS computer database 20A or incentive computer database 30A may store all data 9 disclosed herein for POS color printer database 40A, in which case POS
computer 20 or incentive computer 30 performs the processing functions disclosed herein for printer 40.
11 POS color printer 40 may be connected directly to POS computer 20 instead of via 12 LAN 60.
13 In other embodiments, POS color printer driver software and SVG file rendering 14 software may reside in any database in local CS 80, and may be invoked by any of the computers in local CS 80. Other modifications of the local network architecture are obvious 16 to one skilled in the art that preserve the existence of the WAN connection between the 17 central CS and one or more local CS each associated with a RS.
18 Fig. 3 shows a relational database embodiment of central CS database 10A.
However, 19 other data structures may accomplish the same result, providing the same or similar data relationships.
21 Fig. 3 shows a schema in table design views of tables 310, 320, 330, 340, 350, and 22 360, and table relationships 315, 325, 335, 345, and 355. Relationships 315 and 325, are one 23 to many relationships. Relationships 335, 345, and 355 are one to one relationships.
24 Image objects table 310 stores image objects and their properties. Table 310 includes fields for image object, Image object identification (IOID), and image object properties 26 (propl, prop2, etc.). Herein all "ID" fields are some form of identification for associated data.
27 Properties of the image object include intended layer position (foreground, background), 28 image dimensions, color or colors. The image objects contained in 310 preferably are 29 modified image objects for an original image object, modified as described herein to reduce the amount of ink used to generate a print similar in color to the original image object.
31 Relationship 315 indicates that Image Object ID field IOID in 310 contains the same 1 type of data (image object identification data) as IOID fields in table 320.
2 Marketing communications table 320 stores in associated fields an SVG and the 3 image object that SVG references. Table 320 has fields for SVG, SVGID, and IDs of 4 associated image objects IOID1, I0ID2, I0ID3, etc.
Table association 325 indicates that data in the SVGID field in table 320 is the same 6 type of data as data in the SVGID1, SVGID2, SVGID3, etc., fields, in table 330.
7 Table 330 stores IDs of those SVGs associated with each RS. That is, table 330 stores 8 for each RS IDs of only those SVGs associated with CIDs associated with those stores. The 9 number of SVGs associated with any particular RS may be a small subset of all SVGs stored by central CS 10 in database 10A.
11 Table 330 associates fields for RS identification (RSID) with fields for a set of SVG
12 identifications, SVGIDI, SVGID2, SVGID3, etc.
13 Targeting table 340 contains targeted marketing communication trigger data.
Table 14 340 stores in association with a CID marketing communications for the corresponding customer (SVG files) and the retail store ID associated with purchases by the corresponding 16 customer. The data in table 340 is transmitted to local CS 80. Local CS 80 can then trigger 17 rendering of an SVG and then printing of the marketing communication defined by the 18 rendered SVG file. Local CS 80 can do this during a transaction when the local CS matches a 19 CID entered at POS terminal with a CID received from central CS 10.
Targeting determinations table 350 contains data that central CS 10 uses to determine 21 what marketing communications to target to each CID. Table 350 contains fields for RSID, 22 targeting criteria, marketing communication, and SVGID. Each marketing communication is 23 associated with an SVG file. Each marketing communication is targeted for deliver to a 24 particular CID only if targeting criteria are met for that CID. Targeting criteria frequently depend upon product purchases associated with that CID in some prior time period, which is 26 the data stored in product purchase history table 360. Thus, central CS 10 may apply the 27 targeting criteria in table 350 to data associated with a CID in product purchase history table 28 360 to generate data in table 340.
29 Product purchase history table 360 contains field for storing in association with one another RSID, CID, date, total (currency amount total for a purchase transaction), and product 31 identifier, quantity of that product, and price of that product (UPC 1, NUPC 1, PUPC 1, 1 respective, and UPC2, NUPC2, PUPC2, respective, etc,), and coupon identifiers and coupon 2 discount amounts (Cl, D1, respectively, C2, D2, respectively, etc.).
3 Generally speaking, tables 310, 320, 330, enable central CS to track SVGs and image 4 objects files previously transmitted to each RS and therefore to determine and transmit to each RS SVG files and image objects data not previously transmitted to that store but 6 currently associated with that RS via table 340. Tables 340, 350, and 360, enable central CS
7 to associate with each CID targeted marketing communications (and corresponding SVG
8 files) for consumers that have purchased in the RS.
9 An example of associated (1) targeting criteria and (2) marketing communication are (1) existence of UPC for a quart of milk in an immediately preceding 30 day period from the 11 current time and (2) a coupon for a particular dry cereal product.
12 Fig. 4 shows a relational database embodiment of POS computer database 20A.
POS
13 computer database 20A includes RS product purchase history table 360', inventory stock table 14 420, and coupon discount table 430.
RS product purchase history table 360' has the same data fields as table 360.
16 However, RS product purchase history table 360' preferably only stores product purchase 17 history for transactions that occurred in RS 1. Inventory stock table 420 stores by product 18 identifier (UPC code) the number of product items in stock. Coupon discount table 430 19 stores coupon identification C in association with a discount to include for a purchase including the coupon identification. In operation, the local CS 80 may use the coupon 21 discount table to determine discounts to apply to a customer's purchase transaction. See the 22 data for coupons and their discounts shown in table 360'.
23 Fig. 5 shows a relational database embodiment of incentive computer database 30A
24 including RS image objects table 310', Marketing communications table 320', RS targeting table 340', RS product purchase history table 360', and SVG code library 510.
The RS tables 26 310', 320', 340', and 360' have the same data structure as tables 310, 320, 340, and 360.
27 However, tables 310', 320', 340', and 360' store only data from or for RS1.
SVG code library 28 510 is software code capable of rendering SVG files to generate a single image file as 29 specified by the SVG file, including any image object files referenced by the SVG file.
Preferably, incentive computer 30 determines when a CID read at POS terminal 31 matches a CID stored in targeting table 340', responds by generating an image file in 1 Windows GDI format for an associated marketing incentive, and transmitting that file to POS
2 color printer 40.
3 Preferably, incentive computer 30 periodically or a-periodically transmits new data for 4 RS1 in table 360' not yet transmitted to central CS 10 to central CS 10.
Fig. 6 shows contents of POS color printer database 40A. This data preferably 6 includes coupon image files data 610, register receipt data 620, printer driver 630, 7 printer/print head control 640, and printer queue memory 650.
8 Each file in coupon image files data 610 includes image data for one or more 9 marketing communications, typically coupons. Register receipt data 620 includes data for printing descriptions and quantities and prices of items purchased, discounts applied to the 11 purchase, and transaction currency total.
12 Alternatively, coupon image files data 610 may be a single image file containing any 13 and all marketing communications data.
14 Alternatively, both coupon image files data and register receipt data may be merged by local CS 80 into a single file, such as a file in Windows (trademark) GDI
format, prior to 16 transmission to POS color printer 40. In this case, register receipt data 620 and coupon image 17 files data 610 are a single merged data file in POS color printer database 40A.
18 Printer driver 630 preferably converts RGB color data to CMYK or CMY color data 19 for printing, and orders the data into a data stream for transmission to printer queue memory.
Printer queue memory 650 stores in sequence commands to issue to print heads (structures 21 that transmit ink to paper) and to paper position controllers, such as paper rollers.
22 Optionally, POS color printer database 40A also includes a separate printer/head 23 control 640 for rewinding printer paper to enable consecutive printing by more than one print 24 head with at least one print head facing each side of a paper roll.
In embodiments in which local CS 80 sends to POS color printer 40 more than one 26 file for printing for a transaction, such as a register receipt file and one or more marketing 27 communication, business rules may be implemented to ensure reliability and minimize 28 transaction time. For example, POS color printer 40 may implement time out code such that 29 it will print a register receipt file after a specified time has elapsed, such as 2 seconds, after receipt of that file, if it has not by then received coupon image files data.
In addition, it may 31 include code for determining print length of register receipt information and print length of 1 marketing communication, for printing register receipt or marketing communication on one 2 side of paper, rewinding the paper by about the length of the first print, and then printing to 3 the second side of the paper for the other print.
4 Fig. 7 shows flow chart 700 showing steps occurring in network CS 1.
In step 705, central CS 10 receives coupon data, which may include image data or 6 image files.
7 In step 710, central CS 10 generates SVG files from the coupon data.
8 In step 715, central CS 10 generates modified image data for the image data or image 9 files associated with each SVG file.
In step 720, central CS 10 associates certain SVG files with certain CIDs local CS 80 11 (RS1). The CIDs are ones previously received from local CS 80. The SVG
files are those 12 that meet targeting criteria applied to those CIDs.
13 In step 725, central CS 10 determines which of the SVG and associated image object 14 files have not previously been sent to RS 1. It may do this by filtering the SVG newly associated with CIDs for RS1 against a database of SVGs previously transmitted to RS 1. For 16 each new SVG for RS 1, there may be corresponding new image files for RS 1.
17 In step 730, central CS 10 transmits data to local CS 80. This data may include the 18 new CIDs and associated SVG and image files for RS 1.
19 In step 735, local CS 80 identifies a CID as being involved in a transaction at POS
terminal 50. In the preferred embodiment, this function is performed by incentive computer 21 30.
22 In step 740, local CS 80 identifies any SVG files stored in local CS 80 in association 23 with that CID. In the preferred embodiment, this function is performed by incentive 24 computer 30.
In step 745, local CS 80 renders to image files the associated SVGs. In the preferred 26 embodiment, this function is performed by incentive computer 30.
27 In step 750, POS color printer 40 prints the rendered SVGs and register receipt for the 28 transaction.
29 In step 755, local CS 80 transmits transaction logs to central CS 10.
In step 750, local CS 80 renders the SVGs and their associated image files to a single 31 image file per SVG or set of SVGs. These image files may saved in Windows (Trademark) 32 GDI format.
Claims (31)
1. A computer implemented method of reducing a quantity of ink used by a color printer in printing a colored image, said method comprising:
reading from computer memory a first color value for a first color of a pixel of an original colored image object, said color printer configured to print a first quantity of inks for said first color value;
determining a second quantity of inks sufficient for said color printer to print said first color, said second quantity of inks less than said first quantity of inks;
when said second quantity of inks does not exactly correspond to a color value in a color map, determining a second color value by selecting a color value in said color map for which said color printer prints substantially said second quantity of inks;
and generating a modified colored image object from said original image object in which said second color value is associated with said pixel.
reading from computer memory a first color value for a first color of a pixel of an original colored image object, said color printer configured to print a first quantity of inks for said first color value;
determining a second quantity of inks sufficient for said color printer to print said first color, said second quantity of inks less than said first quantity of inks;
when said second quantity of inks does not exactly correspond to a color value in a color map, determining a second color value by selecting a color value in said color map for which said color printer prints substantially said second quantity of inks;
and generating a modified colored image object from said original image object in which said second color value is associated with said pixel.
2. The method of claim 1 wherein said selecting a color value in said color map for which said color printer prints substantially said second quantity of inks comprises choosing from said color map a color value having a smallest least squares value of differences between a quantity of inks said color printer is configured to print for said color value and said second quantity of inks.
3. The method of any one of claims 1 and 2 comprising reading from computer memory at least one image object property of said original colored image object, wherein said determining a second quantity of inks sufficient for said color printer to print said first color is based at least in part on said at least one image object property.
4. The method of claim 3 wherein said at least one image object property is referenced by a scalable vector graphic (SVG) file associated with said printing.
5. The method of any one of claims 3 and 4 wherein said at least one image property comprises a dimension of said original colored image object.
6. The method of any one of claims 3 to 5 wherein said at least one image property comprises a property indicating that said original color image object is foreground.
7. The method of any one of claims 3 to 6 wherein said at least one image property comprises a property indicating that said original color image object is background.
8. The method of any one of claims 3 to 7 wherein said at least one image property comprises a property indicating that said original color image object defines text.
9. The method of any one of claims 1 to 8 wherein said first color value and said second color value specify values for red, green, and blue colors.
10. The method of claim 9 wherein said color printer is configured to convert red, green, and blue color values to at least cyan, magenta, and yellow color values.
11. The method of any one of claims 1 to 10 comprising the steps of reading first color values for all pixels of said original colored image object, determining quantities of inks required for said color printer to print said first color values for all pixels of said original colored image object, determining second quantities of inks sufficient for said color printer to print said first colors for all pixels of said original colored image object, determining second color values for which said color printer prints at least substantially said second quantities of inks for all pixels of said original colored image object, and generating said modified image object from said original image object in which said second color values are associated with all of said pixels.
12. The method of any one of claims 1 to 11 wherein said determining a second quantity of inks depends upon one or more of the following properties of a print paper on which said printer is to print said colored image: basis weight; caliper; thickness;
density; tensile strength; smoothness; brightness; gloss; opacity; tearing strength; porosity;
air permeance; elasticity; ink bleed; and abrasion.
density; tensile strength; smoothness; brightness; gloss; opacity; tearing strength; porosity;
air permeance; elasticity; ink bleed; and abrasion.
13. The method of any one of claims 1 to 12 wherein said determining a second quantity of inks is based at least in part upon a printer driver for said printer.
14. The method of any one of claims 1 to 13 comprising printing said colored image including said modified colored image object.
15. A computer system for reducing a quantity of ink used by a color printer in printing a colored image, said system comprising:
a central processor;
a memory;
a color printer;
wherein said memory stores computer readable instructions which when executed by the central processor cause the central processor to perform the steps of.
reading a first color value for a first color of a first pixel of an original colored image object;
determining a second quantity of inks sufficient for said color printer to print said first color, said second quantity of inks less than a first quantity of inks which said color printer is configured to print for said first color value;
when said second quantity of inks does not exactly correspond to a color value in a color map, determining a second color value by selecting a color value in said color map for which said color printer prints substantially said second quantity of inks; and generating a modified colored image object from said original image object in which said second color value is associated with said pixel.
a central processor;
a memory;
a color printer;
wherein said memory stores computer readable instructions which when executed by the central processor cause the central processor to perform the steps of.
reading a first color value for a first color of a first pixel of an original colored image object;
determining a second quantity of inks sufficient for said color printer to print said first color, said second quantity of inks less than a first quantity of inks which said color printer is configured to print for said first color value;
when said second quantity of inks does not exactly correspond to a color value in a color map, determining a second color value by selecting a color value in said color map for which said color printer prints substantially said second quantity of inks; and generating a modified colored image object from said original image object in which said second color value is associated with said pixel.
16. A computer implemented method of reducing a quantity of ink used by a color printer in printing a colored image, said method comprising:
reading from computer memory a first color value for a first color of a pixel of said original colored image object, said color printer designed to print a first quantity of ink for said first color value;
reading from computer memory at least one image object property of said original colored image object;
determining based at least in part on said at least one image object property a second quantity of inks sufficient for said color printer to print said first color, said second quantity of inks less than said first quantity of inks;
determining a second color value for which said color printer prints at least substantially said second quantity of inks, said second color value different from said first color value; and generating a modified colored image object from said original image object in which said second color value is associated with said pixel.
reading from computer memory a first color value for a first color of a pixel of said original colored image object, said color printer designed to print a first quantity of ink for said first color value;
reading from computer memory at least one image object property of said original colored image object;
determining based at least in part on said at least one image object property a second quantity of inks sufficient for said color printer to print said first color, said second quantity of inks less than said first quantity of inks;
determining a second color value for which said color printer prints at least substantially said second quantity of inks, said second color value different from said first color value; and generating a modified colored image object from said original image object in which said second color value is associated with said pixel.
17. The method of claim 16 wherein said at least one image object property is referenced by a scalable vector graphic (SVG) file associated with said printing.
18. The method of any one of claims 16 and 17 wherein said at least one image property comprises a dimension of said original colored image object.
19. The method of any one of claims 16 to 18 wherein said at least one image property comprises a property indicating that said original color image object is foreground.
20. The method of any one of claims 16 to 19 wherein said at least one image property comprises a property indicating that said original color image object is background.
21. The method of any one of claims 16 to 20 wherein said at least one image property comprises a property indicating that said original color image object defines text.
22. The method of any one of claims 16 to 21 wherein said determining a second color value for which said color printer prints at least substantially said second quantity of inks comprises, when said second quantity of inks does not exactly correspond to a color value in a color map, determining a second color value by selecting a color value in said color map for which said color printer prints substantially said second quantity of inks.
23. The method of claim 22 wherein said selecting a color value in said color map for which said color printer prints substantially said second quantity of inks comprises choosing from said color map a color value having a smallest least squares value of differences between a quantity of inks said color printer is configured to print for said color value and said second quantity of inks.
24. The method of any one of claims to 16 to 23 wherein said first color value and said second color value specify values for red, green, and blue colors.
25. The method of claim 24 wherein said color printer is configured to convert red, green, and blue color values to at least cyan, magenta, and yellow color values.
26. The method of any one of claims 16 to 25 comprising the steps of reading first color values for all pixels of said original colored image object, determining quantities of inks required for said color printer to print said first color values for all pixels of said original colored image object, determining second quantities of inks sufficient for said color printer to print said first colors for all pixels of said original colored image object, determining second color values for which said color printer prints at least substantially said second quantities of inks for all pixels of said original colored image object, and generating said modified image object from said original image object in which said second color values are associated with all pixels.
27. The method of any one of claims 16 to 26 wherein said determining a second quantity of inks depends upon one or more of the following properties of a print paper on which said printer is to print said colored image: basis weight; caliper; thickness;
density; tensile strength; smoothness; brightness; gloss; opacity; tearing strength; porosity;
air permeance; elasticity; ink bleed; and abrasion.
density; tensile strength; smoothness; brightness; gloss; opacity; tearing strength; porosity;
air permeance; elasticity; ink bleed; and abrasion.
28. The method of any one of claims 16 to 27 wherein said determining a second quantity of inks is based at least in part upon printer driver for said printer.
29. The method of any one of claims 16 to 28 comprising printing said colored image including said modified colored image object.
30. A computer system for reducing a quantity of ink used by a color printer in printing a colored image, said system comprising:
a central processor;
a memory;
a color printer;
wherein said memory stores computer readable instructions which when executed by the central processor cause the central processor to perform the steps of:
reading a first color value for a first color of a pixel of an original colored image object;
reading at least one image object property of said original colored image object;
determining based at least in part on the at least one image object property a second quantity of inks sufficient for said color printer to print said first color, said second quantity of inks less than a first quantity of inks which said color printer is configured to print for said first color value;
determining a second color value for which said color printer prints substantially said second quantity of inks, said second color value different from said first color value; and generating a modified colored image object from said original image object in which at said second color value is associated with said pixel.
a central processor;
a memory;
a color printer;
wherein said memory stores computer readable instructions which when executed by the central processor cause the central processor to perform the steps of:
reading a first color value for a first color of a pixel of an original colored image object;
reading at least one image object property of said original colored image object;
determining based at least in part on the at least one image object property a second quantity of inks sufficient for said color printer to print said first color, said second quantity of inks less than a first quantity of inks which said color printer is configured to print for said first color value;
determining a second color value for which said color printer prints substantially said second quantity of inks, said second color value different from said first color value; and generating a modified colored image object from said original image object in which at said second color value is associated with said pixel.
31. The computer system of claim 30 wherein said at least one image object property is referenced by a scalable vector graphic (SVG) file.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US74290905P | 2005-12-07 | 2005-12-07 | |
US60/742,909 | 2005-12-07 | ||
US77841006P | 2006-03-03 | 2006-03-03 | |
US60/778,410 | 2006-03-03 | ||
CA2624620A CA2624620C (en) | 2005-12-07 | 2006-07-07 | Color printer technology |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2624620A Division CA2624620C (en) | 2005-12-07 | 2006-07-07 | Color printer technology |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2714865A1 CA2714865A1 (en) | 2007-06-14 |
CA2714865C true CA2714865C (en) | 2012-10-23 |
Family
ID=43012614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2714865A Active CA2714865C (en) | 2005-12-07 | 2006-07-07 | Color printer technology |
Country Status (1)
Country | Link |
---|---|
CA (1) | CA2714865C (en) |
-
2006
- 2006-07-07 CA CA2714865A patent/CA2714865C/en active Active
Also Published As
Publication number | Publication date |
---|---|
CA2714865A1 (en) | 2007-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2624620C (en) | Color printer technology | |
CN103223792B (en) | Image processing device, printing device, and image processing method | |
US20020089686A1 (en) | Logo data generating system, logo data generating method, and data storage medium | |
US20040105126A1 (en) | Method of printing, program for realizing the same, recording medium, apparatus for printing, printer driver, merchandise sales data processing device, and point-of-sale system | |
US8488195B2 (en) | System and method for improving color management of color spaces in electronic documents | |
US7375844B2 (en) | Method for generating a print data file, method for storing print data, a data storage medium therefor, and an apparatus for generating a data storage file | |
CN101366002B (en) | Color printer technology | |
KR20030023520A (en) | Method and apparatus for processing image data, storage medium and program | |
US8139263B2 (en) | Systems and methods for printing artwork containing overlapped inks | |
CN102129360A (en) | Print information managing apparatus, print information managing method, print information managing system, and recording medium with program recorded therein | |
EP1213681A2 (en) | Accurate colour rendition of proprietary mark patterns | |
US20040205643A1 (en) | Reproduction of documents using intent information | |
US20030184774A1 (en) | Apparatus and method for two-color printing based on single color data | |
US8582188B2 (en) | Spot color press emulation color transformation method and system | |
CA2714865C (en) | Color printer technology | |
CN105745913B (en) | Colorant Separation Method | |
HK1140343A (en) | Color printer technology | |
AU4726899A (en) | Color data inversion and reconversion | |
US11685178B2 (en) | Methods and systems for emulating spot inks or other colorants | |
JP6060543B2 (en) | Printing apparatus and printing apparatus control method | |
US8130397B2 (en) | Method for transmitting a color extraction and a management information system | |
EP1396808A1 (en) | Method and apparatus of printing payment transaction information, program, printer driver and point of sale system for realising the same | |
JP2006343868A (en) | Image processing method and image processing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request |