Imaging Systems Architecture Same image on different devices Common imaging model for all applications Common code for all applications Applications Text Editors and Formatters Illustration Editors Page Layout Book Layout Same Image Different Devices Workstations Black/White or Color Monitors 40 spi to 300 spi Printers Black/White or Color Different Technologies 150 spi to 2500 spi Range of Performance Criteria Workstations Interacitive WYSIWYG Soft Printer Printers Mastermaker Production Printer Common Imaging Model (HummingBirdSlide.ip) Device Independent Uniform Set of Operations 2D with Priority Graphic Arts Quality Common code for all Devices (Imager building blocks sequence) Interface and Implementation (Imager.jam) Common Interface Shared Implementation Pieces Specialized as Needed Ubiquitous Extensible Examples Printer Displays Display List PDL Recorder Integration All Applications use common model No duplicated effort No surprises Encapsulate model for basic interchange PDL Augmented PDL Display list Imaging Model (ClassicBird.ip) Color Pressed Through Mask Mask: Geometric Shape Color: Constant or Sampled Makes Image on Page New Images Overwrite Old Ones Overview Shape Specification Color Specification Imaging Operators Special Rendering Issues Impossible Compromises Conclusions Masks (Shapes.jam) Filled Areas Strokes (LineParams.jam) Offset curves Joints, ends Dashed patterns (Dashed.jam) Sampled Mask (BirdBits.ais) Shape Specification Segment (CurveDefs.jam) Trajectory (BirdShape.jam) Outline (BirdHoles.jam ) Pixel Arrays (RainbowBird) Text (ShoreBirds.jam) Fonts: Masks plus Metrics (FontDef.jam) Show Operator (ShowDef.jam) Correct Color Types (ClassicBird.ip) Constant Color Pixel Value Color Operator [1,0,0] RGBOperator Sampled Color (SampledColor.jam) Pixel Array Transformation Color Operator Color Specification Color Model (ColorDefs.jam) Parameters + Model Produces Color Operator Find Color Specified by Name Functional Colors Other Imaging Operators (ClassicBirdClipped.ip) Clipping Any Shape Affects All Masks Transformations All Affine Transformations Scale, Rotate,Translate, Skew Imager State Variables Get and Set Values Includes Current Position Transformation Font Color Clipper Correct Parameters Basic Rendering Primitives Fill Algorithms (Fill.jam) Parity or Wrap number Specifying holes Strokes (LineParams.jam) Variable Widths Ends and Joints Dashes Sampling Quality Speed Special Rendering Issues Fonts (FontScan.ip) Quality Scan-conversion Proprietary Algorithms Color Color Printing Additive vs. Subtractive Impossible Compromises Performance Caching Special Case Algorithms "Interactive" Modes Resolution too Low Readable Fonts (jaggy fonts) Effective Halftoning (quantized gray wedge) Lack of color Capture Intent (aic4.ip) Functional Specification Conclusions Effective basis for document preparation systems Commercially Available Same Image on Different Printers Same Image on Printers and Displays Only in R&D Common Code for all Applications Integrated Set of Applications