JP6381319B2 - 情報処理装置、処理方法、及びプログラム - Google Patents
情報処理装置、処理方法、及びプログラム Download PDFInfo
- Publication number
- JP6381319B2 JP6381319B2 JP2014135178A JP2014135178A JP6381319B2 JP 6381319 B2 JP6381319 B2 JP 6381319B2 JP 2014135178 A JP2014135178 A JP 2014135178A JP 2014135178 A JP2014135178 A JP 2014135178A JP 6381319 B2 JP6381319 B2 JP 6381319B2
- Authority
- JP
- Japan
- Prior art keywords
- content
- printer
- description language
- program
- image
- 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.)
- Active
Links
- 230000010365 information processing Effects 0.000 title claims description 48
- 238000003672 processing method Methods 0.000 title claims description 5
- 230000006870 function Effects 0.000 claims description 97
- 238000012545 processing Methods 0.000 claims description 85
- 238000009877 rendering Methods 0.000 claims description 51
- 238000006243 chemical reaction Methods 0.000 claims description 35
- 238000013519 translation Methods 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000000034 method Methods 0.000 description 62
- 230000008569 process Effects 0.000 description 35
- 238000004891 communication Methods 0.000 description 30
- 238000012937 correction Methods 0.000 description 17
- 238000011161 development Methods 0.000 description 14
- 241000238370 Sepia Species 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 238000003384 imaging method Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 241000593989 Scardinius erythrophthalmus Species 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 238000011109 contamination Methods 0.000 description 2
- 201000005111 ocular hyperemia Diseases 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 101150046362 BTN1 gene Proteins 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000003702 image correction Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000000859 sublimation Methods 0.000 description 1
- 230000008022 sublimation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1292—Mobile client, e.g. wireless printing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1208—Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1244—Job translation or job parsing, e.g. page banding
- G06F3/1247—Job translation or job parsing, e.g. page banding by conversion to printer ready format
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- Stored Programmes (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Computational Linguistics (AREA)
Description
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg width="12cm" height="12cm" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<image id="img01" xlink:href="IMG_0001.JPG" x="48" y="33" width="215" height="148"/>
<image id="img02" xlink:href="IMG_0002.JPG" x="272" y="33" width="216" height="148"/>
</svg>
上記の例は、所定の領域(12cm四方)に二つの画像を、所定の位置(x,y)に所定の大きさ(width,height)で描画する例である。なお、上記の例では、SVGスクリプトをHTML5に組み込む部分の記述は省略している。
図1は本発明の代表的な実施形態である情報処理装置115として、例えば、スマートフォンや携帯電話等の携帯型情報端末の構成例を説明するブロック図である。同図において、100はCPU(中央演算装置/プロセッサ)であり、以下で説明する各種処理をプログラムに従って実行する。図中のCPU100は1つであるが、複数のCPUあるいはCPUコアによって構成されていても良い。101はROMであり、CPU100により実行されるプログラムが記憶されている。102はRAMであり、CPU100によるプログラムの実行時に、各種情報を一時的に記憶するためのメモリである。
図2は情報処理装置115で動作するソフトウェア構成のブロック図である。
図3はユーザ操作を含む処理を示すフローチャートである。まず、図3を用いて、S21からS25の各処理の概要を説明し、詳細は後述する。なお、本願のフローチャートの各ステップの処理は、情報処理装置115のCPU100が、ROM101あるいは2次記憶装置103に記憶されているプログラムを実行することにより実現される。また、図3に示す各ステップは、UIの1つである図9に示すアプリケーション画面907に対するユーザ操作に従って遷移する。アプリケーション画面907は、スクリプト層217によって生成される。アプリケーション画面907の操作は、例えば、タッチセンサ105を介して実現される。
最初に、ユーザ操作によって、図3に示す処理を実現するアプリケーションが起動される際には、アプリケーションは、まず、接続可能な外部デバイス(プリンタ112)のディスカバリ処理(不図示)を行う。ディスカバリ処理とは、情報処理装置115が存在するネットワーク113内において、接続可能なプリンタ112のIPアドレスを特定する処理のことである。
<cmd xmlns:trans="http://www.trans/example/">
<contents>
<operation>GetInformation</operation>
</contents>
</cmd>
生成されたコマンドは、プリンタの通信プロトコルに従った形式で、ネットワーク上のネットワーク機器(例えば、Wi−Fi(登録商標)接続されたルータ)に対しブロードキャストされる。ここで、通信方法は、Wi−Fiダイレクトや電話回線を利用する形態が考えられるが、これに限定されるものではない。コマンドの送信の結果、ネイティブ層218は、プリンタからの応答を受信する。受信する応答の例としては、下記のようなXMLで表現される。
<cmd xmlns:trans="http://www.trans/example/">
<contents>
<PrinterName>PrinterA</PrinterName>
<ImageProcGrp>A</ImageProcGrp>
<ResolutionX>400</ResolutionX>
<ResolutionY>400</ResolutionY>
</contents>
</cmd>
上記は、簡単な例であるが、PrinterNameタグによって、それぞれのプリンタ名称を取得することができる。また、ImageProcGrpタグによって、それぞれのプリンタが利用可能な画像処理グループを取得することもできる。この画像処理グループにより、図12の1201に表示される選択肢が決まる。また、ResolutionXおよびResolutionYは、このプリンタのエンジンが必要とする画像の解像度であり、例えば単位はdpiである。
<select name=”selPrinter”>
</select>
</form>
<script type=”text/javascript”>
Function fAddPrinter(PrinterName, count){
var sObj=document.forms[“frmPrinter”].elements[“selPrinter”];
for (var i=0;i<count;i++){
var idx=sObj.length;
sObj.options[idx]=new Option(PrinterName[i]);
}
}
</script>
上記において、selectタグは、リストを表示するための記述であり、scriptタグ内に記載したJavaScriptコードによって、リストに取得したプリンタの名称(PrinterNameに配列として格納)を追加することができる。
次に以上のような構成の情報処理装置において実行する写真画像選択とそれに伴う画像処理について説明する。従って、これらの場合、情報処理装置115は画像処理装置として機能することになる。
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg width="1600" height="1200" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<image id="img01" xlink:href="/images/IMG_0001.JPG" x="10" y="10" width="780" height="1180"/>
<image id="img02" xlink:href="/images/IMG_0002.JPG" x="810" y="10" width="780" height=”1180"/>
</svg>
なお、上記スクリプトにおいて、数値の単位は画素である。また、「/images/IMG_000x.jpg」が選択した画像のパス情報を示している。
ユーザが図9に示したスライドバー902を変化させることでS22が開始する。ここでは、図3のS22の画像処理の詳細について、図5を用いて説明する。なお、S401〜S403、S409、S411は、CPUがスクリプト層のプログラムを用いて実行する処理であり、S404〜S408はCPUがネイティブ層のプログラムを用いて実行する処理である。
Else ImageProcGrp = “B”
なお、上記判定は、通常、アプリケーションが起動した際に、スクリプト層217において行われる。
<select name=”selIProc”>
</select>
</form>
<script type=”text/javascript”>
Function fAddImageProc(Grp){
var sObj=document.forms[“frmIProc”].elements[“selIProc”];
if( Grp =”A” ){
var idx=sObj.length;
sObj.options[idx]=new Option(“ImageFix”);
var idx=sObj.length;
sObj.options[idx]=new Option(“RedEyeFix”);
var idx=sObj.length;
sObj.options[idx]=new Option(“SmartSkin”);
var idx=sObj.length;
sObj.options[idx]=new Option(“Mono”);
var idx=sObj.length;
sObj.options[idx]=new Option(“Sepia”);
}
Else if (Grp=”B”){
var idx=sObj.length;
sObj.options[idx]=new Option(“Mono”);
var idx=sObj.length;
sObj.options[idx]=new Option(“Sepia”);
}
}
</script>
上記スクリプト操作では、情報処理装置115のCPU100のクロック数がある閾値より大きく、複雑な画像処理を実施可能と判断した場合には(Grp=A)、より多くの画像処理機能を選択可能なものとしている。逆に、CPU100のクロック数がある閾値以下の場合には、処理としては負荷の軽いモノクロ変換、セピア変換という処理しか選択できないようになる。
ユーザが、図9に示したプリントボタン905を押下することで図3のS23の処理が開始する。ここでは、図3のS23のプリンタ設定の詳細について、図6を用いて説明する。なお、S601、S607〜S609は、CPU100がスクリプト層217のプログラムを用いて実行する処理であり、S602〜S606、S610はCPU100がネイティブ層218のプログラムを用いて実行する処理である。
01: <?xml version="1.0" encoding="utf-8" ?>
02: <cmd xmlns:trans="http://www.xxxx/yyyyy/">
03: <contents>
04: <operation>GetInformation</operation>
05: </contents>
06: </cmd>
----------------------------------------------
上記各行の左側に書かれている「01:」等の数値は説明を行うために付加した行番号であり、本来のXML形式のテキストには記載されない。
01: <?xml version="1.0" encoding="utf-8" ?>
02: <cmd xmlns:trans="http://www.xxxx/yyyyy/">
03: <contents>
04: <device id=”Printer001” />
05: <mode = 1>
06: <media>GlossyPaper</media>
07: <size>A4</size>
08: <quality>1</quality>
09: <border>no</border>
10: </mode>
11: <mode = 2>
〜中略〜
</mode>
<mode = 3>
〜中略〜
</mode>
〜中略〜
</contents>
</cmd>
----------------------------------------------
1行目はヘッダであり、XML形式で記述していることを表している。2行目のcmdはコマンドの開始を意味する。xmlnsで名前空間を指定し、コマンドの解釈の定義を指定している。尚、最下行の</cmd>でコマンドの終了を示している。
<!DOCTYPE html>
<head>
<title>印刷設定 </title>
<script>
<!-- 用紙サイズ -->
var PaperSizeNum = GetPaperSizeNum();
var p = document.getElementById("PaperList");
var i;
for(i=0; i<PaperSizeNum; i++){
p.options[i] = new Option(GetPaperSizeT(i), GetPaperSizeV(i));
}
<!-- 用紙種類-->
var MediaTypeNum = GetMediaTypeNum();
var m = document.getElementById("MediaList");
var j;
for(j=0; j<MediaTypeNum; j++){
m.options[i] = new Option(GetMediaTypeT(j), GetMediaTypeV(j));
}
<!-- 印刷品位 -->
var QualityNum = GetQualityNum();
var q = document.getElementById("QualityList");
var k;
for(k=0; k< QualityNum; k++){
q.options[i] = new Option(GetQualityT(k), GetQualityV(k));
}
<!-- 縁あり/なし-->
var BorderNum = GetBorderNum();
var b = document.getElementById("BorderList");
var l;
for(l=0; l<BorderNum; l++){
b.options[i] = new Option(GetBorderT(l), GetBorderV(l));
}
<!-- 印刷関数-->
function printer() {
SetPrint(document.getElementById("PaperList").value,
document.getElementById("MediaList").value,
document.getElementById("QualityList").value,
document.getElementById("BorderList").value);
}
</script>
</head>
<!-- 表示部 -->
<body>
用紙サイズ <select id="PaperList"></select><br />
用紙種類 <select id="MediaList"></select><br />
印刷品位 <select id="QualityList"></select><br />
縁あり/なし <select id="BorderList"></select><br />
<br />
<button id="btn1" onclick="printer()">設定完了</button>
</body>
</html>
------------------------------------------------
上記のGetPaperSizeNum( )、GetMediaTypeNum( )、GetQualityNum( )、GetBorderNum( )はネイティブ関数であり、それぞれの項目数を取得する機能を備える。例えば、プリンタが対応している用紙サイズがA4、A5、B5、L判の4種類である場合、GetPaperSizeNum( )は4を返す。
ユーザが、図10に示した設定画面1001の設定完了ボタン1002を押下することで図3のS24のレンダリング処理が開始する。印刷処理を行うには、SVGで記述した印刷コンテンツを、プリンタ固有のプリント解像度画像データに変換する必要がある。この変換処理のことをレンダリングと呼ぶ。この実施形態では、このレンダリング処理をインタプリタ214で実行する。このように、表示と印刷用レンダリングを同じインタプリタを用いて行うことは、両者の一致を確保する上で重要である。
・−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−・
|用紙サイズ| PaperH[mm] | PaperW[mm] |
・−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−・
| 4×6 | 101.6 | 152.4 |
・−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−・
| A4 | 297 | 210 |
・−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−・
| L判 | 89 | 127 |
・−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−・。
ResX=PaperH/25.4×ResolutionX
ResY=PaperW/25.4×ResolutionY
である。
ExpX=ResX/SvgX
ExpY=ResY/SvgY
を用いて算出する。上式において、上述したSVGコンテンツによれば、SvgX=1600、SvgY=1200である。
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg width="1600" height="1200" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<image id="img01" xlink:href="/images/IMG_0001.JPG" x="10" y="10" width="780" height="1180"/>
<image id="img02" xlink:href="/images/IMG_0002.JPG" x="810" y="10" width="780" height=”1180"/>
</svg>
上記の例では印刷コンテンツの中に2つのSVGの画像要素が含まれている。この時、この実施形態では、SVGの画像要素に対応する以下のようなJavaScriptの関数を用意しおき、SVGのimage命令をCanvas命令に置換する。
var image = document.getElementById(imageID);
var x = image.getAttribute("x")
var y = image.getAttribute("y")
var width = image.getAttribute("width");
var height = image.getAttribute("height");
var href = image.getAttribute("xlink:href")
img = new Image();
img.src = href ;
ctx.drawImage(img, 0,0,width, height,
x*ExpX, y*ExpY, width*ExpX, height*ExpY);
}
上記関数は、SVGの画像要素から、「getAttribute」関数を用いて、画像の配置位置や配置サイズを取得する。そして、Canvas用の画像要素に画像のパス情報を設定して、Canvasのコンテキストctxの「drawImage」関数を利用して、画像を描画する例である。「drawImage」の引数では、S703で算出した拡大率(ExpX,ExpY)を用いて、描画する画像データの位置と領域を拡大している。なお、Canvasのctxについては、予め、ResXおよびResYという必要解像度の大きさで確保されている。この実施形態では、画像は2つ存在するため、「imageID」に、「img01」,「img02」をそれぞれ設定して、S705では上記関数を2回呼び出す。
図3のS25ではレンダリングした後の画像データを用いてプリント処理を実行する。実際には、図7のS707の処理が終了し、スクリプト層がS708で取得した画像データをネイティブ層に送信することでS25の処理が開始される。ここでは、図3のS25のプリントの詳細について、図8を用いて説明する。なお、図8のS801〜S803は、CPU100がネイティブ層218のプログラムを用いて実行し、S804はプリンタ側で実行される処理である。
上述の実施形態では、SVGで描画されるよう指示した画像のパス情報をCanvasのimg.srcにセットしてCanvasのコンテキストに描画する例を説明した。ここではJavaScript関数によって、SVGの画像要素をCanvasに描画する例について説明する。
var image = document.getElementById(imageID);
var x = image.getAttribute("x")
var y = image.getAttribute("y")
var width = image.getAttribute("width");
var height = image.getAttribute("height");
var href = image.getAttribute("xlink:href")
img = new Image();
img.src = getBase64Data( href );
ctx.drawImage(img, 0,0,width, height,
x*ExpX, y*ExpY, width*ExpX, height*ExpY);
}
上記プログラムコードでは、img.srcにセットする情報を独自に定義した「getBase64Data(href)」関数によって取得をしている。この関数は、「href」で指示されたパス情報が示す画像データをネイティブ層でオープンし、展開後のRGB画素値をBase64形式に変換してスクリプト層で取得するための関数を意味している。この関数はネイティブ層で用意されるが、前述したJavaScriptとネイティブ層のバインド機能によって、スクリプト層から呼び出すことが可能である。
前述の実施形態では、拡大後の解像度情報に応じたCanvasのコンテキスト(ctx)を生成し、そのCanvasにSVGコンテンツを描画する際に、画像の位置やサイズ情報に拡大率を乗じて描画する例について説明した。しかし、本発明はこれに限定されるものではない。例えば、SVGデータそのものは印刷解像度に拡大せず、そのままCanvas命令に置換する。なぜなら、Canvas描画命令の中にもscaleというコンテンツの拡大命令があるため、Canvasのscale命令で所望の解像度(ResX,ResY)に拡大することも可能であるからである。
ここで、ExpX,ExpYは、上述のように拡大率を示している。拡大命令を含んだCanvasスクリプトは、S705においてインタプリタ214に入力される。そして、インタプリタ214において、上述のように、レンダリング結果の画像データ(RGB値)を取得するのである。
204:データ保持部、205:コンテンツ描画部、206:画像処理制御部、
207:データ変換部、208:画像処理部、210:コンテンツ操作部、
211:プリンタ制御部、212:プリンタデータ生成部、213:プリンタ通信部、
214:インタプリタ、215:画像データ群、216:レンダリング部、
217:スクリプト層、218:ネイティブ層、219:OS層、220:データ保存部
Claims (17)
- プロセッサで翻訳され実行されるための命令セットを含む第1のプログラム層と、前記プロセッサ以外で予め翻訳された命令セットを含む第2のプログラム層とを包含するプログラムを、前記プロセッサで実行する情報処理装置であって、
前記第1のプログラム層において第1の記述言語で記述されたコンテンツを第2の記述言語のコンテンツに変換する変換手段と、
前記変換された第2の記述言語のコンテンツを描画することで得られる前記コンテンツのデータを取得する取得手段と、
前記取得手段により取得された前記コンテンツの画像データをプリンタが利用可能な形式の画像データに変換する第2の変換手段と、
前記第2の変換手段により変換された前記プリンタが利用可能な形式の画像データを前記プリンタに送信する送信手段とを有することを特徴とする情報処理装置。 - 前記コンテンツは印刷コンテンツであり、
前記変換手段は、
前記印刷コンテンツが印刷されるプリンタの印刷解像度に基いて、前記第1の記述言語で記述された印刷コンテンツの拡大率を算出する算出手段と、
前記算出手段により算出された拡大率に基いて、前記第1の記述言語の印刷コンテンツを前記第2の記述言語の印刷コンテンツに変換する第1の変換手段を含むことを特徴とする請求項1に記載の情報処理装置。 - 前記印刷解像度は、前記情報処理装置に接続されるプリンタから取得した属性情報に基づいて算出されることを特徴とする請求項2に記載の情報処理装置。
- 前記情報処理装置が動作させるオペレーティングシステムが備える翻訳手段によって前記第2の記述言語のコンテンツが翻訳されることを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
- 前記コンテンツを翻訳する別の翻訳手段を前記第2のプログラム層に備えることを特徴とする請求項4に記載の情報処理装置。
- 前記情報処理装置で動作するオペレーティングシステムから描画結果が取得できない第1の記述言語で記述されたコンテンツが、前記変換手段によって、前記オペレーティングシステムから描画結果が取得可能な第2の記述言語のコンテンツに変換され、前記第2の記述言語のコンテンツを前記オペレーティングシステムに描画させる指示手段をさらに有し、
前記取得手段は、前記変換された第2の記述言語のコンテンツを描画することで得られる当該コンテンツのデータを前記オペレーティングシステムから取得することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。 - 前記第1の記述言語は、SVGであり、
前記第2の記述言語は、Canvasであることを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。 - 前記第1のプログラム層の命令セットは、HTML、CSS、JavaScriptのいずれか1つで記述されていることを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
- プロセッサで翻訳され実行されるための命令セットを含む第1のプログラム層と、前記プロセッサ以外で予め翻訳された命令セットを含む第2のプログラム層とを包含するプログラムを、前記プロセッサで実行する情報処理装置の処理方法であって、
前記第1のプログラム層において第1の記述言語で記述されたコンテンツを第2の記述言語のコンテンツに変換する変換工程と、
前記変換された第2の記述言語のコンテンツを描画することで得られる前記コンテンツのデータを取得する取得工程と、
前記取得工程により取得された前記コンテンツの画像データをプリンタが利用可能な形式の画像データに変換する第2の変換工程と、
前記第2の変換工程により変換された前記プリンタが利用可能な形式の画像データを前記プリンタに送信する送信工程とを有することを特徴とする処理方法。 - ウェブ標準言語で記述された第1のプログラム層と、ウェブ標準言語とは異なるプログラム言語で記述された第2のプログラム層とを包含するプログラムを実行するコンピュータを、前記第1のプログラム層において第1の記述言語で記述されたコンテンツを第2の記述言語のコンテンツに変換する変換手段と、前記変換された第2の記述言語のコンテンツを描画することで得られる前記コンテンツのデータを取得する取得手段と、前記取得手段により取得された前記コンテンツの画像データをプリンタが利用可能な形式の画像データに変換する第2の変換手段と、前記第2の変換手段により変換された前記プリンタが利用可能な形式の画像データを前記プリンタに送信する送信手段として機能させるための前記コンピュータが読み取り可能なプログラム。
- 前記コンテンツは印刷コンテンツであり、
前記印刷コンテンツが印刷されるプリンタの印刷解像度に基いて、前記第1の記述言語で記述された印刷コンテンツの拡大率を算出する算出手段と、
前記算出手段により算出された拡大率に基いて、前記第1の記述言語の印刷コンテンツを前記第2の記述言語の印刷コンテンツに変換する第1の変換手段として前記コンピュータをさらに機能させるための請求項10に記載のプログラム。 - 前記印刷解像度は、前記コンピュータに接続されるプリンタから取得した属性情報に基づいて算出されることを特徴とする請求項11に記載のプログラム。
- 前記コンピュータが動作させるオペレーティングシステムが備える翻訳手段によって前記第2の記述言語のコンテンツが翻訳されることを特徴とする請求項10乃至12のいずれか1項に記載のプログラム。
- 前記コンテンツを翻訳する別の翻訳手段を前記第2のプログラム層に備えることを特徴とする請求項13に記載のプログラム。
- 前記コンピュータが動作させるオペレーティングシステムから描画結果が取得できない第1の記述言語で記述されたコンテンツが、前記変換手段によって、前記オペレーティングシステムから描画結果が取得可能な第2の記述言語のコンテンツに変換され、前記第2の記述言語のコンテンツを前記オペレーティングシステムに描画させる指示手段として前記コンピュータをさらに機能させ、
前記取得手段は、前記変換された第2の記述言語のコンテンツを描画することで得られる前記コンテンツのデータを前記オペレーティングシステムから取得することを特徴とする請求項10乃至14のいずれか1項に記載のプログラム。 - 前記第1の記述言語は、SVGであり、
前記第2の記述言語は、Canvasであることを特徴とする請求項10乃至15のいずれか1項に記載のプログラム。 - 前記ウェブ標準言語は、HTML、CSS、JavaScriptのいずれか1つであることを特徴とする請求項10乃至16のいずれか1項に記載のプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014135178A JP6381319B2 (ja) | 2014-06-30 | 2014-06-30 | 情報処理装置、処理方法、及びプログラム |
US14/743,487 US9582232B2 (en) | 2014-06-30 | 2015-06-18 | Information processing apparatus, processing method, and storage medium for building a print application using a hybrid application |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014135178A JP6381319B2 (ja) | 2014-06-30 | 2014-06-30 | 情報処理装置、処理方法、及びプログラム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016014920A JP2016014920A (ja) | 2016-01-28 |
JP2016014920A5 JP2016014920A5 (ja) | 2017-08-10 |
JP6381319B2 true JP6381319B2 (ja) | 2018-08-29 |
Family
ID=54930904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014135178A Active JP6381319B2 (ja) | 2014-06-30 | 2014-06-30 | 情報処理装置、処理方法、及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US9582232B2 (ja) |
JP (1) | JP6381319B2 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6378645B2 (ja) | 2014-06-13 | 2018-08-22 | キヤノン株式会社 | 情報処理装置、制御方法、及びプログラム |
JP6138088B2 (ja) | 2014-06-30 | 2017-05-31 | キヤノン株式会社 | 情報処理装置、制御方法、及びソフトウェアプログラム |
JP6363888B2 (ja) | 2014-06-30 | 2018-07-25 | キヤノン株式会社 | 情報処理装置、およびプログラム |
JP6463914B2 (ja) | 2014-06-30 | 2019-02-06 | キヤノン株式会社 | 情報処理装置、処理方法、及びプログラム |
JP6649832B2 (ja) | 2016-03-30 | 2020-02-19 | キヤノン株式会社 | 情報処理装置およびその制御方法、並びにプログラム |
JP6685840B2 (ja) | 2016-05-31 | 2020-04-22 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
JP6799396B2 (ja) | 2016-07-01 | 2020-12-16 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
JP6786342B2 (ja) | 2016-10-18 | 2020-11-18 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
CN110119380B (zh) * | 2018-01-12 | 2022-02-22 | 武汉斗鱼网络科技有限公司 | 一种可缩放矢量图文件的存储、读取方法及装置 |
CN114861606A (zh) * | 2022-05-26 | 2022-08-05 | 中国工商银行股份有限公司 | 数据转换方法、装置及电子设备 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3595582B2 (ja) * | 1994-11-01 | 2004-12-02 | 富士通株式会社 | サービスプロセッサ |
JP4250470B2 (ja) * | 2002-09-06 | 2009-04-08 | キヤノン株式会社 | 情報処理装置及び情報処理方法及び印刷制御プログラム |
US7797631B2 (en) * | 2002-09-18 | 2010-09-14 | Canon Kabushiki Kaisha | Document printing control apparatus and method |
JP4164467B2 (ja) * | 2004-03-26 | 2008-10-15 | キヤノン株式会社 | 画像処理装置、画像処理制御方法、及びプログラム |
US20070192818A1 (en) * | 2004-10-12 | 2007-08-16 | Mikael Bourges-Sevenier | System and method for creating, distributing, and executing rich multimedia applications |
WO2006051716A1 (ja) * | 2004-11-12 | 2006-05-18 | Justsystems Corporation | 文書処理装置及び文書処理方法 |
JP4405942B2 (ja) | 2005-06-14 | 2010-01-27 | キヤノン株式会社 | 画像処理装置およびその方法 |
JP5127592B2 (ja) | 2008-06-25 | 2013-01-23 | キヤノン株式会社 | 画像処理装置および画像処理方法、プログラム並びに、コンピュータ読み取り可能な記録媒体 |
JP5300595B2 (ja) | 2009-05-28 | 2013-09-25 | キヤノン株式会社 | 画像処理装置及び方法、及びコンピュータプログラム |
KR101350661B1 (ko) | 2011-09-30 | 2014-01-10 | 엔에이치엔엔터테인먼트 주식회사 | 웹 기술을 이용한 하이브리드 어플리케이션 구동 장치 및 방법 |
-
2014
- 2014-06-30 JP JP2014135178A patent/JP6381319B2/ja active Active
-
2015
- 2015-06-18 US US14/743,487 patent/US9582232B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20150379381A1 (en) | 2015-12-31 |
US9582232B2 (en) | 2017-02-28 |
JP2016014920A (ja) | 2016-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6381319B2 (ja) | 情報処理装置、処理方法、及びプログラム | |
US10296267B2 (en) | Information processing apparatus, information processing method, and storage medium | |
JP6478487B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP6386803B2 (ja) | 装置、方法、及びプログラム | |
JP6363888B2 (ja) | 情報処理装置、およびプログラム | |
JP5901704B2 (ja) | 情報処理装置、情報処理方法、プログラム | |
US10075620B2 (en) | Information processing apparatus, control method for information processing apparatus, and non-transitory computer-readable storage medium | |
JP6138088B2 (ja) | 情報処理装置、制御方法、及びソフトウェアプログラム | |
US9671984B2 (en) | Information processing apparatus for managing memory, processing method thereof and storage medium | |
JP6438218B2 (ja) | 装置、方法、及びプログラム | |
JP6008897B2 (ja) | 装置、方法、及びプログラム | |
JP6360370B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP7395334B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP6757368B2 (ja) | 情報処理装置、処理方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170629 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170629 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180213 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180216 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180412 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180702 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180731 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6381319 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |