JP2023009584A - 画像処理装置、画像処理方法、およびプログラム - Google Patents

画像処理装置、画像処理方法、およびプログラム Download PDF

Info

Publication number
JP2023009584A
JP2023009584A JP2021112992A JP2021112992A JP2023009584A JP 2023009584 A JP2023009584 A JP 2023009584A JP 2021112992 A JP2021112992 A JP 2021112992A JP 2021112992 A JP2021112992 A JP 2021112992A JP 2023009584 A JP2023009584 A JP 2023009584A
Authority
JP
Japan
Prior art keywords
objects
paper area
paper
image
image object
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021112992A
Other languages
English (en)
Inventor
友樹 柴森
Tomoki Shibamori
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2021112992A priority Critical patent/JP2023009584A/ja
Priority to US17/835,240 priority patent/US11947787B2/en
Publication of JP2023009584A publication Critical patent/JP2023009584A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0483Interaction with page-structured environments, e.g. book metaphor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1256User feedback, e.g. print preview, test print, proofing, pre-flight checks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00411Display of information to the user, e.g. menus the display also being used for user input, e.g. touch screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/0044Display of information to the user, e.g. menus for image preview or review, e.g. to help the user position a sheet
    • H04N1/00442Simultaneous viewing of a plurality of images, e.g. using a mosaic display arrangement of thumbnails
    • H04N1/00456Simultaneous viewing of a plurality of images, e.g. using a mosaic display arrangement of thumbnails for layout preview, e.g. page layout
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/3872Repositioning or masking

Abstract

【課題】複数のオブジェクトを集約する際の使用性を向上させること。【解決手段】オブジェクトを編集するためのプログラムであって、コンピュータを、複数の用紙領域と用紙領域に配置されるオブジェクトとを含むプレビューを画面に表示させる表示制御手段と、ユーザの入力に応じて、用紙領域に配置される一つ以上のオブジェクトを選択し、ドラッグ操作を受け付ける受付手段と、受付手段で受け付けた操作に応じて複数のオブジェクトを同時に移動させる場合、特定の条件を満たしている場合に、複数のオブジェクト同士の位置関係を維持せずに同一の用紙領域にオブジェクトを集約させる移動手段と、として機能させることを特徴とするプログラムを提供する。【選択図】図13

Description

本発明は、画像処理装置において、オブジェクトを編集する技術に関する。
従来、プレビュー画面に画像オブジェクトを表示し、ユーザの操作に基づいて画像オブジェクトの配置または編集処理を行った後に、印刷装置に対して印刷指示を行う画像処理装置が存在する。
特許文献1では、複数のページと画像オブジェクトとをプレビュー画面上に表示し、ユーザから受け付けた画像オブジェクトの移動などのレイアウト操作を基にレイアウトを変更し、そのレイアウト結果を印刷する方法が開示されている。
特開2019-91350号公報
しかしながら、特許文献1のように、複数のページに複数のオブジェクトが配置される構成において、それらのオブジェクトを一つのページ上に集約して配置しようとすると、ユーザによる操作指示回数が多くなるという課題がある。
そこで本発明は、複数のオブジェクトを集約する際の使用性を向上させることを目的とする。
本発明の一態様に係るプログラムは、オブジェクトを編集するためのプログラムであって、コンピュータを、複数の用紙領域と前記用紙領域に配置されるオブジェクトとを含むプレビューを画面に表示させる表示制御手段と、ユーザの入力に応じて、前記用紙領域に配置される一つ以上のオブジェクトを選択し、ドラッグ操作を受け付ける受付手段と、前記受付手段で受け付けた操作に応じて複数の前記オブジェクトを同時に移動させる場合、特定の条件を満たしている場合に、複数の前記オブジェクト同士の位置関係を維持せずに同一の用紙領域にオブジェクトを集約させる移動手段と、として機能させることを特徴とする。
本発明によれば、複数のオブジェクトを集約する際の使用性を向上させることができる。
複数画像移動時の課題の説明する図である。 画像処理装置のハードウェア構成を示すブロック図である。 画像処理装置のソフトウェア構成を示すブロック図である。 画像処理装置の表示部で表示する画面の一例を示す図である。 レイアウト情報の一例を示す図である。 画像オブジェクトおよび所属用紙領域説明する図である。 画像オブジェクトの移動処理を説明する図である。 所属用紙領域の変更を伴う画像オブジェクトの移動処理を説明する図である。 レイアウト情報の一例を示す図である。 画像オブジェクトの所属用紙領域決定処理のフローを示す図である。 画像オブジェクトの所属用紙領域決定処理を説明する図である。 画像オブジェクトの所属用紙領域決定処理の詳細を説明する図である。 複数画像オブジェクト移動時の制御方法決定のフローを示す図である。 複数画像オブジェクト移動時の処理を説明する図である。 複数画像オブジェクト移動時の処理を説明する図である。 複数画像オブジェクト移動時の集約処理を説明する図である。 複数画像オブジェクト移動時の自動配列処理を説明する図である。 複数画像オブジェクト移動時の集約処理を補足説明する図である。 複数画像オブジェクト移動時の制御方法決定のフローを示す図である。 複数画像オブジェクト移動時の処理を説明する図である。 複数画像オブジェクト移動時の処理を補足説明する図である。
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
実施形態の説明の前に、複数のページに複数の画像オブジェクトが配置される構成において、それらの画像オブジェクトを一つのページ上に集約して配置しようとする場合に、ユーザによる操作指示回数が多くなる点を補足して説明する。
図1は画像処理装置上の表示部により表示制御される画面を示した図である。画面上に用紙領域101、102、および103が表示され、用紙領域101上に画像オブジェクト104、用紙領域102上に画像オブジェクト105、用紙領域103上に画像オブジェクト106が配置されている。画像処理装置は、ユーザの画像オブジェクト移動操作を受け付けると、ユーザが指示した位置へ画像オブジェクトを移動させ、画面に反映する。この時、ユーザは画像処理装置上に表示された画像オブジェクトを一度に複数選択し、まとめて移動指示を行うことが可能である。
図1において、すべての画像オブジェクトを用紙領域102上に集約して配置する場合を考える。この場合、ユーザは画像オブジェクト104を用紙領域102へ移動させた後、さらに画像オブジェクト106を用紙領域102上へ移動させる必要があり、用紙領域102上に画像オブジェクトの集約を行うために2回の操作を要する。一方で、画像オブジェクト104および画像オブジェクト106を一度に選択し、まとめて用紙領域102へ移動指示をすると、一方の画像オブジェクトは用紙領域102に配置されるが、他方は用紙領域102外に配置される。このため、用紙領域102外に配置された他方のオブジェクトを再度選択して、用紙領域102に移動させる必要がある。即ち、画像オブジェクトを一度に複数選択してまとめて移動指示を行う場合でも、用紙領域102上に画像オブジェクトの集約を行うために2回の操作を要する。
また、上記では用紙領域と画像オブジェクトとがそれぞれ3つ存在する場合を例に説明したが、用紙領域と画像オブジェクトとがそれ以上に存在するケースでは、さらに移動指示の回数が多くなり、集約操作に手間がかかる。以下の実施形態では、画像オブジェクトを移動させる場合に、特定の条件によって移動制御方法を切り替える方法を説明していく。
<<実施形態1>>
<画像処理装置のハードウェア構成>
図2は、画像処理装置のハードウェア構成の一例を示すブロック図である。本図において、ホストコンピュータ201は画像処理装置の一例であり、入力インタフェース210、CPU211、ROM212、およびRAM213を有する。また、ホストコンピュータ201は、外部記憶装置214、出力インタフェース215、および入出力インタフェース216、およびNETIF(ネットワークインタフェース)220を有する。
CPU211は、ROM212に格納されたプログラムの手順に従って処理を行うことによって、ホストコンピュータ201における後述の機能及び後述するフローチャートに係る処理を実現する。ROM212には、初期化プログラムが格納され、外部記憶装置214には、アプリケーションプログラム群、オペレーティングシステム(OS)、印刷装置のドライバ、またはその他の各種のデータが格納されている。RAM213は、外部記憶装置214にストアされる各種のプログラムの実行の際のワークメモリ等として使用される。
入力インタフェース210には、キーボード218、またはポインティングデバイス217などの入力デバイスが接続され、出力インタフェース215には、ディスプレイまたはタッチパネル等の表示デバイスを含む表示部219が接続されている。NETIF220は、ネットワークを介して外部機器との間でデータ転送を行うための制御を行う。デバイスである印刷装置202は、入出力インタフェース216を介して、ホストコンピュータ201と接続されている。なお、ここではホストコンピュータ201と印刷装置202とが分かれて構成されているが、これらが一つの画像処理装置として構成されていても良い。
<画像処理装置のソフトウェア構成>
図3は、本実施形態におけるホストコンピュータ201が有するソフトウェア構成の一例を示すブロック図である。図3では、主にホストコンピュータ201にインストールされる画像処理ソフトウェア300の機能について説明する。画像処理ソフトウェア300は、画像受付部301、UI制御部302、レイアウト制御部303、印刷設定部304、印刷処理部305、および記憶部306を有する。
以降、画像処理ソフトウェア300の機能ブロックを、各処理の主体として説明することもあるが、実際には対応するプログラムをCPU211が実行することで、対応する機能が実現することになる。なお、本実施形態では、ユーザからの操作を受け付けるポインティングデバイスとしてマウスを例に説明を行うが、実際はこれに限定するものではない。例えば、ホストコンピュータ201の表示部219にタッチパネルを搭載し、画像処理ソフトウェア300はタッチ操作による操作を受け付けることで処理を行う構成としても良い。
画像受付部301は画像または図形データといった画像オブジェクトを受け付けた後、画像処理ソフトウェア300が制御しやすい形式で記憶部306に記憶する。例えば、印刷用の元データと、画像オブジェクトを低解像度でレンダリングして生成したサムネイル画像と、をそれぞれ記憶部306に記憶してもよい。これにより、後述するUI制御部302で画像オブジェクトを表示する際のパフォーマンスが向上する。
印刷設定部304は、用紙サイズまたは用紙の向きなどの印刷装置202で印刷を行うために必要な印刷設定の指定をユーザから受け付け、受け付けた印刷設定を記憶部306に記憶する。レイアウト制御部303は、UI制御部302で受け付けたユーザ操作に基づいて画像オブジェクトのレイアウト処理を行う。レイアウト処理の一例として、画像オブジェクトの編集や位置の移動、画像オブジェクト間の前後(前面背面)の位置関係の変更などが該当する。
UI制御部302は、印刷設定部304により設定された印刷設定とレイアウト情報とに基づいて印刷媒体の領域を示す用紙領域または画像オブジェクトを表示部219に表示する。レイアウト情報とは、用紙領域または画像オブジェクトの、座標位置またはサイズを管理する情報である。レイアウト情報は、表示部219で用紙領域もしくは画像オブジェクトを表示する場合、または印刷装置202で印刷可能な印刷データを生成する場合に用いられる。レイアウト情報の詳細は図5を用いて後述する。
この他、UI制御部302は、ユーザのマウス操作などの操作受付を行う。UI制御部302はマウスのドラッグ操作による画像オブジェクトの移動操作を受け付けると、ドラッグ操作の開始位置と終了位置とを含む移動情報を取得する。次に、取得した移動情報に基づいてレイアウト制御部303が画像オブジェクトのレイアウト処理を行い、処理結果に基づいてレイアウト情報を更新する。その後、UI制御部302は更新されたレイアウト情報に基づいて表示部219にレイアウト処理後の画像オブジェクトを表示する。
記憶部306は、画像オブジェクトの情報、レイアウト情報、または印刷設定情報など画像処理ソフトウェア300内で一連のレイアウト処理と印刷処理とを行うために必要な情報を記憶する。印刷処理部305は、UI制御部302でユーザから印刷指示操作を受け付けると、印刷処理を開始する。印刷処理部305は、記憶部306に記憶された画像オブジェクトと、そのレイアウト情報および印刷設定と、に基づき描画命令を生成し、外部記憶装置214に格納されたドライバを用いて印刷装置202に対して印刷指示を行う。
なお、本実施形態では、画像処理ソフトウェア300は外部記憶装置214に格納された印刷装置202に対応したドライバを用いることで、印刷装置202に対して印刷を実行するが、印刷実行方法はこの限りではない。例えば、画像処理ソフトウェア300は印刷装置202が解釈可能な印刷データを生成し、NETIF220などを介して印刷装置202と直接通信し、印刷データを送信することで印刷を実行する構成でも良い。
<画像処理ソフトウェアのプレビュー画面一例>
図4は画像処理ソフトウェア300が表示するプレビュー画面の一例である。プレビュー画面400は、編集ツールバー部401、プレビュー部402、設定部403、および印刷操作部404を有する。
編集ツールバー部401には、画像オブジェクトを編集するためのボタンが配置されており、処理に対応する各ボタンを押下することで、選択されている画像オブジェクトの向きの変更またはトリミングなどの編集操作を行うことが可能である。プレビュー部402では、用紙領域と用紙領域上の画像オブジェクトとが表示されており、ユーザは画像オブジェクトをマウスで選択し、ドラッグ操作することで画像オブジェクトの移動、拡大縮小、またはトリミングなどの編集操作を行うことが可能である。
本実施形態では、用紙領域をプレビュー部402の左上から右下方向へ一定の間隔を空けてページ数順に配置する構成としているが、用紙領域の配置方法はこれに限定するものではない。例えばプレビュー部402上に右上から左下方向に配置する構成、または用紙領域を縦一列で上から下方向に配置する構成であってもよい。また、編集ツールバー部401などに用紙領域の表示列数指定を受け付けることが可能なコントロール部を配置し、ユーザが指定した任意の列数で並べて配置するような構成でも良い。
なお、画像オブジェクトはいずれかの用紙領域に所属し、UI制御部302によって所属する用紙領域の前面に描画される。さらに、画像オブジェクトは、一つの用紙領域上に複数配置することも可能である。画像オブジェクトの移動処理については、図7、および図8を用いて後述する。また、本実施形態では、画像処理ソフトウェア300が有する画像受付部301において、画像オブジェクトを受け付けた直後の画像オブジェクトの初期配置方法について特に限定はしない。例えば各用紙領域に対して1つの画像オブジェクトが内接するようにプレビュー部402上に配置して表示する方法であってもよい。なお、ここでは画像オブジェクトを例に説明するが、画像に限らずテキスト等のオブジェクトでも本実施形態は適用可能である。
設定部403には、印刷に用いる用紙サイズと用紙の向きとを指定可能なコントロール部が配置されている。ユーザがコントロール部を選択すると、設定可能な項目が印刷装置202の能力情報に基づき表示される。また、用紙のサイズまたは用紙の向きが変更された場合は、図3のレイアウト制御部303により用紙領域と画像オブジェクトとの再配置を行っても良い。再配置の方法として、初期配置方法と同様に、各用紙領域に対して1つの画像オブジェクトが内接するように再配置してもよい。
印刷操作部404には、印刷ボタンが配置されており、ユーザが印刷ボタンを押下すると、画像処理ソフトウェア300はレイアウト情報と印刷設定とに基づき印刷データを生成し、印刷装置202に対して印刷指示を行う。
<レイアウト情報>
図5は用紙領域および画像オブジェクトのレイアウト情報を示す図である。図5(a)は用紙領域のレイアウト情報を示しており、図5(b)は画像オブジェクトのレイアウト情報を示している。まず、図5(a)が示す用紙領域のレイアウト情報を説明する。用紙領域のレイアウト情報は、用紙領域のインデックス、用紙領域の位置、用紙の向き、用紙の幅、および用紙の高さ、の情報を有する。用紙領域のインデックスは、用紙領域毎に固有の番号が付与される。例えば、ページ数などが該当する。図5(a)では、1ページ目の用紙領域のレイアウト情報であることを示している。用紙領域の位置は、図4におけるプレビュー部402上の用紙領域の位置を示すものであり、図5では、用紙領域の位置の一例として、用紙領域の左上部分の位置座標を値として記憶している。用紙の向きは、設定部403で設定された用紙の向きにより決定し、用紙を縦向きで表示するか横向きで表示するかを示すものである。用紙の幅、および用紙の高さは、設定部403で設定された用紙サイズに基づいて決定され、用紙領域の位置とともにプレビュー部402で用紙領域を表示するために用いられる。
図6は、プレビュー部402において用紙領域と画像オブジェクトとが表示されている図である。図5(b)が示す画像オブジェクトのレイアウト情報の項目について図6を用いて説明する。画像オブジェクトのレイアウト情報は、所属用紙領域、所属用紙領域に対する位置、画像オブジェクトの向き、画像オブジェクトの幅、および画像オブジェクトの高さ、の情報を有する。所属用紙領域とは、画像オブジェクトが所属する用紙領域を示す情報であり、画像オブジェクトはいずれか一つの用紙領域に所属する。
図6では、用紙領域601、602、603、および画像オブジェクト604がプレビュー部402に配置されている。図6のように2ページ目の用紙領域602から3ページ目の用紙領域603に渡って画像オブジェクトが配置されるようなケースでも、所属用紙領域は一つに決定することができる。また、上述のケースに限らず、複数用紙領域に渡って画像オブジェクトが配置される場合でも、画像オブジェクトをいずれか一つの用紙領域に所属させることで、画像オブジェクト移動時のレイアウト制御をより詳細に行うことが可能となる。画像オブジェクトの所属用紙領域決定のフローは図10にて後述する。なお本実施形態では、画像オブジェクトは用紙領域内外に限らず表示を行っているが、所属用紙領域外の画像オブジェクト領域は非表示としてもよいし、半透明にして表示してもよい。所属用紙領域外の画像オブジェクト領域の表示方法を変更することで、ユーザは画像オブジェクトが所属する用紙領域を視覚的に認識することが可能となる。
図5(b)の説明に戻る。所属用紙領域に対する位置は、所属用紙領域においての画像オブジェクトの左上座標の位置を示しており、プレビュー部402における画像オブジェクトの表示位置は、「所属用紙領域に対する位置」の座標の値を基に決定される。画像オブジェクトの向きは、画像オブジェクトを配置する向きを示しており、画像オブジェクトの編集ツールバー部401のオブジェクトの向きの変更操作により変更される。画像オブジェクトの幅、および画像オブジェクトの高さは、画像オブジェクトの横方向および縦方向の長さをそれぞれ示しており、用紙領域に対する位置とともにプレビュー部402における画像オブジェクトの表示に用いられる。
なお、図5はレイアウト情報の一例を示した図であるため、実際に格納される項目はこの例の限りではない。例えば図5の用紙領域のレイアウト情報は、「用紙領域のインデックス」、「用紙領域の位置」、「用紙の向き」、「用紙の幅」、および「用紙の高さ」の情報により構成される。しかし、用紙領域の描画位置または領域が一意に定まるのであれば、格納する情報は異なっていても良い。なお、レイアウト情報は用紙領域および画像オブジェクト毎に管理される。したがって、例えば、用紙領域と画像オブジェクトとが6つずつ存在する場合は、記憶部306において、用紙領域のレイアウト情報、および画像オブジェクトのレイアウト情報がそれぞれ6つずつ管理されることになる。
<画像オブジェクトの移動>
前述したようにプレビュー部402に表示される画像オブジェクトは、ユーザ操作により移動可能であり、画像処理ソフトウェア300のレイアウト制御部303で移動処理が行われたのちにレイアウト情報が更新される。この画像オブジェクトの移動処理の詳細について図7を用いて説明する。なお、説明の簡略化のために座標上の一単位を1ピクセルとし、1mmを1ピクセルとして表示することを前提に説明を行う。
図7は、画像オブジェクトを移動させる場合の移動処理を説明する図である。図7はプレビュー部402上に用紙領域701と画像オブジェクト702とが配置された状態を示しており、矩形領域703は画像オブジェクト702の移動後の位置を示している。なお、図7では横方向をX、縦方向をYとして、プレビュー部402上の座標を(X,Y)と表現し、用紙領域701を幅210mm、長さ207mmの用紙領域とする。用紙領域701はプレビュー部402上の座標(0,0)、(0,297)、(210,297)、および(210,0)を頂点に持つ矩形領域で表現される。また、画像オブジェクト702はプレビュー部402上の座標(30,30)の位置から配置される幅高30mmの画像オブジェクトである。点704はユーザが画像オブジェクト702をドラッグ操作した際の開始点を示し、また点705はドラッグ操作の終了点を示している。
例えば、ユーザが画像オブジェクト702の領域内である座標(60,60)をクリックすると、画像オブジェクト702が選択状態となる。次に、ユーザがドラッグ操作を行うと、画像処理ソフトウェア300は、UI制御部302でドラッグの開始位置と終了位置とを取得する。UI制御部302で取得したドラッグの開始位置と終了位置とを用いて、画像オブジェクト702の移動量は以下のように計算することができる。
移動量(x,y)=(XE―XB,YE-YB)・・・式(1)
式(1)におけるXBおよびYBは、それぞれドラッグ操作の開始位置のX座標およびY座標であり,XEおよびYEは、それぞれドラッグ操作の終了位置のX座標およびY座標を示している。ドラッグ操作の開始位置が座標(60,60)、終了位置が座標(140,120)であるとすると、式(1)の計算の結果、移動量は(+80,+60)となる。よって、画像処理ソフトウェア300は画像オブジェクトの位置を横方向に+80、縦方向に+60だけ移動させる。その結果、図7のように画像オブジェクト702はプレビュー部402の左上の座標値で座標(30,30)の位置から座標(110,90)の位置へと移動し、画像処理ソフトウェア300はレイアウト制御部303で画像オブジェクトの位置座標の更新を行う。
なお、上述した画像オブジェクトのドラッグ操作時に、ドラッグ中のマウスカーソル位置を検出することで、暫定の移動量を決定し、画像オブジェクトの暫定移動先を表すゴースト画像をプレビュー部402に表示する構成としてもよい。ゴースト画像の表現に限定はないが、矩形を表示する構成でも良いし、画像オブジェクトの透明度を変更したものをゴースト画像とする構成でも良い。
図8はプレビュー部402上に表示され、用紙領域上に配置されている画像オブジェクトの移動処理を示した図である。所属用紙領域の変更を伴う画像オブジェクトの移動について図8を用いて説明を行う。図8ではプレビュー部402上に用紙領域801と用紙領域802とが存在している。用紙領域801は、プレビュー部402上の座標(0,0)、(0,297)、(210,297)、および(210,0)を頂点に持つ幅210mm、長さ297mmの用紙を表現している。
同様に、用紙領域802は、プレビュー部402上の座標(310,0)、(310,297)、(520,297)、および(520,0)を頂点に持つ幅210mm、長さ297mmの用紙を表現している。さらに、用紙領域801上には画像オブジェクト803が配置されており、用紙領域801に対する位置はプレビュー部402上の座標(20,20)となっている。例えばユーザがプレビュー部402上の座標(50,50)をクリックすると、座標(50,50)は画像オブジェクト803の領域内であるため、画像オブジェクト803が選択状態となる。次に、ユーザはドラッグ操作を行う。ドラッグ操作の開始位置が座標(50,50)、終了位置が座標(360,110)である場合、画像オブジェクト803の移動量は式(1)の計算の結果(+310,+60)となる。レイアウト制御部303は画像オブジェクト803の位置を横方向に+310、縦方向に+60だけ移動させ、移動後の用紙領域801に対する画像オブジェクト803の位置は座標(330、80)となる。また、移動後の画像オブジェクト803は、図8のように矩形領域804の位置となる。
なお、画像オブジェクトの移動時、および移動後の座標をレイアウト情報として記憶部306に記憶するために、所属用紙領域に対する位置の決定を行う。図8の例の場合、用紙領域802の左上座標は(310,0)であるため、画像オブジェクト803の用紙領域802に対する位置は座標(20,80)となり、この値がレイアウト情報として格納される。
また、図8のように画像オブジェクト803は、用紙領域801から用紙領域802へと移動される際、移動の前後で更新される画像レイアウト情報の項目は、「所属用紙領域」および「所属用紙領域に対する位置」、である。したがって、レイアウト制御部303は記憶部306に記憶している画像オブジェクト803のレイアウト情報のうち所属用紙領域と画像オブジェクトの位置座標の更新とを行う。図8の場合、用紙領域801の用紙領域のインデックスが1、用紙領域802の用紙領域のインデックスが2、とすると、画像オブジェクト803の所属用紙領域は1から2へと変更される。
図9は図8を例とした場合の移動処理により変更されるレイアウト情報を示した図である。上述したように、画像オブジェクト803の「所属用紙領域」、および「所属用紙領域に対する位置」は図9の表に示すように変更される。
続いて、図10を用いて画像オブジェクト移動時における画像オブジェクトの所属用紙領域を決定する方法について説明する。
図10は、画像オブジェクトの所属用紙領域を決定するフローを示した図である。本フローは、ユーザが用紙領域内にある画像オブジェクトを選択する操作をすることで開始される。尚、図10の各ステップにおける処理は、ホストコンピュータ201のCPU211が有する画像処理ソフトウェア300が、ROM212に記憶されているプログラムコードを、RAM213に展開し実行することにより行われる。また、各処理の説明における記号「S」は、当該フローチャートにおけるステップであることを意味する。
まず、S1001において画像処理ソフトウェア300は、所属用紙領域判定タイミングのドラッグ操作中のマウスの座標位置を取得する。次に、S1002において画像処理ソフトウェア300は、ポインティングデバイスであるマウスの座標位置が図4のプレビュー部402に配置されているいずれかの用紙領域内であるか否かの判定を行う。判定の結果、マウスの座標位置が用紙領域内であれば、S1005へと進み、マウスの座標位置が用紙領域外であれば、S1003へと進める。S1005において画像処理ソフトウェア300は、マウスの座標位置に存在する用紙領域に画像オブジェクトを所属させ、本フローを終了する。なお、移動前後で所属する用紙領域が変わらない場合は、レイアウト情報の更新を行わなくて構わない。
S1003において画像処理ソフトウェア300は、ドラッグ操作の開始位置と現在のマウスの座標位置とから画像オブジェクトの移動量を決定し、移動後の画像オブジェクトと用紙領域との重複領域の面積を決定する。面積の決定は、移動後の画像オブジェクトが重なる用紙領域の数の分だけ行う。S1004において画像処理ソフトウェア300は、S1003で決定した重複領域の面積が最も大きい用紙領域を、画像オブジェクトを所属用紙領域と決定し、本フローを終了する。
なお、S1003で決定した重複領域の面積がすべて同等の場合や、移動後の画像オブジェクトがいずれの用紙領域とも重ならない場合、マウスの座標位置と用紙領域との最短距離がより近い用紙領域を選択する構成が考えられる。また、別の構成としては、用紙領域のインデックスがより小さいほうを選択する構成や、移動処理をキャンセルする構成も考えられる。
図11は画像オブジェクトの所属用紙領域の決定処理を説明する図である。前述した画像オブジェクト移動時の所属用紙領域決定フローの処理例について図11を用いて説明する。図11では6ページの用紙領域が存在し、用紙領域1101上に画像オブジェクト1107が配置されている。図11のように、画像オブジェクト1107をユーザが選択し、ドラッグ操作によって用紙領域1101、1102、1104、および1105に重なるように矩形領域1108の位置に画像オブジェクト1107が移動する場合を考える。この場合CPU211は、用紙領域1001、1002、1004、および1005と、画像オブジェクト1107と、が重複する面積をそれぞれ決定する。
図12は、画像オブジェクト1107、用紙領域1101、および重複面積を示す図である。図12の配置の場合、画像オブジェクト1107と用紙領域1101の重複面積は以下の式で求められる。
重複面積=(Xb-Xa)(Yb-Ya)・・・式(2)
式(2)におけるXa、Yaは移動後の画像オブジェクト1107の左上座標のX座標とY座標とを示しており、Xb、Ybは用紙領域1001の右下座標のX座標とY座標とを示している。図12のように用紙領域1101の右下の座標が(210,297)、移動後の画像オブジェクト1107の左上座標が(190,277)であるとすると、式(2)により重複面積は400となる。
同様に、用紙領域1102、1104、および1105と、画像オブジェクト1107との重複面積の決定をそれぞれ行い、その中から最も重複面積の大きい用紙領域を決定する。図11においては用紙領域1105が画像オブジェクト1007との重複面積が最も大きいため、図10のS1004の判定に基づき、画像オブジェクト1107は矩形領域1108の位置に移動後、所属用紙領域が用紙領域1005となる。
以上のように、マウスの座標位置と移動後の画像オブジェクト位置とに基づいて、画像オブジェクトの所属用紙領域を決定することで、ユーザ操作に対してより感覚的に自然な所属用紙領域の判定が可能となる。
<複数画像オブジェクトの移動>
次に複数の画像オブジェクトの移動について説明を行う。ユーザは異なる用紙上に存在する画像オブジェクトを同時に選択し、移動指示を行うことが可能である。複数画像オブジェクトの移動の場合、移動する画像オブジェクトの移動前の位置と移動先とに応じて、画像オブジェクトのレイアウト制御方法を切り替える。図13でレイアウト制御方法の決定方法について説明を行う。
図13は複数画像オブジェクト移動時のレイアウト制御方法のフローを示した図である。本フローは、ユーザが用紙領域内にある画像オブジェクトを選択する操作をすることで開始される。尚、図13の各ステップにおける処理は、ホストコンピュータ201のCPU211が有する画像処理ソフトウェア300が、ROM212に記憶されているプログラムコードを、RAM213に展開し実行することにより行われる。また、各処理の説明における記号「S」は、当該フローチャートにおけるステップであることを意味する。
まず、S1301において画像処理ソフトウェア300は、選択された画像オブジェクトおよびその画像オブジェクトの所属用紙領域を検出する。次にS1302において画像処理ソフトウェア300は、選択されている画像オブジェクトの所属用紙領域がすべて同一か否かを判定する。選択されている画像オブジェクトの所属用紙領域がすべて同一である場合、S1306へと進み、選択されている画像オブジェクトの所属用紙領域が一つでも異なる場合、S1303へと進む。
S1303において画像処理ソフトウェア300は、ユーザのドラッグ操作に基づいて画像オブジェクトの移動量の決定を行う。次に、S1304において画像処理ソフトウェア300は、S1303で決定した移動量に基づいてドラッグ対象の画像オブジェクトを移動させた場合の所属用紙領域を判定する。ドラッグ対象の画像オブジェクトとは、選択された複数の画像オブジェクトのうち、ユーザによるポインティングデバイスを用いた操作の始点となっている画像オブジェクトのことである。なお、画像オブジェクトの移動量の決定、または画像オブジェクトの所属用紙領域の判定は図8または図10等で説明した方法を用いてもよい。
次にS1305において画像処理ソフトウェア300は、ドラッグ対象の画像オブジェクトの所属用紙領域が移動前後で変わるか否かの判定を行う。ドラッグ対象の画像オブジェクトの所属用紙領域が移動前後で変わる場合、S1307へ進み、ドラッグ対象の画像オブジェクトの所属用紙領域が移動前後で変わらない場合、S1306へと進む。
S1306において画像処理ソフトウェア300は、画像オブジェクトの移動処理を画像オブジェクト間の位置関係を維持したまま行う第一制御方法を実行し、本フローを終了する。一方、S1307において画像処理ソフトウェア300は、画像オブジェクトの移動処理をオブジェクト間の位置を維持せずに行う第二制御方法を実行し、本処理を終了する。第一制御方法および第二制御方法についての詳細は後述する。
なお、画像オブジェクトのドラッグ中は常に図13のS1303~S1307の処理を行い、選択された移動対象の画像オブジェクト全てに対して、移動先を示すゴースト画像を表示するのがより好ましい。この処理により、ユーザはドラッグ操作中も画像オブジェクトがどのように配置されるかをイメージすることができ、ユーザの利便性が向上する。
<第一制御方法>
次に、図13にて記載した第一制御方法について図14、および図15のそれぞれの場合を例に説明する。
図14は、選択された複数画像オブジェクトの移動処理を説明する図である。具体的には、選択された複数画像オブジェクトがすべて同一の所属用紙領域である場合の画像オブジェクト移動例を示した図である。図14は、プレビュー部402上に用紙領域1401、および1402が配置され、用紙領域1401上に画像オブジェクト1403、1404、および1405が配置されている。これらの画像オブジェクトは全て同一の所属用紙領域であるため、前述したように、レイアウト制御部303は、第一制御方法で画像オブジェクトの移動を行う。
第一制御方法では、ユーザが複数の画像オブジェクト選択し、オブジェクトの移動指示を行った場合、選択された複数画像オブジェクト間の位置を維持して移動を行う。具体的には、図13のS1303で決定された移動量に基づき、選択された全画像オブジェクトが同一の移動量で移動される。図14の場合、ユーザが画像オブジェクト1403、1404、および1405を選択し、ドラッグ対象の画像オブジェクトである画像オブジェクト1403上の点1409を点1410へドラッグ操作をする。画像オブジェクトの移動指示を行うとレイアウト制御部303は画像オブジェクト1403、1404、および1405を移動量分だけ位置関係を維持したまま、それぞれ矩形領域1406、1407、および1408の位置に移動させる。この時、移動された各画像オブジェクトの所属用紙領域は2ページ目である用紙領域1402に更新される。
なお、画像オブジェクト1403、1404、および1405は位置関係を維持し同一の移動量で移動するため、移動量の計算は、例えば1403に対してのみ行い、決定した移動量を1404,および1405の移動量とすることができる。また、移動後の画像オブジェクトが、用紙領域外へ配置される場合は、用紙領域内に収まるように位置を調整しても良い。その場合、調整後の位置をドラッグ操作中にゴースト画像として表示するのがより好ましい。
次に図15を用いて、S1305の条件分岐により第一制御方法が選択される場合の例について説明する。
図15は、選択された複数画像オブジェクトの移動処理を説明する図である。具体的には、選択された複数画像オブジェクトを移動させる場合において、移動の前後でドラッグ対象の画像オブジェクト1505の所属用紙領域が変わらない場合を説明する図である。なお、本図においては同時に選択されたドラッグ対象以外の画像オブジェクト(画像オブジェクト1506)に関しても、移動の前後で所属用紙領域は変わらないことを前提に説明を進める。
図15は、プレビュー部402上に用紙領域1501、1502が配置され、用紙領域1501上に画像オブジェクト1505、用紙領域1502上に画像オブジェクト1506が配置されている。ユーザが画像オブジェクト1505、1506を選択し、画像オブジェクト1505上の点1503を点1504へドラッグ操作することで、レイアウト制御部303は画像オブジェクトの移動処理を行う。S1302の条件分岐の判定に従うと、画像オブジェクト1505と画像オブジェクト1506とは異なる用紙領域に所属しているため、S1303~S1305の処理が行われる。図15では、移動後、ドラッグ対象の画像オブジェクトの所属ページが変わらないため、S1305の条件分岐の判定に従い、第一制御方法で移動処理が行われる。
第一制御方法における移動処理の結果、レイアウト制御部303は画像オブジェクト1505、画像オブジェクト1506をオブジェクト間の位置関係を維持して、矩形領域1507、1508の位置へと移動を行う。
以上のように、複数画像オブジェクトの移動時に、移動前の所属用紙領域が同一の画像オブジェクトを別の用紙領域へ移動する場合は、画像オブジェクトの位置を維持して移動する第一制御方法によりレイアウト制御を行う。これにより、ユーザの編集状態を可能な限り維持した状態で、画像オブジェクトの用紙変更を伴う移動が可能となる。
<第二制御方法>
図16は選択された複数画像オブジェクトの移動処理を説明する図である。具体的には、所属用紙領域が異なる複数の画像オブジェクトを、ある一つの用紙領域へ集約させる場合の制御方法(即ち、第二制御方法)を説明する図である。第二制御方法では、選択された複数画像オブジェクト間の位置関係は維持せずに移動が行われる。図16では、プレビュー部402上に、用紙領域1601、1602、1603、および1604が配置されている。また、画像オブジェクト1605は用紙領域1601、画像オブジェクト1606が用紙領域1603、また画像オブジェクト1607および画像オブジェクト1608が用紙領域1604上にそれぞれ配置されている。例えばユーザが画像オブジェクト1605、1606、1607、および1608を選択し、画像オブジェクト1605上の点1609を用紙領域1602上の点1610へドラッグ操作を行う。
その結果、レイアウト制御部303は、画像オブジェクト1605、1606、1607、および1608を用紙領域1602へ画像オブジェクト間の位置を維持せずに移動させる。図16では、移動対象の4つの画像オブジェクトが重ねて配置されている。画像オブジェクトを重ねて配置することで、画像オブジェクトのサイズを維持した状態で、ユーザが指定した用紙領域へ集約ができる、というメリットがある。重ねる順番の決定方法の一例として、移動前の画像オブジェクトが所属する用紙領域のインデックスと、移動前の画像オブジェクトの前後の配置関係とに基づき決定してもよい。なお、重ねる順番の決定方法は上述したものには限らない。例えば、画像オブジェクトのサイズや面積が大きいものから順に背面から配置する構成でもよい。
図16において、用紙領域のインデックスの値は、小さい方から用紙領域1601、1602、1603、および1604の順番であるとする。この順番を基にそれぞれに所属している画像オブジェクトを重ねる順番を決定する。即ち、用紙領域1601に所属する画像オブジェクト1605を最背面として、用紙領域1603に所属する画像オブジェクト1606、用紙領域1604に所属する画像オブジェクト1607、そして画像オブジェクト1608の順に前面に配置される。画像オブジェクト1607および画像オブジェクト1608は、所属用紙領域が同一であるため、移動前の前後関係に基づいて、重ねる順番が決定される。図16の例の場合、画像オブジェクト1607が画像オブジェクト1608よりも背面となるように配置される。
上述により決定した順番に基づいて、レイアウト制御部303は、画像オブジェクト1605、1606、1607、および1608を、矩形領域1611、1612、1613、および1614の位置にそれぞれ重ねて配置する。画像オブジェクトを重ねる順番は、画像オブジェクト1605を最背面とし、画像オブジェクト1606、1607、1608の順である。なお、重ねて配置された画像オブジェクトはその後、ユーザの操作により用紙領域1602内の任意の位置へ移動される。また、第二制御方法で画像オブジェクトが移動される場合においてもゴースト画像の表示が有効である。さらに、画像オブジェクトの前後関係が分かりやすいように、ゴーストに影を付けることで奥行きを表現するドロップシャドウを付加して表示しても良い。
また、複数の画像オブジェクトの位置関係を維持せず移動する第二制御方法の別の例として、一つの用紙領域内に画像オブジェクトを自動配列する構成も考えられる。
図17は、図16における画像オブジェクト1605、1606、1607、および1608を用紙領域1602へ自動は配列を用いて移動させた場合の画面を示している。自動配列では、画像オブジェクト同士が重なることなく用紙領域上に配置されるため、視認性が良くなるメリットが得られる。また、自動配列された画像オブジェクトがユーザの要望通りの配置であった場合は、再度ユーザの操作によって用紙領域内を移動させる動作を省くことができる。なお、自動配列では、用紙領域内に収まるようにサイズの自動調整処理を適宜行い、また用紙領域内に収まらないオブジェクトのみ重ねて配置するような処理が行われる場合がある。自動配列の方法は特に限定しないが、例えば移動前の画像オブジェクトが所属する用紙領域の順序と移動前の画像オブジェクトの前後関係とに基づき、用紙領域上に重ならないように並べて配置する方法が考えられる。
ユーザにより画像オブジェクトの移動操作が行われると、図13のフローにおけるS1307の処理が行われ、画像処理ソフトウェア300により移動先の用紙領域上に各画像オブジェクトが自動配列される。自動配列の結果、画像オブジェクト1605、1606、1607、および1608は矩形領域1701、1702、1703、および1704の位置に移動する。なお、自動配列を行う場合も画像オブジェクトを重ねて配置する場合と同様に、自動配列後の配置イメージが分かりやすくなるように、ドラッグ操作中はゴースト表示を行うのがより好ましい。
さらに、第二制御方法により画像オブジェクトが制御される際に、移動前後で所属用紙領域が変更されない画像オブジェクトは、画像オブジェクトの集約対象から除外し、移動前の位置を維持する構成も考えられる。一例として図18を用いて説明を行う。
図18は複数画像オブジェクト移動時の集約処理の補足説明図である。具体的には、所属用紙領域が異なる複数の画像オブジェクトを一つの用紙領域に集約させる際に、移動の前後で所属用紙領域が変更されない画像オブジェクトが含まれる場合における画像オブジェクト移動の説明図である。
図18ではプレビュー部402上に用紙領域1801、1802、1803、および1804が配置されている。また、画像オブジェクト1805が用紙領域1801、画像オブジェクト1806が用紙領域1802、画像オブジェクト1807が用紙領域1803にそれぞれ配置されている。ユーザは、画像オブジェクト1805、1806、および1807を選択し、画像オブジェクト1805上の点1808から用紙領域1802上の点1809へドラッグ操作を行う。
その結果、レイアウト制御部303は、移動前後で所属用紙領域が異なる画像オブジェクト1805および1807に対しては用紙領域1802上に重ねて配置を行う。一方、移動前後で所属用紙領域が変わらない画像オブジェクト1806に対しては、移動前の位置を維持する。即ち、図18に示すように、レイアウト制御部303は、画像オブジェクト1805を矩形領域1810、画像オブジェクト1807は矩形領域1811の位置へ移動させ、画像オブジェクト1806の位置は変更しない。る。なお、図18において、3つの画像オブジェクトを選択し、ドラッグ対象の画像オブジェクト1805上の点1808から用紙領域1801(同じ所属用紙領域)内にドラッグした場合は、3つの画像オブジェクトは第一制御方法にて移動されることになる。
以上説明したように、本実施形態によれば、複数の画像オブジェクトを集約する際の使用性を向上させることを目的とする。具体的には、複数の画像オブジェクトの移動の前後で所属用紙領域がどのように変更するかによって、移動後の画像オブジェクト同士の位置関係を維持するかどうかを含む制御方法を切り替えることが可能となる。ユーザは画像オブジェクトの選択および移動操作のみで、集約操作と画像オブジェクトとの位置関係を維持した移動操作を直感的に行うことが可能となるとともに、従来よりも画像オブジェクトの集約操作の手順が減少するため利便性が向上する。また、ドラッグ移動時において、移動後にどのように画像オブジェクトが配置されるかをゴースト表示によって示すことにより、ユーザは画像オブジェクト移動後のレイアウトをよりイメージしやすくなる。
<<実施形態2>>
本実施形態では、実施形態1とは異なる条件で、複数画像オブジェクト移動時の制御方法を切り替える方法について説明する。具体的には、同一の用紙領域内に存在する複数の画像オブジェクトを移動させる場合において、移動後に用紙領域外に配置される画像オブジェクトがあるかどうかによって制御方法を切り替えることを考える。以降、実施形態1と同様の構成及び処理については説明を省略し、実施形態1と異なる処理について主に説明する。
図19は、本実施形態における複数画像オブジェクト移動時のレイアウト制御方法のフローを示した図である。本フローは、ユーザが用紙領域内にある画像オブジェクトに対し選択操作をすることで開始される。尚、図19の各ステップにおける処理は、ホストコンピュータ201のCPU211が有する画像処理ソフトウェア300が、ROM212に記憶されているプログラムコードを、RAM213に展開し実行することにより行われる。また、各処理の説明における記号「S」は、当該フローチャートにおけるステップであることを意味する。
まず、S1901において画像処理ソフトウェア300は、ユーザ操作により選択された画像オブジェクトの検出を行う。次に、S1902において画像処理ソフトウェア300は、UI制御部302においてユーザによるドラッグ操作を受け付けることで、ドラッグ操作による移動量の決定を行う。次に、S1903において画像処理ソフトウェア300は、選択されたことで移動対象となっている全画像オブジェクトの移動後位置の決定を行う。
S1904において画像処理ソフトウェア300は、S1903で決定した移動対象となっている全画像オブジェクトの移動後の位置が用紙領域外に配置されるか否かの判定を行う。S1904の判定の結果、移動対象の全画像オブジェクトの内、移動後の位置が用紙領域外に配置される画像オブジェクトが一つでも存在すると判定された場合は、S1906へと進む。また、移動対象の全画像オブジェクトの移動後の位置がすべて用紙領域内である場合には、S1905へと進む。なお、本実施形態では、S1904において、移動前後での画像オブジェクトの「所属用紙領域の変更の有無」とは関係なく判定が行われる。移動後の画像オブジェクトが用紙領域内か否かの判定の際は、画像オブジェクトの一部が用紙領域に収まっていれば、用紙領域内と判定しても良いし、画像オブジェクト全体が用紙領域内に含まれていない場合は、用紙領域外と判定しても良い。
S1905において画像処理ソフトウェア300は、移動対象の画像オブジェクトの位置関係を維持した第一制御方法でレイアウト制御を行い、本フローを終了する。一方、S1906において画像処理ソフトウェア300は、移動対象の画像オブジェクト同士の位置関係を維持しない第二制御方法でレイアウト制御を行い、本フローを終了する。なお、第二制御方法は実施形態1に記載の図16で説明した画像オブジェクトを重ねて配置する構成でも良いし、実施形態1に記載の図17を用いて説明した画像オブジェクトを自動配列する構成を取っても良い。また前述したように、図19のS1904は、移動対象の全画像オブジェクトにおける移動前後での「所属用紙領域の変更の有無」とは関係なく判定を行うものとして説明したが、「所属用紙領域の変更の有無」を判定の要素に含ませてもよい。例えば、移動の前後で所属用紙領域が変更される画像オブジェクトが一つもなく、且つ移動後に画像オブジェクトが用紙領域外に配置されるような場合は第一制御方法で移動させる、というようにさせてもよい。
図20は、本実施形態のレイアウト制御フローを説明するための図である。図20では、プレビュー部402上に用紙領域2001と用紙領域2002とが配置されており、用紙領域2001上に画像オブジェクト2003、2004、および2005が配置されている。ユーザが画像オブジェクト2003、2004、および2005を選択し、ドラッグ対象の画像オブジェクトである画像オブジェクト2003上の点2006を用紙領域2002上の点2007へドラッグ操作して用紙領域2002へ移動指示を行う場合を考える。この場合、レイアウト制御部303は、画像オブジェクト2003、2004、および2005をそれぞれ、矩形領域2008、2009、および2010の位置へ移動させる。この時、図20で示すように画像オブジェクト2010は用紙領域外に存在するため、画像オブジェクト2003、2004、および2005は、第二制御方法でレイアウト制御が行われる。即ち3つの画像オブジェクトが重ねて配置される。
図21は、本実施形態のフローに従い第二制御方法で画像オブジェクトを移動させた結果を示す図である。画像オブジェクト2003、2004、および2005はそれぞれ矩形領域2101、2102、および2103の位置に配置される。なお、本実施形態においても、画像オブジェクトのドラッグ操作中にゴースト画像を表示し、ユーザが配置結果を視覚的に確認しながら操作できる構成が好ましい。
また、実施形態1と同様に、第二制御方法は画像オブジェクトを重ねて配置する方法に限らず、画像オブジェクトが重ならないように移動先の用紙領域上に自動配列するようにしてもよい。
以上説明したように、本実施形態によれば、選択された複数のオブジェクトのうち、ドラッグ対象の画像オブジェクト以外(画像オブジェクト2004または2005)が用紙領域外に移動する場合、第二制御方法による集約操作へ切り替る。これにより、画像オブジェクトの移動先がより明確になるメリットが得られる。
<<その他の実施形態>>
本発明は、上述の実施形態の1以上の機能を動作可能なプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
201 ホストコンピュータ
202 印刷装置
300 画像処理ソフトウェア

Claims (15)

  1. オブジェクトを編集するためのプログラムであって、
    コンピュータを、
    複数の用紙領域と前記用紙領域に配置されるオブジェクトとを含むプレビューを画面に表示させる表示制御手段と、
    ユーザの入力に応じて、前記用紙領域に配置される一つ以上のオブジェクトを選択し、ドラッグ操作を受け付ける受付手段と、
    前記受付手段で受け付けた操作に応じて複数の前記オブジェクトを同時に移動させる場合、特定の条件を満たしている場合に、複数の前記オブジェクト同士の位置関係を維持せずに同一の用紙領域にオブジェクトを集約させる移動手段と、
    として機能させることを特徴とするプログラム。
  2. 前記移動手段は、ドラッグ対象のオブジェクトが移動する用紙領域に、前記受付手段により選択された複数の前記オブジェクトを移動させることを特徴とする請求項1に記載のプログラム。
  3. 前記移動手段は、前記受付手段により選択された複数の前記オブジェクトのうち、所属する用紙領域が他のオブジェクトと異なるオブジェクトが一つ以上ある場合を、前記特定の条件とすることを特徴とする請求項1または2に記載のプログラム。
  4. 前記移動手段は、選択された複数の前記オブジェクトのうち、ドラッグ対象のオブジェクトが所属する用紙領域が移動の前後で異なる場合を、前記特定の条件とすることを特徴とする請求項3に記載のプログラム。
  5. 前記移動手段は、前記受付手段により選択された複数の前記オブジェクトのうち、移動先の位置が用紙領域外となる前記オブジェクトが1つ以上ある場合を、前記特定の条件とすることを特徴とする、請求項1に記載のプログラム。
  6. 前記移動手段は、前記受付手段により選択された複数の前記オブジェクトを移動先の用紙領域に集約する際に、複数の前記オブジェクト同士を重ねることを特徴とする請求項1乃至5のいずれか一項に記載のプログラム。
  7. 前記移動手段は、移動前の前記オブジェクトが属する用紙領域のページ数と、選択された複数の前記オブジェクト同士の前面または背面を示す配置関係と、の少なくとも一方に基づいて前記オブジェクトを重ねる順番を決定することを特徴とする請求項1乃至6のいずれか一項に記載のプログラム。
  8. 前記移動手段は、複数の前記オブジェクト同士を重ねる際に、複数の前記オブジェクトのサイズは維持することを特徴とする請求項1乃至7のいずれか一項に記載のプログラム。
  9. 前記移動手段は、前記受付手段により選択された複数の前記オブジェクトを移動先の用紙領域に集約する際に、複数の前記オブジェクト同士が重ならないように配列させることを特徴とする請求項1乃至5のいずれか一項に記載のプログラム。
  10. 前記移動手段は、複数の前記オブジェクト同士が重ならないように配列させる際に、用紙領域に収まるように複数の前記オブジェクトのうちの少なくとも一部のオブジェクトのサイズを調整することを特徴とする請求項9に記載のプログラム。
  11. 前記移動手段は、前記受付手段により選択された複数の前記オブジェクトのうち、移動前後で所属する用紙領域が変わらないオブジェクトを、集約する対象から除外し、移動前の位置を維持させることを特徴とする請求項1乃至10のいずれか一項に記載のプログラム。
  12. 前記移動手段は、前記特定の条件を満たさない場合に、複数の前記オブジェクト同士の位置関係を維持してオブジェクトを移動させることを特徴とする請求項1乃至11のいずれか一項に記載のプログラム。
  13. 前記受付手段は、ドラッグ操作を受け付ける間、前記オブジェクトの配置結果をプレビューするゴースト表示を行うことを特徴とする請求項1乃至12のいずれか一項に記載のプログラム。
  14. 複数の用紙領域と前記用紙領域に配置されるオブジェクトとを含むプレビューを画面に表示させる表示制御手段と、
    ユーザの入力に応じて、前記用紙領域に配置される一つ以上のオブジェクトを選択し、ドラッグ操作を受け付ける受付手段と、
    前記受付手段で受け付けた操作に応じて複数の前記オブジェクトを同時に移動させる際、特定の条件を満たしている場合に、複数の前記オブジェクト同士の位置関係を維持せずに同一の用紙領域にオブジェクトを集約させる移動手段と、
    を備えることを特徴とする画像処理装置。
  15. オブジェクトを編集する機能を有する画像処理装置の制御方法であって、
    複数の用紙領域と前記用紙領域に配置されるオブジェクトとを含むプレビューを画面に表示させる表示制御ステップと、
    ユーザの入力に応じて、前記用紙領域に配置される一つ以上のオブジェクトを選択し、ドラッグ操作を受け付ける受付ステップと、
    前記受付ステップで受け付けた操作に応じて複数の前記オブジェクトを同時に移動させる際、特定の条件を満たしている場合に、複数の前記オブジェクト同士の位置関係を維持せずに同一の用紙領域にオブジェクトを集約させる移動ステップと、
    を有することを特徴とする画像処理装置の制御方法。
JP2021112992A 2021-07-07 2021-07-07 画像処理装置、画像処理方法、およびプログラム Pending JP2023009584A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021112992A JP2023009584A (ja) 2021-07-07 2021-07-07 画像処理装置、画像処理方法、およびプログラム
US17/835,240 US11947787B2 (en) 2021-07-07 2022-06-08 Image processing apparatus, image processing method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021112992A JP2023009584A (ja) 2021-07-07 2021-07-07 画像処理装置、画像処理方法、およびプログラム

Publications (1)

Publication Number Publication Date
JP2023009584A true JP2023009584A (ja) 2023-01-20

Family

ID=84798709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021112992A Pending JP2023009584A (ja) 2021-07-07 2021-07-07 画像処理装置、画像処理方法、およびプログラム

Country Status (2)

Country Link
US (1) US11947787B2 (ja)
JP (1) JP2023009584A (ja)

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4241325B2 (ja) * 2002-12-25 2009-03-18 セイコーエプソン株式会社 レイアウトシステム
JP2006040118A (ja) * 2004-07-29 2006-02-09 Matsushita Electric Ind Co Ltd 階層データ編集装置
JP2007086824A (ja) * 2005-09-16 2007-04-05 Seiko Epson Corp 画像処理装置、画像処理方法、およびプログラム
JP5030622B2 (ja) * 2006-03-16 2012-09-19 株式会社リコー 画像処理装置及びプレビュー表示方法
JP4270242B2 (ja) * 2006-08-22 2009-05-27 コニカミノルタビジネステクノロジーズ株式会社 情報処理装置及びプリント指示プログラム並びにプリント指示プログラムを記録した記録媒体
US20100079773A1 (en) * 2008-09-29 2010-04-01 Konica Minolta Systems Laboratory, Inc. Method for printing a composed document from multiple print jobs
JP5249297B2 (ja) * 2010-09-28 2013-07-31 シャープ株式会社 画像編集装置
US20120092690A1 (en) * 2010-10-13 2012-04-19 Toshiba Tec Kabushiki Kaisha Print setting apparatus, image forming apparatus, print preview display method
US9183658B2 (en) * 2011-11-14 2015-11-10 Microsoft Technology Licensing, Llc Animation creation and management in presentation application programs
JP5921156B2 (ja) * 2011-11-16 2016-05-24 キヤノン株式会社 印刷装置、レイアウト変更方法、及びプログラム
JP6338318B2 (ja) * 2012-11-30 2018-06-06 キヤノン株式会社 操作装置、画像形成装置及びコンピュータプログラム
JP6362207B2 (ja) * 2013-09-24 2018-07-25 株式会社日立国際電気 映像表示システム、操作端末、操作方法およびプログラム
JP6700749B2 (ja) * 2015-11-28 2020-05-27 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
US10379726B2 (en) * 2016-11-16 2019-08-13 Xerox Corporation Re-ordering pages within an image preview
JP7043232B2 (ja) * 2017-11-16 2022-03-29 キヤノン株式会社 プログラム、印刷制御装置および印刷システム
JP6977661B2 (ja) * 2018-05-14 2021-12-08 コニカミノルタ株式会社 印刷制御装置、印刷制御プログラム及び印刷制御方法
JP7186528B2 (ja) * 2018-07-06 2022-12-09 キヤノン株式会社 プログラム、情報処理装置およびその制御方法
JP7236286B2 (ja) * 2019-02-15 2023-03-09 シャープ株式会社 画像形成装置
US11775237B2 (en) * 2019-02-26 2023-10-03 Kyocera Document Solutions Inc. Display device capable of displaying preview image
JP7301630B2 (ja) * 2019-06-28 2023-07-03 キヤノン株式会社 プログラム、制御装置および制御方法
JP2022155144A (ja) * 2021-03-30 2022-10-13 キヤノン株式会社 プログラム、画像処理方法、及び画像処理装置

Also Published As

Publication number Publication date
US11947787B2 (en) 2024-04-02
US20230008933A1 (en) 2023-01-12

Similar Documents

Publication Publication Date Title
JP5269851B2 (ja) 画像編集装置及びその画像編集方法並びにそのプログラム
JP2013166301A (ja) 画像形成装置、画像形成装置の制御方法並びにプログラム
JP5882779B2 (ja) 画像処理装置、画像処理装置の制御方法及びプログラム
US9082050B2 (en) Computer-readable medium storing image processing program and image processing apparatus for improving the operability of image arrangement in a print preview screen
JP5029683B2 (ja) 画像処理装置及び同装置の表示制御方法並びに表示制御プログラム
JP5832257B2 (ja) 情報処理装置、表示制御方法、及びプログラム
JP2016126657A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2014038560A (ja) 情報処理装置、情報処理方法及びプログラム
US8928919B2 (en) Computer-readable medium storing image processing program and image processing apparatus
JP6145292B2 (ja) 画像形成装置
JP6053291B2 (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
JP5921156B2 (ja) 印刷装置、レイアウト変更方法、及びプログラム
JP2012178175A (ja) 表示制御装置、電子機器、表示制御方法、およびプログラム
JP2024055962A (ja) 情報処理装置、制御方法およびプログラム
JP2012008884A (ja) 編集装置、編集装置におけるレイアウト編集方法およびプログラム
JP2007110392A (ja) 画像処理装置
JP2016092471A (ja) 画像形成装置、画像形成装置の制御方法、及びプログラム
JP2023009584A (ja) 画像処理装置、画像処理方法、およびプログラム
JP7329957B2 (ja) 仮想オブジェクト表示装置、及びプログラム
JP6372116B2 (ja) 表示処理装置、画面表示方法およびコンピュータープログラム
JP2013164659A (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
JP5066877B2 (ja) 画像表示装置、画像表示方法、およびプログラム
JP2015049656A (ja) 情報処理装置、方法及びプログラム
JP2016111390A (ja) 画像形成装置
JP2014108533A (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム