DE60305573T2 - Verfahren zur Darstellung von gemischten Bildrasterinhaltsebenen - Google Patents

Verfahren zur Darstellung von gemischten Bildrasterinhaltsebenen Download PDF

Info

Publication number
DE60305573T2
DE60305573T2 DE60305573T DE60305573T DE60305573T2 DE 60305573 T2 DE60305573 T2 DE 60305573T2 DE 60305573 T DE60305573 T DE 60305573T DE 60305573 T DE60305573 T DE 60305573T DE 60305573 T2 DE60305573 T2 DE 60305573T2
Authority
DE
Germany
Prior art keywords
image
foreground
images
selection
areas
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.)
Expired - Lifetime
Application number
DE60305573T
Other languages
English (en)
Other versions
DE60305573D1 (de
Inventor
Henry W. Woodinville Burgess
Ming Bellevue Liu
Raman Kirkland Narayanan
Radoslav Bellevue Nickolov
Wei Sammamish Zhu
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of DE60305573D1 publication Critical patent/DE60305573D1/de
Application granted granted Critical
Publication of DE60305573T2 publication Critical patent/DE60305573T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content
    • G06V30/413Classification of content, e.g. text, photographs or tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)
  • Holo Graphy (AREA)
  • Image Processing (AREA)
  • Medicines That Contain Protein Lipid Enzymes And Other Medicines (AREA)
  • Record Information Processing For Printing (AREA)
  • Communication Control (AREA)

