(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-03-07
(45)【発行日】2025-03-17
(54)【発明の名称】プログラム及び情報処理装置
(51)【国際特許分類】
G06T 11/60 20060101AFI20250310BHJP
【FI】
G06T11/60 100C
(21)【出願番号】P 2020169200
(22)【出願日】2020-10-06
【審査請求日】2023-10-03
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】石田 智也
【審査官】渡部 幸和
(56)【参考文献】
【文献】特開2018-124781(JP,A)
【文献】特開2007-079858(JP,A)
【文献】特開平06-131335(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 11/60
G06F 3/0483
(57)【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータに、
第1の見開きページに配置されたオブジェクトを、ユーザのコピー操作に基づき前記情報処理装置のメモリ領域に保持するステップと、
前記保持されたオブジェクトを、前記第1の見開きページとは異なる第2の見開きページに貼り付ける処理を行うステップと、
前記オブジェクトの貼り付け候補位置が、配置可能領域内か判定する判定処理を行うステップと、
を実行させるプログラムであって、
前記判定処理では、前記第1の見開きページ内の前記オブジェクトが配置されていた位置に対応する、前記第2の見開きページ内の位置を貼り付け候補位置とし、前記貼り付け候補位置が前記配置可能領域内か判定され、
前記貼り付ける処理では、前記貼り付け候補位置が前記配置可能領域内と判定された
ことに基づいて、前記貼り付け候補位置に前記オブジェクトを貼り付けられ、前記貼り付け候補位置が前記配置可能領域内でないと判定された
ことのみに基づいて、前記第2の見開きページ内における前記貼り付け候補位置とは異なる位置に前記オブジェクトを貼り付けられることを特徴とするプログラム。
【請求項2】
前記判定処理では、前記第1の見開きページ内において前記オブジェクトが配置されていた座標位置に対応する、前記第2の見開きページ内における座標位置を、前記貼り付け候補位置とすることを特徴とする請求項1に記載のプログラム。
【請求項3】
前記判定処理により前記貼り付け候補位置が前記配置可能領域内ではないと判定された
ことのみに基づいて、前記第2の見開きページ内のデフォルトの配置位置に貼り付けることを特徴とする請求項1又は2に記載のプログラム。
【請求項4】
前記判定処理により前記貼り付け候補位置が前記配置可能領域内ではないと判定された
ことのみに基づいて、前記第2の見開きページ内における、前記貼り付け候補位置と縦軸もしくは横軸のうちいずれかが同じ位置に貼り付けることを特徴とする請求項1又は2に記載のプログラム。
【請求項5】
前記判定処理では、前記貼り付け候補位置が、前記第2の見開きページ内に設けられた配置禁止領域に含まれていない場合、前記貼り付け候補位置は前記配置可能領域内と判定し、前記貼り付け候補位置が、前記配置禁止領域に含まれる場合、前記貼り付け候補位置は前記配置可能領域内ではないと判定することを特徴とする請求項1から4のいずれか1項に記載のプログラム。
【請求項6】
前記判定処理では、前記貼り付け候補位置に配置される前記オブジェクトが前記第2の見開きページ内からはみ出さない場合、前記貼り付け候補位置は前記配置可能領域内と判定し、前記貼り付け候補位置に配置される前記オブジェクトが前記第2の見開きページ内からはみ出す場合、前記貼り付け候補位置は前記配置可能領域内ではないと判定することを特徴とする請求項1から5のいずれか1項に記載のプログラム。
【請求項7】
前記判定処理では、前記貼り付け候補位置に配置される前記オブジェクトが、前記オブジェクトの移動可能領域からはみ出さない場合、前記貼り付け候補位置は前記配置可能領域内と判定し、前記貼り付け候補位置に配置される前記オブジェクトが前記移動可能領域からはみ出す場合、前記貼り付け候補位置は前記配置可能領域内ではないと判定することを特徴とする請求項1から5のいずれか1項に記載のプログラム。
【請求項8】
前記判定処理ではさらに、前記オブジェクトの貼り付け位置の指定があるか判定され、前記オブジェクトの貼り付け位置の指定がある場合、前記指定された貼り付け位置を前記貼り付け候補位置として、前記貼り付け候補位置が前記配置可能領域内か判定することを特徴とする請求項1から7のいずれか1項に記載のプログラム。
【請求項9】
前記判定処理ではさらに、前記オブジェクトの種類を判定し、前記オブジェクトの種類に基づき前記配置可能領域の基準を変更することを特徴とする請求項1から8のいずれか1項に記載のプログラム。
【請求項10】
情報処理装置であって、
第1の見開きページに配置されたオブジェクトを、ユーザのコピー操作に基づき前記情報処理装置のメモリ領域に保持する保持手段と、
前記保持されたオブジェクトを、前記第1の見開きページとは異なる第2の見開きページに貼り付ける処理を行う処理手段と、
前記オブジェクトの貼り付け候補位置が、配置可能領域内か判定する判定処理を行う判定手段と、
を実行させる情報処理装置であって、
前記判定手段は、前記第1の見開きページ内の前記オブジェクトが配置されていた位置に対応する、前記第2の見開きページ内の位置を貼り付け候補位置とし、前記貼り付け候補位置が前記配置可能領域内か判定し、
前記処理手段は、前記貼り付け候補位置が前記配置可能領域内と判定された
ことに基づいて、、前記貼り付け候補位置に前記オブジェクトを貼り付け、前記貼り付け候補位置が前記配置可能領域内でないと判定された
ことのみに基づいて、前記第2の見開きページ内における前記貼り付け候補位置とは異なる位置に前記オブジェクトを貼り付けることを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム及び情報処理装置に関する。特に、オブジェクトを貼り付ける技術に関する。
【背景技術】
【0002】
ユーザが撮りためた写真データからフォトアルバムを作成するフォトアルバム作成ソフトウェアがある。フォトアルバム作成ソフトウェアでは、レイアウトした画像を編集する編集機能や、文字やスタンプを入力する編集機能がある(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
文字等のオブジェクトを入力する際、フォトアルバムのある見開きページにオブジェクトを配置した後、その配置したオブジェクトをコピーして別の見開きページにペースト(貼り付け)することが考えられる。しかしながら、フォトアルバムでは見開きページによってオブジェクトを配置できない領域が設けられている場合がある。特許文献1では綴じ部にオブジェクトを配置できないように制御する方法が開示されているが、コピー&ペーストの方法や、ページ間を跨ったコピー&ペーストについては開示されていない。
本発明の一態様では、貼り付け位置を適切に制御することを目的とする。
【課題を解決するための手段】
【0005】
本開示のプログラムは、情報処理装置のコンピュータに、第1の見開きページに配置されたオブジェクトを、ユーザのコピー操作に基づき前記情報処理装置のメモリ領域に保持するステップと、前記保持されたオブジェクトを、前記第1の見開きページとは異なる第2の見開きページに貼り付ける処理を行うステップと、前記オブジェクトの貼り付け候補位置が、配置可能領域内か判定する判定処理を行うステップと、を実行させるプログラムであって、前記判定処理では、前記第1の見開きページ内の前記オブジェクトが配置されていた位置に対応する、前記第2の見開きページ内の位置を貼り付け候補位置とし、前記貼り付け候補位置が前記配置可能領域内か判定され、前記貼り付ける処理では、前記貼り付け候補位置が前記配置可能領域内と判定されたことに基づいて、前記貼り付け候補位置に前記オブジェクトを貼り付けられ、前記貼り付け候補位置が前記配置可能領域内でないと判定されたことに基づいて、前記第2の見開きページ内における前記貼り付け候補位置とは異なる位置に前記オブジェクトを貼り付けられる。
【発明の効果】
【0006】
貼り付け位置を適切に制御することが可能になる。
【図面の簡単な説明】
【0007】
【
図1】情報処理装置を含むシステムの構成を示す図である。
【
図4】アルバムの表紙を説明するための模式図である。
【
図9】テキスト入力から貼り付けまでの例を説明する図である。
【
図14】実施形態2におけるフローチャートである。
【
図15】オブジェクトと指示位置との関係を説明する図である。
【発明を実施するための形態】
【0008】
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【0009】
<<第一の実施形態>>
<システム構成>
図1は、フォトアルバム作成/注文システムの構成の一例を示す図である。
図1において、PC1である情報処理装置は、例えば、一般的なパーソナルコンピュータであり、PC2である情報処理装置はサーバである。PC1及びPC2は、
図2で後述するようなハードウェアで構成され、Operating System(以下、OSと略す場合がある)としてWindows(登録商標)等がインストールされている。PC1、PC2は、それぞれEthernet(登録商標)で構成されるネットワーク4及び8に接続されている。
【0010】
PC1には、フォトアルバム作成アプリケーション80がインストールされている。アプリは、例えばWindows用の実行可能形式のファイル(*.EXE)で構成される。Webブラウザアプリケーション143(以下、Webブラウザと略す場合がある)は、WWW(WorldWideWeb)を利用する際に用いられるブラウザである。ネットワーク4は、ローカルネットワークであり、例えば、PC1を使用するユーザ(顧客等)が住んでいる自宅に構築されたホームネットワークである。ネットワーク8は、フォトブック作成サービスを提供している会社(例えば、ABC社)の社内に構築されたオフィスネットワークである。
【0011】
ネットワーク8に接続されているPC2は、Webサーバの機能を備えるWebサーバ9を含み、インターネットを介してABC社のWebサイトを提供している。ショッピングサイト11は、ABC社がユーザ向けにサービスを提供しているショッピングサイトであり、ユーザはショッピングサイト11を利用してフォトアルバムを注文することができる。発注された場合、サーバであるPC2に送信されたフォトアルバムデータに基づき、印刷及び製本が行われ、完成したフォトアルバムの冊子がユーザに届けられる。
【0012】
<ハードウェア構成>
図2は、PCのハードウェア構成の一例を表す図である。PC1及びPC2は、
図2に示すようなハードウェアを含んで構成されている。
図2に示す通り、PC1及びPC2は、ランダムアクセスメモリ部であるRAM201、ハードディスクドライブ部であるHDD202、キーボード部であるKBD203、CPU204を含む。また、PC1及びPC2は、表示用ディスプレイであるLCD205、ネットワークボードであるNB207をさらに含む。また、PC1及びPC2は、少なくとも
図2に示す各ブロックを互いに通信可能に接続するバス206を含む。尚、HDD202は、例えば、PC1及びPC2の記憶部である。可搬性CD-ROMまたは内部据付のROM等が記憶部であっても良い。KBD203は、例えば、PC1及びPC2の入力部である。
【0013】
CPU204は、例えば、PC1及びPC2の制御部である。LCD205は、例えば、PC1及びPC2の表示部である。NB207は、例えば、PC1及びPC2の通信制御部である。
【0014】
フォトアルバム作成アプリケーション80、Webブラウザ143等のアプリケーションプログラムや、
図3に示す各モジュール(ソフトウェア)は、例えばHDD202に記憶され、必要に応じてRAM201に読み出されてCPU204により実行される。これにより、CPU204が、フォトアルバム作成アプリケーション80、Webブラウザ143等のアプリケーションプログラムや、
図3に示す各モジュール(ソフトウェア)の機能を実現する。
【0015】
<ソフトウェア構成>
図3は、PCのソフトウェアのモジュール構成の一例を表す図である。
図3において、モジュール92は、Ethernetを制御するEthernet制御スタックである。モジュール91は、IP Networkを制御するIP Network制御スタックである。モジュール90は、ネットワーク上のデバイス探索の仕組みを提供するWSD(Web Service on Devices)を制御するWSD制御スタックである。モジュール88は、ネットワークのプラグアンドプレイを制御するPnP-X制御スタックである。尚、PnP-Xとは、ネットワーク接続デバイスに対するサポートを提供する、プラグアンドプレイの一連の拡張機能としてWindowsに標準搭載されている機能であるPlug and Play Extensionsの略称である。モジュール85は、デバイスドライバ群であり、OSに標準で同梱されている標準ドライバ群87と、IndependentHardwareVendor(IHV)から提供されるIHV製ドライバ群86とを含んで構成される。
【0016】
モジュール84は、アプリケーション/DDIインタフェースであり、ApplicationProgramingInterface(API)、DeviceDriverInterface(DDI)を含んで構成される。モジュール82は、アプリケーション群であり、フォトアルバム作成アプリケーション80、Webブラウザ143等を含んで構成される。
【0017】
<編集画面>
図4~
図7を用いて編集画面と禁止領域との関係について説明する。
図4は製本後のフォトアルバムを示し、
図5~
図7はフォトアルバムデータを作成するフォトアルバム作成アプリケーション80が提供する編集画面の例である。この編集画面は、フォトアルバム作成アプリケーション80(以下、アプリケーションと略す場合がある)を用いて、写真等の画像がレイアウトされた結果、表示される。レイアウトの方法としては、ユーザが手動で画像を配置してもよく、ユーザ指示に基づきアプリケーションが自動で画像をテンプレートに配置してもよい。
【0018】
図5(a)は、オモテ表紙とウラ表紙を表示した状態の編集画面である。オモテ表紙とウラ表紙は、
図4に示す通り、表紙の外側にあたる部分である。編集画面401は、アプリケーションが提供する画面を示す領域であり、フォトアルバムの各ページのサムネイル表示領域402、フォトアルバムの表示領域403が含まれる。サムネイル表示領域402において、ユーザがサムネイルの中から所望のサムネイルを選択すると、そのページが選択状態404になる。そして、選択状態404のページがフォトアルバムの表示領域403に表示されることにより編集操作が可能となる。
図5(a)ではオモテ表紙とウラ表紙の見開きページが選択状態である。
【0019】
写真スロット405のそれぞれには写真が割り当てられている。また、テキストボックス406はユーザが入力可能なテキストボックスであり、オモテ表紙のテキストボックス406は、フォトアルバムのタイトルが入力される。テキスト追加ボタン410は任意のテキストボックスを配置するためのボタンである。ユーザはこのテキスト追加ボタン410を指示することにより、任意の場所にテキストを配置することができる。ボタン407は編集したフォトアルバムをカートに入れるためのボタンである。ユーザがこのボタン407を押すことにより、編集したフォトアルバムがインターネット経由でショッピングカートにアップロードされる。
【0020】
図5(b)は、オモテ表紙の裏面のページ(左)とその隣のページ(右)が表示された状態の編集画面である。ここでは、オモテ表紙の裏のページは配置禁止領域408が設けられている。配置禁止領域408は、テキストボックス等のオブジェクトを配置することができない領域である。配置禁止領域とは、オブジェクトが配置することができない領域である。このような配置禁止領域は、フォトアルバムの仕様上設けられた領域であり、本実施形態では、オモテ表紙の裏以外にも存在する。具体的には、
図7を用いて後述する、ウラ表紙の裏のページと、バーコードやサービス名が記載される領域である。ただし、この配置禁止領域は1つであってもよく、また、オモテ表紙の裏やウラ表紙の裏とは異なる領域に設けられてもよい。また、フォトアルバムの綴じ部に設けられてもよい。例えば、無線綴じのような膨らみがあるタイプの綴じ方(以降スタンダードタイプと呼ぶ)ではフォトアルバムのページの折り目にテキストが重なると折り目の文字が見えにくくなる。このようにスタンダードタイプでは折り目付近に文字が入ると文字が見えにくくなるため、折り目からある程度オブジェクトを離して配置する必要がある。そのため、スタンダードタイプのフォトブックにおいては、綴じ部領域が配置禁止領域としてもよい。
【0021】
図6(a)は1-2ページの見開きページを表示した状態の編集画面である。また、
図6(b)は3-4ページの見開きページを表示した状態の編集画面である。
図6(a)、
図6(b)のようなページは本身とも呼ばれており、この例では、本身に配置禁止領域408は設けられていない。
【0022】
図7はウラ表示の裏面に相当するページ(右)とその隣のページ(左)が表示された状態の編集画面である。このウラ表紙の裏面のページとその隣のページとをまとめて奥付ページとも呼ぶ。奥付ページのうち、ウラ表紙の裏面に相当するページには、配置禁止領域408が設定されている。また、その隣のページの下の部分はバーコード409やサービス名420が記載される。バーコード409やサービス名420が記載される場合、例えば、そこにテキストボックスが配置されると重なって読みにくくなるため、この例ではその領域も配置禁止領域408となっている。
【0023】
<フォトアルバム作成アプリケーションの制御方法>
図8はフォトアルバム作成アプリケーションにより実行されるフローチャートを示した図である。
図8に示すフローチャートは、例えば、CPU204がHDD202に格納されたプログラムをRAM201に読み出して実行することにより実現される。
【0024】
S101で、ユーザ指示に基づき、CPU204は、作りたいフォトアルバムの種類を選択する。例えば、フォトアルバムの種類とは、フォトアルバムのサイズ、ページ数、綴じ方、紙の種類などのことを指す。
【0025】
S102で、ユーザ指示に基づき、CPU204は、フォトアルバムに使う写真を選択する。例えば、PC1のピクチャフォルダーに写真が保存されている場合は、ユーザがピクチャフォルダーを選択することにより写真群が選択される。
【0026】
S103では、ユーザ指示に基づき、CPU204は、フォトアルバムデータの作成を開始する。例えば、S101で選んだフォトアルバムの種類とS102で選んだ写真に応じて、フォトアルバム作成アプリケーションを読み込んだCPU204が、自動で写真を配置するテンプレートを作成し、そのテンプレート内のスロットに自動で写真を配置する。テンプレートと写真の配置が決まると、まず、
図5(a)に示した編集画面が表示される。ユーザはこの編集画面を用いてレイアウト結果を参照して手動で修正(編集)操作を開始する。
【0027】
尚、ここでは、ユーザ指示に基づき、自動で写真の配置を行う処理を説明したが、本実施形態はそれに限定されるものではない。例えば、ユーザが手動でテンプレートやフォトアルバムに採用する写真を決め、手動で配置してもよい。
【0028】
S104では、ユーザ指示に基づき、CPU204は、オブジェクトの追加を行う。なお、本フローでは、ユーザによりオブジェクトの追加及び別ページへのコピー&ペーストが行われることを前提としたものであるためS104~S109のステップを行うものとする。しかしながら、オブジェクトの追加及びコピー&ペーストが行われない場合はS104~S109のステップは省略され、ボタン407が押下されることにより編集処理は終了するとよい。本例では、S104において、ユーザによりテキスト追加ボタン410が選択されることにより、CPU204は、オブジェクトとしてテキストボックス406を追加する。
【0029】
S105では、CPU204は、S104で追加したオブジェクトを、ユーザのCtrl+Cなどのコピー操作に基づきコピーする。ここでは、テキストボックス406を、ユーザのコピー操作に基づきPC1のメモリ領域(例えば、RAM201)に保持する。
【0030】
S106では、CPU204は、S105でコピーしたオブジェクトを、別ページにCtrl+Vなどのペースト操作でペースト(貼り付け)する。ここでは、保持されているテキストボックス406を、ユーザの貼り付け操作に基づき別ページに貼り付ける。
【0031】
S107では、CPU204は、オブジェクトがコピー元の配置位置に対応する位置(典型的には同じ位置)に配置可能か判定処理を実行する。なお、本実施形態では、基本的には、貼り付け候補位置は、コピー元のオブジェクトの配置位置に対応する位置が設定されているものとする。具体的には、コピー元のオブジェクトの座標位置(ページ内の座標)と、貼り付け候補位置の座標位置(ページ内の座標)と、は同じになるように設定されている。これは、例えば、ユーザがアルバムのページ番号を挿入するためにコピー&ペーストする場合や、アルバム内の各ページの撮影月の情報を入力するためコピー&ペーストする場合があり得る。このようなケースの場合、ページ内の同じ位置に配置したいと考えられる。よって、本例では、別ページにコピー&ペーストする場合、貼り付け候補位置は、コピー元のオブジェクトの位置に対応する位置がデフォルト設定されているものとする。
【0032】
ここで、S107において、オブジェクトがコピー元の配置位置に対応する位置に配置可能かを判定する方法としては、具体的には、貼り付け候補位置(コピー元のオブジェクトの座標位置に対応する位置)が、配置禁止領域でないかを判定する。
【0033】
S107で配置可能と判断された場合(S107でYES)は、CPU204は、S108で、オブジェクトをそのコピー元の位置に対応する位置(典型的には同じ座標位置)に配置する。一方、S107で配置不可能と判断された場合(S107でNO)は、CPU204は、S109で、オブジェクトを配置可能な位置(配置可能領域内)に配置する。配置可能な位置とは、配置禁止領域以外の位置である。
【0034】
以下、具体的な貼り付け制御を
図9~
図13を用いて説明する。まず、
図9を用いて、テキストボックス406を挿入し、さらにそのテキストボックス406を別のページにコピー&ペーストする場合の基本例を説明する。
【0035】
図9(a)は、1-2ページ目の見開きページにおいて、ユーザがテキスト追加ボタン410を選択したことにより、テキストボックス406がデフォルトの挿入位置に配置された状態を示す。本例では、テキストボックス406の新規挿入時において配置されるデフォルトの挿入位置は、左上に設定されているものとする。
【0036】
図9(b)は、ユーザがテキストボックス406内に任意のテキスト(ここでは、Hello)を入力して、テキストボックス406を任意の位置(ここでは、同ページ内の中央)に移動させた状態を示す。ここで、この状態において、ユーザのコピー操作(例えば、Ctrl+Cのキーボード操作)により、テキストボックス406がコピーされ、PC1のメモリ領域に保持されたものとする。
【0037】
図9(c)は、ユーザが3-4ページ目の見開きページのサムネイルを選択したことにより、フォトアルバムの表示領域403に3-4ページ目の見開きページが表示された状態を示す。つまり、別の見開きページに切り替えられた状態を示す。
【0038】
図9(d)は、ユーザのペースト操作(例えば、Ctrl+Vのキーボード操作)により、3-4ページ目の見開きページにテキストボックス406がペーストされた状態を示す。この場合、3-4ページ目には配置禁止領域が設けられておらず、テキストボックス406は貼り付け候補位置(ページ中央)は配置可能であるため、この貼り付け候補位置に貼り付けられることになる。
【0039】
なお、
図9では別ページに貼り付けられるケースを説明したが、本実施形態は、同じページに貼り付けることも可能である。
図10を用いて、同じページにオブジェクトであるテキストボックス406をコピー&ペーストする例を説明する。
図10(a)は、1-2ページ目の見開きページが表示された状態を示す。この状態において、ユーザがテキストボックス406をコピーしたものとする。
図10(b)は、同じ1-2ページ目の見開きページにおいて、ユーザがCtrl+Vなどのペースト操作を行った場合を示す。
図10(b)に示すように、本例では、テキストボックス406が、コピー元のテキストボックス406から右下に少しずれた位置にペーストされる。本例の場合、同じページ内でのコピー&ペーストでは、貼り付け候補位置のデフォルト位置はコピー元のオブジェクトの右下になるよう設定されている。なお、1-2ページ目には配置禁止領域が無いため、
図10(b)の貼り付け候補位置にオブジェクトを貼り付けることができるが、貼り付け候補位置が配置禁止領域の場合には、配置禁止領域とは異なる位置に貼り付けられる。このように、本実施形態では、
図9のように別ページにペーストする場合と、
図10のように同じページにペーストする場合とで、デフォルトの貼り付け候補位置が異なる。つまり、別ページの場合のデフォルトの貼り付け候補位置は、コピー元のオブジェクトの配置位置に対応する位置が設定され、同じページの場合のデフォルトの貼り付け候補位置は、コピー元のオブジェクトの配置位置の近傍に設定されている。
【0040】
次に、
図11~13を用いて、別ページに貼り付ける場合、貼り付け候補位置に配置禁止領域が設定されている例を説明する。
【0041】
図11は本身のページに配置されたテキストボックス406をコピーし、奥付ページにペーストする場合の例である。
図11(a)は、1-2ページ目の見開きページが表示されている状態を示し、この状態で、ユーザはテキストボックス406をコピーするものとする。
図11(b)は、奥付ページであるウラ表紙の裏面を示すページとその隣のページが表示されている状態を示す。ユーザは、この状態で、先ほどコピーしたテキストボックス406をCtrl+Vの操作によりペーストする。この場合、貼り付け候補位置である、コピー元のオブジェクトと同じ位置は、配置禁止領域408であるため、貼り付けられない。よって、オブジェクトを同じ見開きページ内の配置可能な領域に配置する。本例では、見開きページ内の左側のページにおける左上の位置に配置する。なお、この左上の位置は、
図6においてテキスト追加ボタン410を指示した際に新たにテキストボックス406が挿入される位置と同じ位置である。これにより、できるだけユーザに分かりやすい位置になるように配置している。
【0042】
なお、
図11の例では、テキストボックス406の貼り付け候補位置が配置禁止領域に完全に含まれる場合について説明したが、本実施形態はそれに限定されない。つまり、貼り付け候補位置の一部でも配置禁止領域408に重なる場合においても、
図11のように配置禁止領域とは異なる領域に配置してもよい。つまり、一部でも配置禁止領域408に重ならないようペースト先を決定するとよい。
【0043】
図12は、本身のページに配置されたテキストボックス406をコピーし、奥付ページにペーストする他の例である。
図12(a)は、1-2ページ目の見開きページが表示されている状態を示し、この状態で、ユーザはテキストボックス406をコピーするものとする。
図12(b)は、奥付ページであるウラ表紙の裏面を示すページとその隣のページが表示されている状態を示す。ユーザは、この状態で、先ほどコピーしたテキストボックス406をCtrl+Vの操作によりペーストする。この場合、貼り付け候補位置である、コピー元のオブジェクトと同じ位置は、配置禁止領域に重なるため、配置できない。よって、オブジェクトを同じ見開きページ内の配置可能な領域に配置する。本連では、見開きページ内の左側のページにおける配置禁止領域の上にテキストボックス406を配置する。なお、この位置は、
図12(a)においてテキストボックス406が配置されていた位置と横軸の座標が同じ位置である。これにより、できるだけユーザの意図に沿った位置になるように配置している。
【0044】
なお、
図12の例においても、テキストボックス406の貼り付け候補位置が配置禁止領域に完全に含まれる場合に限定されない。
【0045】
図13は、表紙に配置されたテキストボックス406をコピーし、本身の見開きページにペーストする他の例である。
図13(a)は、表紙ページが表示されている状態を示す。ユーザはこの表紙ページの見開き中央の位置に配置されているテキストボックス406をコピーするものとする。
図13(b)は、本身の見開きページ(3-4ページ目)が表示されている状態を示す。この状態で、ユーザは、先ほどコピーしたテキストボックス406をCtrl+Vの操作によりペーストする。この場合、貼り付け候補位置である、コピー元のオブジェクトと同じ位置は、配置禁止領域408に一部重なるため配置できない。本例では、見開きページ内の左側のページにおける上側に配置する。なお、この位置は、
図13(a)においてテキストボックス406が配置されていた位置と縦軸の座標が同じ位置である。これにより、できるだけユーザの位置に沿った位置になるよう配置している。
【0046】
このように、本実施形態では、
図11、12、13を用いて説明したように、貼り付け候補位置が配置禁止領域408に一部でも重なる場合は、配置禁止領域とは異なる位置に貼り付けを行う。なお、配置禁止領域とは異なる位置として、テキストボックスを新規に追加する場合のデフォルトの位置や、コピー元の位置に近い位置の例を示したが、本実施形態はこれに限定されない。テキストボックスが配置可能な領域であればどの位置に配置しても良い。
【0047】
また、オブジェクトの例として、テキストボックス406を例に説明したが、本実施形態はそれに限定されるものではない。写真等の画像やスタンプ412など、コピー&ペーストできるオブジェクトであれば良い。
【0048】
<<実施形態2>>
次に実施形態2を
図14~16を使って説明する。実施形態2ではテキストボックス406、写真スロット411、スタンプ412などのオブジェクトの貼り付け位置をユーザが指定して貼り付ける場合の例を説明する。ユーザが貼り付ける位置を指定する方法としては、マウスの右クリックによって位置を指定し、右クリックで表示されるメニューの中から貼り付けを選択する方法があり得る。ただしそれに限定されず、例えば、左クリックにより位置を指定した状態でCtrl+Vの操作により貼り付けを行ってもよい。
【0049】
図14はフォトアルバム作成アプリケーションにより実行されるフローチャートを示した図である。
図14に示すフローチャートは、例えば、CPU204がHDD202に格納されたプログラムをRAM201に読み出して実行することにより実現される。
【0050】
図14において、S101~S106については、
図8において説明したS101~S106と基本的には同様であるため、同様の処理については説明を省略する。ただし、S106におけるペーストの方法が異なる場合があり、ペースト方法の違いによりその後の処理が分かれる。
【0051】
本実施形態においてS106では、CPU204は、S105においてコピーしたオブジェクトを別ページにペーストする処理を行う。この際、ユーザによりペースト位置を指定されてその指定位置を基準に貼り付ける方法と、実施形態1のように単にCtrl+Vの操作によりペーストする方法(ページ指定だけで位置指定はない方法)があり得る。
【0052】
そこで、S201では、CPU204は、ペースト位置の指定があるかを判定する。具体的には、マウスの右クリックによって位置を指定し、右クリックで表示されるメニューの中から貼り付けを選択したような場合は、YESと判定される。一方、実施形態1のように別ページが表示されている状態で単にCtrl+Vの操作によりユーザが貼り付け指示した場合は、NOと判定される。S201でYESと判断された場合は、S202に進み、S201でNOと判断された場合は、S107へ進む。なお、S107~S109の処理は
図8で説明したS107~S109の処理と同様であるため説明を省略する。
【0053】
ここで、
図15を用いて、ユーザ指定の貼り付け位置とオブジェクトとの関係について説明する。
図15(a)はテキストボックス406を貼り付ける例、
図15(b)は写真411を貼り付ける例、
図15(c)はスタンプ412を貼り付ける例である。
図15において指のマークを示しているが、これはカーソルを意味する。よって、矢印のようなマークでもよい。この例では、ある位置で右クリックした場合、右クリックをした位置(カーソルに対応する人差し指の位置)とオブジェクトの矩形の左上角が合うようにオブジェクトが貼り付く。例えば、スタンプ412の場合は、右クリックをした位置とスタンプ412を囲む矩形の左上角が合うように貼り付く。以下の説明においても、右クリックをした位置とオブジェクトの矩形の左上角が合うように貼り付く場合を例に説明する。ただし、本実施形態はそれに限るものではない。カーソルの位置と矩形の中央や右下角などの位置とが合うように貼り付けてもよい。
【0054】
図14に戻ってフローチャートの説明を続ける。S202では、CPU204は、ユーザに指定された貼り付け位置に貼り付け可能かを判定する。例えば、右クリックした位置に貼り付け可能か判定する。この判定は、本実施形態の貼り付け候補位置であるユーザ指定の貼り付け位置が配置禁止領域に重なるかに基づき判定するとよい。ただし、配置禁止領域以外にもページからはみ出るかに基づき判定してもよい。
【0055】
S203では、CPU204は、ユーザ指定の貼り付け位置(貼り付け候補位置)にオブジェクト(例えば、テキストボックス)を貼り付ける。一方、S204では、CPU204は、ユーザ指定の貼り付け位置(貼り付け候補位置)には貼り付けできないため、配置可能な位置にオブジェクトを貼り付ける。以下、これらの処理の詳細を、
図16~
図19を用いて後述する。
【0056】
図16は奥付ページなど配置禁止領域408を持つ見開きページ上で右クリックによりユーザがペースト位置の指定をした場合の例を説明する図である。なお、オブジェクトのコピー元は例えば、本身の見開きページであるものとする。
【0057】
まず、
図16(a)の右クリック位置Aで右クリックして貼り付け指示をした場合、配置禁止領域ではないため、テキストボックス406はその指定位置に貼り付けられる。一方、
図16(a)の右クリック位置Bで右クリックして貼り付け指示をした場合は、その位置に貼り付けるとテキストボックス406の一部が配置禁止領域408に重なる。よって、この場合は
図16(a)に示すとおり、貼り付け位置を左側にずらすことにより配置禁止領域408に重ならないよう貼り付けされる。同様に、
図16(a)の右クリック位置Cで右クリックした場合も、その位置に貼り付けるとテキストボックス406の一部が配置禁止領域408に重なる。よって、この場合は、貼り付け位置を上側にずらすことにより配置禁止領域408に重ならないよう貼り付けされる。このようにテキストボックス406を配置禁止領域408に重ならない位置に貼り付けることにより、文字が切れてしまうのを防ぐことができる。また、位置をずらす場合であっても、ユーザ指定の貼り付け位置と縦軸もしくは横軸が同じ位置になるように貼り付けることにより、できるだけユーザの位置に沿った位置になるよう配置することができる。
【0058】
なお、
図16(b)に示すようにテキストボックス406自体が配置禁止領域408に重ならないよう制御するのではなく、テキストボックス406内のテキストを基準とし、このテキストが配置禁止領域408に重ならないよう制御してもよい。
【0059】
また、本実施形態では、配置禁止領域に重ならないよう制御するだけでなく、オブジェクトがページからはみ出さないよう制御してもよい。
図17、
図18を用いて例を説明する。
【0060】
図17はテキストボックス406の貼り付け位置を右クリックで指定して貼り付ける場合の例である。
図17(a)の右クリック位置Aで右クリックしてペースト指示した場合は、その位置は配置禁止領域でもなく且つページからはみ出さないため、その位置で貼り付けられる。一方、
図17(a)の右クリック位置Bで右クリックしてペースト指示した場合は、その位置に貼り付けるとフォトアルバムのページに対応する表示領域403からはみ出す。よって、この場合は貼り付け位置を左側にずらすことにより、ページからはみ出さないようペーストされる。同様に、
図17(a)の右クリック位置Cで右クリックしてペースト指示した場合は、その位置に貼り付けるとフォトアルバムのページに対応する表示領域403からはみ出す。よって、この場合は、貼り付け位置を上側にずらすことによりページからはみ出さないようペーストされる。このように制御することにより、テキストボックス406をフォトアルバムのページからはみ出して文字が切れてしまうのを防ぐことができる。
【0061】
なお、編集画面401では、オブジェクトが移動可能な移動可能領域413が設けられていることがある。これは、オブジェクトはドラッグ&ドロップ操作でアルバム内を移動させることができる場合が多く、その場合にオブジェクトが移動できる領域として移動可能領域413が決まっている。本実施形態では、この移動可能領域413を基準に貼り付け位置を制御してもよい。
図17(b)では、オブジェクト移動可能領域413の内側であれば自由にオブジェクトを移動することができる。
図17(b)の右クリック位置Aで右クリックしてペースト指示した場合は、その位置に貼り付けることが出来るのでその位置に貼り付ける。一方、
図17(b)の右クリック位置Bで右クリックしてペースト指示した場合は、その位置に貼り付けるとフォトアルバムのページに対応する表示領域403からはみ出す。よって、この場合は、貼り付け位置を左側にずらした位置であり、且つ、移動可能領域413に沿うようにテキストボックス406を配置する。また、
図17(b)の右クリック位置Cで右クリックしてペースト指示した場合は、その位置に貼り付けるとフォトアルバムのページに対応する表示領域403からはみ出す。よってこの場合は、貼り付け位置を上側にずらした位置であり、且つ、移動可能領域413に沿うようにテキストボックス406を配置する。
【0062】
さらに、
図17(c)に示すように、テキストボックスを基準にするのではなく、テキストを基準にしてもよい。つまり、テキストがフォトアルバムのページに対応する表示領域403からはみ出さないように配置してもよい。
【0063】
次に
図18を用いて、スタンプ412の貼り付け位置を右クリックにより指定して貼り付ける場合の例を説明する。
図18(a)は、スタンプ412がフォトアルバムのページに対応する表示領域403に含まれるように配置した場合の例であり、
図17(a)と同様の制御になる。
図18(b)は、スタンプ412が移動可能領域413に沿うように配置した場合の例であり、
図17(b)と同様の制御となる。
【0064】
次に
図19を用いて、写真411の貼り付け位置を右クリックにより指定して貼り付ける場合の例を説明する。
図19(a)は、写真411がフォトアルバムのページに対応する表示領域403に含まれるように配置した場合の例であり、
図17(a)と同様の制御になる。
図19(b)は、写真スロット411がオブジェクト移動可能領域413に沿うように配置した場合の例であり、
図17(b)と同様の制御となる。
【0065】
なお、テキストの場合は、テキスト自体に意味があるためテキストが一部でも切れないことが好ましい。よって、
図16(a)、
図17(a)に示すように、テキストボックス406が配置禁止領域408に重ならないよう、もしくは、テキストボックス406がページからはみ出さないよう制御することが好ましい。一方、スタンプや写真の場合は、一部だけをアルバムに載せたいという可能性がある。例えば、スタンプの一部だけで所望の形状を表現する場合や、写真の端部の箇所が不要なためわざとはみ出して配置する場合がある。よって、スタンプや写真の場合は、
図17(b)、
図18(b)に示すように、オブジェクトの一部がはみ出したとしても、移動可能領域413に沿うように配置することが好ましい。つまり、本実施形態では、ユーザ指定の貼り付け位置に貼り付けできない場合、オブジェクトの種類に基づき、配置可能領域の基準を変更し、ずらす量を制御することが好ましい。
【0066】
<他の実施形態>
上述した実施形態では、オブジェクトとして、レイアウト後の画像(写真)、テキスト、スタンプの例について記載したが、その他のオブジェクトにおいても実現される。例えば、写真以外の画像であってもよい。
【0067】
また、上述した実施形態では、情報処理装置としてPCの例を用い、マウスのようなポインティングデバイスによる操作を例に説明したが、スマートフォンやタブレット等の端末装置においても実現可能である。この場合、指やペンによる操作が行われる。そして、貼り付け位置の指定は、タッチされた位置が相当する。
【0068】
上述した各実施形態は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPUやMPU等)がプログラムを読み出して実行する処理である。また、プログラムは、1つのコンピュータで実行させても、複数のコンピュータで連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、処理の一部または全部をASIC等のハードウェアで実現するようにしてもよい。また、CPUも1つのCPUで全ての処理を行うものに限らず、複数のCPUが適宜連携をしながら処理を行うものとしてもよい。
【符号の説明】
【0069】
80 アプリケーション
204 CPU
201 RAM
202 HDD