図1に、本発明の実施形態に係るデザイン管理装置の一例を示す。本実施形態に係るデザイン管理装置1は、デザインを作成するためのテンプレート(テンプレートデータ)を記憶している。以下、デザイン管理装置1の各部について説明する。
デザイン管理部10は、テンプレートを表示するテンプレート表示機能、テンプレートを編集するテンプレート編集機能、テンプレートを分類するテンプレート分類機能、及び、新たに作成されたテンプレートを公開(アップロード)するテンプレート公開機能を備えている。
ユーザインターフェース部(UI部)40は、操作部及び表示部を備えている。操作部は、キーボードやマウス等の入力装置である。表示部はディスプレイである。ユーザがUI部40を使用することにより、各種情報の入力やデザインの編集等が行われる。
テンプレートDB12には、デザインが異なる複数種類のテンプレートの実データ(テンプレートデータ)が記憶されている。テンプレートは、例えば、チラシ、広告、ダイレクトメール(DM)、ポスター、カタログ、はがき等についてのデザインの雛型のデータである。例えば、個々のテンプレートには、テンプレートを識別するための識別情報(例えばテンプレートID)が予め対応付けられており、そのテンプレートIDによってテンプレートが管理されている。
テンプレートは、1又は複数のデザイン部品(デザイン部品データ)(オブジェクト)によって構成されている。デザイン部品としては、例えば、表題(タイトル)の文字部品、本文の文字部品、画像部品、図形部品等がある。画像部品は、例えば、ビットマップ形式の画像データである。図形部品は、例えば、ベクター形式で表される図形データである。テンプレートは、画像データ、図形データ、テキストデータ、各データのサイズ情報及び各データの配置情報等を含むデータである。
デザイン管理部10は、テンプレートがユーザによって編集(加工、変更)された場合、その編集後のテンプレートをテンプレートDB12に保存する機能を備えている。例えば、複数種類の基本テンプレートが予め用意されてテンプレートDB12に記憶されている。基本テンプレートは、編集の大元となるテンプレート(第0世代のテンプレート)である。この基本テンプレートがユーザによって編集されると、派生テンプレート(第1世代の派生テンプレート)が生成される。デザイン管理部10は、その派生テンプレートをテンプレートDB12に保存する機能を備えている。そして、その派生テンプレート(第1世代の派生テンプレート)が編集されると、別の派生テンプレート(第2世代の派生テンプレート)が新たに生成される。その別の派生テンプレート(第2世代の派生テンプレート)も、デザイン管理部10の機能によってテンプレートDB12に保存される。このように、派生テンプレートから新たな派生テンプレートが順次作成されることにより、第n世代の派生テンプレートが作成される。そして、第1〜第n世代の各派生テンプレートがテンプレートDB12に保存されることになる。また、同じ基本テンプレートから複数の同世代の派生テンプレート(例えば複数の第1世代の派生テンプレート)が作成される場合がある。同様に、派生テンプレート(例えば第1世代の派生テンプレート)から複数の同世代の派生テンプレート(複数の第2世代の派生テンプレート)が作成される場合がある。このように、基本テンプレートを頂点として、複数の派生テンプレートが階層構造状に作成される場合がある。複数種類の基本テンプレートが用意されている場合、基本テンプレートごとに派生テンプレートが作成されることになる。以下では、派生テンプレートの作成に依拠した編集元のテンプレート(直近の親テンプレート)を、「派生元テンプレート」と称することとする。例えば、第2世代の派生テンプレートから見て、第1世代の派生テンプレートは「派生元テンプレート」(直近の親テンプレート)に相当する。
属性DB14には、テンプレートごとの属性情報が記憶されている。テンプレートの属性情報には、テンプレートID、作成者情報、編集日時情報、派生元テンプレートID(直近の親テンプレートID)、評価情報、及び、編集量情報等が含まれる。テンプレートIDは、当該テンプレートを識別するための情報である。作成者情報は、当該テンプレートの作成者(編集者)を示す情報である。編集日時情報は、当該テンプレートが編集(作成)された日時を示す情報である。派生元テンプレートID(親テンプレートID)は、当該テンプレートの作成に依拠した編集元のテンプレート(直近の親テンプレート)を識別するための情報である。例えば、第n世代の派生テンプレートの属性情報には、第(n−1)世代の派生テンプレートを識別するためのテンプレートID(派生元テンプレートID)が含まれている。また、第1世代の派生テンプレートの属性情報には、基本テンプレートを識別するためのテンプレートIDが含まれている。このような派生元テンプレートIDを利用することにより、各テンプレートの派生関係(親子関係)が特定される。つまり、各テンプレートの属性情報には派生元テンプレートIDが含まれているため、各テンプレートの派生元テンプレートIDを辿ることにより、基本テンプレートが特定される。そして、その基本テンプレートを頂点とした各テンプレートの派生関係が特定されることになる。評価情報は、当該テンプレートに対するユーザの評価を示す情報である。例えば、評価を点数で表した場合、評価が良ければ点数が高くなり、評価が悪ければ点数が低くなる。編集量情報は、派生元テンプレートから派生テンプレートが作成された際に、派生元テンプレートに対して行われた編集(加工、変更)の量を示す情報である。編集量情報は、一例として編集距離を示す情報である。
テンプレート取得部16は、テンプレートIDを受け、当該テンプレートIDに対応するテンプレートをテンプレートDB12から取得し、当該テンプレートIDに対応する属性情報を属性DB14から取得する。そして、テンプレート取得部16は、テンプレート及び属性情報を出力する。
テンプレート配信部18は、ユーザによって指定されたテンプレートIDに対応するテンプレート及び属性情報を、UI部40に表示させる。
テンプレート変更部20は、ユーザによって入力された編集情報に基づいて、編集対象のテンプレートの内容を編集(加工、変更)する。これにより、新たな派生テンプレートが作成される。テンプレート変更部20は、編集者(作成者)を示す作成者情報、編集が行われた日時を示す編集日時情報、及び、派生元テンプレートIDを、編集後のテンプレート(派生テンプレート)の属性情報に含める。また、テンプレート変更部20は、派生元テンプレートからの変更部分を示す変更部分情報を、派生テンプレートの属性情報に追加してもよい。
例えば、基本テンプレート(第0世代のテンプレート)を編集することにより第1世代の派生テンプレートが作成されると、テンプレート変更部20は、第1世代の派生テンプレートの属性情報に、基本テンプレートを識別するためのテンプレートIDを派生元テンプレートIDとして含める。
また、第1世代の派生テンプレートを編集することにより第2世代の派生テンプレートが作成されると、テンプレート変更部20は、第2世代の派生テンプレートの属性情報に、第1世代の派生テンプレートを識別するためのテンプレートIDを派生元テンプレートIDとして含める。
以降についても同様であり、第(n−1)世代の派生テンプレートを編集することにより第n世代の派生テンプレートが作成されると、テンプレート変更部20は、第n世代の派生テンプレートの属性情報に、第n−1世代の派生テンプレートを識別するためのテンプレートIDを派生元テンプレートIDとして含める。
以上のように、新たに作成された派生テンプレートの属性情報に、派生元テンプレートのテンプレートIDを含めることにより、派生元テンプレートIDに基づいて、世代を遡って各世代の派生テンプレート及び基本テンプレートが特定されるようになっている。すなわち、第n世代のテンプレートが作成された場合、当該第n世代のテンプレートの属性情報に含まれる派生元テンプレートIDを参照することにより、第n世代のテンプレートの作成に依拠した第(n−1)世代のテンプレート(直近の親テンプレート)が特定される。さらに、第(n−1)世代のテンプレートの属性情報に含まれる派生元テンプレートIDを参照することにより、第(n−1)世代のテンプレートの作成に依拠した第(n−2)世代のテンプレート(直近の親テンプレート)が特定される。以降についても同様であり、派生元テンプレートIDを利用することにより、世代を遡って、各世代の派生テンプレート及び基本テンプレートが特定される。これにより、ある基本テンプレートを基礎として派生関係にある複数の派生テンプレート(第1〜第n世代の派生テンプレート)が特定されるようになっている。
テンプレート保存部22は、編集後のテンプレート(派生テンプレート)をテンプレートDB12に記憶させ、派生テンプレートの属性情報を属性DB14に記憶させる。
編集量演算部24は、編集により新たな派生テンプレートが作成されると、大元の基本テンプレートと当該派生テンプレートとの間の編集量(第1編集量)、及び、当該派生テンプレートの作成に依拠した派生元テンプレート(直近の親テンプレート)と当該派生テンプレートとの間の編集量(第2編集量)のうちの少なくとも一方を演算する。例えば、編集量演算部24は、公開対象(アップロードの対象)となった派生テンプレートを対象にして編集量を演算する。また、編集量演算部24は、各テンプレートを構成するデザイン部品ごとの編集量を演算してもよい。このとき、編集量演算部24は、デザイン部品ごとに重み係数を変えて編集量を演算してもよい。本実施形態では、編集量は一例として編集距離である。
例えば、基本テンプレート(第0世代のテンプレート)を編集することにより第1次世代の派生テンプレートが作成されると、編集量演算部24は、第1世代の派生テンプレートの属性情報に含まれる派生元テンプレートIDに基づいて、基本テンプレート(第0世代のテンプレート)を特定する。そして、編集量演算部24は、基本テンプレートと第1世代の派生テンプレートとの間の第1編集量を演算する。
また、第1世代の派生テンプレートを編集することにより第2世代の派生テンプレートが作成されると、編集量演算部24は、第2世代の派生テンプレートの属性情報に含まれる派生元テンプレートIDに基づいて、第1世代の派生テンプレート(直近の親テンプレート)を特定する。さらに、編集量演算部24は、第1世代の派生テンプレートの属性情報に含まれる派生元テンプレートIDに基づいて、基本テンプレート(第0世代のテンプレート)を特定する。そして、編集量演算部24は、基本テンプレートと第2世代の派生テンプレートとの間の第1編集量、及び、第1世代の派生テンプレートと第2世代の派生テンプレートとの間の第2編集量のうちの少なくとも一方を演算する。
また、第2世代の派生テンプレートを編集することにより第3世代の派生テンプレートが作成されると、編集量演算部24は、上記と同様に、派生元テンプレートIDに基づいて、基本テンプレート及び第2世代の派生テンプレートを特定する。そして、編集量演算部24は、基本テンプレートと第3世代の派生テンプレートとの間の第1編集量、及び、第2世代の派生テンプレートと第3世代の派生テンプレートとの間の第2編集量のうちの少なくとも一方を演算する。
以降についても同様であり、第(n−1)世代の派生テンプレートを編集することにより第n世代の派生テンプレートが作成されると、編集量演算部24は、基本テンプレートと第n世代の派生テンプレートとの間の第1編集量、及び、第n−1世代の派生テンプレートと第n世代の派生テンプレートとの間の第2編集量のうちの少なくとも一方を演算する。
なお、基本テンプレートや派生テンプレートから複数の同世代の派生テンプレートが作成されて、基本テンプレートを頂点として複数の派生テンプレートが階層構造状に作成されている場合、編集量演算部24は、その階層構造に含まれる複数のテンプレート間の編集量を演算してもよい。例えば、編集量演算部24は、同世代の派生テンプレート間の編集量を演算してもよいし、異世代の派生テンプレート間の編集量を演算してもよい。
編集量は、派生元テンプレートからの編集の程度(加工の程度)を示す値である。編集量が小さいほど編集の程度は小さく、編集量が大きいほど編集の程度は大きい。従って、編集量が小さいほど、派生テンプレートは派生元テンプレートと似ていると評価され、編集量が大きいほど、派生テンプレートは派生元テンプレートとは似ていないと評価される。
計算用情報DB26には、編集量の計算に用いられる計算用情報が予め記憶されている。例えば、デザイン部品ごとの重み係数を示す情報が計算用情報DB26に記憶されている。編集量演算部24は、重み係数を示す情報を計算用情報DB26から取得して、デザイン部品ごとの編集量を演算する。
テンプレート分類部28は、編集量演算部24によって演算された編集量に応じて、派生テンプレートを、当該派生テンプレートの作成の基礎となった基本テンプレートと同一のグループ、又は、当該基本テンプレートとは別のグループに分類する。このとき、テンプレート分類部28は、別のグループに分類された派生テンプレートを新たな基本テンプレートとして定義する。これにより、別のグループに分類された派生テンプレートと元の基本テンプレートとの間の派生関係が切断され、当該派生テンプレートは新たな基本テンプレートとして扱われる。
例えば、テンプレート分類部28は、第1編集量及び第2編集量のうちの少なくとも一方が予め設定された閾値未満となる場合に、派生テンプレートを基本テンプレートと同一のグループに分類する。つまり、第1編集量が演算されて第1編集量が閾値未満となる場合、テンプレート分類部28は、派生テンプレートを基本テンプレートと同一のグループに分類する。これにより、基本テンプレートを基礎とした派生関係にあるとともに、基本テンプレートとの間の編集量が閾値未満となる派生テンプレート(基本テンプレートに似ている派生テンプレート)が、同一のグループに分類される。また、第2編集量が演算されて第2編集量が閾値未満となる場合、テンプレート分類部28は、派生テンプレートを基本テンプレートと同一のグループに分類する。これにより、基本テンプレートを基礎とした派生関係にあるとともに、派生元テンプレート(直近の親テンプレート)との間の編集量が閾値未満となる派生テンプレート(派生元テンプレートに似ている派生テンプレート)が、同一のグループに分類される。一方、テンプレート分類部28は、第1編集量及び第2編集量のいずれもが閾値以上となる場合に、派生テンプレートを基本テンプレートとは別のグループに分類する。これにより、基本テンプレートを基礎として派生関係にある派生テンプレートであっても、基本テンプレートにも派生元テンプレートにも似ていない派生テンプレートは、基本テンプレートとは別のグループに分類される。
別の例として、テンプレート分類部28は、第1編集量及び第2編集量のいずれもが閾値未満となる場合に、派生テンプレートを基本テンプレートと同一のグループに分類してもよい。これにより、基本テンプレートを基礎とした派生関係にあるとともに、基本テンプレート及び派生元テンプレートとの間の編集量が閾値未満となる派生テンプレート(基本テンプレート及び派生元テンプレートに似ている派生テンプレート)が、同一のグループに分類される。この場合、テンプレート分類部28は、第1編集量及び第2編集量のうちの少なくとも一方が閾値以上となる場合に、派生テンプレートを基本テンプレートとは別のグループに分類する。これにより、基本テンプレートを基礎として派生関係にある派生テンプレートであっても、基本テンプレート及び派生元テンプレートのうちの少なくとも一方に似ていない派生テンプレートは、基本テンプレートとは別のグループに分類される。
派生テンプレートが基本テンプレートとは別のグループに分類された場合、テンプレート分類部28は、当該派生テンプレートの属性情報から派生元テンプレートIDを削除する。これにより、その派生テンプレートよりも前の世代の派生テンプレート及び基本テンプレートが特定されず、その派生テンプレートは、新たな基本テンプレートとして扱われる。一方、派生テンプレートが基本テンプレートと同一のグループに分類された場合、テンプレート分類部28は、編集量を示す編集量情報を、派生テンプレートの属性情報に含める。
なお、派生テンプレートが基本テンプレートとは別のグループに分類された場合に、当該派生テンプレートが当該基本テンプレートを基礎にして作成されたことを示すために、テンプレート分類部28は、当該派生テンプレートの属性情報に、当該基本テンプレートのテンプレートIDを含めてもよい。
複数種類の基本テンプレートが予め用意されている場合、基本テンプレートごとのグループが作成される。また、基本テンプレートとは別のグループに分類された派生テンプレートは、新たな基本テンプレートとして定義されるので、その新たな基本テンプレートに基づいて派生テンプレートが作成されると、その新たな基本テンプレートついてのグループが作成されることになる。
テンプレート公開部30は、テンプレートの状態を公開状態にする。つまり、テンプレート公開部30は、テンプレートをアップロードする。公開されたテンプレートは、ユーザ間での共有が許可される。
評価部32は、テンプレートに対するユーザの評価を示すユーザ評価情報を受け、その評価情報に基づいて、当該テンプレートの属性情報に含まれる評価情報を変更する。ユーザ評価情報は、例えば、ユーザがUI部40を使用することにより入力される。
表示処理部34は、テンプレートをUI部40に表示させる。例えば、表示処理部34は、「一覧表示モード」及び「階層表示モード」のいずれかを実行する。一覧表示モード実行時では、表示処理部34は、テンプレート分類部28によって分類された各基本テンプレートのグループ(テンプレートの集合)をUI部40に表示させる。複数種類の基本テンプレートが用意又は作成されている場合、基本テンプレートごとのグループがUI部40に表示され、複数のグループがUI部40に表示されることになる。これにより、複数のテンプレートが、グループごとに分かれてUI部40に表示されることになる。
そして、その一覧表示モード実行時において、複数のグループの中から特定のグループがユーザによって指定されると、表示処理部34は、階層表示モードを実行する。階層表示モード実行時では、表示処理部34は、指定されたグループに属する複数のテンプレート(基本テンプレート及び派生テンプレート)を、派生関係に従って階層構造状(例えばツリー構造状)に配置してUI部40に表示させる。
また、表示処理部34は、テンプレートの属性情報に含まれる情報を当該テンプレートに対応付けてUI部40に表示させてもよい。例えば、表示処理部34は、評価情報、グループに含まれる派生テンプレートの世代数、グループに含まれるテンプレートのバリエーション数(グループに含まれるテンプレートの総数)、編集量情報、派生テンプレートにおいて派生元テンプレートから変更された部分等を、UI部40に表示させてもよい。
完了通知部36は、完了通知情報をUI部40に出力する。完了通知情報は、処理の完了をユーザに通知するための情報である。これにより、処理の完了を示す情報が、UI部40に表示させる。
上述したデザイン管理装置1は、一例としてハードウェア資源とソフトウェアとの協働により実現される。具体的には、デザイン管理装置1は、図示しないCPU等のプロセッサを備えている。当該プロセッサが、図示しない記憶装置に記憶されたプログラムを読み出して実行することにより、デザイン管理部10の機能が実現される。上記プログラムは、CDやDVD等の記憶媒体を経由して、又は、ネットワーク等の通信経路を経由して、記憶装置に記憶される。
次に、図2から図6を参照して、デザイン管理部10における処理の概略について説明する。なお、図2から図6において、各処理の流れが太い破線で示されている。
まず、図2を参照して、テンプレート表示機能の実行時における処理の概略について説明する。まず、ユーザがUI部40を使用してテンプレートの表示を指示すると、その指示を示す情報がUI部40からテンプレート取得部16に出力される。テンプレート取得部16は、一例として、テンプレートDB12に記憶されている全テンプレートを取得し、全テンプレートのそれぞれの属性情報を属性DB14から取得する。そして、テンプレート取得部16は、全テンプレート及び全属性情報を表示処理部34に出力する。
一覧表示モード実行時では、表示処理部34は、各基本テンプレートのグループ(テンプレートの集合)をUI部40に表示させる。具体的には、表示処理部34は、各テンプレートの属性情報に含まれる派生元テンプレートIDに基づいて、世代を遡って、各世代の派生テンプレート及び基本テンプレートを特定する。これにより、基本テンプレートを基礎として派生関係にある複数の派生テンプレート(第1〜第n世代の派生テンプレート)が特定される。その基本テンプレート及び複数の派生テンプレートは、同一のグループに属する。複数の基本テンプレートが存在する場合、基本テンプレートごとに、派生関係にある複数の派生テンプレートが特定される。そして、表示処理部34は、各基本テンプレートのグループ(テンプレートの集合)をUI部40に表示させる。
また、階層表示モード実行時では、表示処理部34は、ユーザによって指定されたグループに属する複数のテンプレート(基本テンプレート及び派生テンプレート)を、階層構造状(例えばツリー構造状)に配置してUI部40に表示させる。
次に、図3を参照して、テンプレート配信時における処理の概略について説明する。まず、ユーザがUI部40に表示されているテンプレートを参照し、UI部40を使用してテンプレートを指定、又は、当該テンプレートのテンプレートIDを入力する。ユーザによって指定されるテンプレートは、基本テンプレートであってもよいし、派生テンプレートであってもよい。ユーザによって指定されたテンプレートを示すテンプレートID、又は、ユーザによって入力されたテンプレートIDは、UI部40からテンプレート取得部16に出力される。テンプレート取得部16は、そのテンプレートIDに対応するテンプレートをテンプレートDB12から取得し、そのテンプレートをテンプレート配信部18に出力する。また、テンプレート取得部16は、そのテンプレートIDに対応する属性情報を属性DB14から取得し、その属性情報をテンプレート配信部18に出力する。テンプレート配信部18は、テンプレート取得部16から供給されたテンプレート及び属性情報をUI部40に出力し、テンプレートをUI部40に表示させる。また、テンプレート配信部18は、属性情報をUI部40に表示させてもよい。これにより、ユーザによって指定されたテンプレートが、ユーザに供給される。
次に、図4を参照して、テンプレート編集機能の実行時における処理の概略について説明する。例えば、ユーザが、UI部40を使用して、UI部40に表示されているテンプレート(派生元テンプレートに相当)を編集すると、編集対象のテンプレートのテンプレートID、及び、その編集の内容を示す編集情報が、UI部40からテンプレート取得部16に出力される。編集情報には、編集を行ったユーザを示す作成者情報及び編集日時情報が含まれる。テンプレート取得部16は、そのテンプレートIDに対応するテンプレート(編集対象のテンプレート)をテンプレートDB12から取得し、編集対象のテンプレートをテンプレート変更部20に出力する。また、テンプレート取得部16は、そのテンプレートIDに対応する属性情報を属性DB14から取得し、その属性情報をテンプレート変更部20に出力する。また、テンプレート取得部16は、UI部40から供給された編集情報をテンプレート変更部20に出力する。テンプレート変更部20は、編集情報に基づいて、編集対象のテンプレートの内容を編集(加工、変更)する。これにより、新たな派生テンプレートが作成される。テンプレート変更部20は、作成者情報、編集日時情報、及び、編集前のテンプレートのテンプレートID(派生元テンプレートID)を、編集後のテンプレート(派生テンプレート)の属性情報に含める。そして、テンプレート変更部20は、派生テンプレート及びその派生テンプレートの属性情報をテンプレート保存部22に出力する。テンプレート保存部22は、派生テンプレートをテンプレートDB12に記憶させ、その派生テンプレートの属性情報を属性DB14に記憶させる。これにより、新たに作成された派生テンプレート及び属性情報が、デザイン管理部10に登録されることになる。また、テンプレート保存部22は、登録までの処理が完了したことを示す完了情報を完了通知部36に出力する。完了通知部36は、登録までの処理が完了したことを示す完了通知情報をUI部40に表示させる。
次に、図5を参照して、テンプレート公開機能の実行時における処理の概略について説明する。例えば、ユーザによる編集により新たに作成された派生テンプレートが、公開(アップロード)の対象となる。以下では、その派生テンプレートが公開対象とする。まず、ユーザがUI部40を使用して、公開対象のテンプレート(新たに作成された派生テンプレート)のテンプレートIDを入力する。このテンプレートIDは、UI部40からテンプレート取得部16に出力される。テンプレート取得部16は、そのテンプレートIDに対応する派生テンプレートをテンプレートDB12から取得し、その派生テンプレートを編集量演算部24に出力する。また、テンプレート取得部16は、そのテンプレートIDに対応する属性情報を属性DB14から取得し、その属性情報を編集量演算部24に出力する。編集量演算部24は、上記のように、派生テンプレートの属性情報に含まれる派生元テンプレートIDに基づいて派生元テンプレート(直近の親テンプレート)を特定し、さらに、世代を遡ることにより、大元の基本テンプレートを特定する。そして、編集量演算部24は、派生元テンプレート及び基本テンプレートを、テンプレートDB12から取得する。なお、派生元テンプレート及び基本テンプレートの特定処理及び取得処理は、テンプレート取得部16によって実行されてもよい。編集量演算部24は、上記のように、基本テンプレートと派生テンプレートとの間の第1編集量、及び、派生元テンプレートと派生テンプレートとの間の第2編集量のうちの少なくとも一方を演算する。このとき、編集量演算部24は、計算用情報DB26から重み係数情報を取得して、デザイン部品ごとの編集量を演算してもよい。編集量演算部24によって演算された編集量を示す情報は、テンプレート分類部28に出力される。テンプレート分類部28は、編集量に応じて、派生テンプレートを、派生テンプレートの作成の基礎となった基本テンプレートと同一のグループ、又は、当該基本グループとは別のグループに分類する。テンプレート分類部28は、基本テンプレートとは別のグループに分類された派生テンプレートの属性情報から、派生元テンプレートIDを削除する。一方、テンプレート分類部28は、基本テンプレートと同一のグループに分類された派生テンプレートの属性情報に、編集量を示す編集量情報(第1編集量、第2編集量)を含める。属性情報はテンプレート公開部30に出力される。テンプレート公開部30は、属性情報を属性DB14に記憶させる。これにより、公開対象となった派生テンプレートの属性情報が更新される。また、テンプレート公開部30は、公開までの処理が完了したことを示す完了情報を完了通知部36に出力する。完了通知部36は、公開までの処理が完了したことを示す完了通知情報をUI部40に表示させる。
以上のように、新たな派生テンプレートが作成されてアップロードされた後、テンプレート表示機能が実行されると、新たな派生テンプレートも表示対象となる。
次に、図6を参照して、テンプレートに対する評価を行うときの処理の概略について説明する。例えば、ユーザが、UI部40を使用して、UI部40に表示されているテンプレートに対する評価を示す評価情報を入力すると、評価対象のテンプレートのテンプレートID及び評価情報が、UI部40から評価部32に出力される。評価を点数で表した場合、ユーザによって点数が入力される。例えば、良い評価であれば「+1点」が入力され、悪い評価であれば「−1点」が入力され、中間(良くも悪くもない場合)の評価であれば「0点」が入力される。なお、3段階以外の評価方法(例えば5段階以上の評価方法)によって点数が入力されるようにしてもよい。評価部32は、UI部40から供給されたテンプレートIDに基づいて、評価対象のテンプレートの属性情報を特定する。そして、評価部32は、UI部40から供給された評価情報に基づいて、その属性情報に含まれる評価情報を変更する。例えば、評価が良ければ、評価部32は、属性情報に含まれる評価情報(点数)を1点増やす。評価が悪ければ、評価部32は、属性情報に含まれる評価情報(点数)を1点減らす。これにより、属性情報に含まれる評価情報が更新される。評価部32は、評価処理が完了したことを示す完了情報を完了通知部36に出力する。完了通知部36は、評価処理が完了したことを示す完了通知情報をUI部40に表示させる。
次に、上述した実施形態について具体例を挙げて説明する。まず、図7を参照して、テンプレートの構成について説明する。テンプレート100は、基本テンプレート及び派生テンプレートのデータ構造を示すものである。例えば、テンプレート100は、表題文字部品102、ビットマップデータ等の画像部品104、本文文字部品106、ベクター形式等の図形部品108,110、及び、その他の画像部品112によって構成されている。これらの部品がデザイン部品に相当する。なお、画像部品112は、例えば地図等であり、デザインの変更が許可されていないものである。各デザイン部品のデータ容量を示す容量情報、及び、テンプレート100における各デザイン部品の配置位置情報が、テンプレート100のデータに含まれている。テンプレート編集機能の実行時では、ユーザがUI部40を使用することにより、個々のデザイン部品の内容が編集(加工、変更)される。例えば、表題文字部品102や本文文字部品106については、文字列、フォントの種類、フォントサイズ、文字の色、文字の配置位置等が、ユーザによって変更される。また、画像部品104については、画像のデザイン、画像の種類、画像の大きさ、画像の配置位置等が、ユーザによって変更される。また、図形部品108,110については、図形の色、図形の透過度(影)、図形の大きさ、図形の配置位置等が、ユーザによって変更される。このように、デザイン部品が編集されることにより、派生元テンプレートのデザインが編集されて、派生テンプレートが作成されるようになっている。
次に、図8に示すフローチャートを参照して、テンプレートの分類処理について説明する。編集量演算部24は、テンプレートのデザイン部品ごとの編集距離を演算し(S01)、全デザイン部品の編集距離の合計値を演算する(S02)。その合計値が閾値未満の場合(S03,Yes)、テンプレート分類部28は、編集距離を、派生テンプレートの属性情報に追加する(S04)。一方、合計値が閾値以上の場合(S03,No)、テンプレート分類部28は、派生テンプレートの属性情報から派生元テンプレートIDを削除する(S05)。そして、属性DB14において、派生テンプレートの属性情報が更新される(S06)。
次に、図9を参照して、編集量演算の具体例について説明する。テンプレート100Aは編集前のテンプレートであり、基本テンプレート又は派生元テンプレートに相当する。テンプレート100Bは、テンプレート100Aを編集することにより作成された編集後のテンプレートであり、派生テンプレートに相当する。一例として、テンプレート100Aの表題文字部品102Aの文字及びフォントが、テンプレート100Bの表題文字部品102Bの文字及びフォントに変更されている。また、テンプレート100Aの画像部品104Aのデザインが、テンプレート100Bの画像部品104Bのデザインに変更されている。また、テンプレート100Aの本文文字部品106Aの位置が、テンプレート100Bの本文文字部品106Bの位置に変更されている。このようにして編集された派生テンプレート100Bは、テンプレートDB12に記憶される。また、派生テンプレート100Bの属性情報には、編集前のテンプレート100AのテンプレートIDが派生元テンプレートIDとして追加される。
本実施形態では、編集量演算部24は、編集量として編集距離を演算する。編集量演算部24は、個々のデザイン部品ごとに編集距離を演算し、個々のデザイン部品ごとの編集距離の合計(総編集距離)を、派生テンプレートについての編集距離として演算する。具体的には、編集量演算部24は、以下の式(1)に基づいて総編集距離を演算する。
総編集距離=ΣΣ(デザイン部品kの属性mの編集量×重み係数)・・・(1)
ここで、kはデザイン部品の種類(表題文字部品102、画像部品104、本文文字部品106、及び、図形部品108,110)を示している。属性mは、デザイン部品kのデザイン属性を示している。例えば、表題文字部品102及び本文文字部品106については、文字数(文字長)、フォントの種類、フォントサイズ、文字の色、文字の配置位置等が、ザイン属性に相当する。また、画像部品104については、画像の大きさ、画像の配置位置、画像のデザイン等が、デザイン属性に相当する。また、図形部品108,110については、図形の色、図形の透過度、図形の大きさ、図形の配置位置等が、デザイン属性に相当する。
また、重み係数は、属性mごとに予め決定されている係数である。この重み係数を示す情報は、計算用情報DB26に予め記憶されている。テンプレートのデザインに与える影響が大きいデザイン部品ほど、重み係数の値が大きい。この重み係数は、例えば、ユーザによって変更されてもよい。
総編集距離は、編集対象となる全デザイン部品kの全属性mについての編集距離の総和である。このとき、各デザイン部品kの各属性mの編集距離について、重み係数に従った重み付けがなされている。
例えば、表題文字部品102のフォントサイズに対する重み係数が「3」であるとする。この場合において、フォントサイズが「10」から「16」に変更されると、表題文字部品103のフォントサイズ変更についての編集距離は、以下のようにして求められる。
フォントサイズ変更についての編集距離=編集量×重み係数
=(16−10)×3=18
このように、表題文字部品103のフォントサイズ変更についての編集距離は、「18」となる。
なお、フォントサイズを大きくする場合と小さくする場合とで、デザイン変化の影響が異なることがあるので、フォントサイズを大きくする場合と小さくする場合とで、異なる重み係数を用いてもよい。
そして、個々のデザイン部品kの個々の属性mごとに編集距離を演算し、全デザイン部品kの全属性mについての編集距離の総和を、テンプレート100の全体の編集距離として採用する。
ここで、図9を参照して、編集距離の計算例について説明する。一例として、表題文字部品102の文字長変更に対する重み係数を「1」とする。図9に示す例では、表題文字部品102Aの文字列「BEFORE!」が、表題文字部品102Bの文字列「AFTER!」に変更されている。従って、文字数が7文字から6文字に減少している。つまり、文字長の変更数(編集量)は「1」である。その結果、文字長変更についての編集距離は、編集量「1」×重み係数「1」=「1」となる。
また、フォント種類の変更に対する編集距離を「5」とする。「明朝体」から「ゴシック体」のようにフォントの書体が変更される場合、一例として、「10」ポイントが編集距離に追加される。その結果、フォント種類の変更についての編集距離は、編集距離「5」+追加ポイント「10」=「15」となる。
また、画像部品104の画像変更に対する重み係数を「30」とする。このとき、テンプレート100において画像部品104が占める面積の割合に基づいて、画像変更についての編集距離が演算される。図9に示す例では、画像部品104Aの画像が、画像部品104Bの画像に変更されている。例えば、画像部品の面積の割合が「70%」の場合、編集距離は、面積の割合「0.7」×重み係数「30」=「21」となる。
また、デザイン部品の配置位置の変更に対する重み係数を「0.1」とする。例えば、テンプレート100の座標を2次元のXY座標で規定した場合、X座標の変更に対する重み係数を「0.1」とし、Y座標の変更に対する重み係数を「0.1」とする。例えば、本文文字部品106Aの配置位置(X:7mm,Y:34mm)が、本文文字部品106Bの配置位置(X:52mm,Y:23mm)に変更されているものとする。この場合、本文文字部品106の配置位置変更についての編集距離は、X座標の差分(52−7)×重み係数「0.1」+Y座標の差分(34−23)×重み係数「0.1」=「5.6」となる。
従って、総編集距離は、以下のように求められる。
総編集距離=文字長変更に係る編集距離「1」+フォント種類変更に係る編集距離「15」+画像部品変更に係る編集距離「21」+配置位置変更に係る編集距離「5.6」=「42.6」
この総編集距離「42.6」が、テンプレート100A(基本テンプレート又は派生元テンプレート)とテンプレート100B(派生テンプレート)との間の編集量である。例えば、テンプレート100Aが基本テンプレートの場合、その総編集量は第1編集量に相当する。また、テンプレート100Aが、基本テンプレートを基礎にして作成された派生元テンプレート(直近の親テンプレート)の場合、その総編集量は第2編集量に相当する。総編集距離を示す編集量情報は、編集量演算部24からテンプレート分類部28に出力される。
ここで、編集距離の閾値を「100」とする。また、上記の総編集距離「42.6」が第1編集量であるとする。そして、第1編集量に基づいて派生テンプレートを分類する場合、第1編集量「42.6」は閾値「100」未満であるため、テンプレート分類部28は、テンプレート100B(派生テンプレート)を基本テンプレートと同一のグループに分類する。この場合、テンプレート分類部28は、テンプレート100Bの属性情報に、総編集距離「42.6」を示す編集量情報を追加する。なお、総編集距離(第1編集量)が閾値「100」以上となる場合、テンプレート分類部28は、テンプレート100Bを基本テンプレートとは別のグループに分類する。
また、上記の総編集量「42.6」が第2編集量であるとする。そして、第2編集量に基づいて派生テンプレートを分類する場合、第2編集量「42.6」は閾値「100」未満であるため、テンプレート分類部28は、テンプレート100Bを基本テンプレートと同一のグループに分類する。この場合も、テンプレートBの属性情報に、総編集距離「42.6」を示す編集量情報が追加される。なお、総編集距離(第2編集量)が閾値「100」以上となる場合、テンプレート分類部28は、テンプレート100Bを基本テンプレートとは別のグループに分類する。
また、第1編集量及び第2編集量の両方に基づいて派生テンプレートを分類する場合、第1編集量及び第2編集量が編集量演算部24によって演算される。そして、第1編集量及び第2編集量が共に閾値「100」未満となる場合、テンプレート100Bは基本テンプレートと同一のグループに分類される。この場合、テンプレートBの属性情報に、第1編集量及び第2編集量が編集量情報として追加される。一方、第1編集量及び第2編集量のうち少なくとも一方が閾値「100」以上となる場合、テンプレート100Bは基本テンプレートとは別のグループに分類される。
テンプレート100Bが基本テンプレートとは別のグループに分類された場合、テンプレート分類部28は、テンプレート100Bの属性情報から派生元テンプレートID(テンプレート100AのテンプレートID)を削除する。これにより、テンプレート100Aは基本テンプレートとして扱われることになる。この場合であっても、テンプレート100Bの作成の基礎となった基本テンプレートを特定するために、テンプレート分類部28は、テンプレート100Bの属性情報に、基本テンプレートのテンプレートIDを追加してもよい。
次に、図10に示すフローチャートを参照して、本実施形態に係るデザイン管理装置1の動作について説明する。まず、ユーザがUI部40を使用して一覧表示モードの実行を指示すると、基本テンプレートごとのグループ(テンプレートの集合)がUI部40に表示される(S10)。複数の基本テンプレートが存在する場合、複数のグループがUI部40に表示される。そして、ユーザがUI部40を使用して特定のグループ(テンプレートの集合)を選択すると(S11)、選択されたグループに含まれる複数のテンプレートが階層構造状(ツリー構造状)に配置されてUI部40に表示される(S12)。ユーザがUI部40を使用して特定のテンプレートを選択すると(S13)、選択されたテンプレートがUI部40に表示される(S14)。そして、ユーザはUI部40を用いてテンプレートを編集する(S15)。これにより、派生テンプレートが作成される。その派生テンプレートを公開(アップロード)する場合、その派生テンプレートについての編集量が演算され(S16)、その編集量に基づいて、派生テンプレートが分類される(S17)。その派生テンプレートは、テンプレートDB12に記憶される。
次に、図11に示すフローチャートを参照して、一覧表示モード実行時における処理の流れを説明する。一覧表示モード実行時では、個々の基本テンプレートについて、ステップS20〜S21の処理が実行される。まず、表示処理部34は、各派生テンプレートの属性情報に含まれる派生元テンプレートIDに基づいて、各世代の派生テンプレート及び基本テンプレートを特定する。これにより、基本テンプレートを基礎として派生関係にある複数のテンプレート(基本テンプレート及び複数の派生テンプレート)の束であるグループ(テンプレート集合)が生成される(S20)。また、表示処理部34は、属性情報に基づいて、派生テンプレートの世代数、テンプレートのバリエーション数、及び、評価値を演算し、グループに付加する(S21)。そして、すべての基本テンプレートについてステップS20,S21の処理が実行されると(S22,Yes)、表示処理部34は、複数のグループ(テンプレート集合)をUI部40に表示させる(S23)。このとき、世代数、バリエーション数及び評価値も表示される。
次に、図12を参照して、一覧表示モード実行時におけるテンプレートの表示例について説明する。一覧表示モード実行時では、表示処理部34は、同一グループに分類された複数のテンプレート(基本テンプレート、及び、1又は複数の派生テンプレート)を、1つのグループにまとめてUI部40(テンプレート選択画面)に表示させる。そして、表示処理部34は、複数のグループを並べてUI部40に表示させる。図12に示す例では、グループ200〜500がUI部40に表示されている。グループ200には、「OPENチラシA」という広告のデザインに関する複数のテンプレートが含まれている。グループ300には、「ショップカードA2」というカードのデザインに関する複数のテンプレートが含まれている。グループ400には、「ポイントカードC1」というポイントカードのデザインに関する複数のテンプレートが含まれている。グループ500には、「ポイントカードC2」というポイントカードのデザインに関する複数のテンプレートが含まれている。
また、図12に示すように、表示処理部34は、グループに含まれる派生テンプレートの世代数(ツリー構造のおけるツリーの深さ)、グループに含まれるテンプレートのバリエーション数(グループに含まれるテンプレートの総数)、及び、評価情報を、グループ200〜500のそれぞれに対応付けてUI部40に表示させてもよい。表示処理部34は、世代数、バリエーション数及び評価情報のうちの少なくとも1つをUI部40に表示させるようにしてもよい。
例えば、表示処理部34は、属性情報に含まれる派生元テンプレートIDに基づいて、同一グループに含まれる派生テンプレートの世代数を特定し、グループごとの世代数をUI部40に表示させる。また、表示処理部34は、同一グループに含まれるテンプレートの総数をバリエーション数としてUI部40に表示させる。また、表示処理部34は、テンプレートの属性情報に含まれる評価情報に基づいて、同一グループに含まれる各テンプレートに対する評価の合計値(合計評価)を演算し、グループごとの合計評価をUI部40に表示させる。また、表示処理部34は、同一グループ内における複数のテンプレートに対する評価値の中の最大値をUI部40に表示させてもよい。
一例として、グループ500については、世代数が「3」であり、バリエーション数が「4」であり、合計評価が「265」であり、最大値(評価の最大値)が「128」である。つまり、グループ500には、第1〜第3世代の派生テンプレートが含まれている。そして、グループ500には、基本テンプレートを含めて4個のテンプレートが含まれている。また、4個のテンプレートに対する評価値の合計が「265」である。
なお、表示処理部34は、グループ200〜500のそれぞれにおいて、基本テンプレートを最前面に表示してもよいし、評価が最も高いテンプレートを最前面に表示してもよい。
第1編集量に応じて、派生テンプレートを、基本テンプレートと同一のグループ、又は、基本テンプレートとは別のグループに分類することにより、基本テンプレートに似ている派生テンプレートが同一グループに分類される。そして、図12に示すように、グループごとにテンプレートをまとめて表示することにより、基本テンプレートに似ている派生テンプレートが集合しているグループの選択が容易となる。
また、第2編集量に応じて、派生テンプレートを、基本テンプレートと同一のグループ、又は、基本テンプレートとは別のグループに分類することにより、基本テンプレートを基礎にして作成された派生テンプレートであって派生元テンプレート(直近の親テンプレート)に似ている派生テンプレートが同一グループに分類される。そして、図12に示すように、グループごとにテンプレートをまとめて表示することにより、直近の親テンプレートに似ている派生テンプレートが集合しているグループの選択が容易となる。
また、第1編集量及び第2編集量の両方に応じて、派生テンプレートを、基本テンプレートと同一のグループ、又は、基本テンプレートとは別のグループに分類することにより、基本テンプレート及び派生元テンプレート(直近の親テンプレート)に似ている派生テンプレートが同一グループに分類される。そして、図12に示すように、グループごとにテンプレートをまとめて表示することにより、基本テンプレート及び直近の親テンプレートに似ている派生テンプレートが集合しているグループの選択が容易となる。
また、編集される回数が多いほど、同一グループに含まれる派生テンプレートの世代数やバリエーション数が増えるため、世代数やバリエーション数を表示することにより、各グループに属するテンプレートの利用頻度の把握が容易となる。また、評価情報を表示することにより、人気のあるテンプレート集合の把握が容易となる。
次に、図13に示すフローチャートを参照して、階層表示モード実行時における処理の流れを説明する。まず、表示処理部34は、各派生テンプレートの属性情報に含まれる派生元テンプレートIDに基づいて、基本テンプレート及び複数の派生テンプレートの派生関係を構築する(S30)。また、表示処理部34は、基本テンプレート及び各派生テンプレートの属性情報から、作成者情報、編集日時情報、評価情報及び編集量情報等を取得する(S31)。そして、表示処理部34は、基本テンプレート及び各派生テンプレートを階層構造状に配置してUI部40に表示させる(S32)。このとき、作成者情報、編集日時情報、評価情報及び編集量情報等が、各テンプレートに対応付けられて表示される。
次に、図14から図17を参照して、階層表示モード実行時におけるテンプレートの表示例について説明する。一覧表示モード実行時において、図12に示すグループ200〜グループ500の中で特定のグループがユーザによって指定されると、表示処理部34は、指定されたグループに含まれるテンプレートをツリー構造状に配置してUI部40(テンプレート選択画面)に表示させる。例えば、ユーザがUI部40を使用してグループ500を指定した場合、表示処理部34は、グループ500に含まれるテンプレートを、派生関係に従ってツリー構造状に配置してUI部40に表示させる。
例えば図14に示すように、グループ500には、基本テンプレート502及び派生テンプレート504〜508が含まれている。派生テンプレート504,506は共に、基本テンプレート502を編集することにより作成されたテンプレートであり、第1世代の派生テンプレートに相当する。派生テンプレート508は、派生テンプレート504を編集することにより作成されたテンプレートであり、第2世代の派生テンプレートに相当する。表示処理部34は、各テンプレート間の派生関係に従って、基本テンプレート502及び派生テンプレート504〜508をツリー構造状に配置してUI部40に表示させる。
また、表示処理部34は、各テンプレートに属性情報を対応付けてUI部40に表示させてもよい。一例として、表示処理部34は、テンプレートの作成者、作成日時(編集日時)、評価、及び、変化(変更部分)を、各テンプレートに対応付けてUI部40に表示させる。変化(変更部分)は、派生テンプレートにおいて派生元テンプレートから変更された部分である。例えば、派生テンプレート504においては、基本テンプレート502から背景及びフォントが変更されている。また、派生テンプレート508においては、派生テンプレート504から背景が変更され、タイトルの位置が移動されている。
階層構造表示モードによると、各派生テンプレートについての編集の履歴の把握が容易となる。例えば、第2世代の派生テンプレート508については、基本テンプレート502を基礎としつつ、第1世代の派生テンプレート504に依拠して作成されたことが容易に把握される。
また、基本テンプレートを基礎にして作成された派生テンプレートや、派生元テンプレートに依拠して作成された派生テンプレートであっても、基本テンプレートや派生元テンプレートのデザインの原型を留めていない場合がある。このような派生テンプレートは基本テンプレートとは別のグループに分類され、階層構造表示モードでは、基本テンプレートや派生元テンプレートに似ている派生テンプレートが表示されることになる。このように、デザインについて互いに関連性のある複数のテンプレートが表示されるので、テンプレートの選択が容易となる。
また、変化(変更部分)及び評価を表示することにより、評価の理由の特定が容易となる。例えば、テンプレートのどの部分が変更されたことにより、評価が上がったのか、又は、評価が下がったのかの特定が容易となる。例えば、プロのデザイナーではない一般ユーザは、このような評価や変更部分を参考にして、テンプレートを選択することが考えられる。
また、図15に示すように、表示処理部34は、編集情報(編集距離)を各テンプレートに対応付けてUI部40に表示させてもよい。具体的には、表示処理部34は、基本テンプレート502と派生テンプレート504との間の編集距離(第1編集量)「46.5」を、基本テンプレート502と派生テンプレート504との間に表示する。また、表示処理部34は、基本テンプレート502と派生テンプレート506との間の編集距離(第1編集量)「66.4」を、基本テンプレート502と派生テンプレート506との間に表示する。また、表示処理部34は、派生テンプレート504と派生テンプレート506との間の編集距離(第2編集量)「29.9」を、派生テンプレート504と派生テンプレート506との間に表示する。また、表示処理部34は、2つのテンプレート間の編集距離に応じて、当該2つのテンプレート間の距離を変えてテンプレートを表示してもよい。例えば、表示処理部34は、編集距離が長いほど、2つのテンプレート間の長さを長くしてテンプレートを表示する。例えば、基本テンプレート502と第1世代の派生テンプレート504との間の編集距離は「46.5」であり、基本テンプレート502と第1世代の派生テンプレート506との間の編集距離は「66.4」である。この場合、表示処理部34は、同じ第1世代の派生テンプレートであっても、派生テンプレート504を、派生テンプレート506よりも基本テンプレート502に近い位置に配置して表示する。これにより、テンプレート同士が似ているか否かの判断が、視覚的に行われる。
以上のように、編集距離を表示することにより、元のテンプレートと似ているテンプレートか否かの判断が容易となる。例えば、プロのデザイナーではない一般ユーザであっても、その判断が容易となる。本実施形態によると、テンプレートを選択する際の参考資料がユーザに提供される。
また、図16に示すように、表示処理部34は、第2世代以降の派生テンプレートについても、第1編集量をUI部40に表示させてもよい。例えば、表示処理部34は、基本テンプレート502と第2世代の派生テンプレート508との間の編集距離(第1編集量)「35.0」を、基本テンプレート502と派生テンプレート508との間に表示する。また、編集量演算部24は、異なる系統に属する2つのテンプレート間の編集距離を演算してもよい。例えば、編集量演算部24は、基本テンプレート502から直接作成された派生テンプレート506と、派生テンプレート504から作成された派生テンプレート508と、の間の編集距離「60.0」を演算してもよい。この場合、表示処理部34は、その編集距離「60.0」を、派生テンプレート506と派生テンプレート508との間に表示する。これにより、同一グループに含まれる複数のテンプレートについて、互いに似ているか否かの判断が容易となる。
なお、図16に示す例では、派生テンプレート504〜508の編集距離はいずれも閾値(例えば100)未満であるため、派生テンプレート504〜508はいずれも基本テンプレート502と同一のグループに分類されている。例えば、第1編集量に基づいて分類する場合、派生テンプレート504〜508の編集距離(第1編集量)はいずれも100未満であるため、派生テンプレート504〜508はいずれも基本テンプレート502と同一のグループに分類される。また、第2編集量(派生テンプレート504,502については第1編集量と同じ値)に基づいて分類する場合も、派生テンプレート504〜508の編集距離(第2編集量)はいずれも100未満であるため、派生テンプレート504〜508はいずれも基本テンプレート502と同一のグループに分類されている。また、第1編集量及び第2編集量(派生テンプレート504,506については第1編集量)に基づいて分類する場合も、派生テンプレート504,506の編集距離はいずれも100未満であるため、派生テンプレート504,506のいずれも基本テンプレート502と同一のグループに分類されている。また、派生テンプレート508の編集距離(第1編集量及び第2編集量)は100未満であるため、派生テンプレート508も基本テンプレート502と同一のグループに分類されている。
また、階層表示モード実行時に、表示処理部34は、基本テンプレート502を基礎にして作成されたテンプレートであって、基本テンプレート502とは別のグループに分類されたテンプレート520を、基本テンプレート502に対応付けてUI部40に表示させてもよい。テンプレート520は、基本テンプレート502を基礎とした第n世代の派生テンプレートであり、また、基本テンプレートとして定義されている。
基本テンプレート502とは別のグループに分類されたテンプレート520の属性情報からは、派生元テンプレートID(直近の親テンプレートID)が削除されている。そのため、テンプレート分類部28による分類処理によっては、テンプレート502は、基本テンプレート502と同一のグループには分類されない。一方で、テンプレート520の属性情報に、大元の基本テンプレート502のテンプレートIDを追加しておくことにより、そのテンプレートIDに基づいて、基本テンプレート502が特定される。表示処理部34は、基本テンプレート502のテンプレートIDを含む属性情報を有するテンプレート520を検索し、そのテンプレート520を基本テンプレート502に対応付けてUI部40に表示させる。また、表示処理部34は、基本テンプレート502とテンプレート520との間の編集距離をUI部40に表示させてもよい。一例として、表示処理部34は、別グループに分類されたテンプレート520の透過度を高めてUI部40に表示させてもよい。
以上のように、基本テンプレート502とは別のグループに分類されたテンプレート520を基本テンプレート502に対応付けて表示することにより、テンプレートの選択の際に参考となる情報がユーザに提供される。これにより、基本テンプレート502を基礎にして作成されたテンプレートであって、基本テンプレート502に似ていないテンプレートの把握が容易となる。
次に、図17を参照して、一覧表示モードの別の例について説明する。表示処理部34は、基本テンプレートとは別のグループに分類された派生テンプレート(新たな基本テンプレート)のグループを、基本テンプレートのグループと対応付けてUI部40に表示させてもよい。例えば、グループ210の基本テンプレートは、元々は、グループ200の基本テンプレートを基礎にして作成された第n世代の派生テンプレートである。グループ210の基本テンプレートは、テンプレート分類部28によって、グループ200とは別のグループに分類され、新たな基本テンプレートとして定義されたものである。そして、グループ210の基本テンプレートを基礎にして、派生テンプレートが作成されている。例えば、グループ210には、基本テンプレートの他、第1〜第3世代の派生テンプレートが含まれている。このように、派生テンプレートが基本テンプレートとは別のグループに分類されると、その派生テンプレートが新たな基本テンプレートとして定義されて、新たなグループ(テンプレートの集合)が作成されていく。また、別グループに分類された派生テンプレート(新たな基本テンプレート)の属性情報に、上記のように、元の基本テンプレートのテンプレートIDを追加しておくことにより、元の基本テンプレートと新たな基本テンプレートとの対応関係が特定される。表示処理部34は、元の基本テンプレートのテンプレートIDに基づいて、グループ200とグループ210とを対応付けてUI部40に表示させる。例えば、表示処理部34は、元のグループ200の近傍に新たなグループ210を配置して表示してもよいし、グループ200,210を囲む枠を表示してもよいし、グループ200とグループ210とを結ぶ線等を表示してもよい。
基本テンプレートとは別のグループに分類された派生テンプレート(新たな基本テンプレート)のグループを、基本テンプレートのグループと対応付けて表示することにより、複数のグループ間の対応関係の把握が容易となる。例えば、新たな基本テンプレート(新たなグループ)が、どのグループから分離されたのかが容易に把握される。
以上のように、本実施形態では、基本テンプレートとは別のグループに分類された派生テンプレートを、新たな基本テンプレートとして定義する。これにより、元の基本テンプレートとは似ていない派生テンプレート(基本テンプレートとの間でデザインの関連性が低い派生テンプレート)については、元の基本テンプレートとの派生関係が切断された状態で表示される。その結果、ユーザによるテンプレートの選択が容易となる。