AU2005201495B2 - Display list colour conversion - Google Patents

Display list colour conversion Download PDF

Info

Publication number
AU2005201495B2
AU2005201495B2 AU2005201495A AU2005201495A AU2005201495B2 AU 2005201495 B2 AU2005201495 B2 AU 2005201495B2 AU 2005201495 A AU2005201495 A AU 2005201495A AU 2005201495 A AU2005201495 A AU 2005201495A AU 2005201495 B2 AU2005201495 B2 AU 2005201495B2
Authority
AU
Australia
Prior art keywords
colour
display list
colour space
display
aggregate
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.)
Ceased
Application number
AU2005201495A
Other versions
AU2005201495A1 (en
Inventor
Christopher Mario Mendes
Peter Malcolm Roberts
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from AU2004901938A external-priority patent/AU2004901938A0/en
Application filed by Canon Inc filed Critical Canon Inc
Priority to AU2005201495A priority Critical patent/AU2005201495B2/en
Publication of AU2005201495A1 publication Critical patent/AU2005201495A1/en
Application granted granted Critical
Publication of AU2005201495B2 publication Critical patent/AU2005201495B2/en
Ceased legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)

Description

S&F Ref: 714100 00 oo
AUSTRALIA
PATENTS ACT 1990 COMPLETE SPECIFICATION FOR A STANDARD PATENT Name and Address of Applicant Actual Inventor(s): Address for Service: Invention Title: Canon Kabushiki Kaisha, of 30-2, Shimomaruko 3-chome, Ohta-ku, Tokyo, 146, Japan Christopher Mario Mendes Peter Malcolm Roberts Spruson Ferguson St Martins Tower Level 31 Market Street Sydney NSW 2000 (CCN 3710000177) Display list colour conversion Associated Provisional Application Details: [33] Country:
AU
[31] Appl'n No(s): 2004901938 [32] Application Date: 13 Apr 2004 The following statement is a full description of this invention, including the best method of performing it known to me/us:- 5845c -1- O DISPLAY LIST COLOUR CONVERSION Field of the Invention 00 The present invention relates generally to document production systems and, in particular, to post-render manipulation of document colour spaces.
Background In a computer based document management system, it is common for users to compose new documents, such as reports, by combining pages from existing documents stored in the document management system. Documents created in such a fashion are generally referred to as composite documents.
Fig. 1 illustrates composing a composite document 50 by combining pages and 40 taken from existing documents 10 and 20 respectively, with both documents and 20 stored in a document management system. Page 30 is a first page from document whereas page 40 is the third page of document 20. The composite document consists of a single page on which the contents of pages 30 and 40 are combined.
It is common for the documents 10 and 20 to be stored in a variety of formats in the document management system. The formats may include the format used by an application in which the document was generated, for example Microsoft® Word, a bitmap format for example formed by scanning a page, or an intermediate format, such as a Page Description Language (PDL). Page Description Languages include Adobe® PostScript®, Adobe® PDF, and Hewlett-Packard®
PCL.
It is desirable for the intermediate format to allow easy access to individual pages in the documents. Storing the documents in such an intermediate format allows for faster rendering.
The colour space of the intermediate format is generally that of the device which the document was targeted at for rendering. This poses a problem whenever pages of 714100 documents targeted at different devices are combined, because the colour spaces of different devices are typically not interchangeable.
Hitherto several approaches have been employed for reconciling colour space 00 differences when combining pages of documents targeted at different devices. Many of these approaches result in a multitude of colour transformations being applied to any given page to be combined, which results in loss of colour accuracy and/or gamut compression. Also, due to the number of colour transformations involved, a reduction in i render speed results.
Summary It is an object of the present invention to substantially overcome, or at least ameliorate, one or more disadvantages of existing arrangements.
According to a first aspect of the present invention, there is provided a method of forming an aggregate display list from two or more display lists, at least two of said display lists residing in different colour spaces, said method comprising the steps of: associating each of said display lists with a colour space definition corresponding to the colour space in which said display list resides; and aggregating said display lists using links to said two or more display lists, wherein the colour space of said aggregate display list is unresolved.
According to another aspect of the present invention, there is provided an apparatus for implementing any one of the aforementioned methods.
According to another aspect of the present invention there is provided a computer program stored on a computer readable medium for implementing any one of the methods described above.
Other aspects of the invention are also disclosed.
714100 -3- 0 Brief Description of the Drawings SSome aspects of the prior art and one or more embodiments of the present invention will now be described with reference to the drawings, in which: 00 Fig. 1 illustrates composing a document by combining pages taken from existing documents; Fig. 2 illustrates a typical workflow for rendering a document; t Fig. 3 illustrates a typical structure of a display list; Fig. 4 illustrates the manner in which display lists are stored; Fig. 5 shows an example aggregate tree in which the leaf nodes of the aggregate tree are formed by display lists being referenced; Fig. 6 shows a chromaticity diagram in which all visible colours are plotted onto a plane; Fig. 7 illustrates converting a colour in a device colour space A into a colour in another device colour space B; Fig. 8A illustrates aggregating display lists to form an aggregate display list; Fig. 8B illustrates aggregating aggregate display lists to form an aggregate display list; Figs. 9A and 9B illustrate storing the aggregate display list in the device colour space of one or other of the display lists being aggregated; Figs. 10A and 10B illustrate storing the aggregate display list in a 'standard' colour space; Figs. I 1A and 1 1B illustrate leaving the colour space of the aggregate display list unresolved, and converting the colour of objects at the time of rendering; Fig. 12 shows a schematic flow diagram of a method of rendering a display list; and 714100 -4- Fig. 13 shows a schematic block diagram of a general purpose computer upon which arrangements described can be practiced.
00 Detailed Description
C
Where reference is made in any one or more of the accompanying drawings to features which have the same feature label, then those features have for the purposes of Sthis description the same function(s) or operation(s), unless the contrary intention appears.
As is described in the "Background" section, Fig. 1 illustrates composing a Ncomposite document 50 by combining pages 30 and 40 taken from existing documents and 20 respectively. It is to be noted that the discussions contained in the "Background" section relating to prior art arrangements relate to discussions of arrangements which form public knowledge through their respective use. Such should not be interpreted as a representation by the present inventor or patent applicant that such arrangements in any way form part of the common general knowledge in the art.
Fig. 2 illustrates a typical workflow for rendering a document. The workflow for rendering the document is preferably implemented using a general-purpose computer system 100, such as that shown in Fig. 13.
Referring to Fig. 13, the computer system 100 is formed by a computer module 101, input devices such as a keyboard 102 and mouse 103, output devices including a printer 115 and a display device 114. A Modulator-Demodulator (Modem) transceiver device 116 is used by the computer module 101 for communicating to and from a communications network 120, for example connectable via a telephone line 121 or other functional medium.
The computer module 101 typically includes at least one processor unit 105, and a memory unit 106, for example formed from semiconductor random access memory (RAM) and read only memory (ROM). The module 101 also includes an number of 714100 input/output interfaces including a video interface 107 that couples to the video display 114, an /O interface 113 for the keyboard 102 and mouse 103, and an interface 108 for the modem 116 and printer 115. A storage device 109 is provided and typically includes a hard disk drive 110 and a floppy disk drive 111. A CD-ROM drive 112 is typically provided as a non-volatile source of data. The components 105 to 113 of the computer module 101, typically communicate via an interconnected bus 104 t and in a manner which results in a conventional mode of operation of the computer C system 100 known to those in the relevant art.
Referring again to Fig. 2, the document to be rendered may be received by the computer system 100 in some application specific document format file 215. The file 215 is printed by using the appropriate application 220, such as Microsoft® Word, executing within the computer system 100. The application also uses a printer driver 225, which outputs page description language (PDL) script 230. The PDL script 230 may be stored temporally in memory 106, or for later use on storage device 109.
Next the PDL script 230 is passed to a PDL Interpreter 235, which is typically a software module executing within the computer module 101. The PDL Interpreter 235 generates a number of display lists 240. A display list is a set of instructions and data which, when executed by a suitable hardware device or software application, referred to as a renderer, result in the generation of an image representing a page. Each display list represents one rendered page.
The display lists 240 may be stored in a document management system for later printing or re-use. The display lists 240 may also be passed through a renderer 245 in order to create a printed output 251 on printer 115 or electronic images 250 representing the pages of the document. The renderer 245 may be implemented as a hardware device 714100 -6inside the printer 115, or may be implemented as a software application executing on the computer module 101.
0 The workflow may alternatively start with the PDL script 230 which has 00 previously been stored in the document management system. As in the case described above, the PDL script 230 is passed to the PDL interpreter 235 for generating the display lists 240. The display lists 240 may then be passed through the renderer 245 for creating
(N
the printed output 251 or the electronic images 250 representing the pages of the N document.
Fig. 3 illustrates a typical structure of a display list 500. Display lists are generally conditioned for delivery to a specific output device. The display list 500 includes a first graphics operation 501, which is a page start operation, second and third graphics operations 502 and 503 for placing objects on the page started by the first graphics operation 501, and fourth graphics operation 504 which is a page finish operation. Each of the first, second and third graphics operations has associated parameter data 505 to 508 for representing specific geometry and effects of the associated operation.
Fig. 4 illustrates the manner in which the display lists 500 are stored. A reference object 561 is provided which points to the display list 500, as well as a manipulation data object 563. The manipulation data object 563 specifies render operations to be applied on the object data contained within the display list 500. Being able to reference each display list 500 representing a page through a reference object 561 facilitates performing operations on each display list 500.
Two or more display lists may be referenced by a reference object, forming an aggregate tree. Such a reference object is called an aggregate reference object. Fig. shows an example aggregate tree 600 in which the leaf nodes of the aggregate tree 600 714100 are formed by the display lists 620 and 622 being referenced. Each of the display lists S620 and 622 has the form described with reference to Fig. 3. Also, each of the display lists 620 and 622 is referenced by a reference object 610 and 612 respectively, with each of the reference objects 610 and 612 also referencing a manipulation data object 606 and 607 respectively, as is described above with reference to Fig. 4. The reference objects 610 and 612 form aggregate data 605. Aggregate reference object 602 references the aggregate data 605 and manipulation data object 603, with the manipulation data object N, 603 specifying render operations to be performed on the aggregate data 605.
The manipulation data objects 606 and 607 allow for render operations to be applied on the object data contained within the separate display lists 620 and 622. For example, manipulation data object 606 may include composition rules for the graphic objects specified in display list 620 which cause the graphic object to interact with the graphic object(s) specified in display list 622. Such interaction may include complex graphics operations, such as trapping, z-order, alpha raster operations or transparency.
Display lists are formed with the sole purpose to be delivered to the renderer 245 (Fig. and are therefore not in a form where manipulations may be performed on the objects represented thereby. Such manipulations include: introducing new visual elements such as superimposed watermarks and other markings; introducing trapping objects; combining data specified with separate input PDLs onto a single page; reusing the results of an abstract processing module when varied physical output devices are called for, which may only require scaling and translation or rotation operations, or colour conversion operations.
Referring again to Fig. 2, due to the restrictions on the manipulations that may be performed on the objects represented by the display lists 240, it is common to store documents in both their original form, that is in some application specific document 714100 O format file 215 or in PDL script 230, as well as in a form which can be printed quickly Sand allows easy access to individual pages such that these pages can be easily combined, which is the display lists 240. By structuring the display lists 240 in an appropriate 00 fashion, the display lists 240 can be both fast to render and are able to be geometrically transformed and aggregated with other display lists to form new pages.
One issue that has not been considered thus far is colour. The colour of an object on a page, such as a circle, is represented in the PDL script 230 as a numeric encoding.
N For example, a 'tuple' of 3 numbers representing Red, Green and Blue (RGB) colour components are often used to represent colour.
Different devices use slightly different base colours. Accordingly, the same tuple of colour components will produce a slightly different colour on different devices.
In order to avoid this, colour encodings are tuned to produce an intended colour on a particular device. The 'tuned' colour encoding of an object is also included in the display lists 240, and is therefore in the colour space of the target device. As a result, when the same display list 240 is printed on printers other than the target device, the same object may be printed in slightly different colours.
An industry standard mechanism has been developed by the Commission Internationale de l 'clairage (CIE) for mapping an intended colour into one that can be printed on a given device (device colour). The intended colour may be represented in a colour space referred to as CIE L*a*b* or CIE XYZ. These colour spaces are referred to as Profile Connection Spaces (PCS). The mapping mechanism relies on a map that is commonly referred to as a colour profile. The colour profile of a device includes a number of methods of mapping an intended colour to a device colour.
Fig. 6 shows a chromaticity diagram defined by the CIE in which all visible colours can be plotted onto a plane. The interior and boundary of the horseshoe- 714100 -9shaped region 285 represent all visible chromaticity values. It is noted that all perceivable Scolours with the same chromaticity but different luminances map into the same point within this region 285.
00 The CIE chromaticity diagram is often used to define colour gamuts, or colour ranges of given devices. The colour gamut of a given device is represented as a triangle 288, with the chromaticity of the base colours of the given device defining the corners of the triangle 288. The colour gamuts of different devices are typically not exactly the same, especially when the colour gamuts of video display devices are compared with that of hardcopy devices (printers).
As can be seen, no triangle with comers within the region 285 can be defined to cover all visible colours. Accordingly, it is impossible to represent all visible colours by mixing only 3 base colours. As a result, output devices are unable to accurately represent all visible colours.
When a device receives an intended colour for rendering that is outside its gamut 288, such as the colour defined by point 295 on the chromaticity diagram of Fig. 6, that colour has to be mapped to a colour (device colour) inside the gamut 288. The colour profile of the device contains several mappings for mapping points outside the gamut 288 to points inside the gamut 288. The International Colour Consortium (ICC) has documented a standard for device profiles, and profiles conforming to the standard are referred to as ICC Profiles. Intended colours outside the gamut 288 of the device are mapped via the ICC profiles to colours within the gamut 288 of the device.
Different mappings may be made to achieve different visual effects. For example, one mapping may map points outside the gamut 288 to points on the border of the gamut 288, for example mapping point 295 to point 296, whereas another mapping 714100 may map points outside the gamut 288 to points inside the gamut 288, for example Smapping point 295 to point 297.
00 Four standard mappings exist, which are referred to as Render Intents. Different Render Intents are often used for different types of objects within a document. In general, business graphics, text and images are mapped using different Render Intents. Reverse mappings also exist in ICC profiles for mapping device colours back into intended colours defined in the PCS.
N In view of the fact that display lists are for specific devices, there exists a requirement for a solution that enables the rendering of any display list on any output device, irrespective of the device the display list was targeted at, while maintaining reasonable colour accuracy.
One solution is to store the device ICC profile that was used to create the display list, or a reference or link to the ICC profile, with the display list, for example in the manipulation data object 563 (Fig. Furthermore, objects in the display list are stored with the Render Intent that was used to map the colour of the object.
Fig. 7 illustrates how the above solution may be used to convert a colour 405 of an object in a device colour space A represented by gamut 410 into a colour 425 of another device colour space B represented by gamut 420. The colour 405 is first mapped, using the reverse mapping of ICC profile 440, to the PCS 430, resulting in intended colour 435. The intended colour 435 is in turn mapped using ICC profile 450 to the colour 425 in the device colour space B. Using the above solution, any colour 405 in device colour space A may be converted into colour 425 in device colour space B.
Similarly, any colour in device colour space B may be converted into a colour in device colour space A. For example, the colour 425 in the device colour space B is first mapped, using the reverse mapping of ICC profile 450, to the PCS 430, resulting in 714100 -11- O intended colour 436, which in turn is mapped, using ICC profile 440, to the colour 406 in Sthe device colour space A.
It is noted that converting colour 405, which is in device colour space A, to a 00 colour in device colour space B, and back to a colour in device colour space A results in colour 406, and not the original colour 405. This is because colour mappings are implemented using numerical approximations of theoretical transforms. Also, when mapping between different device colour spaces, colours are modified to fit into the N, gamut of the target device. The application of any colour transform or mapping always results in minor errors.
This is particularly a problem when aggregating two display lists from different documents targeted at different devices to form an aggregate display list. Fig. 8A illustrates aggregating display lists 520 and 530 having objects with colours in device colour spaces A and B respectively to form aggregate display list 510. The aggregate display list 510 contains instructions and data for combining display lists 520 and 530 in a geometric fashion. The reason why aggregating the two display lists 520 and 530 is a problem is that it is unclear how to set the colour space for the aggregate display list 510.
The above problem is made even more complex when one considers constructing complex pages which are aggregates of aggregate display lists, such as the situation illustrated in Fig. 8B. Aggregate display list 550 is formed by aggregating display lists 581 and 582 having objects with colours in device colour spaces A and B respectively.
Aggregate display list 570 is formed by aggregating display lists 584 and 585 having objects with colours in device colour spaces D and E respectively. Aggregate display list 560 is formed by aggregating aggregate display list 570 and display list 583 having objects with colours in device colour space C. Aggregate display list 540 is formed by aggregating aggregate display lists 550 and 560.
714100 -12- Referring again to Fig. 8A, one solution may be to set the colour space of the Saggregate display list 510 as the device colour space of one or other of the display lists 00 520 and 530 being aggregated. Fig. 9A illustrates this solution applied to the aggregate display list 510 of Fig. 8A where device colour space A is chosen. The colours of objects in display list 530 of Fig. 8A are transformed to device colour space A, thus forming display list 531 in transformed colour space A. This transformation occurs at the time of aggregation. The colour space of aggregate display list 511 is then set to device colour N space A, as the display lists 520 and 531 aggregated to form aggregate display list 511 both use device colour space A.
As is illustrated in Fig. 9B, when the aggregate display list 511 of Fig. 9A has to be printed using device colour space D, then each of the display lists 520 and 531 being aggregated is transformed to device colour space D, thereby forming display lists 522 and 532, allowing newly formed aggregate display list 512 to be in device colour space D.
However, using this solution results in a total of 3 colour transformations, those being transforming the colours of display list 530 from device colour space B to transformed colour space A, followed by a transform to transformed colour space D, and also transforming the colours of display list 520 from device colour space A to transformed colour space D.
Another possible solution is illustrated in Figs. 10A and O10B. In this solution a 'standard' colour space is chosen when aggregating display lists 520 and 530 illustrated in Fig. 8A. Let the 'standard' colour space be colour space C, in which case the colours of objects in display lists 520 and 530 (Fig. 8A) are transformed to 'standard' colour space C, thus forming display lists 523 and 533 in transformed colour spaceC. The colour space of newly formed aggregate display list 513 may now be set to 'standard' colour 714100 13space C, as the display lists 523 and 533 aggregated to form aggregate display list 513 Sboth use 'standard' colour space C.
00 However, when the aggregate display list 513 has to be printed using device colour space D, as is illustrated in Fig. O10B, then the colour of all objects of each of the display lists 520 and 530 being aggregated have to be transformed to device colour space D to form display lists 524 and 534, allowing newly formed aggregate display list 514 to be in device colour space D. Using this solution results in a total of 4 colour N transformations, those being transforming the colours of display list 520 from device colour space A to transformed 'standard' colour space C, followed by a transform to transformed colour space D, and also transforming the colours of display list 530 from device colour space B to transformed 'standard' colour space C, followed by a transform to transformed colour space D.
As noted with reference to Fig. 7, the application of any colour transform or mapping always results in minor errors. It is therefore desirable to keep colour transformations to a minimum to maximise colour quality and range, as well as for efficiency, making the solutions discussed with reference to Figs. 9A to 10B less than optimal.
Fig. 11A illustrates yet another aggregate display list 810 being formed by aggregating display lists 820 and 830. The colours of objects in display lists 820 and 830 are in device colour spaces A and B respectively. In accordance with an embodiment of the invention, the colour space of aggregate display list 810 is left unresolved, and individual display lists 820 and 830 maintain their individual colour spaces, which are device colour spaces A and B respectively. At the rendering stage and as is illustrated in Fig. 11 B, each individual display list 820 and 830 is transformed to the target colour 714100 14space D on a per object basis as each object is rendered, thereby forming display lists 821 and 831. Aggregate display list 811 still has no colour space specified.
This results in the minimum set of transformations, as only two colour 0O transformations are required. In the case where the colour space of the target device is device colour space A or B, only one colour transformation is required.
The cost of this solution is that there are slightly more operations being
O
performed at the time of rendering, as the colour transformations from device colour
O
N, space A to device colour space D, and colour transformations from device colour space B to device colour space D for objects in display lists 820 and 830 respectively are only performed as each object is rendered.
Also according to the embodiment of the invention, no permanent changes to the display lists 820 and 830 are made.
Fig. 12 shows a schematic flow diagram of a method 900 of rendering a display list in the manner described above with reference to Figs. 1lA and 1 lB. The method 900 is preferably implemented as software, such as an application program executing within the computer system 100 (Fig. 13). The software may be stored in a computer readable medium, including the storage device 109, for example. The software is loaded into the computer system 100 from the computer readable medium, and is then executed by the processor 105 of the computer system 100. Intermediate storage of data formed by method 900 is accomplished using the semiconductor memory 106, possibly in concert with the hard disk drive 110. A computer readable medium having such software or computer program recorded on it is a computer program product.
Each display list is stored with a colour space definition of the device colour space that display list was generated for. Preferably the colour space definition is the ICC 714100 profile of the device colour space. Also, each object in each display list is stored with the Srender intent of that object.
Method 900 starts in step 905 where the processor 105 receives as input a command to render the display list. The command includes as parameters a reference to the display list to be rendered, as well as the colour space definition of the target colour space. Again, the ICC profile is preferably used as the colour space definition of the t target colour space.
N In step 910 that follows the processor 105 then determines whether the display list is an aggregate display list. In the case where it is determined that the display list is not an aggregate the method 900 proceeds to step 925 where the processor 105 determines whether the colour space of the display list is the same as that of the target device. If it is determined that the colour space of the display list is the same as that of the target device then method 900 proceeds directly to step 935, whereas if it is determined in step 925 that the colour space of the display list is not the same as that of the target device then method 900 proceeds to step 930 where the ICC profiles of the display list and the target device are loaded and a colorXform flag is set before method 900 proceeds to step 935.
In step 935 the processor 105 determines whether there are any objects to render in the display list. In the case where there are objects to render in the display list the processor determines in step 940 whether the colorXform flag is set. If the colorXform flag is not set then the object is rendered in step 955. Method 900 then moves a pointer to a next object in the display list before returning control to step 935 from where the next object in the display list is rendered. This continues until it is determined in step 935 that the display list includes no more objects to be processed, in which case method 900 ends in step 970.
714100 -16- O In the case where it is determined in step 940 that the colorXform flag is set, method 900 proceeds to step 945 where a colour transform is built by the processor 105 00oo using the current object's render intent and the display list ICC profile as inputs, and the target ICC profile as output. The colour transform is next applied to the colour of the object in step 950 and the resulting colour is temporarily stored in memory 106.
Following step 950 the method then continues to step 955 where the object is rendered n using the new colour determined in step 950. Method 900 then continues to steps 975 and C 935 from where the next object in the display list is rendered, if such an object exists.
Referring again to step 910, if the processor 105 determines that the display list is an aggregate display list, then method 900 proceeds to step 915 where the render command is again called with the left sub-display list of the aggregate display list. Step 915 is followed by step 920 where the render command is once again called with the right sub-display list of the aggregate display list. Each time the render command is called in steps 915 and 920 method 900 is performed with the input sub-display list. The method 900 then ends in step 960.
Hence, method 900 is operative to render display lists and aggregate display lists independent of the current display list colour space. The colour space of aggregate display lists are left unresolved. The render intent of each object, which is stored in the relevant display list, the display list ICC profile and the ICC profile of the target device are used to transform the colour of that object at the rendering stage.
The foregoing describes only some embodiments of the present invention, and modifications and/or changes can be made thereto without departing from the scope and spirit of the invention, the embodiments being illustrative and not restrictive.
In the context of this specification, the word "comprising" means "including principally but not necessarily solely" or "having" or "including", and not "consisting 714100 1 17only of'. Variations of the word "comprising", such as "comprise" and "comprises" have correspondingly varied meanings.
714100

Claims (11)

  1. 2. The method as claimed in claim 1, comprising the further step of: associating each object in each of said display lists with a render intent.
  2. 3. The method as claimed in claim 1 or 2, wherein said colour space definitions use profiles defined by the ICC.
  3. 4. A method of rendering an aggregate display list into an output colour space, said aggregate display list being an aggregate of two or more display lists, each display list being associated with a colour space definition corresponding to the colour space in which said display list resides and said aggregate display list having an unresolved colour space, said method comprising the steps of: constructing a colour transform for at least one display list, said colour transform defining a mapping for colours in the colour space in which the display list resides to said output colour space; 714100 -19- transforming the colour of objects of said at least one display list to said output Scolour space by applying said colour transform; and 00 rendering said aggregate display list by rendering said objects in the transformed colour. The method as claimed in claim 4, wherein each object is associated with a render intent, and said transforming uses the associated render intent for each object.
  4. 6. The method as claimed in claim 4 or 5, wherein said colour space definitions use profiles defined by the ICC.
  5. 7. The method as claimed in any one of claims 4 to 6, comprising the further step of checking, before said constructing step, if the output colour space is the same as the colour space associated with at least one display list, and if the colour spaces are the same, rendering said at least one display list in its associated colour space.
  6. 8. The method as claimed in any one of claims 4 to 7, wherein each display list aggregated into said aggregate display list remains in said colour space in which said display list resides.
  7. 9. Apparatus for forming an aggregate display list from two or more display lists, at least two of said display lists residing in colour spaces that are different from each other, said apparatus comprising: first processor for associating each of said display lists with a colour space definition corresponding to the colour space in which said display list resides; and 714100 20 second processor for aggregating said display lists using links to said two or more display lists, wherein the colour space of said aggregate display list is unresolved. 00 Apparatus for rendering an aggregate display list into an output colour space, said aggregate display list being an aggregate of two or more display lists, each display list being associated with a colour space definition corresponding to the colour space in ttf which said display list resides and said aggregate display list having a unresolved colour (NI space, said method comprising the steps of: first processor for constructing a colour transform for at least one display list, said colour transform defining a mapping for colours in the colour space the display list resides to said output colour space; second processor for transforming the colour of objects of said at least one display list to said output colour space by applying said colour transform; and third processor for rendering said aggregate display list by rendering said objects in the transformed colour.
  8. 11. A computer readable medium, having a program recorded thereon, where the program is configured to make a computer execute a procedure to form an aggregate display list from two or more display lists, at least two of said display lists residing in colour spaces that are different from each other, said procedure comprising the steps of: associating each of said display lists with a colour space definition corresponding to the colour space in which said display list resides; and aggregating said display lists using links to said two or more display lists, wherein the colour space of said aggregate display list is unresolved. 714100 -21
  9. 12. A computer readable medium, having a program recorded thereon, where the program is configured to make a computer execute a procedure to render an aggregate 00 display list into an output colour space, said aggregate display list being an aggregate of two or more display lists, each display list being associated with a colour space definition corresponding to the colour space in which said display list resides and said aggregate display list has a unresolved colour space, said procedure comprising the steps of: constructing a colour transform for at least one display list, said colour transform Ndefining a mapping for colours in the colour space the display list resides to said output colour space; transforming the colour of objects of said at least one display list to said output colour space by applying said colour transform; and rendering said aggregate display list by rendering said objects in the transformed colour.
  10. 13. A method substantially as described with reference to Figs. 1lA, 1lB or 12 of the accompanying drawings.
  11. 14. Apparatus substantially as described with reference to Figs. 1lA, 1 B, 12 or 13 of the accompanying drawings. DATED this 7th Day of APRIL 2005 CANON KABUSHIKI KAISHA Patent Attorneys for the Applicant SPRUSON&FERGUSON 714100
AU2005201495A 2004-04-13 2005-04-08 Display list colour conversion Ceased AU2005201495B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2005201495A AU2005201495B2 (en) 2004-04-13 2005-04-08 Display list colour conversion

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AU2004901938A AU2004901938A0 (en) 2004-04-13 Display List Colour Conversion
AU2004901938 2004-04-13
AU2005201495A AU2005201495B2 (en) 2004-04-13 2005-04-08 Display list colour conversion

Publications (2)

Publication Number Publication Date
AU2005201495A1 AU2005201495A1 (en) 2005-10-27
AU2005201495B2 true AU2005201495B2 (en) 2007-04-05

Family

ID=35385107

Family Applications (1)

Application Number Title Priority Date Filing Date
AU2005201495A Ceased AU2005201495B2 (en) 2004-04-13 2005-04-08 Display list colour conversion

Country Status (1)

Country Link
AU (1) AU2005201495B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5926185A (en) * 1996-05-03 1999-07-20 Barco Graphics N.V. Method for processing a set of page description language commands to reduce complexity
US6049339A (en) * 1997-12-22 2000-04-11 Adobe Systems Incorporated Blending with planar maps
WO2000062178A1 (en) * 1999-04-14 2000-10-19 Varis Corporation Method and system for merging variable text and images into bitmaps defined by a page description language

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5926185A (en) * 1996-05-03 1999-07-20 Barco Graphics N.V. Method for processing a set of page description language commands to reduce complexity
US6049339A (en) * 1997-12-22 2000-04-11 Adobe Systems Incorporated Blending with planar maps
WO2000062178A1 (en) * 1999-04-14 2000-10-19 Varis Corporation Method and system for merging variable text and images into bitmaps defined by a page description language

Also Published As

Publication number Publication date
AU2005201495A1 (en) 2005-10-27

Similar Documents

Publication Publication Date Title
US7379209B1 (en) Color separation of pattern color spaces and form XObjects
US5872895A (en) Method for object based color matching when printing a color document
JP4804605B2 (en) Transparency processing in page description language
EP1156668A2 (en) Black generation for color management system
US8159495B2 (en) Remoting sub-pixel resolved characters
US8009325B1 (en) Controlling black levels using a three dimensional intermediate color space
CN112000303B (en) Processing method and device capable of realizing watermark printing, electronic equipment and storage medium
US8203747B2 (en) Methods and systems for time-efficient print-data rendering
JP4973803B1 (en) Image processing apparatus and program
JP2007208531A (en) Multicolor printing apparatus and method of controlling same
US8582188B2 (en) Spot color press emulation color transformation method and system
US7593134B2 (en) Color rendering control system
US7973971B1 (en) Gray component replacement in color conversions
AU2005201495B2 (en) Display list colour conversion
US9924074B2 (en) Method and system for enabling optimal colorant job programming
JP5008391B2 (en) Image processing apparatus and processing method thereof
JP2006260532A (en) Image forming apparatus and method
JP5074503B2 (en) Raster image processing method and apparatus
JP4853504B2 (en) Image processing program and image processing system
JP5017241B2 (en) Image forming apparatus
JP2011077697A (en) Image processing device, image forming device, and image processing program
JP5138088B2 (en) Image processing apparatus and processing method thereof
JP3826091B2 (en) Information processing apparatus, information processing method, printing apparatus, and printing method
US8351099B2 (en) Hue specific monochromatic printing mechanism
JP4894485B2 (en) Image processing apparatus, image forming system, and image processing program

Legal Events

Date Code Title Description
FGA Letters patent sealed or granted (standard patent)
MK14 Patent ceased section 143(a) (annual fees not paid) or expired