IP Library Granted Patent US 8,446,603
Granted Patent B2
US 8,446,603 · App. 12/753,685 · Granted May 21, 2013

Systems and methods for optimizing function based object operations in interpreted page description languages

Inventor: Louis Krupp (Boulder, CO)
Assignee: Konica Minolta Laboratory U.S.A., Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,446,603
App. No.
12/753,685
Granted
May 21, 2013
Kind
B2
Abstract

Methods for optimizing the processing of function based object operations in interpreted page description languages are presented. In some embodiments, the method comprises parsing the PDL document to identify a function based operator in the PDL document; generating program code in a programming language, wherein the program code is functionally equivalent to the function based operator; compiling the program code to generate a shared object and dynamically linking the software that performs the document processing functions to the entry point of the shared object; and invoking the shared object associated with the function based operator when the function based operator is processed.

Claims (38)

1. A processor implemented method for processing at least one page in a document, wherein the document is described using an interpreted page description language (“PDL”), the method comprising:

parsing the PDL document to identify a function based operator in the PDL document;

generating program code in a programming language, wherein the program code is functionally equivalent to the function based operator;

compiling the program code to generate a shared object and dynamically linking to the entry point of the shared object; and

invoking the shared object associated with the function based operator when the function based operator is processed.

2. The processor implemented method of claim 1 , wherein the shared object is associated with the function based operator by associating the name of the shared object with a hash table key, wherein the hash table key is the function based operator.

3. The processor implemented method of claim 1 , wherein the PDL document is described in PostScript.

4. The processor implemented method of claim 3 , wherein the shared object is associated with the function based operator by associating the name of the shared object with a dictionary entry associated with the function based operator.

5. The processor implemented method of claim 3 , wherein the function based operator is a shaded fill function.

6. The processor implemented method of claim 1 , wherein the shared object is dynamically linked to software performing the document processing.

7. The processor implemented method of claim 1 , wherein the programming language used is the C programming language.

8. The processor implemented method of claim 1 , wherein the program code is generated automatically.

9. The processor implemented method of claim 1 , wherein the method is performed on:

a computer;

a printer; or

a printer coupled to a computer.

10. The processor implemented method of claim 1 , wherein the PDL document is described in the Portable Document Format (“PDF”) language.

11. A non-transitory computer-readable medium that stores instructions, which when executed by a processor perform a method for processing at least one page in a document, wherein the document is described using an interpreted page description language (“PDL”), the method comprising:

parsing the PDL document to identify a function based operator in the PDL document;

generating program code in a programming language, wherein the program code is functionally equivalent to the function based operator;

compiling the program code to generate a shared object and dynamically linking to the entry point of the shared object; and

invoking the shared object associated with the function based operator when the function based operator is processed.

12. The non-transitory computer-readable medium of claim 11 , wherein the shared object is associated with the function based operator by associating the name of the shared object with a hash table key, wherein the hash table key is the function based operator.

13. The non-transitory computer-readable medium of claim 11 , wherein the PDL document is described in PostScript.

14. The non-transitory computer-readable medium of claim 13 , wherein the shared object is associated with the function based operator by associating the name of the shared object with a dictionary entry associated with the function based operator.

15. The non-transitory computer-readable medium of claim 11 , wherein the function based operator is a shaded fill function.

16. The non-transitory computer-readable medium of claim 11 , wherein the shared object is dynamically linked to software performing the document processing.

17. The non-transitory computer-readable medium of claim 11 , wherein the programming language used is the C programming language.

18. The non-transitory computer-readable medium of claim 11 , wherein the program code is generated automatically.

19. The non-transitory computer-readable medium of claim 11 , wherein the method is performed on:

a computer;

a printer; or

a printer coupled to a computer.

20. A non-transitory computer-readable memory that stores instructions, which when executed by a processor perform a method for processing at least one page in a document, wherein the document is described using an interpreted page description language (“PDL”), the method comprising:

parsing the PDL document to identify a function based operator in the PDL document;

generating program code in a programming language, wherein the program code is functionally equivalent to the function based operator;

compiling the program code to generate a shared object and dynamically linking to the entry point of the shared object; and

invoking the shared object associated with the function based operator when the function based operator is processed.

Assignments (2)
CHANGE OF NAME Recorded Oct 4, 2011
From: KONICA MINOLTA SYSTEMS LABORATORY, INC.
To: KONICA MINOLTA LABORATORY U.S.A., INC.
Reel/Frame 027012/0081 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2010
From: KRUPP, LOUIS
To: KONICA MINOLTA SYSTEMS LABORATORY, INC.
Reel/Frame 024182/0143 →
Continuity (1)
Related Publication 20110242566A1 · Oct 6, 2011