JP4006113B2 - 図形処理方法及び装置 - Google Patents
図形処理方法及び装置 Download PDFInfo
- Publication number
- JP4006113B2 JP4006113B2 JP29593298A JP29593298A JP4006113B2 JP 4006113 B2 JP4006113 B2 JP 4006113B2 JP 29593298 A JP29593298 A JP 29593298A JP 29593298 A JP29593298 A JP 29593298A JP 4006113 B2 JP4006113 B2 JP 4006113B2
- Authority
- JP
- Japan
- Prior art keywords
- graphic
- data
- line
- offset
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Processing (AREA)
- Storing Facsimile Image Data (AREA)
- Editing Of Facsimile Originals (AREA)
Description
【発明の属する技術分野】
本発明は、例えばCADシステム等のような、図形や文字列などを拡大・縮小することが可能な図形処理装置及び方法に関する。
【0002】
【従来技術】
図形や文字列などを拡大・縮小といった編集機能を有する情報処理装置の一例として、印刷データ、特に、製品本体やその外装パッケージやマニュアル類などに表示する、図形や文字やイラストなどの版下用の印刷データを作成する、CADやDTP(Desk Top Publishing)などの、対話形式の作図システムがある。このようなシステムを用いて印刷データを作成する場合には、従来、次のような方法があった。
【0003】
(1)印刷した時のイメージとは異なる、おおまかなイメージを表示装置に表示しながら、対話形式で図形や文字の編集やレイアウトを行なった後に、印刷に必要な属性を付加した、印刷用のデータを別に作成して、印刷装置で印刷する方法。
【0004】
(2)印刷した時のイメージと同様のイメージを表示装置に表示しながら、対話形式で図形や文字の編集やレイアウトを行なった後に、表示装置に表示されたデータを、ほぼそのままの形で、印刷装置で印刷する方法。
【0005】
なお、この(2)の方法は、表示装置に表示されるイメージが、印刷装置で印刷されるイメージと同じ表示形態となる、いわゆるWYSIWYG(What You See Is What You Get)と呼ばれる技術による方法である。
【0006】
従来この方法を用いて精密な図形の拡大・縮小を行うには印刷属性を付加しない図形、すなわち線幅0で構成される同等なアウトライン図形を描き、このアウトライン図形を対象に図形の拡大・縮小を行う必要があった。
【0007】
また、印刷データを、対話形式の作図システムを用いずに作成する場合には、従来、次のような方法があった。
【0008】
(3) TeXなどのマークアップ言語を用いて、図形や文字のデータとともに、印刷に必要な属性や、レイアウト情報などを記述したプログラムを作成し、そのプログラムを一括処理で実行することにより、印刷データを生成して、印刷装置で印刷する方法。
【0009】
(4) 画像処理専用プログラムを用いて、画面のイメージを取り込んだり、写真のイメージをスキャナーなどでデジタル情報に変換し、イメージをラスター情報として保持する。またこの場合、ラスターイメージをドット単位で編集することが可能である。
【0010】
【発明が解決しようとする課題】
しかしながら、上記従来例では、それぞれ、以下に述べるような課題を有している。なお、以下に述べる課題は、それぞれ上記従来例に付した番号に対応した番号を付して記載している。
【0011】
(1)印刷属性は図形を作成した後で付加するので、図形作成時には線幅、終端形状、連結形状、オフセット方向などの情報を考慮した図形作成及び編集ができないという問題があった。
【0012】
(2)印刷時とほぼ同じイメージで画面に出力しながら操作が行えるが、図形の編集機能として印刷属性までを考慮して図形の拡大・縮小を行わないので、作成した図形の大きさが微妙にユーザが意図した大きさと違うという問題があった。
【0013】
またアウトライン図形を作成するという作業はユーザに余分な労力を要求し、作業効率の低下を招くという問題があった。また自由曲線や楕円などの図形要素はアウトラインを正確に作成することが困難なため、ユーザが意図する図形が作成できないケースが存在した。
【0014】
さらに従来アウトラインを元に幾何学的な手法を用いて図形を拡大・縮小する場合、輪郭情報の算出において出力装置の解像度を考慮していなかったため、算出した輪郭情報と出力機の解像度の違いにより誤差が生じ、精密な拡大・縮小図形編集ができなくなる恐れもあった。
【0015】
(3) 実際に出力結果を見ながら図形や文字を作成するのではないのでユーザインターフェースが悪く、作業効率の低下を招くという問題があった。
【0016】
(4) 画像処理専用プログラムではラスタライズされたイメージ、すなわちドット単位での画像の編集であったため、拡大・縮小などの変更を加えると、イメージが粗くなったり、精度が保たれないという問題があった。
【0017】
本発明は上記従来の技術の様々な問題点を解決するためになされたものであり、その目的とするところは、ユーザーの作業効率を低下させることなく、しかも、印刷データに関して高精度に図形の変倍を行なえる図形処理装置及び方法を提供することにある。
【0018】
【課題を解決するための手段】
上記の目的を達成するための本発明の一態様による図形処理装置は、例えば以下の構成を備える。すなわち、
印刷属性の付加された図形データを記憶する記憶手段と、
前記記憶手段に記憶された図形データに付加された印刷属性に基づいて、該図形データの輪郭情報を抽出する輪郭情報抽出手段と、
前記輪郭情報抽出手段により抽出された輪郭情報に基づいて、当該図形の変倍処理を実行する変倍手段とを備え、
前記輪郭情報抽出手段は、
印刷情報に基づいて、単一の線分または円からなる通常図形が属する第1分類と、複数のラインからなるマルチライン図形が属する第2分類と、オフセットにより作成される図形が元の図形の種別と異なる図形が属する第3分類とのいずれかに、前記対象図形を分類する分類手段と、
前記分類手段における各分類に応じて前記輪郭情報の抽出を行なう抽出手段とを備える。
【0019】
また、上記の目的を達成するための本発明の他の態様による図形処理方法は、例えば以下の工程を備える。すなわち、
印刷属性の付加された図形データを記憶手段に記憶する記憶工程と、
前記記憶手段に記憶された図形データに付加された印刷属性に基づいて、該図形データの輪郭情報を抽出する輪郭情報抽出工程と、
前記輪郭情報抽出工程により抽出された輪郭情報に基づいて、当該図形の変倍処理を実行する変倍工程とを備え、
前記輪郭情報抽出工程は、
印刷情報に基づいて、単一の線分または円からなる通常図形が属する第1分類と、複数のラインからなるマルチライン図形が属する第2分類と、オフセットにより作成される図形が元の図形の種別と異なる図形が属する第3分類とのいずれかに、前記対象図形を分類する分類工程と、
前記分類工程における各分類に応じて前記輪郭情報の抽出を行なう抽出工程とを備える。
【0020】
【発明の実施の形態】
以下、本発明の各実施の形態を図面に基づき説明する。
【0021】
(第1の実施形態)
[ハードウエア構成の説明]
図1は、本発明の一実施形態に係る情報処理装置のハードウエア構成を示すブロック図である。
【0022】
この図1において、21は中央処理装置(CPU)であり、本装置の全体の制御や演算処理を行なう。また、11は、文字や数値の入力を行なうためのキーボードであり、12は、座標や図形を指示するためのマウスである。また、41は表示装置であり、図形データおよび文字データ、各種操作パネルやボタンを表示する。
【0023】
また、31は読出専用記憶装置(ROM)であり、本実施形態に係るプログラムは、このROM31に格納され、CPU21によって実行される。32は読出書込記憶装置(RAM)であり、本実施形態に係るプログラムの実行中、CPU21は、必要に応じて、RAM32に、データを読み書きしながら処理を行なう。33は、フロッピーディスク装置(FD)やハードディスク装置(HD)などの外部記憶装置であり、文字の書体情報やコード情報などのデータが格納されている。
【0024】
なお、本実施形態に係るプログラムを、外部記憶装置33に格納させておき、RAM32に読み込んでから、CPU21によって実行するようにしてもよいし、また、文字の書体情報やコード情報などのデータを、ROM31に格納させておき、CPU21が、必要に応じて、それらのデータを読み出して使用するようにしてもよい。
【0025】
また、51はレーザープリンタであり、本装置によって作成された印刷データを、校正刷り(印刷データの確認のための出力)し、また、印刷ログファイルの内容を出力する。52はイメージセッターであり、本装置によって作成された印刷データを、清刷り(正式な版下となる高精度な出力)する。53はレーザーマーカーであり、本装置によって作成された印刷データを、レーザーで直接、製品に焼き付ける。
【0026】
以下、レーザープリンタ51と、イメージセッター52と、レーザーマーカー53の違いについて説明する。
【0027】
まず、レーザープリンタ51は、レーザーを感光ドラムに照射してトナーを吸着させ、それを紙に転写するプリンタであり、解像度は、1500DPI程度まで可能である。また、イメージセッター52は、レーザーを直接、感光紙に照射するプリンタであり、解像度は、4000DPI程度まで可能であり、また、用紙サイズは、A1程度まで可能である。また、レーザーマーカー53は、レーザーを直接、成形品に照射し、樹脂材料を溶融して黒化させるか、充填材を配合した特殊材料を使用して発色させる印刷装置である。
【0028】
なお、22はシステムバスであり、本装置を構成するハードウエアの各要素は、全て、このシステムバス22を介して、プログラムおよびデータの受け渡しを行なっている。
【0029】
次に、本実施形態に係る表示装置41における表示機能について説明する。
【0030】
本実施形態に係る情報処理装置は、図形データおよび文字データを、印刷時の出力形態と同じ表示形態のイメージで、表示装置41へ表示する制御を行なう、いわゆるWYSIWYGの機能を有しており、これを説明する図が、図2である。
【0031】
図2(a)は、WYSIWYGの表示例であり、この図2(a)の表示形態は、印刷時の出力結果の例である図2(c)の出力形態と同じとなっている。一方、図2(b)は、WYSIWYGではない表示の例であり、この図2(b)の表示形態は、印刷時の出力結果の例である図2(c)の出力形態とは異なっている。
【0032】
次に、本実施形態に係る表示装置41上の操作画面について説明する。
【0033】
図3は、本実施形態に係るプログラム実行時に表示装置41に表示されるメインパネル61を示した図である。
【0034】
この図3において、61はメインパネル、62は作画エリア、63はマウスポインタ、64は文字入力エリア、65はボタン群、66は汎用ボタン、67はコマンドメニュー、68はガイダンスエリア、71はメインパネル以外のパネル、72はパネル71上のボタンである。また、これら図3上のボタンは、全てソフトキーである。
【0035】
このメインパネル61上で、キーボード11や、マウス12などの入力装置を操作することによって、対話的に、印刷データの作成および編集作業を行なう。作成された印刷データは、作画エリア62に表示される。
【0036】
また、必要に応じて、メインパネル61以外に、各種のパネル71が表示され、パネル71上で、操作を行なうこともある。
【0037】
以下、この図3を用いて、本実施形態における、さまざまな入力方法について説明する。
【0038】
キーボード11から入力を行なう場合には、文字入力エリア64を、マウス12またはキーボード11で指示してから、文字または数値を入力する。
【0039】
また、マウス12から入力を行なう場合には、以下の方法を用いる。
【0040】
まず、特定の要素やボタンを選択する方法としては、次の(1)と(2)の、2つの方法がある。
【0041】
(1)要素選択:作画エリア62に表示されている、印刷データのある場所に、マウスポインタ63を移動させて、その位置で、例えばマウス左ボタンを押し下げることによって、操作の対象とする要素を選択する。
【0042】
(2)ボタン選択:メインパネル61に表示されている、各種のボタン65や汎用ボタン66や、必要に応じて表示されるパネル71に表示されている、各種のボタン72の位置に、マウスポインタ63を移動させて、その位置で、例えばマウス左ボタンを押し下げることによって、操作の対象とするボタンを選択する。
【0043】
また、作画エリア62上の特定の位置を指定する方法として、次の(3)から(7)までの、5つの方法がある。
【0044】
(3)任意指定:作画エリア62上の、任意の位置に、マウスポインタ63を移動させて、その位置で、例えばマウス右ボタンを押し下げることによって、位置を指定する。
【0045】
(4)点指定:作画エリア62に表示されている、点を要素選択することによって、位置を指定する。
【0046】
(5)特徴点指定:作画エリア62に表示されている、点以外の要素を要素選択することによって、その要素の特徴となる点をCPU21が抽出し、位置を指定する。
【0047】
ここで、特徴点が複数存在する場合に、1点を特定する方法には、要素選択した際のマウスポインタ63の位置に最も近い特徴点をCPU21が自動的に抽出する方法、複数存在する特徴点の中からさらに1点を点指定する方法、などがある。
【0048】
図4に、図形データの各要素の特徴点の例を示す。図中、*印で示した点が、特徴点である。なお、これら特徴点の具体的な位置は、以下に示す通りである。
・線分:両端点、中点
・円:中心点、円の中心からXおよびY軸方向に引いた直線と円との交点(4点)
・円弧:中心点、両端点、中点(円弧の距離を二分する円弧上の点)
・楕円:中心点、楕円の短軸および長軸と楕円との交点(4点)
・楕円弧:中心点、両端点、楕円弧の短軸および長軸と楕円弧を含む楕円との交点(4点)、中点(楕円弧の距離を二分する楕円弧上の点)
・線分列:線分列を構成する各線分の両端点、中点
・自由曲線:両端点、曲線の制御点、中点(自由曲線の距離を二分する点)。
【0049】
(6)交点指定:作画エリア62に表示されている、線分や円などの線要素を、1個または2個、要素選択することによって、それらの要素の交点をCPU21が算出し、位置を指定する。
【0050】
ここで、単一の線要素が、それ自体で交点を持つ場合、すなわち、自己交差している場合は、線要素を1個、要素選択するだけでよい。その他の場合は、2個の線要素を指定する。
【0051】
交点が複数存在する場合に、1点を特定する方法には、先または後に要素選択した際のマウスポインタ63の位置に最も近い交点をCPU21が自動的に抽出する方法、複数存在する交点の中からさらに1点を点指定する方法、などがある。
【0052】
図5に、線分と円弧を要素選択して、交点指定によって、位置を指定した例を示す。図中、レ印で示した位置で、線分、円弧、の順で、要素選択を行ない、*印の位置が、交点指定によって指定されたことを示している。
【0053】
(7)線上点指定:作画エリア62に表示されている、線分、円などの、線要素を1個、要素選択することによって、その時のマウスポインタ63の位置に最も近い、線要素上の点をCPU21が算出し、位置を指定する。
【0054】
図6に、円弧を要素選択して、線上点指定によって、位置を指定した例を示す。図中、レ印で示した位置で、要素選択を行ない、*印の位置が、線上点指定によって指定されたことを示している。レ印の点は、円弧近傍の点、*印の点は、円弧上の点である。
【0055】
次に、本実施形態で扱う「コマンド」について説明する。本実施形態では、印刷データの作成および編集作業の各単位を「コマンド」と呼んでいる。
【0056】
本実施形態で扱うコマンドには、点、直線、円、曲線、など、各要素を作成するコマンド(作図コマンド)や、移動、複写、削除、属性、など、各要素の形状や属性などを修正するコマンド(修正コマンド)や、その他、ファイル、プリント、トンボ、バーコード、等に関するコマンドなどがある。
【0057】
印刷データの作成や編集を行なうには、まず、作業単位に合わせた、任意のコマンドを1つ選択する。コマンドの選択には、文字入力エリア64で、コマンドの名称をキーボード11から入力する方法や、コマンドの名称があらかじめ設定されているメインパネル61上のボタン65を、ボタン選択する方法などがある。
【0058】
コマンドの選択が行なわれると、それまで、すでに選択されているコマンドがあった場合には、そのコマンドの終了処理が行なわれる。続いて、新たに選択されたコマンドの初期処理が行なわれ、コマンド内の処理に入る。
【0059】
コマンドが選択されると、表示装置41上に、選択されたコマンド内での、さらに細かい作業単位を選択するための、コマンドメニュー67が表示される。ユーザーは、コマンドメニュー67の任意のメニュー項目のボタンをボタン選択することによって、各種の編集作業を行なうことができる。ユーザーがどのような操作を行なえばよいかといった指示は、作業の状況に応じて、その都度、ガイダンスエリア68に表示されるので、ユーザーは、この指示に従って、操作を行なえばよい。
【0060】
[印刷データの説明]
○印刷データの要素
次に、本実施形態に係る情報処理装置で作成できる印刷データを構成する、図形データおよび文字データの要素に、どのような種類が存在するのかを、具体的に説明することにする。
【0061】
本実施形態に係る情報処理装置で作成できる、図形データおよび文字データの要素には、大きく分けて、以下の(A)〜(E)の5つの種類がある。
(A)基本図形:点、線分、線分列(開/閉)、円、円弧、楕円、楕円弧、自由曲線(開/閉)
(B)塗り潰し図形
(C)その他の図形:トンボ、バーコード
(D)テキスト
(E)グループ図形:シンボル、イラスト。
【0062】
ここでいう要素とは、図形データまたは文字データに、印刷データとして必要な属性(印刷属性と呼ぶ)を付加して、実際に、印刷データとしてレイアウトされる、データの単位を意味している。また、印刷データとしてレイアウトされた複数の要素をまとめてグループ化すれば、それを1つの要素として扱うこともできる。要素のグループ化の方法については、後述する。
【0063】
それでは、以上の(A)〜(E)の5つの種別について、以下に詳細に説明することにする。
【0064】
まず、(A)の基本図形は、最も基本となる図形データの要素である。このほか、線分列によって構成される、矩形(各辺がXおよびY軸に平行である長方形)、正多角形などを、基本図形の要素として扱うこともできる。また、自由曲線としては、ベジェ、有理ベジェ、Bスプライン、エルミート、NURBSなどの表現形式を扱うことができる。
【0065】
また、(B)の塗り潰し図形は、(A)の要素(点を除く)を単独で、または、複数を連結させることで、閉領域を形成し、その内部を塗り潰した図形データの要素である。塗り潰しの方法には、次の4種類がある。
(1)フィルエリア:内部を均一に塗り潰す。
(2)ハッチング:一定の傾きと間隔を持った複数の線分で塗り潰す。塗り潰し図形内の特定の点を、ハッチングの基準点として指定することもできる。
(3)メッシュ:円、矩形、正多角形など、一定の形状の図形の繰り返しで塗り潰す。塗り潰し図形内の特定の点を、メッシュの基準点として指定することもできる。
(4)パターン:あらかじめ作成されたビットパターンの繰り返しで塗り潰す。
【0066】
また、(C)のその他の図形には、トンボ、バーコードなどがある。これらの要素は、図形データと、文字データの両方を含んでいる。トンボ、バーコードの各要素の作成方法については、後述する。
【0067】
また、(D)のテキストは、文字データの要素である。図形データの要素と同様に、印刷データとしてレイアウトすることができるが、印刷属性の種類や、レイアウトの方法は、図形データの要素とは異なる。
【0068】
最後に、(E)のグループ図形は、(A)の基本図形、(B)の塗り潰し図形、(C)のその他の図形、(D)のテキストの各要素を、1つ以上任意の数だけ選択して、まとめて1つの要素として扱うためのもので、シンボルとイラストがある。
【0069】
○印刷データの印刷属性
次に、本実施形態に係る情報処理装置で作成できる印刷データである、図形データおよび文字データの印刷属性に、どのような種類が存在するのかを、具体的に説明することにする。
【0070】
本実施形態に係る情報処理装置で作成できる、図形データおよび文字データの印刷属性には、大きく分けて、以下の(a)〜(g)の7つの種類がある。
【0071】
まず、図形データおよび文字データに共通の印刷属性には、次に示す(a)〜(c)の3つの種類がある。
(a)表示属性:要素を表示するか否か、また、表示する場合に、どのような上下関係で表示するか(表示プライオリティと呼ぶ)を指定する。
(b)選択属性:要素選択が可能であるか否かを指定する。要素選択を不可にすると、その要素に対しての操作は行なえなくなる。
(c)色属性:RGBあるいはHLSなどのカラーモデルの種別、および、カラーコードの値を与えることによって、要素の色を表現する。白と黒以外の色が表現できないモノクロームの、表示装置41またはレーザープリンタ51などの印刷装置を使用している場合、色属性に応じて、白または黒のどちらかの色に変換されて、出力される。
【0072】
次に、図形データ固有の印刷属性には、次に示す(d)〜(f)の3つの種類がある。
(d)点属性:点要素の場合、点のある位置に記号を表示したり、文字列を表示したりすることができる。
(e)線属性:点以外の基本図形の要素(線要素)の場合、次に示す、さまざまな線の属性を表現することができる。
・線種:線要素の形状を示し、実線、破線、一点鎖線、二点鎖線、などがある。
・線幅:線要素の法線方向の大きさを示す。あらかじめ定められた、細線、中線、太線、などの種別を指定したり、実寸で指定したりすることができる。
・線幅方向:線幅を考慮しない場合から、法線方向のどちらに線幅分だけオフセットさせるかを示す。
・終端形状:線分や円弧などの開図形の終端の形状で、ラウンド、フラット、スクエア、などがある。図62に、各終端形状(ラウンド、フラット、スクエア)の一例を示す
・接続形状:線分列や矩形などの図形の角の形状で、マイター、ラウンド、ベベル、などがある。図63に、各接続形状(マイター、ラウンド、ベベル)の一例を示す。
・線ピッチ:線種が実線以外の場合、線が存在する部分と、存在しない部分の長さを、それぞれ、実寸またはパラメータで与えることができる。
(f)塗り潰し属性:塗り潰し図形要素の場合、フィルエリア、ハッチング、メッシュ、パターン、などの内部の塗り潰し方法の種類や、ハッチングやメッシュの場合の、必要な詳細データ、パターンの場合の、パターン番号を与える。
【0073】
最後に、文字データ固有の印刷属性には、次に示す(g)の1種類のみがある。
(g)文字列属性:テキスト要素の場合、次に示す、さまざまな、文字の属性、および文字列全体の属性を表現することができる。
・書体:一組の文字のデザインを表し、クーリエ、ヘルベチカ、ゴシック、などがある。
・文字サイズ:文字の大きさを表し、一般には1つの文字が専有する矩形領域=ボディ、の行送り方向の高さと等しい。
・平体率:文字を、文字の行送り方向にどれだけ縮めるかを比率で表す。
・長体率:文字を、文字の字送り方向にどれだけ縮めるかを比率で表す。
・ベース角:文字の字送り方向がX軸となす角度を表す。
・斜体角:文字の字送り方向に対する、文字の傾斜角度を表す。
・字間:同一行の隣接する2文字のボディの間隔を表す。
・行間:隣接する2行にある文字のボディの間隔を表す。
・文字列反転:文字列を反転(鏡像)して表示する。
【0074】
○印刷データのデータ構造
次に、本実施形態における印刷データのデータ構造について説明する。本実施形態における印刷データは、一般に、既に説明したような、複数の要素データ、複数の印刷属性データから構成されている。
【0075】
ここで、各要素データは、基本的に、データ種別コード、データ番号、各要素ごとの必要データ、各要素ごとの必要印刷属性データのデータ番号、という構成になっている。
【0076】
そして、印刷データ内でユニークに付けられたデータ種別コードによって、印刷データ内の各要素データの種別を特定することができる。また、印刷データ内でユニークに付けられたデータ番号によって、印刷データ内の各要素データを特定することができる。各要素ごとに、必要データ、必要印刷属性の種類は異なるが、データ種別コードによって、CPU21は、これらを識別することが可能である。
【0077】
また、各印刷属性については、各要素データごとに保持するのではなく、各要素データでは、必要な印刷属性データのデータ番号のみを保持するようにしている。これによって、印刷属性データの重複を避け、印刷データの容量を縮小することや、複数の要素データの印刷属性を一度の操作で変更することなどが可能になっている。
【0078】
それでは、まず、図形データおよび文字データの各要素のデータ構造を、以下に具体的に示すことにする。
【0079】
(A)基本図形
(1)点
・データ種別コード
・データ番号
・点座標:c[2]
・表示属性のデータ番号
・選択属性のデータ番号
・色属性のデータ番号
・点属性のデータ番号
(2)線分
・データ種別コード
・データ番号
・始点座標:s[2]
・終点座標:e[2]
・表示属性のデータ番号
・選択属性のデータ番号
・色属性のデータ番号
・線属性のデータ番号
(3)線分列
・データ種別コード
・データ番号
・通過点数:np
・各通過点座標:pp[2](np個)
・表示属性のデータ番号
・選択属性のデータ番号
・色属性のデータ番号
・線属性のデータ番号
(4)円
・データ種別コード
・データ番号
・中心座標:c[2]
・半径:r
・表示属性のデータ番号
・選択属性のデータ番号
・色属性のデータ番号
・線属性のデータ番号
(5)円弧
・データ種別コード
・データ番号
・始点座標:s[2]
・終点座標:e[2]
・中心座標:c[2]
・回り方向フラグ(時計回り/反時計回り)
・表示属性のデータ番号
・選択属性のデータ番号
・色属性のデータ番号
・線属性のデータ番号
(6)楕円
・データ種別コード
・データ番号
・中心座標:c[2]
・長軸ベクトル:a[2]
・短軸ベクトル:b[2]
・表示属性のデータ番号
・選択属性のデータ番号
・色属性のデータ番号
・線属性のデータ番号
(7)楕円弧
・データ種別コード
・データ番号
・始点座標:s[2]
・終点座標:e[2]
・中心座標:c[2]
・長軸ベクトル:a[2]
・短軸ベクトル:b[2]
・回り方向フラグ(時計回り/反時計回り)
・表示属性のデータ番号
・選択属性のデータ番号
・色属性のデータ番号
・線属性のデータ番号
(8)自由曲線(ベジェ曲線の場合)
・データ種別コード
・データ番号
・曲線数:nv
・各曲線の制御点データ(nv個):
制御点数:nc
各制御点座標:pc[2](nc個)
重み係数:w
・通過点数:np
・各通過点座標:pp[2](np個)
・表示属性のデータ番号
・選択属性のデータ番号
・色属性のデータ番号
・線属性のデータ番号。
【0080】
(B)塗り潰し図形
・データ種別コード
・データ番号
・レイアウト基準矩形左下点座標:p1[2]
・レイアウト基準矩形右上点座標:p2[2]
・ループ数:nl
・各ループの構成要素データ(nl個):
構成要素数:nd
構成要素データ:点を除く基本図形要素データ(nd個)
・通過基準点座標:pp[2]
・表示属性のデータ番号
・選択属性のデータ番号
・色属性のデータ番号
・塗り潰し属性のデータ番号
・枠の表示属性のデータ番号
・枠の色属性のデータ番号
・枠の線属性のデータ番号
(塗り潰し図形では、印刷属性として、塗り潰し図形の内部の印刷属性の他に、塗り潰し図形の枠の印刷属性を別に持っている。例えば、内部の色属性と、枠の色属性を変えて表示することなどが可能である。)。
【0081】
(C)その他の図形
(1)トンボ
・データ種別コード
・データ番号
・トンボ種別フラグ(トンボ/スケールトンボ)
・トンボ形状フラグ(トンボの場合は11種類/スケールトンボの場合は3種類)
・トンボオフセットフラグ(オフセットあり/なし)
・印刷データ名称(スケールトンボの場合)
・トンボ長さ(スケールトンボの場合)
・レイアウト基準点座標:pb[2]
・出力倍率:sc
・レイアウト基準矩形左下点座標:p1[2]
・レイアウト基準矩形右上点座標:p2[2]
・構成要素数:nd
・構成要素データ:トンボの場合は線分、スケールトンボの場合は線分、円、テキストのいずれかの要素データ(nd個)
(2)バーコード
・データ種別コード
・データ番号
・バーコード種別フラグ(4種類)
・コードデータ
・コード表示フラグ(コード表示あり/なし)
・レイアウト基準位置フラグ(左下/中央/右上など9種類)
・レイアウト基準点座標:pb[2]
・レイアウト角度:ang
・レイアウトスケール:sc
・レイアウト基準矩形左下点座標:p1[2]
・レイアウト基準矩形右上点座標:p2[2]
・構成要素数:nd
・構成要素データ:線分、テキストのいずれかの要素データ(nd個)。
【0082】
(D)テキスト
(1)基本文字列(テキストを構成する要素)
・データ種別コード
・データ番号
・文字列開始点座標:pt[2]
・文字列バイト数:nch
・文字列データ:str(nchバイト)
・レイアウト角度:ang
・レイアウトスケール:sc
・表示属性のデータ番号
・選択属性のデータ番号
・色属性のデータ番号
・文字列属性のデータ番号
(2)テキスト
・データ種別コード
・データ番号
・レイアウト基準位置フラグ(左下/中央/右上など9種類)
・レイアウト基準点座標:pb[2]
・レイアウト基準矩形左下点座標:p1[2]
・レイアウト基準矩形右上点座標:p2[2]
・構成要素数:nd
・構成要素データ:基本文字列の要素データ(nd個)
(テキスト要素は、複数の基本文字列要素を組み合わせて構成される。これによって、ひとつのテキスト要素の中で、複数の文字列属性を持った文字列を扱うことが可能となる。例えば、ひとつのテキストの途中で文字の書体を変更したり、文字の高さや幅を変更したり、といった制御が可能である。)。
【0083】
(E)グループ図形
(1)シンボル
・データ種別コード
・データ番号
・フォルダー名称
・ファイル名称
・レイアウト基準位置フラグ(左下/中央/右上など9種類)
・レイアウト基準点座標:pb[2]
・レイアウト角度:ang
・レイアウトスケール:sc
・レイアウト基準矩形左下点座標:p1[2]
・レイアウト基準矩形右上点座標:p2[2]
・反転フラグ(反転あり/なし)
・線幅スケールフラグ(線幅スケールあり/なし)
・線幅スケール値
(2)イラスト
・データ種別コード
・データ番号
・フォルダー名称
・ファイル名称
・レイアウト基準位置フラグ(左下/中央/右上など9種類)
・レイアウト基準点座標:pb[2]
・レイアウト角度:ang
・レイアウトスケール:sc
・レイアウト基準矩形左下点座標:p1[2]
・レイアウト基準矩形右上点座標:p2[2]
・反転フラグ(反転あり/なし)
・構成要素数:nd
・構成要素データ:任意の要素データ(nd個)
(シンボルおよびイラストのデータ構造の特徴、およびシンボルデータファイルおよびイラストデータファイルのファイル構造については、後述する。)。
【0084】
次に、上述したようなデータ構造を有する要素データに対する印刷属性データのデータ構造について説明する。
【0085】
ここで、各印刷属性データは、基本的に、データ種別コード、データ番号、属性設定フラグ、各印刷属性ごとの必要データ、という構成になっている。
【0086】
印刷データ内でユニークに付けられたデータ種別コードによって、印刷データ内の各印刷属性データの種別を特定することができる。また、印刷データ内でユニークに付けられたデータ番号によって、印刷データ内の各印刷属性データを特定することができる。各印刷属性ごとに、必要データは異なるが、データ種別コードによって、CPU21は、これらを識別することが可能である。
【0087】
また、属性設定フラグとは、その印刷属性データが有効であるか否かを指定するフラグである。属性設定フラグが有効である印刷属性データを指示している要素データでは、該当する印刷属性データに従って、要素が表示される。一方、属性設定フラグが無効である印刷属性データを指示している要素データでは、該当する印刷属性は設定されていない状態であると見なし、あらかじめROM31や外部記憶装置33に記憶されているデフォルトの印刷属性に従って、要素が表示される。
【0088】
また、各要素データに階層関係を持たせることが可能なデータ構造とした場合には、上位の(または下位の)要素の印刷属性に従って表示を行なったりする制御も可能である。
【0089】
それでは、各印刷属性データのデータ構造を、以下に具体的に示すことにする。
(a)表示属性
・データ種別コード
・データ番号
・属性設定フラグ(有効/無効)
・表示フラグ(表示/非表示)
・表示プライオリティ
(b)選択属性
・データ種別コード
・データ番号
・属性設定フラグ(有効/無効)
・要素選択フラグ(可/不可)
(c)色属性
・データ種別コード
・データ番号
・属性設定フラグ(有効/無効)
・カラーコード種別フラグ(RGB/HLS)
・カラーコード1、2、3
(d)点属性
・データ種別コード
・データ番号
・属性設定フラグ(有効/無効)
・マーカー文字列
(e)線属性
・データ種別コード
・データ番号
・属性設定フラグ(有効/無効)
・線種フラグ(実線/破線/一点鎖線/二点鎖線/任意破線/任意一点鎖線/任意二点鎖線)
・線幅フラグ(細線/中線/太線/極太線/任意線幅)
・線幅方向フラグ(中央/内側/外側)
・終端形状フラグ(ラウンド/フラット/スクエア)
・接続形状フラグ(マイター/ラウンド/ベベル)
・線種データ1、2、3、4(線種=任意のとき)
・線幅データ(線幅=任意のとき)
(f)塗り潰し属性
・データ種別コード
・データ番号
・属性設定フラグ(有効/無効)
・塗り潰し種別フラグ(塗り潰しあり/塗り潰しなし/ハッチング/メッシュ番号/パターン番号など)
・データグループ数:nd
・塗り潰しデータ1、2、3(nd個)
(g)文字列属性
・データ種別コード
・データ番号
・属性設定フラグ(有効/無効)
・書体
・文字サイズ
・平体率
・長体率
・ベース角
・斜体角
・字間
・行間
・文字列反転フラグ(あり/なし)。
【0090】
図7に、以上示した印刷データのデータ構造に基いて、本実施形態に係る情報処理装置で作成された、印刷データファイルの一例を示す。
【0091】
この図7に示された印刷データは、図8に示すような形状の図形を印刷するためのものであり、本実施形態においては、図7に示す印刷データにより表現される図形が、基本図形の要素から成り、1個の線分列と2個の円と、これら3要素の外接矩形の左下点および右上点の2点(この2点は非表示で選択不可)から構成されるものとし、また、これら1個の線分列と2個の円が、それぞれ同じ表示属性(表示)、選択属性(選択可)、線属性(実線、線幅20mm)を持ち、互いに異なる色属性を持っているものとする。
【0092】
○グループ図形のデータ構造
それでは、上述した印刷データのデータ構造のうち、特に、グループ図形であるシンボルとイラストのデータ構造について、詳しく説明することにする。
【0093】
まず、シンボルのデータ構造について説明する。
【0094】
本実施形態において、シンボルとは、規格で定められた記号や、ロゴマークのように、繰り返し使用される図形で、図形データの要素(線分や円など)や、文字データの要素(テキスト)を組み合わせて、作成される要素である。
【0095】
シンボルデータの場合、規格が変更されるなどして、シンボルデータファイルの内容が更新された場合には、既に印刷データの一部としてレイアウト済みである、該当するシンボルを、全て更新してデータの同期を維持できるようになっている。
【0096】
そこで、本実施形態に係る情報処理装置では、シンボルのデータを、次に示すようなデータ構造で保持している。
【0097】
すなわち、印刷データ内には、シンボルデータファイルの存在場所を特定するための、フォルダー名称およびファイル名称、そして、シンボルをレイアウトするために必要な情報のみを保持する。
【0098】
また、印刷データをファイルに保存した印刷データファイルとは別個に、シンボルデータファイルを作成する。シンボルデータファイルは、次に示すようなファイル構造となっている。
・レイアウト基準矩形左下点座標:p1[2]
・レイアウト基準矩形右上点座標:p2[2]
・構成要素データ:任意の要素データ(複数)
・印刷属性データ:必要な印刷属性データ(複数)。
【0099】
レイアウト基準矩形については後述するが、レイアウト基準矩形を定めておけば、シンボルを印刷データとしてレイアウトする際に必要な、位置と大きさの情報を特定することが可能である。例えば、レイアウト基準矩形としては、シンボルの可視部分を囲む最小の矩形(外接矩形と呼ぶ)を指定しておくことなどが可能である。
【0100】
シンボルデータファイルを作成する際に、該当するシンボルの外接矩形のデータをレイアウト基準矩形として登録しておけば、シンボルデータファイルを再度、読み込んだ際などに、シンボルの外接矩形を再計算する必要がなくなる。
【0101】
シンボルの各構成要素データは、レイアウト基準矩形左下点を基準とする相対座標値で、表現されている。
【0102】
また、各印刷属性データについては、印刷データの場合と同様に、各構成要素データを表示する際に必要な印刷属性データを、要素データとは別に保持している。
【0103】
これによって、変更のあったシンボルを含む印刷データファイルの更新を行なわなくても、該当する印刷データファイルを、外部記憶装置33から、RAM32に再度、読み込んで来るだけで、印刷データ内のシンボルデータは最新のシンボルデータファイルの内容に置き換わり、データの同期が自動的に取れるようになっている。
【0104】
次に、もう一つのグループ図形であるイラストのデータ構造について説明する。
【0105】
本実施形態において、イラストとは、テンプレート図形のように、繰り返し使用される図形で、これもまた、シンボルと同様に、図形データの要素(線分や円など)や、文字データの要素(テキスト)を組み合わせて、作成される要素である。
【0106】
イラストは、シンボルとは異なり、いったん、印刷データの一部として、レイアウトされた後は、元のイラストデータファイルの内容とは、同期を取らずに、自由に変更を加えたい場合に使用される。
【0107】
従って、イラストデータの場合、シンボルデータとは異なり、イラストデータファイルの内容が更新された場合でも、既に印刷データの一部としてレイアウト済みである、該当するイラストを、更新して同期を維持することはない。
【0108】
そこで、本実施形態に係る情報処理装置では、イラストのデータを、次に示すようなデータ構造で保持している。
【0109】
すなわち、印刷データ内には、イラストデータファイルの存在場所を特定するための、フォルダー名称およびファイル名称、そして、イラストをレイアウトするために必要な情報、の他に、イラストデータファイルから読み込んだ、実際にイラストを構成する各要素データを保持している。
【0110】
また、印刷データファイルとは別個に、イラストデータファイルを作成する。イラストデータファイルは、次に示すようなファイル構造となっている。
・レイアウト基準矩形左下点座標:p1[2]
・レイアウト基準矩形右上点座標:p2[2]
・構成要素データ:任意の要素データ(複数)
・印刷属性データ:必要な印刷属性データ(複数)。
【0111】
この構造は、シンボルデータファイルのファイル構造と同様である。これを印刷データに読み込む際には、指定したレイアウト基準点座標を原点とし、指定したレイアウト角度、レイアウトスケールに従って、イラストデータファイル内の各構成要素データを展開して(座標変換して)、印刷データのイラスト要素データとして、全て保持する点が、シンボルとは異なっている。
【0112】
[印刷データの作成]
それでは、具体的に印刷データを作成する手順を詳細に説明する。本実施形態においては、図形データの例として、シンボルを作成する場合を説明する。
【0113】
○シンボルの作成
まず、図形データを作成する例として、図8に示すようなシンボルを作成する場合について説明する。
【0114】
この図8に示すシンボルは、2個の円要素、1個の線分列要素、といった基本図形から構成されている。ここでは、
(A)基本図形を印刷データとしてレイアウトする
(B)シンボルの構成要素をグループ化し、シンボルとして登録する
(C)登録されたシンボルを呼び出して、印刷データとしてレイアウトする
という、3つのフローに分けて説明する。
【0115】
まず、基本図形を印刷データとしてレイアウトする処理について説明する。
【0116】
(A)基本図形のレイアウト
図9に、基本図形を印刷データとしてレイアウトする手順を説明するフローチャートを示す。
【0117】
まず、基本図形を作成するために必要な、座標値や半径などの、必要情報を入力する(ステップS0901)。この必要情報の入力処理については、後で詳しく説明する。
【0118】
次に、図形データに印刷属性を付加して、印刷データとして使用できるようにする(ステップS0902)。この印刷属性の付加処理については、後で詳しく説明する。
【0119】
そして、ステップS0902で印刷属性が付加されると、次に、CPU21は、作成された基本図形要素のデータを、印刷データとして、RAM32に登録する(ステップS0903)。そして、さらに、CPU21は、作成された基本図形要素を、作画エリア62に表示する(ステップS0904)。
【0120】
以下、ステップS0901における必要情報の入力処理について説明する。
【0121】
これは、基本図形の種類によって異なった操作となる。
【0122】
例えば、円を作成する場合には、次のような操作となる。
(1)円の中心の位置を、マウス12で既に存在する点を要素選択、または任意指定したり、キーボード11でXおよびYの座標値を入力することによって指定する。
(2)円周上の1点の位置を、マウス12で既に存在する点を要素選択、または任意指定したり、キーボード11でXおよびYの座標値を入力することによって、指定する。または、キーボード11で半径を入力する。
【0123】
中心と円周上の1点、または、中心と半径を指定する上記の方法以外にも、円周上の異なる3点を指定する方法、円周上の異なる2点と半径を指定する方法、などがある。
【0124】
また、これらの操作手順は、ガイダンスエリア68に表示されるので、ユーザーは、この指示に従って、操作を行なえばよい。
【0125】
線分列を作成する場合には、次のような操作となる。
(1)線分列の始点の位置を、マウス12で既に存在する点を要素選択、または任意指定したり、キーボード11でXおよびYの座標値を入力することによって、指定する。
(2)同様にして、通過点をいくつでも指定する。
(3)汎用ボタン66を、ボタン選択することなどによって、通過点の指定の終了を指示する。
【0126】
次に、以下、ステップS0902における印刷属性の付加処理について説明する。
【0127】
まず、図形データの印刷属性の種類については、前述した通りである。
例として、図10に、印刷属性の付加されていない状態の図形データと、付加されている状態の図形データを示す。印刷属性が付加されていない状態では、線幅、終端形状、接続形状、などの違いが表現できていないことがわかる。印刷属性が付加されていない状態とは、前述した印刷属性データの構造の中で、属性設定フラグが無効となっている場合である。なお、属性設定フラグが無効となっている場合でも、図形データの形状は、所定の印刷属性で出力される。
印刷属性を、図形データの要素に付加するには、表示装置41に表示される専用のパネルが必要である。
【0128】
図11に、そのような図形データの要素を付加するために使用する、図形データ印刷属性編集パネル1101を示す。ユーザーは、この図形データ印刷属性編集パネル1101で、印刷属性を編集することができる。
【0129】
図形データ印刷属性編集パネル1101が表示された状態で、線種として、実線以外の種別を選択し、さらに、図形データ印刷属性編集パネル1101の、「線ピッチ」ボタンを、ボタン選択すると、図12に示すような、破線、一点鎖線、二点鎖線のそれぞれの種別に応じた、線ピッチ編集パネル1201が表示される。そして、この線ピッチ編集パネル1201上で、線ピッチデータを編集することが可能となる。図12に示したのは、二点鎖線の場合の表示例である。
【0130】
印刷属性を編集するには、図形データ印刷属性編集パネル1101上で、編集したい印刷属性の文字入力エリアを、マウス12またはキーボード11で指示し、キーボード11で、数値データを入力するか、または、選択する項目のボタンを、ボタン選択してから、「設定」ボタンを、ボタン選択すればよい。
【0131】
これから作成しようとする印刷データに対して、印刷属性の設定を行なう場合には、図形データ印刷属性編集パネル1101上で、上記の方法で各印刷属性の入力を行なってから、図形データの各要素を作成すればよい。
【0132】
また、いったん、印刷属性を設定しておけば、CPU21はこれらを、カレントな印刷属性として、RAM32に保存しておくので、要素を作成するたびに、印刷属性を設定する必要はない。
【0133】
また、プログラムを終了する際に、CPU21は、カレントな印刷属性を、外部記憶装置33に保存し、次に、プログラムを実行する際に、再び、RAM32に、読み込んで来るので、プログラムを実行するたびに、カレントな印刷属性を設定し直す必要もない。カレントな印刷属性は、ユーザーによらず共通のものと、ユーザーが各自設定した個別のものを、別々に、RAM32や外部記憶装置33に、保存しておくこともできる。
【0134】
すでに作成された印刷データに対して、印刷属性の編集を行なう場合には、作画エリア62に表示されている要素を要素選択すれば、CPU21が、図形データか文字データかを判断して、図形データの場合は、図形データ印刷属性編集パネル1101を、表示装置41に表示する。
【0135】
この際、要素選択された要素の現在の印刷属性が、図形データ印刷属性編集パネル1101に表示されるので、上記の方法で印刷属性を編集してから、「設定」ボタンを、ボタン選択すればよい。作画エリア62上の対象要素は、編集された新しい印刷属性に従って、再描画される。
【0136】
以上、基本図形を印刷データとしてレイアウトする手順を説明した。
次に、シンボルの構成要素をグループ化し、シンボルとして登録する処理について説明する。
【0137】
(B)要素のグループ化とシンボルの登録
図13に、シンボルの構成要素をグループ化し、シンボルとして登録する手順を説明するフローチャートを示す。
【0138】
まず、シンボルとして登録したい対象要素をグループ化する(ステップS1301)。この対象要素のグループ化処理については、後で詳しく説明する。
【0139】
次に、ステップS1301でシンボルを構成する要素が特定されると、CPU21は、この各要素について、印刷属性を考慮して、輪郭情報を抽出する(ステップS1302)。この輪郭情報の抽出処理については、後で詳しく説明する。
【0140】
ステップS1302で、対象となる各要素の輪郭情報を抽出した後、CPU21は、抽出した輪郭情報から、外接矩形を計算する(ステップS1303)。
ここでいう外接矩形とは、要素の可視部分を囲む最小サイズの矩形、のことであり、対角の2点のXおよびY座標を与えることによって特定される。
【0141】
このように、要素の外接矩形は、対角の2点によって特定できるので、抽出した輪郭情報から、最大のXおよびY座標、最小のXおよびY座標の値を算出し、外接矩形の左下点と右上点を、
左下点(輪郭情報の最小のX座標,輪郭情報の最小のY座標)
右上点(輪郭情報の最大のX座標,輪郭情報の最大のY座標)
と与えれば、外接矩形を容易に得ることができる。
【0142】
そして、ステップS1303で、グループ化された要素の外接矩形が求まると、CPU21は、作画エリア62に既に表示されているグループ化された要素に重ねて、その外接矩形を表示する(ステップS1304)。その表示は、例えば、図19のようになる。
【0143】
次に、グループ化された要素のレイアウト基準情報を定義するレイアウト基準矩形を設定する(ステップS1305)。このレイアウト基準矩形の設定処理については、後で詳しく説明する。
【0144】
そして、以上の一連の処理により、シンボルとして登録するための要素がグループ化され、そのレイアウト基準矩形が求まったので、そのシンボルを識別するキーとしてユーザーによりキーボード11等から入力された文字列を、シンボルの名称として決定する(ステップS1306)。
【0145】
最後に、CPU21は、先に図7で示したような構造を持つシンボルデータファイルとして、当該シンボルに関するデータを、外部記憶装置33に保存する(ステップS1307)。
【0146】
なお、このようにレイアウト基準矩形を設定した場合、図7に示すシンボルデータファイルの構造におけるレイアウト基準位置を明示的に指定しているわけではないが、シンボルデータファイルに保存する際には、レイアウト基準矩形の、例えば左下点を、常にレイアウト基準位置としておけばよい。
【0147】
また、シンボルを構成する各要素の座標データは、レイアウト基準位置からの相対座標で表現する。
【0148】
以下、ステップS1301における対象要素のグループ化処理について説明する。
【0149】
要素をグループ化するには、次のような方法がある。この方法は、要素をグループ化する場合に限らず、複数の要素をまとめて、複写、移動、削除などの処理を一括して行なう場合にも、使うことができる方法である。
【0150】
(1)連続要素選択:グループ化の対象とする要素を、1要素ずつ要素選択していく。要素選択を終了する際には、メインパネル61上の、汎用ボタン66を押すか、作画エリア62上で、マウスのどれかのボタンをダブルクリック(ボタンを短時間に2度押し下げる)する。
【0151】
(2)矩形領域指定:グループ化の対象とする要素が含まれる領域を、矩形で囲むことによって指定する。矩形を特定するためには、対角の2点の位置を、任意指定や点指定などの方法で指定すればよい。この場合、指定した矩形の内部に全体が含まれる要素を対象とする。
【0152】
図14に、この方法によって、対象となる要素が選択された状態の一例を示す。
【0153】
この図14において、*印で示した位置を指定すると、作画エリア62に、領域を示す矩形が表示される。図中、「選択」と示されている要素が選択され、実際には、赤色などで表示されて、識別できるようになっている。
【0154】
なお、指定した矩形の内部に一部が含まれる要素を対象としたり、指定した矩形の内部に全く含まれない要素を対象としてもよい。
【0155】
(3)任意領域指定:グループ化の対象とする要素が含まれる領域を、多角形で囲むことによって指定する。多角形を構成する各点は、任意指定や点指定などの方法で指定すればよい。この場合、指定した多角形の内部に一部が含まれる要素を対象とする。
【0156】
図15に、この方法によって、対象となる要素が選択された状態の一例を示す。
【0157】
この図15において、*印で示した位置を指定すると、作画エリア62に、領域を示す多角形が表示される。図中、「選択」と示されている要素が選択され、実際には、赤色などで表示されて、識別できるようになっている。
【0158】
なお、指定した多角形の内部に全体が含まれる要素を対象としたり、指定した多角形の内部に全く含まれない要素を対象としてもよい。
【0159】
次に、ステップS1302における輪郭情報の抽出処理について説明する。
【0160】
図16は、図8に示すシンボルの輪郭情報を抽出した結果を示した図である。
【0161】
輪郭情報は、線分、円、円弧、楕円、楕円弧、自由曲線などの、線要素が連結したものとして表現できる。ただし、輪郭情報においては、線幅などの印刷属性は考慮する必要はなく、それ自体、領域を持たない図形であると見なす。
【0162】
印刷属性の付加された、図形データおよび文字データの輪郭情報を抽出する方法には、以下のものがある。
【0163】
(1)そのまま表示装置に表示する方法:
本実施形態に係る情報処理装置では、図2で示したように、WYSIWYGの機能が実現されているので、印刷属性の付加されたデータは、印刷時の出力形態と同じ表示形態のイメージで、表示装置41に表示される。
【0164】
例えば、このWYSIWYGの機能が、ディスプレイポストスクリプト(DPS)によって、実現されている場合には、図形データまたは文字データの、輪郭情報を抽出するための、ポストスクリプト(PS)の命令(オペレータ)を、表示されている、図形データまたは文字データに対して、発行してやればよい。
【0165】
これによって得られる輪郭情報の座標データは、表示装置41の画面上のドットの大きさが最小単位となる量子化されたデータである。そのため、この値は、一般に、誤差を含んでいる。
【0166】
表示装置41の1ドットの幅および高さをDd(インチ)とすると、図17に示すように、実際の座標が、(b)や(c)のように、2つのドットの境界や、(d)のように、4つのドットの角の位置に一致する場合を考慮すると、得られる座標データの誤差は、最大で、Dd*2(インチ)となる。
【0167】
図17の、*印で示した位置が、量子化されていない実際の座標位置、斜線で示した矩形が、その時の画面上のドット、すなわち、量子化された値を示している。
【0168】
表示装置41の解像度Rdが、およそ、Rd=100(DPI)であるとすると、誤差は、
Dd*2=(1/Rd)*2 = 1/50(インチ) (式1)
程度となる。
【0169】
イメージセッター52などの、高解像度の印刷装置では、解像度Rpはおよそ、Rp=3000(DPI)程度であり、1ドットの幅および高さをDp(インチ)とすると、出力時の誤差は、
Dp*2=(1/Rp)*2 = 1/1500(インチ) (式2)
程度となり、表示装置41に表示した結果から得られる座標データでは、必ずしも、十分な精度があるとは言えない可能性が高い。
【0170】
しかし、この方法は、PSのオペレータを呼ぶだけで、図形データおよび文字データの輪郭情報を容易に得ることができるので、特に、表示装置41の解像度以上の高い精度を要求しない印刷データ、例えば、出版物や包装紙などの印刷データを作成する場合や、表示装置41の解像度以上の高い精度を要求する部分のある印刷データでも、他の要素や特定の座標値に、正確に合わせて出力する必要がない部分には、この方法を用いて、輪郭情報を抽出すれば十分である。
【0171】
(2)一時的に拡大して表示装置に表示する方法:
しかしながら、上記(1)の方法では、イメージセッター52などの印刷装置の解像度に相当する、高い精度を要求する印刷データで、しかも、他の要素や特定の座標値に、正確に合わせて出力する必要がある部分については、表示装置41とイメージセッター52などの印刷装置との解像度が異なるために、表示装置41上では、正確に輪郭情報を抽出したつもりでも、イメージセッター52などの印刷装置で印刷した際には、目に見える誤差となってしまう場合がある。
【0172】
上記(1)の方法では、表示装置41上での1ドットの誤差が、イメージセッター52に出力した際には、30ドットもの誤差となって、現れてしまうことになる。
【0173】
そこで、図形データまたは文字データの、輪郭情報を抽出する際に、ポストスクリプト(PS)の命令(オペレータ)を、図形データまたは文字データに対して発行する前に、対象となるデータを、一時的に拡大して表示してやれば、解像度による誤差を軽減できる。
【0174】
ただし、ここで言う「表示」とは、表示装置41に対してデータを送信するという意味であって、必ずしも、可視である必要はない。
【0175】
図18に、一時的に要素を拡大して表示装置に表示し、輪郭情報を抽出する手順を説明するフローチャートを示す。
【0176】
まず、拡大の倍率を決定する(ステップS1801)。拡大の倍率は、表示装置41とイメージセッター52の解像度の比率より大きくとればよい。従って、上記(1)の方法で示した解像度の場合、
Rp/Rd=3000/100 =30(倍) (式3)
より大きい倍率で、輪郭情報を得たい要素を拡大してやればよい。このとき、要素の印刷属性のうち、拡大の影響を受ける、線幅、終端形状、接続形状なども同じ倍率で拡大するようにする。
【0177】
次に、ステップS1801で決定された倍率で拡大した要素を、表示装置41に表示する(ステップS1802)。
【0178】
次に、上記(1)の方法と同様に、PSのオペレータなどを使用することによって、拡大した要素の輪郭情報を抽出する(ステップS1803)。ここで抽出された輪郭情報の精度は、イメージセッター52の精度に匹敵するものとなる。
【0179】
次に、抽出した輪郭情報を、拡大する前の大きさに復元する(ステップS1804)。
【0180】
最後に、輪郭情報を抽出するために使用した、一時的に拡大した要素のデータは、輪郭情報を抽出した後は不要となるので、消去する(ステップS1805)。
【0181】
(3)幾何学的な手法による方法:
次に、図44、図45、図46、図47を用いて幾何学的な手法による輪郭情報の抽出方法を述べる。
【0182】
図44は本実施形態による輪郭抽出手順を示すフローチャートである。まず、対象となる図形の形状データを外部記憶装置33または読み出し書き込み記憶装置(RAM)32に一時的に格納する(ステップS3001)。
【0183】
次に前記図形の種別に応じて処理を分ける。その種別を以下に記すように分別する(ステップS3002)。すなわち、
I類:線分や円などの通常図形、
II類:複数のラインで構成されるマルチライン図形、
III類:楕円や自由曲線などのようにオフセットにより作成される図形が元の図形の種別と異なる図形、
である。以下に前記分類処理にて各種類に分類された図形の処理について説明する。
【0184】
第I類:
線分や円などの図形はオフセット方向が定まっていればオフセット形状が単純に求まる。以下、印刷属性としてオフセット方向が両側に指定された線分を例に挙げて、第I類に分類される図形の輪郭抽出を説明する。図49は、印刷属性を考慮した線分(印刷属性:オフセット方向=両側)を示す図である。
【0185】
本例の場合、図49に示されるように、線分を定義する始点及び終点を結ぶ線の両側に、指定された線幅の1/2ずつ法線方向にオフセットした線分(オフセット線分1、オフセット線分2)が存在すると仮定すればよい。そして、この仮定線分(オフセット線分1、オフセット線分2)の始点及び終点座標を求める(ステップS3002)。その後、ステップS3005へ進み、当該図形の輪郭情報算出を行なう。
【0186】
次に、処理対象の図形が第II類であった場合の処理(ステップS3003)について図45を用いて具体的に説明する。図45は本実施形態によるマルチライン図形の輪郭抽出手順を示すフローチャートである。
【0187】
最初に元図形のマルチラインを構成する各セグメント(セグメントとはマルチラインを構成する各線分要素のことを示す)のオフセット図形を作成する。これらの各セグメントに対しては上述のステップS3002(図44)と同様な処理を行えばよい。しかしこれだけでは印刷属性として定義されている連結形状は考慮されていないので、更に以下の処理を実施する。
【0188】
まず入力されたマルチラインの印刷属性がマイター形状であるかの判定を行う(ステップS4002)。マイター形状については、図122で示した通りである。
【0189】
ステップS4002の判定処理で、当該連結形状がマイター形状であると判定された場合は、ステップS4003に進み、各セグメント間の連結がマイターリミットを超えるかの判定を行う。ここで、マイターリミットを越えるか否かの判定は次のように行なう。まず、マルチラインの隣り合う各セグメント間の角度θを算出する。そして、この角度θが以下の条件▲1▼、▲2▼を満たすかどうかを調べる。
【0190】
▲1▼ |θ| > 2*asin(1/M)
▲2▼ |π−θ| > 2*asin(1/M)
(但し、Mはマイター形状がマイターとして印刷または表示される限界値を示すマイターリミットを表す)
ここで、θが条件▲1▼、▲2▼のいずれかの条件を満たす場合、θはマイターリミットを超えるとし、どちらも満たさない場合はマイターリミットを超えないと判定する(ステップS4003)。
【0191】
さて、ステップS4003においてマイターリミットを超えると判断された場合、処理はステップS4004へ進む。ステップS4004では、その図形のマイターリミットを超える隣り合う2線分を直接結ぶ線分を挿入し、あたかもその接続がベベルであるかのように処理する(ステップS4004)。
【0192】
一方、ステップS4003においてマイターリミットを超えないと判定された場合、或いは、ステップS4002において接続形状がマイター形状でないと判定された場合には、処理はステップS4005へ進む。以下、マルチライン形状ではあるが、マイターリミットを越えない接続形状を有する部分、或いは、接続部分がマイター形状ではない部分の、隣り合う2セグメントについての処理を説明する。
【0193】
まず、ステップS4005において、分類された図形の隣り合う2線分のオフセット線分上に交点が存在するかのチェックを行う。もし交点が存在すれば交差している2線分を交点にて短縮、すなわち、交点よりはみ出す部分を除去する(ステップS4007)。一方、交点が存在しない場合は連結していないオフセット線分を無限の長さを持つ直線と仮定し、仮定直線の交点を求める。そして、この交点までオフセット線分を延長する(ステップS4006)。
【0194】
以上のような処理(ステップS4004,S4006,S4007)により作成されたオフセット線分を、読出書込記憶装置32や外部記憶装置33などの記憶エリアに格納する(ステップS4008)。
【0195】
次に入力図形の連結形状がラウンドであるかの判定を行う(ステップS4009)。そして、連結形状がラウンドであると判定された場合は、各ジョイント部位置を中心とする、線幅の1/2の半径をもつ円(仮想円)を読み出し、これを書込記憶装置32や外部記憶装置33などの記憶エリアに格納する。
【0196】
図50は連結形状がラウンドである場合の仮想円の作成を説明する図である。図50の(a)に示されているように、オフセット方向が両側である場合は、線分の交点を中心として、r=線幅/2を半径とする仮想円を配置することで連結形状がラウンドである輪郭形状を得られる。また、図50の(b)、(c)に示されるように、オフセット方向が外側或いは内側である場合は、線幅/2の位置にあるオフセット線分の交点を中心として、r=線幅/2を半径とする仮想円を配置すればよい。
【0197】
次に第III類に分類された図形の処理について、特にベジェ曲線の場合を例に挙げて説明する。本実施形態では、この種の図形に対して、印刷属性及び印刷装置の解像度を考慮した輪郭抽出を行なう。図46は本実施形態による、第III類の図形の輪郭抽出手順を表すフローチャートである。
【0198】
まず、当該図形の出力先となる出力機の解像度を入力する(ステップS5001)。出力機解像度の入力方法として、図51に示すような、表示装置41にメッセージを出力し、キーボード11やマウス12などの入力機器を通じて解像度の情報入力を行なうようにユーザを促してもよい。またあらかじめ読出専用記憶装置31や外部記憶装置33に出力機の解像度情報を格納したファイルを読み込むことも可能である。(ステップS5001)。
【0199】
次に入力された解像度情報に基づいて、輪郭抽出対象の図形の分割数を算出する(ステップS5002)。なお、ステップS5002の具体的な処理については後述する。
【0200】
次にDeCasteljauのベジェ分割アルゴリズムを用いてベジェ曲線を再帰的に分割する。DeCasteljauのアルゴリズムを用いて分割した曲線の例を図48に示す。分割回数はステップS5002で算出した分割数であり、分割した2曲線のうち最大x値を算出する場合は2曲線のうち最大x値を持つ曲線を、最小x値を算出しようとしている場合は最小x値を持つ曲線を次回の分割対象曲線とする。y値に対しても同様である。
【0201】
分割数が前記算出した解像度に応じた分割数に達した時点で、始点と終点を結ぶ複数の直線が得られる。これらの直線を印刷属性で定義されているオフセット方向に線幅/2だけオフセットする(ステップS5004)。そして、ステップS5004で得られたオフセット直線の始点、終点の最大値、最小値をベジェ曲線の輪郭情報とする(ステップS5005)。
【0202】
次にステップS5002の具体的な処理を図47を参照して説明する。図47は本実施形態によるベジェ曲線の分割数を決定するための処理を説明するフローチャートである。
【0203】
ステップS5001において入力された解像度が3000DPIであったとする。図形を保持するシステム内部において用いている単位系がmmであった場合は、入力された解像度をシステム内部の単位系に変換する必要がある。従って、まず、
3000DPI = (3000/25.4)DPmm (Dots per mm)
のようにして、3000DPIをmmに変換する。(ステップS7001)
次に最小分割線分長εを算出する。このεの値はステップS7001で算出された解像度を利用する。
【0204】
ε = 1/((3000/25.4)/1) = 0.00847
例えば、400DPIの場合だと、ε = 0.0635となる(ステップS7002)。
【0205】
次に、曲線をDeCasteljauのアルゴリズムを利用して分割する場合、その曲線の分割点を結ぶ直線と曲線の誤差をδとすると、その分割数と誤差δの関係は以下の式によって一般的に知られている(G.Wang,The subdivisional method of finding the intersection between two Bezier curves or surfaces ,Technical Report ,Zhenjian University Journal,1984)。
【0206】
ベジェ曲線の制御点が (xi,yi),(i=0,....n)で表される場合に,
L0 = max(|xi-2xi+1+xi+2|,|yi-2i+1+yi+2|)
としたとき、分割数r0は
r0 = log4((√2n)(n-1)L0/8δ)
となる。
【0207】
本実施形態では,出力機の解像度を元に算出した最小分割線分長εを上記式の誤差δに置き換えることによって分割数を算出する。すなわち、
r0 = log4((√2n)(n-1)L0/8ε)
によって、分割数r0が算出される。
【0208】
以上、図44におけるI類、II類、及びIII類の個別処理、図45におけるマルチラインの輪郭抽出処理、図46におけるIII類の図形の輪郭抽出についての詳細処理、図47における出力機の解像度に応じたベジェ曲線の分割数算出処理について説明した。
【0209】
次に図44におけるステップS3005及びS3006の処理について説明する。ステップS3002及びS3003において第I類及び第II類の図形のオフセット図形が読出書込記憶装置32や外部記憶装置33などの記憶エリアに格納されている。これらの図形は印刷属性のオフセット方向及び線幅を考慮して、図形のアウトラインに相当する図形、及びマルチライン図形の連結部に連結形状に相当する図形となっている。従って、ステップS3005では、線幅や印刷属性オフセット方向は考慮しないで、単純に幾何的に格納されている図形の最大(x,y),最小(x,y)を算出すればよい。
【0210】
ステップS3006では,最終的に図形の終端形状の印刷属性を考慮した図形の輪郭情報を抽出する。例えば,終端形状の印刷属性がフラット、スクエア、ラウンド(図62参照)と分類される場合について以下に具体的に記す。
【0211】
1.フラットキャップ
処理はしない。
【0212】
2.スクエアキャップ
図52は終端形状がスクエアキャップである場合の輪郭形状の抽出処理を説明する図である。終端形状がスクエアキャップである場合は、図形の端点における接線を求め、図52に示すように図形の「角」P1及びP2を算出する。このとき、図52の(a)〜(c)に示すように印刷属性が指定するオフセット方向を考慮しなければいけない。こうして獲得されたP1及びP2の座標を、ステップS3005またはS3004において既に算出されている輪郭情報と比較し、P1またはP2が最大、最小座標を超えるようであれば輪郭情報を更新する。
【0213】
3.ラウンドキャップ
図53は、終端形状がラウンドである場合の輪郭形状の抽出処理を説明する図である。図53に示すように、線幅及び印刷属性オフセット方向を考慮して図形の端点を算出する。例えば、(a)に示されるように、線幅のオフセット方向が両側である場合は、線分の端点を中心とした、r=線幅/2を半径とする仮想円を配置し、終端の輪郭形状を得る。また、オフセット方向が外側或いは内側である場合は、(b)或いは(c)に示されるように、線分をその法線方向に線幅/2だけ移動した位置に得られるオフセット線分の端点を中心として、r=線幅/2を半径とする仮想円を配置することで、終端の輪郭形状を得る。
【0214】
こうして配置された仮想円の輪郭情報をステップS3005またはS3004において既に算出されている輪郭情報と比較し、仮想円の輪郭がその最大、最小座標を超えるようであれば輪郭情報を更新する。
【0215】
(4)印刷装置に相当するソフトウエアまたはハードウエアに出力する方法:
上記(2)の方法では、一時的に要素を拡大してから、表示装置41に表示することによって、印刷装置との解像度の差によって生じる誤差を軽減しようとしたが、印刷装置の解像度に相当する精度を実現するソフトウエアまたはハードウエアに対してデータを出力することによって、高い精度の輪郭情報を抽出することもできる。
【0216】
上記のソフトウエアとは、イメージセッター52などの印刷装置が表現しうるドット数に相当するだけの十分な大きさを持った2次元の整数の配列に対して、データの読み書きを行なう機能を持ったソフトウエアのことである。
【0217】
また、上記のハードウエアとは、イメージセッター52などの印刷装置が表現しうるドット数に相当するだけの十分な大きさを持った2次元の表示データバッファに対して、データの読み書きを行なう機能を持ったハードウエアのことである。
【0218】
上記の、ソフトウエア、ハードウエア、のいずれの場合においても、描画命令(この例の場合は、PSのオペレータ)を解釈し、それをドットイメージに展開する機能を有することも必要である。
【0219】
次に、ステップS1305におけるレイアウト基準矩形の設定処理について説明する。
【0220】
まず、レイアウト基準矩形が定義するレイアウト基準情報について説明する。
【0221】
このレイアウト基準情報とは、要素を印刷データとしてレイアウトするための、位置と大きさの基準となる情報のことであり、要素ごとに保持する必要があり、本実施形態では、位置の基準を、レイアウト基準位置、大きさの基準を、レイアウト基準サイズ、と呼ぶ。
【0222】
また、レイアウト基準矩形を設定する場合に、該矩形の特徴点の1点を、後述するレイアウト処理時のレイアウト基準点に定めることができる。この矩形の特徴点には、図20に*印で示したように、矩形の角の点(4点)、各辺の中点(4点)、中心点、の9個の点がある。
【0223】
なお、レイアウト基準点は、あらかじめ特定の1点を決めておかなくても、レイアウト処理時に選択することもできる。その場合は、要素のレイアウト基準点を変更する変換(平行移動)が発生する。
【0224】
また、レイアウト基準矩形を設定するには、次のような方法がある。
【0225】
(1)任意矩形:作画エリア62上の任意の2点の位置を、任意指定、点指定、特徴点指定、交点指定、線上点指定、のいずれかの方法で指定することによって、指定した2点を対角点とする矩形を設定する。
【0226】
このうち、任意指定以外の、要素選択を伴う方法では、レイアウト基準矩形を設定する対象の要素、この例の場合では、グループ化された要素のいずれかを選択することが普通であるが、それ以外の要素を選択することも可能である。
【0227】
グループ化された要素に対して、構成要素の1つである円を選び、その円の中心点を特徴点指定、他の1点を任意指定して、レイアウト基準矩形とした場合の例を、図21に示す。
【0228】
(2)外接矩形:次のような外接矩形を算出する。
【0229】
・要素全体の外接矩形:対象とする要素全体の外接矩形を算出する。グループ化された要素の場合は、グループを構成する全要素についての外接矩形を算出する。
【0230】
グループ化された要素に対して、外接矩形を算出し、それをレイアウト基準矩形とした場合の例は、すでに、図19に示した通りである。
【0231】
・要素を構成する任意の要素の外接矩形:複数の要素を持つ、グループ図形の場合には、要素を構成する任意の要素を選択し、その外接矩形を算出することもできる。
【0232】
グループ化された要素に対して、構成要素の1つである円を選び、その円の外接矩形を算出し、それをレイアウト基準矩形とした場合の例を、図22に示す。
【0233】
以上、シンボルの構成要素をグループ化し、シンボルとして登録する手順を説明した。
【0234】
次に、登録されたシンボルを呼び出して、印刷データとしてレイアウトする処理について説明する。
【0235】
(C)シンボルの呼び出しとレイアウト
図23に、登録されたシンボルを呼び出して、印刷データとしてレイアウトする手順を説明するフローチャートを示す。
【0236】
まず、レイアウトしたいシンボルを選択する(ステップS2501)。
【0237】
具体的には、以下のような処理を行なう。
【0238】
まず、外部記憶装置33などに記憶されたシンボルを呼び出すために、メインパネル61上のボタン65中のコマンド「シンボル」のボタンを、ボタン選択するか、または、文字入力エリア64で、コマンド「シンボル」の名称を、キーボード11から入力する。
【0239】
すると、表示装置41には、図24に示すような、シンボルレイアウトパネル2601が、表示される。そして、保存されているシンボル名称一覧2602の中から、レイアウトしたいシンボルを、マウス12で選択する。また、その代わりに、シンボル名称入力エリア2604で、シンボル名称を、直接キーボード11から入力することもできる。その場合、シンボル名称一覧2602の選択状態は、シンボル名称入力エリア2604での入力処理と連動して変化する。
【0240】
記憶されているシンボルの数が多い場合には、シンボル検索条件入力エリア2603で、シンボル名称の一部をキーボード11から入力後に、リターンキーを押してもよい。その場合、入力した条件に該当するシンボル名称のみが、シンボル名称一覧2602に表示されるので、この中から、レイアウトしたいシンボルを、マウス12で選択すればよい。
【0241】
また、シンボルを選択する際に、名称だけでなく形状を見てから選択を行ないたい、という場合のために、必要に応じて、シンボルレイアウトパネル2601の、「一覧」ボタンを、ボタン選択することによって、図25に示すような、シンボル形状一覧パネル2701が、表示装置41に表示される。
【0242】
シンボル形状一覧が、複数ページにわたる場合は、総ページ数がシンボル形状一覧パネル2701に表示されるので、ページ番号入力エリア2702に、キーボード11で、直接ページ番号を入力するか、前ページボタン2703、または、次ページボタン2704を、ボタン選択することによって、現在表示されているページの、前後のページを表示することができる。
【0243】
そして、シンボル形状一覧2705から、レイアウトしたいシンボルを、マウス12で選択すると、シンボル名称一覧2602の選択状態は、これと連動して変化する。
【0244】
また、選択したシンボルの内容を、詳細に確認したい場合には、シンボルレイアウトパネル2601の、「内容」ボタンを、ボタン選択することによって、図26に示すような、シンボル内容確認パネル2801が、表示装置41に表示される。
【0245】
シンボル内容確認パネル2801には、シンボルの形状の他、レイアウト基準矩形などの情報も同時に表示される。図中、点線で示した矩形がレイアウト基準矩形であり、この図の場合、シンボル全体の外接矩形が、レイアウト基準矩形となっている。
【0246】
このようにして、レイアウトするシンボルが決まったら、次に、レイアウト基準位置を選択する(ステップS2502)。
【0247】
レイアウト基準位置は、シンボルレイアウトパネル2601上のレイアウト基準位置選択ボタン2605の中から1個を、ボタン選択することによって、選択することができる。このレイアウト基準位置選択ボタン2605の中に示された9つの基準位置は、それぞれレイアウト基準矩形の9個の特徴点に対応している。
【0248】
レイアウト基準位置を選択すると、シンボルデータファイルに保存されている、シンボルを構成する各要素の座標データは、RAM32に呼び出される際に、選択されたレイアウト基準位置からの相対座標での表現に変換される。
【0249】
また、レイアウトする際に必要な情報として、レイアウトサイズと、レイアウト角度を、入力する(ステップS2503)。
【0250】
レイアウトサイズとは、シンボルをレイアウトする際の大きさを指定するもので、例えば、レイアウト基準矩形の高さか幅の、一方を指定すればよい。その手順は、シンボルレイアウトパネル2601の、レイアウトサイズ選択ボタン2606の「高さ」ボタンまたは「幅」ボタンのいずれかを、ボタン選択した後に、レイアウトサイズ入力エリア2607に、キーボード11で、高さまたは幅の数値を入力すればよい。
【0251】
レイアウトサイズ入力エリア2607に、例えば、「0」などの特別な数値を入力した場合に、シンボルデータファイルに保存されている大きさのままで、シンボルをレイアウトするといったことも可能である。
【0252】
レイアウト角度とは、シンボルをレイアウトする際の角度を指定するもので、例えば、レイアウト基準矩形の、水平な辺(上辺または底辺)が、X軸の正方向となす角度で指定すればよい。その手順は、シンボルレイアウトパネル2601の、レイアウト角度入力エリア2608に、キーボード11から角度の数値を入力すればよい。
【0253】
以上の情報をすべて入力した後、シンボルのレイアウトを実行する場合には、シンボルレイアウトパネル2601の「実行」ボタンを、ボタン選択し、シンボルをレイアウトするのをやめる場合には、「取消」ボタンを、ボタン選択する。
【0254】
次に、選択されたシンボルを、作画エリア62においてレイアウトする位置を指定する(ステップS2504)。
【0255】
シンボルのレイアウト位置を指定する方法には、次のものがある。
【0256】
(1)点レイアウト:作画エリア62上の任意の位置を、任意指定、点指定、特徴点指定、交点指定、線上点指定、のいずれかの方法で指定する。この場合、指定した位置に、レイアウトするシンボルの、レイアウト基準位置が一致するように、レイアウトされる。
【0257】
(2)矩形レイアウト:作画エリア62上に、印刷データとしてすでに存在する矩形を、要素選択によって指定する。この場合、シンボルレイアウトパネル2601で指定したレイアウト基準位置とレイアウト角度によらず、指定した矩形の左上点に、レイアウトするシンボルの、レイアウト基準矩形の左上点が一致し、かつ、指定した矩形の左上点をはさむ2辺に、レイアウト基準矩形が沿うように、レイアウトされる。
【0258】
また、シンボルレイアウトパネル2601で、レイアウトサイズを、高さで指定している場合は、指定した矩形の高さに、レイアウト基準矩形の高さが一致するように、幅で指定している場合は、指定した矩形の幅に、レイアウト基準矩形の幅が一致するように、レイアウトされる。
【0259】
以上の操作が終わると、CPU21は、外部記憶装置33から呼び出されたシンボル要素のデータを、印刷データとして、RAM32に登録する(ステップS2505)。
【0260】
また、この際、ステップS1303で求めた、シンボル要素の外接矩形のデータを、シンボル要素のデータの一部として保存する(ステップS2506)。外接矩形のデータを要素データの一部として保持しておけば、例えば、指定した要素を作画エリア62いっぱいに表示したい、というような場合に、再度、輪郭情報を抽出する必要がない。
【0261】
そして、CPU21は、作成されたシンボル要素を、作画エリア62に表示する(ステップS2507)。
【0262】
なお、ステップS2506で保存した外接矩形を、明示的に作成するには、メインパネル61上のボタン65中の、矩形を描画するコマンド「矩形」のボタンを、ボタン選択するか、または、文字入力エリア64で、コマンド「矩形」の名称を、キーボード11から入力した後、コマンドメニュー67の「外接矩形」メニューを、ボタン選択してから、外接矩形を作成したい要素を、要素選択すればよい。
【0263】
以下、上記の方法で呼出したシンボルをレイアウトした場合の具体的な表示例を示す。
【0264】
図27は、シンボルの外接矩形をレイアウト基準矩形に設定し、矩形の左下点をレイアウト基準位置に選び、レイアウトサイズを高さで50mmと指定し、レイアウト角度を30度と指定して、当該シンボルを点レイアウトした場合の例である。なお、この図27では、説明のために、レイアウト基準矩形を同時に表示しているが、実際には、シンボルのみが表示される。もちろん、レイアウト基準矩形を同時に表示するように、仕様変更することも可能である。
【0265】
図28は、シンボルの外接矩形をレイアウト基準矩形に設定し、矩形レイアウトした場合の例である。図28(a)が、レイアウトサイズで高さを設定している場合であり、図28(b)が、レイアウトサイズで幅を設定している場合である。両図中において、破線で示した矩形が、レイアウトの対象となる矩形であり、実線で示した矩形が、レイアウト基準矩形である。なお、この図28では、説明のために、レイアウト基準矩形を同時に表示しているが、実際には、シンボルのみが表示される。もちろん、レイアウト基準矩形を同時に表示するように、仕様変更することも可能である。
【0266】
以上、登録されたシンボルを呼び出して、印刷データとしてレイアウトする手順を説明した。
【0267】
また、以上、図8に示すようなシンボルを作成する手順を、(A)基本図形を印刷データとしてレイアウトする、(B)シンボルの構成要素をグループ化し、シンボルとして登録する、(C)登録されたシンボルを呼び出して、印刷データとしてレイアウトする、という、3つのフローに分けて説明した。
【0268】
[印刷データの編集]
次に、作成された印刷データを、キーボード11、マウス12などの入力機器を介したユーザ指示に基づいて、中央処理装置CPU21によって処理する手順を説明する。本実施形態では拡大・縮小を行う編集処理について説明する。
【0269】
図42は、本実施形態による図形の編集処理の手順を説明するフローチャートである。まず、ステップS1001において、印刷属性の付加された印刷データを、編集対象として入力する。
【0270】
次に、印刷データの作成に関する記述で上述したように、印刷属性の付加された図形の中で拡大・縮小対象の図形要素をキーボード11やマウス12などを用いてユーザが任意の図形要素を選択する。選択の方法としては、前述の要素選択やボタン選択、任意指定、点指定、特徴点指定などを用いることができる(ステップS1002)。
【0271】
次に拡大・縮小サイズの指定を行う。表示装置41に図55に示すようなパネルを出力し、ユーザが希望するサイズをキーボード11やマウス12などを介して入力する。図55のパネルでは編集対象図形の高さと幅の比を一定に保つように「高さ指定」または「幅指定」のどちらかを選択するようにしている。また入力単位はmmとしている(ステップS1003)。
【0272】
次に前記選択された編集対象要素の輪郭情報の抽出を行う。輪郭抽出方法は前述の、
(1)そのまま表示装置に表示する方法
(2)一時的に拡大して表示装置に表示する方法
(3)幾何学的な手法による方法
(4)印刷装置に相当するソフトウェアまたはハードウェアに出力する方法
などを用いる(ステップS1004)。なお上記の手法のいずれかを用いて一度算出された輪郭情報は、外部記憶装置33や読出書込記憶装置(RAM)32に格納することによって、2度目のオペレーションでは算出する必要がなくなる。
【0273】
次に中央処理装置CPU21を用いて図形の拡大縮小率を算出する。算出方法は、ステップS1003の拡大・縮小サイズ入力処理において指定されたサイズと、ステップS1004において抽出された輪郭情報を用いて、拡大・縮小する比を算出する。例えば元の図形の輪郭情報が高さ12mm、幅15mmであり、この図形の高さを100mmに拡大するには、
拡大・縮小率 = 100/12 ≒ 8.333倍
とすればよい(ステップS1005)。
【0274】
ステップS1005において算出された拡大・縮小率を、ステップS1002で選択された図形要素にかけて、拡大、縮小処理を行なう(ステップS1006)。そして、変倍処理された図形を例図とする(ステップS1007)。
【0275】
ここで、拡大・縮小された図形要素をレイアウトするレイアウト処理を説明する。図56乃至図60は本実施形態によるレイアウト処理を説明するための図である。レイアウト位置を指定する方法としては、点指定方法があり、本実施形態ではこの方式を採用する。以下、図56乃至図60を参照してその詳細を説明する。
【0276】
拡大・縮小対象となる図形要素を選択した後、その要素上あるいは図形要素の近傍における基準点をキーボード11やマウス12を用いて入力する。さらに図形要素をレイアウトするために、前記基準点の入力と同様にキーボード11やマウス12などを用いて、拡大・縮小後の基準となる新基準点を入力する。元の基準点から新基準点まで平行移動するベクトルを算出し、図形要素の平行移動を行う。この平行移動後に、算出された拡大・縮小率をかける。
【0277】
以下、線分の場合を例に挙げて具体的に説明する。ここでは、始点(100,100)、終点(150,50)、元の基準点(50,50)、新基準点(200,200)、拡大縮小率2.5倍として説明を行なう。図56は元の線分(拡大前の線分)と元の基準点を示している。
【0278】
1.原点への平行移動
まず、元の基準点を原点に移動するベクトルを算出し、その移動ベクトルを元の線分の始点及び終点に与える。この結果、図57に示すように、基準点と線分が移動する。
【0279】
2.拡大・縮小
次に、原点において、指定された拡大・縮小率をかける。本例では、2.5をかけることになる。この結果、図58に示すように、元の線分が拡大する。
【0280】
3.元の基準点への移動
上述の1において行った原点移動の逆変換を行う。すなわち、原点にある基準点が元の基準点の位置(50,50)へ戻るように基準点及び拡大された線分を平行移動する。この結果、図59に示されるように基準点と線分が移動する。
【0281】
4.新基準点へ平行移動
次に、新基準点(200,200)が指定されると、元の基準点から新基準点への平行移動ベクトルが算出され、この平行移動ベクトルでもって線分を移動する。この結果、図60のようになる。
【0282】
次に、以上のようにしてレイアウトされた印刷属性の付加された図形、すなわち印刷データをファイルに保存するかのメッセージ(例えば図61)を表示装置41に表示し、ユーザに保存するかしないかの選択を促す。ユーザはキーボード11やマウス12などの入力手段を用い、印刷データを保存するかの確認を行う(S1008)。
【0283】
ここで「保存する」と選択された場合は、現在編集対象となっている印刷データを外部記憶装置33または読出書込記憶装置32に保存データとして書込む(ステップS1009)。
【0284】
なお、図42では、入力された印刷データを表示して、所望の図形を選択するが、拡大・縮小対象の図形要素を、現在編集対象となっている印刷データからだけではなく、外部記憶装置33や読出専用記憶装置(ROM)31などから入力することも可能である。図43は、そのような対象図形の選択を行なう場合の処理を示すフローチャートである。なお、図43において、ステップS2001、S2005〜S2011は、図42のステップS1001、S1003〜S1009と同じ処理である。
【0285】
ステップS2002では、表示装置41に対象となる図形要素を表示装置上に表示されたものから選択するのか、外部記憶装置33や読出専用記憶装置(ROM)31などに保存されているファイル内の図形要素から選択するのかを、ユーザが選択する(ステップS2002)。そして、外部記憶装置33や読出専用記憶装置(ROM)31上にあるファイル内の図形要素からの選択である場合は、ファイルより対象図形の図形情報を抽出する(ステップS2003)。
【0286】
[印刷データの印刷]
次に、作成された印刷データを、レーザープリンタ51やイメージセッター52などの印刷装置で印刷する手順を説明する。
【0287】
印刷データが、例えば、版下として使用される場合、レーザープリンタ51は、印刷データを、校正刷り(印刷データの確認のための出力)し、また、印刷ログファイルの内容を出力するのに用いられ、イメージセッター52は、印刷データを、清刷り(正式な版下となる高精度な出力)するのに用いられる。
【0288】
本実施形態に係る情報処理装置においては、図形データおよび文字データを、印刷時の出力形態と同じ表示形態のイメージで、表示装置41へ表示する制御を行なう、いわゆるWYSIWYGの機能を有している。
【0289】
しかしながら、 WYSIWYGの機能を有していても、表示装置41は、100DPI程度の解像度しかないため、細かいレイアウトの確認や、ミスのチェックなどを行なうためには、500DPI程度といった、表示装置41よりはるかに高い解像度を持つ、レーザープリンタ51で、印刷データを印刷しなければならない。
【0290】
もちろん、直接、イメージセッター52で印刷データを印刷して、これらの確認を行なうことも可能ではあるが、イメージセッター52は、解像度が3000DPI程度と、極めて高いために、専用の用紙を使用しなければならず、また、印刷のコストがかかり、出力のスピードが遅いなどの欠点があるので、最終的にイメージセッター52で印刷するような場合でも、あらかじめ、レーザープリンタ51で印刷データを印刷して、出力形態の確認を行なっておくのが普通である。
【0291】
図29に、作成された印刷データを、レーザープリンタ51やイメージセッター52などの印刷装置で印刷する手順を説明するフローチャートを示す。
【0292】
まず、印刷のコマンドを選択する(ステップS5201)。具体的には、以下のような処理を行なう。
【0293】
まず、メインパネル61上のボタン65の中の、コマンド「プリント」のボタンを、ボタン選択するか、または、文字入力エリア64で、コマンド「プリント」の名称を、キーボード11から入力する。
【0294】
すると、表示装置41には、コマンドメニュー67が表示される。コマンドメニュー67の項目には、
(1)校正刷り
(2)部分校正刷り
(3)清刷り
がある。ユーザーが、いずれかのメニュー項目をボタン選択することによって、印刷データの印刷処理が開始される。
【0295】
それでは、まず、ステップS5201において、「校正刷り」メニューがボタン選択された場合について、以下に説明する。
【0296】
「校正刷り」メニューをボタン選択した場合、CPU21によって、印刷装置として、レーザープリンタ51が選択される(ステップS5211)。
【0297】
そして、校正刷りが選択されたものとして、表示装置41には、図30に示すような、校正刷り出力条件設定パネル5301が表示される。校正刷り出力条件設定パネル5301では、次の各条件を設定する。
(1) 倍率
(2) 部数
(3) 紙サイズ
(4) 紙方向
まず、実寸の何倍で出力するかを、倍率入力エリア5302に、キーボード11で数値を入力する(ステップS5212)。
【0298】
次に、同じ印刷データを一度の印刷処理で何部出力するかを、部数入力エリア5303に、キーボード11で数値を入力する(ステップS5213)。
【0299】
次に、紙サイズ選択ボタン5304で、印刷データを印刷する用紙のサイズのボタンを1つ、ボタン選択する(ステップS5214)。ここで選択することのできる紙サイズの種類は、出力するレーザープリンタ51の仕様に従う。
【0300】
次に、紙方向選択ボタン5305で、印刷データを印刷する用紙の紙方向を、縦(Y方向が長い)/横(X方向が長い)/自動(ページ数が最少になる)のいずれかの中から1つ、ボタン選択する(ステップS5215)。
【0301】
校正刷りの出力条件の設定を行なった後、「実行」ボタンを、ボタン選択することによって、出力条件が決定される。
【0302】
次に、印刷データのうち、実際に出力の対象となる要素を、以下のような条件によって決定する(ステップS5216)。
【0303】
(1)レイヤー:レイヤーとは、個々の要素が所属する、印刷データの仮想的な階層であり、表示上では、要素の色などによって識別できる。レイヤーによって、常に出力の対象となるレイヤー、常に出力の対象とならないレイヤー、ユーザーが出力の対象とするかどうかを選択できるレイヤー、がある。
【0304】
(2)表示属性:非表示状態に設定されている要素やレイヤーは、出力の対象としない、などの条件である。ユーザーは、要素やレイヤーごとに、この条件を設定できる。
【0305】
(3)要素種別:常に出力の対象となる要素種別(トンボなど)、常に出力の対象とならない要素種別(点など)、ユーザーが出力の対象とするかどうかを選択できる要素種別(その他の要素種別)、がある。
【0306】
次に、CPU21は、実際に出力の対象となる全ての要素について、ステップS5212で設定した倍率をかけた状態での、要素の外接矩形を計算する(ステップS5217)。
【0307】
その際に、要素の外接矩形が、すでにCPU21によって計算され、要素のデータの一部として、 RAM32に保存されている場合には、保存されている外接矩形の情報に、倍率をかけるだけでよい。
【0308】
また、CPU21は、ステップS5214で設定した紙サイズから、印刷データを出力しない、上下左右の各方向の紙マージン部分を除いた、有効出力領域を計算する(ステップS5218)。
【0309】
ここで、紙サイズの情報、紙マージンの大きさの情報は、あらかじめ、外部記憶装置33などに保存されているものを、RAM32に読み込んで使用する。
【0310】
次に、ステップS5217で計算した外接矩形、およびステップS5218で計算した有効出力領域の情報から、CPU21は、印刷データを紙に出力したときの出力範囲と位置を決定する(ステップS5219)。
【0311】
1枚の紙に、印刷データを出力できる場合には、CPU21は、印刷データが紙の中央に出力されるように、出力位置を決定する。ここで、印刷データを、紙の左下、左上、右下、右上、などの位置に出力することも可能である。
【0312】
また、1枚の紙に、印刷データを出力できない場合には、CPU21は、印刷データを複数の紙に分割して出力する。このように、印刷データを、複数の紙に分割して出力する場合、境界部分の印刷データが完全に出力されるように、印刷データの一部をオーバーラップさせて、分割された両方の紙に出力させることもできる。
【0313】
また、ステップS5215で、紙方向を「自動」と選択した場合には、印刷用紙のページ数が最も少なくなるように、縦方向、横方向のいずれかが、CPU21によって選択された上で、出力範囲と位置が決定される。
【0314】
そして、実際に紙に出力する前に、ユーザーが出力範囲の確認を行えるように、CPU21は、作画エリア62に出力範囲を表示する(ステップS5220)。
【0315】
図31に、出力範囲を確認表示した一例を示す。図中の細線で示した矩形が、出力範囲である。これは、印刷データを1枚の紙に出力できる場合で、かつ、紙方向として、縦が選択された場合の例である。
【0316】
図32に、出力範囲を確認表示した別の例を示す。図31とは異なり、これは、印刷データを1枚の紙に出力できずに、4枚の紙に分割して出力する場合で、かつ、紙方向として、横が選択された場合の例である。
【0317】
ここで、図33に示すような、出力範囲確認パネル5601が表示される。そこで、ユーザーは、ステップS5220で表示された出力範囲を見て、印刷データを実際に紙に出力するかどうかを判断する。ユーザーは、出力範囲が適当であると判断した場合には、出力範囲確認パネル5601において、「実行」ボタンを、ボタン選択し、出力範囲が適当でないと判断した場合には、出力範囲確認パネル5601において、「取消」ボタンを、ボタン選択する(ステップS5221)。
【0318】
ここで、「実行」ボタンが、ボタン選択された場合は、印刷データの他に、出力時に付加される印刷付加情報である、印刷データ名称、出力日付および時間、出力ページ数、などを付加する(ステップS5222)。
【0319】
これらの印刷付加情報のうち、印刷データ名称は、あらかじめユーザーが設定しておいた情報が、RAM32から読み込まれる。また、出力日付および時間、出力ページ数は、CPU21が、出力時に設定する。
【0320】
また、印刷付加情報が出力される、用紙上の位置、文字の印刷属性などの情報は、あらかじめ外部記憶装置33などに保存されているものを、RAM32に読み込んで使用する。
【0321】
そして、印刷付加情報および印刷データが、実際に、レーザープリンタ51から、紙に出力され、いわゆる校正刷り出力が実行される(ステップS5223)。
【0322】
一方、ステップS5221において、「取消」ボタンが、ボタン選択された場合は、印刷データの出力は行なわれずに、校正刷り出力条件設定パネル5301が、再び表示されるので、ステップS5212に戻り、ユーザーは、再度、倍率などの出力条件を設定し直せばよい。
【0323】
それでは、次に、ステップS5201において、「部分校正刷り」メニューがボタン選択された場合について、説明する。
「部分校正刷り」メニューを、ボタン選択した場合、CPU21によって、印刷装置として、レーザープリンタ51が選択される(ステップS5231)。
【0324】
このように、部分校正刷りが選択された場合、次に、ユーザに対して、出力する要素を選択するように求める指示が、ガイダンスエリア68に表示されるので、ユーザーは、この指示に従って、要素を選択する。要素の選択方法は、前述の、要素をグループ化する場合と同様、連続要素選択、矩形領域指定、任意領域指定、のいずれかの方法をとればよい(ステップS5232)。
【0325】
要素の選択が終了すると、表示装置41には、図30に示すような、校正刷り出力条件設定パネル5301が表示される。
【0326】
以下、ステップS5212からステップS5223までの処理は、校正刷りの場合と同様であるため、説明を省略する。
【0327】
それでは、次に、ステップS5201において、「清刷り」メニューがボタン選択された場合について、説明する。
【0328】
図34に、印刷データを清刷り出力する手順を説明するフローチャートを示す。
【0329】
まず、「清刷り」メニューを、ボタン選択した場合、CPU21によって、印刷装置として、イメージセッター52が選択される(ステップS5711)。
【0330】
そして、清刷りが選択されたものとして、表示装置41には、図35に示すような、清刷り出力条件設定パネル5801が表示される。清刷り出力条件設定パネル5801では、次の各条件を設定する。
(1) 倍率
(2) 部数
(3) ラベル
(4) 図面枠
まず、実寸の何倍で出力するかを、倍率入力エリア5802に、キーボード11で数値入力する(ステップS5712)。
【0331】
次に、同じ印刷データを一度の印刷処理で何部出力するかを、部数入力エリア5803に、キーボード11で数値入力する(ステップS5713)。
【0332】
次に、印刷データに添付するための定型のラベルを、印刷データと共に出力するか否かを、ラベル出力選択ボタン5804で、ボタン選択する(ステップS5714)。このラベルには、版下名称、部品番号、部品名称、作成者名および日付、承認者名および日付、尺度、訂正履歴、などの情報が出力される。
【0333】
次に、図面枠を、印刷データと共に出力するか否かを、図面枠出力選択ボタン5805で、ボタン選択する(ステップS5715)。この図面枠とは、出力した印刷データの、図面としての範囲を示す矩形であって、通常、紙サイズの端から、一定の長さだけ内側にオフセットさせた矩形となる。
【0334】
このようにして、清刷りの出力条件の設定を行なった後、「実行」ボタンを、ボタン選択することによって、出力条件が決定される。
【0335】
次に、出力対象要素を決定し(ステップS5716)、その出力対象要素の外接矩形を計算する(ステップS5717)。これらの処理は、校正刷りの場合の、ステップS5216、及びステップS5217と同様である。
【0336】
次に、ステップS5717で計算された外接矩形の情報から、CPU21は、紙サイズ(印刷データを全て出力できる最小のAnサイズ)および紙方向を決定する(ステップS5718)。
【0337】
清刷り出力の場合、印刷用紙の枚数が少なくなるようにした方が、コスト、スピードなどの点で、効率がよいので、可能ならば、複数の印刷データを、1枚の印刷用紙に出力するようになっている。ここでいう印刷用紙とは、実際に、イメージセッター52で使用する用紙のことで、紙サイズとは異なる。紙サイズとは、単一の印刷データを出力するために必要な領域のサイズのことである。
【0338】
次に、CPU21は、印刷データが紙の中央に出力されるように、出力位置を決定する(ステップS5719)。ここで、印刷データを、紙の左下、左上、右下、右上、などの位置に出力することも可能である。
【0339】
そして、実際に紙に出力する前に、ユーザーが出力範囲の確認を行なえるように、CPU21は、作画エリア62に出力範囲を表示する(ステップS5720)。
【0340】
ここで、図33に示すような、出力範囲確認パネル5601が表示される。そこで、ユーザーは、ステップS5720で表示された出力範囲を見て、印刷データを実際に紙に出力するかどうかを判断する。ユーザーは、出力範囲が適当であると判断した場合には、出力範囲確認パネル5601において、「実行」ボタンを、ボタン選択し、出力範囲が適当でないと判断した場合には、出力範囲確認パネル5601において、「取消」ボタンを、ボタン選択する(ステップS5721)。
【0341】
ここで、「実行」ボタンが、ボタン選択された場合は、次のステップに進む。一方、「取消」ボタンが、ボタン選択された場合は、印刷データの出力は行なわれずに、清刷り出力条件設定パネル5801が、再び表示され、ステップS5212に戻り、ユーザーは、再度、倍率などの出力条件を設定し直すことができる。
【0342】
次に、ステップS5714で「ラベル」の項目を「あり」と選択していた場合には、CPU21は、ラベルデータを作成する(ステップS5722)。
【0343】
図36に、清刷り用ラベルの一例を示す。これは、写真製版用の版下に付けられるラベルの例で、ラベルの項目には、版下番号、部品番号、略式、承認者名、検証者名、作成者名、製品記号、日付、尺度、訂正履歴、などがある。
【0344】
このラベルの枠やタイトル文字などの固定部分の情報は、あらかじめ外部記憶装置33などに保存されているものを、RAM32に読み込んで使用する。また、ラベルの各項目の内容は、印刷データをファイルに保存する際に、図37に示すようなファイル保存パネル6001で入力されて、外部記憶装置33などに保存され、 その保存されたものを、RAM32に読み込んで使用する。
【0345】
また、作成者名や承認者名の情報は、ユーザーがパネルから入力するのではなく、CPU21が、現在のユーザー名を認識して設定するようにしてもよい。日付の情報も、CPU21が、現在の日付を設定するようにしてもよい。
【0346】
また、ラベルは、紙サイズの右下などの決められた位置に、決められた大きさで、出力される。ラベルの位置に関しては、このほか、左上、左下、右上、などの位置から選択できるようにしたり、任意の位置を指定できるようにしたりすることも可能である。
【0347】
また、ラベルのフォームを、用途に応じて数種類用意しておいて、外部記憶装置33などに保存しておき、ステップS5714でラベル出力が「あり」と指定された場合に、保存されたフォームを選択できるようにしてもよい。
【0348】
次に、ステップS5715で「図面枠」の項目が「あり」と選択された場合には、CPU21は、図面枠データを作成する(ステップS5723)。
【0349】
図38に、図面枠と紙サイズの関係を示す。この図38では、ラベルは図面枠の右下に設定されている。
【0350】
図面枠の線幅や、紙サイズごとの出力位置と大きさの情報は、あらかじめ、外部記憶装置33などに保存されているものを、RAM32に読み込んで使用する。CPU21は、ステップS5718で決定された、紙サイズに応じた図面枠の出力位置と大きさを決定する。
【0351】
以上の処理により、単一の印刷データを清刷り出力するためのデータが作成される。実際に清刷り出力する際には、複数の印刷データを指定することができるので、継続して、次の印刷データを清刷り出力する場合には、出力条件を設定するステップ(ステップS5712)から、図面枠データを作成するステップ(ステップS5723)までの処理を繰り返す(ステップS5724)。
【0352】
複数の印刷データの指定が終了すると、次に、CPU21は、印刷用紙に、複数の印刷データをどのように配置するかを決定する(ステップS5725)。イメージセッター52に出力する場合の最適な配置とは、印刷用紙の枚数が最も少なくなるように、各印刷データを配置することである。この印刷データの最適配置処理については、後で詳細に説明する。
【0353】
次に、清刷り出力の印刷ログファイルを作成する(ステップS5726)。印刷ログファイルには、以下の情報が記述され、イメージセッター52から出力される版下の出力内容がわかるようになっている。図41に、印刷ログファイルの出力例を示す。
【0354】
(1)出力時刻、出力者、ページ数:実際に印刷データを出力した日付および時刻、出力者の氏名、ページ数、などを記述する。
【0355】
(2)印刷用紙の配置図:印刷用紙に、各印刷データがどのように配置されているかの概略図を作成する。配置図には、各印刷データの配置がわかるように、記号を付ける。
【0356】
(3)出力データのリスト:配置図に示した記号、出力条件の情報(紙サイズ、紙方向、など)、ラベルの情報(版下名称、部品番号、部品名称、作成者名および日付、承認者名および日付、尺度、など)を、リスト形式で記述する。
【0357】
以上で、清刷り出力用のデータは、全て作成されたので、CPU21は、印刷データを、イメージセッター52で印刷する(ステップS5727)。
また、印刷ログファイルデータを、レーザープリンタ51で印刷する(ステップS5728)。
【0358】
次に、ステップS5725における印刷データの最適配置処理について、詳細に説明する。ここでは、印刷用紙サイズがAmサイズ、各印刷データの紙サイズがAnサイズ(m>=n)であるとする。
【0359】
図39に、印刷データを最適配置する際のフローチャートを示す。
【0360】
まず、印刷用紙のサイズを指定する(ステップS6201)。使用する印刷用紙サイズが、あらかじめ決まっている場合には、このステップを省略することもできる。
【0361】
次に、出力する各印刷データの紙サイズを大きい順に並べ換える(ステップS6202)。同じ大きさの印刷データの間では、どのような順番でも構わない。
【0362】
そして、CPU21は、出力する印刷データが存在するかどうかを判定する(ステップS6203)。出力する印刷データが存在する場合は、次のステップS6204に進む。出力する印刷データが存在しない場合は、印刷データ最適配置の処理を終了する。
【0363】
次に、出力する印刷データが、カレントな印刷用紙に配置可能かどうかを判定する(ステップS6204)。カレントな印刷用紙に配置可能な場合には、次のステップS6206に進む。配置可能でない場合には、現在の印刷用紙への配置は終了し、次の印刷用紙に着目して、カレントな印刷用紙に設定してから(ステップS6205)、再度、カレントな印刷用紙に配置可能かどうかを判定する。
【0364】
次に、出力する印刷データの方向を変更する必要があるかどうかを判定する(ステップS6206)。方向を変更する必要がある場合には、出力する印刷データを全て90度回転させて方向を変更する(ステップS6207)。方向を変更する必要がない場合には、そのまま、次のステップS6208に進む。
【0365】
そして、出力する印刷データを、カレントな印刷用紙に配置する(ステップS6208)。
【0366】
以上で、単一の印刷データを印刷用紙に配置する処理が終了する。複数の印刷データの全てが、印刷用紙に配置されるまで、出力する印刷データの有無を判定するステップ(ステップS6203)から、出力する印刷データを印刷用紙に配置するステップ(ステップS6208)を繰り返す。
【0367】
例えば、印刷用紙サイズがA1であるとし、A2の印刷データが1枚(名称A21とする)、A3が3枚(A31、A32、A33)、A4が3枚(A41、A42、A43)あったとすると、印刷データは、A21、A31、A32、A33、A41、A42、A43、という順番に並べ換えられる。
【0368】
図40は、このA21からA43までの印刷データを、A1サイズの印刷用紙に、最適配置した結果の一例である。
【0369】
この図40の例では、A21、A31、A32、までは、1枚目の印刷用紙に配置可能であるが、次のA33は、1枚目の印刷用紙に配置不可能となるので、カレントな印刷用紙を、2枚目に移動し、A33は、2枚目の印刷用紙に配置可能となる。
【0370】
また、この図40の例では、例えば、A21の紙方向が縦だった場合に、A21を印刷用紙に配置する際に使用される領域が、横方向となるので、A21の印刷データを全て90度回転させて、方向を変更しなければならない。
【0371】
以上、作成された印刷データを、レーザープリンタ51やイメージセッター52などの印刷装置で印刷する手順を説明した。
【0372】
以上説明したように、上記実施形態によれば、印刷属性の付加された図形を入力し、拡大・縮小対象となる図形及びその拡大・縮小サイズを指定し、印刷属性を考慮した輪郭情報を抽出し、拡大・縮小サイズに基づいて図形の拡大・縮小率を算出し、ユーザの指定位置にレイアウトすることが可能となる。このため、図形作成時において線幅、終端形状、連結形状、オフセット方向などの情報を考慮した図形作成及び編集が可能になるという効果がある。さらにアウトライン図形を作成する作業が不要になるのでユーザの作業効率を低下させることなく精密な図形編集が可能になるという効果がある。さらに自由曲線や楕円などの図形要素も正確にユーザが意図する大きさに編集することが可能になるという効果がある。さらに出力機の解像度を参照、図形の拡大・縮小を行うことによって、出力機の精度と計算機の精度の誤差をなくすことが可能になり、より精密に拡大・縮小処理が行えるという効果がある。
【0373】
[他の実施形態]
図44に示した輪郭抽出手順の、第III類の図形に対する処理として、分割処理を用いた輪郭情報算出処理(ステップS3004)の具体的な処理を図46に示している。ここで、ステップS5001においては、出力機の解像度の入力を行っているが、解像度を直接的に入力する代わりに、出力機を選択するようにすることもできる。具体的には、例えば、表示装置41に、図54に示すようなパネル(ウィンドウ)を表示し、キーボード11やマウス12などの入力手段を用いて、出力対象となる出力機を選択する。あらかじめ外部記憶装置33や読出専用記憶装置(ROM)31などに、各出力機に対応した解像度情報を格納してあれば、その解像度情報を参照することができる。またネットワークに接続されている出力装置の解像度情報をその都度参照することも可能である。
【0374】
また、図42で図形の処理(変倍)手順を説明した。この処理のステップS1003において、拡大・縮小サイズを指定する際に高さあるいは幅の入力を行うように示したが、高さ及び幅を独立に同時に指定することも可能である。この場合、x方向(幅)に対する倍率、y方向(高さ)に対する倍率を独自に算出し、x方向(幅)、y方向(高さ)独立で変倍する必要がある。更に前記拡大・縮小サイズ指定では入力単位をmmとしたが、入力単位はinch,feet,meterなど様々な単位設定できるようにすることも可能であることは明らかであろう。
【0375】
なお、本発明は、複数の機器(例えばホストコンピュータ,インタフェイス機器,リーダ,プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置に適用してもよい。
【0376】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【0377】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0378】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
【0379】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0380】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0381】
【発明の効果】
以上説明したように、本発明によれば、ユーザーの作業効率を低下させることなく、しかも、印刷データに関して高精度に図形の変倍を行なえる。
【図面の簡単な説明】
【図1】本発明の一実施形態の情報処理装置のハードウエア構成を示すブロック図である。
【図2】WYSIWYGの機能を説明する図である。
【図3】本実施形態のプログラムのメインパネルを示す図である。
【図4】各要素の特徴点を示す図である。
【図5】交点指定による位置の指定の例を示す図である。
【図6】線上点指定による位置の指定の例を示す図である。
【図7】印刷データファイルの例を示す図である。
【図8】シンボルの例を示す図である。
【図9】基本図形を印刷データとしてレイアウトする手順を説明するフローチャートである。
【図10】図形データに印刷属性を付加した例を示す図である。
【図11】図形データ印刷属性編集パネルを示す図である。
【図12】線ピッチ編集パネル(二点鎖線の例)を示す図である。
【図13】要素のグループ化とシンボルの登録をする手順を説明するフローチャートである。
【図14】矩形領域指定によって対象となる要素が選択された様子を示す図である。
【図15】任意領域指定によって対象となる要素が選択された様子を示す図である。
【図16】シンボルの輪郭情報を抽出した結果の例を示す図である。
【図17】座標データの量子化を説明する図である。
【図18】一時的に要素を拡大表示して輪郭情報を抽出する手順を説明するフローチャートである。
【図19】グループ化された要素とその外接矩形を示す図である。
【図20】矩形の特徴点を示す図である。
【図21】任意矩形をグループ図形のレイアウト基準矩形に設定した例を示す図である。
【図22】構成要素の外接矩形をグループ図形のレイアウト基準矩形に設定した例を示す図である。
【図23】シンボルの呼び出しとレイアウトをする手順を説明するフローチャートである。
【図24】シンボルレイアウトパネルを示す図である。
【図25】シンボル形状一覧パネルを示す図である。
【図26】シンボル内容確認パネルを示す図である。
【図27】シンボルを点レイアウトした例を示す図である。
【図28】シンボルを矩形レイアウトした例を示す図である。
【図29】印刷データを出力する手順を説明するフローチャートである。
【図30】校正刷り出力条件設定パネルを示す図である。
【図31】出力範囲を確認表示した例(1枚の紙に出力できる場合)を示す図である。
【図32】出力範囲を確認表示した例(1枚の紙に出力できない場合)を示す図である。
【図33】出力範囲確認パネルを示す図である。
【図34】印刷データを清刷り出力する手順を説明するフローチャートである。
【図35】清刷り出力条件設定パネルを示す図である。
【図36】清刷り用ラベルの例を示す図である。
【図37】ファイル保存パネルを示す図である。
【図38】図面枠と紙サイズの関係を示す図である。
【図39】印刷データを最適配置する手順を説明するフローチャートである。
【図40】印刷データを最適配置した結果の例を示す図である。
【図41】印刷ログファイルの出力例を示す図である。
【図42】本実施形態の動作制御手順を示すフローチャートである。
【図43】本実施形態の動作制御手順を示すフローチャートである。
【図44】本実施形態の輪郭抽出手順を表すフローチャートである。
【図45】本実施形態のマルチライン輪郭抽出手順を示すフローチャート4である。
【図46】本実施形態の第III類図形に対する輪郭抽出手順を示すフローチャートである。
【図47】本実施形態の出力機の解像度に応じたベジェ曲線の分割数算出手順を示すフローチャートである。
【図48】 De Casteljauのアルゴリズムを用いてベジェ曲線を分割する様子を説明する図である。
【図49】印刷属性を考慮した線分(オフセット線分の作成)を示す図である。
【図50】連結形状ラウンドの仮想円の作成を表す図である。
【図51】出力機の解像度入力画面(ウィンドウ)を示す図である。
【図52】終端形状スクエアキャップ処理を示す図である。
【図53】終端形状ラウンドキャップ処理を示す図である。
【図54】出力機入力画面(ウィンドウ)を示す図である。
【図55】拡大・縮小サイズ入力画面(ウィンドウ)を示す図である。
【図56】本実施形態による線分の拡大処理を説明する図である。
【図57】本実施形態による線分の拡大処理を説明する図である。
【図58】本実施形態による線分の拡大処理を説明する図である。
【図59】本実施形態による線分の拡大処理を説明する図である。
【図60】本実施形態による線分の拡大処理を説明する図である。
【図61】印刷データの保存確認(ウィンドウ)を示す図である。
【図62】終端形状の種類を説明する図である。
【図63】接続形状の種類を説明する図である。
Claims (25)
- 印刷属性の付加された図形データを記憶する記憶手段と、
前記記憶手段に記憶された図形データに付加された印刷属性に基づいて、該図形データの輪郭情報を抽出する輪郭情報抽出手段と、
前記輪郭情報抽出手段により抽出された輪郭情報に基づいて、当該図形の変倍処理を実行する変倍手段とを備え、
前記輪郭情報抽出手段は、
印刷情報に基づいて、単一の線分または円からなる通常図形が属する第1分類と、複数のラインからなるマルチライン図形が属する第2分類と、オフセットにより作成される図形が元の図形の種別と異なる図形が属する第3分類とのいずれかに、前記対象図形を分類する分類手段と、
前記分類手段における各分類に応じて前記輪郭情報の抽出を行なう抽出手段とを備えることを特徴とする図形処理装置。 - 拡大もしくは縮小サイズを指定する変倍指定手段を更に備え、
前記変倍手段は、前記輪郭情報抽出手段により抽出された輪郭情報より得られるサイズと、前記変倍指定手段で指定された拡大もしくは縮小サイズとに基づいて変倍率を計算し、該変倍率に基づいて変倍処理を行なうことを特徴とする請求項1に記載の図形処理装置。 - 前記抽出手段は、
輪郭情報抽出の対象となる図形が前記第1分類に分類された場合、該図形に付加された印刷情報からオフセット方向を取得してオフセット処理を行ない、当該図形の輪郭を抽出することを特徴とする請求項1に記載の図形処理装置。 - 前記抽出手段は、
輪郭情報抽出の対象となる図形が前記第2分類に分類された場合、隣り合うラインがマイター形状を有して接続され、その接続部の角度が所定角度より大きいかどうかを該図形に付加された印刷情報に基づいて判定する判定手段を有し、
前記判定手段により、前記隣り合うラインがマイター形状を有しかつその角度が前記所定角度より大きいと判定された場合、該隣り合うラインのオフセット処理された図形の接続形状をベベルとして輪郭抽出を行なうことを特徴とする請求項1に記載の図形処理装置。 - 前記抽出手段は、
前記判定手段により、前記輪郭情報抽出の対象となる図形において、隣り合うラインがマイター形状を有して接続され、その接続部の角度が前記所定角度以下であると判定された場合、該隣り合うラインのオフセット図形の交差している2線分を交点にて短縮する手段を更に有することを特徴とする請求項4に記載の図形処理装置。 - 前記抽出手段は、
前記判定手段により、前記輪郭情報抽出の対象となる図形において、隣り合うラインがマイター形状を有していないと判定された場合、オフセット図形の隣り合う2線分より得られるオフセット線分上の交点の有無を交点判定手段と、
前記交点判定手段において交点なしと判定された場合、連結していない2つのオフセット線分を両者が交差するまで延長する手段と、
前記交点判定手段において交点ありと判定された場合、オフセット線分の交差している位置より先端側にある部分を除去する手段とを有することを特徴とする請求項4に記載の図形処理装置。 - 前記抽出手段は、
輪郭情報抽出の対象となる図形が前記第3分類に分類された場合、該図形を複数のセグメントに分割する分割手段と、
前記分割手段で分割されたセグメントについてオフセット処理を行ない、輪郭情報を算出する算出手段とを備えることを特徴とする請求項1に記載の図形処理装置。 - 前記分割手段は、
出力機の解像度に応じた分割数を算出する算出手段と、
前記算出手段で算出された分割数に基づいて前記図形を再帰的に分割する再帰分割手段とを備え、
前記再帰分割手段による前記図形の分割後に得られる近似直線をセグメントとすることを特徴とする請求項7に記載の図形処理装置。 - 前記再帰分割手段は、前記図形がベジェ曲線である場合に、DeCasteljauのアルゴリズムを用いて前記図形の再帰分割を行うことを特徴とする請求項8に記載の図形処理装置。
- 前記算出手段は、
前記出力機の解像度に基づいて最小分割線長εを算出し、
ベジェ曲線のn個の制御点が、(xi,yi)(但し、i=0〜n)である場合に、
L0 = max(|xi-2xi+1+xi+2|,|yi-2yi+1+yi+2|)
r0 = log4((√2n)(n-1)L0)/8ε)
を計算し、r0を前記分割数として得ることを特徴とする請求項9に記載の図形処理装置。 - 前記抽出手段は、
処理対象の図形の連結形状がラウンドであるか判定する連結形状判定手段を備え、
前記連結形状判定手段においてラウンドと判定された場合、オフセット図形の各ジョイント部の座標を中心とする線幅の1/2の半径をもつ円を輪郭形状とすることを特徴とする請求項1に記載の図形処理装置。 - 前記抽出手段は、
前記処理対象の図形の終端形状を特定し、特定された終端形状に基づいて該処理対象の図形の終端部の輪郭形状を決定する終端部輪郭形状決定手段を更に備えることを特徴とする請求項1に記載の図形処理装置。 - 印刷属性の付加された図形データを記憶手段に記憶する記憶工程と、
前記記憶手段に記憶された図形データに付加された印刷属性に基づいて、該図形データの輪郭情報を抽出する輪郭情報抽出工程と、
前記輪郭情報抽出工程により抽出された輪郭情報に基づいて、当該図形の変倍処理を実行する変倍工程とを備え、
前記輪郭情報抽出工程は、
印刷情報に基づいて、単一の線分または円からなる通常図形が属する第1分類と、複数のラインからなるマルチライン図形が属する第2分類と、オフセットにより作成される図形が元の図形の種別と異なる図形が属する第3分類とのいずれかに、前記対象図形を分類する分類工程と、
前記分類工程における各分類に応じて前記輪郭情報の抽出を行なう抽出工程とを備えることを特徴とする図形処理方法。 - 拡大もしくは縮小サイズを指定する変倍指定工程を更に備え、
前記変倍工程は、前記輪郭情報抽出工程により抽出された輪郭情報より得られるサイズと、前記変倍指定工程で指定された拡大もしくは縮小サイズとに基づいて変倍率を計算し、該変倍率に基づいて変倍処理を行なうことを特徴とする請求項13に記載の図形処理方法。 - 前記抽出工程は、
輪郭情報抽出の対象となる図形が前記第1分類に分類された場合、該図形に付加された印刷情報からオフセット方向を取得してオフセット処理を行ない、当該図形の輪郭を抽出することを特徴とする請求項13に記載の図形処理方法。 - 前記抽出工程は、
輪郭情報抽出の対象となる図形が前記第2分類に分類された場合、隣り合うラインがマイター形状を有して接続され、その接続部の角度が所定角度より大きいかどうかを該図形に付加された印刷情報に基づいて判定する判定工程を有し、
前記判定工程により、前記隣り合うラインがマイター形状を有しかつその角度が前記所定角度より大きいと判定された場合、該隣り合うラインのオフセット処理された図形の接続形状をベベルとして輪郭抽出を行なうことを特徴とする請求項13に記載の図形処理方法。 - 前記抽出工程は、
前記判定工程により、前記輪郭情報抽出の対象となる図形において、隣り合うラインがマイター形状を有して接続され、その接続部の角度が前記所定角度以下であると判定された場合、該隣り合うラインのオフセット図形の交差している2線分を交点にて短縮する工程を更に有することを特徴とする請求項16に記載の図形処理方法。 - 前記抽出工程は、
前記判定工程により、前記輪郭情報抽出の対象となる図形において、隣り合うラインがマイター形状を有していないと判定された場合、オフセット図形の隣り合う2線分より得られるオフセット線分上の交点の有無を交点判定工程と、
前記交点判定工程において交点なしと判定された場合、連結していない2つのオフセット線分を両者が交差するまで延長する工程と、
前記交点判定工程において交点ありと判定された場合、オフセット線分の交差している位置より先端側にある部分を除去する工程とを有することを特徴とする請求項16に記載の図形処理方法。 - 前記抽出工程は、
輪郭情報抽出の対象となる図形が前記第3分類に分類された場合、該図形を複数のセグメントに分割する分割工程と、
前記分割工程で分割されたセグメントについてオフセット処理を行ない、輪郭情報を算出する算出工程とを備えることを特徴とする請求項13に記載の図形処理方法。 - 前記分割工程は、
出力機の解像度に応じた分割数を算出する算出工程と、
前記算出工程で算出された分割数に基づいて前記図形を再帰的に分割する再帰分割工程とを備え、
前記再帰分割工程による前記図形の分割後に得られる近似直線をセグメントとすることを特徴とする請求項19に記載の図形処理方法。 - 前記再帰分割工程は、前記図形がベジェ曲線である場合に、DeCasteljauのアルゴリズムを用いて前記図形の再帰分割を行うことを特徴とする請求項20に記載の図形処理方法。
- 前記算出工程は、
前記出力機の解像度に基づいて最小分割線長εを算出し、
ベジェ曲線のn個の制御点が、(xi,yi)(但し、i=0〜n)である場合に、
L0 = max(|xi-2xi+1+xi+2|,|yi-2yi+1+yi+2|)
r0 = log4((√2n)(n-1)L0)/8ε)
を計算し、r0を前記分割数として得ることを特徴とする請求項21に記載の図形処理方法。 - 前記抽出工程は、
処理対象の図形の連結形状がラウンドであるか判定する連結形状判定工程を備え、
前記連結形状判定工程においてラウンドと判定された場合、オフセット図形の各ジョイント部の座標を中心とする線幅の1/2の半径をもつ円を輪郭形状とすることを特徴とする請求項13に記載の図形処理方法。 - 前記抽出工程は、
前記処理対象の図形の終端形状を特定し、特定された終端形状に基づいて該処理対象の図形の終端部の輪郭形状を決定する終端部輪郭形状決定工程を更に備えることを特徴とする請求項13に記載の図形処理方法。 - 請求項13乃至24のいずれか1項に記載された図形処理方法をコンピュータに実行させるための制御プログラムを格納したコンピュータ読み取り可能な記 憶媒体。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29593298A JP4006113B2 (ja) | 1998-10-16 | 1998-10-16 | 図形処理方法及び装置 |
US09/257,064 US6975425B1 (en) | 1998-02-26 | 1999-02-25 | Information processing apparatus and information processing method |
EP99301426A EP0952554A3 (en) | 1998-02-26 | 1999-02-25 | Information processing apparatus and information processing method |
US11/006,728 US7301672B2 (en) | 1998-02-26 | 2004-12-08 | Information processing apparatus and information processing method |
US11/691,010 US7786995B2 (en) | 1998-02-26 | 2007-03-26 | Information processing apparatus and information processing method for determining character layout |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP29593298A JP4006113B2 (ja) | 1998-10-16 | 1998-10-16 | 図形処理方法及び装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2000125119A JP2000125119A (ja) | 2000-04-28 |
JP2000125119A5 JP2000125119A5 (ja) | 2005-10-20 |
JP4006113B2 true JP4006113B2 (ja) | 2007-11-14 |
Family
ID=17826994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP29593298A Expired - Fee Related JP4006113B2 (ja) | 1998-02-26 | 1998-10-16 | 図形処理方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4006113B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4936524B2 (ja) * | 2006-12-28 | 2012-05-23 | キヤノン株式会社 | 画像処理システムおよび画像処理方法 |
JP5210616B2 (ja) * | 2007-12-14 | 2013-06-12 | 日立メディカルコンピュータ株式会社 | 医用画像診断支援装置及び医用画像診断支援プログラム |
-
1998
- 1998-10-16 JP JP29593298A patent/JP4006113B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000125119A (ja) | 2000-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7786995B2 (en) | Information processing apparatus and information processing method for determining character layout | |
US20030142331A1 (en) | Print control apparatus and program | |
JP4006113B2 (ja) | 図形処理方法及び装置 | |
JP4124851B2 (ja) | 情報処理装置及び情報処理方法並びに記憶媒体 | |
JP4136123B2 (ja) | 情報処理装置及び方法及び記憶媒体 | |
JP4174117B2 (ja) | 情報処理装置及び情報処理方法並びに記憶媒体 | |
JP4458640B2 (ja) | 描画指示装置及びその描画指示方法、並びにコンピュータ読み取り可能な記憶媒体 | |
JP4100779B2 (ja) | 情報処理装置及び方法並びに記憶媒体 | |
JP4434451B2 (ja) | 描画装置およびその描画方法 | |
JPH0877324A (ja) | 電子ファイル装置 | |
JPS62134760A (ja) | 帳票デザインシステム | |
JPS63305468A (ja) | 帳票デザインシステム | |
JPS63223955A (ja) | 帳票デザインシステム | |
JPS62254264A (ja) | 帳票デザインシステム | |
JPH0664593B2 (ja) | 帳票デザインシステム | |
JPH08287276A (ja) | 文字レイアウト装置 | |
JPS61288269A (ja) | 帳票デザインシステム | |
JPS62298870A (ja) | 帳票デザインシステム | |
JPS62126463A (ja) | 帳票デザインシステム | |
JPS62217371A (ja) | 帳票デザインシステム | |
JPS61148969A (ja) | カタログデザインシステム | |
JPH02110655A (ja) | 文書作成装置 | |
JPH04181476A (ja) | 図形版下作成システム | |
JPH0664595B2 (ja) | 帳票デザインシステム | |
JPS61288266A (ja) | 帳票デザインシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050614 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050614 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7426 Effective date: 20050614 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20050614 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070323 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070507 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070706 |
|
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: 20070803 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070827 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100831 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110831 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120831 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120831 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130831 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |