JP2022025975A - 情報処理装置、情報処理装置の制御方法、及びプログラム。 - Google Patents

情報処理装置、情報処理装置の制御方法、及びプログラム。 Download PDF

Info

Publication number
JP2022025975A
JP2022025975A JP2020129210A JP2020129210A JP2022025975A JP 2022025975 A JP2022025975 A JP 2022025975A JP 2020129210 A JP2020129210 A JP 2020129210A JP 2020129210 A JP2020129210 A JP 2020129210A JP 2022025975 A JP2022025975 A JP 2022025975A
Authority
JP
Japan
Prior art keywords
information processing
image data
processing apparatus
file
web
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
JP2020129210A
Other languages
English (en)
Other versions
JP2022025975A5 (ja
Inventor
秀和 師岡
Hidekazu Morooka
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
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2020129210A priority Critical patent/JP2022025975A/ja
Priority to US17/387,460 priority patent/US11622049B2/en
Publication of JP2022025975A publication Critical patent/JP2022025975A/ja
Publication of JP2022025975A5 publication Critical patent/JP2022025975A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00209Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax
    • H04N1/00222Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of image data generation or reproduction, e.g. scan-to-email or network printing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00474Output means outputting a plurality of functional options, e.g. scan, copy or print
    • 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/1208Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
    • 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
    • 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/1256User feedback, e.g. print preview, test print, proofing, pre-flight checks
    • 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/1292Mobile client, e.g. wireless printing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/0044Display of information to the user, e.g. menus for image preview or review, e.g. to help the user position a sheet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00464Display of information to the user, e.g. menus using browsers, i.e. interfaces based on mark-up languages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Facsimiles In General (AREA)

Abstract

【課題】WebViewによって操作画面の表示を実現するアプリケーションにて、該アプリケーションがインストールされた情報処理装置に保存されたファイルの画像データを、該情報処理装置側で生成して表示可能にする情報処理装置、情報処理装置の制御方法及びプログラムを提供する。【解決手段】情報処理装置のWebView302によりWebコンテンツに基づき表示される操作画面に対するユーザ操作910に応じて、Webコンテンツに含まれるスクリプトに基づきWebView302から呼び出されることで911、912、ネィティブライブラリ307がローカルに保存されたファイルに基づく画像データを生成し913、生成された画像データをWebViewに渡す914,915。WebViewは、Webコンテンツ301に含まれるスクリプトに基づきネィティブライブラリから渡された画像データに基づく画像を操作画面に表示する916。【選択図】図9

Description

本発明は、Webサーバから提供される操作画面を表示する情報処理装置、情報処理装置の制御方法、及びプログラムに関する。
パーソナルコンピュータ(PC)や携帯電話などの情報処理装置がネットワーク上のWebサーバに接続し、Webサーバ上のWebアプリケーションにより提供される操作画面を情報処理装置で表示するシステムがある。この種のシステムでは、まず情報処理装置のWebブラウザがWebサーバ上のWebアプリケーションに対して操作画面を要求する。そしてWebアプリケーションが情報処理装置からの要求に応えて、Webブラウザに操作画面を表示させるためのHTMLデータを情報処理装置に応答する。Webブラウザは受信したHTMLデータを解析し、HTMLデータの記述に基づいた操作画面を表示する。ユーザがWebブラウザに表示された操作画面を介して指示を入力すると、入力された指示をWebブラウザがWebサーバに通知する。通知を受けたWebアプリケーションは、その通知内容に従って処理を実行する。
Webブラウザと同等の機能を持ち、情報処理装置上のアプリケーションを構成するGUI要素として利用できるWebViewと呼ばれるコンポーネントがある。
情報処理装置上のアプリケーションはWebViewを利用することで、Webブラウザと同等の表現や機能を実現できる。携帯端末、スマートフォン等の情報処理装置には、上述したWebViewが搭載されている。
WebViewには、Webアプリケーションにて実行するJavascript(登録商標)から直接、情報処理装置のネィティブライブラリ機能を呼び出すためのバインディング機構を備えているものがある。ネィティブライブラリ機能とは、情報処理装置のオペレーティングシステム(OS)や言語処理系などが提供している機能を指す。
特許文献1には、WebViewによってモバイル端末上にゲームアプリの操作画面を表示する技術が提案されている。
特開2016-143416号公報
WebViewによってアプリケーションの操作画面の表示を実現することで、HTMLを書き換えるだけでアプリケーションの更新が可能となる。なお、この種のアプリケーションにおいて、該アプリケーションがインストールされている情報処理装置に保存されたファイルに基づく画像データを、WebViewを用いて表示させたい場合がある。例えば、ローカルに保存されたファイルを、WebViewを用いて印刷する前にプレビュー表示したい場合がある。
しかしこの種のアプリケーションは操作画面がWebViewにより表示されるため、従来技術ではローカル(クライアント側)に保存されたファイルに基づく画像データ(プレビュー画像等)をクライアント側で生成して操作画面に表示させることができない。なお、サーバ側にプレビュー画像の生成を依頼し、サーバで生成されたプレビュー画像を表示する構成では、ネットワークを介した画像データ等の送受信が発生するため、ネットワーク環境のトラフィックに影響され、表示処理が遅延する可能性もある。
本発明は、上記の課題を解決するためになされたものである。本発明は、WebViewによって操作画面の表示を実現するアプリケーションにて、該アプリケーションがインストールされた情報処理装置に保存されたファイルの画像データを、該装置側で生成して表示可能にする仕組みを提供することを目的とする。
本発明は、実行中のアプリケーションに対して、ネットワークを介してサーバから取得したウェブコンテンツに基づき操作画面を表示する機能を提供するウェブ表示手段を有する情報処理装置であって、前記操作画面に対するユーザ操作に応じて前記ウェブコンテンツに含まれるスクリプトに基づき前記ウェブ表示手段から呼び出されることで、前記情報処理装置の記憶部に保存されたファイルに基づく画像データを生成する前記情報処理装置のネィティブ機能として実装される生成手段と、前記生成手段により生成された画像データを前記ウェブ表示手段に渡す前記情報処理装置のネィティブ機能として実装される通知手段と、を有し、前記ウェブ表示手段が、前記ウェブコンテンツに含まれるスクリプトに基づき前記通知手段から渡された前記画像データに基づく画像を前記操作画面に表示することを特徴とする。
本発明によれば、WebViewによって操作画面の表示を実現するアプリケーションにて、該アプリケーションがインストールされた情報処理装置に保存されたファイルの画像データを、該装置側で生成して表示可能にする。この結果、サーバに画像データを送受信することなく処理でき、ネットワーク環境のトラフィックに影響されず遅延なく処理可能となる。
本実施形態の情報処理装置を適用可能なシステムの構成を示す図。 本実施形態の情報処理装置、サーバ及びMFPの構成を示す図。 本実施形態の情報処理装置に搭載されるソフトウェアの構成を説明する図。 JavascriptコアによりバインディングするネィティブライブラリのJavaコードの一例を示す図。 Webコンテンツに含まれるHTML及びJavascriptコードの一例を示す図。 JavascriptにバインディングするJavaクラスの一例を示す図。 ネィティブライブラリのJavaから呼び出されるJavascript及びHTMLの一例を示す図。 本実施形態の情報処理装置における操作画面の遷移の一例を示す図。 ファイル選択からプレビュー画像の表示、印刷ジョブアップロードまでの処理の流れを説明するシーケンス図。 プレビュー画像生成処理の詳細を示すフローチャート。 ファイルタイプの判定処理の詳細を示すフローチャート。 画像生成処理の詳細を示すフローチャート。 印刷設定のUIの一例を示す図。 ジョブ送信処理の詳細を示すフローチャート。 ジョブチケットの一例を示す図。
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
<システム構成例>
図1は、本発明の一実施形態を示す情報処理装置を適用可能なシステムの構成の一例を示す図である。
本システムは、LAN等のネットワーク100を介してインターネット103に接続される情報処理装置101と、インターネット103に接続されたサーバ102及びMFP(Multi Function Printer)104を有する。
ネットワーク100は、各装置間で通信を行うための基盤であって、インターネット103に接続されている。情報処理装置101は、WebブラウザやWebView機能を有するものであればよく、例えばスマートフォン等の携帯端末でも、パーソナルコンピュータ(PC)等でもよい。
サーバ102は、Webコンテンツをネットワーク経由で配信する機能を持っており、情報処理装置101からのリクエストに応じてWebコンテンツを返す。Webコンテンツには、情報処理装置101で実行されるJavascript(登録商標。以下、登録商標であることの表示は省略する。)を含むHTMLが含まれている。
MFP104は、プリンタ等の機能を有する複合機である。MFP104は、印刷ジョブを留め置く機能を有すればMFPに限定されるものではなくサーバ等であってもよい。
<情報処理装置の構成例>
図2は、情報処理装置101、サーバ102及びMFP104の構成の一例を示す図である。なお、MFP104に関しては、図2に示す構成のほか、画像の読み取りやプリントなどのための構成要素を更に含んでいるが図では省略してある。
以下、情報処理装置101を用いて説明するが、サーバ102及びMFP104の場合も同様である。
情報処理装置101には、本実施形態に係るプログラムのほか、オペレーティングシステム(OS)やアプリケーション、スクリプト等を含むプログラムを実行するCPU201が備えられている。
また、情報処理装置101には、CPU201で実行されるプログラムやデータ等を記憶するROM202、CPU201で実行されるプログラムやデータ等を展開するためのワークエリアを提供するRAM203が備えられている。また、情報処理装置101には、本実施形態に係るプログラムや様々な設定を記憶する記憶部204(HDD、SSD、NVRAM等でもよい)が備えられている。
さらに、情報処理装置101には、ユーザがコマンドの入力を行うユーザ入力部205、ユーザーインターフェイス画面などの画面表示を行うUI表示部206、他機器とネットワークによる通信を行うネットワーク部207が備えられている。また、各構成要素を接続するメインバス200が情報処理装置に備えられている。
なお、特に断らない限り、情報処理装置101、サーバ102、MFP104は、CPU201がメインバス200を介してROM202、RAM203、記憶部204、ユーザ入力部205、UI表示部206、ネットワーク部207を制御する。また、タッチパネルディスプレイのようにUI表示部206がユーザ入力部205を兼ねてもよい。また、MFP104はその他に画像読取部や画像印刷部がメインバス200に接続されていてもよい。
<ソフトウェア構成例>
図3は、情報処理装置101に搭載されるソフトウェアの構成を説明する図である。図3に示す各機能部は、情報処理装置101のCPU201がプログラムを実行することで実現される。
情報処理装置101には、複数タイプのアプリケーションがインストールされている。一つ目はWebコンテンツをサーバ102から取得し、Webコンテンツに含まれるスクリプトと情報処理装置101のネィティブ機能とをバインディングして実行するアプリケーション300である。2つ目は、Webコンテンツを用いないアプリケーション308である。
アプリケーション300は、HTTPプロトコルにより通信を行うモジュールであるネットワーク部207を介して、サーバ102からWebコンテンツ301を取得する。取得したWebコンテンツ301は、アプリケーション300が共有するWebView302で表示することができる。
WebView302(またはWebブラウザ)は、Android(登録商標)端末やiOS(登録商標)端末などの情報処理装置101で使用できるアプリケーションコンポーネントである。WebView302は、実行中のアプリケーション300に対して、ネットワークを介してサーバ102から取得したウェブコンテンツに基づき操作画面を表示する機能(ウェブ表示機能)を提供する。WebView302は、情報処理装置101でWebコンテンツを用いた操作画面の表示及びユーザ操作の受付を可能にする。例えば、WebView302は、操作画面を介したユーザの入力操作(例えばファイルの選択)を基に、情報処理装置101のデバイス機能(不図示)を実行することができる。これは、後述するバインディング機能により、スクリプトからデバイス機能のライブラリ(ネィティブライブラリ307)を利用することで実現できる。
WebView302は、Webエンジン304を利用してWebコンテンツ301をレンダリングし、その結果を表示することができる。Webエンジン304は、Webコア306と、Javascriptコア305とを構成要素として持つ。
Webコア306は、Webコンテンツ301に含まれるHTMLをレンダリングする。Javascriptコア305は、HTMLに含まれるJavascriptを解釈し実行する。Javascriptコア305は、Javascriptを解釈し、ネィティブライブラリ307を実行する機能を持つ。なお、ネィティブライブラリとは、情報処理装置のオペレーティングシステムの機能や言語処理系(JavaやC言語などにより実装された)などが提供している機能及び、それらの機能を組み合わせたプログラムを指す(詳細は後述する)。Javascriptコア305は、アプリケーション300からの命令に応じてJavascriptとネィティブのライブラリ(例えばJavaのクラス)をバインディングするバインディング機能を有している。
ウィンドウ制御モジュール309は、各アプリケーション300、308による操作画面の表示状態を管理および制御にする。
情報処理装置101は、Java(登録商標。以下、登録商標であることの表示は省略する。)で記述されているアプリケーションを実行するための不図示のエンジンを含むプラットフォームを有している。図3に示した構成要素のうち、WebView302、Webエンジン304、ネィティブライブラリ307はそのプラットフォームに含まれる。アプリケーション300がJavaで記述されていれば、情報処理装置101はそのプラットフォームを介してアプリケーション300を実行できる。実行されるアプリケーション300は、WebView302を用いてWebコンテンツを表示させることができ、Webコンテンツに含まれたJavascriptによりJavaオブジェクトを使用することができる。
<アプリケーションおよびスクリプトのコードの例>
まず、図4、図5を用いて、HTMLデータからJavascriptを介してそこにバインディングされているJavaのメソッドを呼び出すコードについて説明する。
図4は、アプリケーション300がJavascriptコア305によりバインディングするネィティブライブラリ307のJavaコードの一例を示す図である。なお、Javaコードの左側に記載された番号はコードの行番号を示す。
第1~11行に示すブロックは、アプリケーション300においてJavascriptから利用できるオブジェクトクラスの定義である。この例では、WebAppクラスのgetImageメソッド(第2~5行)及びコールバック関数用のcb_getImageメソッド(第7~10行)が定義されている(詳細は後述する)。
図4の13行目では、WebViewクラスに対してaddJavascriptInterfaceメソッドを呼び出しており、それによってJavascriptとJavaが相互に通信できるJavascriptオブジェクトが生成される。図4のコードの実行により、Javascriptは、JavaのWebApp.getImageメソッドを実行するために、nativeAppオブジェクトが対応するメソッドを呼び出せばよい。
図5は、Webコンテンツ301に含まれるHTML及びJavascriptコードの一例を示す図である。なお、コードの左側に記載された番号はコードの行番号を示す。
図5の第1行目はJavascriptを呼び出すボタンを作成するためのコードであり、図5の例ではHTMLで記述されている。具体的には、Web画面に「プレビュー」ボタンが表示され、そのボタンが押下されると「btn_id_getImage」で定義されている第5~11行に示すブロックが実行される。
第8行は、「btn_id_getImage」として定義された「プレビュー」ボタンが押下された時に実行されるJavascriptから呼び出すJavaのメソッドの定義である。ここでは、図4でJavascriptから読み出し可能なJavaのクラスとして定義したWebAppクラスのgetImageメソッドに対してコールバック関数名、ファイルパス(プレビュー画像を生成するための元画像のファイルパス)を引数にセットして呼び出している。コールバック関数名とは、メソッド(図4の第2~5行に示すブロックにおける「getImage」等)の処理が終了すると、その結果を通知するために呼び出されるメソッドのことである。なお、図5ではJavaのクラスの呼び出しを、図4中のwebView.addJavascriptInterfaceメソッドで設定された名称nativeAppを用いてnativeApp.getImageで行っている。このようにして、Javascript実行時、Javascriptコア305は、図4にてバインディングしたJavaクラスのメソッドを呼び出して実行することができる。なお上述のように、コールバック関数名’cb_getImage’を引数としてgetImageメソッドを呼び出すことで、getImageメソッドが終了するとその結果を通知するためのcb_getImageメソッドが呼び出されるようになる。
次に図6、図7を用いて、JavascriptにバインディングされたJavaクラスから、Javascriptを介してHTMLに処理結果を反映させるコードについて説明する。
図6は、JavascriptにバインディングするJavaクラスの一例を示す図であり、cb_getImageメソッドが呼び出されることで実行される。
図6の第1行目ではJavaのメソッドからJavascript内のメソッドを呼び出すために、WebViewクラスに対してevaluateJavascriptメソッドを呼び出している。第1行目のcb_getImageメソッドは、図4のWebAppクラス内に定義した図5で述べたコールバック関数である。つまり、JavaのgetImageメソッドの処理が完了するとJavascriptの「cb_getImage」が呼び出される。この際、文字列表現に変換されたプレビュー画像データが渡される。
図7は、ネィティブライブラリ307のJavaから呼び出されるJavascript及びHTMLの一例であり、図5と同様にWebコンテンツ301に含まれる。
図6のWebViewクラスのevaluateJavascriptメソッドによりcb_getImageが実行されると、図7の第7行のJavascript処理が呼びだされる。そして、引数として渡されたjsonの中にプレビュー画像データが文字列表現で格納されている。本実施例では、このプレビュー画像データはjson.imgdata64で呼び出し可能である。さらに、第10行では、このプレビュー画像をWebView302上のローカルストレージ(window.localStorage)303に保存している。このプレビュー画像を表示するためには、HTMLのimgタグのsrcに画像データをセットする必要があり、第11行のJavascript内でimgタグのsrcに画像データ(json.imgdata64)をセットしている。これによりWebView302のHTML箇所(図7の第2行で定義されている箇所)にプレビュー画像が表示される。
<画面遷移の例>
図8は、情報処理装置101における操作画面の遷移の一例を示す図である。
操作画面801は、WebView302によって表示される操作画面である。「ファイル選択」ボタン802はWebコンテンツ301内の不図示のHTMLコードに基づき表示される。ここで「ファイル選択」ボタンが押下されるとJavascriptにバンディングされたJavaのメソッドが実行されファイル選択画面805に遷移する。
ファイル選択画面805では、任意のファイルを選択する事が可能である。例えば、情報処理装置101のローカルフォルダで管理されたファイルや、外部のウェブサーバ(不図示)で管理されたファイルであってもよい。今回は、ファイル選択画面805でファイル選択が完了すると操作画面801に戻る。
「プレビュー」ボタン803は、図5のHTMLコードに基づき表示される。「プレビュー」ボタン803が押下されると、図4、図5にてJavascriptにバンディングされたgetImageにファイル選択画面805で選択したファイル情報が通知され、プレビュー画像データが生成される。プレビュー画像データが生成されるとcb_getImageによりJavascriptに通知され、HTMLのimgタグに画像情報がセットされると、操作画面801の領域806にプレビュー画像が表示される。操作画面805で選択されたファイルは複数ページで構成されていたとしても領域806に表示されるプレビュー画像は、そのうちの1ページ分のプレビュー画像であるものとする。
<ファイル選択からプレビュー画像が表示、ジョブアップロードまでの処理の流れ>
図9は、ファイル選択からプレビュー画像の表示、印刷ジョブアップロードまでの処理の流れを説明するシーケンス図である。すなわち、アプリケーション300が表示状態になったことをWebView302が検知し、アプリケーション300にJavascriptコア305経由でバインドされているネィティブライブラリ307を使いプレビュー画像を表示する。さらに表示した画像データを印刷ジョブとしてアップロードするまでのシーケンスに対応する。
ステップ901にて、ウィンドウ制御モジュール309は、アプリケーション300の切り替えを検知する。情報処理装置101は、表示制御部205の画面表示と入力制御部206のユーザ操作による入力情報から、アプリケーションの切り替えを行う。具体的には、実行中のアプリケーションが複数の場合には、ユーザ操作により選択されたアプリケーションをアクティブとして画面表示させ、それ以外のアプリケーションの画面は表示しない。ウィンドウ制御モジュール309は、アプリケーションの表示状態を示す情報を監視し、その情報にアクセスして表示状態を取得することができる。そして表示状態の移行があればそれを検知する。
ウィンドウ制御モジュール309は、情報処理装置101上に表示されているアプリケーションがアプリケーション300に切り替わったことを検知すると、ステップ902にて、それをWebView302に対して通知する。
ステップ903では、WebView302は、アプリケーション300のWebコンテンツ301を表示する。ここでは、WebView302は、Webコンテンツ301(HTML及びJavascriptを含む)の情報をWebエンジン304に通知して、WebView302にWebコンテンツの表示を行う。
ステップ904では、WebView302は、WebView302に表示されたWebコンテンツでの操作を検知する。WebView302は、図8の802に示した“ファイル選択”ボタン802が押下されたことを検知すると、ステップ905で“ファイル選択”ボタン押下の情報をWebエンジン304に通知する。
ステップ906では、Webエンジン304のJavascriptコア305は、上記ステップ905のボタン押下通知を受けて、それに対応したJavascriptを実行し、ネィティブライブラリ307にバィンディングされている機能を呼び出す。これにより、ネィティブライブラリ307のファイル選択機能が呼び出される。
上記ステップ906の呼び出しに応じて、ステップ907では、ネィティブライブラリ307が、ファイル選択処理を実行する。本実施形態では、ファイル選択処理は、OSの提供している公知の技術(Storage Access Framework:図8の805に図示)を利用しているためここでは詳述しない。
ユーザが情報処理装置101から閲覧可能なフォルダからファイルを選択する。すると、ステップ908にて、処理結果として選択されたファイルの識別子(例えばファイルパス)が、ネィティブライブラリ307からバィンディングされているJavascripitに通知される。
この通知に応じて、ステップ909で、Javascriptコア305から、処理が完了したことがWebView302に通知される。
ステップ910では、WebView302は、ステップ904と同様に、WebView302に表示されたWebコンテンツでの操作を検知する。ここで、図8に図示した“プレビュー”ボタン803が押下されたことを検知すると、ステップ911にて、WebView302は、“プレビュー”ボタン押下の情報をWebエンジン304に通知する。
ステップ912では、Webエンジン304のJavascriptコア305は、上記ステップ911のボタン押下通知を受けて、それに対応したJavascriptを実行し、ネィティブライブラリ307にバィディングされている機能を呼び出す。これにより、ネィティブライブラリ307のプレビュー画像生成機能(図4のgetImageメソッドにより提供される機能)が呼び出される。
上記ステップ912の呼び出しに応じて、ステップ913では、ネィティブライブラリ307が、プレビュー画像生成処理を実行する。なお、本処理の詳細については後述する図10~図12に示す。
プレビュー画像生成処理の後、ステップ914にて、ネィティブライブラリ307が、プレビュー画像生成処理で生成されたプレビュー画像データを処理結果としてバィンディングされているJavascriptに通知する。この通知は、上述したcb_getImageメソッドにより実現される。
ステップ915では、Javascriptコア305は、Javascriptが受けたプレビューデータをWebView302のストレージ(ローカルストレージ)303に保存する。
ステップ916では、WebView302は、ローカルストレージ303に保存されたプレビュー画像データを、Webコンテンツ内のプレビュー表示エリアのImageタグのsrcにセットし、WebView302に表示させる。
ステップ917では、WebView302は、上記ステップ910と同様にWebView302に表示されたWebコンテンツでの操作を検知する。ここで、図8に図示した印刷ボタンが押下されたことを検知すると、ステップ918で、WebView302は、表示するWebコンテンツを、後述する図13に示す印刷設定画面表示に切り替える。
ステップ919では、WebView302は、上記ステップ917と同様にWebコンテンツでの操作を検知する。ここで図13に示す”Upload”(印刷データ登録)ボタン1301が押下されたことを検知すると、WebView302は、ステップ920に処理を進める。
ステップ920にて、WebView302は、”Upload”(印刷データ登録)ボタン押下の情報をWebエンジン304に通知する。その際、WebView302は、印刷設定として各設定項目と設定項目で設定された属性データを紐づけした印刷設定データを上記ステップ909で受け取ったファイル識別子(例えばファイルパス)と共にWebエンジン304に通知する。
ステップ921では、Webエンジン304のJavascriptコア305は、上記ステップ920のボタン押下通知を受けて、それに対応したJavascriptを実行し、ネィティブライブラリ307にバディングされている機能を呼び出す。これにより、ネィティブライブラリ307のジョブ生成機能が呼び出される。
上記ステップ921の呼び出しに応じて、ステップ922では、ネィティブライブラリ307がジョブ生成処理を実行する。
上記ステップ922のジョブ生成処理が終了すると、ステップ923にて、ネィティブライブラリ307は、ジョブ送信処理を行う。ここでは上記ステップ922で生成したジョブデータをネィティブライブラリ307のデータ送信機能を使ってMFP104に送信する。なお、MFP104の送信先(例えばIPアドレス)は予めシステムに登録されていてもUI画面で切り替えられるようにしていてもよい。送信先は印刷サーバでもよいが、ここではMFP104として説明する。なお、ステップ922、923の処理の詳細については図14で後述する。
ステップ924では、MFP104は、ネィティブライブラリ307から受信したジョブの登録処理を行う。
ステップ925では、MFP104は、ジョブの登録処理の処理結果を完了通知として、ネィティブライブラリ307に通知する。
上記ステップ925の通知に応じて、ステップ926では、ネィティブライブラリ307は、完了通知を、バィンディングされているJavascripitを経由してWebView302に通知する。
以上、ステップ917~926のステップにより印刷ジョブがMFP104に登録される。
<プレビュー画像生成処理の詳細>
図10は、図9のステップ913のネィティブライブラリ307で行われるプレビュー画像生成処理の詳細を示すフローチャートであり、ステップ912で通知された画像ファイルのファイルパスよりプレビュー画像を生成する。図10及び後述する図11、図12に示す処理は、ネィティブライブラリ307のプレビュー画像生成機能により実行されるものであり、以下「ネィティブライブラリ307」を主体として説明する。
ステップ1001では、ネィティブライブラリ307は、図9のステップ912で通知された画像ファイルのファイルパスからファイルの存在チェックを行う。ファイルが存在しない場合(ステップ1001でNoの場合)、ネィティブライブラリ307は、ステップ1006に処理を進め、処理結果をエラーとし(ステップ1006)、本フローチャートの処理を終了する。
一方、ファイルが存在すると判定された場合(ステップ1001でYesの場合)、ネィティブライブラリ307は、ステップ1002に処理を進める。
ステップ1002では、ネィティブライブラリ307は、出力領域サイズを設定する。本実施形態では、出力領域サイズはWebView302に表示するプレビュー画像の表示領域のサイズとなり、この領域に収まるようにプレビュー画像を生成する。
ステップ1003では、ネィティブライブラリ307は、上記ステップ1001で存在確認されたファイルタイプの判定を行う。ファイルタイプとは、PDF、JPEG、PNGなどといったファイルの種類を示すもので、ファイルタイプによりプレビュー画像の生成方法が切り替えられるよう判定を行っている。なお、詳細は図11で後述する。
次にステップ1004では、ネィティブライブラリ307は、ファイルタイプの判定が終わった画像データからプレビュー画像を生成する。なお、詳細は図12で後述する。
ステップ1005では、上記ステップ1004で生成された画像データを、図9のステップ914で画像データとして通知できるようにBase64に変換する。Base64に変換するのは、WebView302では画像データを文字列形式のデータとして扱わないと処理できないケースがあるためである。
上記ステップ1005の処理の後、ネィティブライブラリ307は、本フローチャートの処理を終了する。
図11は、図10のステップ1003のファイルタイプの判定処理の詳細を示すフローチャートである。
ステップ1101では、ネィティブライブラリ307は、ファイルに“XXX.jpg”などといった拡張子があるか判定する。ファイルに拡張子が無い場合(ステップ1101でYesの場合)、ネィティブライブラリ307は、ステップ1102に処理を進める。
一方、ファイルに拡張子がある場合(ステップ1101でNoの場合)、ネィティブライブラリ307は、ステップ1104に処理を進める。
ステップ1102では、ネィティブライブラリ307は、ファイルタイプを判断するためにファイルの先頭から数十バイト程度の情報(ヘッダ情報)を読み込み込む。ここでは、例えば読み込んだヘッダ情報のエリアに%PDFなどのファイルタイプ識別情報があれば当該ファイルはPDFと判定するような処理となる。
次にステップ1103では、ネィティブライブラリ307は、上記ステップで判定したファイルの種類に対応した拡張子をファイル名に付加し、ステップ1104に処理を進める。
次にステップ1104では、ネィティブライブラリ307は、ファイルの拡張子からファイルタイプを判定する。ここでは、予め拡張子とファイルタイプとを紐づけたファイルタイプ判定データから拡張子をキーに逆引きすることでファイルタイプを判定する。
例えば、表1のようなファイルタイプ判定データがあった場合、拡張子がjpgであればファイルタイプは、image/jpgとなる。
Figure 2022025975000002
ステップ1004では、ネィティブライブラリ307は、ファイルタイプの判定が終わった画像データからプレビュー画像を生成し、本フローチャートの処理を終了する。
図12は、図10のステップ1004の画像生成処理の詳細を示すフローチャートである。
ステップ1201では、ネィティブライブラリ307は、図10のステップ1003(図11)のファイルタイプの判定処理で判定されたファイルタイプが“image”であるか確認する。ここでは、判定されたファイルタイプ名に“image”が含まれているか判定する。ファイルタイプ名に“image”が含まれている場合(ステップ1201でYesの場合)、ネィティブライブラリ307は、ステップ1203に処理を進め、イメージ画像データ(単ページ)として処理を行う。
ステップ1203では、ネィティブライブラリ307は、イメージ画像データの画像属性(画像サイズ、Exifなどの画像情報)を読み込み、ステップ1206に処理を進める。なお、Exifは、Exchangeable image file formatを示す。
一方、判定されたファイルタイプ名に“image”が含まれていない場合(ステップ1201でNoの場合)、ネィティブライブラリ307は、ステップ1202に処理を進める。
ステップ1202では、ネィティブライブラリ307は、図10のステップ1003で判定されたファイルタイプに“pdf”が含まれているか判定する。ファイルタイプ名に“pdf”が含まれている場合(ステップ1203でYesの場合)、ネィティブライブラリ307は、ステップ1204に処理を進める。
ステップ1204では、ネィティブライブラリ307は、PDFデータとしてPDFファイルの先頭ページの画像データと画像属性(画像サイズ)を読み込み、ステップ1206に処理を進める。PDFファイルは複数ページで構成可能なファイル形式であるため、ここではPDFファイルの先頭ページの画像データのみを読み込むものとしているが、全ページを読み込んでもよい。
一方、判定されたファイルタイプ名に“pdf”が含まれていない場合(ステップ1202でNoの場合)、ネィティブライブラリ307は、ファイルの形式がイメージやPDF等の所定の形式でないと判断し、ステップ1205に処理を進める。
ステップ1205では、ネィティブライブラリ307は、ファイルタイプが非サポートであると判断し、予め処理内に定義されているプレビュー非サポート用の画像ファイル(規定のアイコン等)の画像データと画像属性(画像サイズ)を読み込む。そして、ステップ1206に処理を進める。
なお、本実施形態では、プレビュー画像生成に対応したファイルタイプを説明の便宜上imageとPDFとしている。しかし、他のファイルタイプに対しても同様に判定処理、及び画像データ及び画像属性の読み込み処理の追加により対応できるファイルタイプを拡張してもよい。
ステップ1206では、ネィティブライブラリ307は、上記ステップ1203、1204又は1205で読み込まれた画像属性から画像サイズを取得する。
次にステップ1207では、ネィティブライブラリ307は、図10のステップ1002で設定した出力領域サイズと上記ステップ1206で読み込んだ画像サイズとを比較する。画像サイズが出力領域サイズより大きい場合(ステップ1207でYesの場合)、ネィティブライブラリ307は、ステップ1208に処理を進める。
ステップ1208では、ネィティブライブラリ307は、画像のスケーリング率を算出する。本ステップでは、出力領域サイズにプレビュー画像が収まるように画像のスケーリング率(縮小率)を算出する。具体的に例を上げて説明する。出力領域サイズの幅と高さが200×200ピクセル、画像サイズが幅と高さが800×400ピクセルであったとする。この場合、画像サイズの幅が高さより大きいため、幅が出力領域サイズに収まるように200/800=0.25がスケーリング率となる。つまり生成されるプレビュー画像のサイズは、幅が200、高さは100(400ピクセルにスケーリング率0.25を掛けた値)として画像の縦横比(アスペクト比)を保持した形でスケーリング率を算出する。
ステップ1208の処理の後、ネィティブライブラリ307は、ステップ1210に処理を進める。
一方、画像サイズが出力領域サイズより大きくない場合(ステップ1207でNoの場合)、ネィティブライブラリ307は、ステップ1209に処理を進める。
ステップ1209では、ネィティブライブラリ307は、画像のスケーリング率を1(等倍)として、ステップ1210に処理を進める。
ステップ1210では、ネィティブライブラリ307は、画像の回転方向をスケーリング率に加える。ステップ1210では、ネィティブライブラリ307は、上記ステップ1203、1204又は1205で読み込まれた画像属性に画像の向きに関する情報(例:Exif情報)があるか判定する。画像の向きに関するデータがある場合(ステップ1210でYesの場合)、ネィティブライブラリ307は、ステップ1211に処理を進める。
ステップ1211では、ネィティブライブラリ307は、画像の向きに関する情報から画像の回転方向を求める。例えば、一般にスマートフォンなどのカメラ機能で撮影された画像は横向き(Landscape)に保存されている。したがって、この状態でプレビュー画像を生成すると横向きになってしまうため画像の回転が必要となる。ここでは上記ステップ1208で求めたスケーリング率と画像の回転方向を掛け合わせたアフィン係数を求める。すなわち、画像の回転方向をスケーリング率に組み込む。なお、アフィン係数(変換)に関しては公知の技術であるためここでは詳述しない。
ステップ1211の処理の後、ネィティブライブラリ307は、ステップ1212に処理を進める。
一方、画像の向きに関するデータがない場合(ステップ1210でNoの場合)、ネィティブライブラリ307は、ステップ1212に処理を進める。
ステップ1212では、ネィティブライブラリ307は、画像データに対して上述のように求めたスケーリング率に合わせて画像データを読み込み、ファイルに保存し、本フローチャートの処理を終了する。
以上、図10~図12に示した処理が終了すると、処理結果と、Base64化した画像データが、ネィティブライブラリ307から、図9のステップ914、915を経由してWebView302に通知されプレビュー画像が表示される。
<印刷設定のUI例>
図13は、印刷設定のUIの一例を示す図である。ここでは、印刷設定の各項目に対して設定可能な選択肢を表示し、設定させる方法を例に上げて説明する。
図13の設定項目CopiesCount(部数)に対し、1、2、3、といった設定可能な選択肢を表示し、それをユーザが選択して設定する。同様に、設定項目Color、Duplex、OutputSize、Collateに対し、設定可能な選択肢を表示し、それをユーザが選択して設定する。このようにユーザは、各設定項目に対して選択肢を選択することで印刷設定が行なえ、また選択しなかった設定項目に対してはUI上に表示されているデフォルトの設定が選択肢として設定されたと扱われる。このように設定された印刷設定は、例えば、部数:1、Color:Automatic、・・・のように設定項目と選択された選択肢がペアとなるよう印刷設定データとして保存される。
<ジョブの生成から送信処理>
図14は、図9のステップ922、923のネィティブライブラリ307で行われるジョブ送信処理の詳細を示すフローチャートである。図14に示す処理は、ネィティブライブラリ307のデータ送信機能により実行されるものであり、以下「ネィティブライブラリ307」を主体として説明する。
ステップ1401では、ネィティブライブラリ307は、図9のステップ921のジョブ生成処理呼び出し通知を監視する(データ受信待機処理)。上記通知があると、ネィティブライブラリ307は、ステップ1402に処理を進める。
ステップ1402では、ネィティブライブラリ307は、上記通知で受信した印刷設定データをプリンタが解釈可能なジョブチケットに変換する。ここでは、具体例としてJDF(Job Definition Format)への変換を行っている。しかし、プリンタが解釈可能なジョブチケットへの変換であればJDFに限定されるものではない。JDFについては、近年印刷装置への対応が進み、実質的に印刷業界の標準フォーマットーマットであり、印刷工程全般における作業情報を記述可能である。
図15は、JDFで記載されたジョブチケットの一例を示す図である。
例えば、本実施形態では、上記ステップ1402にて、予め用意されてたJDFで記載されたジョブチケットのテンプレートに対して穴埋め形式で、受信した印刷設定を埋め込んでいくものとする。具体的には、印刷部数が“1”であればJDFの部数にあたる項目として図14のAmount部分にAmount=”1”を設定する。他の設定についても、片面印刷であればSides=”OneSided”、両面印刷であればSides=”TwoSided”のように設定しジョブチケットを生成していく。
次にステップ1403では、ネィティブライブラリ307は、印刷画像データの存在チェックを行う。詳細には、ネィティブライブラリ307は、図9のステップ920,921で渡されたファイル識別子(ファイルパス)を確認し、印刷画像データが存在するか確認を行う。印刷画像データが存在しない場合(ステップ1403でNoの場合)、ネィティブライブラリ307は、本フローチャートの処理を終了する。
一方、印刷画像データが存在する場合(ステップ1403でYesの場合)、ネィティブライブラリ307は、ステップ1404に処理を進める。
ステップ1404では、ネィティブライブラリ307は、上記ステップ1404で確認した印刷画像データを読み込む。
次にステップ1405にて、ネィティブライブラリ307は、印刷設定データと印刷画像データを1つのファイルにパッキングして印刷ジョブを作成する。具体的には、ネィティブライブラリ307は、印刷ジョブの生成として印刷設定データ(JDF)と印刷データ(Base64に変換)をMIME形式で1ファイルにパッキングした印刷ジョブを生成する。なお、MIME形式の印刷ジョブの作成は、JDF仕様にも記述があり公知の技術であるためここでは詳述しない。
次にステップ1406(図9のステップ923に相当)にて、ネィティブライブラリ307は、上記ステップ1405で生成した印刷ジョブをhttpなどのプロトコルを使用してMFP104に送信する。印刷ジョブの送信が完了すると、その応答(レスポンス)がMFP104より通知される。
ステップ1407にて、ネィティブライブラリ307は、レスポンス受信処理を行い、処理結果を受け取り、本フローチャートの処理を終了する。
なお、ネィティブライブラリ307は、上記ステップ1407の処理結果、もしくはステップ1403で印刷画像データが存在せずにエラーとなった場合の結果を、完了通知として通知する(図9のステップ925)。
以上示したように、本実施形態では、WebView302に表示するファイルのプレビュー画像の表示処理を行う場合、Javascriptからネィティブライブラリ307に実装したプレビュー画像生成処理を呼び出す。ネィティブライブラリ307のプレビュー画像生成処理では、プレビュー画像データを生成し、Base64に変換する。プレビュー画像生成処理が終わると、ネィティブライブラリ307は、プレビュー画像データを、バィンディングされているJavascriptに通知する。Javascriptが受けたプレビューデータをWebView302のローカルストレージ303に保存する。そして、ローカルストレージ303に保存されたプレビュー画像データを、Webコンテンツ内のプレビュー表示エリアのImageタグのsrcにセットし、WebView302に表示させるように構成する。すなわちWebView302に表示するファイルのプレビュー画像の表示処理に対してJavascriptからネィティブライブラリに実装したプレビュー画像処理を呼び出し、サーバ102に画像データを送受信すること無く処理する。このような構成により、情報処理装置は、サーバと画像データの送受信を行うことなくプレビュー画像を表示処理できるようになり、ネットワーク環境のトラフィックに影響されず遅延なく処理可能となる。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施形態を組み合わせた構成も全て本発明に含まれるものである。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施形態及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
100 ネットワーク
101 情報処理装置
102 サーバ
103 インターネット
104 MFP

Claims (8)

  1. 実行中のアプリケーションに対して、ネットワークを介してサーバから取得したウェブコンテンツに基づき操作画面を表示する機能を提供するウェブ表示手段を有する情報処理装置であって、
    前記操作画面に対するユーザ操作に応じて前記ウェブコンテンツに含まれるスクリプトに基づき前記ウェブ表示手段から呼び出されることで、前記情報処理装置の記憶部に保存されたファイルに基づく画像データを生成する前記情報処理装置のネィティブ機能として実装される生成手段と、
    前記生成手段により生成された画像データを前記ウェブ表示手段に渡す前記情報処理装置のネィティブ機能として実装される通知手段と、を有し、
    前記ウェブ表示手段が、前記ウェブコンテンツに含まれるスクリプトに基づき前記通知手段から渡された前記画像データに基づく画像を前記操作画面に表示することを特徴とする情報処理装置。
  2. 前記生成手段は、前記生成した画像データを文字列形式のデータに変換することを特徴とする請求項1に記載の情報処理装置。
  3. 前記画像データは、前記ファイルのプレビュー画像であることを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記生成手段は、前記ファイルの形式が所定の形式でない場合、前記ファイルに基づく画像データを生成せず、前記ファイルの形式がサポートされていない形式であることを示す画像データを提供する、ことを特徴とする請求項1~3のいずれか1項に記載の情報処理装置。
  5. 前記生成手段は、前記ファイルの形式が複数ページで構成可能な形式である場合、前記ファイルに基づく画像データとして、先頭ページに基づく画像データを生成する、ことを特徴とする請求項1~4のいずれか1項に記載の情報処理装置。
  6. 前記複数ページで構成可能な形式とは、PDFであることを特徴とする請求項5の情報処理装置。
  7. 実行中のアプリケーションに対して、ネットワークを介してサーバから取得したウェブコンテンツに基づき操作画面を表示する機能を提供するウェブ表示手段を有する情報処理装置の制御方法であって、
    前記操作画面に対するユーザ操作に応じて前記ウェブ表示手段が前記ウェブコンテンツに含まれるスクリプトを実行することで前記情報処理装置のネィティブ機能を呼び出すステップと、
    前記情報処理装置のネィティブ機能により、前記情報処理装置の記憶部に保存されたファイルに基づく画像データを生成する生成ステップと、
    前記情報処理装置のネィティブ機能により、前記生成された画像データを前記ウェブ表示手段に渡す通知ステップと、
    前記ウェブ表示手段が前記ウェブコンテンツに含まれるスクリプトに基づき前記通知ステップにて渡された前記画像データに基づく画像を前記操作画面に表示する表示ステップと、
    を有することを特徴とする情報処理装置の制御方法。
  8. コンピュータを、請求項1~6のいずれか1項に記載の生成手段及び通知手段として機能させるためのプログラム。
JP2020129210A 2020-07-30 2020-07-30 情報処理装置、情報処理装置の制御方法、及びプログラム。 Pending JP2022025975A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020129210A JP2022025975A (ja) 2020-07-30 2020-07-30 情報処理装置、情報処理装置の制御方法、及びプログラム。
US17/387,460 US11622049B2 (en) 2020-07-30 2021-07-28 Calling a native library by using a script contained in web contents

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020129210A JP2022025975A (ja) 2020-07-30 2020-07-30 情報処理装置、情報処理装置の制御方法、及びプログラム。

Publications (2)

Publication Number Publication Date
JP2022025975A true JP2022025975A (ja) 2022-02-10
JP2022025975A5 JP2022025975A5 (ja) 2023-08-03

Family

ID=80003653

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020129210A Pending JP2022025975A (ja) 2020-07-30 2020-07-30 情報処理装置、情報処理装置の制御方法、及びプログラム。

Country Status (2)

Country Link
US (1) US11622049B2 (ja)
JP (1) JP2022025975A (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8073256B2 (en) * 2007-11-15 2011-12-06 Canon Kabushiki Kaisha Image processing apparatus and method therefor
US9930144B2 (en) 2015-01-30 2018-03-27 Panasonic Intellectual Property Management Co., Ltd. Information processing method
JP2017097662A (ja) * 2015-11-25 2017-06-01 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム

Also Published As

Publication number Publication date
US11622049B2 (en) 2023-04-04
US20220038585A1 (en) 2022-02-03

Similar Documents

Publication Publication Date Title
US7957021B2 (en) Image handling apparatus, image processing system, image process controlling method, and image process controlling program product
US10318213B2 (en) Information processing apparatus, information processing method, and storage medium storing program
US9134932B2 (en) User selection of a file format prior to a print preview
US8913274B2 (en) Image processing system, processing method, image processing apparatus, and relay apparatus for electronic file storage and transfer
US10620892B2 (en) Information processing apparatus that displays a print setting screen based on information of a printing apparatus in a format interpretable in a first program layer and processing method thereof
US9135360B2 (en) Information transmission apparatus, control method thereof, and recording medium storing computer program
US10209939B2 (en) Information processing apparatus, control method of information processing apparatus, and storage medium
US10075620B2 (en) Information processing apparatus, control method for information processing apparatus, and non-transitory computer-readable storage medium
US20150379382A1 (en) Information processing apparatus, information processing method, and storage medium storing program
US8830492B2 (en) Data processing apparatus for sending a single job based on common document information
JP5743671B2 (ja) 情報処理装置およびその制御方法
JP2011257945A (ja) 情報送信装置、情報送信装置の制御方法及びコンピュータプログラム
US9591174B2 (en) Image reading apparatus having communication interface for transmitting scanned data to server
US20120268778A1 (en) Print relay system, printing system, image forming apparatus, method for controlling print relay system, and program
US9110962B2 (en) Data providing apparatus for implementing script, electronic apparatus for implementing script, data processing system for implementing script, and method of data processing for implementing script
US9575702B2 (en) Information processing apparatus, information processing method, and storage medium storing program having a layered structure
US9311040B2 (en) System, control method for same, and image processing apparatus
JP2022025975A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム。
JP7318386B2 (ja) 情報処理装置及びプログラム
JP2018101915A (ja) アプリケーションを搭載可能な画像形成装置およびその制御方法
US11526317B1 (en) Methods and system for enabling previews for an embedded digital front end of a printing device
US20240086485A1 (en) Web browsing system, server, and control method thereof
JP6757368B2 (ja) 情報処理装置、処理方法、及びプログラム
JP2003076518A (ja) 印刷システムおよび印刷サービスサーバ
JP2021007006A (ja) 情報処理装置、制御方法、プログラムおよびシステム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230726

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230726

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240313

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240603

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240611