DE102021102043A1 - Informationsverarbeitungsgerät, Steuerungsverfahren und Programm dafür, und Serversystem, das fähig ist, mit dem Informationsverarbeitungsgerät zu kommunizieren - Google Patents

Informationsverarbeitungsgerät, Steuerungsverfahren und Programm dafür, und Serversystem, das fähig ist, mit dem Informationsverarbeitungsgerät zu kommunizieren Download PDF

Info

Publication number
DE102021102043A1
DE102021102043A1 DE102021102043.3A DE102021102043A DE102021102043A1 DE 102021102043 A1 DE102021102043 A1 DE 102021102043A1 DE 102021102043 A DE102021102043 A DE 102021102043A DE 102021102043 A1 DE102021102043 A1 DE 102021102043A1
Authority
DE
Germany
Prior art keywords
printer
print data
print
driver
service
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.)
Pending
Application number
DE102021102043.3A
Other languages
English (en)
Inventor
Shinya Suzuki
Hirokazu Saigusa
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 JP2020015842A external-priority patent/JP7410622B2/ja
Priority claimed from JP2020176781A external-priority patent/JP2022067915A/ja
Priority claimed from JP2021004373A external-priority patent/JP2022109051A/ja
Application filed by Canon Inc filed Critical Canon Inc
Publication of DE102021102043A1 publication Critical patent/DE102021102043A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1225Software update, e.g. print driver, modules, plug-ins, fonts
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1226Discovery of devices having required properties
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1228Printing driverless or using generic drivers
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1254Automatic configuration, e.g. by driver
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1268Job submission, e.g. submitting print job order or request not the print data itself
    • G06F3/1272Digital storefront, e.g. e-ordering, web2print, submitting a job from a remote submission screen
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1287Remote printer device, e.g. being remote from client or server via internet
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1293Printer information exchange with computer
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1297Printer code translation, conversion, emulation, compression; Configuration of printer parameters
    • 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
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

Ein Informationsverarbeitungsgerät, das mit einem Serversystem kommuniziert, das empfangene Druckdaten in Druckdaten konvertiert, die mit einem Druckgerät konform sind, das zum Drucken der empfangenen Druckdaten verwendet wird, und das die konvertierten Druckdaten an das Druckgerät überträgt, wobei das Informationsverarbeitungsgerät umfasst: eine Erzeugungseinheit, die eingerichtet ist, Druckdaten zu erzeugen, die mit dem für das Drucken verwendeten Druckgerät konform sind, eine Übertragungseinheit, die eingerichtet ist, die durch die Erzeugungseinheit erzeugten Druckdaten an das Serversystem zu übertragen, und eine Anweisungseinheit, die eingerichtet ist, das Serversystem anzuweisen, die empfangenen Druckdaten an das Druckgerät zu übertragen, ohne die empfangenen Druckdaten zu konvertieren.

Description

  • Hintergrund
  • Gebiet der Offenbarung
  • Die vorliegende Offenbarung betrifft ein Informationsverarbeitungsgerät, ein Steuerungsverfahren und ein Programm dafür, und ein Serversystem, das fähig ist, mit dem Informationsverarbeitungsgerät zu kommunizieren.
  • Technischer Hintergrund
  • Es ist ein Drucksystem bekannt, bei dem ein Benutzer im Voraus Informationen über jedes Druckgerät in einem Clouddruckservice registriert und das Druckdaten zum Drucken über den Clouddruckservice an das Druckgerät überträgt. Der Benutzer greift von einem Informationsverarbeitungsgerät, wie z.B. einem Personal-Computer (PC) auf den Clouddruckservice zu, wählt aus den im Clouddruckservice registrierten Druckgeräten ein Druckgerät aus, das zum Drucken verwendet werden soll, und weist das ausgewählte Druckgerät an, den Druck basierend auf den Druckdaten auszuführen.
  • Das Informationsverarbeitungsgerät erzeugt einen Druckauftrag und gibt den erzeugten Druckauftrag in eine Druckwarteschlange des Clouddruckservices ein. Das Druckgerät greift auf den Clouddruckservice zu, beschafft den Druckauftrag, der in der auf dem Clouddruckservice erzeugten Druckwarteschlange gespeichert ist und gibt den beschafften Druckauftrag aus.
  • Typische Beispiele des Clouddruckservices umfassen Google Cloud Print® (offengelegte japanische Patentanmeldung Nr. 2013-238924 ), Microsoft Hybrid Cloud Print® und uniFlow Online®.
  • Ein Modul zum Eingeben eines Druckauftrags von einem Clientterminal an den Clouddruckservice wird als ein Standarddrucksystem durch ein Betriebssystem (OS) des Clientterminals bereitgestellt.
  • Bisher hat jeder Anbieter beim Drucken mit einem von ihm erstellten Druckertreiber ein Modul verteilt, das fähig ist, Druckdaten zu erzeugen, die mit den Funktionen des jeweiligen Anbieters kompatibel sind. Darüber hinaus wird das Modul zum Erzeugen von Druckdaten verwendet, in dem sich die für den Anbieter spezifischen Einstellungen widerspiegeln. Jedoch kann das vorstehend beschriebene Standarddrucksystem, das durch das OS oder den Clouddruckservice bereitgestellt wird, nur die Druckdaten erzeugen, in denen vorbestimmte Standardeinstellungen widergespiegelt werden. Daher kann das OS oder der Clouddruckservice keinen Druck auf Basis der Druckdaten ausführen, in denen sich Einstellungen in Bezug auf Einstellungselemente widerspiegeln, die für den Anbieter spezifisch sind und sich von den vorbestimmten Standardeinstellungselementen unterscheiden.
  • Zusammenfassung
  • Gemäß einem Ausführungsbeispiel der vorliegenden Offenbarung umfasst ein Informationsverarbeitungsgerät, das mit einem Serversystem kommuniziert, das eingerichtet ist, Druckdaten basierend auf von dem Informationsverarbeitungsgerät empfangenen Bilddaten zu erzeugen, eine Erzeugungseinheit, die eingerichtet ist, basierend auf den Bilddaten Druckdaten zu erzeugen, und eine Übertragungseinheit, die eingerichtet ist, die erzeugten Druckdaten an das Serversystem zu übertragen. Die Übertragungseinheit steuert das Serversystem, keine Druckdaten basierend auf den Bilddaten zu erzeugen, die in den erzeugten Druckdaten umfasst sind.
  • Weitere Merkmale der vorliegenden Offenbarung werden von der folgenden Beschreibung der beispielhaften Ausführungsbeispiele mit Bezug auf die beigefügten Zeichnungen offensichtlich.
  • Figurenliste
    • 1 ist ein Blockdiagramm, das ein Beispiel einer Hardwarekonfiguration eines Clientcomputers gemäß einem ersten beispielhaften Ausführungsbeispiel veranschaulicht.
    • 2 ist ein schematisches Diagramm, das ein Beispiel einer Netzwerkkonfiguration gemäß dem ersten beispielhaften Ausführungsbeispiel veranschaulicht.
    • 3A veranschaulicht ein Beispiel von Funktionsblöcken in einem Druckertreiberverteilerservice gemäß dem ersten beispielhaften Ausführungsbeispiel. 3B veranschaulicht ein Beispiel der Funktionsblöcke in einem Druckerweiterungsanwendungsverteilerserver gemäß dem vorliegenden beispielhaften Ausführungsbeispiel. 3C veranschaulicht ein Beispiel von Funktionsblöcken in einem Clouddruckservice gemäß dem vorliegenden beispielhaften Ausführungsbeispiel.
    • 4 veranschaulicht ein Beispiel eines Ablaufs zum Registrieren eines Druckers in dem Clouddruckservice gemäß dem ersten beispielhaften Ausführungsbeispiel.
    • 5A ist eine Tabelle, die ein Beispiel einer Druckerinformationsdatenbank veranschaulicht, die in dem Clouddruckservice gemäß dem ersten beispielhaften Ausführungsbeispiel vorgehalten wird. 5B ist eine Tabelle, die ein Beispiel der Druckerinformationsdatenbank veranschaulicht, die in dem Druckertreiberverteilerservice gemäß dem vorliegenden beispielhaften Ausführungsbeispiel vorgehalten wird. 5C ist eine Tabelle, die die Druckerinformationsdatenbank veranschaulicht, die in dem Druckerweiterungsanwendungsverteilerserver gemäß dem vorliegenden beispielhaften Ausführungsbeispiel vorgehalten wird.
    • 6 veranschaulicht ein Beispiel eines Ablaufs zum Installieren einer Druckeinstellungsanwendung auf dem Clientcomputer gemäß dem ersten beispielhaften Ausführungsbeispiel.
    • 7 veranschaulicht ein Beispiel eines Bedienfeldes, auf dem eine druckbare Auftragsliste, die von dem Clouddruckservice empfangen wurde, angezeigt wird, gemäß dem ersten beispielhaften Ausführungsbeispiel.
    • 8A veranschaulicht ein Beispiel einer gewöhnlichen Druckdialogbox, die auf dem Clientcomputer gemäß dem ersten beispielhaften Ausführungsbeispiel angezeigt wird. 8B veranschaulicht ein Beispiel eines Druckeinstellungsbildschirms gemäß dem vorliegenden beispielhaften Ausführungsbeispiel.
    • 9 veranschaulicht ein Beispiel von Druckfunktionsinformationen gemäß dem ersten beispielhaften Ausführungsbeispiel.
    • 10 ist ein Flussdiagramm, das ein Beispiel der Druckverarbeitung in dem Clouddruckservice gemäß dem ersten beispielhaften Ausführungsbeispiel veranschaulicht.
    • 11 ist ein Ablaufdiagramm, das eine Verarbeitung zum Erzeugen von page description language (PDL)-Daten in dem Clouddruckservice gemäß dem ersten beispielhaften Ausführungsbeispiel veranschaulicht.
    • 12 ist ein Ablaufdiagramm, das eine Verarbeitung veranschaulicht, in der PDL-Daten durch die Druckerweiterungsanwendung gemäß dem ersten beispielhaften Ausführungsbeispiel erzeugt werden.
    • 13 ist ein Ablaufdiagramm, das eine Verarbeitung zum Erzeugen von PDL-Daten unter Verwendung eines PDL-Konvertierungsservices gemäß einem zweiten beispielhaften Ausführungsbeispiel veranschaulicht.
    • 14 ist ein Blockdiagramm, das ein Beispiel einer Netzwerkkonfiguration gemäß dem zweiten beispielhaften Ausführungsbeispiel veranschaulicht.
    • 15 ist ein Blockdiagramm, das schematisch den Druckertreiberverteilerservice gemäß einem dritten beispielhaften Ausführungsbeispiel veranschaulicht.
    • 16 ist ein Ablaufdiagramm, das eine Verarbeitung zum Registrieren von Druckerinformationen in dem Clouddruckservice gemäß dem dritten beispielhaften Ausführungsbeispiel veranschaulicht.
    • 17A ist eine Tabelle, die ein Beispiel von Informationen über Treiberpakete veranschaulicht, die von dem Druckertreiberverteilerservice gemäß dem dritten beispielhaften Ausführungsbeispiel verwaltet werden. 17B ist eine Tabelle, die ein Beispiel von Informationen über in dem Clouddruckservice registrierten Drucker gemäß dem dritten beispielhaften Ausführungsbeispiel veranschaulicht.
    • 18 veranschaulicht ein Beispiel von Funktionsblöcken gemäß einem vierten beispielhaften Ausführungsbeispiel.
    • 19 veranschaulicht ein Beispiel eines Ablaufs zum Registrieren eines Druckers in dem Clouddruckservice gemäß dem vierten beispielhaften Ausführungsbeispiel.
    • 20 veranschaulicht ein Beispiel einer Filterpipelinekonfiguration gemäß dem vierten beispielhaften Ausführungsbeispiel.
  • Beschreibung der Ausführungsbeispiele
  • 1 ist ein Blockdiagramm, das ein Beispiel einer Hardwarekonfiguration eines Clientcomputers (Informationsverarbeitungsgerät) veranschaulicht, das einen Clouddruckservice gemäß einem ersten beispielhaften Ausführungsbeispiel verwendet. Die Hardwarekonfiguration wird nun im Detail beschrieben.
  • Eine zentrale Verarbeitungseinheit (CPU) 101 steuert einen gesamten Betrieb des Informationsverarbeitungsgeräts basierend auf Programmen, die in einem schreibgeschützten Speicher (ROM) 1021 oder einem Direktzugriffspeicher (RAM) 1022 einer Hauptspeichervorrichtung 102 oder in einer Zusatzspeichervorrichtung 105 gespeichert sind.
  • Der RAM 1022 wird auch als ein Arbeitsbereich für die CPU 101 verwendet, um verschiedene Prozesse durchzuführen. Die Zusatzspeichervorrichtung 105 speichert einen Cloudtreiber 1050, ein Betriebssystem (OS) 1053, eine Anwendung 1051, eine Druckerweiterungsanwendung 1052, und andere Daten. Die Hauptspeichervorrichtung 102 und die Zusatzspeichervorrichtung 105 werden nachfolgend gemeinsam als eine Speichervorrichtung bezeichnet.
  • Eingabevorrichtungen, wie eine Zeigevorrichtung 109, wie z.B. eine Maus und ein Touchpanel, und eine Tastatur 108 sind mit einem Systembus 107 über eine Eingabeschnittstelle (I/F) 103 verbunden und dienen dazu, dass ein Benutzer einem Computer verschiedene Anweisungen geben kann.
  • Eine Ausgabe (I/F) 104 ist eine Schnittstelle zum Ausgeben von Daten nach außerhalb des Informationsverarbeitungsgeräts und wird verwendet, um Daten an Ausgabevorrichtungen auszugeben, wie einem Monitor 110 und einem Bedienfeld 111. Ein Clientcomputer 100 hat eine Bildaufnahmefunktion und eine Kamera 112 ist vorgesehen.
  • Der Clientcomputer 100 ist mit einem Drucker 200, der nachfolgend mit Bezug auf 2 beschrieben ist, und mit jedem System über ein Netzwerk 150 über eine Kommunikations-I/F 106, verbunden. Der Systembus 107 ist ein gemeinsamer Datensystembus, der verwendet wird, um Daten mit jeder I/F oder jedem Modul auszutauschen.
  • 2 ist ein schematisches Diagramm, das ein Drucksystem veranschaulicht, in dem eine Netzwerkumgebung gemäß dem vorliegenden beispielhaften Ausführungsbeispiel vereinfacht ist.
  • Der Clientcomputer 100 und der Drucker 200 sind jeweils mit dem Netzwerk 150 verbunden. Der Clientcomputer 100 und der Drucker 200 sind mit dem gleichen Intra-Netzwerk verbunden und können daher miteinander kommunizieren.
  • Ein Drucker 201 und ein Drucker 202 sind jeweils mit einem anderen Intranet 204 verbunden. Das Netzwerk 150 ist mit dem Intranet 204 über des Internet 203 verbunden. Ein Druckertreiberverteilerserver 300, ein Druckerweiterungsanwendungsverteilerservice 400, und ein Clouddruckservice 500 sind jeweils mit dem Internet 203 verbunden.
  • Der Druckertreiberverteilerservice 300 ist ein Serversystem, das aus einem oder mehreren Informationsverarbeitungsgeräten besteht. Der Druckertreiberverteilerservice 300 führt einen Service zum Verteilen eines Druckertreibers an den Clientcomputer 100 auf Webbasis aus. Der Clientcomputer 100 sucht nach dem Drucker 200 basierend auf einem Protokoll, wie Web Services for Devices (WSD) oder Internet Printing Protocol (IPP). Der Clientcomputer 100 beschafft und installiert den Druckertreiber, der basierend auf Druckeridentifikationsinformationen und Modellinformationen über den gefundenen Drucker 200 von dem Druckertreiberverteilerservice 300 identifiziert wurde. Jeder in dem Druckertreiberverteilerservice 300 registrierte Druckertreiber wird durch einen Druckeranbieter aktualisiert. Der Clientcomputer 100 beschafft automatisch oder manuell einen Druckertreiber einer neuen Version von dem Druckertreiberverteilerservice 300 und aktualisiert den installierten Druckertreiber mit dem beschafften Druckertreiber.
  • Der Druckerweiterungsanwendungsverteilerservice 400 ist ein Serversystem, das aus einem oder mehreren Informationsverarbeitungsgeräten besteht, die einen Service zum Verteilen einer durch den Clientcomputer 100 auszuführenden Anwendung ausführt. Eine Druckerweiterungsanwendung ist eine Anwendung zum Erweitern einer durch einen Clouddruckservice oder einem OS bereitgestellten Druckfunktion. In der durch den Clouddruckservice oder dem OS bereitgestellten Druckfunktion, können nur Druckeinstellungen für Standardfunktionen, wie eine Farbmodusfunktion und eine Duplexdruckfunktion, die bei jedem Drucker von jedem Anbieter verwendet werden können, vorgenommen werden. Die Verwendung der Druckerweiterungsanwendung ermöglicht es, andere Druckfunktionen, wie klammerlose Bindung, Posterdruck und Rückstichheftung vorzunehmen, die nicht in der durch einen Clouddruckservice oder ein OS bereitgestellten Druckfunktion eingestellt werden können.
  • Nach Empfangen einer Benutzerbedienung zur Anforderung der Installation der Druckerweiterungsanwendung 1052, greift der Clientcomputer 100 auf den Druckerweiterungsanwendungsverteilerservice 400 zu und installiert die Druckerweiterungsanwendung 1052. Falls ein Anwendungsidentifizierer in einer Informations (Inf)-Datei des in dem Clientcomputer 100 installierten Druckertreibers beschrieben ist, wird die Druckerweiterungsanwendung 1052 installiert. Der Anwendungsidentifizierer ist eine Information zum Identifizieren einer Anwendung entsprechend eines in dem Clouddruckservice 500 registrierten Druckers, unter den Anwendungen, die in dem Druckerweiterungsanwendungsverteilerservice 400 registriert sind. Der Clientcomputer 100 greift auf den Druckerweiterungsanwendungsverteilerservice 400 zu und installiert die Druckerweiterungsanwendung 1052 entsprechend dem in der Inf-Datei beschriebenen Identifizierer.
  • Der Clouddruckservice 500 ist ein Service, der in einem Cloudsystem als ein Serversystem bestehend aus einem oder mehreren Informationsverarbeitungsgeräten gebaut ist. In dem vorliegenden beispielhaften Ausführungsbeispiel ist der Clouddruckservice 500 mit jedem Intranet verbindbar und ist auch mit dem Clientcomputer 100, dem Drucker 200, dem Drucker 201, und dem Drucker 202 über das Internet 203 verbindbar. In dem Clouddruckservice 500 werden Konten über eine Benutzeridentifikation (ID) und ein Passwort verwaltet. Der Clientcomputer 100 greift auf den Clouddruckservice 500 unter Verwendung von Konteninformationen zu, die durch den Benutzer eingegeben werden.
  • In dem vorliegenden beispielhaften Ausführungsbeispiel wird angenommen, dass der Clientcomputer 100 vorläufig Uniform Resource Locators (URLs) für den Clouddruckservice 500 und den Druckerweiterungsanwendungsverteilerservice 400 speichert. Der Clouddruckservice 500 speichert vorläufig eine URL für den Druckertreiberverteilerservice 300.
  • 3A veranschaulicht ein Beispiel von Funktionsblöcken in dem Druckertreiberverteilerservice 300. Der Druckertreiberverteilerservice 300 ist ein Serversystem, das aus einem oder mehreren Informationsverarbeitungsgeräten besteht, die eine Konfiguration aufweisen, die ähnlich der des in 1 veranschaulichten Informationsverarbeitungsgeräts ist. Eine Druckertreiberregistrierungseinheit 301 und eine Druckertreiberantworteinheit 302 werden durch eine CPU jedes Informationsverarbeitungsgeräts realisiert, die den Druckertreiberverteilerservice 300 bilden, und die ein Programm ausführen.
  • Der Druckertreiberverteilerservice 300 ist ein Service, der in dem Cloudsystem über das Internet 203 vorhanden ist. Der Druckertreiberverteilerservice 300 kann ein Paket für einen Druckertreiber an einen externen Service und den Clientcomputer 100 verteilen. Beispiele des Pakets für den Druckertreiber umfassen einen Druckertreiber und ein Treibererweiterungspaket.
  • Nach Empfangen einer Anfrage zum Registrieren des Pakets für den Druckertreiber von dem externen Service und dem Clientcomputer 100, registriert die Druckertreiberregistrierungseinheit 301 das hochgeladene Paket in einer Druckertreiberdatenbank 310. Die Druckertreiberregistrierungseinheit 301 registriert in der Druckertreiberdatenbank 310 beispielsweise einen Druckertreiber, der durch einen Druckeranbieter oder dergleichen verteilt wurde, und ein Treibererweiterungspaket, um den Druckertreiber zu erweitern.
  • Nach Empfangen einer Anfrage zum Beschaffen eines Druckertreibers und eines Erweiterungspakets von dem externen Service und dem Clientcomputer 100, beschafft die Druckertreiberantworteinheit 302 das entsprechende Paket von der Druckertreiberdatenbank 310 und antwortet. Beispielsweise wird angenommen, dass eine Anfrage zum Beschaffen des Druckertreibers entsprechend dem Drucker 200, für den eine Druckwarteschlange erzeugt wurde, von dem Clientcomputer 100 empfangen. Die Druckertreiberantworteinheit 302 liest den Druckertreiber entsprechend dem Drucker 200 von der Druckertreiberdatenbank 310 aus und überträgt den Druckertreiber an den Clientcomputer 100. Die Druckertreiberantworteinheit 302 kann auch eine Anfrage zum Beschaffen eines Treibererweiterungspakets zum Erweitern des installierten Druckertreibers von dem Clientcomputer 100 empfangen. In diesem Fall liest die Druckertreiberantworteinheit 302 das Treibererweiterungspaket entsprechend dem angefragten Druckertreiber von der Druckertreiberdatenbank 310 aus und überträgt das Treibererweiterungspaket an den Clientcomputer 100.
  • Die Druckertreiberdatenbank 310 speichert eine nachstehend mit Bezug auf 5B beschriebene Datenbank. Die Druckertreiberdatenbank 310 speichert nicht nur Druckertreiber entsprechend den verschiedenen Druckern, sondern auch ein Druckerweiterungspaket 303. Das Druckerweiterungspaket 303 ist ein Beispiel des von dem Druckertreiberverteilerservice 300 verteilten Pakets. Das Treibererweiterungspaket 303 umfasst eine Treiberinformationseinheit 304 und eine Vorrichtungfunktionsinformationseinheit 305. Die Treiberinformationseinheit 304 umfasst Informationen wie eine Hardware-ID (HWID) zum Identifizieren eines Druckers, eine Kompatibel-ID (COID), Informationen, die angeben, dass das Paket ein Treibererweiterungspaket ist, und die Version des Treibererweiterungspakets 303. Die Vorrichtungfunktionsinformationseinheit 305 umfasst Vorrichtungsfunktionsinformationen und Konfliktinformationen über den entsprechenden Drucker 200. Die Vorrichtungsfähigkeitsinformationen sind beispielsweise Informationen, die angeben, ob der Drucker 200 Farbdruck oder Duplexdruck unterstützt. Die in dem Treibererweiterungspaket 303 umfassten Funktionsinformationen umfassen nicht nur die vorstehend beschriebenen Funktionsinformationen, sondern auch Informationen, die beispielsweise angeben, ob eine herstellerspezifische klammerlose Bindung durchgeführt werden kann, ob eine Rückstichheftung durchgeführt werden kann, und ob ein gemischter Blattdruck, d.h. ein Druck mit verschiedenen Blatttypen, durchgeführt werden kann.
  • 3B veranschaulicht ein Beispiel von Funktionsblöcken in dem Druckerweiterungsanwendungsverteilerservice 400. Eine Anwendungsregistrierungseinheit 401 und eine Anwendungsantworteinheit 402 werden durch eine CPU von einem oder mehreren Informationsverarbeitungsgeräten realisiert, die den Druckerweiterungsanwendungsverteilerservice 400 bilden, und die ein Programm ausführen.
  • Der Druckerweiterungsanwendungsverteilerservice 400 ist ein Service, der in dem Cloudsystem über das Internet 203 vorhanden ist. Das Druckerweiterungsanwendungsverteilerservice 400 kann die Druckerweiterungsanwendung 1052 an den externen Service und den Clientcomputer 100 verteilen. Der Druckerweiterungsanwendungsverteilerservice 400 kann nicht nur die Druckerweiterungsanwendung 1052 verteilen, sondern auch jegliche Anwendung, die von der Druckerweiterungsanwendung 1052 verschieden ist.
  • Nach Empfangen einer Anweisung von dem externen Server und dem Clientcomputer 100, die Druckerweiterungsanwendung 1052 zu registrieren, registriert die Anwendungsregistrierungseinheit 401 die hochgeladene Anwendung in einer Anwendungsdatenbank 410.
  • Nach Empfangen einer Anfrage zum Beschaffen der Druckerweiterungsanwendung 1052 von dem externen Server oder dem Clientcomputer 100, beschafft die Anwendungsantworteinheit 402 die entsprechende Anwendung von der Anwendungsdatenbank 410 und überträgt die Anwendung an den externen Service oder den Clientcomputer 100, der die Anfrage gesendet hat.
  • Die Anwendungsdatenbank 410 ist eine Datenbank, in der Informationen über eine Druckeinstellungsanwendung registriert sind. Die Druckeinstellungsanwendung wird durch den Anbieter oder dergleichen verteilt und die Druckeinstellungsanwendung empfängt eine Registrationsanfrage von dem externen Server oder dem Clientcomputer 100. Die in der Anwendungsdatenbank 410 registrierten Informationen werden nachstehend mit Bezug auf 5C beschrieben.
  • Die Druckerweiterungsanwendung 1052 gemäß dem vorliegenden beispielhaften Ausführungsbeispiel umfasst eine Einstellungsdateieinheit 10521 und eine Ausführungsdateieinheit 10522. Die Einstellungsdateieinheit 10521 hat Informationen wie Anwendungsidentifikationsinformationen zum Identifizieren der Druckerweiterungsanwendung 1052, und die HWID und COID zum Identifizieren des entsprechenden Druckers 200. Die Ausführungsdateieinheit 10522 führt die Druckerweiterungsanwendung 1052 aus. Die Ausführungsdateieinheit 10522 kann eine Druckeinstellungsbenutzeroberfläche (UI), eine Verarbeitung eines Druckauftrags bei der Ausführung des Drucks und eine Push-Benachrichtigung vom externen Service empfangen, und einen Druckeinstellungsbildschirm anzeigen. In dem vorliegenden beispielhaften Ausführungsbeispiel umfasst die Ausführungsdateieinheit 10522 in der Druckerweiterungsanwendung 1052 ein Modul zum Erzeugen von page description language (PDL)-Daten basierend auf Druckdaten. Die Ausführungsdateieinheit 10522 erzeugt PDL-Daten, in denen eine Druckeinstellung, die auf dem von der Druckerweiterungsanwendung 1052 bereitgestellten Druckeinstellungsbildschirm vorgenommen wurde, widergespiegelt wird. Die Ausführungsdateieinheit 10522 überträgt dann die erzeugten PDL-Daten an den Clouddruckservice 500.
  • Die Druckerweiterungsanwendung 1052 erzeugt PDL-Daten, die es ermöglichen, die Druckdaten zu erzeugen, in denen die Druckeinstellung widergespiegelt wird, selbst wenn die Druckeinstellung für ein Element vorgenommen wird, wie die IPP, die einer Funktion entspricht, die sich von den Standardfunktionen unterscheidet und nicht durch den Clouddruckservice 500 interpretiert werden kann.
  • 3C veranschaulicht ein Beispiel von Funktionsblöcken in dem Clouddruckservice 500 gemäß dem vorliegenden beispielhaften Ausführungsbeispiel. Jeder Funktionsblock wird durch eine CPU einer oder mehrerer Informationsverarbeitungsgeräte realisiert, die den Clouddruckservice 500 bilden, und die ein Programm ausführen.
  • Der Clouddruckservice 500 ist ein Service, der in dem Cloudsystem über das Internet 203 vorhanden ist und der Clouddruckservice 500 kann Funktionen bereitstellen, die sich auf das Drucken beziehen. In dem vorliegenden beispielhaften Ausführungsbeispiel umfasst der Clouddruckservice 500 Funktionen einer Druckerregistrierungseinheit 501, eine Druckwarteschlangeerzeugungseinheit 502, eine Druckerlistenerzeugungseinheit 503, eine Suchantworteinheit 504 und eine Druckerdatenbank 510. Der Clouddruckservice 500 umfasst des Weiteren Funktionen einer Druckauftragverwaltungseinheit 505, einer Druckauftragerzeugungseinheit 506 und eines Druckauftragspeicherbereichs 511. Diese Funktionen könnten in einem anderen Clouddruckservice bereitgestellt werden, der in Zusammenarbeit mit dem Clouddruckservice 500 betrieben werden soll.
  • Eine Konfiguration, in der der Drucker 200 in dem Clouddruckservice 500 registriert ist und Drucken unter Verwendung des Druckers 200 ausgeführt wird, ist im Folgenden beispielhaft beschrieben. Jedoch kann diese Konfiguration durch eine ähnliche Verarbeitung implementiert werden, selbst wenn der Drucker 200 mit dem Drucker 201 oder dem Drucker 202 ersetzt wird, der mit dem Clouddruckservice 500 verbunden werden kann.
  • Die Druckerregistrierungseinheit 501 veranlasst die Druckwarteschlangeerzeugungseinheit 502 eine Druckwarteschlange zu erzeugen, und registriert die erzeugte Druckwarteschlange und die Druckeridentifikationsinformationen in Verbindung miteinander in der Druckerdatenbank 510n nach dem Empfangen einer Druckerregistrationsanweisung von dem Drucker 200. Ein Zustand, in dem die Druckwarteschlange und die Druckeridentifikationsinformationen entsprechend dem Drucker in Verbindung miteinander registriert werden, wird nachfolgend als „ein Drucker wird registriert“ beschrieben. Verschiedene Attribute können dem registrierten Drucker hinzugefügt werden. Beispiele der verschiedenen Attribute umfassen einen Ort, an dem sich der Drucker befindet.
  • Die Druckwarteschlangeerzeugungseinheit 502 erzeugt eine Druckwarteschlange in dem Clouddruckservice 500 unter Steuerung der Druckerregistrierungseinheit 501. Wenn der Clientcomputer 100 eine Druckanweisung an den Clouddruckservice 500 überträgt, wird ein Druckauftrag in der Druckwarteschlange registriert, die durch die Druckwarteschlangeerzeugungseinheit 502 erzeugt wird.
  • Die Druckerlistenerzeugungseinheit 503 erzeugt eine Liste der registrierten Drucker. Die Druckerlistenerzeugungseinheit 503 erzeugt die Druckerliste beispielsweise, wenn die Liste der in dem Clouddruckservice 500 registrierten Drucker von dem Clientcomputer 100 angefragt wird.
  • Die Suchantworteinheit 504 gibt Informationen über die registrierten Drucker an den Clientcomputer 100 basierend auf einer Druckersuche für den Clouddruckservice 500 von dem Clientcomputer 100 aus. Die Suchantworteinheit 504 liefert das Suchergebnis an die Druckerlistenerzeugungseinheit 503 und veranlasst die Druckerlistenerzeugungseinheit 503, eine Druckerliste zu erzeugen. Die Suchantworteinheit 504 gibt die durch die Druckerlistenerzeugungseinheit 503 erzeugte Druckerliste an den Clientcomputer 100 zurück.
  • Die Druckauftragverwaltungseinheit 505 empfängt Bilddaten und eine Druckeinstellung von dem Clientcomputer 100, und überträgt einen durch die Druckauftragerzeugungseinheit 506 erzeugten Druckauftrag an den Drucker 200. Die Druckauftragverwaltungseinheit 505 speichert den Druckauftrag, der durch die Druckauftragerzeugungseinheit 506 erzeugt wurde, in dem Druckauftragspeicherbereich 511.
  • Die Druckerdatenbank 510 ist eine Datenbank, in der Informationen über die in dem Clouddruckservice 500 registrierten Drucker gespeichert sind. Die Inhalte, die in der Druckerdatenbank 510 gespeichert sind, sind nachstehend mit Bezug auf 5A beschrieben.
  • Die Verarbeitung zum Registrieren des Druckers 200 in der Clouddruckdatenbank 500 wird nun beschrieben.
  • 4 ist ein Ablaufdiagramm, das eine Verarbeitung zum Registrieren des Druckers 200 in dem Clouddruckservice 500 gemäß dem vorliegenden beispielhaften Ausführungsbeispiel veranschaulicht. In dem vorliegenden beispielhaften Ausführungsbeispiel greift der Clientcomputer 100 auf den Drucker 200 zu und betreibt den Drucker 200 so, dass er eine Anfrage zum Registrieren des Druckers 200 an den Clouddruckservice 500 überträgt.
  • Der Drucker 200 unterstützt eine Clouddruckfunktion (Funktion zum Empfangen eines Druckauftrags von dem Clouddruckservice und zum Ausführen von Drucken) und eine Web-UI-Funktion zum Betreiben des Druckers 200 ausgehend von dem Clientcomputer 100. Die Web-UI-Funktion ist eine Funktion zum Erzeugen einer UI und zum Freigeben der UI auf einem Netzwerk. Der Clientcomputer 100 unterstützt eine Clouddruckclientfunktion (Funktion zum Übertragen einer Datei an den Clouddruckservice) und eine Web-UI-Clientfunktion zum Betreiben einer Web-UI (z.B. einen Web-Browser). Der Clouddruckservice 500 repräsentiert einen Clouddruckservice im Internet 203.
  • Der Benutzer öffnet die Web-UI des Druckers 200, indem er die Web-UI-Clientfunktion des Clientcomputers 100 verwendet, und wählt eine Taste zum Registrieren des Druckers 200 in dem Clouddruckservice 500 in der Web-UI. Wenn die Taste gewählt wurde, überträgt der Clientcomputer 100 in Schritt S410 an den Drucker 200 eine Anfrage zum Registrieren des Druckers 200 in dem Clouddruckservice 500.
  • Nach dem Empfangen der Anfrage zum Registrieren des Druckers 200 in dem Clouddruckservice 500 in Schritt S410, überträgt der Drucker 200 in Schritt S411 an den Clouddruckservice 500 die Anfrage zum Registrieren des Druckers 200 in dem Clouddruckservice 500. In dem vorliegenden beispielhaften Ausführungsbeispiel wird die Anfrage zum Registrieren des Druckers 200 in dem Clouddruckservice 500 daher von der Web-UI-Clientfunktion des Clientcomputers 100 übertragen. Diese Anfrage kann auch durch eine Betätigung einer Eingabevorrichtung, wie einem Bedienfeld, das in dem Drucker 200 umfasst ist, übertragen werden. In diesem Fall wird die Anfrage nicht von dem Clientcomputer 100 übertragen und der Drucker 200 überträgt die Druckerregistrierungsanfrage an den Clouddruckservice 500.
  • In Schritt S411 umfasst die an den Clouddruckservice 500 übertragene Druckerregistrationsanfrage Informationen über den Drucker 200. Die Informationen über den Drucker 200 umfassen den Namen des Druckers 200, Informationen (HWID) zum Identifizieren des Modells des Druckers 200, und die COID zum Identifizieren des Typs des Druckers 200, wie einen Tintenstrahldrucker oder einen Laserdrucker. Informationen über den Drucker 200 umfassen auch Internetprotokoll (IP)-Adressinformationen und eine Funktionsinformationsdatei, die sich auf Funktionen bezieht, die mit dem IPP oder dergleichen standardisiert sind.
  • Nach dem Empfangen der Registrierungsanfrage in Schritt S411, veranlasst der Clouddruckservice 500 in Schritt S412 die Druckwarteschlangeerzeugungseinheit 502, eine Druckwarteschlange zu erstellen, um einen Druckauftrag an den Drucker 200 zu übertragen. Die Druckerregistrationseinheit 501 registriert die Druckerinformationen und Funktionsinformationen in der Druckerdatenbank 510 und erzeugt eine Aufzeichnung über den Drucker, für den die Registrierungsanfrage gestellt wurde. Des Weiteren erzeugt die Druckwarteschlangeerzeugungseinheit 502 eine Druckwarteschlange. Die Druckwarteschlange wird unter Verwendung der empfangenen Informationen über den Drucker 200, wie den Namen des Druckers 200 (Vorrichtungsname), die HWID und die COID zum Identifizieren des Modells des Druckers 200, und der IP-Adresse des Druckers 200, erstellt.
  • In Schritt S413 überträgt der Clouddruckservice 500 eine Anfrage zum Herunterladen des Treibererweiterungspakets 303 an den Druckertreiberverteilerservice 300. Diese Anfrage ist eine Anfrage zum Empfangen des Treibererweiterungspakets 303 entsprechend dem in dem Clouddruckservice 500 registrierten Drucker. Der Clouddruckservice 500 überträgt die Anfrage zum Herunterladen des Treibererweiterungspakets 303 und die HWID und COID zum Identifizieren des Druckers 200 an den Druckertreiberverteilerservice 300.
  • In Schritt S414 überträgt der Druckertreiberverteilerservice 300 das entsprechende Treibererweiterungspaket 300 an den Clouddruckservice 500 basierend auf den empfangenen HWID und COID. Der Druckertreiberverteilerservice 300 identifiziert das Treibererweiterungspaket, das mit den empfangenen HWID übereinstimmt, und für das ein Erweiterungs-Flag für das Treibererweiterungspaket „TRUE“ angibt, basierend auf der in 5B veranschaulichten Druckertreiberdatenbank 310. Falls das Treibererweiterungspaket, das mit den empfangenen HWID übereinstimmt, und für das das Erweiterungs-Flag „TRUE“ angibt, nicht identifiziert werden kann, identifiziert der Druckertreiberverteilerservice 300 das Treibererweiterungspaket, das mit den empfangenen COID übereinstimmt, und für das das Erweiterungs-Flag „TRUE“ angibt. Der Druckertreiberverteilerservice 300 überträgt dann das identifizierte Treibererweiterungspaket an den Clouddruckservice 500. Falls das Treibererweiterungspaket nur basierend auf den HWID in Schritt S413 identifiziert werden kann, könnte nur die HWID an den Druckertreiberverteilerservice 300 übertragen werden.
  • Die Druckerdatenbank wird nun mit Bezug auf 5B beschrieben. 5B veranschaulicht ein Beispiel der Druckertreiberdatenbank 310, die in dem Druckertreiberverteilerservice 300 vorgehalten wird. Ein Element „Paketname“ repräsentiert den Namen des Pakets, das von der Treiberinformationseinheit 304 während der Registrationsverarbeitung beschafft wird. Ein Element „HWID“ repräsentiert Identifikationsinformationen (Identifikationsinformationen, die spezifisch für das Modell des Druckers sind), die zur Identifizierung des Modells des Druckers 200 verwendet werden. Ein Element „COID“ repräsentiert Identifikationsinformationen zum Identifizieren der Kategorie des Druckers, der den Treiber verwendet. Ein Element „Paket“ repräsentiert den Namen des Pakets, das das Treibererweiterungspaket 303 umfasst. In dem Element „Paket“ kann jegliche Information wie ein Dateipfad verwendet werden, solange die Information verwendet werden kann, um den Treiber oder das Treibererweiterungspaket entsprechend der Aufzeichnung zu identifizieren. Ein Element „Erweiterung“ gibt an, ob das Treibererweiterungspaket 303 eine Erweiterungsdatei ist. Falls die Erweiterung „FALSE“ angibt, ist das Paket kein Erweiterungspaket, sondern ein Druckertreiber. Im Gegensatz dazu, falls die Erweiterung „TRUE“ angibt, ist das Paket kein Druckertreiber, sondern ein Paket zur Erweiterung des Treibers. Ein Element „Anwendungsidentifizierer“ repräsentiert Identifikationsinformationen über eine Anwendung, die verwendet wird, um den Druckeinstellungsbildschirm unter Verwendung der in dem Treibererweiterungspaket 303 gespeicherten Fähigkeitsinformationen zu erweitern. In dem vorliegenden beispielhaften Ausführungsbeispiel umfasst nur das Treibererweiterungspaket 303 einen Anwendungsidentifizierer, aber der Druckertreiber könnte auch einen Anwendungsidentifizierer umfassen.
  • Die in 5B veranschaulichte Druckertreiberdatenbank 310 wird durch die Druckertreiberregistrierungseinheit 301 aktualisiert. Nach der Registrierung des Pakets in der Druckertreiberdatenbank 310 analysiert die Druckertreiberregistrierungseinheit 301 die Treiberinformationseinheit 304. Die Druckertreiberregistrierungseinheit 301 beschafft den Paketnamen, die HWID und COID, und Informationen, die angeben, ob das Paket ein Treibererweiterungspaket ist, und registriert die beschafften Informationen zusammen mit dem Treibererweiterungspaket 303 in der Druckertreiberdatenbank 310.
  • In Schritt S415 analysiert der Clouddruckservice 500 die Vorrichtungfunktionsinformationseinheit 305 in dem heruntergeladenen Treibererweiterungspaket 303 und erweitert die Druckwarteschlange. Der Clouddruckservice 500 beschafft die Fähigkeitsinformationen über der Drucker 200 von der Vorrichtungfunktionsinformationseinheit 305 in dem Treibererweiterungspaket 303. Der Clouddruckservice 500 aktualisiert dann die Druckerfunktionsinformationen entsprechend der Druckwarteschlange der Druckerinformationen in der Druckerdatenbank 510. In Schritt S415 überschreibt der Clouddruckservice 500 die Funktionsinformationen, die mit der Druckwarteschlange assoziiert sind, mit den von dem Treibererweiterungspaket 303 beschafften Funktionsinformationen. Der Clouddruckservice 500 könnte zu den Funktionsinformationen, die der Druckwarteschlange entsprechen, Funktionsinformationen hinzuführen, die sich auf ein Einstellungselement beziehen, das nicht mit der Druckwarteschlange in den von dem Treibererweiterungspaket 303 beschafften Funktionsinformationen assoziiert ist. Alternativ könnte der Clouddruckservice 500 Informationen von dem Drucker 200 beschaffen, die die Hardwarekonfiguration des Druckers 200 angeben, und könnte die Funktionsinformationen basierend auf den Funktionsinformationen und der Hardwarekonfigurationsinformationen, die in dem Treibererweiterungspaket 303 umfasst sind, bestimmen.
  • Durch die Verwendung der vorstehend beschriebenen Verarbeitung wird die Druckwarteschlange mit den Vorrichtungsfunktionsinformationen, die spezifisch für den Anbieter sind, für den in dem Clouddruckservice 500 registrierten Drucker 200 erweitert. In Schritt S416 wird die Druckerdatenbank 510 mit den erweiterten Informationen über den Drucker 200 aktualisiert. Durch die vorstehend beschriebene Verarbeitung werden die durch das Treibererweiterungspaket 303 erweiterten Funktionsinformationen in der Druckerdatenbank 510 als die Funktionsinformationen entsprechend der Druckwarteschlange registriert.
  • 5A veranschaulicht ein Beispiel der Druckerdatenbank 510, die in dem Clouddruckservice 500 vorgehalten wird. Ein Element „Vorrichtungsname“ repräsentiert den Namen des Druckers (Vorrichtungsname), der von dem Drucker 200 während der Registrationsverarbeitung beschafft wurde. Ein Element „HWID“ repräsentiert einen Identifizierer (Identifizierer, der spezifisch für das Modell des Druckers ist), der verwendet wird, um das Modell des Druckers 200 zu identifizieren. Ein Element „COID“ repräsentiert Identifikationsinformationen zum Identifizieren der Kategorie des Druckers, wie einen Tintenstrahldrucker oder einen Laserstrahldrucker. Ein Element „IP-Adresse“ repräsentiert eine IP-Adresse eines zu verbindenden Druckers. Ein Element „Paket“ repräsentiert den Paketnamen des Treibererweiterungspakets 303, das verwendet wird, um die Druckwarteschlange entsprechend dem Drucker zu erweitern. Falls die Druckwarteschlange nicht erweitert wird, gibt das Element „Paket“ „null“ an. Obwohl nicht dargestellt, werden die Vorrichtungsfunktionsinformationen und dergleichen in der Datenbank in dem Javascript Object Notation (JSON)-Format registriert. Falls die Druckerfunktionsinformationen durch das Treibererweiterungspaket 303 erweitert werden, werden die erweiterten Funktionsinformationen gespeichert. Das Datenformat zum Speichern der Vorrichtungsfunktionsinformationen ist nicht auf JSON begrenzt, stattdessen könnte jedes andere Datenformat verwendet werden. Druckerinformationen und Informationen über den Benutzer, der den Drucker verwenden kann, könnten in Verbindung miteinander in der Druckerdatenbank 510, die in 5A veranschaulicht ist, gespeichert werden.
  • 9 veranschaulicht ein Beispiel der in Verbindung mit einer Druckwarteschlange zu speichernden Funktionsinformationen. Beispielweise werden die Funktionsinformationen in dem JSON-Format registriert, und jede Einstellung repräsentiert eine Funktion. Jede Funktion umfasst Optionen, die in einem Ablaufformat eingestellt werden können.
  • Die in 9 veranschaulichten Standardfunktionsinformationen 901 sind durch die IPP oder dergleichen definiert. Ein Einstellungselement „Duplex“ betrifft eine Duplexfunktion und umfasst als Optionen „Duplex“, was Duplexdruck angibt und „One-Sided“, was einseitiges Drucken angibt. Ein Einstellungselement „Color“ betrifft einen Farbdruck und umfasst als Optionen „Mono“, was einen Schwarz-Weiß-Druck angibt und „Color“, was einen Farbdruck angibt. Ein Einstellungselement „Orientation“ betrifft die Orientierung jedes Blatts, das für das Drucken verwendet wird und umfasst als die Optionen „Portrait“, was eine Hochformatorientierung angibt und „Landscape“, was die Querformatorientierung angibt. Die Funktionsinformationen 901 sind eines der Standardeinstellungselemente oder Optionen, die durch IPP oder dergleichen definiert sind. Die Funktionsinformationen 901 können dem Clouddruckservice 500 von dem Drucker 200 bereitgestellt werden. Die Erweiterung der Vorrichtungsfunktionsinformationen unter Verwendung des Treibererweiterungspakets 303 ermöglicht, dass die Standardeinstellungselemente, die durch IPP oder dergleichen definiert sind, die in den Funktionsinformationen 901 beschrieben werden, Optionen zu umfassen, die speziell für den Anbieter sind. Beispielsweise, wenn ein Einstellungselement „Heftklammer“ zum Blattbinden erweitert wird, kann nicht nur „Heftklammer links oben“, was ein Binden an der oberen linken Seite angibt, was eine Standardoption ist, sondern auch „Rückstichheftung“, was die Rückstichheftung angibt, vorgenommen werden.
  • Funktionsinformationen 902 sind Funktionsinformationen, die durch das Treibererweiterungspaket 303 erweitert wurden und sind beispielsweise Funktionsinformationen über ein Einstellungselement, das speziell für den Anbieter ist. Die Funktionsinformationen 902 umfassen Funktionen von Extension_Setting1 und Extension_Setting2, und Optionen von Extension_option1 und Extension_option2 für die jeweiligen Funktionen. Beispiele der Erweiterungseinstellung umfassen ein Einstellen zum klammerlosen Binden und ein Einstellen für den Mischblattdruck, d.h. das Drucken mit verschiedenen Blatttypen in einem Druckauftrag. Falls eine Mischblattdruckfunktion eingestellt wird, wird ein Character-String, der den Mischblattdruck angibt in „Extension_Setting1“ eingegeben. In diesem Fall wird ein Character-String, der eine Option zum Verwenden von Blättern in A3-Größe und A4-Größe angibt in dem „Extension_option1“ eingegeben und ein Character-String der eine Option zum Verwenden von Blättern in B4-Größe und B5-Größe angibt, wird in „Extension_option2“ eingegeben. Die Druckerweiterungsanwendung 1052 kann einen Druckeinstellungsbildschirm unter Bezugnahme auf die in 9 veranschaulichte Datei bereitstellen, auf dem Einstellungselemente, die spezifisch für den Anwender sind, vorgenommen werden können.
  • Nun wird wieder auf 4 Bezug genommen. Nach Abschluss der Registrierung in der Druckerdatenbank 510, überträgt der Clouddruckservice 500 in Schritt S417 eine Clouddruckserviceregistrierungsanfrageantwort umfassend eine Registrierungs-URL für Clouddruckregistration und eine Registrierungs-URL-Präsentationsanfrage an den Drucker 200.
  • In Schritt S418 empfängt der Drucker 200 die Clouddruckserviceregistrierungsanfrageantwort und die Registrierungs-URL-Präsentationsanfrage, und der Drucker 200 gibt die Registrierungs-URL-Informationen aus. In Schritt S418 zeigt der Drucker 200 die URL auf dem Monitor 110 an oder druckt die Registrierungs-URL-Informationen auf einem Blatt, und benachrichtigt den Benutzer über die Registrierungs-URL. Der Drucker 200 könnte die Registrierungs-URL auch an den Clientcomputer 100 über die Web-UI senden.
  • In Schritt S419 greift der Benutzer auf den Clouddruckservice 500 zu, der sich an der Registrierungs-URL befindet, die von dem Drucker 200 präsentiert wurde. In diesem Fall könnte es wünschenswert sein, sich in einem Cloud-Konto einzuloggen, in dem auf den Clouddruckservice 500 zugegriffen werden kann. Es könnte für den Benutzer dementsprechend wünschenswert sein, eine User-ID und ein Passwort einzugeben.
  • Der Clouddruckservice 500 assoziiert den Benutzer mit dem Drucker 200 basierend auf der Registrierungs-URL, die das Cloudkonto und die Druckerinformationen umfasst. Beispiele des Verfahrens zum Assoziieren des Benutzers mit dem Drucker 200 umfassen ein Verfahren zum Assoziieren von Druckerinformationen mit einem Benutzertoken. Jedoch ist das Verfahren nicht darauf begrenzt. In Schritt S420 überträgt der Clouddruckservice 500 den Benutzertoken, der die Informationen über den Clouddruckservice 500 umfasst, an den Drucker 200 und beendet dann die Verarbeitung zum Registrieren des Druckers 200 in dem Clouddruckservice 500. Der Drucker 200 greift auf den Clouddruckservice 500 unter Verwendung des Benutzertokens zu.
  • Als nächstes ist die Verarbeitung zum Erzeugen einer Druckwarteschlange für den Drucker 200, der in dem Clouddruckservice 500 registriert ist, in dem Clientcomputer 100, und zum Installieren der Druckerweiterungsanwendung 1052 beschrieben.
  • 6 ist ein Ablaufdiagramm, das eine Verarbeitung zum Installieren der Druckerweiterungsanwendung 1052 in dem Clientcomputer 100 gemäß dem vorliegenden beispielhaften Ausführungsbeispiel veranschaulicht.
  • Im Fall der Ausgabe von Daten an den Drucker 200 unter Verwendung des Clouddruckservices überträgt der Clientcomputer 100 einen Druckauftrag an den Clouddruckservice 500. Daher könnte es wünschenswert sein, eine Druckwarteschlange für die Übertragung des Druckauftrags an den Clouddruckservice 500 im Clientcomputer 100 zu erzeugen.
  • In dem vorliegenden beispielhaften Ausführungsbeispiel wird die Druckwarteschlange für die in dem Clouddruckservice 500 registrierten Drucker unter Verwendung einer Druckersuchfunktion erzeugt, was eine der Standardfunktionen des OS 1053 ist. Im Allgemeinen wird in einem Fall des Suchens nach einem Drucker, ein Drucker, der in dem gleichen Intranet vorhanden ist, ein Suchziel. Beispielweise, wenn der Clientcomputer 100 nach einem Drucker in der in 2 veranschaulichten Konfiguration sucht, kann der Drucker 200 gefunden werden. Jedoch kann der Drucker 201 und der Drucker 202, die nicht in dem Intranet vorhanden sind, nicht gefunden werden. In dem vorliegenden beispielhaften Ausführungsbeispiel kann der Clientcomputer 100 auf den Clouddruckservice 500 zugreifen. Wenn ein Drucker in dem Clouddruckservice 500 registriert ist, kann der in dem Clouddruckservice 500 registrierte Drucker durch eine Druckersuche gefunden werden. In dem vorliegenden beispielhaften Ausführungsbeispiel ist nicht nur der vorstehend beschriebene Drucker 200, sondern auch der Drucker 201 und der Drucker 202 in dem Clouddruckservice 500 registriert, und damit können auch der Drucker 201 und der Drucker 202 durch die Druckersuchfunktion des OS 1053 gefunden werden.
  • In Schritt S610 sucht der Clientcomputer 100 nach einem Drucker unter Verwendung der Druckersuchfunktion, die eine der vorstehend beschriebenen Standardfunktionen des OS 1053 ist. In Schritt S610 sucht der Clientcomputer 100 nicht nur nach einem Drucker, der in dem selben Intranet vorhanden ist, wie dem Intranet, zu dem der Clientcomputer 100 gehört, sondern auch nach Druckern, die in dem Clouddruckservice 500 registriert sind. Der Clientcomputer 100 greift auf den Clouddruckservice 500 zu und überträgt eine Anfrage zum Beschaffen einer Liste von in dem Clouddruckservice 500 registrierten Druckern an den Clouddruckservice 500.
  • Nach dem Empfangen der Druckersuchinformationen präsentiert die Suchantworteinheit 504 in dem Clouddruckservice 500 die verfügbaren Drucker an den Clientcomputer 100. In Schritt S611 erzeugt der Clouddruckservice 500 daher eine Druckerliste umfassend Druckerinformationen über den Drucker, den der Benutzer, der auf den Clouddruckservice 500 von dem Clientcomputer 100 zugegriffen hat, verwenden kann. Druckerinformationen umfassen den Namen des Druckers (Vorrichtungsname), die HWID zum Identifizieren des Modells des Druckers, und die IP-Adresse des Druckers, wie vorstehend beschrieben. Die Druckerlistenerzeugungseinheit 503 in dem Clouddruckservice 500 erstellt die Druckerliste umfassend Druckerinformationen unter Verwendung der in der Druckerdatenbank 510 gespeicherten Informationen.
  • In Schritt S612 gibt der Clouddruckservice 500 die erstellte Druckerliste an den Clientcomputer 100 zurück. In diesem Fall überträgt der Clouddruckservice 500 auch Informationen, wie die HWID und COID, die Druckeridentifikationsinformationen sind, die in den in 5A bis 5C veranschaulichten Tabellen beschrieben werden, als Druckerinformationen, die in der Druckerliste umfasst sind. Der Clientcomputer 100 veranlasst den Monitor 110, einen Druckerauswahlbildschirm anzuzeigen, den der Benutzer verwenden kann, um verfügbare Drucker basierend auf der Druckerliste auszuwählen. Der Benutzer wählt einen zu verwendenden Drucker von der präsentierten Druckerliste aus.
  • In Schritt S613 installiert das OS 1053 des Clientcomputers 100 den der in dem Clouddruckservice 500 verwendeten Cloudtreiber 1050, und erzeugt eine Druckwarteschlange für den ausgewählten Drucker. Der Clientcomputer 100 beschafft Informationen über den durch den Benutzer von dem Clouddruckservice 500 ausgewählten Drucker, und erzeugt die Druckwarteschlange unter Verwendung der Informationen. Der Clientcomputer 100 erzeugt die Druckwarteschlange basierend auf den HWID, COID, IP-Adresse, und den von dem Clouddruckservice 500 beschafften Druckerfunktionsinformationen. Falls der Cloudtreiber 1050 bereits auf dem Clientcomputer 100 installiert ist, installiert der Clientcomputer 100 den Cloudtreiber 1050 nicht. Der Clientcomputer 100 erzeugt die Druckwarteliste unter Verwendung des installierten Cloudtreibers 1050 und den von dem Clouddruckservice 500 beschafften Druckerinformationen.
  • Wenn die Erzeugung der Druckwarteschlange erfolgreich war, überträgt das OS 1053 des Clientcomputers 100 in Schritt S614 eine Anfrage zum Herunterladen des Treibererweiterungspakets 303 an den Druckertreibererweiterungsservice 300. Der Clientcomputer 100 überträgt eine Anfrage zum Beschaffen der HWID, der COID, und des Treibererweiterungspakets an den Clouddruckservice 500. Der Clientcomputer 100 könnte nur eine von der HWID und der COID an den Clouddruckservice 500 übertragen.
  • Nach Empfangen der Anfrage zum Herunterladen führt der Druckertreiberverteilerservice 300 eine Verarbeitung zum Herunterladen auf dem Clientcomputer 100 durch. Der Druckertreiberverteilerservice 300 identifiziert das Paket, das mit den empfangenen HWID von den in der Druckertreiberdatenbank 310 registrierten Treibererweiterungspaketen übereinstimmt, und überträgt das Paket an den Clientcomputer 100. Falls das Paket, das mit den empfangenen HWID übereinstimmt, nicht unter den Treibererweiterungspaketen identifiziert werden kann, identifiziert der Druckertreiberverteilerservice 300 das Treibererweiterungspaket, das mit dem empfangenen COID übereinstimmt. Der Druckertreiberverteilerservice 300 überträgt dann das identifizierte Druckerweiterungspaket an den Clientcomputer 100.
  • In Schritt S616 installiert das OS 1053 des Clientcomputers 100 das Treibererweiterungspaket 303 und erweitert die Funktionsinformationen entsprechend der basierend auf dem vorstehend beschriebenen Cloudtreiber 1050 erzeugten Druckwarteschlange. Der Clientcomputer 100 aktualisiert die Funktionsinformationen entsprechend der Druckwarteschlange mit den Vorrichtungsfunktionsinformationen, die in dem Druckerweiterungspaket umfasst sind. Mit anderen Worten, die Druckwarteschlange wird durch die Vorrichtungsfunktion für den Drucker 200, der in dem Clouddruckservice 500 registriert ist, erweitert, die speziell für den Anwender ist.
  • In Schritt S617 überträgt der Clientcomputer 100 eine Anfrage zum Herunterladen an den Druckerweiterungsanwendungsverteilerservice 400. In diesem Fall überträgt das OS 1053 eine Anfrage zum Herunterladen der Druckerweiterungsanwendung 1052, die mit einem Zieldrucker assoziiert ist, basierend auf den vorstehend beschriebenen Identifiziererinformationen über die Druckerweiterungsanwendung 1052. Gemäß dem vorliegenden beispielhaften Ausführungsbeispiel werden die Identifiziererinformationen über die Druckerweiterungsanwendung 1052 in dem Treibererweiterungspaket 303 und der Druckerweiterungsanwendung 1052 miteinander in einer Eins-zu-Eins-Korrespondenz in dem Druckerweiterungsanwendungsverteilerservice 400 assoziiert.
  • In dem Druckerweiterungsanwendungsverteilerservice 400 können auch Metadaten gespeichert sein. Die Metadaten geben die Identifiziererinformationen über die Druckerweiterungsanwendung 1052 und die Informationen, die mit den HWID assoziiert sind, die in den Druckerinformationen umfasst sind, an. In diesem Fall wird die geeignete Druckerweiterungsanwendung 1052 unter Verwendung der Metadaten heruntergeladen.
  • Nach Empfangen der Anfrage zum Herunterladen führt der Druckerweiterungsanwendungsverteilerservice 400 in Schritt S618 eine Verarbeitung zum Herunterladen auf dem Clientcomputer 100 durch. Die Anwendungsantworteinheit 402 identifiziert die Anwendung entsprechend dem Anwendungsidentifizierer, der von dem Clientcomputer 100 gesendet wurde, basierend auf der in 5C veranschaulichten Anwendungsdatenbank 410. Die Anwendungsantworteinheit 402 überträgt die identifizierte Druckerweiterungsanwendung an den Clientcomputer 100. In Schritt S619 installiert der Clientcomputer 100 die Druckerweiterungsanwendung 1052.
  • 5C veranschaulicht ein Beispiel der Anwendungsdatenbank 410, die in dem Druckerweiterungsanwendungsverteilerservice 400 vorgehalten wird. Ein Element „Anwendungsname“ repräsentiert den Namen jeder in der Datenbank registrierten Anwendung, einschließlich der Druckerweiterungsanwendung 1052. Ein Element „Anwendungsidentifizierer“ repräsentiert Informationen zum Identifizieren der Anwendung einschließlich der Druckerweiterungsanwendung 1052. Ein Element „Anwendungspaket“ repräsentiert einen Dateipfad, in dem die Anwendung einschließlich der Druckerweiterungsanwendung 1052 gespeichert ist. In dem Element „Anwendungspaket“ kann jede Information, wie der Name eines Ordners, in dem die Anwendung gespeichert ist, verwendet werden, solange die Information verwendet werden kann, um ein Paket für eine registrierte Druckerweiterungsanwendung zu identifizieren.
  • Die Anwendungsdatenbank 410 wird durch die Anwendungsregistrierungseinheit 401 aktualisiert. Die Anwendungsregistrierungseinheit 401 analysiert die Einstellungsdateieinheit 10521 und beschafft einen Anwendungsnamen und einen Anwendungsidentifizierer. Die Anwendungsregistrierungseinheit 401 registriert die vorstehend beschriebenen Informationen sowie die Druckerweiterungsanwendung 1052 in der Anwendungsdatenbank 410.
  • Nach der Installation wird die Druckerweiterungsanwendung 1052 mit dem Drucker 200 in einer Eins-zu-Eins-Korrespondenz in dem Clientcomputer 100 assoziiert. Der Drucker 200 hält die Modellinformationen und die Druckeinstellungsinformationen über den Drucker 200 vor, und macht es dabei dementsprechend möglich, dem Benutzer eine geeignete Druckeinstellungs-UI zu präsentieren. Alternativ könnte die Druckeinstellungsanwendung 1052 mit dem Clouddruckservice 500 kommunizieren, um Zielmodellinformationen und Druckeinstellungsinformationen über den Zieldrucker zu beschaffen, und könnte die UI unter Verwendung der Informationen bereitstellen. Nach Abschluss der Installation der Druckerweiterungsanwendung 1052 kann der Benutzer eine erweiterte Druckeinstellungsänderungsfunktion verwenden.
  • In dem vorliegenden beispielhaften Ausführungsbeispiel greift der Clientcomputer 100 auf den Druckertreiberverteilerservice 300 zu, um das Treibererweiterungspaket 303 zu beschaffen, nachdem die Druckwarteschlange in dem Clientcomputer 100 erzeugt wurde. Der Clientcomputer 100 könnte die Informationen über die erweiterte Druckwarteschlange von dem Clouddruckservice 500 beschaffen, ohne die Druckwarteschlange auf dem Clientcomputer 100 zu erweitern. In diesem Fall überspringt der Clientcomputer 100 die Schritte S614 bis S616. Alternativ könnte der Clientcomputer 100 die Verarbeitung der Schritte S614 bis S616 nach dem Beschaffen der Informationen über die erweiterte Druckwarteschlange von dem Clouddruckservice 500 ausführen.
  • Ein Betrieb, der durchgeführt wird, wenn der Clientcomputer 100 das Drucken gemäß dem vorliegenden beispielhaften Ausführungsbeispiel ausführt, wird nun besch rieben.
  • 8A veranschaulicht ein Beispiel einer gewöhnlichen Druckdialogbox, die auf dem Clientcomputer 100 durch das OS 1503 angezeigt wird. Ein Bereich 801 ist ein Bereich zum Auswählen einer Druckwarteschlange, die beim Drucken für den im Clouddruckservice 500 registrierten Drucker verwendet werden soll. Wenn der Benutzer den Bereich 801 in der gewöhnlichen Druckdialogbox auswählt, wird eine Liste von in dem Clouddruckservice 500 registrierten Druckwarteschlangen angezeigt. Der Benutzer wählt die beim Drucken zu verwendende Druckwarteschlange unter den angezeigten Druckwarteschlangen aus.
  • Eine Taste für erweiterte Einstellungen 800 ist eine Taste zum Aktivieren der Druckerweiterungsanwendung 1052. Wenn der Benutzer die Taste für erweiterte Einstellungen 800 auswählt, wird ein nachstehend mit Bezug auf 8B beschriebener Druckeinstellungsbildschirm angezeigt.
  • Eine „Drucken“-Taste 802 ist eine Taste, mit der der Benutzer einen Druckstart anweisen kann. Wenn der Benutzer die „Drucken“-Taste 802 auswählt, überträgt der Clientcomputer 100 Bilddaten und die aktuelle Druckeinstellung an den Clouddruckservice 500. Wenn das Drucken in der gewöhnlichen Druckdialogbox, die durch das OS 1053 angezeigt wird, angewiesen wird, überträgt der Cloudtreiber 1050 die Bilddaten und die Druckeinstellung an den Clouddruckservice 500. Die Druckauftragerzeugungseinheit 506 in den Clouddruckservice 500 erzeugt PDL-Daten basierend auf den Bilddaten und der Druckeinstellung, die von dem Clientcomputer 100 empfangen werden, und speichert einen Auftrag als einen Druckauftrag in dem Druckauftragspeicherbereich 510.
  • 8B veranschaulicht einen auf dem Clientcomputer 100 anzuzeigenden Bildschirm, wenn die in 8A veranschaulichte Taste für erweiterte Einstellungen 800 ausgewählt wird. Wenn der Benutzer die Taste für erweiterte Einstellungen 800 auswählt, identifiziert das OS 1053 die Druckerweiterungsanwendung 1052 entsprechend der gewählten Druckwarteschlange. Das OS 1053 aktiviert die identifizierte Druckerweiterungsanwendung 1052. Die aktivierte Druckerweiterungsanwendung 1052 zeigt den in 8B veranschaulichten Druckeinstellungsbildschirm an.
  • Ein Bereich 803 ist ein Bereich, in dem die Druckeinstellung angezeigt wird. In dem Bereich 803 können Einstellungselemente, die spezifisch für den Anbieter sind, zusätzlich zu der Blattorientierung, der Anzahl an Druckblättern, und dem Farbmodus, die vorbestimmte Standardfunktionen, die durch IPP oder dergleichen definiert sind, eingestellt werden. Die Einstellungselemente umfassen ein Einstellen für den Buchbindedruck und ein Einstellen für den Mischblattdruck, d.h. das Drucken mit verschiedenen Blattgrößen in einem Druckauftrag.
  • Eine Erweiterungseinstellung 804 ist ein Bedienbereich, der basierend auf den durch das Treibererweiterungspaket 303 erweiterten Funktionsinformationen erzeugt wird. Ein Bereich 805 ist ein Bereich zum Schalten des angezeigten Bildschirms und zum Ändern eines Einstellungselements.
  • Eine „OK“-Taste 806 ist eine Taste, die zur Bestätigung der Druckeinstellung verwendet wird, die auf dem in 8B veranschaulichten Druckeinstellungsbildschirm vorgenommen wurde, und um zu der in 8A veranschaulichten gewöhnlichen Druckdialogbox zurückzukehren. Wenn die „OK“-Taste 806 ausgewählt wird, wird die auf dem in 8B veranschaulichten Druckeinstellungsbildschirm vorgenommene Druckeinstellung an das OS 1053 geliefert.
  • Eine „Drucken“-Taste 807 ist eine Taste, mit der die Druckerweiterungsanwendung 1052 den Clouddruckservice 500 anweist, den Druck auszuführen. Wenn die „Drucken“-Taste 807 ausgewählt wird, führt die Druckerweiterungsanwendung 1052 die Ausführungsdateieinheit 10522 in der Druckerweiterungsanwendung 1052 aus und erzeugt PDL-Daten, in denen die aktuelle Druckeinstellung widergespiegelt wird. Die Druckerweiterungsanwendung 1052 überträgt dann die erzeugten PDL-Daten und die Druckeinstellung an den Clouddruckservice 500. In einem Fall, in dem die Druckerweiterungsanwendung 1052 PDL-Daten erzeugt, überträgt der Clouddruckservice 500 die PDL-Daten und die Druckeinstellung an das Druckgerät ohne die PDL-Daten zu erzeugen.
  • Wie vorstehend beschrieben, werden in dem ersten beispielhaften Ausführungsbeispiel PDL-Daten in der Druckerweiterungsanwendung 1052 erzeugt. Mit dieser Konfiguration können die PDL-Daten, in denen die durch die Druckerweiterungsanwendung 1052 vorgenommene Einstellung reflektiert wird, an das Druckgerät übertragen werden, selbst wenn der Clouddruckservice 500 die PDL-Daten erzeugt, in denen die Einstellung, die durch die Druckerweiterungsanwendung 1052 vorgenommen wurde, reflektiert wird.
  • 11 veranschaulicht eine Verarbeitung, die durchgeführt wird, wenn der Clouddruckservice 500 von der gewöhnlichen Druckdialogbox, die in 8A veranschaulicht ist, gemäß dem vorliegenden beispielhaften Ausführungsbeispiel angewiesen wird, Drucken auszuführen. Die in 11 veranschaulichte Verarbeitung wird gestartet, nachdem der gemeinsame Dialog durch das OS 1053 angezeigt wurde.
  • In Schritt S1301 empfängt das OS 1053 die Auswahl der Taste für erweiterte Einstellungen 800. In Schritt S1302 aktiviert das OS 1053 die Druckerweiterungsanwendung 1052 entsprechend der in der gewöhnlichen Druckdialogbox gewählten Druckwarteschlange. In Schritt S1303 zeigt die Druckerweiterungsanwendung 1052 den in 8B veranschaulichten Druckeinstellungsbildschirm an. Die Druckerweiterungsanwendung 1052 empfängt eine Druckeinstellungsänderung von dem Benutzer. In Schritt S1304 empfängt die Druckerweiterungsanwendung 1052 die Auswahl der „OK“-Taste 806. Wenn der Benutzer die „OK“-Taste 806 wählt, überträgt die Druckerweiterungsanwendung 1052 die vorgenommene Druckeinstellung an das OS 1053. Das OS 1053 empfängt die Druckeinstellung von der Druckerweiterungsanwendung 1052 und zeigt die gewöhnliche Druckdialogbox an. In Schritt S1306 wählt der Benutzer die „Drucken“-Taste 802 in der gewöhnlichen Druckdialogbox aus. In Schritt S1307 überträgt das OS 1053 die von der Druckerweiterungsanwendung 1052 empfangene Druckeinstellung und die zu druckenden Bilddaten als Druckdaten an den Clouddruckservice 500.
  • In Schritt S1308 empfängt der Clouddruckservice 500 die Bilddaten und die Druckeinstellung von dem OS 1053 des Clientcomputers 100 und erzeugt PDL-Daten basierend auf den empfangenen Bilddaten und der Druckeinstellung. In diesem Fall erzeugt der Clouddruckservice 500 die PDL-Daten, in denen nur die Druckeinstellung, die durch den Clouddruckservice 500 unterstützt wird, widergespiegelt wird. In Schritt S1309 speichert der Clouddruckservice 500 den Druckauftrag unter Verwendung der erzeugten PDL-Daten als Druckdaten in dem Druckauftragspeicherbereich 511.
  • Wie vorstehend beschrieben, in einem Fall, in dem der Clouddruckservice 500 PDL-Daten erzeugt, kann nur die Druckeinstellung, die durch den Clouddruckservice 500 unterstützt wird, in den PDL-Daten widergespiegelt werden. Beispiele von durch den Clouddruckservice 500 unterstützten Druckeinstellungen umfassen ein Einstellen von Farbdruck oder Schwarz-Weiß-Druck und ein Einstellen von Duplexdruck. Was die in Schritt S1307 übertragene Druckeinstellung betrifft, so wird die vom Clouddruckservice 500 nicht unterstützte Druckeinstellung nicht in den PDL-Daten und somit auch nicht in den vom Drucker ausgegebenen Daten widergespiegelt. In dem vorliegenden beispielhaften Ausführungsbeispiel wird in einem Fall, in dem eine Druckeinstellung unter Verwendung der Druckerweiterungsanwendung 1052 vorgenommen wird, Drucken durch die Druckerweiterungsanwendung 1052, wie in 12 veranschaulicht, angewiesen und PDL-Daten werden durch die Druckerweiterungsanwendung 1052 erzeugt. Mit dieser Konfiguration kann Drucken unter Verwendung der PDL-Daten, in denen die Druckeinstellung widergespiegelt wird, ausgeführt werden, selbst wenn eine Druckeinstellung, die nicht durch den Clouddruckservice 500 unterstützt wird, in der Druckerweiterungsanwendung 1052 vorgenommen wird. In dem vorliegenden beispielhaften Ausführungsbeispiel umfassen Beispiele der Druckeinstellung, die nicht durch den Clouddruckservice unterstützt werden, eine N-auf Eins-Druckeinstellung zum Drucken einer Vielzahl von Seiten auf ein Blatt, eine Einstellung für einen Speichermodus zum Speichern von Aufnahmematerialien, die beim Drucken verwendet werden sollen, und eine Einstellung für das Buchbinden oder Stempeln.
  • In Schritt S1010 empfängt das OS 1053 des Clientcomputers 100 die Auswahl der Taste für erweiterte Einstellungen 800 von dem Benutzer. In Schritt S1011 aktiviert das OS 1053 die Druckerweiterungsanwendung 1052 entsprechend der gewählten Druckwarteschlange.
  • In Schritt S1012 empfängt die Druckerweiterungsanwendung 1052 eine Einstellungsänderung von dem Benutzer und empfängt die Auswahl der „Drucken“-Taste 807. In Schritt S1013 überträgt die Druckerweiterungsanwendung 1052 an das OS 1053 eine Anfrage zum Beschaffen von zu druckenden Druckdaten. In Schritt S1014 überträgt das OS 1053 die Bilddaten als Druckdaten an die Druckerweiterungsanwendung 1052. In Schritt S1015 konvertiert die Druckerweiterungsanwendung 1052 die Druckeinstellung und die als Druckdaten empfangenen Bilddaten in PDL-Daten, die spezifisch für den Anbieter sind. Die durch die Druckerweiterungsanwendung 1052 erzeugten PDL-Daten haben ein Datenformat, das durch den Drucker 200 analysiert werden kann und umfassen eine Druckanweisung, die fähig ist, alle Funktionen, die in dem Drucker 200 umfasst sind, zu implementieren. Verschiedene Funktionen, die durch die vorstehend beschriebene Druckeinstellungs-UI geändert wurden, können dabei in die Druckanweisung konvertiert werden, und die Druckanweisung kann als PDL-Daten erzeugt werden.
  • Im Schritt S1016 überträgt die Druckerweiterungsanwendung 1052 die konvertierten PDL-Daten als Druckdaten an den Clouddruckservice 500. Die Druckerweiterungsanwendung 1052 könnte sowohl die PDL-Daten als auch die Druckeinstellung als Druckdaten an den Clouddruckservice 500 übertragen. Die Druckerweiterungsanwendung 1052 überträgt auch die PDL-Daten an den Clouddruckservice 500 unter Verwendung einer vorbestimmten Anwendungsprogrammierschnittstelle (API).
  • In Schritt S1017 empfängt der Clouddruckservice 500 die Druckdaten umfassend die PDL-Daten von der Druckerweiterungsanwendung 1052 und die Druckauftragverwaltungseinheit 505 registriert die empfangenen Druckdaten umfassend die PDL-Daten als einen Druckauftrag in dem Druckauftragspeicherbereich 511.
  • In einem Fall, in dem der Clouddruckservice 500 die von der Druckerweiterungsanwendung 1052 erzeugten PDL-Daten empfängt, arbeitet die Druckauftragerzeugungseinheit 506 im Clouddruckservice 500 nicht. Die Druckauftragerzeugungseinheit 506 führt eine Verarbeitung durch, in der, wenn Daten eines Formats, das nicht durch den Drucker 200 analysiert werden kann, an den Clouddruckservice 500 übertragen werden, die Daten in eine geeignete Form konvertiert werden. Daher besteht in dem vorliegenden beispielhaften Ausführungsbeispiel keine Notwendigkeit, eine zusätzliche Konvertierungsverarbeitung in ein Druckauftragsformat bei den Daten durchzuführen, die durch Konvertierung der PDL-Daten durch die Druckerweiterungsanwendung 1052 erzeugt werden. Der Clouddruckservice 500 führt die Steuerungsverarbeitung so durch, dass die empfangenen PDL-Daten nicht konvertiert werden, basierend auf einem von der Druckerweiterungsanwendung 1052 empfangenen vorbestimmten API.
  • Der Clouddruckservice 500 könnte die Daten und die Druckeinstellung, die von der Druckerweiterungsanwendung 1052 empfangen wurden, analysieren, und könnte bestimmen, ob eine Verarbeitung zum Konvertieren der empfangenen Bilddaten in PDL-Daten durchzuführen ist. Beispielsweise, falls die Druckerweiterungsanwendung 1052 Druckdaten übertragen hat, könnte die Verarbeitung zum Konvertieren der durch den Clouddruckservice 500 empfangenen Druckdaten in PDL-Daten weggelassen werden. Im Gegensatz dazu, falls das OS 1053 die Druckdaten übertragen hat, könnte die Verarbeitung zum Konvertieren der empfangenen Druckdaten in PDL-Daten durchgeführt werden.
  • Daher umfasst der Clouddruckservice 500 eine Verarbeitung zum Bestimmen, ob die empfangenen Daten konvertiert werden sollen. Alternativ könnte die Druckerweiterungsanwendung 1052 den Clouddruckservice 500 anweisen, die Auftragskonvertierungsverarbeitung nicht durchzuführen. Gemäß dem vorliegenden beispielhaften Ausführungsbeispiel ist es für den Clouddruckservice 500 möglich, die PDL-Daten zu verwalten, in denen die im Drucker 200 integrierten Funktionen realisiert werden können.
  • In dem vorliegenden beispielhaften Ausführungsbeispiel kann eine Druckstartanweisung unter Verwendung des Clouddruckservices 500 sowohl auf dem Bildschirm der gewöhnlichen Druckdialogbox, die von dem OS 1053 bereitgestellt wird, als auch auf dem Druckeinstellungsbildschirm, der von der Druckerweiterungsanwendung 1052 bereitgestellt wird, ausgegeben werden. Des Weiteren wird die Erzeugung der PDL-Daten unter Verwendung des Clouddruckservices 500 und die Erzeugung der PDL-Daten in der Druckerweiterungsanwendung 1052 abhängig davon getauscht, ob das Drucken von der gewöhnlichen Druckdialogbox angewiesen wird oder ob das Drucken von der Druckerweiterungsanwendung 1052 angewiesen wird.
  • Wenn die „Drucken“-Taste 802 in der gewöhnlichen Druckdialogbox, die durch das OS 1053 bereitgestellt wird, ausgewählt wird, könnte die Druckerweiterungsanwendung 1052 automatisch aktiviert werden und die Bilddaten könnten an die Druckerweiterungsanwendung 1052 geliefert werden, und dann könnte der in 8B veranschaulichte Druckeinstellungsbildschirm angezeigt werden. Der Benutzer führt erweiterte Einstellungen zum Drucken wie benötigt unter Verwendung des in 8B veranschaulichten Druckeinstellungsbildschirms durch. Wenn der Benutzer die „Drucken“-Taste 807 wählt, werden PDL-Daten basierend auf den Bilddaten und der durch die Druckerweiterungsanwendung 1052 beschafften Druckeinstellung erzeugt, und die erzeugten PDL-Daten und die Druckeinstellung werden an den Clouddruckservice 500 übertragen. In diesem Fall verwendet die Druckerweiterungsanwendung 1052 die vorbestimmte API und steuert den Clouddruckservice 500 die PDL-Daten nicht zu erzeugen. In dem vorstehend beschriebenen Beispiel können die Taste für erweiterte Einstellungen 800, die in 8A veranschaulicht ist, und die „OK“-Taste 806, die in 8B veranschaulicht ist, weggelassen werden. Die „Drucken“-Taste 802 kann für die gewöhnliche Druckdialogbox, die in 8A veranschaulicht ist, weggelassen werden, und Drucken könnte von der Druckerweiterungsanwendung 1052 angewiesen werden, nachdem der Benutzer die „Taste für erweiterte Einstellungen“ 800 wählt und die Druckerweiterungsanwendung 1052 startet. In diesem Fall werden die PDL-Daten durch die Druckerweiterungsanwendung 1052 unabhängig von den Inhalten der Druckeinstellung erzeugt.
  • Eine Verarbeitung zum Ausführung des Druckens basierend auf einem in dem Clouddruckservice 500 von dem Drucker 200 registrierten Druckauftrag wird nun besch rieben.
  • Wenn sich der Benutzer an dem Drucker 200 einloggt, überträgt der Drucker 200 eine Anfrage zum Beschaffen von bibliografischen Informationen über den in der Druckwarteschlange des Clouddruckservices 500 registrierten Druckauftrag an den Clouddruckservice 500. Die zu beschaffenden bibliografischen Informationen können in diesem Fall Informationen sein, die verwendet werden, um eine UI auf dem Drucker 200 anzuzeigen. Beispiele von bibliografischen Informationen umfassen einen Dateinamen der Bilddaten, die Anzahl der Druckblätter in dem Farbmodus, und ein Datum und eine Zeit, zu der ein Druckauftrag erzeugt wurde.
  • Der Clouddruckservice 500 erzeugt eine druckbare Auftragsliste basierend auf den bibliografischen Informationen über den in der Druckwarteschlange gespeicherten Druckauftrag. Dann überträgt der Clouddruckservice 500 die erzeugte druckbare Auftragsliste an den Drucker 200. Nach Empfangen der von dem Clouddruckservice 500 übertragenen druckbaren Auftragsliste zeigt der Drucker 200 die druckbare Auftragsliste auf einem Bedienfeld an. 7 veranschaulicht ein Beispiel des Bedienfelds, auf dem die von dem Clouddruckservice 500 empfangene druckbare Auftragsliste angezeigt wird. Druckaufträge „aaa.doc“ bis „jjj.pdf“ sind in dem Clouddruckservice umfasst. Der Benutzer wählt einen gewünschten Druckauftrag von dem Bedienfeld aus und drückt eine Drucken-Taste 701, um den Druck auszuführen. Der Drucker 200, der eine Druckausführungsanweisung empfangen hat, überträgt eine Anfrage zum Beschaffen des Druckauftrags an den Clouddruckservice 500. Diese Beschaffungsanfrage umfasst eine ID entsprechend dem zu beschaffenden Druckauftrag, d.h. eine Druckauftrag-ID. Drucken wird durch Ausführung der in 10 veranschaulichten Verarbeitung, wie nachstehend beschrieben, realisiert.
  • 10 ist ein Flussdiagramm, das eine durch den Clouddruckservice 500 auszuführende Verarbeitung veranschaulicht, wenn die Anfrage zum Beschaffen des Druckauftrags von dem Drucker 200 an den Clouddruckservice 500 gemäß dem vorliegenden beispielhaften Ausführungsbeispiel übertragen wurde. Sofern nichts Anderes angegeben wird, wird diese Verarbeitung von jeder Verarbeitungseinheit in dem Clouddruckservice 500 durchgeführt. In Schritt S1001 empfängt die Druckauftragverwaltungseinheit 505 eine Druckauftragsbeschaffungsanfrage (einschließlich einer Druckauftrag-ID für einen auszugebenden Druckauftrag) von dem Drucker 200.
  • Die Druckauftragverwaltungseinheit 505, die die Druckauftragsbeschaffungsanfrage empfangen hat, identifiziert den vorgesehenen Druckauftrag aus dem Druckauftragspeicherbereich 511. In Schritt S1002 liefert die Druckauftragverwaltungseinheit 505 den identifizierten Druckauftrag an die Druckauftragerzeugungseinheit 506 und erzeugt einen für den Drucker 200 geeigneten Druckauftrag, an den der Druckauftrag ausgegeben wird.
  • In Schritt S1003 beschafft die Druckauftragverwaltungseinheit 505 den erzeugten Druckauftrag von der Druckauftragerzeugungseinheit 506 und überträgt den Druckauftrag an den Drucker 200, der die Druckanfrage gesendet hat.
  • In dem vorliegenden beispielhaften Ausführungsbeispiel bedient der Benutzer den Drucker 200 und der Drucker 200 beschafft den ausgewählten Druckauftrag von dem Clouddruckservice 500. Der Drucker 200 könnte periodisch auf den Clouddruckservice 500 zugreifen und von dem Clouddruckservice 500 den in Verbindung mit der Druckwarteschlange entsprechend dem Drucker 200 verwalteten Druckauftrag beschaffen.
  • Durch Verwendung der vorstehend beschriebenen Verarbeitung wird der in dem Clouddruckservice 500 registrierte Druckauftrag ausgeführt.
  • Mit der vorstehenden Konfiguration können die Druckdaten, in denen die Druckeinstellung widergespiegelt wird, an das Druckgerät übertragen werden, selbst wenn eine Druckeinstellung, die nicht durch den Clouddruckservice 500 unterstützt wird, in dem Clientcomputer 100 vorgenommen wird.
  • In dem ersten beispielhaften Ausführungsbeispiel konvertiert die Druckerweiterungsanwendung 1052 in dem Clientcomputer 100 die Druckdaten in Druckdaten, die mit dem Druckgerät konform sind. Abhängig von den Spezifikationen des OS 1053 kann diese Verarbeitung nicht in einer Umgebung implementiert werden, in der die Druckerweiterungsanwendung 1052 nicht installiert werden kann. Ein zweites beispielhaftes Ausführungsbeispiel veranschaulicht ein Verfahren zum Implementieren aller Funktionen, die in dem Drucker 200 integriert sind, selbst in einem Fall, in dem die Druckerweiterungsanwendung 1052 nicht vorhanden ist.
  • Das zweite beispielhafte Ausführungsbeispiel veranschaulicht einen Fall, in dem der Clouddruckservice 500 Druckdaten von dem Clientcomputer 100 empfängt und ein externes Serversystem PDL-Daten entsprechend dem Druckgerät erzeugt. Gemäß dem vorliegenden beispielhaften Ausführungsbeispiel können Druckdaten, die mit dem Druckgerät konform sind, selbst in einem Fall erzeugt werden, in dem der Clientcomputer 100 oder die Druckerweiterungsanwendung 1052 die Druckdaten nicht erzeugen können, die mit dem Druckgerät konform sind, an das die Druckdaten übertragen werden.
  • Eine Hardwarekonfiguration des Clientcomputers 100 ist ähnlich der des ersten beispielhaften Ausführungsbeispiels und daher wird die Beschreibung davon weggelassen.
  • Ein Beispiel einer Netzwerkkonfiguration gemäß dem vorliegenden beispielhaften Ausführungsbeispiel wird mit Bezug auf 14 beschrieben. In 14 veranschaulichte Komponenten, die ähnlich denen des ersten beispielhaften Ausführungsbeispiels sind, werden mit den gleichen Bezugszeichen bezeichnet, und nur die vom ersten beispielhaften Ausführungsbeispiel verschiedenen Komponenten werden beschrieben.
  • Ein PDL-Konvertierungsservice 600 repräsentiert einen Service zum Konvertieren von Daten in PDL-Daten umfassend eine Druckanweisung, die fähig ist, alle Funktionen des Druckers 200 zu implementieren, und die durch den Drucker 200 analysiert werden können. Der PDL-Konvertierungsservice 600 könnte durch ein Modul implementiert werden, das in einem in dem Clouddruckservice 500 vorbereiteten Erweiterungsbereich zu registrieren ist, oder könnte als ein weiterer Cloudservice bereitgestellt werden, der zusammen mit dem Clouddruckservice 500 zu betreiben ist. Der PDL-Konvertierungsservice 600 wird als ein Übertragungsziel in dem Clouddruckservice 500 eingestellt, und dabei wird es ermöglicht, Daten an den PDL-Konvertierungsservice 600 zu übertragen, nachdem Druckdaten durch den Clouddruckservice 500 empfangen wurden.
  • In dem vorliegenden beispielhaften Ausführungsbeispiel sind die Registrierung des Druckers 200, die Erzeugung einer Druckwarteschlange, und die Druckanweisung, die durch den Benutzer vorgenommen wird, die gleichen wie die, die in dem ersten beispielhaften Ausführungsbeispiel beschrieben wurden, und daher wird deren Beschreibung weggelassen. Die nachstehende Beschreibung wird ausgehend von dem Punkt starten, wenn ein Benutzer eine Druckanweisung sendet, um Druckdaten an den Clouddruckservice 500 zu übertragen.
  • Das erste beispielhafte Ausführungsbeispiel wurde unter der Annahme vorstehend beschrieben, dass die Druckanweisung sowohl von dem Bildschirm der gewöhnlichen Druckdialogbox als auch von dem Druckeinstellungsbildschirm, der durch die Druckerweiterungsanwendung bereitgestellt wird, vorgenommen werden kann. Falls die Druckanweisung auf der gewöhnlichen Druckdialogbox vorgenommen wird, überträgt das OS 1053 die Druckdaten an den Clouddruckservice 500. Falls die Druckanweisung auf dem in der Druckerweiterungsanwendung bereitgestellten Bildschirm vorgenommen wird, überträgt die Druckerweiterungsanwendung 1052 die Druckdaten an den Clouddruckservice 500. In dem vorliegenden beispielhaften Ausführungsbeispiel überträgt das OS 1053 Druckdaten an den Clouddruckservice 500 unabhängig davon, welcher der Bildschirme verwendet wird, um die Druckanweisung vorzunehmen.
  • 13 ist ein Ablaufdiagramm, das eine Verarbeitung zum Übertragen von Druckdaten an den Clouddruckservice 500 und eine PDL-Konvertierungsverarbeitung unter Verwendung des PDL-Konvertierungsservices 600 gemäß dem vorliegenden beispielhaften Ausführungsbeispiel veranschaulicht.
  • Im Schritt S1110 empfängt das OS 1053 des Clientcomputers 100 eine Druckanweisung von dem Benutzer. In Schritt S1111 überträgt das OS 1053 die Druckdaten umfassend Bilddaten und eine Druckeinstellung an den Clouddruckservice 500.
  • Nach dem Empfangen von Druckdaten überträgt der Clouddruckservice 500 in Schritt S1112 die Druckdaten an den PDL-Konvertierungsservice 600, der vorläufig als ein Übertragungsziel eingestellt ist.
  • Nach dem Empfangen der Druckdaten von dem Clouddruckservice 500 konvertiert der PDL-Konvertierungsservice 600 in Schritt S1113 die Druckdaten in PDL-Daten, bei denen alle Funktionen des Druckers 200 implementiert werden können. In Schritt S1114 überträgt der PDL-Konvertierungsservice 600 die konvertierten PDL-Daten an den Clouddruckservice 500. In Schritt S1114 überträgt der PDL-Konvertierungsservice 600 die PDL-Daten und die Druckeinstellung in Form der Druckdaten an den Clouddruckservice 500. In Schritt S1115 registriert die Druckauftragverwaltungseinheit 505, als einen Druckauftrag, die empfangenen Druckdaten umfassend die PDL-Daten in dem Druckauftragspeicherbereich 511. Gemäß dem vorliegenden beispielhaften Ausführungsbeispiel kann der Clouddruckservice 500 die PDL-Daten verwalten, in denen die Funktionen, die in dem Drucker 200 integriert sind, implementiert werden können.
  • Der in dem Druckauftragspeicherbereich 511 in dem Clouddruckservice 500 durch das vorstehend beschriebene Verfahren gespeicherte Druckauftrag wird von dem Drucker ausgelesen, und ein Drucken wird basierend auf dem Druckauftrag in der gleichen Weise wie im ersten beispielhaften Ausführungsbeispiel ausgeführt.
  • In dem vorliegenden beispielhaften Ausführungsbeispiel führt der Clouddruckservice 500 eine PDL-Konvertierungsverarbeitung unter Verwendung des PDL-Konvertierungsservices 600 durch. Jedoch könnte die PDL-Konvertierungsverarbeitung an einem anderen Zeitpunkt implementiert werden. Beispielsweise könnte der Clientcomputer 100 die PDL-Konvertierungsverarbeitung durch Übertragen von Druckdaten an den PDL-Konvertierungsservice 600 durchführen, ohne den Clouddruckservice 500 zu involvieren. Nach der PDL-Konvertierungsverarbeitung könnte der PDL-Konvertierungsservice 600 die Druckdaten umfassend die PDL-Daten und die Druckeinstellung an den Clouddruckservice 500 übertragen und den Druckauftrag reg istrieren.
  • Das vorstehend beschriebene Verfahren macht es möglich, alle Funktionen, die in jedem Drucker integriert sind, beim Drucken unter Verwendung des Standarddrucksystems zu implementieren, das durch das OS bereitgestellt wird, selbst in einer Umgebung, in der die Druckerweiterungsanwendung 1052 nicht installiert werden kann.
  • Ein drittes beispielhaftes Ausführungsbeispiel veranschaulicht ein Verfahren zum Installieren eines für den Anbieter spezifischen Treiberpakets in dem Clouddruckservice 500 und ein Ausführen der Verarbeitung unter Verwendung eines Druckertreibers. Der Clouddruckservice 500, in dem das Treiberpaket installiert ist, konvertiert von dem Clientcomputer 100 empfangene Druckdaten unter Verwendung des Treibers. Mit dieser Konfiguration können Druckdaten erzeugt werden, in denen sich die für den Anbieter spezifische Druckeinstellung widerspiegelt.
  • Ein Beispiel von Funktionsblöcken in dem Druckertreiberverteilerservice 300 gemäß dem vorliegenden beispielhaften Ausführungsbeispiel wird nun mit Bezug auf 15 beschrieben. 15 ist ein Blockdiagramm, das das in 3A veranschaulichte Blockdiagramm ersetzen soll, das bei der Beschreibung des ersten beispielhaften Ausführungsbeispiels verwendet wurde. Die in 15 veranschaulichten Komponenten, die denen des ersten beispielhaften Ausführungsbeispiels ähnlich sind, sind mit den gleichen Bezugszeichen bezeichnet, und es werden nur Komponenten beschrieben, die sich von denen des ersten beispielhaften Ausführungsbeispiels unterscheiden.
  • Ein Treiberpaket 306 ist ein Beispiel des Pakets, das von dem Druckertreiberverteilerservice 300 verteilt wird. Das Treiberpaket 306 umfasst eine Treiberinformationseinheit 307, eine Vorrichtungfunktionsinformationseinheit 308 und eine Rendering-Einheit 309. Die Treiberinformationseinheit 307 umfasst ähnlich zu der Treiberinformationseinheit 304, eine HWID und COID zum Identifizieren jedes Druckers, Informationen, die angeben, dass das Paket ein Treibererweiterungspaket ist, und die Version des Treibererweiterungspakets 303. Die Vorrichtungfunktionsinformationseinheit 308 umfasst ähnlich zu der Vorrichtungfunktionsinformationseinheit 305 Vorrichtungsfunktionsinformationen und Konfliktinformationen über den entsprechenden Drucker 200. Beispiele der Vorrichtungsfunktionsinformationen umfassen Informationen, die angeben, ob der Drucker 200 Farbdruck oder Duplexdruck unterstützt. Die in dem Treibererweiterungspaket 303 umfassten Funktionsinformationen umfassen nicht nur die vorstehend beschriebenen Funktionsinformationen, sondern auch Informationen, die angeben, ob eine klammerlose Bindung, die für den Anbieter spezifisch ist, durchgeführt werden kann, Informationen, ob eine Rückstichheftung durchgeführt werden kann, und Informationen, ob ein Mischblattdruck durchgeführt werden kann. Der Mischblattdruck verwendet verschiedene Arten von Blättern.
  • Die Rendering-Einheit 309 kann Daten wie Graphics Device Interface (GDI)-Daten, Extensible Markup Language (XML) Paper Specification (XPS)-Daten, Word, Excel oder PowerPoint-Daten in Daten wie PDF, PwgRaster, Printer Control Language (PCL) oder PDL-Daten, die spezifisch für einen Druckeranbieter sind, konvertieren.
  • Wie vorstehend beschrieben, umfasst der Druckertreiberverteilerservice 300 das Treiberpaket 306 und stellt das Treiberpaket an den Clouddruckservice 500 bereit.
  • 16 ist ein Zeitdiagramm, das ein Verfahren zum Installieren des Druckertreibers in dem Cloudservice gemäß dem dritten beispielhaften Ausführungsbeispiel veranschaulicht. 16 veranschaulicht eine Verarbeitung, die die in 4 veranschaulichten Verarbeitung, die in dem ersten beispielhaften Ausführungsbeispiel durchgeführt wird, ersetzen soll. Die in 16 veranschaulichten Prozesse, die denen des ersten beispielhaften Ausführungsbeispiels ähnlich sind, sind mit denselben Bezugszeichen wie im ersten beispielhaften Ausführungsbeispiels bezeichnet, und es werden nur verschiedene Prozesse beschrieben.
  • In dem vorliegenden beispielhaften Ausführungsbeispiel greift der Clientcomputer 100 auf den Drucker 200 zu und betreibt den Drucker 200. Der Drucker 200 überträgt dabei eine Anfrage zum Registrieren des Druckers 200 an den Clouddruckservice 500.
  • Der Drucker 200 unterstützt die Clouddruckfunktion und die Web-UI-Funktion zum Bedienen des Druckers 200 von dem Clientcomputer 100. Die Clouddruckfunktion ist eine Funktion zum Empfangen eines Druckauftrags von dem Clouddruckservice und zum Ausführen des Drucks. Die Web-UI-Funktion ist eine Funktion zum Erzeugen einer UI und zum Freigeben der UI auf einem Netzwerk. Der Clientcomputer 100 unterstützt die Clouddruckclientfunktion und die Web-UI-Clientfunktion zum Bedienen der Web-UI (z.B. einen Web-Browser). Die Clouddruckclientfunktion ist eine Funktion zum Übertragen einer Datei an den Clouddruckservice. Der Clouddruckservice 500 repräsentiert einen Clouddruckservice in dem Internet 203.
  • In Schritt S1512 überträgt der Clouddruckservice 500 eine Anfrage zum Herunterladen des Treiberpakets 306 an den Druckertreiberverteilerservice 300. Diese Anfrage ist eine Anfrage zum Empfangen des Treiberpakets 306 entsprechend dem in dem Clouddruckservice 500 registrierten Drucker. Der Clouddruckservice 500 überträgt die Anfrage zum Herunterladen des Treiberpakets 306 und die HWID und die COID zum Identifizieren des Druckers 200 an den Druckertreiberverteilerservice 300. Die an den Druckertreiberverteilerservice 300 in Schritt S1512 gesendeten HWID und COID sind die durch den Clouddruckservice 500 von dem Drucker 200 in Schritt S411 beschafften HWID und COID.
  • In Schritt S1512 überträgt der Druckertreiberverteilerservice 300 das entsprechende Treiberpaket 306 an den Clouddruckservice 500 basierend auf den empfangenen HWID und COID. Der Druckertreiberverteilerservice 300 identifiziert den Druckertreiber und das Treibererweiterungspaket, das mit den empfangenen HWID übereinstimmt von der in 17A veranschaulichten Druckertreiberdatenbank 310.
  • Die in 17A und 17B veranschaulichten Tabellen werden nun beschrieben. 17A ist eine Tabelle, die Informationen über die Treiberpakete veranschaulicht, die durch den Treiberverteilerservice 300 verwaltet werden. Die in 17A veranschaulichte Tabelle entspricht der in 4B veranschaulichten Tabelle gemäß dem ersten beispielhaften Ausführungsbeispiel. 17B ist eine Tabelle, die Informationen über in dem Clouddruckservice 500 registrierte Drucker veranschaulicht. Die in 17B veranschaulichte Tabelle entspricht der in 5A gemäß dem ersten beispielhaften Ausführungsbeispiel veranschaulichten Tabelle.
  • Es wird angenommen, dass in Schritt S410, der durch iR-ADV CCCC angegebene in 17B veranschaulichte Drucker dem Clouddruckservice 500 hinzugefügt wird. Der Clouddruckservice 500 registriert Daten in der in 17B veranschaulichten Zeile von iR-ADV CCCC, basierend auf den von dem Drucker 200 beschafften Daten. Der Clouddruckservice 500 sendet die HWID an den Druckertreiberverteilerservice 300. Der Druckertreiberverteilerservice 300 identifiziert das in dem Clouddruckservice 500 zu installierende Paket basierend auf den empfangenen HWID. In der in 17A veranschaulichten Tabelle ist eine Vielzahl von Paketen umfasst, die mit den HWID der Vorrichtung iR-ADV CCCC übereinstimmen. Eines dieser Pakete hat ein „TRUE“-Flag und das andere der Pakete hat ein „FALSE“-Flag. Diese Flags beschreiben, dass der Treiber erweitert ist. Die Pakete, bei denen das Flag „TRUE“ angibt, sind nicht Druckertreiber, sondern Pakete zum Erweitern der Druckerinformationen. In diesem Fall überträgt der Druckertreiberverteilerservice 300 vorzugsweise den Druckertreiber, bei dem das Flag, das beschreibt, dass der Treiber erweitert ist, „FALSE“ angibt, an den Clouddruckservice 500.
  • Falls der Druckertreiber und das Treibererweiterungspaket, die mit den von dem Clouddruckservice 500 gesendeten HWID übereinstimmen, nicht identifiziert werden, führt der Druckertreiberverteilerservice 300 die folgende Verarbeitung aus. Das heißt, der Druckertreiberverteilerservice 300 überträgt den Druckertreiber, der mit den COID übereinstimmt, die von dem Clouddruckservice 500 empfangen wurden, an den Clouddruckservice 500. Falls sowohl der Druckertreiber als auch das Erweiterungspaket, das mit den empfangenen COID übereinstimmt, vorhanden sind, überträgt der Druckertreiberverteilerservice 300 vorzugsweise den Druckertreiber an den Clouddruckservice 500. Falls das Treibererweiterungspaket nur basierend auf den HWID identifiziert werden kann, könnten nur die HWID an den Druckertreiberverteilerservice 300 in Schritt S413 übertragen werden.
  • In Schritt S1513 lädt der Clouddruckservice 500 das Treiberpaket 306 von dem Druckertreiberverteilerservice 300 herunter. In Schritt S1514 wird das heruntergeladene Treiberpaket 306 in dem Clouddruckservice 500 installiert.
  • In Schritt S1515 veranlasst der Clouddruckservice 500 die Druckwarteschlangezeugungseinheit 502, eine Druckwarteschlange zu erstellen, um einen Druckauftrag an den Drucker 200 zu übertragen. Die Druckerregistrierungseinheit 501 registriert die Druckerinformationen und die Funktionsinformationen in der Druckerdatenbank 510 und erzeugt eine Aufzeichnung über den Drucker, für den die Registrierungsanfrage vorgenommen wird. Die Druckwarteschlangeerzeugungseinheit 502 erzeugt des Weiteren eine Druckwarteschlange. Diese Druckwarteschlange wird unter Verwendung der über den Drucker 200 empfangenen Informationen, wie dem Namen des Druckers 200 (Vorrichtungsname), den HWID und COID zum Identifizieren des Modells des Druckers 200, und der IP-Adresse des Druckers 200 erstellt. Durch Verwendung der vorstehend beschriebenen Verarbeitung werden die IP-Adresse und das Paket in der Druckerdatenbank, die in 17B veranschaulicht ist, registriert.
  • Die nachfolgende Verarbeitung ist ähnlich der des ersten beispielhaften Ausführungsbeispiels.
  • Ein Verfahren zum Drucken unter Verwendung des in dem Cloudservice installierten Druckertreibers gemäß dem dritten beispielhaften Ausführungsbeispiel wird nun beschrieben. In dem vorliegenden beispielhaften Ausführungsbeispiel erzeugt der in dem Clouddruckservice 500 installierte Druckertreiber PDL-Daten. Daher wird das vorliegende beispielhafte Ausführungsbeispiel mit Bezug auf das Ablaufdiagramm, das in 11 veranschaulicht ist, und vorstehend in dem ersten beispielhaften Ausführungsbeispiel beschrieben wurde, beschrieben. Beschreibungen der Prozesse, die denen des ersten Ausführungsbeispiels ähnlich sind, werden weggelassen und es werden nur Prozesse, die von denen des ersten beispielhaften Ausführungsbeispiels verschieden sind, beschrieben.
  • In Schritt S1308 empfängt der Clouddruckservice 500 Bilddaten und eine Druckeinstellung von dem OS 1053 des Clientcomputers 100 und erzeugt PDL-Daten basierend auf den empfangenen Bilddaten und der Druckeinstellung. Der Clouddruckservice 500 beschafft den Vorrichtungsnamen des Druckers, der beim Drucken verwendet wird von der von dem OS 1053 empfangenen Druckeinstellung. Der Clouddruckservice 500 identifiziert den Treiber entsprechend dem Drucker, der durch den beschafften Vorrichtungsnamen angegeben wird, unter Bezugnahme auf die in 17B veranschaulichte Tabelle. Der Clouddruckservice 500 bestimmt, ob der identifizierte Treiber installiert ist. Falls der basierend auf der vorstehend beschriebenen Bestimmung identifizierte Druckertreiber in dem Clouddruckservice 500 installiert ist, erzeugt die Rendering-Einheit 309 des identifizierten Druckertreibers PDL-Daten. Falls bestimmt wird, dass der Druckertreiber entsprechend dem beschafften Vorrichtungsnamen in dem Clouddruckservice 500 nicht installiert ist, führt der Clouddruckservice 500 die folgende Verarbeitung aus. Das heißt, der Clouddruckservice 500 erzeugt PDL-Daten unter Verwendung eines Moduls, das vorläufig in dem Clouddruckservice 500 umfasst ist, ohne den Treiber, der von dem Druckertreiberverteilerservice 300 beschafft wurde, zu verwenden. Selbst in einem Fall, in dem der Treiber nicht basierend auf dem beschafften Druckernamen identifiziert wird, erzeugt der Clouddruckservice 500 PDL-Daten unter Verwendung eines Moduls, das vorläufig in dem Clouddruckservice 500 umfasst ist.
  • Danach liefert der Clouddruckservice 500 die erzeugten PDL-Daten in Schritt S1309 an die Druckauftragerzeugungseinheit 506, erzeugt einen Druckauftrag unter Verwendung der Druckdaten und speichert den Druckauftrag in dem Druckauftragspeicherbereich 511.
  • Wie vorstehend beschrieben können PDL-Daten unter Verwendung des von dem Druckertreiberverteilerservice 300 verteilten Treibers erzeugt werden. Der in dem Druckertreiberverteilerservice 300 registrierte Druckertreiber wird in dem Clouddruckservice 500 installiert, und dabei wird es ermöglicht, die PDL-Daten zu erzeugen, bei denen eine Druckeinstellung, die nicht durch den Clouddruckservice 500 unterstützt wird, widergespiegelt wird.
  • In dem dritten beispielhaften Ausführungsbeispiel wird der Druckertreiber, der durch den Anbieter hergestellt wird, in dem Clouddruckservice 500 installiert, und dabei werden PDL-Daten unter Verwendung des Treibers erzeugt. In einem vierten beispielhaften Ausführungsbeispiel wird ein Filter zum Erzeugen von PDL-Daten von XPS-Daten, die durch einen OS-Standardtreiber erzeugt werden, in dem Clouddruckservice 500 installiert, und dabei werden PDL-Daten erzeugt.
  • Ein Beispiel von Funktionsblöcken in dem Druckertreiberverteilerservice 300 gemäß dem vierten beispielhaften Ausführungsbeispiel wird nun mit Bezug auf 18 beschrieben. In 18 veranschaulichte Komponenten, die denen des ersten beispielhaften Ausführungsbeispiels ähnlich sind, werden mit den gleichen Bezugszeichen bezeichnet, und nur Komponenten, die sich von denen des ersten beispielhaften Ausführungsbeispiels unterscheiden, werden beschrieben.
  • Das Treiberpaket 306 ist ein Beispiel des von dem Druckertreiberverteilerservice 300 verteilten Pakets. In dem vorliegenden beispielhaften Ausführungsbeispiel wird angenommen, dass ein zu betreibendes Treiberpaket in einer V4-Treiberarchitektur als das Treiberpaket 306 verwendet wird. Die V4-Treiberarchitektur ist eine Druckstruktur, die in einem XML Paper Specification (XPS)-Druckpfad betrieben wird, der in dem Microsoft Windows 8® und nachfolgenden Plattformen integriert ist.
  • Das Treiberpaket 306 umfasst die Treiberinformationseinheit 307, die Vorrichtungfunktionsinformationseinheit 308, einen Layout-Filter 311, und einen Rendering-Filter (Rendering-Filter) 312. Die Treiberinformationseinheit 307 umfasst Informationen, wie die HWID und COID zum Identifizieren jedes Druckers, Informationen, die angeben, dass das Paket ein Treibererweiterungspaket ist, und die Version des Treibererweiterungspakets 303, ähnlich der Treiberinformationseinheit 304. Das vorliegende beispielhafte Ausführungsbeispiel unterscheidet sich von dem dritten beispielhaften Ausführungsbeispiel dadurch, dass das Treiberpaket 306 das Layout-Filter 311 und das Rendering-Filter 312 umfasst.
  • Die Vorrichtungfunktionsinformationseinheit 308 umfasst Vorrichtungfunktionsinformationen und Konfliktinformationen über den entsprechenden Drucker 200 ähnlich der Vorrichtungfunktionsinformationseinheit 305 in dem Treibererweiterungspaket 303. Die Vorrichtungfunktionsinformationen sind beispielsweise Informationen die angeben, ob der Drucker 200 Farbdruck oder Duplexdruck unterstützt. Die Funktionsinformationen, die in dem Treibererweiterungspaket 303 umfasst sind, umfassen nicht nur die vorstehend beschriebenen Funktionsinformationen, sondern auch Informationen, die angeben, ob eine klammerlose Bindung, die für den Anbieter spezifisch ist, durchgeführt werden kann, Informationen die angeben, ob eine Rückstichheftung durchgeführt werden kann, und Informationen darüber, ob ein Mischblattdruck durchgeführt werden kann. Der Mischblattdruck verwendet verschiedene Typen von Blättern. Des Weiteren sind in dem vorliegenden beispielhaften Ausführungsbeispiel nicht nur die Vorrichtungsfunktion, sondern auch Druckeinstellungsinformationen umfasst, die für den Anbieter spezifisch sind, und durch die vom Treiber durchgeführte Verarbeitung vervollständigt werden.
  • Das Layout-Filter 311 führt Layout-bezogene Verarbeitungen wie das Ändern eines Vergrößerungsfaktors und Ausschießlayout oder Stempeln beim Buchbinden durch.
  • Das Rendering-Filter 312 rendert XPS-Daten, die eine Spool-Datei für den Betrieb in einer V4-Treiberarchitektur sind, und konvertiert die XPS-Daten in PDL-Daten.
  • Das Layout-Filter 311 und das Rendering-Filter 312 sind Filter, die als Filter-Pipeline-Plug-In in der V4-Treiberarchitektur verwendet werden.
  • 19 ist ein Zeitdiagramm, das ein Verfahren zum Installieren des Druckertreibers in dem Cloudservice gemäß dem vierten beispielhaften Ausführungsbeispiel veranschaulicht. Prozesse in 19, die ähnlich denen des ersten beispielhaften Ausführungsbeispiels sind, werden mit den gleichen Bezugszeichen bezeichnet, und nur Komponenten, die sich von denen des ersten beispielhaften Ausführungsbeispiels unterscheiden, werden beschrieben.
  • 19 ist ein Zeitdiagramm, das eine Verarbeitung zum Registrieren des Druckers 200 in dem Clouddruckservice 500 veranschaulicht. In dem vorliegenden beispielhaften Ausführungsbeispiel greift der Clientcomputer 100 auf den Drucker 200 zu und betreibt den Drucker 200, und überträgt dabei eine Anfrage zum Registrieren des Druckers 200 in dem Clouddruckservice 500.
  • Der Drucker 200 unterstützt die Clouddruckfunktion (Funktion zum Empfangen eines Druckauftrags von dem Clouddruckservice und Drucken) und die Web-UI-Funktion zum Betreiben des Druckers 200 von dem Clientcomputer 100. Die Web-UI-Funktion ist eine Funktion zum Erzeugen einer UI und zum Freigeben der UI auf einem Netzwerk. Der Clientcomputer 100 unterstützt die Clouddruckclientfunktion (Funktion zum Übertragen einer Datei an den Clouddruckservice) und den Web-UI-Client (z.B. einen Web-Browser) zum Betreiben der Web-UI. Der Clouddruckservice 500 repräsentiert einen Clouddruckservice im Internet 203.
  • In Schritt S1512 überträgt der Clouddruckservice 500 eine Anfrage zum Herunterladen des Treiberpakets 306 an den Druckertreiberverteilerservice 300. Diese Anfrage ist eine Anfrage zum Empfangen des Treiberpakets 306 entsprechend dem in dem Cloudruckservice 500 registrierten Druckers. Der Clouddruckservice 500 überträgt die Anfrage zum Herunterladen des Treiberpakets 306 und die HWID und die COID zum Identifizieren des Druckers 200 an den Druckertreiberverteilerservice 300.
  • In Schritt S1512 überträgt der Druckertreiberverteilerservice 300 das entsprechende Treiberpaket 306 an den Clouddruckservice 500 basierend auf den empfangenen HWID und COID. Der Druckertreiberverteilerservice 300 identifiziert den Druckertreiber und das Treibererweiterungspaket, die mit den empfangenen HWID übereinstimmen, von der in 17A veranschaulichten Druckertreiberdatenbank 310. Wie durch die in 17B veranschaulichte Vorrichtung iR-ADV CCCC angegeben, wird der Druckertreiber vorzugsweise übertragen, falls sowohl der Druckertreiber (Erweiterungs-Flag gibt „FALSE“ an) als auch das Erweiterungspaket (Erweiterungspaket gibt „TRUE“ an), die mit den HWID übereinstimmen, zu der gleichen Zeit in der Druckertreiberdatenbank vorhanden sind.
  • Falls der Druckertreiber und das Treibererweiterungspaket, die mit den HWID übereinstimmen, nicht identifiziert werden können, identifiziert der Druckertreiberverteilerservice 300 den Druckertreiber und das Treiberpaket 306, die mit den empfangenen COID übereinstimmen. Falls der Druckertreiber und das Erweiterungspaket, die mit den COID übereinstimmen, vorhanden sind, wird vorzugsweise der Druckertreiber übertragen. Der Druckertreiberverteilerservice 300 überträgt dann den identifizierten Druckertreiber und das Treiberpaket 306 an den Clouddruckservice 500. Falls das Treibererweiterungspaket nur basierend auf den HWID identifiziert werden kann, könnten nur die HWID an den Druckertreiberverteilerservice 300 in Schritt S413 übertragen werden.
  • In Schritt S1513 lädt der Clouddruckservice 500 das Treiberpaket 306 von dem Clouddruckservice 500 herunter. In Schritt S1610 beschafft der Clouddruckservice 500 die Treiberinformationseinheit 307, die Vorrichtungfunktionsinformationseinheit 308, das Layout-Filter 311 und das Rendering-Filter 312, die in dem Treiberpaket 306 umfasst sind.
  • In Schritt S1611 erstellt der Clouddruckservice 500 eine Druckwarteschlange zum Übertragen von Druckdaten an den registrierten Drucker. Beispielsweise registriert der Clouddruckservice 500 in Schritt S1611 den im OS installierten OS-Standardtreiber innerhalb des Cloudservices, das beschaffte Treiberpaket 306 und die Identifikationsinformationen über den Drucker 200, für den die Registrierungsanfrage vorgenommen wird, in Verbindung miteinander.
  • Insbesondere führt der Clouddruckservice 500 eine Aktualisierungsverarbeitung zum Assoziieren der Vorrichtungfunktionsinformationseinheit 308, die in der V4-Treiberarchitektur verwendet wird, mit dem Filter, das als Filter-Pipeline-Plug-In verwendet wird. Der Clouddruckservice 500 fügt die beschafften Informationen über die Vorrichtungfunktionsinformationseinheit 308 als zusätzliche Informationen zu den Basiseinstellungen, die in dem OS-Standardtreiber umfasst sind, hinzu. Der Benutzer kann dabei Druckeinstellungsinformationen, die spezifisch für den Anbieter sind, hinzufügen, wenn er mit dem Clouddruckservice 500 druckt.
  • Der Clouddruckservice 500 assoziiert dann die Filterinformationen, zu denen verschiedene Prozesse unter Verwendung der Druckeinstellungsinformationen hinzugefügt werden können, die durch die Vorrichtungfunktionsinformationseinheit 308 erweitert werden, mit den Identifikationsinformationen über den Drucker 200 und dem OS-Standardtreiber. Das Filter-Pipeline-Plug-In wird als ein Filter bezeichnet. In dem vorliegenden beispielhaften Ausführungsbeispiel können verschiedene Erweiterungsprozesse basierend auf den Druckeinstellungsinformationen durchgeführt werden, die spezifisch für den Anbieter sind, indem das Layout-Filter 311 und das Rendering-Filter 312 assoziiert werden. Das Filter-Pipeline-Plug-In ist durch eine Datei eines XML-Formats, nämlich einer Filter-Pipeline-Konfiguration, wie in 20 veranschaulicht, definiert. In dem vorliegenden beispielhaften Ausführungsbeispiel sind, wie vorstehend beschrieben, eine Layout-Filterdefinitionseinheit 2001 und eine Rendering-Filterdefinitionseinheit 2002 beschrieben. Der OS-Standardtreiber liest diese Definitionsdateien aus, und schließt damit die Assoziationsverarbeitung ab. Diese Verarbeitung macht es möglich, den OS-Standardtreiber zu erweitern, und ein Drucken durch eine geeignete Verarbeitung der Druckeinstellungsinformationen, die für den Anbieter spezifisch ist, auszuführen.
  • Nach der vorstehend beschriebenen Verarbeitung wird die folgende Verarbeitung ausgeführt, wenn der Clientcomputer 100, die in dem Clouddruckservice 500 erzeugte und zum Drucker 200 korrespondierende Druckwarteschlange auswählt und einen Druck anweist.
  • Der Clouddruckservice 500 empfängt Bilddaten und eine Druckeinstellung von dem Clientcomputer 100. Der OS-Standardtreiber in dem Clouddruckservice 500 erzeugt XPS-Daten basierend auf den empfangenen Bilddaten und der Druckeinstellung. Die erzeugten XPS-Daten werden an das Layout-Filter 311, das mit dem Drucker 200 assoziiert ist, eingegeben. Das Layout-Filter 311 interpretiert die eingegebenen XPS-Daten und erzeugt XPS-Daten, in denen das Layout, das durch die Druckeinstellung eingestellt ist, widergespiegelt wird. Das Layout-Filter 311 liefert dann die erzeugten XPS-Daten an das Rendering-Filter 312. Das Rendering-Filter 312 erzeugt Daten, die durch den Drucker 200 basierend auf der XPS-Datei interpretiert werden können. Die vorstehend beschriebene Konfiguration ermöglicht ein Drucken unter Verwendung des Treiberpakets 306, das von dem Druckertreiberverteilerservice 300 beschafft wurde.
  • Wie vorstehend in dem vierten beispielhaften Ausführungsbeispiel beschrieben, werden einige der Module in dem Druckertreiberverteilerservice 300 registrierten Druckertreiber verwendet und das Filter für die V4-Treiberarchitektur wird verwendet. In dem vierten beispielhaften Ausführungsbeispiel können die Druckdaten, in denen eine Druckeinstellung widergespiegelt wird, die nicht im Allzweck-Clouddruckservice 500 vorgenommen werden können, entsprechend an das Druckgerät übertragen werden.
  • Ausführungsbeispiele der vorliegenden Offenbarung können auch durch Ausführung der folgenden Verarbeitung implementiert werden. Das heißt, Software (ein Programm) zum Implementieren der Funktionen gemäß den vorstehend beschriebenen beispielhaften Ausführungsbeispielen, wird an ein System oder eine Vorrichtung über ein Netzwerk oder verschiedene Speichermedien zugeführt, und ein Computer (oder eine CPU, eine Mikroverarbeitungseinheit (MPU), usw.) des Systems oder des Geräts liest einen Programmcode aus und führt diesen aus. In diesem Fall bilden das Computerprogramm und ein Speichermedium, das das Computerprogramm speichert, Ausführungsbeispiele der vorliegenden Offenbarung.
  • Selbst in einem Standarddrucksystem, das durch ein OS bereitgestellt wird, können Funktionen, die spezifisch für einen Anbieter sind und in einem Drucker integriert sind, unter Verwendung eines Verfahrens zum Konvertieren von Daten in PDL-Daten, die spezifisch für den Anbieter sind, implementiert werden.
  • Andere Ausführungsbeispiele
  • Ausführungsbeispiel(e) der vorliegenden Offenbarung können auch durch einen Computer eines Systems oder eines Geräts realisiert werden, das computerausführbare Anweisungen ausliest und ausführt (z.B. ein oder mehrere Programme), die auf einem Speichermedium aufgezeichnet sind (das auch vollständiger als „nichtflüchtiges computerlesbares“ Speichermedium bezeichnet werden kann), um die Funktionen einer oder mehrerer der oben beschriebenen Ausführungsbeispiel(e) auszuführen, und/oder das einen oder mehrere Schaltkreise (z.B. anwendungsspezifische integrierte Schaltung (ASIC)) zum Durchführen der Funktionen einer oder mehrerer der oben beschriebenen Ausführungsbeispiel(e) umfasst, und durch ein Verfahren, das von dem Computer des Systems oder des Geräts ausgeführt wird, indem beispielsweise die computerausführbaren Anweisungen aus dem Speichermedium ausgelesen und ausgeführt werden, um die Funktionen einer oder mehrerer der oben beschriebenen Ausführungsbeispiel(e) auszuführen und/oder, indem die eine oder mehrere Schaltungen gesteuert werden, um die Funktionen eines oder mehrerer der oben beschriebenen Ausführungsbeispiel(e) auszuführen. Der Computer kann einen oder mehrere Prozessoren (z.B. zentrale Verarbeitungseinheit (CPU), Mikroverarbeitungseinheit (MPU)) umfassen und kann ein Netzwerk von separaten Computern oder separaten Prozessoren zum Auslesen und Ausführen der computerausführbaren Anweisungen umfassen. Die computerausführbaren Anweisungen können dem Computer z.B. über das Netzwerk oder das Speichermedium zur Verfügung gestellt werden. Das Speichermedium kann z.B. ein oder mehrere von einer Festplatte, einem Direktzugriffspeicher (RAM), einem schreibgeschützten Speicher (ROM), einem Speicher verteilter Rechensysteme, einer optischen Disk (z.B. wie eine Compact Disc (CD), eine Digital Versatile Disc (DVD) oder eine Blu-Ray Disc (BD)™), einer Flashspeichervorrichtung, einer Speicherkarte und dergleichen umfassen.
  • Während die vorliegende Offenbarung beispielhafte Ausführungsbeispiele umfasst, kann verstanden werden, dass die Offenbarung nicht auf die offenbarten beispielhaften Ausführungsbeispiele begrenzt ist. Der Umfang der folgenden Ansprüche ist so weit auszulegen, dass er alle derartigen Modifikationen und äquivalenten Strukturen und Funktionen umfasst.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 2013238924 [0004]

Claims (12)

  1. Informationsverarbeitungsgerät, das mit einem Serversystem kommuniziert, das empfangene Druckdaten in Druckdaten konvertiert, die mit einem Druckgerät konform sind, das zum Drucken der empfangenen Druckdaten verwendet wird, und das die konvertierten Druckdaten an das Druckgerät überträgt, wobei das Informationsverarbeitungsgerät umfasst: eine Erzeugungseinrichtung zum Erzeugen von Druckdaten, die mit dem für das Drucken verwendeten Druckgerät konform sind; eine Übertragungseinrichtung zum Übertragen der durch die Erzeugungseinrichtung erzeugten Druckdaten an das Serversystem; und eine Anweisungseinrichtung zum Anweisen des Serversystems, die empfangenen Druckdaten an das Druckgerät zu übertragen, ohne die empfangenen Druckdaten zu konvertieren.
  2. Informationsverarbeitungsgerät nach Anspruch 1, wobei die Erzeugungseinrichtung Druckdaten erzeugt, in denen eine durch einen Benutzer vorgenommene Druckeinstellung widergespiegelt wird.
  3. Informationsverarbeitungsgerät nach Anspruch 2, wobei die durch die Erzeugungseinrichtung erzeugten Druckdaten Druckdaten sind, in denen eine Druckeinstellung widergespiegelt wird, die nicht in den Druckdaten, die durch das Serversystem konvertiert wurden, widergespiegelt wird.
  4. Informationsverarbeitungsgerät nach Anspruch 2 umfasst des Weiteren eine Anzeigeeinrichtung zum Anzeigen eines Druckeinstellungsbildschirms zum Einstellen der Druckeinstellung.
  5. Informationsverarbeitungsgerät nach Anspruch 1, wobei die durch die Druckeinrichtung erzeugten Druckdaten page description language (PDL)-Daten umfassen.
  6. Informationsverarbeitungsgerät nach Anspruch 1, wobei die Anweisungseinrichtung unter Verwendung eines Application Programming Interface (API) das Serversystem anweist, die empfangenen Bilddaten zu übertragen, ohne die empfangenen Bilddaten zu konvertieren.
  7. Informationsverarbeitungsgerät nach Anspruch 1, wobei die durch die Erzeugungseinrichtung erzeugten Druckdaten basierend auf einem Protokoll übertragen werden, das sich von einem Protokoll unterscheidet, das für die empfangenen, durch das Serversystem konvertierten, Druckdaten verwendet wird.
  8. Serversystem umfassend: eine Empfangseinrichtung zum Empfangen von Druckdaten von einem Informationsverarbeitungsgerät; eine Erzeugungseinrichtung zum Erzeugen von Druckdaten, die mit einem Druckgerät konform sind, das eingerichtet ist, ein Drucken basierend auf den durch die Empfangseinrichtung empfangenen Druckdaten durchzuführen; und eine Übertragungseinrichtung zum Übertragen der durch die Erzeugungseinrichtung erzeugten Druckdaten an das Druckgerät, wobei die Übertragungseinrichtung die empfangenen Druckdaten an das Druckgerät basierend auf einer vorbestimmten Anweisung überträgt, die von dem Informationsverarbeitungsgerät empfangen wurde, ohne durch die Erzeugungseinrichtung die mit dem Druckgerät konformen Druckdaten zu erzeugen.
  9. Serversystem nach Anspruch 8, wobei die Erzeugungseinrichtung PDL-Daten erzeugt, in denen zumindest eine der durch einen Benutzer vorgenommenen Druckeinstellungen widergespiegelt wird.
  10. Serversystem nach Anspruch 8, wobei die vorbestimmte Anweisung eine Anweisung ist, die mit einem API übertragen wird.
  11. Anderes Serversystem, das mit einem Serversystem kommuniziert, das empfangene Druckdaten in Druckdaten konvertiert, die mit einem Druckgerät konform sind, das zum Drucken der empfangenen Druckdaten verwendet wird und das die konvertierten Druckdaten an das Druckgerät überträgt, wobei das andere Serversystem umfasst: eine Konvertierungseinrichtung zum Konvertieren von von einem Informationsverarbeitungsgerät übertragenen Druckdaten in Druckdaten, die mit dem Druckgerät konform sind; eine Übertragungseinrichtung zum Übertragen der durch die Konvertierungseinrichtung konvertierten Druckdaten an das Serversystem; und eine Anweisungseinrichtung zum Anweisen des Serversystems die übertragenen Druckdaten durch die Übertragungseinrichtung an das Druckgerät zu übertragen, ohne die übertragenen Druckdaten zu konvertieren.
  12. Steuerungsverfahren für ein Informationsverarbeitungsgerät, das mit einem Serversystem kommuniziert, das empfangene Druckdaten in Druckdaten konvertiert, die mit einem Druckgerät konform sind, das zum Drucken der empfangenen Druckdaten verwendet wird, und das die konvertierten Druckdaten an das Druckgerät überträgt, wobei das Steuerungsverfahren umfasst: ein Erzeugen von Druckdaten, die mit dem für das Drucken verwendeten Druckgerät konform sind; ein Übertragen der erzeugten Druckdaten an das Serversystem; und ein Anweisen des Serversystems, die empfangenen Druckdaten zu übertragen, ohne die empfangenen Druckdaten zu konvertieren.
DE102021102043.3A 2020-01-31 2021-01-29 Informationsverarbeitungsgerät, Steuerungsverfahren und Programm dafür, und Serversystem, das fähig ist, mit dem Informationsverarbeitungsgerät zu kommunizieren Pending DE102021102043A1 (de)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2020-015842 2020-01-31
JP2020015842A JP7410622B2 (ja) 2020-01-31 2020-01-31 情報処理装置、情報処理装置の制御方法ならびにプログラム、および当該情報処理装置と通信することのできるサーバシステム
JP2020176781A JP2022067915A (ja) 2020-10-21 2020-10-21 サーバシステムおよびサーバシステムの制御方法
JP2020-176781 2020-10-21
JP2021004373A JP2022109051A (ja) 2021-01-14 2021-01-14 サーバシステムおよびサーバシステムの制御方法
JP2021-004373 2021-01-14

Publications (1)

Publication Number Publication Date
DE102021102043A1 true DE102021102043A1 (de) 2021-08-05

Family

ID=76853741

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021102043.3A Pending DE102021102043A1 (de) 2020-01-31 2021-01-29 Informationsverarbeitungsgerät, Steuerungsverfahren und Programm dafür, und Serversystem, das fähig ist, mit dem Informationsverarbeitungsgerät zu kommunizieren

Country Status (4)

Country Link
US (1) US11520536B2 (de)
KR (1) KR20210098343A (de)
CN (1) CN113282252A (de)
DE (1) DE102021102043A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022044945A (ja) * 2020-09-08 2022-03-18 株式会社リコー 情報処理プログラム、装置、システム、および方法
JP2023143184A (ja) * 2022-03-25 2023-10-06 ブラザー工業株式会社 サポートプログラムおよび印刷システム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013238924A (ja) 2012-05-11 2013-11-28 Canon Inc 情報処理装置、印刷システム、情報処理装置の制御方法、およびコンピュータプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4908052B2 (ja) * 2006-05-12 2012-04-04 京セラミタ株式会社 印刷システム、印刷方法及び印刷処理プログラム
JP5528136B2 (ja) * 2010-01-29 2014-06-25 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びコンピュータプログラム
JP5729979B2 (ja) * 2010-11-19 2015-06-03 キヤノン株式会社 印刷中継システム、印刷システム、画像形成装置、印刷中継システムを制御する制御方法、およびプログラム
JP6613927B2 (ja) * 2016-01-29 2019-12-04 株式会社リコー 情報処理装置、情報処理システム、情報処理方法および情報処理プログラム
JP6638498B2 (ja) * 2016-03-18 2020-01-29 株式会社リコー 情報処理装置、プログラム及び印刷システム
JP6628654B2 (ja) * 2016-03-18 2020-01-15 キヤノン株式会社 情報処理装置、印刷プラグイン、印刷システム及び制御方法
JP7229680B2 (ja) * 2018-06-29 2023-02-28 キヤノン株式会社 情報処理装置、制御方法及びプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013238924A (ja) 2012-05-11 2013-11-28 Canon Inc 情報処理装置、印刷システム、情報処理装置の制御方法、およびコンピュータプログラム

Also Published As

Publication number Publication date
US20210240407A1 (en) 2021-08-05
KR20210098343A (ko) 2021-08-10
CN113282252A (zh) 2021-08-20
US11520536B2 (en) 2022-12-06

Similar Documents

Publication Publication Date Title
DE10027222B4 (de) Verfahren und zentrales Drucksystem zum Verarbeiten eines Druckauftrags in einem Netzwerk unter Verwendung von ausgewählten Druckerattributen
CN102483740B (zh) 绿色书
DE69834074T2 (de) Drucker, der einen Netzwerkrechner beinhaltet und Rechnernetzwerk-System, das diesen verwendet
DE10309241A1 (de) Drucken mit variablen Daten unter Verwendung einer dynamischen Ausschießvorlage
DE10045133C2 (de) Wiederverwendbares computerimplementiertes Auftrags-Editier und Liefer-Verfahren
US20110035759A1 (en) Virtual Press Run
US8351074B2 (en) Color print control method and apparatus for managing color profile used for color matching in association with a virtual printer and paper
DE102013201816B4 (de) Informationsverarbeitungsvorrichtung, Steuerverfahren und Programm
US20110279862A1 (en) Information processing apparatus and control method thereof, and storage medium
DE102021102043A1 (de) Informationsverarbeitungsgerät, Steuerungsverfahren und Programm dafür, und Serversystem, das fähig ist, mit dem Informationsverarbeitungsgerät zu kommunizieren
DE10123411A1 (de) Verfahren, Gerätesystem und Computerprogrammsystem zum visuellen Überprüfen eines Druckdatenstroms
DE102019008097A1 (de) Steuerverfahren und computerprogramm
US20070291300A1 (en) Method, System and a Computer Program for Automatically Processing a Job Ticket for a Printing Process
CN107977171B (zh) 打印管理设备以及存储打印管理程序的计算机可读介质
WO2006034859A2 (de) Verfahren und system zum automatischen auswählen eines gerätes zum bearbeiten eines dokumentenbearbeitungsauftrages
DE602004004174T2 (de) Vorrichtung, Verfahren und System zur Mitteilung von Informationen in Übereinstimmung mit einem von einer Mehrzahl von Protokollen
DE102006006060B4 (de) Verfahren und Anordnung zum Archivieren von Dokumentendaten sowie zum Ausgeben von in einem Archiv gespeicherten Dokumentendaten
CN104915159A (zh) 信息处理装置、信息处理系统和记录介质
US10310788B2 (en) Control method for generating data used for printing and information processing apparatus
DE10316970A1 (de) Drucker, der die Einstellung von Druckpapier betreffenden Parametern erleichtert
DE102023209681A1 (de) Informationsverarbeitungsvorrichtung, verfahren, programm und nichtflüchtiges computerlesbares speichermedium, das ein programm speichert
DE102023200419A1 (de) Programm, informationsverarbeitungsvorrichtung und steuerverfahren
JP2008234221A (ja) 印刷制御装置、印刷制御方法、印刷制御プログラム及び記録媒体
DE102021212543A1 (de) Informationsverarbeitungsvorrichtung und informationsverarbeitungsverfahren zum übertragen von information über einen druckauftrag
DE102020005993A1 (de) Informationsverarbeitungsvorrichtung, verfahren zum steuern derselben und speichermedium

Legal Events

Date Code Title Description
R012 Request for examination validly filed