Description

  • Aspekte der vorliegenden Erfindung sind auf das Erzeugen und Verwenden von Dateien gerichtet. Im Speziellen bezieht sich die vorliegende Erfindung auf das Rendern zusammengesetzter Bilder.
  • Die Verwendung nicht-veränderbarer Dateien hat mit dem Wachstum des Internets zugenommen. Ein Standarddateiformat zum Veröffentlichen von Dokumenten ist das Adobe Acrobat Dateiformat (im Allgemeinen mit der Endung .PDF verbunden). Andere Dateiformate schließen JPEG und BITMAP Dateien ein. Ein Vorteil dieser Dateien ist, dass jemand diese Dateiformate benutzen kann, um Informationen über das Internet mit minimalen Bedenken bezüglich Veränderungen der Dokumente auszutauschen.
  • Ein anderes Dateiformat, das häufig gebraucht wird, ist die MRC- oder gemischte Rasterinhaltsdatei (Mixed Raster Content File). Dieses Dateiformat teilt ein Bild in drei gleich große Bilder und speichert diese mit verschiedenen Auflösungen, und in manchen Fällen mit verschiedenen Kompressionsraten oder-technologien. 2 zeigt einen typischen Prozess zum Erzeugen von MRC-Dateien. Ein Bildgenerator 301 gibt ein Ursprungsbild 302 aus. Das Ursprungsbild 302 hat eine Bildauflösung von 300 dpi. Das Ursprungsbild 302 wird durch einen Trennungsprozess 303 in drei einzelne Bilder 304 bis 306 getrennt. Die drei einzelnen Bilder schließen ein schwarz/weiß (S/W) maskiertes Bild 304, ein Vordergrundbild 305, und ein Hintergrundbild 306 ein. Die drei Bilder 304 bis 306 haben die gleichen Dimensionen (x, y) wie das Ursprungsbild 302. Wie in 2 gezeigt, sind die Auflösungen der drei Bilder 304 bis 306 mit 300 dpi, 300 dpi, bzw. 100 dpi gezeigt. Die drei Bilder können wahlweise durch den Komprimierungsprozess 307 in verschiedenen Graden durch verschiedene Kompressionstechnologien komprimiert werden.
  • Trotz des Vorteils aus der Möglichkeit ein Ursprungsbild 302 in verschiedene andere Dateien 304 bis 306 zu zerlegen, leiden MRC-Dateien, wie es der Fachwelt bekannt ist, unter einem langen Zerlegungsprozess (Trennungsprozess 303). Der Trennungsprozess 303 versucht alle Komponenten eines Bildes zu analysieren und Aspekte zum Einschließen in jede der Dateien 304 bis 306 auszusortieren. Es gibt einen Bedarf, MRC-Dateien ohne große Verzögerung zu erzeugen.
  • Die zusammengesetzten Dateien 304 bis 306 können auch groß sein, während sie wenig Inhalt besitzen. 3 zeigt eine beispielhafte konventionelle MRC-Datei. Die Datei enthält drei Ebenen (Layer) einschließlich einer Hintergrundebene 401, Auswahlebene oder schwarzweiß oder S/W maskierten Ebene 402 und eine Vordergrundebene 403. Zum Zweck der Darstellung ist das zusammengesetzte Bild 411 als das resultierende Bild gezeigt, wenn die drei Ebenen (401 bis 403) kombiniert werden. Wie es in der Fachwelt bekannt ist, hat die Hintergrundebene eine Farbtiefe pro Pixel von 24 Bits pro Pixel (24 bpp), hat die Auswahlebene eine Farbtiefe pro Pixel von 1 bpp, und hat die Vordergrundebene eine Farbtiefe von 24 bpp.
  • Jede Ebene beinhaltet ein Bild. Jedes Bild hat die gleichen Dimensionen (x, y) (wie in 2 und 3 gezeigt). Z.B. enthält die Hintergrundebene 401 ein Bild mit dem Inhalt 404 in der Mitte. Die Auswahlebene 402 enthält ein Bild mit drei Sätzen von Inhalt 405 bis 407. Der Inhalt 405 ist „schwarzer Text" (Black Text), welcher dafür gedacht ist, schwarzen Text darzustellen. Der Inhalt 406 ist „Farbtext A" (Color Text A), welcher Text ist, der die Farbe A in dem zusammengesetzten Bild 411 hat, obwohl er in der Auswahlebene 402 als schwarzer Text dargestellt ist. Dies liegt daran, dass die Auswahlebene 402 eine Farbtiefe von nur 1 bpp hat. Ebenso ist Inhalt 407 „Farbtext B" (Color Text B), welcher Text ist, der die Farbe B in dem zusammengesetzten Bild 411 hat, jedoch schwarzer Text in der Auswahlebene 402 ist. Die Vordergrundebene 403 enthält drei Sätze mit Farbpaletten, einschließlich Schwarz 408, Farbe A 409 und Farbe B 410. Ein Anliegen bzgl. der MRC-Datei aus 3 ist die signifikante Menge an nicht verwendetem Platz. Der nicht verwendete Platz vergrößert die zugrundeliegende Bildgröße jeder Ebene. Dieser nicht verwendete Platz erhöht die Zeit, die für Codieren, Decodieren und Zusammensetzungsphasen benötigt wird. Die Kombination von nicht verwendetem Platz und Inhalt führt auch manchmal zu einer schlechten Komprimierung der Ebenen. Entsprechend gibt es einen Bedarf, nicht verwendeten Platz in den zusammengesetzten Dateien 304 bis 306 zu minimieren.
  • Bottou L et al: „High Quality Document Image Compression with DJVU Journal of Electronic Imaging, SPIE + IS&T, US, vol. 7, Nummer 3, 1 Juli 1998, Seiten 410–425 offenbart eine Bildkomprimierungstechnik, die "DjVu" genannt wird, die speziell auf die Komprimierung von hochauflösenden Bildern hoher Qualität von gescannten Farbdokumenten gerichtet ist. Sie ermöglicht eine schnelle Übermittlung von Dokumentbildern über langsame Verbindungen, während die visuellen Aspekte des Dokuments reproduziert wer den. Der DjVu-Komprimierer teilt den Text und die Bilder, welche eine hohe räumliche Auflösung brauchen, von den Bildern und Hintergründen, welche gleichmäßiger sind und mit einer kleineren räumlichen Auflösung codiert werden können. Zwei Techniken werden verwendet, um das Komprimierungsverhältnis zu maximieren. Beide Techniken verwenden einen adaptiven, binären Arithmetikkodierer, der ZP-Kodierer genannt wird.
  • Bottou U et al: „Efficient conversion of digital documents to multilayer raster formats", Document Analysis and Recognition, 2001. Proceedings, Sixth International Conference on Seattle, WA, USA, 10.–13. September 2001, Seiten 444–448 diskutieren, wie die Beschreibung von digitalen Dokumenten in etwas Effizientes für Multilayer-Rasterformate umgewandelt werden kann.
  • P. Haffner, L. Bottou, Y. Lecun: „A General Segmentation Scheme for DJVU Document Compression" Intemational Symposium on Mathematical Morphology VI, Proceedings of ISMM2002, 03.–05. April 2002, Sydney, New South Wales, Australia, Seiten 17 bis 35 offenbaren eine Dokumentbildkomprimierungsmethodik, die eine Musterabstimmungstechnik verwendet, die die Vorteile aus den Ähnlichkeiten zwischen Zeichenumrissen zieht.
  • „ITU-T Recommendation T.44 – Mixed raster content (MRC)", ITU-T Recommendation T.44, April 1999, Seiten 1–31, bieten eine Empfehlung, die die technischen Merkmale von Mixed-Raster-Content-Bildformaten (MRC-Bildformaten) spezifiziert, die eine effiziente Bearbeitung, Austausch und Archivierung von rasterorientierten Seiten ermöglicht, die einen Mix aus Multi-Level- und Bi-Level-Bildern enthalten.
  • Es ist die Aufgabe der vorliegenden Erfindung, einen verbesserten Prozess und entsprechende computerlesbare Medien bereitzustellen, die ein Programm darauf gespeichert haben, zum Rendern von zusammengesetzten Bildern.
  • Diese Aufgabe ist durch den Gegenstand der unabhängigen Ansprüche 1 und 6 gelöst.
  • Bevorzugte Ausführungsformen sind in den abhängigen Ansprüchen definiert.
  • Aspekte sind auf die Erzeugung und Verwendung von MRC-Dateien gerichtet, um ein oder mehrere der oben beschriebenen Bedürfnisse zu behandeln. In manchen Aspekten werden MRC-Dateien durch Druckertreiber erzeugt, ohne durch einen Trennungsprozess bearbeitet werden zu müssen. In anderen Aspekten kann jede Ebene von MRC-Dateien ein oder mehr Bilder (oder Unterbilder) einschließen, um Komprimierung zu erlauben, die effizienter ist, als ein einzelnes Bild, das jede Ebene abdeckt. Diese verschiedenen Aspekte können getrennt oder in Kombination verwendet werden.
  • Diese und andere Merkmale der Erfindung werden unter Berücksichtigung der folgenden detaillierten Beschreibung der verschiedenen Ausführungsformen deutlich.
  • KURZE BESCHREIBUNG DER FIGUREN
  • Die vorangegangene Kurzfassung der Beschreibung sowie die folgende detaillierte Beschreibung der bevorzugten Ausführungsformen wird besser verstanden, wenn sie in Verbindung mit den angehängten Figuren gelesen wird, welche als Beispiel und nicht als Einschränkung in Bezug auf die beanspruchte Erfindung angefügt sind.
  • 1 ist ein schematisches Diagramm einer Allzweck, digitalen Computerumgebung, die verwendet werden kann, um verschiedene Aspekte der Erfindung zu implementieren.
  • 2 zeigt einen konventionellen Prozess zum Erzeugen einer Mixed Raster Content Datei.
  • 3 zeigt eine konventionelle Mixed Raster Content Datei.
  • 4 zeigt einen Prozess zum Erzeugen einer Mixed Raster Content Datei.
  • 5 zeigt ein Beispiel einer Mixed Raster Content Datei gemäß Aspekten der vorliegenden Erfindung.
  • 6 zeigt ein anderes Beispiel einer Mixed Raster Content Datei gemäß Aspekten der vorliegenden Erfindung.
  • 7A und 7B zeigen verschiedene Prozesse zum Erzeugen von Mixed Raster Content Dateien.
  • 8A und 8B zeigen alternative Prozessschritte für 7A.
  • 9A und 9B zeigen verschiedene Prozesse zum Rendern eines zusammengesetzten Bildes von einer Mixed Raster Content Datei gemäß Aspekten der vorliegenden Erfindung.
  • 10 zeigt einen anderen exemplarischen Prozess zum Erzeugen einer Mixed Raster Content Datei.
  • 11 zeigt einen beispielhaften Prozess zum Vereinigen von Bildern.
  • 12 zeigt verschiedene Ergebnisse für die Zusammensetzung von Bildern
  • 13 zeigt einen beispielhaften Prozess zum Einrichten der Nähe von Bildern.
  • 14 zeigt zwei Bilder und verschiedene Darstellungen von Platz, der durch ihre Verbindung verbraucht wird.
  • 15A, 15B und 15C zeigen verschiedene Darstellungen der Berechnung des verbrauchten Platzes in kombinierten Bildern.
  • DETAILLIERTE BESCHREIBUNG
  • Die folgende Beschreibung richtet sich auf Mixed Raster Content Dateien. Es wird begrüßt, dass die offenbarten Konzepte und Ansätze auf andere Dateitypen angewandet werden können. Verschiedene Prozesse werden auch offenbart. Diese Prozesse werden als Beispiele bereitgestellt, die verwendet werden können und die nicht als die einzige Ausdrucksweise der verschiedenen Prozesse gedacht ist, die verwendet werden, um die verbesserten Mixed Raster Content Dateien zu erzeugen oder zu verwenden. Des Weiteren sind die Pixelfarben der Auswahlebene im Allgemeinen als Schwarz und Weiß bezeichnet. Es wird begrüßt, dass die Auswahlebene nur ein Bit pro Pixel Farbtiefe haben kann und deshalb nur Pixel haben kann, die an oder aus sind (oder den Farbstatus 1 bzw. Farbstatus 0 haben). Schwarz und Weiß werden verwendet, um die Nomenklatur zu vereinfachen. Jedoch können irgendwelche Farben (z.B. Fuchsia und Cyan) oder „an und aus" und Ähnliches anstatt dessen verwendet werden.
  • 1 stellt ein schematisches Diagramm einer konventionellen Allzweckdigitalcomputerumgebung dar, die verwendet werden kann, um verschiedene Aspekte der vorliegenden Erfindung zu implementieren. In 1 enthält ein Computer 100 eine Prozessoreinheit 110, einen Systemspeicher 120 und einen Systembus 130, der verschiedene Systemkomponenten koppelt, einschließlich dem Systemspeicher mit der Prozessoreinheit 110. Der Systembus 130 kann irgendeiner von verschiedenen Busstrukturtypen sein, einschließlich einem Speicherbus oder Speichercontroller, einem Peripheriebus, und einem lokalen Bus, der irgendeine einer Vielfalt von Busarchitekturen verwendet. Der Systemspeicher 120 schließt Read Only Memory (ROM) 140 und Random Access Memory (RAM) 150 ein.
  • Ein Basic Input/Output System 160 (BIOS), welches die Basisroutinen enthält, die helfen Informationen zwischen Elementen innerhalb des Computers 100 zu übermitteln, wie z.B. während des Hochfahrens, ist in dem ROM 140 gespeichert. Der Computer 100 enthält auch ein Festplattenlaufwerk 170 zum Lesen von und Schreiben zu einer Festplatte (nicht gezeigt), ein magnetisches Disklaufwerk 180 zum Lesen von oder Schreiben zu einer entfernbaren magnetischen Disk 190, und einem optischen Disklaufwerk 191 zum Lesen von oder Schreiben zu einer entfernbaren optischen Disk 192, wie z.B. einer CD-ROM oder anderen optischen Medien. Das Festplattenlaufwerk 170, magnetische Disklaufwerk 180 und optische Disklaufwerk 191 sind mit dem Systembus 130 über eine Festplattenlaufwerksschnittstelle 192, eine magnetische Disklaufwerksschnittstelle 193, bzw. einer optischen Disklaufwerksschnittstelle 194 verbunden. Die Laufwerke und deren zugehörige computerlesbare Medien stellen nicht-flüchtigen Speicher für computerlesbare Instruktionen, Datenstrukturen, Programmmodule und andere Daten für den Personalcomputer 100 bereit. Es wird durch Fachleute begrüßt, dass andere Typen von computerlesbaren Medien, die Daten speichern können, die durch einen Computer zugreifbar sind, ebenso in der beispielhaften Arbeitsumgebung verwendet werden können, wie z.B. magnetischen Kassetten, Flash Memory Karten, Digital Video Discs, Bernoulli Kartuschen, Random Access Memories (RAMs), Read Only Memories (ROMs), und Ähnliches.
  • Eine Zahl von Programmmodulen können auf dem Festplattenlaufwerk 170, magnetischer Disk 190, optischer Disk 192, ROM 140 oder RAM 150 gespeichert werden, einschließlich einem Betriebssystem 195, einem oder mehreren Anwendungsprogrammen 196, anderen Programmmodulen 197 und Programmdaten 198. Ein Benutzer kann Befehle und Informationen in den Computer 100 durch Eingabegeräte, wie z.B. ein Keyboard 101 und Zeigergerät 102 eingeben. Andere Eingabegeräte (nicht gezeigt) können ein Mikrofon, Joystick, Game Pad, Satellitenschüssel, Scanner oder Ähnliches einschließen. Diese und andere Eingabegeräte sind oft mit der Prozessoreinheit 110 durch eine serielle Anschlussschnittstelle 106 verbunden, die mit dem Systembus gekoppelt ist, können aber auch durch andere Schnittstellen verbunden sein, wie z.B. einem Parallelanschluss, Game Port oder einem Universal Serial Bus (USB). Des Weiteren können diese Geräte direkt mit dem Systembus 130 über eine geeignete Schnittstelle (nicht gezeigt) gekoppelt sein. Ein Monitor 107 oder anderer Anzeigegerättyp ist auch mit dem Systembus 130 über eine Schnittstelle verbunden, wie z.B. einem Videoadapter 108. Zusätzlich zu dem Monitor enthalten Personalcomputer üblicherweise andere periphere Ausgabegeräte (nicht gezeigt), wie z.B. Lautsprecher und Drucker. In manchen Ausführungsformen werden ein Stiftdigitalisierer 165 und zugehöriger Stift oder Schreiber 166 bereitgestellt, um freihändige Eingaben digital zu erfassen. Obwohl eine Verbindung zwischen dem Stiftdigitalisierer 165 und dem seriellen Schnittstellenanschluss 106 gezeigt ist, kann der Stiftdigitalisierer 165 in der Praxis auch mit der Prozessoreinheit 110 direkt über einen Parallelanschluss oder andere Schnittstelle und dem Systembus 130, wie der Fachwelt bekannt, gekoppelt sein. Ferner, obwohl der Digitalisierer 165 getrennt von dem Monitor 107 gezeigt ist, kann das verwendbare Eingabegebiet des Digitalisierers 165 flächengleich mit dem Anzeigegebiet des Monitors 107 sein. Des Weiteren kann der Digitalisierer 165 in den Monitor 107 integriert sein, oder kann als separates Gerät vorhanden sein, das dem Monitor übersteht oder anders angehängt ist.
  • Der Computer 100 kann in einer Netzwerkumgebung arbeiten, die logische Verbindungen zu einem oder mehreren Remote Computern, wie z.B. einem Remote Computer 109, verwenden. Der Remote Computer 109 kann ein Server, ein Router, ein Netzwerk PC, ein Peer-Gerät oder anderer bekannter Netzwerkknoten sein, und enthält üblicherweise viele oder alle der oben in Bezug auf Computer 100 beschriebenen Elemente, obwohl nur ein Speichergerät 111 in der 1 dargestellt worden ist. Die logischen Verbindungen, die in 1 gezeigt sind, schließen ein Local Area Network (LAN) 112 und ein Wide Area Network (WAN) 113 ein. Solche Netzwerkumgebungen sind alltäglich in Büros, unternehmensweiten Computernetzwerken, Intranets und dem Internet.
  • Wenn er in einer LAN-Netzwerkumgebung verwendet wird, ist der Computer 100 mit dem lokalen Netzwerk 112 durch eine Netzwerkschnittstelle oder Adapter 114 verbunden. Wenn er in einer WAN-Netzwerkumgebung verwendet wird, enthält der Personalcomputer 100 üblicherweise ein Modem 115 oder andere Mittel zum Herstellen einer Verbindung über das Wide Area Network 113, wie z.B. dem Internet. Das Modem 115, welches intern oder extern sein kann, ist mit dem Systembus 130 über die serielle Anschlussschnittstelle 106 verbunden. In einer Netzwerkumgebung können Programmmodule, die in Bezug auf Personalcomputer 100 dargestellt sind, oder Teile davon, in dem Remote Speichergerät gespeichert sein.
  • Es wird begrüßt, dass die gezeigten Netzwerksverbindungen beispielhaft sind, und andere Techniken zum Herstellen einer Kommunikationsverbindung zwischen den Computern verwendet werden kann. Die Existenz von irgendeinem von verschiedenen bekannten Protokollen, so wie z.B. TCP/IP, Ethernet, FTP, HTTP und Ähnliches wird vorausgesetzt, und das System kann in einer Client-Server Konfiguration arbeiten, um es einem Benutzer zu erlauben, Webseiten von einem webbasierten Server abzurufen. Irgendeiner von verschiedenen konventionellen Web Browsern kann verwendet werden, um Daten auf Webseiten anzuzeigen und zu manipulieren.
  • 4 zeigt einen Prozess zum Erzeugen einer Mixed Raster Content Datei. Ein Bildgenerator 500 (z.B. ein Zeichenprogramm, Textverarbeitungsprogramm, Webveröffentlichungssystem, u.ä.) gibt den Inhalt der MRC-Datei (die drei Ebenen: Auswahlebene 502, Vordergrundebene 503, und Hintergrundebene 504) aus, ohne ein zusammengesetztes Bild auszugeben, dass durch den Prozess 303 von 2 konvertiert (d.h. getrennt) werden müsste. Diese Ausgabe kann Aufrufe an eine Grafik-Rendering-Engine 501 einschließen (z.B. die GDI API, verfügbar durch Microsoft Corporation aus Redmond, Washington). Andere Grafik-Renderer 501 können ebenso verwendet werden. Alternativ kann das Rendering vollständig innerhalb des Bildgenerators 505 stattfinden. Schließlich kann die MRC-Datei optional durch eine ausgewählte Komprimierungs-Engine 505 komprimiert werden. Die Komprimierung ist optional, was durch ein gestricheltes Rechteck gezeigt ist.
  • 5 zeigt ein Beispiel einer Mixed Raster Content Datei gemäß Aspekten der vorliegenden Erfindung. Die MRC-Datei enthält drei Ebenen: Hintergrundebene 601, Auswahlebene 602 und Vordergrundebene 603. Das zusammengesetzte Bild 604 ist als Er läuterung gezeigt. Die Hintergrundebene enthält Inhalt 605. Der Hintergrundinhalt 605 kann durch ein Bild mit der Größe des zusammengesetzten Bildes 604 dargestellt werden. Alternativ kann der Hintergrundinhalt durch ein Bild dargestellt werden, das ein begrenzendes Rechteck hat, das kleiner ist, als die Größe des zusammengesetzten Bildes 604. Die Auswahlebene 602 schließt Inhalt 606 ein, der durch „Farbtext A" (Color Text A) dargestellt ist, wobei, während dieser als Text mit der Schriftfarbe A dargestellt ist, die Auswahlebene 602 den Inhalt 600 als schwarzen Text darstellt. Vordergrundebene 603 enthält schwarzen Text 607, ein farbiges Rechteck 608 in der Farbe A, und Inhalt 609 als „Farbtext B" (Color Text B) mit der Schriftfarbe B. Das farbige Rechteck 608 kann in einer Anzahl von Vorgängen eliminiert werden. Z.B., wenn der Text eine einheitliche Farbe hat und durch die Kombination von Auswahl- und Hintergrundebene dargestellt wird. Der Inhalt 607 bis 609 kann als ein einzelnes Bild mit der Größe des zusammengesetzten Bildes 604 dargestellt werden (ähnlich zu der Beschreibung der identischen Größe oben). Alternativ kann der Inhalt 607 bis 609 durch zwei oder mehr Bilder (oder Unterbilder) dargestellt werden. Die Bilder können durch begrenzende Gebiete definiert sein (Rechtecke oder andere in der Fachwelt bekannte Formen), wie es durch die begrenzenden Gebiete dargestellt ist, die jeden der Inhalte 607 bis 609 umgeben.
  • Wie in 5 gezeigt, wird die Auswahlebene 602 verwendet, wenn ein Vordergrundbild ein Hintergrundbild überlappt. Hier macht das Verschieben von Inhalt aus der Auswahlebene in die Vordergrundebene die Rendering-Funktion schneller, weil es kein Prüfen und Ausführen von Auswahl oder Alpha-Blending gibt, wenn es keine Überlappung des Vordergrund- und Hintergrundinhalts gibt. Ein anderer Aspekt ist, dass einheitlich farbiger Text und bestimmte Linienzeichnungen als binäre Bilder in der Vordergrundebene mit geeigneter Farbpalette gespeichert werden können, anstatt als ein binäres Bild in der Auswahlebene plus ein Farbbild in der Vordergrundebene gespeichert zu werden. Es wird geglaubt, dass das Verschieben von Inhalt aus der Auswahlebene in die Vordergrundebene die Komprimierungs- und Rendering-Leistung verbessert.
  • Eine andere Kombination wird in 5 gezeigt, in der die Auswahl- und Hintergrundebenen ohne eine Vordergrundebene da sind. In diesem Fall, wenn es ein nicht weißes Pixel in der Auswahlebene gibt, aber kein entsprechendes Pixel in der Vordergrundebene, ist die Farbe des Pixels in dem zusammengesetzten Bild die der Auswahlebene. Diese Kombination ist gebräuchlich und kann effizienter bezüglich Rendering-Leistung und Komprimierung sein, als die Kombination aus Hintergrund-, Auswahl-, und Vordergrundebene.
  • Die Vordergrundebene kann eine höhere Farbtiefe haben (z.B. 24 bpp). In einer Ausführungsform haben alle Bilder in der Vordergrundebene die gleiche Farbtiefe. Alternativ können die Bilder im Vordergrund eine oder mehrere Farbtiefen haben. Z.B. kann der Inhalt 607 eine Farbtiefe von 1 bpp haben, während Inhalte 608 und 609 eine andere Farbtiefe von 24 bpp haben. Es gibt Situationen, in denen die eigentliche Farbe, die mit einer Region assoziiert ist, basierend auf weniger als einer hohen Farbtiefe definierbar sein kann. In einer weiteren Ausführungsform kann der Inhalt 608 eine Farbtiefe von 8 bpp haben, während der Inhalt 609 eine Farbtiefe von einem anderen Wert als 1 bpp und 8 bpp hat (einschließlich, aber nicht darauf begrenzt, 2 bpp, 4 bpp, 16 bpp, 24 bpp, 32 bpp, und Ähnliches). Das Verwenden der Farbtiefe in dem notwendigen Umfang, um einen Farbbereich zu definieren (eher als sie für eine gesamte Ebene voreinzustellen), erlaubt eine größere und/oder effizientere Komprimierung durch das Eliminieren unnötiger Farbe, die Bits pro Pixel spezifizieren, und/oder schnellere Komprimierungs- und Renderingperfomance.
  • Die Fähigkeit Farbtiefen basierend auf jedem Bild oder Sammlung von Bildern in einer Ebene zu definieren, ist ebenso auf die Hintergrundebene anwendbar.
  • 6 zeigt eine andere Darstellung einer MRC-Datei. Hier ist ein Hintergrundbild 610 mit „Farbtext C" (Color Text C) 611 und „schwarzer Text" (Black Text) 612 verbunden, um ein zusammengesetztes Bild 613 zu bilden. Jedes Bild 610, 611 und 612 hat eine Größe, die kleiner als die Größe des zusammengesetzten Bildes ist. In diesem alternativen Beispiel ist die kombinierte Summe der Bilder 610, 611 und 612 kleiner als die Größe des zusammengesetzten Bildes.
  • 7A zeigt einen exemplarischen Vorgang zum Erzeugen einer Mixed Raster Content Datei. Der Prozess beginnt mit Schritt 701 von der bilderzeugenden Anwendung. Zuerst werden Text und Linienzeichnungen in Schritt 702 verarbeitet. Wenn Text und/oder Linienzeichnungen vorhanden sind, werden diese zu der Auswahlebene in Schritt 703 hinzugefügt. Die Farbe der Linie oder des Textes wird verwendet, um ein Farbgebiet für den Vordergrund in Schritt 704 zu erzeugen. Das Farbgebiet kann rechteckig oder irgendeine andere benötigte Form sein, um das Gebiet in der Vordergrundebene zu definieren, um die Farbe für den Text und/oder die Linien aus Schritt 702 richtig zu spezifizieren. Als nächstes werden die Bilder, die in der Bilddatei liegen, in Schritt 705 bearbeitet und zu der Hintergrundebene in Schritt 706 hinzugefügt.
  • Das Beispiel aus 7A zeigt die Fähigkeit, Bilder direkt von einer Anwendung zu bearbeiten, während sie zu einem Gerätetreiber gesendet werden, oder von einer gespulten Meta-Datei. Im Gegensatz dazu ist der konventionelle Ansatz, um die MRC-Datei zu erzeugen, ein intaktes zusammengesetztes Bild zu nehmen und es in verschiedene Komponenten über den Trennungsprozess 303 zu trennen. Der Trennungsprozess 303 ist fehleranfällig und verbraucht signifikant Ressourcen, um den Bildzerlegungsprozess abzuwickeln. Das Beispiel aus 7A jedoch stellt die Fähigkeit bereit, MRC-Dateien ohne den Trennungsprozess zu erzeugen, weil das Beispiel aus 7A die verschiedenen Komponenten eines Bildes abarbeitet, während die verschiedenen Komponenten immer noch separat adressierbar sind.
  • 7B zeigt einen alternativen Prozess zum Erzeugen einer MRC-Datei. Hier werden, wenn ein Grafikrenderer den MRC-Generierungsprozess in Schritt 701 beginnt, die Grafikaufrufe mit den relevanten Bildgebieten in Schritt 708 aufgelistet. Die Liste kann eins oder mehr der folgenden Punkte für jedes Bildgebiet einschließen:
    • • begrenzendes Gebiet;
    • • Typ der Grafikausgabe; und
    • • verwendete Farbe.
  • Als nächstes wird in Schritt 709, wenn das Bildgebiet Text oder Linienzeichnungen sind, das Bildgebiet zu der Auswahlebene in Schritt 703 hinzugefügt. Andernfalls wird in Schritt 710 das Bildgebiet zu der Vordergrund-/Hintergrundebene hinzugefügt. Jeglicher Typ von Bild wird zu der Vordergrund-/Hintergrundebene hinzugefügt, was die Vordergrund-/Hintergrundebene zu einer guten Darstellung des Dokuments macht.
  • Die 8A und 8B zeigen verschiedene Optionen für Schritt 704 aus 7A. In 8A werden die Schrift- oder Pinselfarbe des Textes bzw. Linien in Schritt 801 vermerkt und an Schritt 803 weitergegeben. Außerdem werden in Schritt 802 das begrenzende Gebiet oder Gebiete (welche Rechtecke oder andere Formen sein können, die die Grenzen des Textes und/oder der Linien definieren) ermittelt und an Schritt 803 weitergegeben. Die Schritte 801 und 802 können in irgendeiner Reihenfolge stattfinden oder gleichzeitig abgehandelt werden. Es wird des Weiteren begrüßt, dass die Gebiete, die in Schritt 802 ermittelt werden, nicht vollständig gefüllt sein müssen. Z.B. kann eine Linienzeichnung eines Kreises ein begrenzendes Gebiet in der Form eines Torus haben. In Schritt 803 werden das Gebiet oder die Gebiete, die in Schritt 802 ermittelt wurden, als gefüllte Gebiete in der Vordergrundebene ausgemalt.
  • 8B zeigt eine andere Alternative für den Schritt 704. Zuerst wird jedes Pixel in der Auswahlebene 804 gescannt. Wenn das Pixel schwarz ist, wie in Schritt 805 ermittelt, dann wird die Farbe des Hintergrundpixels verwendet, um die Farbe eines entsprechenden Vordergrundpixels in Schritt 806 zu verfüllen. Der scannende Schritt 804 kann jedes Pixel der gesamten Auswahlebene abdecken.
  • Alternativ kann der Schritt 804, während die Auswahlebene in Bilder aufgebrochen wird, die Inhalt enthalten, nur die Bilder in der Auswahlebene scannen. Weil das Gebiet der Auswahlebene, das nicht durch Bilder verwendet wird, keinen Inhalt beinhalten würde, würden diese Gebiete nicht durch Schritt 804 gescannt werden.
  • In einem anderen Aspekt der Erfindung wird die Anordnung der MRC-Datei verändert. 9A zeigt einen beispielhaften Prozess zum Rendern eines zusammengesetzten Bildes von einer Mixed Raster Content Datei aus 6. In Schritt 901 beginnt das System ein zusammengesetztes Bild von verschiedenen MRC-Ebenen zu konstruieren. Für alle Pixel in dem zusammengesetzten Bild wird in Schritt 902 ermittelt, ob ein Pixel in der Auswahlebene ist. Wenn ja, dann ermittelt das System in Schritt 905, ob das Pixel in der Auswahlebene weiß ist. Wenn das Pixel weiß ist, dann überprüft das System in Schritt 906, ob es ein Pixel in der Hintergrundebene gibt. Wenn es kein Pixel in der Hintergrundebene gibt, dann wird die vorgegebene Hintergrundfarbe in Schritt 909 verwendet, wobei andererseits die Farbe von dem entsprechenden Pixel in der Hintergrundebene in Schritt 910 verwendet wird.
  • Wenn das Pixel in der Auswahlebene von Schritt 905 nicht weiß ist, dann überprüft das System in Schritt 907, ob es ein Pixel in der Vordergrundebene gibt. Wenn es kein Pixel in der Vordergrundebene gibt, dann wird in Schritt 908 die Farbe des Pixels in der Aus wahlebene verwendet. Wenn es ein Pixel in der Vordergrundebene in Schritt 907 gibt, dann wird in Schritt 904 die Farbe von dem entsprechenden Pixel in der Vordergrundebene verwendet.
  • Wenn es kein Pixel in der Auswahlebene von Schritt 902 gibt, dann ermittelt das System in Schritt 903, ob es ein Pixel in der Vordergrundebene gibt. Wenn es ein Pixel in der Vordergrundebene gibt, dann verwendet das System in Schritt 904 die Farbe von dem entsprechenden Pixel in der Vordergrundebene. Andernfalls ermittelt das System in Schritt 906, ob es ein Pixel in der Hintergrundebene gibt, und fährt wie oben beschrieben fort.
  • Wenn es kein Pixel in der Auswahlebene gibt, wie in Schritt 902 ermittelt, dann ermittelt das System in Schritt 903, ob es ein entsprechendes Pixel in der Vordergrundebene gibt. Wenn nein, dann wird die Farbe von dem entsprechenden Pixel in der Hintergrundebene verwendet (Schritt 906). Wenn es kein entsprechendes Pixel in dem Hintergrundbild gibt, dann kann eine vorgegebene Pixelfarbe verwendet werden (z.B. weiß oder grau oder es kann sogar als transparent eingestellt werden). Wenn das Ergebnis von Schritt 903 ja ist, dann wird die Farbe von dem entsprechenden Pixel in der Vordergrundebene verwendet (904).
  • 9B zeigt einen Prozess zum Verbinden der vielen Ebenen in ein zusammengesetztes Bild. Ausgehend von dem Beginn in 901, erhält das System die begrenzenden Rechtecke oder anderen Formen für den Inhalt der Ebenen. Als nächstes berechnet das System vier Listen. Die erste Liste (NOL_FGBG) stellt Gebiete dar, in denen der Vordergrund nicht mit den Auswahlgebieten und Gebieten überlappt, wo der Hintergrund nicht mit den Vordergrundgebieten überlappt. Die zweite Liste (SEL) stellt Gebiete dar, wo die Auswahl nicht mit den Vordergrundgebieten überlappt. Die dritte Liste (SELFG) stellt Gebiete dar, wo nur die Auswahl und Vordergrundgebiete überlappen. Die vierte Liste (BGFGSEL) stellt Gebiete dar, wo die Hintergrund-, Auswahl-, und Vordergrundebenen alle überlappen.
  • Als nächstes wird in Schritt 913 das zusammengesetzte Bild mit einer vorgegebenen Hintergrundfarbe gefüllt. Jede Liste wird in den Schritten 914 bis 917 bearbeitet. In Schritt 914, wird jedes Gebiet in der ersten Liste (NOL_FGBG), wenn es ein Vorder grundgebiet gibt, mit dem Vordergrundbild gefüllt. Andernfalls wird das Gebiet mit dem Hintergrundbild gefüllt.
  • In Schritt 915 wird für jedes Gebiet aus der zweiten Liste (SEL), wenn das Pixel aus der Auswahlebene weiß ist, werden keine Veränderungen an dem zusammengesetzten Bild gemacht. Andernfalls wird der Farbwert von dem Pixel in der Auswahlebene verwendet.
  • In Schritt 916 wird für jedes Gebiet in der dritten Liste (SELFG), wenn das Pixel in der Auswahlebene weiß ist, wird keine Veränderung an dem zusammengesetzten Bild gemacht. Andernfalls wird die Farbe des Pixels in der Vordergrundebene verwendet.
  • In Schritt 917 wird für jedes Gebiet in der vierten Liste (BGFGSEL), wenn das Pixel in der Auswahlliste weiß ist, die Farbe des Hintergrunds verwendet. Andernfalls wird die Farbe des Pixels im Vordergrund verwendet.
  • 10 zeigt einen anderen beispielhaften Prozess zum Erzeugen einer Mixed Raster Content Datei. Der Prozess, wie in 10 gezeigt, stellt die MRC-Datei aus 6 her. Der Prozess beginnt mit Schritt 1001, wo der Prozess angestoßen wird. In einem Beispiel kann der Schritt 1000 der Empfang eines Befehls zum Drucken der MRC-Datei sein. Weil Schritt 1000 ein Teil einer Anwendung, Teil einer Grafiktoolbox, aufgerufen durch eine Anwendung, oder ein Host für andere Wege, das Erzeugen der MRC-Datei anzustoßen, sein kann, ist Schritt 1000 in einem gestrichelten Rechteck gezeigt.
  • Zum Zweck der Einfachheit ist das Folgende in Verbindung mit dem Herstellen von MRC-Dateien in einem Druckertreiber beschrieben. Das Folgende schließt einen Bezug zu der GDI API ein, die in dem WINDOWS® Betriebssystem verfügbar ist, das von Microsoft Corporation erhältlich ist, welche verschiedene Funktionen zur Bildmanipulation darlegt. Es wird begrüßt, dass Betriebssysteme, einschließlich LINUX und Applebasierte Systeme Abweichungen bei den verschiedenen Funktionen haben werden. Weil beabsichtigt ist, dass alle Betriebssysteme und Druckertreiber durch den Gültigkeitsbereich dieser Offenbarung umfasst sind, ist es demnach beabsichtigt, dass der Bezug zu GDI-Aufrufen nicht einschränkend und nur für erläuternde Zwecke ist.
  • Um einen Druckertreiber unter Verwendung von GDI zu bauen, können etliche Aufrufe verwendet werden. Das Folgende beschreibt etliche Aufrufe, die helfen, Inhalt in ver schiedene Ebenen zu trennen. Die Aufrufe können allgemein als DrvXXX GDI APIs beschrieben werden. Im Speziellen schließen diese ein:
    • • DrvCopyBits
    • • DrvBitBlt
    • • DrvStretchBlt
    • • DrvStrokePath
    • • DrvFillPath
    • • DrvStrokeAndFillPath
    • • DrvLineTo
    • • DrvTextOut
    • • DrvAlphaBlend
    • • DrvGradientFill
    • • DrvPlgBlt
    • • DrvStretchBltROP
    • • DrvTransparentBlt
  • Diese Aufrufe sind in vordergrunderzeugende Methoden und hintergrunderzeugende Methoden wie folgt aufgeteilt:
    • • Vordergrunderzeugende Methoden • DrvStrokePath • DrvLineTo • DrvTextOut • DrvBitBlt
    • • Hintergrunderzeugende Methoden • DrvCopyBits • DrvBitBlt • DrvStretchBlt • DrvAlphaBlend • DrvGradientFill • DrvPlgBlt • DrvStretchBltROP • Drv/TransparentBlt • DrvFillPath • DrvStrokeAndFillPath
  • Es gilt als anerkannt, dass Grafikrenderer sich mit der Zeit verändern. Dementsprechend ist die oben genannte Liste als Beispiel gedacht. Es wird begrüßt, dass andere Aufrufe verwendet werden können oder den Fachleuten bekannt werden, und werden mit in dem Umfang der Grafikaufrufe, wie oben genannt, betrachtet.
  • Der Druckprozess kann zum Zweck der Erläuterung in zwei Stufen getrennt werden. Diese zwei Stufen werden durch die linke und rechte Hälfte von 10 dargestellt. Während der ersten Stufe werden zwei Bitmap-Puffer in Schritt 1001 erstellt. Die zwei Bitmaps sind die Auswahlebene und eine Kombinations-Hintergrund/Vordergrund-Ebene. Die Kombinationsebene kann als BGFG_SURFACE bezeichnet werden und die Auswahlebene als SEL_SURFACE bezeichnet werden. Beide Bitmaps decken die gesamte Seite ab. In Schritt 1002 ermittelt das System, ob einer der empfangenen Aufrufe ein vordergrunderzeugender DrvXXX-Aufruf war. Alternativ können FillPath- und StrokeAndFillPath-Aufrufe, im Gegensatz zu BitBlt-Aufrufen, verwendet werden, wenn ein Pinselstrich eine feste Farbe hat und verschiedene Rasterfunktionen verwendet. Wenn ja, dann rendert es in Schritt 1004 auf beiden BGFG_SURFACE und SEL_SURFACE unter Verwendung eines entsprechenden EngXXX-Aufrufs (als Teil der GDI API) auf der BGFG_SURFACE und SEL_SURFACE getrennt. Wenn der Aufruf ein hintergrunderzeugender DrvXXX-Aufruf war (dargestellt als „nein" von dem Entscheidungsschritt 1002), rendert es auf der BGFG_SURFACE unter Verwendung des entsprechenden EngXXX-Aufrufs aus der GDI Toolbox in Schritt 1006.
  • Für jeden DrvXXX-Aufruf wird auch ein Datenknoten erstellt, der mindestens manche der folgenden Informationen enthält:
    • • Begrenzendes Rechteck oder Gebiet, das durch den DrvXXX-Aufruf beeinflusst wird,
    • • Farbwert des Textes für einen DrvTextOut-Aufruf und für Linienzeichnungen.
    • • ID, um den Typ des DrvXXX-Aufrufs zu identifizieren.
  • Zusätzlich wird jeder Knoten zu einer Liste mit Hintergrundelementen (BGE_LIST) oder einer Liste mit Vordergrundelementen (FGE_LIST) zur Bearbeitung in der zweiten Stufe hinzugefügt. Die Prozessschritte 1003 und 1005 zeigen wie der Knoten in jede Liste ver schoben werden kann. Weil jedoch der Einsatz dieser Schritte vor oder nach den Schritten 1004 und 1006 erfolgen kann, sind die Schritte 1003 und 1005 in gestrichelten Rechtecken gezeigt.
  • BGFG_SURFACE kann die gleiche Auflösung haben, wie die höchste zu verwendende Auflösung für Hintergrund- und Vordergrundbilder. Alternativ kann die Auflösung von BGFG_SURFACE auf die gleiche Auflösung wie die Seitenauflösung, wie in dem endgültigen Bild gesetzt werden.
  • Die zweite Stufe beginnt nachdem alle DrvXXX-Aufrufe bearbeitet sind. In dieser Stufe werden Bilder für jede der drei Ebenen erstellt. In Schritt 1007 ermittelt der Prozess, ob die Bilder in der Hintergrund/Vordergrundliste überlappen. Wenn ja, dann werden die Bilder durch Hinzufügen zu den Bildern bearbeitet, um durch den MRC-Prozess (oder Prozessen) verbunden zu werden. Wenn die Bilder nicht überlappen, versucht der Prozess die Bilder zu der Auswahlliste in Schritt 1009 zu verschieben. Um zu ermitteln, wo Auswahlbilder benötigt werden, wird ein Überschneidungstest für jedes Bild in der BGE_LIST mit jedem Bild in der FGE_LIST durchgeführt. Alle Gebiete (Rechtecke oder andere), wo Vordergrundelemente und Hintergrundelemente sich überschneiden, werden durch ein Auswahlbild adressiert.
  • In einem Beispiel versucht der Prozess so viele der Bilder der Auswahlebene wie möglich in die Vordergrundebene zu platzieren. In einem anderen Beispiel versucht der Prozess die Summe der Gebiete aller Bilder auf einem Minimum zu halten, um die Komprimierungsgröße zu reduzieren und die Leistungsfähigkeit beim Komprimieren, Dekomprimieren und bei Renderstufen zu vergrößern. In einem weiteren Beispiel versucht der Prozess zu probieren, die geringste Anzahl von allen Bildern in allen Ebenen zu erhalten. Diese Beispiele können kombiniert oder separat verwendet werden. Sie sind zusammen zum Zweck der Erläuterung beschrieben worden.
  • In Schritt 1010 versucht der Prozess die Anzahl der Objekte oder Bilder pro Ebene zu reduzieren. Z.B. können zwei nicht überlappende Textbilder derselben Farbe verbunden werden.
  • In Schritt 1010 versucht der Prozess die Anzahl der Elemente in den Ebenen zu reduzieren. Hier werden Elemente der gleichen Ebene miteinander verbunden, um größere E lemente in große umzuwandeln. Es sollte beachtet werden, dass dieser Schritt neue Objekte in den Listen einfügen kann. Im Folgenden werden verschiedene Ansätze zum Verbinden der Elemente aufgelistet. Eins oder mehrere können verwendet werden, um zu ermitteln, wie die Elemente der Ebenen zu kopieren sind:
    • • Das verbundene Element sollte vermeiden, neue Überlappungen mit Elementen in anderen Ebenen zu erzeugen, außer dies bringt Vorteile in anderen Aspekten, wie unten aufgelistet;
    • • Das Gebiet mit einem verbundenen Element sollte nicht größer als die Summe der einzelnen Elemente sein. Ein Grenzwert kann gesetzt werden (z.B. 30% bis 40%) und verglichen werden, um zu ermitteln, wenn verbundene Elemente zu groß werden; und
    • • Rendering-spezielle Aufrufe können Kennzeichner haben (z.B. Vordergrundelemente, die durch DrvTextOut erzeugt wurden, sollten nicht mit Elementen verbunden werden, die durch andere DrvXXX-Aufrufe erzeugt wurden, weil sie verschiedene BPP Werte haben. Auch innerhalb der Vordergrundelemente, die durch DrvTextOut erzeugt wurden, können nur Elemente mit der gleichen Farbe verbunden werden).
  • Nach dem Ermitteln, wie die Seite zu zerlegen ist, existieren drei Listen:
    • • BGE_LIST;
    • • SLE_LIST; und,
    • • FGE_LIST.
  • Jede Liste enthält eine Liste mit Knoten, die ein Gebiet beschreiben (z.B. Rechteck oder andere Formen), um von der Seite abgeschnitten zu werden. In einer weiteren Ausführungsform können die Listen einen Maßstabsfaktor einschließen, der beschreibt, wie das Bild in der Liste auf dem endgültigen Bild skaliert wird. Der Maßstabsfaktor gestattet die Fähigkeit, jedes Elementbild mit einer unterschiedlichen Auflösung zu speichern, selbst innerhalb der gleichen Ebenen.
  • Letztendlich werden die verschiedenen Ebenen in Schritt 1011 gerendert. Für jedes Element in der Hintergrundelementliste, das sich nicht mit Auswahlbildern überschneidet, kann ein Bild durch das Abschneiden eines Gebietes von der BGFG_SURFACE gebildet werden und in der Hintergrundebene platziert werden. Für jedes Element in der Vordergrundelementliste, das sich nicht mit Auswahlbildern überschneidet, kann ein Bild durch Abschneiden eines Gebietes von der SEL_SURFACE gebildet werden und zu der Vordergrundebene hinzugefügt werden. Für Elemente in der Hintergrund- und Vordergrundliste, die sich mit Auswahlbildern überschneiden, werden Bilder für jede Ebene durch Verwenden beiden SEL_SURFACE und BGFG_SURFACE, erzeugt.
  • Z.B. kann, und dabei auch auf die Überschneidungs/Pixei-bei-Pixel-Vergleichoption aus 9B verweisend, für ein Hintergrundelement, das sich mit dem Auswahlbild überschneidet, das Hintergrundbild durch Abschneiden eines Gebiets aus der BGFG_SURFACE hergestellt werden. Als nächstes überprüft der Prozess für jedes Pixel in dem Hintergrundbild das entsprechende Pixel in der SEL_SURFACE. Wenn das Pixel in der SEL_SURFACE schwarz ist, wird der Pixelwert in dem Hintergrundbild durch ein nahegelegenes Hintergrundpixel ersetzt, dessen entsprechendes Pixel in SEL_SURFACE weiß ist. Für ein Vordergrundelement, das sich mit dem Auswahlbild überschneidet, kann das Vordergrundbild durch Ausschneiden eines Gebiets aus BGFG_SURFACE konstruiert werden. Als nächstes überprüft der Prozess für jedes Pixel in dem Vordergrundbild das entsprechende Pixel in SEL_SURFACE. Wenn das Pixel SEL_SURFACE weiß ist, wird der Pixelwert in dem Hintergrundbild durch ein nahegelegenes Vordergrundpixel ersetzt, dessen entsprechendes Pixel SEL_SURFACE schwarz ist. Ein Vorteil des Verschiebens von Bildern in die Auswahlebene und/oder das reduzieren der Anzahl von Bildern pro Ebene liegt darin, dass die resultierenden Ebenen mit einer höheren Effizienz komprimiert werden können.
  • Wie oben erwähnt, können verschiedene Kompressionstechniken verwendet werden, um die verschiedenen Bilder zu komprimieren. Z.B. kann man jedes Bild, das 1 bpp hat, unter Verwendung von G4 Kompression komprimieren. Jedes Bild, das 24 bpp hat, kann man es unter Verwendung von JPEG Komprimierung, wie in der Fachwelt bekannt, komprimieren.
  • 11 zeigt einen Prozess zum Zusammenfassen von Bildern. Bilder können alle zusammen bearbeitet werden oder in Gruppen getrennt werden (hierin als „Chunks" be zeichnet). Die Bilder in den Chunks können nach dem Bildtyp gruppiert werden. Alternativ können die Chunks nach der Reihenfolge, in der sie erzeugt werden, gruppiert werden. Die Chunks können eine vordefinierte maximale Anzahl von Bildern haben oder auch nicht.
  • In 11 hat Chunk 1 N Bilder. Die Bilder sind nach der Nähe zueinander geordnet. Die Nähe ist unterhalb mit Bezug auf 13 beschrieben. Die Nähe kann als physische Distanz zwischen den Bildern angesehen werden oder kann als die Nähe der Bilder zueinander für Zusammenführungszwecke sein. Wenn zwei Bilder überlappen, ist ihr Nähewert gleich „0", d.h., dass sie den geringsten Nähewert haben und zusammengeführt werden sollten. Bilder, die nicht zusammengeführt werden sollten, können mit einem Nähewert von 1 oder mehr versehen werden. Es wird begrüßt, dass irgendeine Näheskalierung verwendet werden kann.
  • Alle Bilder in Chunk 1 werden gegeneinander verglichen, und jedes Bildpaar wird in Bezug auf den Nähewert in einer Reihenfolge eingeordnet. Wenn N = 5 in 11 gilt, wären die Bildpaare wie folgt:
    Bild 1, Bild 2
    Bild 1, Bild 3
    Bild 1, Bild 4
    Bild 1, Bild 5
    Bild 2, Bild 3
    Bild 2, Bild 4
    Bild 2, Bild 5
    Bild 3, Bild 4
    Bild 3, Bild 5
    Bild 4, Bild 5
  • Die Nähe für jedes Paar wird ermittelt und die Paare wie in 11 gezeigt für Chunk 1 auf der linken Seite der Fig. geordnet.
  • In Schritt 1101 ermittelt der Prozess für das erste Bildpaar, ob der Grenzwert kleiner als ein vordefinierter Grenzwert ist. Wenn ja, werden die Bilder in Schritt 1102 zusammengeführt und die Nähe für die restlichen Bilder erneut berechnet. Wenn die Nähe aus Schritt 1101 größer als der Grenzwert ist, kann das Zusammenführen in Schritt 1104 gestoppt werden. Z.B. kann der Grenzwert auf irgendeinen Wert zwischen dem geringen Nähewert (d.h. die Bilder werden zusammengeführt) und dem hohen Nähewert (d.h. die Bilder sollen nicht zusammengeführt werden) gesetzt werden. Der Bereich für den Grenzwert kann 0,4 bis 0,6 sein. Es wird angemerkt, dass der Grenzwert größer oder kleiner sein kann, als der oben genannte Bereich, abhängig von den Bildtypen, den Verhältnissen zwischen den Bildtypen und anderen Faktoren.
  • Wie oben dargelegt, versucht der Prozess die Bilder miteinander zu verbinden, die nahe zueinander liegen. Ein anderer Vorteil kann durch die Minimierung der Anzahl von resultierenden Bildern erreicht werden, die die MRC-Funktion zu bearbeiten hat. In diesem Fall kann, obwohl die Bilder eine Nähe unterhalb des in 1101 verwendeten Grenzwertes haben, eine gewünschte Anzahl von Bildern pro Chunk festgelegt werden, um die Anzahl der Bilder zu minimieren, die bearbeitet werden müssen. Schritt 1103 stellt eine Ermittlung dar, ob die Anzahl der Bilder in dem Chunk kleiner als die gewünschte Anzahl von Bildern in dem Chunk ist. Z.B. kann die gewünschte Anzahl von Bildern vier sein. Auch wenn der Nähewert zwischen irgendwelchen zwei der Bilder hoch sein kann, so können die Bilder immer noch zusammengeführt werden (Schritt 1102), um die Anzahl der resultierenden Bilder und die Nähe der resultierenden Bildpaare, wie in Schritt 1105 neu berechnet, zu reduzieren.
  • 12 zeigt ein Beispiel einer Zusammenführungsfunktion, die durch Bildpaare und resultierende Bilder schreitet. Die einzelnen Bilder werden durch die Bildgebiete 1-N bzw. 1201 bis 1205 dargestellt. Der Zusammenführungsprozess 1206 bewegt sich zwischen den Bildern 1201 bis 1205. Das Zusammenführen von irgendwelchen zwei Bildern kann ein einfacher Zusammenführungsprozess (Prozess 1207) sein, in welchem das resultierende Bild (Bildgebiet A, welches ein einzelnes Bild ist und als ein Hintergrundbild behandelt wird) nicht in irgendwelchen MRC-Bildern resultiert. Alternativ kann die resultierende Zusammenführung eine komplexe Zusammenführung mit MRC sein, wie in Prozess 1208 gezeigt. Es gibt mindestens zwei Arten von Zusammenführungsergebnissen aus der MRC-Zusammenführung 1208. Das erste 1211 ist ein Bildgebiet C, in welchem Hintergrund- und Auswahlebenen hergestellt werden. Das dritte 1212 ist das Bildgebiet D, in welchem Hintergrund-, Auswahl-, und Vordergrundebenen erstellt werden. Diese Ordnung von einzelnem (Hintergrund-) Bild, MRC mit Hintergrund und Auswahl, und MRC mit Hintergrund-, Auswahl-, und Vordergrundebenen ist auch die Bevorzugung zur Ermittlung, welche Zusammenführung ausgeführt werden soll. D.h. man würde eher eine MRC-Datei mit einer einzelnen Hintergrundebene erzeugen, als eine MRC-Datei mit Hintergrund-, Auswahl-, und Vordergrundebenen.
  • 13 zeigt einen Prozess zum Ermitteln der Nähe von irgendwelchen zwei Bildgebieten. Zwei Bildgebiete A 1301 und B 1302 werden auf Überlappung in Schritt 1303 überprüft. Wenn die Bilder überlappen, dann wird in Schritt 1307 die Nähe auf den Wert 0 gesetzt. Wenn nicht, ermittelt der Prozess in Schritt 1304, ob beide Bilder gegenwärtig MRC-Bilder sind. Wenn beide Bilder MRC-Bilder sind, dann wird die Nähe der Bilder auf einen Wert zwischen 0 und einem hohen Wert (hier ist der hohe Wert 1) gesetzt (Schritt 1308). Dieser Zwischenwert kann ein fester Wert für alle Situationen sein (z.B. 0,5). Alternativ kann der Wert als ein Vehältnis gesetzt werden. In einem Beispiel kann das Vehältnis das Verhältnis zur Effizienz des Verbindens der Bildgebiete sein. Mit anderen Worten kann das Vehältnis der unbenutzte Platz des zusammengefügten Bildes geteilt durch das Gesamtgebiet der kombinierten Bilder sein. Dieses Verhältnis wird durch die Gleichung in Schritt 1308 gezeigt.
  • 14 zeigt ein Beispiel zum Ermitteln des unbenutzten Platzes. In 14 wird das Textbild A 1401 zur Kombination mit Textbild B 1402 in Betracht gezogen. In diesem Beispiel sind die begrenzenden Gebiete von 1401 und 1402 durch Rechtecke gezeigt. Das kombinierte Bildgebiet der zwei Gebiete 1401 und 1402 ergibt unbenutzten Platz 1403, der durch gepunktete Linien umrandet gezeigt ist. In einer alternativen Ausführungsform kann der unbenutzte Platz auf einem rechteckigen Gitter basiert sein, was das gesamte Gebiet einschließlich 1401, 1402, das Gebiet, welches durch die gepunkteten Linien eingefasst ist 1403, und außen liegende Gebiete 1404 und 1405 ergibt. In dem ersten Beispiel schließt der unbenutzte Platz das Gebiet 1403 ein. In dem zweiten Beispiel schließt der unbenutzte Platz die unbenutzten Gebiete 1403, 1404 und 1405 ein.
  • Wieder Bezug nehmend auf 13, wenn beide Bilder gegenwärtig keine MRC-Bilder sind, dann ermittelt der Prozess in Schritt 1305, ob beide Bilder Text/Linienbilder sind. Wenn ja, und die Bilder dieselbe Farbe haben (Schritt 1306), wird die Nähe in Schritt 1308 wie oben beschrieben gesetzt.
  • Wenn die Text/Linienbilder nicht dieselbe Farbe haben, muss MRC verwendet werden, so dass die Nähe hoch gesetzt wird (z.B. 1), wie in Schritt 1309 gezeigt. Alternativ kann die Nähe wie in Schritt 1310 gezeigt hoch gesetzt werden, indem die Nähe auf einen Koeffizienten multipliziert mit dem neue MRC-Gebiet gesetzt wird, das erzeugt wird durch die Zusammenführung der zwei Bilder geteilt durch das gesamte Gebiet der kombinierten Bilder.
  • Wenn das Ergebnis aus Schritt 1305 nein ist, dann wird die Nähe in Schritt 1310 gesetzt. Alternativ kann man die Nähe wie in Schritt 1309 setzen.
  • Sobald die zusammengefügten Dateien erstellt wurden, kann die Menge an Platz, die durch die Originalbilder in den verbundenen Bildern verbraucht wird, gemerkt werden. Es gibt verschiedene Wege, den Platz für zusammengeführte Bilder zu zählen. 15A zeigt drei Bilder (1 bis 3), in welchem jedes drei Größeneinheiten hat. Es wird begrüßt, dass irgendeine Zuweisung von Platz verwendet werden kann, einschließlich Quadratzentimeter, Quadratmillimeter, Quadratinch, Pixels und Ähnliches. Bild 1 überlappt mit Bild 3 und Bild 2 überlappt mit Bild 3. In 15B zeigt 1501 die Kombination aus Bildern 1 und 2. Nach der Zusammenführung der kombinierten Bilder 1 und 3 mit Bild 2, wird die resultierende Kombination als 1502 dargestellt. In 1502 ist die Anzahl der eigentlich verwendeten Einheiten 7. Jedoch kann diese Anzahl geschätzt werden durch Betrachten der Kombination der Bilder 1 und 3 (1503) und Hinzuzählen der Größe des Bildes 2 1504, was die geschätzte Größe von 8 Einheiten ergibt.
  • 15C zeigt noch eine andere Darstellung. Hier werden die Bilder 1 und 2 zuerst verbunden, was Bild 1505 ergibt. Das Hinzuzählen von Bild 2 ergibt Bild 1506, welches wieder die Größe von 7 Einheiten hat, weil die mittige Einheit von Bild 2 und die untere Einheit von Bild 3 nicht separat, aber kombiniert, gezählt werden. Alternativ kann dieser Wert der Größe des verwendeten Platzes in dem kombinierten Bild 1507 der Bilder 1 und 2 mit Bild 3 1508 einschließen, was zu einer Gesamtzahl von 9 Einheiten führt. In noch einem weiteren Beispiel kann die Größe des zusammengefügten Bildes bei der Gesamtgröße des kombinierten Bildes gekappt werden.
  • Während beispielhafte Systeme und Verfahren, die die vorliegende Erfindung verkörpern, als Beispiel gezeigt wurden, gilt es natürlich als verstanden, dass die Erfindung nicht auf diese Ausführungsformen begrenzt ist. Veränderungen können durch Fachleute gemacht werden, im Speziellen in Bezug auf die vorgehende Lehre. Z.B. jedes der Elemente der zuvor erwähnten Ausführungsformen kann alleine oder in Kombination mit Elementen der anderen Ausführungsformen verwendet werden. Obwohl die Erfindung unter Verwendung der anhängigen Ansprüche definiert ist, sind diese Ansprüche beispielhaft, indem die Erfindung so gedacht ist, dass die hierin beschriebenen Elemente und Schritte in irgendeiner Kombination oder Unterkombination eingeschlossen sind. Dementsprechend gibt es irgendeine Anzahl von alternativen Kombinationen zum Definieren der Erfindung, welche ein oder mehrere Elemente von der Ausführung, einschließlich der Beschreibung, den Ansprüchen und den Zeichnungen, in verschiedenen Kombinationen oder Unterkombinationen beinhalten. Es wird den Fachleuten der relevanten Technologie angesichts der vorliegenden Ausführung offensichtlich sein, dass wechselnde Kombinationen der Aspekte der Erfindung, entweder allein oder in Kombination mit einem oder mehreren der hierin definierten Elemente oder Schritte als Veränderungen oder Wechsel der Erfindung oder als Teil der Erfindung verwendet werden kann. Es ist vorgesehen, dass die hier enthaltene dargelegte Beschreibung der Erfindung alle solche Veränderungen und Wechsel abdeckt.

Claims (6)

  1. Verfahren zum Rendern von zusammengesetzten Bildern, wobei ein zusammengesetztes Bild eine Kombination aus einer Hintergrundebene (401, 601), einer Auswahlebene (402, 602) und einer Vordergrundebene (403, 603) ist; wobei jede der Ebenen mindestens ein Bild mit Inhalt umfasst; wobei das Verfahren die folgenden Schritte umfasst: Ermitteln (911) eines begrenzenden Gebiets für jedes Bild; Erzeugen (912) von vier Listen, in denen die erste Liste jene Gebiete (607, 609) ohne Überlappung zwischen Bildern widerspiegelt, in denen die zweite Liste jene Gebiete (610) widerspiegelt, wo Gebiete (606, 610) der Auswahlebene nicht mit Gebieten (607609) der Vordergrundebene überlappen, in denen die dritte Liste jene Gebiete widerspiegelt, wo nur Gebiete (606610) der Auswahl- und Vordergrundebene überlappen, und in denen die vierte Liste jene Gebiete (606, 608) widerspiegelt, wo Gebiete (605610) der Hintergrund-, Auswahl- und Vordergrundebene überlappen.
  2. Verfahren gemäß Anspruch 1, das des Weiteren die folgenden Schritte umfasst: Füllen (914) des zusammengesetzten Bildes mit den Gebieten der Vordergrundebene aus der ersten Liste, wenn die Gebiete der Vordergrundebene in der ersten Liste vorhanden sind, und andernfalls Füllen des zusammengesetzten Bildes mit den Gebieten der Hintergrundebene.
  3. Verfahren gemäß Anspruch 1, das des Weiteren den folgenden Schritt umfasst: Füllen (915) des zusammengesetzten Bildes mit dem Gebiet der Auswahlebene aus der zweiten Liste, wenn die zweite Liste ein nicht-weißes Gebiet der Auswahlebene enthält.
  4. Verfahren gemäß Anspruch 1, das des Weiteren den folgenden Schritt umfasst: Füllen (916) des zusammengesetzten Bildes mit dem Gebiet der Auswahlebene aus der dritten Liste, wenn die dritte Liste ein nicht-weißes Gebiet der Auswahlebene enthält, und andernfalls Füllen des zusammengesetzten Bildes mit dem Gebiet der Hintergrundebene.
  5. Verfahren gemäß Anspruch 1, das des Weiteren den folgenden Schritt umfasst: Füllen (917) des zusammengesetzten Bildes mit dem Gebiet der Vordergrundebene, wenn das Gebiet der Auswahlebene nicht-weiß ist, und andernfalls Füllen des zusammengesetzten Bildes mit dem Gebiet der Hintergrundebene.
  6. Computer-lesbares Medium, das ein Programm darauf gespeichert hat, wobei das Programm einen Computer (100) dazu veranlasst, ein Verfahren zum Rendern von zusammengesetzten Bildern auszuführen, wobei ein zusammengesetztes Bild eine Kombination aus einer Hintergrundebene (401, 601), einer Auswahlebene (402, 602) und einer Vordergrundebene (403, 603) ist; wobei jede der Ebenen mindestens ein Bild mit Inhalt umfasst; wobei das Programm den Computer (100) dazu veranlasst, die folgenden Schritte auszuführen: Ermitteln (911) eines begrenzenden Gebiets für jedes Bild; Erzeugen (912) von vier Listen, in denen die erste Liste jene Gebiete (607, 609) ohne Überlappung zwischen Bildern widerspiegelt, in denen die zweite Liste jene Gebiete (610) widerspiegelt, wo Gebiete (606, 610) der Auswahlebene nicht mit Gebieten (607609) der Vordergrundebene überlappen, in denen die dritte Liste jene Gebiete widerspiegelt, wo nur Gebiete (606610) der Auswahl- und Vordergrundebene überlappen, und in denen die vierte Liste jene Gebiete (606, 608) widerspiegelt, wo Gebiete (605610) der Hintergrund-, Auswahl- und Vordergrundebene überlappen.
DE60305573T 2002-04-30 2003-03-20 Verfahren zur Darstellung von gemischten Bildrasterinhaltsebenen Expired - Lifetime DE60305573T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/134,636 US7110137B2 (en) 2002-04-30 2002-04-30 Mixed raster content files
US134636 2008-06-06

Publications (2)

Publication Number Publication Date
DE60305573D1 DE60305573D1 (de) 2006-07-06
DE60305573T2 true DE60305573T2 (de) 2006-11-02

Family

ID=22464255

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60305573T Expired - Lifetime DE60305573T2 (de) 2002-04-30 2003-03-20 Verfahren zur Darstellung von gemischten Bildrasterinhaltsebenen

Country Status (20)

Country Link
US (2) US7110137B2 (de)
EP (1) EP1359545B1 (de)
JP (1) JP4299034B2 (de)
KR (1) KR100935267B1 (de)
CN (1) CN1293464C (de)
AT (1) ATE328335T1 (de)
AU (1) AU2003203331B2 (de)
BR (1) BR0301147A (de)
CA (1) CA2423528C (de)
DE (1) DE60305573T2 (de)
DK (1) DK1359545T3 (de)
ES (1) ES2265532T3 (de)
HK (1) HK1058849A1 (de)
MX (1) MXPA03002793A (de)
MY (1) MY144550A (de)
NO (1) NO329337B1 (de)
PL (1) PL359440A1 (de)
RU (1) RU2360288C2 (de)
TW (1) TWI322387B (de)
ZA (1) ZA200302351B (de)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8064090B2 (en) * 2002-08-28 2011-11-22 Xmpie (Israel) Ltd. System and method for processing variable print documents
AU2003256037A1 (en) * 2002-08-28 2004-03-19 Xmpie (Israel) Ltd. Apparatus and method for processing variable print documents
KR100910974B1 (ko) * 2002-10-02 2009-08-05 엘지전자 주식회사 고밀도 광디스크의 그래픽 데이터 관리방법
US20040123247A1 (en) * 2002-12-20 2004-06-24 Optimost Llc Method and apparatus for dynamically altering electronic content
JP2004260273A (ja) * 2003-02-24 2004-09-16 Oki Data Corp 画像形成装置
US20050222687A1 (en) * 2004-04-02 2005-10-06 Gordana Vunjak-Novakovic Cartilage implant assembly and method for implantation
KR100538224B1 (ko) * 2003-06-09 2005-12-21 삼성전자주식회사 잉크 젯 프린터의 스캔 및 인쇄 방법 및 장치
JP4125208B2 (ja) * 2003-09-29 2008-07-30 キヤノン株式会社 画像処理装置及び画像処理方法
JP4049136B2 (ja) * 2004-08-10 2008-02-20 ブラザー工業株式会社 画像処理装置及びプログラム
GB2421106A (en) * 2004-12-07 2006-06-14 Hewlett Packard Development Co A method and apparatus for preparing variable-data documents for publishing
EP1670257B1 (de) * 2004-12-10 2018-09-26 Ricoh Company, Ltd. Komprimierung eines mehrwertigen Bildes mittels Steuerung der Speicherplatzanforderung
US7880925B2 (en) * 2005-08-02 2011-02-01 Kabushiki Kaisha Toshiba Apparatus and method for generating an image file with a color layer and a monochrome layer
JP4606298B2 (ja) * 2005-10-18 2011-01-05 シャープ株式会社 画像処理装置、画像処理方法、および画像処理プログラム
US7730398B2 (en) 2005-10-25 2010-06-01 Research In Motion Limited Image stitching for mobile electronic devices
US7995075B2 (en) 2006-03-02 2011-08-09 Mediatek Inc. Display data extraction methods, devices and computer systems utilizing the same
JP4764231B2 (ja) 2006-03-31 2011-08-31 キヤノン株式会社 画像処理装置、制御方法、コンピュータプログラム
CN100538620C (zh) * 2006-04-29 2009-09-09 光宝科技股份有限公司 打印方法及打印对象控制装置
CN100545831C (zh) * 2006-09-27 2009-09-30 北京大学 一种透明页面的光栅化处理方法及装置
CN100576238C (zh) 2006-09-30 2009-12-30 北京大学 一种光栅图像处理方法和装置
KR101282030B1 (ko) * 2007-01-26 2013-07-04 삼성전자주식회사 데이터의 보안 전송을 위한 화상형성장치 및 그 전송방법
JP4914318B2 (ja) * 2007-09-14 2012-04-11 株式会社リコー 画像処理装置、画像処理システム、画像処理方法、プログラム、および記録媒体
US8218887B2 (en) * 2007-09-28 2012-07-10 Abbyy Software, Ltd. Enhanced method of multilayer compression of PDF (image) files using OCR systems
US8619083B2 (en) * 2009-01-06 2013-12-31 Microsoft Corporation Multi-layer image composition with intermediate blending resolutions
US20100245918A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
US8339670B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data based on graphic-list partitioning
US8339672B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data using graphic-list partitions and associated rendering processors
US8339653B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data based on overlap characteristics
US8411319B2 (en) * 2009-03-30 2013-04-02 Sharp Laboratories Of America, Inc. Methods and systems for concurrent rendering of graphic-list elements
US20100245889A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
US8339671B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data by partitioning a graphics list
AU2009202377A1 (en) * 2009-06-15 2011-01-06 Canon Kabushiki Kaisha Combining overlapping objects
JP2011040970A (ja) * 2009-08-10 2011-02-24 Canon Inc データ処理装置、および、データ処理方法
JP5434555B2 (ja) * 2009-12-14 2014-03-05 富士ゼロックス株式会社 画像情報処理装置及びプログラム
US20120092480A1 (en) * 2010-05-28 2012-04-19 Putman Matthew C Unique digital imaging method employing known background
US20120127198A1 (en) * 2010-11-22 2012-05-24 Microsoft Corporation Selection of foreground characteristics based on background
KR101868637B1 (ko) * 2012-02-16 2018-06-18 삼성전자주식회사 이미지 파일의 인코딩 및 디코딩 방법, 기계로 읽을 수 있는 저장 매체 및 멀티미디어 장치
TWI505203B (zh) * 2012-11-02 2015-10-21 Avisonic Technology Corp 產生車用影像的影像處理方法及影像處理裝置
JP5886265B2 (ja) * 2013-11-28 2016-03-16 シャープ株式会社 携帯端末装置、プログラム、及び記録媒体
US10268698B2 (en) * 2014-11-21 2019-04-23 Adobe Inc. Synchronizing different representations of content
CN106157341B (zh) 2015-03-30 2019-05-14 阿里巴巴集团控股有限公司 生成合成图片的方法及装置
DE102016204044A1 (de) * 2016-03-11 2017-09-14 Bayerische Motoren Werke Aktiengesellschaft Verfahren und head-up-display zum perspektivischen transformieren und anzeigen eines bildinhalts sowie fahrzeug
CN108376416A (zh) * 2018-01-16 2018-08-07 天津大学 一种图像生成方法以及装置
CN108924557B (zh) * 2018-06-11 2022-02-08 海信视像科技股份有限公司 图像处理方法、装置、电子设备及存储介质
US11704843B2 (en) * 2021-03-03 2023-07-18 Adobe Inc. Advanced application of color gradients to text
KR20220126914A (ko) * 2021-03-10 2022-09-19 삼성전자주식회사 이미지의 알파 값을 이용하여 이미지를 출력하는 전자 장치 및 그 제어 방법

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778092A (en) * 1996-12-20 1998-07-07 Xerox Corporation Method and apparatus for compressing color or gray scale documents
US6324305B1 (en) * 1998-12-22 2001-11-27 Xerox Corporation Method and apparatus for segmenting a composite image into mixed raster content planes
US6373981B1 (en) * 1998-12-21 2002-04-16 Xerox Corporation Method and apparatus for segmenting data to create mixed raster content planes
US6400844B1 (en) * 1998-12-02 2002-06-04 Xerox Corporation Method and apparatus for segmenting data to create mixed raster content planes
JP2000175052A (ja) * 1998-12-07 2000-06-23 Xerox Corp ピクセルマップ表現の処理方法及び装置
JP2000175053A (ja) * 1998-12-07 2000-06-23 Xerox Corp 文書の圧縮ピクセルマップ表現を表す混合ラスタコンテントプレ―ンの処理方法
JP2001136361A (ja) * 1999-11-01 2001-05-18 Canon Inc 画像通信装置およびその方法
US6608928B1 (en) * 1999-11-03 2003-08-19 Xerox Corporation Generic pre-processing of mixed raster content planes
US6633670B1 (en) * 2000-03-31 2003-10-14 Sharp Laboratories Of America, Inc. Mask generation for multi-layer image decomposition
US6701012B1 (en) * 2000-07-24 2004-03-02 Sharp Laboratories Of America, Inc. Out-of-layer pixel generation for a decomposed-image layer
US6941014B2 (en) * 2000-12-15 2005-09-06 Xerox Corporation Method and apparatus for segmenting an image using a combination of image segmentation techniques
US7027647B2 (en) * 2001-12-31 2006-04-11 Hewlett-Packard Development Company, L.P. Coder matched layer separation for compression of compound documents
US6941024B2 (en) * 2002-01-14 2005-09-06 Hewlett-Packard Development Company, L.P. Coder matched layer separation and interpolation for compression of compound documents

Also Published As

Publication number Publication date
CN1455332A (zh) 2003-11-12
MXPA03002793A (es) 2005-02-14
US7110137B2 (en) 2006-09-19
PL359440A1 (en) 2003-11-03
DE60305573D1 (de) 2006-07-06
BR0301147A (pt) 2004-08-17
AU2003203331A1 (en) 2003-11-20
MY144550A (en) 2011-09-30
TW200306500A (en) 2003-11-16
EP1359545A1 (de) 2003-11-05
NO20031441L (no) 2003-10-31
RU2360288C2 (ru) 2009-06-27
ATE328335T1 (de) 2006-06-15
CA2423528A1 (en) 2003-10-30
JP2003331298A (ja) 2003-11-21
JP4299034B2 (ja) 2009-07-22
US20070013951A1 (en) 2007-01-18
NO20031441D0 (no) 2003-03-28
ES2265532T3 (es) 2007-02-16
CN1293464C (zh) 2007-01-03
NO329337B1 (no) 2010-09-27
KR100935267B1 (ko) 2010-01-06
CA2423528C (en) 2011-03-22
US20030202212A1 (en) 2003-10-30
KR20030085472A (ko) 2003-11-05
ZA200302351B (en) 2004-03-10
HK1058849A1 (en) 2004-06-04
EP1359545B1 (de) 2006-05-31
AU2003203331B2 (en) 2008-10-30
TWI322387B (en) 2010-03-21
DK1359545T3 (da) 2006-09-25

Similar Documents

Publication Publication Date Title
DE60305573T2 (de) Verfahren zur Darstellung von gemischten Bildrasterinhaltsebenen
DE69817029T2 (de) Mischung von komprimierten rasterbildern in einem drucksystem
DE69831385T2 (de) Verfahren und Anordnung zum Mischen von graphischen Objekten mit Planarkarten
DE69826044T2 (de) Vektorkartenplanarisierung und -einfang
DE69738515T2 (de) Vorrichtung und verfahren für hybride kompression von rasterdaten
DE60118240T2 (de) Methode zur bildanalyse
DE69832411T2 (de) Speicherverwaltungssystem für bilddokumenten-datenbank
DE69631009T2 (de) Bildverarbeitung mit angrenzenden Beziehungen zwischen Bildelementen
DE10204751B4 (de) Verfahren zur Konvertierung eines Linework Datenformats in das Format einer Seitenbeschreibungssprache
DE69730892T2 (de) Verarbeitung von Rückzugspunkten zur Blatterstellung mit Techniken zur Speicherreduktion
DE102013203884A1 (de) Bildkomprimierung
EP2092730B1 (de) Verfahren, computerprogramm und drucksystem zum trapping von druckdaten
DE10295968T5 (de) Verbunddokumentbildkompression unter Verwendung eines Mehrfachregion-Zweischichtformats
DE19623318C2 (de) Teilpixelcodierungs- und Decodierungsverfahren
DE60033716T2 (de) Verfahren und Vorrichtung zur Bilddatenkompression
DE60031624T2 (de) Bildunterteilung die die Übertragung überlappter Bildteile verhindert
DE112021000371T5 (de) Digitale bildbearbeitung
DE69728918T2 (de) Verfahren und Gerät zur wirkungsvollen Bildinterpolation
EP2092465B1 (de) Verfahren und system zum automatischen aufbereiten von druckdaten für einen druckvorgang
DE102018003085A1 (de) Synchronisation eines digitalen Bilds auf Komponentenbasis
DE69830583T2 (de) Verfahren und Vorrichtung zur Verarbeitung von Bilddaten
WO2008062041A1 (de) Verfahren und drucksystem zum trapping von druckdaten
DE60218916T2 (de) Verfahren, Vorrichtung und Programmspeichermedium zur Bestimmung des Umrisses eines gescannten Bildes
EP0515714B1 (de) Verfahren zur rechnergestützten Verarbeitung binärer Rasterbilder
DE102006055626B4 (de) Verfahren, Computerprogramm und Drucksystem zum Trapping von Druckdaten mit einer Vielzahl von Objekten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition