(57)【要約】【課題】破線を含む画像データに対してラスタライズ処理を行う際に生じ得る印刷不具合を防止できるページ記述データ処理装置、方法及びプログラムを提供する。【解決手段】ページ記述データＤｐ中にパス４８、５０をストロークするオブジェクトがあるか否かを確認し、当該オブジェクト中に破線パターンを決定する破線パターン決定オペレータが含まれているか否かを確認し、パス４８、５０を構築するパス構築オペレータと前記破線パターン決定オペレータとに基づいて、パス４８、５０に沿って形成される複数の線素Ａ1〜Ａ5の形状を推定し、前記パス構築オペレータを複数の線素Ａ1〜Ａ5の形状に応じた複数のパス構築オペレータに置き換える。【選択図】図５
2011210164.tif 000002
【特許請求の範囲】
【請求項１】
ページ記述データ中にパスをストロークするオブジェクトがあるか否かを確認するオブジェクト確認部と、
パスをストロークするオブジェクトが含まれていた場合に、該オブジェクト中に破線パターンを決定する破線パターン決定オペレータが含まれているか否かを確認するオペレータ有無確認部と、
破線パターン決定オペレータが含まれていた場合に、前記パスを構築するパス構築オペレータと前記破線パターン決定オペレータとに基づいて、前記パスに沿って形成される複数の線素の形状を推定する破線形状推定部と、
前記パス構築オペレータを前記複数の線素の形状に応じた複数のパス構築オペレータに置き換えるパス構築オペレータ置換部と
を有することを特徴とするページ記述データ処理装置。
【請求項２】
請求項１記載のページ記述データ処理装置において、
前記破線形状推定部は、曲線状のパスに沿って形成される複数の線素の形状を推定する
ことを特徴とするページ記述データ処理装置。
【請求項３】
請求項１又は２に記載のページ記述データ処理装置において、
前記パス構築オペレータ置換部は、前記パス構築オペレータを前記複数の線素の形状に応じた複数の直線パス構築オペレータに置き換える
ことを特徴とするページ記述データ処理装置。
【請求項４】
請求項１〜３のいずれか１項に記載のページ記述データ処理装置において、
前記パス構築オペレータ置換部は、各パスの長さが非０になるような直線パス構築オペレータに置き換える
ことを特徴とするページ記述データ処理装置。
【請求項５】
ページ記述データ中にパスをストロークするオブジェクトがあるか否かを確認するステップと、
パスをストロークするオブジェクトが含まれていた場合に、該オブジェクト中に破線パターンを決定する破線パターン決定オペレータが含まれているか否かを確認するステップと、
破線パターン決定オペレータが含まれていた場合に、前記パスを構築するパス構築オペレータと前記破線パターン決定オペレータとに基づいて、前記パスに沿って形成される複数の線素の形状を推定するステップと、
前記パス構築オペレータを前記複数の線素の形状に応じた複数のパス構築オペレータに置き換えるステップと
を備えることを特徴とするページ記述データ処理方法。
【請求項６】
コンピュータを、
ページ記述データ中にパスをストロークするオブジェクトがあるか否かを確認する手段、
パスをストロークするオブジェクトが含まれていた場合に、該オブジェクト中に破線パターンを決定する破線パターン決定オペレータが含まれているか否かを確認する手段、
破線パターン決定オペレータが含まれていた場合に、前記パスを構築するパス構築オペレータと前記破線パターン決定オペレータとに基づいて、前記パスに沿って形成される複数の線素の形状を推定する手段、
前記パス構築オペレータを前記複数の線素の形状に応じた複数のパス構築オペレータに置き換える手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ページ記述言語（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ；ＰＤＬ）で記述されたページ記述データのうち、所定の属性を有するページ記述データに対して特定の処理を行い、よりロバスト性を有するページ記述データ（この明細書において、ロバスト化ページ記述データという。）に変換するページ記述データ処理装置、方法及びプログラムに関する。
【背景技術】
【０００２】
近時、印刷製版の分野において、オペレータがコンピュータを利用して作った文字や画像を、ＤＴＰ（ＤｅｓｋＴｏｐ  Ｐｕｂｌｉｓｈｉｎｇ）アプリケーションソフトウエアが組み込まれた前記コンピュータを使って電子的なページに組み込むＤＴＰ処理が普及している。
【０００３】
上記のＤＴＰアプリケーションソフトウエアでは、作業者によって編集された文字や画像等の要素を基に、ページ毎のイメージを表現するページ記述データが作成される。
【０００４】
ページ記述データは、プリンタやプレートセッタ等の出力機の解像度等に依存しないベクトルデータであり、このままでは出力機から出力することができない。そこで、ページ記述データをＲＩＰ（Ｒａｓｔｅｒ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｏｒ）でラスタライズ処理（標本化）することにより、ページを構成する文字や画像等の要素を画素（ドット）の集合として表すラスタイメージデータに変換する。
【０００５】
ラスタイメージデータが、プリンタあるいはプレートセッタ等の出力機に供給されると、出力機は、ラスタイメージデータに基づく画像を形成したハードコピーあるいは刷版を出力する（特許文献１参考）。
【０００６】
ところで、ページ記述データの一種であるＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｉｌｅ）ｖｅｒｓｉｏｎ１．３には、線状のパスをストロークする際に、線素と隙間のパターンを制御する「破線パターン」オペレータが実装されている。ここで、「パス」とはそれ自体線幅を有しない、始点と終点とを結ぶ経路であり、「ストローク」とはパスに所定の線幅を付することをいう。
【０００７】
なお、この「破線パターン」オペレータにより設定自在な変数として、交互に現われる線素と隙間の長さを指定する「破線配列」と、周期性を有する破線の始点における描画状態を指定する「破線フェーズ」とが定義されている（非特許文献１参照）。以下、この「破線配列」及び「破線フェーズ」を総称して「破線形状パラメータ」という場合がある。
【０００８】
以下、破線形状パラメータと実際に描画される破線パターンとの関係について、直線状のパスの始点から終点までの間を１１単位長でストロークする場合を例に挙げて、図１０Ａを参照しながら詳細に説明する。
【０００９】
例えば、［４  ２］｛０｝は、破線配列［４  ２］と、破線フェーズ｛０｝とのパラメータの結合を意味する。そのうち、破線配列［４  ２］は、連続して４単位長をＯＮにし、その後、連続して２単位長をＯＦＦにすることに対応する。つまり、破線パターンの周期単位は６単位長である。換言すれば、この破線パターンは、線素が４単位長、隙間が２単位長の繰り返しで構成される。
【００１０】
一方、破線フェーズ｛０｝は、前記破線の周期パターンの位相ずれ量が０単位長であることに対応する。図１１Ａに示すように、｛０｝の破線パターンを上段のように予め定めた場合、｛１｝の破線パターンは中段にように決定される。これは、｛１｝の破線パターンは、｛０｝の破線パターンに対して各単位長を左側（パスの始点側）に１個ずつシフトした結果に対応する。同様に、｛２｝の破線パターンは、｛０｝の破線パターンに対して各単位長を左側（パスの始点側）に２個ずつシフトした結果に対応する。
【００１１】
このように、ＰＤＦ仕様では、始点から終点までの間、所定の周期の繰り返しパターンに基づいて破線の描画形状を順次決定するという特徴を有する。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００５−７０９５７号公報（［０００３］）
【非特許文献】
【００１３】
【非特許文献１】ＰＤＦリファレンス  第２版、  Ａｄｏｂｅ  Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ  Ｖｅｒｓｉｏｎ１．３、２００８年１１月２０日初版第５刷発行、著者；アドビシステムズ、発行所；株式会社ピアソン・エデュケーション、ＩＳＢＮ４−８９４７１−３３８−１、１１９ページ、１２４−１２６ページ等参照。
【発明の概要】
【発明が解決しようとする課題】
【００１４】
ところが、ＰＤＦの上記仕様を用いて、線状のパスに沿って破線パターンを生成した後、ラスタライズ処理する場合に予期しない問題が生じ得る。
【００１５】
例えば、各線素の始点及び終点（各隙間の終点及び始点）を決定する際、その始点又は終点の位置がＲＩＰ毎に異なり、位置ずれ誤差を生じる場合がある。この誤差は、ＲＩＰの演算アルゴリズムやソフトウエアバージョンの差異によって発生する、いわゆる演算誤差である。そのため、図１０Ｂ及び図１０Ｃに示すように、同じパス長であっても、生成される線素の数が異なる場合がある。
【００１６】
図１０Ｂの例によると、上記演算誤差の影響により、線素２００ａの終点２０２ａの位置と、線素２００ｂの終点２０２ｂの位置が異なっているとする。すると、次の線素２０４ａの始点２０６ａはパスの終点位置２０８を超えた位置（右方側）に存在し、次の線素２０４ｂの始点２０６ｂはパスの終点位置２０８を超えない位置（左方側）に存在する。
【００１７】
図１０Ｃは、図１０Ｂに示す上段の破線（線素２００ａ、次の線素２０４ａ）及び下段の破線（線素２００ｂ、次の線素２０４ｂ）にそれぞれ所定の線幅を付してストロークした結果を表す概略説明図である。
【００１８】
予め指定された線幅とキャップ形式（端部処理形式）に従って、線素２００ａを中心軸とした塗り潰し領域２１０ａが形成される。線素２００ｂについても、線素２００ａと同様に、塗り潰し領域２１０ｂが形成されている。
【００１９】
ところが、パスの範囲外にある始点２０６ａ（上段の破線）には、次の線素２０４ａを中心軸とした塗り潰し領域は形成されない。一方、パスの範囲内にある始点２０６ｂ（下段の破線）には、次の線素２０４ｂの一部を中心軸とした長円形状の塗り潰し領域２１２が形成される。
【００２０】
このように、線状のパスに沿って破線パターンを生成する際、ＲＩＰの演算アルゴリズムやソフトウエアバージョンに起因する演算誤差と、破線パターンの形状パラメータ等との組み合わせに応じて、パスの終点近傍における線素が不定に発生するので、目論見と異なる破線形状に変換される場合がある。そのため、破線を含む画像データに対してラスタライズ処理する場合、発生原因の特定が困難である予期しない印刷不具合の一因となり得る。特に、線幅が大きい場合にこの問題が顕在化する。
【００２１】
本発明は上記した問題を解決するためになされたもので、破線を含む画像データに対してラスタライズ処理を行う際に生じ得る印刷不具合を防止できるページ記述データ処理装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００２２】
本発明に係るページ記述データ処理装置は、ページ記述データ中にパスをストロークするオブジェクトがあるか否かを確認するオブジェクト確認部と、パスをストロークするオブジェクトが含まれていた場合に、該オブジェクト中に破線パターンを決定する破線パターン決定オペレータが含まれているか否かを確認するオペレータ有無確認部と、破線パターン決定オペレータが含まれていた場合に、前記パスを構築するパス構築オペレータと前記破線パターン決定オペレータとに基づいて、前記パスに沿って形成される複数の線素の形状を推定する破線形状推定部と、前記パス構築オペレータを前記複数の線素の形状に応じた複数のパス構築オペレータに置き換えるパス構築オペレータ置換部とを有することを特徴とする。
【００２３】
このように、パス構築オペレータを複数の線素の形状に応じた複数のパス構築オペレータに置き換えるパス構築オペレータ置換部を設けたので、ＲＩＰによるラスタライズ処理の過程で、パスに沿った破線パターンを複数の線素に近似する演算処理が実行されなくなり、パスの終点近傍において線素が不定に発生する現象を未然に防止可能である。これにより、破線を含む画像データに対してラスタライズ処理を行う際に生じ得る印刷不具合を防止できる。
【００２４】
また、前記破線形状推定部は、曲線状のパスに沿って形成される複数の線素の形状を推定することが好ましい。特に、曲線形状を特定するための演算は複雑であり、パスの終点近傍において線素が不定に発生する可能性が高くなるので、より一層効果的である。
【００２５】
さらに、前記パス構築オペレータ置換部は、前記パス構築オペレータを前記複数の線素の形状に応じた複数の直線パス構築オペレータに置き換えることが好ましい。これにより、オペレータの置換処理を簡略化しつつも、破線パターンを精度良く再現できる。
【００２６】
さらに、前記パス構築オペレータ置換部は、各パスの長さが非０になるような直線パス構築オペレータに置き換えることが好ましい。これにより、隣接する線素の延在方向と一致するような適切な方向にキャップを付加することができる。
【００２７】
本発明に係るページ記述データ処理方法は、ページ記述データ中にパスをストロークするオブジェクトがあるか否かを確認するステップと、パスをストロークするオブジェクトが含まれていた場合に、該オブジェクト中に破線パターンを決定する破線パターン決定オペレータが含まれているか否かを確認するステップと、破線パターン決定オペレータが含まれていた場合に、前記パスを構築するパス構築オペレータと前記破線パターン決定オペレータとに基づいて、前記パスに沿って形成される複数の線素の形状を推定するステップと、前記パス構築オペレータを前記複数の線素の形状に応じた複数のパス構築オペレータに置き換えるステップとを備えることを特徴とする。
【００２８】
本発明に係るプログラムは、コンピュータを、ページ記述データ中にパスをストロークするオブジェクトがあるか否かを確認する手段、パスをストロークするオブジェクトが含まれていた場合に、該オブジェクト中に破線パターンを決定する破線パターン決定オペレータが含まれているか否かを確認する手段、破線パターン決定オペレータが含まれていた場合に、前記パスを構築するパス構築オペレータと前記破線パターン決定オペレータとに基づいて、前記パスに沿って形成される複数の線素の形状を推定する手段、前記パス構築オペレータを前記複数の線素の形状に応じた複数のパス構築オペレータに置き換える手段として機能させることを特徴とする。
【発明の効果】
【００２９】
本発明に係るページ記述データ処理装置、方法及びプログラムによれば、ページ記述データ中にパスをストロークするオブジェクトがあるか否かを確認し、パスをストロークするオブジェクトが含まれていた場合に、該オブジェクト中に破線パターンを決定する破線パターン決定オペレータが含まれているか否かを確認し、破線パターン決定オペレータが含まれていた場合に、前記パスを構築するパス構築オペレータと前記破線パターン決定オペレータとに基づいて、前記パスに沿って形成される複数の線素の形状を推定し、前記パス構築オペレータを前記複数の線素の形状に応じた複数のパス構築オペレータに置き換えるようにしたので、ＲＩＰによるラスタライズ処理の過程で、パスに沿った破線パターンを複数の線素に近似する演算処理が実行されなくなり、パスの終点近傍において線素が不定に発生する現象を未然に防止可能である。これにより、破線を含む画像データに対してラスタライズ処理を行う際に生じ得る印刷不具合を防止できる。
【図面の簡単な説明】
【００３０】
【図１】この発明の一実施形態に係るページ記述データ処理方法を実施する出版システムの概略構成図である。
【図２】図１に示すページ記述データ処理装置の機能ブロック図である。
【図３】直線ストロークオペレータにより生成された直線のパスの概略図である。
【図４】曲線ストロークオペレータにより生成された三次ベジェ曲線のパスの概略図である。
【図５】本実施の形態に係るページ記述データ処理装置の動作説明に供されるフローチャートである。
【図６】パス構築オペレータの置換方法を説明するフローチャートである。
【図７】図７Ａは、破線形状パラメータの一例を示す図である。図７Ｂは、図３に示す直線状のパスに沿って形成された破線パターンの説明図である。
【図８】図４に示す曲線状のパスに沿って形成された破線パターンの説明図である。
【図９】図９Ａ〜図９Ｃは、その長さを０又は非０に設定した線素に対してキャップ処理を施した結果を表す説明図である。
【図１０】図１０Ａは、破線形状パラメータと実際に描画される破線パターンとの関係を示す説明図である。図１０Ｂ及び図１０Ｃは、直線状のパスに所定の線幅を付してストロークし、破線パターンを形成した結果を表す説明図である。
【発明を実施するための形態】
【００３１】
以下、この発明に係るページ記述データ処理装置、方法及びプログラムの実施形態について、これを実施する出版システムを例として、添付の図面を参照しながら説明する。
【００３２】
図１は、この実施形態に係るページ記述データ処理方法を実施する出版システム１０の概略構成図を示している。
【００３３】
出版システム１０は、プリプレス工程と印刷工程並びに図示しない製本工程とから構成される。
【００３４】
プリプレス工程には、ＤＴＰコンピュータ１２と、パーソナルコンピュータ等により構成されるページ記述データ処理装置１４と、ＲＩＰ１６と、プリンタ２０と、プレートセッタ２２が備えられる。
【００３５】
ＤＴＰコンピュータ１２は、オペレータによって編集された文字や画像等の要素を基に、ページ毎のイメージを表現するページ記述言語で記述されたページ記述データＤｐを作成する。
【００３６】
ページ記述データ処理装置１４は、ＤＴＰコンピュータ１２から出力されたページ記述データＤｐの内容（属性）を調べ、調査結果に応じて、所定の属性を有するページ記述データＤｐに対して特定の処理を行い、処理後のロバスト化ページ記述データＤｐ´を作成するか、所定の属性を有さないページ記述データＤｐをそのまま出力する。なお、ページ記述データ処理装置１４による処理機能は、ＤＴＰコンピュータ１２に一体的に組み込み、ページ記述データ処理装置１４を省略することもできる。
【００３７】
ＲＩＰ１６は、ページ記述データ処理装置１４から出力されたページ記述データＤｐ又はロバスト化ページ記述データＤｐ´を、例えばＣＭＹＫ４版それぞれのラスタイメージデータＤｒに変換する。
【００３８】
プリンタ２０は、ラスタイメージデータＤｒに基づきハードコピーであるプルーフ１８を出力する。
【００３９】
プレートセッタ２２は、プリンタ２０によりプリントされたプルーフ１８がオペレータによってＯＫであると判断された場合に、オペレータによる開始スイッチの操作後、ＲＩＰ１６の出力であるラスタイメージデータＤｒからＣＭＹＫ４版のそれぞれの刷版ＰＰを作成して出力する。
【００４０】
印刷工程には、印刷機２４が備えられる。印刷機２４には、ＣＭＹＫ４版の刷版ＰＰが装着され、刷版ＰＰに担持されたＣＭＹＫのインキが本紙上に転移されて多色（４色）刷りが行われることで印刷物２６が完成する。
【００４１】
図２は、ページ記述データ処理装置１４のＣＰＵがＲＯＭに記録されたプログラムを実行することで達成される機能のブロック図を示している。
【００４２】
ページ記述データ処理装置１４は、入力インタフェース（入力Ｉ／Ｆ）３２を通じて入力したページ記述データＤｐを分析処理したロバスト化ページ記述データＤｐ´を作成し又は手を加えない元のままのページ記述データＤｐを作成し、出力インタフェース（出力Ｉ／Ｆ）３４を通じて出力する。
【００４３】
ページ記述データ処理装置１４は、上記の入出力インタフェース３２、３４の他、分析処理に係わるオブジェクト確認部３６（構造解析部３７と、パスオブジェクト有無確認部３８と、パスペイントオペレータ属性確認部４０とを含む。）と、破線パターン決定オペレータ有無確認部４２と、破線形状推定部４４と、パス構築オペレータ置換部４６とを備える。
【００４４】
なお、本明細書における「パスオブジェクト」は、直線、矩形、曲線（例えば３次ベジェ曲線）で構成される任意の形状である。
【００４５】
また、本明細書における「パスペイントオペレータ」は、パスオブジェクトを終了させるオペレータであり、カレントパスに線幅を付して線を描くオペレータ（以下、便宜のため「ストローク系オペレータ」という。）、又はカレントパスが生成する閉空間を塗りつぶすオペレータ（以下、便宜のため「塗りつぶし系オペレータ」という。）のうちいずれかの属性を有する。
【００４６】
さらに、本明細書における「破線パターン決定オペレータ」は、パスをストロークするときの破線パターンの記述方法を設定するオペレータである。ＰＤＦでは、「ｄ」の１種類のオペレータが定義されている。「ｄ」オペレータにより設定可能な変数として、交互に現れる個々の線素と隙間との長さを指定する「破線配列」と、破線の開始位置となる先頭の位置を指定する「破線フェーズ」とが定義されている。以下、「破線パターン決定オペレータ」が含まれない（存在しない）ことには、該オペレータ自体が存在しない場合のみならず、該オペレータには実線を表す変数が設定されており、実質的に破線パターンではないことが含まれる。
【００４７】
さらに、本明細書における「パス構築オペレータ」は、パスの物理的形状を定義するオペレータをいう。ＰＤＦでは、「ｍ」「ｌ」「ｃ」「ｖ」「ｙ」「ｈ」「ｒｅ」の７種類のオペレータが定義されている。
【００４８】
さらに、本明細書における「曲線パス構築オペレータ」は、パス構築オペレータのうち、カレントパスに曲線を追加するオペレータをいう。ＰＤＦでは、「ｃ」「ｖ」「ｙ」の３種類のオペレータが定義され、いずれのオペレータも３次ベジェ曲線を追加するものである。
【００４９】
さらに、本明細書における「直線パス構築オペレータ」は、パス構築オペレータのうち、カレントパスに直線を追加するオペレータをいう。ＰＤＦでは、「ｌ」の１種類のオペレータが定義されている。
【００５０】
図３は、「ｌ」オペレータが生成する直線を示すグラフである。この直線状のパス４８は、始点Ｐ1（ｘ1，ｙ1）及び終点Ｐ2（ｘ2，ｙ2）により定義されている。
【００５１】
変数ｔの値を０〜１まで変化させることにより、始点Ｐ1と終点Ｐ2とを結ぶパス４８が生成される。ここで、変数ｔにおけるパス４８上の点の座標Ｐ（ｘ（ｔ），ｙ（ｔ））は、次の（１）式及び（２）式で算出される。
ｘ（ｔ）＝（１−ｔ）ｘ1＋ｔｘ2      ……（１）
ｙ（ｔ）＝（１−ｔ）ｙ1＋ｔｙ2      ……（２）
【００５２】
ここで、（１）式及び（２）式より、ｘ（０）＝ｘ1、ｙ（０）＝ｙ1、ｘ（１）＝ｘ2、ｙ（１）＝ｙ2であることから諒解されるように、変数ｔが０〜１に変化すると、パス４８上の点Ｐは、矢印Ｄ1の方向に始点Ｐ1から終点Ｐ2まで連続的に移動する。
【００５３】
図４は、「ｃ」オペレータが生成する３次ベジェ曲線を示すグラフである。この曲線状のパス５０は、２つの端点Ｐ0（ｘ0，ｙ0）及びＰ3（ｘ3，ｙ3）並びに２つの制御点Ｐ1（ｘ1，ｙ1）及びＰ2（ｘ2，ｙ2）により定義されている。
【００５４】
変数ｔの値を０〜１まで変化させることにより、始点Ｐ0と終点Ｐ3とを結ぶパス５０が生成される。ここで、変数ｔにおけるパス５０上の点の座標Ｐ（ｘ（ｔ），ｙ（ｔ））は、次の（３）式及び（４）式で算出される。
ｘ（ｔ）＝（１−ｔ）3ｘ0＋３ｔ（１−ｔ）2ｘ1＋３ｔ2（１−ｔ）ｘ2＋ｔ3ｘ3      ……（３）
ｙ（ｔ）＝（１−ｔ）3ｙ0＋３ｔ（１−ｔ）2ｙ1＋３ｔ2（１−ｔ）ｙ2＋ｔ3ｙ3      ……（４）
【００５５】
ここで、（３）式及び（４）式より、ｘ（０）＝ｘ0、ｙ（０）＝ｙ0、ｘ（１）＝ｘ3、ｙ（１）＝ｙ3であることから諒解されるように、変数ｔが０〜１に変化すると、パス５０上の点Ｐは、矢印Ｄ2の方向に始点Ｐ0から終点Ｐ3まで連続的に移動する。なお、破線で示す線分Ｐ0Ｐ1は点Ｐ0におけるパス５０の接線である。また、破線で示す線分Ｐ2Ｐ3は点Ｐ3におけるパス５０の接線である。
【００５６】
基本的には、以上のように構成される出版システム１０のページ記述データ処理装置１４の動作について、図５のフローチャート及び図２の機能ブロック図を参照して説明する。
【００５７】
ステップＳ１において、ページ記述データ処理装置１４は、ＤＴＰコンピュータ１２から出力されるページ記述データＤｐをページ毎に取り込む。
【００５８】
ステップＳ２において、構造解析部３７は、ページ記述データＤｐの構造を解析してページに含まれるオブジェクトを抽出する。その後、パスオブジェクト有無確認部３８は、抽出されたオブジェクトにパスオブジェクトが含まれているか否かを確認する。パスオブジェクトが含まれていない場合には、ページ記述データＤｐを、変更せずそのまま出力インタフェース３４を通じて出力する（ステップＳ７）。
【００５９】
ステップＳ３において、パスペイントオペレータ属性確認部４０は、ステップＳ２により確認された前記パスオブジェクトにストローク系オペレータ、例えば、オペレータ「Ｓ」「ｓ」等が含まれているか否かを確認する。ストローク系オペレータが含まれていない（すなわち、塗りつぶし系オペレータ「ｆ」「Ｆ」等が含まれている）場合には、ページ記述データＤｐを、変更せずそのまま出力インタフェース３４を通じて出力する（ステップＳ７）。
【００６０】
ステップＳ４において、破線パターン決定オペレータ有無確認部４２は、ステップＳ２により確認された前記パスオブジェクトに破線パターン決定オペレータ、すなわちオペレータ「ｄ」が含まれているか否かを確認する。破線パターン決定オペレータが含まれていない場合には、ページ記述データＤｐを、変更せずそのまま出力インタフェース３４を通じて出力する（ステップＳ７）。
【００６１】
ステップＳ５において、破線形状推定部４４は、ステップＳ２により確認された前記パスオブジェクトと、ステップＳ４により確認された前記破線パターン決定オペレータとに基づいて、パスに沿って形成される複数の線素の形状を推定する。ここで、この推定方法について、図６のフローチャートを参照しながら詳細に説明する。
【００６２】
ステップＳ５１において、破線形状推定部４４は、パス構築オペレータからパスを決定するパラメータを取得する。図３の例では、オペレータ属性（「ｌ」）、始点Ｐ1（ｘ1，ｙ1）及び終点Ｐ2（ｘ2，ｙ2）である。図４の例では、オペレータ属性（「ｃ」、「ｖ」、又は「ｙ」）、始点Ｐ0（ｘ0，ｙ0）、終点Ｐ3（ｘ3，ｙ3）、制御点Ｐ1（ｘ1，ｙ1）及び制御点Ｐ2（ｘ2，ｙ2）である。
【００６３】
また、ユーザ空間（装置独立座標系）とデバイス空間（装置依存座標系）との対応付けを行うために、縦横のラスタライズ解像度も併せて取得する。この解像度の単位として、ｄｐｉ（ｄｏｔ  ｐｅｒ  ｉｎｃｈ）やｐｐｉ（ｐｉｘｅｌ  ｐｅｒ  ｉｎｃｈ）等が用いられる。
【００６４】
ステップＳ５２において、破線形状推定部４４は、破線パターンを決定するパラメータを取得する。ここでは、「ｄ」オペレータに設定される「破線配列」及び「破線フェーズ」（破線形状パラメータ）に相当する。
【００６５】
ステップＳ５３において、破線形状推定部４４は、複数の線素としての始点・終点の位置を推定する。以下、ユーザ空間上で線素の始点の位置を推定する方法について詳細に説明する。
【００６６】
パス４８、５０上の点Ｐの座標を（ｘ（ｔ），ｙ（ｔ））とするとき、区間［ｕ，ｖ］でのパス４８、５０の線分の長さＩ（ｕ，ｖ）は、次の（５）式で算出される。
【００６７】
【数１】
2011210164.tif 000003
なお、０≦ｕ≦１、０≦ｖ≦１である。この（５）式に基づいて、線素の始点・終点位置を推定することができる。
【００６８】
以下、図３に示す直線状のパス４８の例に基づいて、破線形状推定部４４が線素の始点・終点の位置を推定する手順について説明する。
【００６９】
図７Ａに示すように、破線形状パラメータが［Ｄ  Ｌ−Ｄ］｛Ｓ｝で設定されたものとする。ここで、Ｄ、Ｌ及びＳはいずれも正数であって、整数値のみならず、実数値を採ることができる。
【００７０】
すると、図７Ｂに示すように、パス４８の始点ＰA（ｘ1，ｙ1）と、終点ＰB（ｘ2，ｙ2）と、上記破線形状パラメータに基づいて、５つの線素Ａ1〜Ａ5の形状、具体的には、始点｛Ｑ1、Ｑ3、Ｑ5、Ｑ7、Ｑ9｝及び終点｛Ｑ2、Ｑ4、Ｑ6、Ｑ8、Ｑ10｝の位置をそれぞれ推定できる。以下、その推定方法について詳細に説明する。
【００７１】
先ず、描画開始位置としての線素Ａ1（長さＬ1）の始点Ｑ1の位置は、パス４８の始点ＰAの位置（ｔ1＝０）と推定される。そして、Ｉ（ｔ1，ｔ2）＝Ｄ−Ｓを満たすｔ2を算出し、（１）式及び（２）式に基づいてｔ＝ｔ2に相当する位置を算出する。線素Ａ1の終点Ｑ2の位置は、位置（ｘ（ｔ2），ｙ（ｔ2））であると推定される。
【００７２】
次いで、Ｉ（ｔ2，ｔ3）＝Ｌ−Ｄを満たすｔ3を算出し、（１）式及び（２）式に基づいてｔ＝ｔ3に相当する位置を算出する。線素Ａ2（長さＬ2）の始点Ｑ3の位置は、算出された位置（ｘ（ｔ3），ｙ（ｔ3））であると推定される。そして、Ｉ（ｔ3，ｔ4）＝Ｄを満たすｔ4を算出し、（１）式及び（２）式に基づいてｔ＝ｔ4に相当する位置を算出する。線素Ａ2の終点Ｑ4の位置は、位置（ｘ（ｔ4），ｙ（ｔ4））であると推定される。
【００７３】
以下同様にして、始点｛Ｑ1、Ｑ3、Ｑ5、Ｑ7、Ｑ9｝及び終点｛Ｑ2、Ｑ4、Ｑ6、Ｑ8、Ｑ10｝の座標がそれぞれ推定される。なお、本実施の形態では、線素の始点・終点の位置の両方を推定しているが、終点の位置を求めることなく始点の位置のみを推定してもよいことはいうまでもない。
【００７４】
次いで、図４に示す曲線状のパス５０の例に基づいて、破線形状推定部４４が線素の始点・終点の位置を推定する手順について説明する。特に、曲線形状を特定するための演算は複雑であり、パス５０の終点近傍において線素が不定に発生する可能性が高くなるので、より一層効果的である。なお、破線形状パラメータは、図７Ａと同様に設定されたものとする。
【００７５】
図８に示すように、パス５０の始点Ｐ0（ｘ0，ｙ0）と、終点Ｐ3（ｘ3，ｙ3）と、上記破線形状パラメータに基づいて、５つの線素Ａ1〜Ａ5の形状、具体的には、始点｛Ｑ1、Ｑ3、Ｑ5、Ｑ7、Ｑ9｝及び終点｛Ｑ2、Ｑ4、Ｑ6、Ｑ8、Ｑ10｝の座標をそれぞれ推定できる。以下、その推定方法について詳細に説明する。
【００７６】
先ず、描画開始位置としての線素Ａ1（長さＬ1）の始点Ｑ1の位置は、パス５０の始点ＰAの位置（ｔ1＝０）と推定される。そして、Ｉ（ｔ1，ｔ2）＝Ｄ−Ｓを満たすｔ2を算出し、（３）式及び（４）式に基づいてｔ＝ｔ2に相当する位置を算出する。線素Ａ1の終点Ｑ2の位置は、位置（ｘ（ｔ2），ｙ（ｔ2））であると推定される。
【００７７】
次いで、Ｉ（ｔ2，ｔ3）＝Ｌ−Ｄを満たすｔ3を算出し、（３）式及び（４）式に基づいてｔ＝ｔ3に相当する位置を算出する。線素Ａ2（長さＬ2）の始点Ｑ3の位置は、算出された位置（ｘ（ｔ3），ｙ（ｔ3））であると推定される。そして、Ｉ（ｔ3，ｔ4）＝Ｄを満たすｔ4を算出し、（３）式及び（４）式に基づいてｔ＝ｔ4に相当する位置を算出する。線素Ａ2の終点Ｑ4の位置は、位置（ｘ（ｔ4），ｙ（ｔ4））であると推定される。
【００７８】
以下同様にして、始点｛Ｑ1、Ｑ3、Ｑ5、Ｑ7、Ｑ9｝及び終点｛Ｑ2、Ｑ4、Ｑ6、Ｑ8、Ｑ10｝の座標がそれぞれ推定される。
【００７９】
なお、１つの曲線パス構築オペレータを折れ線状のパスに対応する複数の直線パス構築オペレータに置き換えた後に、上記推定を行ってもよい。これにより、演算を容易にして処理時間を短縮できる。
【００８０】
図６に戻って、ステップＳ５４において、破線形状推定部４４は、最後尾の線素の始点がパスの終点と一致するか否かを判定する。ここで、最後尾の線素は、パスの終点に最も近い線素であり、図７Ｂ、図８の例では線素Ａ5に相当する。両者の位置が一致しない場合、すなわち、最後尾の線素の長さが０でない場合はそのまま終了する。一方、両者の位置が一致する場合、すなわち、最後尾の線素の長さが０である場合は、次のステップに進む。
【００８１】
ステップＳ５５において、破線形状推定部４４は、最後尾の線素の長さを非０にする。その効果について、図９Ａ〜図９Ｃを参照しながら説明する。
【００８２】
図９Ａに示すように、終点位置７０まで延在するパス７２を破線パターンでストロークする場合、線素７４、線素の長さが０である点素７６が抽出されたとする。特に、線素７４の終点７８と、点素７６との周辺にスクエアキャップを付加する処理を行う場合を考える。ここで、「スクエアキャップ」とは、線幅の半分の距離までストロークを続け、角型に打ち切るキャップ方式である（非特許文献１の１２３ページを参照のこと）。
【００８３】
図９Ｂに示すように、パス７２に沿って線素７４がストロークされ、塗り潰し領域８０が形成される。また、点素７６の両端に角型のキャップが付され、矩形状の塗り潰し領域８２が形成される。この場合、点素７６は長さが０であるから、その延在方向を特定することはできない。仮に、θ＝０°として（左右方向に延在するように）スクエアキャップを付加するように予め規則を定めていたとする。そうすると、塗り潰し領域８０との位置関係において不適切な印刷結果が得られる場合がある。
【００８４】
そこで、この問題を解消するため、線素７４（パス７２）の延在方向と一致するように、点素７６を非０（すなわち、２画素以上）の長さに延ばす。図９Ｃに示すように、点素７６を始点とし、終点８４を新たに設けることで、新たに斜線状の線素８６が形成される。その結果、パス７２に沿って線素８６がストロークされ、塗り潰し領域８８が形成されるようになる。そうすると、キャップの向きが一致するので、塗り潰し領域８０との位置関係において適切な印刷結果が得られる。
【００８５】
なお、図６のステップＳ５４では、最後尾の線素の始点がパスの終点と一致するか否かについて判定したが、これに限られない。例えば、先頭の線素の終点がパスの始点と一致するか否かについても併せて判定し、先頭の線素の長さを非０にしてもよい。
【００８６】
以上のようにして、パスに沿って形成される複数の線素の形状を推定することができる（ステップＳ５）。
【００８７】
図５に戻って、ステップＳ６において、パス構築オペレータ置換部４６は、ステップＳ２により確認された前記パスオブジェクトのパス構築オペレータを、ステップＳ５により推定された前記複数の線素の形状に対応する複数の直線パス構築オペレータに置換する。
【００８８】
図７Ｂの例では、始点をＰ1とし、終点をＰ2とする直線パス構築オペレータ｛以下、ＬＯＰ（Ｐ1，Ｐ2）という。｝を、５つの直線パス構築オペレータ、すなわち、ＬＯＰ（Ｑ1，Ｑ2）、ＬＯＰ（Ｑ3，Ｑ4）、ＬＯＰ（Ｑ5，Ｑ6）、ＬＯＰ（Ｑ7，Ｑ8）、ＬＯＰ（Ｑ9，Ｑ10）に置換する。なお、各オペレータにより実線で、且つ、置換前と同じ線幅でパスをストロークするように、破線形状パラメータ等の値を設定する。これにより、オペレータの置換処理を簡略化しつつも破線パターンを精度良く再現できる。
【００８９】
図８の例では、始点をＰ0とし、終点をＰ3とする曲線パス構築オペレータ｛以下、ＣＯＰ（Ｐ0，Ｐ3）という。｝を、５つの直線パス構築オペレータ、すなわち、ＬＯＰ（Ｑ1，Ｑ2）、ＬＯＰ（Ｑ3，Ｑ4）、ＬＯＰ（Ｑ5，Ｑ6）、ＬＯＰ（Ｑ7，Ｑ8）、ＬＯＰ（Ｑ9，Ｑ10）に置換する。
【００９０】
あるいは、５つの曲線パス構築オペレータ、すなわち、ＣＯＰ（Ｑ1，Ｑ2）、ＣＯＰ（Ｑ3，Ｑ4）、ＣＯＰ（Ｑ5，Ｑ6）、ＣＯＰ（Ｑ7，Ｑ8）、ＣＯＰ（Ｑ9，Ｑ10）に置換してもよい。この場合は、各線素Ａ1〜Ａ5との近似精度を保証するように、各曲線パス構築オペレータでの２つの制御点を適切に決定する。
【００９１】
ステップＳ７において、パス構築オペレータ置換部４６により置換されたページ記述データＤｐ’を、出力インタフェース３４を通じて出力する。
【００９２】
このようにして、図１に示すように、ページ記述データ処理装置１４に入力されたページ記述データＤｐは、そのまま（Ｄｐ）又はパス構築オペレータ置換処理が施された後（Ｄｐ’）、ＲＩＰ１６側に供給される。その結果、図１０Ｃに示すうち、上段（塗り潰し領域なし）又は下段（塗り潰し領域２１２あり）のいずれか一方の状態になるように、常に出力することができる。
【００９３】
このように、ページ記述データＤｐ中にパス４８、５０をストロークするオブジェクトがあるか否かを確認し、前記オブジェクト中に破線パターンを決定する破線パターン決定オペレータが含まれているか否かを確認し、パス４８、５０を構築するパス構築オペレータと前記破線パターン決定オペレータとに基づいて、パス４８、５０に沿って形成される複数の線素Ａ1〜Ａ5の形状を推定し、前記パス構築オペレータを前記複数の線素Ａ1〜Ａ5の形状に応じた複数のパス構築オペレータに置き換えるようにしたので、ＲＩＰ１６によるラスタライズ処理の過程で、パス４８、５０に沿った破線パターンを複数の線素に近似する演算処理が実行されなくなり、パス４８、５０の終点近傍における線素が不定に発生する現象を未然に防止可能である。これにより、破線を含む画像データに対してラスタライズ処理を行う際に生じ得る印刷不具合を防止できる。
【００９４】
なお、この発明は、上述した実施形態に限定されるものではなく、この発明の主旨を逸脱しない範囲で自由に変更できることは勿論である。
【００９５】
本実施の形態ではＰＤＦを中心に説明したが、ページ記述言語はこれに限定されることはない。例えば、ＡｄｏｂｅＳｙｓｔｅｍｓ社のＰｏｓｔＳｃｒｉｐｔ（登録商標）やＸＰＳ（ＸＭＬ  Ｐａｐｅｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）等に対しても本発明を適用できる。
【符号の説明】
【００９６】
１０…出版システム                    １２…ＤＴＰコンピュータ
１４…ページ記述データ処理装置        １６…ＲＩＰ
１８…プルーフ                        ２０…プリンタ
２２…プレートセッタ                  ２４…印刷機
２６…印刷物                          ３６…オブジェクト確認部
３７…構造解析部                      ３８…パスオブジェクト有無確認部
４０…パスペイントオペレータ属性確認部
４２…破線パターン決定オペレータ有無確認部
４４…破線形状推定部                  ４６…パス構築オペレータ置換部
４８、５０、７２…パス                ７０、２０８…終点位置
７４、８６、２００ａ、２００ｂ、２０４ａ、２０４ｂ、Ａ、Ａ1〜Ａ5…線素
７６…点素                            ７８、８４、２０２ａ、２０２ｂ…終点
８０、８２、８８、２１０ａ、２１０ｂ、２１２…塗り潰し領域
２０６ａ、２０６ｂ…始点
【図１】
2011210164.tif 000004
【図２】
2011210164.tif 000005
【図３】
2011210164.tif 000006
【図４】
2011210164.tif 000007
【図５】
2011210164.tif 000008
【図６】
2011210164.tif 000009
【図７】
2011210164.tif 000010
【図８】
2011210164.tif 000011
【図９】
2011210164.tif 000012
【図１０】
2011210164.tif 000013