(57)【要約】【課題】情報を分かり易く閲覧可能とすること。【解決手段】出力内容生成装置は、表示装置の表示領域に対して表示する複数の情報のそれぞれについて、前記表示領域におけるサイズを計算する第１の計算部と、前記複数の情報のそれぞれのサイズと前記表示領域のサイズとに基づいて前記表示領域に対する前記複数の情報の配置の可否を判定する判定部と、前記表示領域に前記複数の情報を配置できない場合に、前記複数の情報を、それぞれが前記表示領域に収まる複数の画面に分散させて割り当てて前記複数の情報の出力内容を生成する生成部と、を有する。【選択図】図３
2020060804.tif 000002
【特許請求の範囲】
【請求項１】
表示装置の表示領域に対して表示する複数の情報のそれぞれについて、前記表示領域におけるサイズを計算する第１の計算部と、
前記複数の情報のそれぞれのサイズと前記表示領域のサイズとに基づいて前記表示領域に対する前記複数の情報の配置の可否を判定する判定部と、
前記表示領域に前記複数の情報を配置できない場合に、前記複数の情報を、それぞれが前記表示領域に収まる複数の画面に分散させて割り当てて前記複数の情報の出力内容を生成する生成部と、
を有することを特徴とする出力内容生成装置。
【請求項２】
前記複数の情報の内容に基づいて、前記複数の画面のそれぞれの表示時間を計算する第２の計算部、
を有することを特徴とする請求項１記載の出力内容生成装置。
【請求項３】
前記第２の計算部は、前記画面ごとに、当該画面に割り当てられた前記情報の文字数に基づいて、前記表示時間を計算する、
ことを特徴とする請求項２記載の出力内容生成装置。
【請求項４】
前記第２の計算部は、前記画面ごとに、当該画面に割り当てられた前記情報の難易度に基づいて、前記表示時間を計算する、
ことを特徴とする請求項２記載の出力内容生成装置。
【請求項５】
前記第２の計算部は、前記複数の情報のうち、前記複数の画面のそれぞれに対して共通に割り当てられる情報については、前記複数の画面のうちの一部の画面についての表示時間の計算に寄与させない、
ことを特徴とする請求項２乃至４いずれか一項記載の出力内容生成装置。
【請求項６】
表示装置の表示領域に対して表示する複数の情報のそれぞれについて、前記表示領域におけるサイズを計算する計算手順と、
前記複数の情報のそれぞれのサイズと前記表示領域のサイズとに基づいて前記表示領域に対する前記複数の情報の配置の可否を判定する判定手順と、
前記表示領域に前記複数の情報を配置できない場合に、前記複数の情報を、それぞれが前記表示領域に収まる複数の画面に分散させて割り当てて前記複数の情報の出力内容を生成する生成手順と、
をコンピュータが実行することを特徴とする出力内容生成方法。
【請求項７】
請求項１乃至５いずれか一項記載の出力内容生成装置としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、出力内容生成装置、出力内容生成方法及びプログラムに関する。
【背景技術】
【０００２】
ＰＣでブラウザを使ってウェブコンテンツ（以下、単に「コンテンツ」という。）を閲覧する場合には、マウスやキーボードを使ってユーザが操作することが多い。また、コンテンツが画面に表示しきれない場合にはスクロールバーが出現し、ユーザがマウス等を使って画面をスクロールさせることで、全てのコンテンツを画面に表示させて閲覧することができる。更に、文字が小さい場合でも、ブラウザの拡大機能を使って拡大表示して閲覧することができる。このように、ＰＣ向けのコンテンツの作成者は、ディスプレイのサイズを気にすることなく、コンテンツを作成することができる。
【０００３】
デジタルサイネージにおいてコンテンツを表示する場合も、一般的にブラウザを最大の大きさで表示して、ディスプレイに表示する。しかし、ユーザのスクロール操作や拡大操作などの入力を受け付けない、つまり、インタラクティブでないデジタルサイネージ（以下、「受動的なデジタルサイネージ」という。）では、コンテンツの全体が表示されない場合には、ユーザが画面をスクロール操作することができないので、コンテンツの全体を閲覧することが出来ない。そのため、コンテンツの全部を表示するためには、コンテンツの全部を１画面に収めて表示する必要がある。更に、ユーザが文字を拡大又は縮小することができないため、文字をユーザにとって最適なサイズに調整することができず、コンテンツの内容を理解することが難しくなる。したがって、コンテンツの全ての文字を人が読めるサイズで表示することが必要である。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】増井信彦，宮本 勝，小澤英昭：携帯端末に適した情報表示・操作方式の検討，情報処理学会研究報告  2000-HI-91，pp.25-30(2000)
【発明の概要】
【発明が解決しようとする課題】
【０００５】
コンテンツの内容を減らして、小さな画面に表示させる技術としてレスポンシブデザインがある。これは、画面の幅に応じて、表示させる要素やレイアウトを変更することができる技術である。しかし、レスポンシブデザインは、コンテンツを１画面に収めるための技術ではないため、コンテンツが１画面に収まらず、スクロールバーが表示される場合もある。そのため、仮に、受動的なデジタルサイネージのコンテンツにレスポンシブデザインを適用しても、１画面内に表示されないコンテンツが発生する可能性がある。更に、デバイスごとにスタイルシートを作成しなくてはならず、コンテンツの作成に手間がかかるという問題がある。
【０００６】
デジタルサイネージで表示するコンテンツを作成するツールとして、一般的にはＰｏｗｅｒＰｏｉｎｔ（登録商標）などがあるが、ＰｏｗｅｒＰｏｉｎｔ（登録商標）のようなスライド作成ソフトでは、コンテンツを１画面に収めるためにある領域に文章が収まるように、文字を自動的に縮小することができる。しかし、文字は際限なく縮小されるため、解読困難な大きさの文字が表示されることになる可能性がある。
【０００７】
なお、ここではウェブコンテンツについて説明したが、上記のような問題は、ウェブコンテンツに限定されない。
【０００８】
本発明は、上記の点に鑑みてなされたものであって、情報を分かり易く閲覧可能とすることを目的とする。
【課題を解決するための手段】
【０００９】
そこで上記課題を解決するため、出力内容生成装置は、表示装置の表示領域に対して表示する複数の情報のそれぞれについて、前記表示領域におけるサイズを計算する第１の計算部と、前記複数の情報のそれぞれのサイズと前記表示領域のサイズとに基づいて前記表示領域に対する前記複数の情報の配置の可否を判定する判定部と、前記表示領域に前記複数の情報を配置できない場合に、前記複数の情報を、それぞれが前記表示領域に収まる複数の画面に分散させて割り当てて前記複数の情報の出力内容を生成する生成部と、を有する。
【発明の効果】
【００１０】
情報を分かり易く閲覧可能とすることができる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施の形態におけるシステム構成例を示す図である。
【図２】第１の実施の形態における出力内容生成装置１０のハードウェア構成例を示す図である。
【図３】第１の実施の形態における出力内容生成装置１０の機能構成例を示す図である。
【図４】記事の登録処理の処理手順の一例を説明するためのフローチャートである。
【図５】記事登録画面（１／２）の表示例を示す図である。
【図６】記事要素項目記憶部１２１の構成例を示す図である。
【図７】記事登録画面（２／２）の表示例を示す図である。
【図８】画像データの一例を示す図である。
【図９】「イベント」に対応する記事要素テーブルの構成例を示す図である。
【図１０】「イベント」に対応する記事要素テーブルに複数のレコードが登録された例を示す図である。
【図１１】記事の出力内容の生成処理の処理手順の一例を説明するためのフローチャートである。
【図１２】表示パラメータ入力画面の表示例を示す図である。
【図１３】レイアウト情報の一例を示す図である。
【図１４】レイアウト情報に定義されたレイアウトの一例を示す図である。
【図１５】任意要素用エリアの高さの計算方法の考え方を説明するための図である。
【図１６】要素サイズ記憶部１２５の構成例を示す図である。
【図１７】レイアウト設定記憶部１２６の構成例を示す図である。
【図１８】対象レイアウト設定テーブルの更新結果の一例を示す図である。
【図１９】対象記事の表示結果の一例を示す図である。
【図２０】各記事要素の高さの計算処理の一例を説明するためのフローチャートである。
【図２１】サイズパラメータ記憶部１２４の構成例を示す図である。
【図２２】タイトルエリアに対する各文字の配置位置の候補の一例を示す図である。
【図２３】タイトルエリアに対するタイトルの第１の配置例を示す図である。
【図２４】タイトルエリアに対するタイトルの第２の配置例を示す図である。
【図２５】タイトルエリアに対するタイトルの第３の配置例を示す図である。
【図２６】タイトルエリアに対するタイトルの第４の配置例を示す図である。
【図２７】β１≦β２の場合の画像のサイズの調整例を示す図である。
【図２８】β１＞β２の場合の画像のサイズの調整例を示す図である。
【図２９】３つの領域に分割された表示領域の例を示す図である。
【図３０】配置領域設定データの構成例を示す図である。
【図３１】第２の実施の形態における各記事要素の配置例を示す図である。
【発明を実施するための形態】
【００１２】
人が読めるように文字のサイズを或る程度以上にしたまま、ウェブコンテンツ等のコンテンツを１画面に収めて表示させるには、表示面積に限界がある。コンテンツの文字数が多くなれば、１画面内にコンテンツを収めることができない。そこで、本実施の形態では、まず、コンテンツを１画面に収めるように調整し、１画面に収まらない場合には、コンテンツを複数画面に分割する（複数画面に分散させる）。そうすることで、コンテンツが１画面に収まる場合又は収まらない場合のいずれの場合でも、文字サイズが或る程度以上のまま、スクロールの必要のない画面にコンテンツを表示することができる。なお、本実施の形態では、ウェブコンテンツについて説明するが、本実施の形態は、ウェブコンテンツ以外のコンテンツに適用されてもよい。
【００１３】
更に、コンテンツを複数の画面に分散させて表示する場合、閲覧者が１画面を読み終わるのに十分な時間だけ、各画面を表示するようにする。これにより、閲覧者が画面を読み終わる前に、画面が切り替わってしまう可能性を低下させることができる。また、複数の画面に分散させてコンテンツを提示する場合には、コンテンツの構成要素の一部の情報を同じ場所に共通して表示するようにすることで、すなわち、追加された画面に対して１画面目と同じように共通の情報をレイアウトすることで、各画面が同じコンテンツに属する情報であることを強調し、ユーザの記憶に対する負担を軽くすることができる。
【００１４】
［第１の実施の形態］
以下、図面に基づいて本発明の実施の形態を更に詳しく説明する。図１は、第１の実施の形態におけるシステム構成例を示す図である。図１において、出力内容生成装置１０は、インターネット等のネットワークを介してユーザ端末２０に接続される。ユーザ端末２０には、例えば、ＨＤＭＩ（登録商標）（High-Definition Multimedia Interface）等のように画像を伝送可能な規格に準拠したインタフェースを介して表示装置３０が接続される。
【００１５】
表示装置３０は、ユーザ端末２０から伝送される画像データの表示を行う機器である。本実施の形態では、表示装置３０が、受動的なデジタルサイネージであり、コンテンツの内容が自治体等のイベント、お知らせ、観光の情報等である例について説明するが、表示装置３０の種類やコンテンツの内容は特定のものに限定されない。以下、コンテンツのことを、便宜上、「記事」という。なお、「受動的なデジタルサイネージ」とは、ユーザのスクロール操作や拡大操作などの入力を受け付けない、つまり、インタラクティブでないデジタルサイネージをいう。
【００１６】
ユーザ端末２０は、記事を構成する複数の情報や、記事の出力内容の生成要求の入力をユーザから受け付け、入力された情報又は要求等を出力内容生成装置１０へ送信する端末である。ユーザ端末２０は、また、当該記事について出力内容生成装置１０によって生成される出力内容を表示するブラウザを有する。ブラウザによる表示内容を示す画像は、表示装置３０へ出力される。例えば、ＰＣ（Personal Computer）、スマートフォン、タブレット端末等が、ユーザ端末２０として利用されてもよい。
【００１７】
出力内容生成装置１０は、記事の出力内容を、記事の閲覧者にとって見易い態様で生成する１以上のコンピュータである。出力内容とは、例えば、ｈｔｍｌ、ｃｓｓ、及びｊａｖａｓｃｒｉｐｔ（登録商標）等のファイルで構成される表示データをいう。
【００１８】
図２は、第１の実施の形態における出力内容生成装置１０のハードウェア構成例を示す図である。図１の出力内容生成装置１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有する。
【００１９】
出力内容生成装置１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００２０】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従って出力内容生成装置１０に係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００２１】
図３は、第１の実施の形態における出力内容生成装置１０の機能構成例を示す図である。図３において、出力内容生成装置１０は、記事登録部１１、生成要求受信部１２、記事要素取得部１３、レイアウト取得部１４、サイズ計算部１５、レイアウト調整部１６及び出力内容生成部１７等を有する。これら各部は、出力内容生成装置１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。出力内容生成装置１０は、また、記事要素項目記憶部１２１、記事情報記憶部１２２、レイアウト情報記憶部１２３、サイズパラメータ記憶部１２４、要素サイズ記憶部１２５及びレイアウト設定記憶部１２６等を利用する。これら各記憶部は、例えば、補助記憶装置１０２、又は出力内容生成装置１０にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
【００２２】
以下、出力内容生成装置１０が実行する処理手順について説明する。図４は、記事の登録処理の処理手順の一例を説明するためのフローチャートである。以下では、自治体職員等のユーザが、イベント、お知らせ、又は観光の情報に関する記事を登録する例について説明する。
【００２３】
ユーザ端末２０に表示されるブラウザを用いて、記事登録ページのＵＲＬ（Uniform Resource Locator）が入力されると、ユーザ端末２０は、出力内容生成装置１０の記事登録部１１へ、ＨＴＴＰリクエスト（以下、「記事登録要求」という。）を送信する。
【００２４】
ステップＳ１０１において、記事登録部１１は、当該記事登録要求を受信すると、記事登録画面（１／２）に係る表示データ（ｈｔｍｌ等）を生成し、当該表示データを含む応答をユーザ端末２０へ送信する（Ｓ１０２）。ユーザ端末２０のブラウザは、当該表示データに基づいて、記事登録画面（１／２）を表示する。なお、記事登録画面（１／２）は、表示装置３０とは別の、ユーザ端末２０が備える液晶ディプレイ等に表示される。また、記事登録画面（１／２）とは、記事登録に関連する２つの画面のうちの１番目の画面をいう。
【００２５】
図５は、記事登録画面（１／２）の表示例を示す図である。図５において、記事登録画面（１／２）５１０は、記事名入力領域５１１、記事タイプ選択領域５１２、及び登録ボタン５１３等を有する。記事名入力領域５１１は、登録対象の記事に固有の名称（以下「記事名」という。）の入力を受け付けるための領域である。記事タイプ選択領域５１２は、記事タイプの選択を受け付けるための領域であり、予め選択肢としての記事タイプが表示されている。記事タイプとは、記事の種別をいう。本実施の形態において、記事の種別は、記事がどのような要素項目（以下、「記事要素項目」という。）によって構成されるのかによって区別される。記事要素項目は、記事を構成する複数の情報（すなわち、表示装置３０に表示する複数の情報）のそれぞれの項目に相当する。図５に示されるように、本実施の形態では、「イベント」、「お知らせ」、「観光」のうちのいずれかの記事タイプが選択可能である。これらの記事タイプは、後述より明らかなように、記事要素項目記憶部１２１を参照して特定可能である。すなわち、記事登録部１１は、記事要素項目記憶部１２１を参照して選択可能な記事タイプを特定し、特定された記事タイプが選択肢とされるように記事登録画面（１／２）５１０の表示データを生成する。但し、ユーザによって直接的に記事タイプが入力されるようにしてもよい。なお、記事名と記事タイプとは相互に独立であり、記事名は固有のものでなくてはならない（記事名の重複は許可されない）。また、本実施の形態では記事名をユーザが入力する例が示されているが、例えば、出力内容生成装置１０によって後から自動的に記事名が生成されるようにしてもよい。
【００２６】
ユーザによって記事名が入力され、記事タイプが選択された後で登録ボタン５１３が押下されると、ユーザ端末２０は、当該記事名及び当該記事タイプを出力内容生成装置１０へ送信する。なお、図５では、記事名として「ｈｏｇｅ」が入力され、記事タイプとして「イベント」が選択された例が示されている。以下、入力された記事名を「対象記事名」といい、選択された記事タイプを「対象記事タイプ」という。
【００２７】
ステップＳ１０３において、記事登録部１１は、対象記事名及び対象記事タイプを受信する。続いて、記事登録部１１は、対象記事タイプに対応する記事要素項目を記事要素項目記憶部１２１から取得する（Ｓ１０４）。
【００２８】
図６は、記事要素項目記憶部１２１の構成例を示す図である。図６に示されるように、記事要素項目記憶部１２１には、記事タイプごとに記事要素項目が記憶されている。具体的には、記事タイプ「イベント」の記事要素項目は、「タイトル」、「画像」、「日時」、「場所」及び「説明」である。また、記事タイプ「お知らせ」の記事要素項目は、「タイトル」、「画像」、「お知らせ種類」、「説明」及び「問い合わせ先」である。また、記事タイプ「観光」の記事要素項目は、「タイトル」、「画像」、「場所」、「見所」及び「説明」である。各記事タイプの記事要素項目がいずれであるかは、予め設定され記事要素項目記憶部１２１に記憶されている。
【００２９】
なお、図６では、全ての記事タイプの記事要素項目の数が同じである例が示されているが、記事要素項目の数は記事タイプに応じて異なっていてもよい。また、本実施の形態では、説明の便宜上、記事名は、記事要素項目には含まれない。記事名は、各記事の識別情報としての情報であり、表示対象の情報ではないからである。
【００３０】
図６の例によれば、対象記事タイプが「イベント」である場合、ステップＳ１０４では、記事要素項目として、「タイトル」、「画像」、「日時」、「場所」及び「説明」が取得される。
【００３１】
続いて、記事登録部１１は、取得された記事要素項目に対する情報又は値（以下、「記事要素」という。）が入力可能なように記事登録画面（２／２）の表示データを生成し、当該表示データを含む応答をユーザ端末２０へ送信する（Ｓ１０５）。ユーザ端末２０のブラウザは、当該表示データに基づいて、記事登録画面（２／２）を表示する。なお、記事登録画面（２／２）は、表示装置３０とは別の、ユーザ端末２０が備える液晶ディプレイ等に表示される。また、記事登録画面（２／２）とは、記事登録に関連する２つの画面のうちの２番目の画面をいう。
【００３２】
図７は、記事登録画面（２／２）の表示例を示す図である。図７には、対象記事タイプが「イベント」である場合の記事登録画面（２／２）５２０の表示例が示されている。したがって、記事登録画面（２／２）５２０は、「イベント」に対応する記事要素項目である「タイトル」、「画像」、「日時」、「場所」及び「説明」のそれぞれに対応する入力領域を含む。このうち、「タイトル」、「日時」、「場所」及び「説明」の値（記事要素）は、文字列であるため、対応する入力領域に対して直接的に文字列が入力される。一方、「画像」については、例えば、ユーザ端末２０のファイルシステム等から画像ファイルが選択されると、当該画像ファイルのファイル名が、対応する入力領域に表示される。
【００３３】
図７の例では、「タイトル」には「第２１回○○公園さくら祭り」、「日時」には「日時：２０１８年３月１８日」、「場所」には「会場：○○公園」、「説明」には「△△△駅から歩いてすぐのところにある公園です。桜の時期には、園内は桜の花でいっぱいになります。」が入力された例が示されている。また、「画像」には「ｈａｎａｍｉ．ｊｐｇ」をファイル名とする画像ファイルが選択された例が示されている。当該画像ファイルに格納されている画像データは、例えば、図８に示されるような画像データである。
【００３４】
各記事要素項目に対して記事要素が入力され、登録ボタン５２１が押下されると、ユーザ端末２０は、入力された各記事要素を出力内容生成装置１０へ送信する。「画像」については、ファイル名及び画像ファイルが記事要素として送信される。
【００３５】
ステップＳ１０６において、記事登録部１１は、当該各記事要素を受信する。続いて、記事登録部１１は、記事情報記憶部１２２において記事タイプごとに生成されているテーブル（以下、「記事要素テーブル」という。）のうち、対象記事タイプに対応する記事要素テーブルに、対象記事名に対応付けて当該各記事要素を登録（記憶）する（Ｓ１０７）。
【００３６】
図９は、「イベント」に対応する記事要素テーブルの構成例を示す図である。図９に示されるように、「イベント」に対応する記事要素テーブルＴ１は、記事ごとに、「記事名」及び「イベント」の各記事要素項目の記事要素を記憶可能なレコードを含む。なお、図４の処理手順が、記事タイプとして「イベント」が選択されて複数回実行されると、記事要素テーブルＴ１には、例えば、図１０に示されるように複数のレコードが記憶される。
【００３７】
続いて、上記のようにして登録された記事の出力内容の生成処理について説明する。図１１は、記事の出力内容の生成処理の処理手順の一例を説明するためのフローチャートである。
【００３８】
ユーザ端末２０に表示されるブラウザを用いて、出力内容の生成のＵＲＬが入力されると、ユーザ端末２０は、出力内容生成装置１０の生成要求受信部１２へ、ＨＴＴＰリクエスト（以下、「出力内容生成要求」という。）を送信する。
【００３９】
ステップＳ２０１において、生成要求受信部１２は、当該出力内容生成要求を受信すると、表示パラメータ入力画面に係る表示データ（ＨＴＭＬ等）を生成し、当該表示データを含む応答をユーザ端末２０へ送信する（Ｓ２０２）。
【００４０】
図１２は、表示パラメータ入力画面の表示例を示す図である。図１２において、表示パラメータ入力画面５３０は、記事名入力領域５３１、表示パラメータ選択領域５３２、及び表示ボタン５３３等を含む。
【００４１】
記事名入力領域５３１は、出力内容の生成対象（すなわち、表示対象）とする記事（以下、「対象記事」という。）の記事名の入力を受け付けるための領域である。表示パラメータ選択領域５３２は、出力内容の形態に影響する表示パラメータの選択を受け付けるための領域である。本実施の形態では、表示装置３０のディスプレイの向きが当該表示パラメータである例が示されている。なお、ディスプレイの向き以外の表示パラメータの入力が可能とされてもよい。例えば、外部のＡＰＩ（Application Program Interface）と連携した記事要素の翻訳の要否や、色弱者向けの記事要素の配色変換の要否といった表示パラメータの入力が可能とされてもよい。これらの表示パラメータについて「要」が選択された場合には、対象記事の記事要素が、表示の際に表示パラメータに応じて変換されることを意味する。
【００４２】
記事名が入力され、表示パラメータ（ディスプレイの向き）の値が選択され、表示ボタン５３３が押下されると、ユーザ端末２０は、入力された記事名（以下、「対象記事名」という。）及び選択された表示パラメータの値（以下、「対象表示パラメータ値」という。）を出力内容生成装置１０へ送信する。図１２では、対象記事名が「ｈｏｇｅ」であり、対象表示パラメータ値が「縦」である例が示されている。
【００４３】
ステップＳ２０３において、生成要求受信部１２は、対象記事名及び対象表示パラメータ値を受信すると、対象記事名及び対象表示パラメータ値を記事要素取得部１３へ入力する。
【００４４】
続いて、記事要素取得部１３は、入力された対象記事名に対応する記事タイプ（以下、「対象記事タイプ」という。）を特定する（Ｓ２０４）。具体的には、記事要素取得部１３は、記事情報記憶部１２２において記事タイプ別に記憶されている各記事要素テーブル（図１０）から対象記事名を含むレコードを検索する。記事要素取得部１３は、対象記事名を含むレコード（以下、「対象記事要素レコード」という。）が検索された記事要素テーブルに対応する記事タイプを対象記事タイプとして特定する。対象記事名が「ｈｏｇｅ」である場合、図１０に示したように、対象記事名「ｈｏｇｅ」を含む記事要素テーブルＴ１が対応する記事タイプは「イベント」である。したがって、この場合、対象記事タイプは、「イベント」として特定される。
【００４５】
続いて、記事要素取得部１３は、対象記事要素レコードから対象記事名に対応する複数の記事要素（以下、「対象記事要素群」という。）を取得する（Ｓ２０５）。図１０において、対象記事名「ｈｏｇｅ」を含むレコードからは、「第２１回○○公園さくら祭り」、「ｈａｎａｍｉ．ｊｐｇ」、「日時：２０１８年３月１８日」、「会場：○○公園」、「△△△駅から歩いてすぐのところにある公園です。桜の時期には、園内は桜の花でいっぱいになります。」という記事要素群が対象記事要素群として取得される。これらの記事要素は、表示装置３０に表示する複数の情報の一例である。
【００４６】
記事要素取得部１３は、対象記事名、対象表示パラメータ値、対象記事タイプ、及び対象記事要素群をレイアウト取得部１４へ入力する。
【００４７】
続いて、レイアウト取得部１４は、入力された対象記事タイプ及び対象表示パラメータ値に対応するレイアウト情報の複製（コピー）を、レイアウト情報記憶部１２３から取得する（Ｓ２０６）。すなわち、レイアウト情報は、記事タイプ及び表示パラメータ（縦又は横）の組み合わせごとにレイアウト情報記憶部１２３に記憶されている。
【００４８】
図１３は、レイアウト情報の一例を示す図である。図１３に示されるように、レイアウト情報は、ｈｔｍｌ、ｃｓｓ、ｊａｖａｓｃｒｉｐｔ（登録商標）等のファイルによって構成される情報、又はこれらのファイルを出力するスクリプトをいい、記事の出力内容のテンプレート（雛型）となる情報である。すなわち、これらのファイルに対して対象記事に固有の情報（対象記事要素群等）を当てはめることにより、対象記事の出力内容が生成される。なお、レイアウト情報には、後述の処理によって対象記事が複数の画面に分割された際の各画面の表示時間を計算する計算式や、複数画面において表示するか否かの設定などの設定等が含まれてもよい。
【００４９】
図１３のレイアウト情報は、記事タイプが「イベント」であり、表示パラメータ値（ディスプレイの向きの値）が「縦」である場合のレイアウト情報であり、対象記事が図１４に示されるようなレイアウトで表示されるように定義されたものである。
【００５０】
図１４は、レイアウト情報に定義されたレイアウトの一例を示す図である。図１４には、タイトルエリア、画像エリア、任意要素用エリア（以下、それぞれを区別しない場合、単に「エリア」という。）が縦方向に順番に配置される例が示されている。タイトルエリア、画像エリア、任意要素用エリアは、順番に、図１３の「＊＊＊．ｈｔｍｌ」のｈｔｍｌ要素ｅ１、ｈｔｍｌ要素ｅ２、ｈｔｍｌ要素ｅ３に対応する。
【００５１】
なお、タイトルエリアは、「タイトル」が配置される領域であり、「画像エリア」は、「画像」が表示される領域であり、任意要素用エリアは、「日時」、「場所」、「説明」が配置される領域である。以下、任意要素用エリアに配置される記事要素を、「任意要素」といい、任意要素用エリアにおいてｑ番目に配置される任意要素を「任意要素［ｑ］」と表記する。
【００５２】
任意要素の種類及び数は、記事タイプによって異なる。記事タイプが「イベント」の場合、図６に示したように、任意要素［１］が「日時」、任意要素［２］が「場所」、任意要素［３］が「説明」である。記事タイプが「お知らせ」の場合、図６に示したように、任意要素［１］が「お知らせ種類」、任意要素［２］が「説明」、任意要素［３］が「問い合わせ先」である。記事タイプが「観光」の場合、図６に示したように、任意要素［１］が「場所」、任意要素［２］が「見どころ」、任意要素［３］が「説明」である。
【００５３】
このように、記事タイプによって記事要素項目は異なり、記事要素項目に合わせて任意要素が定まる。本実施の形態では、任意要素が３つの場合について説明するが、任意要素の数は記事要素項目の定義次第である。
【００５４】
レイアウト取得部１４は、記事要素取得部１３から入力された対象記事名、対象表示パラメータ値、対象記事タイプ、及び対象記事要素群に加え、ステップＳ２０６において取得されたレイアウト情報の複製（以下、「対象レイアウト情報」という。）をレイアウト調整部１６へ入力する。
【００５５】
続いて、レイアウト調整部１６は、対象記事を表示装置３０のディスプレイの表示領域に表示する場合に確保可能な任意要素用エリアのサイズを計算する（Ｓ２０７）。ここでは、図１４に示されるように、各エリアが縦方向に配置されるため、当該サイズとして高さが計算される例を示す。対象表示パラメータ値が「横」である場合は、第２の実施の形態で説明するように、対象表示パラメータ値ごとに、レイアウトをあらかじめ設定する。対象表示パラメータ値が「横」であり、各エリアが水平方向に配置される場合のレイアウト設定の別の例として、以下における「高さ」を「幅」に置き換えて設定してもよい。
【００５６】
ここで、任意要素用エリアのサイズ（高さ）の計算方法の考え方について説明する。図１５は、任意要素用エリアの高さの計算方法の考え方を説明するための図である。
【００５７】
図１４に示したレイアウトによれば、「タイトルエリア」、「画像エリア」、「任意要素［１］用エリア」、「任意要素［２］用エリア」、「任意要素［３］用エリア」は、図１５に示されるように垂直方向において上から順に配置される。そうすると、表示装置３０のディスプレイの表示領域の高さから、「タイトルエリア」及び「画像エリア」の高さを差し引くことで、任意要素［１］、任意要素［２］、任意要素［３］のために空けられるエリア（以下、「空エリア」という。）を計算することができる。この空エリアの高さをｄｉｖ｛ｈｅｉｇｈｔ｝とする。
【００５８】
また、図１５に示されるように、表示領域の高さをｍａｉｎ｛ｈｅｉｇｈｔ｝、表示領域の横幅をｍａｉｎ｛ｗｉｄｔｈ｝、「タイトルエリア」の高さをｈ１｛ｈｅｉｇｈｔ｝、「画像エリア」の高さをｉｍｇ｛ｈｅｉｇｈｔ｝、「任意要素［１］用エリア」の高さをｅｌｅｍ１｛ｈｅｉｇｈｔ｝、「任意要素［２］用エリア」の高さをｅｌｅｍ２｛ｈｅｉｇｈｔ｝、「任意要素［３］用エリア」の高さをｅｌｅｍ３｛ｈｅｉｇｈｔ｝とする。
【００５９】
ここで、ｍａｉｎ｛ｈｅｉｇｈｔ｝及びｍａｉｎ｛ｗｉｄｔｈ｝は、予め補助記憶装置１０２等に記憶されている。ここでは、ｍａｉｎ｛ｈｅｉｇｈｔ｝＝１９２０ｐｘ、ｍａｉｎ｛ｗｉｄｔｈ｝＝１０８０ｐｘであるとする。
【００６０】
また、各エリアに対応する記事要素のサイズ（高さ）は、この時点（ステップＳ２０７が実行される時点）までに、後述の方法で計算され、記事ごとに、要素サイズ記憶部１２５に記憶されているとする。
【００６１】
図１６は、要素サイズ記憶部１２５の構成例を示す図である。図１６には、記事名が「ｈｏｇｅ」である記事の各記事要素の高さが示されている。図１６によれば、図１５に示した各エリアの高さは、以下の通りである。
ｈ１｛ｈｅｉｇｈｔ｝＝４９２（ｐｘ）
ｉｍｇ｛ｈｅｉｇｈｔ｝＝９００（ｐｘ）
ｅｌｅｍ１｛ｈｅｉｇｈｔ｝＝２６０（ｐｘ）
ｅｌｅｍ２｛ｈｅｉｇｈｔ｝＝２６０（ｐｘ）
ｅｌｅｍ３｛ｈｅｉｇｈｔ｝＝３４４（ｐｘ）
したがって、空エリアの高さは次のように計算できる。
ｄｉｖ｛ｈｅｉｇｈｔ｝＝ｍａｉｎ｛ｈｅｉｇｈｔ｝−ｈ１｛ｈｅｉｇｈｔ｝−ｉｍｇ｛ｈｅｉｇｈｔ｝
＝１９２０−４９２−９００
＝５２８（ｐｘ）
なお、図１６に示した各記事要素の高さの計算方法については後述されるが、対象記事タイプが「イベント」の場合、「タイトルエリア」、「任意要素［１］用エリア」、「任意要素［２］用エリア」、「任意要素［３］用エリア」はテキスト（文字列）の入るエリアであり、フォントサイズと文字数によってエリアの大きさは変化する。また、「画像エリア」は画像の入るエリアであり、画像の大きさによってエリアの大きさは変化する。
【００６２】
続くステップＳ２０８以降において、レイアウト調整部１６は、１つの画面（表示領域）内に収まる任意要素を特定するとともに、１つの画面内に全ての任意要素が収まらない場合には、対象記事要素群を複数画面に分散させて配置するための処理を実行する。すなわち、図１５においては、便宜上、３つの任意要素の全てが表示領域の高さに収まっている状態が示されているが、各記事要素に対応するエリアの大きさに応じて、必ずしも全ての任意要素が１つの画面内に収まるとは限らない。
【００６３】
ステップＳ２０８において、レイアウト調整部１６は、画面番号ｉに対して初期値である１を代入する。画面番号ｉとは、対象記事を構成する画面の番号をいう。続いて、レイアウト調整部１６は、処理対象とする記事要素を識別するための番号である要素番号ｑに初期値である１を代入する（Ｓ２０９）。続いて、レイアウト調整部１６は、画面分割（対象記事要素群の分散）の要否を判定するための閾値ｓｕｍに、初期値である０を代入する。閾値ｓｕｍとは任意要素の高さの累計を記憶するための変数である。任意要素の高さの累計から、それらの任意要素が空エリア内に収まるかを判定することができる。ｓｕｍには、配置順に各任意要素の高さが加算されていく。
【００６４】
続いて、レイアウト調整部１６は、要素番号ｑに該当する任意要素［ｑ］が存在するか否かを判定する（Ｓ２１１）。ｑ＝１であれば、任意要素［１］の存否が判定される。ここで、要素番号ｑは、任意要素の番号を示しており、任意要素［ｑ］に対して、ｑ＝１、２、３であるときはそれぞれ、任意要素［１］、任意要素［２］、任意要素［３］にあたる。ステップＳ２１１における判定は、対象記事タイプに対応付けられて記事要素項目記憶部１２１（図６）に記憶されている記事要素項目を参照することで行うことができる。対象記事タイプが「イベント」である場合、図６によれば、任意要素［１］に対応する「日時」が存在する。したがって、この場合、ステップＳ２１２へ進む。
【００６５】
ステップＳ２１２において、レイアウト調整部１６は、レイアウト取得部１４から入力された対象記事要素群の中から、任意要素［ｑ］に該当する記事要素（任意要素）を取得する。ｑ＝１であれば、「日時：２０１８年３月１８日」が取得される。続いて、レイアウト調整部１６は、任意要素［ｑ］の高さを要素サイズ記憶部１２５（図１６）から取得する（Ｓ２１３）。ｑ＝１の場合、「日時」の高さであるｅｌｅｍ１｛ｈｅｉｇｈｔ｝＝２６０（ｐｘ）が取得される。
【００６６】
続いて、レイアウト調整部１６は、任意要素［ｑ］の高さを閾値ｓｕｍに加算する（Ｓ２１４）。ｑ＝１の場合、ｓｕｍは、以下のように更新される。
ｓｕｍ＝０＋ｅｌｅｍ１｛ｈｅｉｇｈｔ｝＝ｅｌｅｍ１｛ｈｅｉｇｈｔ｝＝２６０（ｐｘ）
続いて、レイアウト調整部１６は、閾値ｓｕｍの値と空エリアの高さｄｉｖ｛ｈｅｉｇｈｔ｝とを比較する（Ｓ２１５）。すなわち、閾値ｓｕｍの値が、Ｓ２０７で算出した「空エリア」の高さｄｉｖ｛ｈｅｉｇｈｔ｝以下であれば、任意要素［ｑ］が画面番号＝ｉの画面に収まると判定できる。ｑ＝１である場合、
ｓｕｍ＝ｅｌｅｍ１｛ｈｅｉｇｈｔ｝＝２６０
ｄｉｖ｛ｈｅｉｇｈｔ｝＝５２８
であるので、ｅｌｅｍ１｛ｈｅｉｇｈｔ｝≦ｄｉｖ｛ｈｅｉｇｈｔ｝である。したがって、この場合（Ｓ２１５でＹｅｓ）、レイアウト調整部１６は、任意要素［ｑ］を、画面番号ｉに対応する画面に割り当てる（Ｓ２１６）。割り当ての結果は、レイアウト設定記憶部１２６に反映される。つまり、任意要素［１］を画面番号１に割り当てる。
【００６７】
図１７は、レイアウト設定記憶部１２６の構成例を示す図である。図１７に示されるようにレイアウト設定記憶部１２６には、記事タイプ及び表示パラメータ（ディスプレイの向き）の値の組み合わせごとに、レイアウト設定テーブルが記憶されている。図１７に示されているレイアウト設定テーブルＴ２は、対象記事タイプ（「イベント」）及び対象表示パラメータ値（「縦」）に対応するレイアウト設定テーブルを示す。したがって、レイアウト設定テーブルＴ２は、「イベント」の記事要素項目ごとにレコードを含む。各レコードは、「エリア内レイアウト」、「エリアレイアウト」、「全画面共通表示」、及び「対象画面」の項目を含む。
【００６８】
「エリア内レイアウト」は、記事要素項目が対応するエリア内における記事要素の水平方向の配置位置を示す項目である。図１７の例では、「タイトル」は、タイトルエリア内において「中央揃え」、「画像」は、画像エリア内において「中央揃え」、「日時」は、任意要素１用エリア内において「左揃え」、「場所」は、任意要素２用エリア内において「左揃え」、「説明」は、任意要素３用エリア内において「左揃え」として設定されている。
【００６９】
また、「エリアレイアウト」は、記事要素項目が対応するエリア自体についての表示領域に対する水平方向の配置位置を示す項目である。図１７の例では、全てのエリア（タイトルエリア、画像エリア、任意要素１エリア、任意要素２エリア、任意要素３エリア）が、「中央揃え」として設定されている。なお、この設定は、図１５に反映されている。すなわち、図１５において、各エリアは中央揃えとなっている。
【００７０】
「全画面共通表示」は、記事要素群が複数画面に分散される場合に、各記事要素を全ての画面で表示するか否かを示す項目である。図１７の例では、「タイトル」及び「画像」の「全画面共通表示」が「○」とされており、それ以外は「×」とされている。これは、記事要素群が複数画面に分散されて表示される場合に、「タイトル」と「画像」は全画面共通で表示され、それ以外の記事要素項目は、当該記事要素項目が割り当てられた画面においてのみ表示されることを意味する。
【００７１】
「対象画面」は、各記事要素が割り当てられた画面（表示される画面）を示す項目である。図１７の例では、「タイトル」及び「画像」は全画面共通で表示されるため、「全画面」とされている。それ以外の記事要素（すなわち、任意要素）は、具体的な記事ごとに異なるため、予め設定されていない。なお、図１５では、タイトルと画像以外を任意要素としているが、これは、図１７の設定で全画面共通表示の欄が×になっているものを、任意要素としているのである。
【００７２】
したがって、ステップＳ２１６では、ｑ＝１の場合（すなわち、初めてステップＳ２１６が実行される場合）、レイアウト調整部１６は、対象記事用にレイアウト設定テーブルＴ２のコピー（以下、「対象レイアウト設定テーブル」という。）をレイアウト設定記憶部１２６に生成し、対象レイアウト設定テーブルにおいて、任意要素［１］（すなわち、「日時」）に対応するレコードの「対象画面」の項目に、画面番号ｉの値である「１」を設定する。なお、ｑ＞１の場合（すなわち、ステップＳ２１６の実行が２回目以降である場合）、レイアウト調整部１６は、既に生成されている対象レイアウト設定テーブルにおいて、任意要素［ｑ］に対応するレコードの「対象画面」の項目に画面番号ｉの値を設定する。
【００７３】
続いて、レイアウト調整部１６は、要素番号ｑに１を加算する（Ｓ２１７）。その結果、ｑ＝２となる。続いて、レイアウト調整部１６は、要素番号ｑ＝２に該当する任意要素［２］が存在するか否かを判定する（Ｓ２１１）。図６によれば、任意要素［２］に対応する「場所」が存在する。したがって、この場合、ステップＳ２１２へ進む。
【００７４】
ステップＳ２１２において、レイアウト調整部１６は、レイアウト取得部１４から入力された対象記事要素群の中から、任意要素［２］に該当する記事要素（任意要素）である「会場：○○公園」を取得する。続いて、レイアウト調整部１６は、任意要素［２］の高さを要素サイズ記憶部１２５（図１６）から取得する（Ｓ２１３）。すなわち、「場所」の高さであるｅｌｅｍ２｛ｈｅｉｇｈｔ｝＝２６０（ｐｘ）が取得される。
【００７５】
続いて、レイアウト調整部１６は、任意要素［２］の高さを閾値ｓｕｍに加算する（Ｓ２１４）。その結果、ｓｕｍは、以下のように更新される。
ｓｕｍ＝０＋ｅｌｅｍ１｛ｈｅｉｇｈｔ｝＋ｅｌｅｍ２｛ｈｅｉｇｈｔ｝＝０＋２６０＋２６０＝５２０
続いて、レイアウト調整部１６は、閾値ｓｕｍの値と空エリアの高さｄｉｖ｛ｈｅｉｇｈｔ｝とを比較する（Ｓ２１５）。ここでは、
ｓｕｍ＝５２０
ｄｉｖ｛ｈｅｉｇｈｔ｝＝５２８
であるので、ｓｕｍ≦ｄｉｖ｛ｈｅｉｇｈｔ｝である。したがって、この場合（Ｓ２１５でＹｅｓ）、レイアウト調整部１６は、任意要素［２］を、画面番号１に対応する画面に割り当てる（Ｓ２１６）。具体的には、レイアウト調整部１６は、対象レイアウト設定テーブル（図１７）において、任意要素［２］（すなわち、「場所」）に対応するレコードの「対象画面」の項目に、画面番号ｉの値である「１」を設定する。
【００７６】
続いて、レイアウト調整部１６は、要素番号ｑに１を加算する（Ｓ２１７）。その結果、ｑ＝３となる。続いて、レイアウト調整部１６は、要素番号ｑ＝３に該当する任意要素［３］が存在するか否かを判定する（Ｓ２１１）。図６によれば、任意要素［３］に対応する「説明」が存在する。したがって、この場合、ステップＳ２１２へ進む。
【００７７】
ステップＳ２１２において、レイアウト調整部１６は、レイアウト取得部１４から入力された対象記事要素群の中から、任意要素［３］に該当する記事要素（任意要素）である「△△△駅から歩いてすぐのところにある公園です。桜の時期には、園内は桜の花でいっぱいになります。」を取得する。続いて、レイアウト調整部１６は、任意要素［３］の高さを要素サイズ記憶部１２５（図１６）から取得する（Ｓ２１３）。すなわち、「説明」の高さであるｅｌｅｍ３｛ｈｅｉｇｈｔ｝＝３４４（ｐｘ）が取得される。
【００７８】
続いて、レイアウト調整部１６は、任意要素［３］の高さを閾値ｓｕｍに加算する（Ｓ２１４）。その結果、ｓｕｍは、以下のように更新される。
ｓｕｍ＝０＋ｅｌｅｍ１｛ｈｅｉｇｈｔ｝＋ｅｌｅｍ２｛ｈｅｉｇｈｔ｝＋ｅｌｅｍ３｛ｈｅｉｇｈｔ｝＝０＋２６０＋２６０＋３４４＝８６４
続いて、レイアウト調整部１６は、閾値ｓｕｍの値と空エリアの高さｄｉｖ｛ｈｅｉｇｈｔ｝とを比較する（Ｓ２１５）。ここでは、
ｓｕｍ＝８６４
ｄｉｖ｛ｈｅｉｇｈｔ｝＝５２８
であるので、ｓｕｍ＞ｄｉｖ｛ｈｅｉｇｈｔ｝である。したがって、この場合（Ｓ２１５でＮｏ）、レイアウト調整部１６は、空エリアの高さｄｉｖ｛ｈｅｉｇｈｔ｝と任意要素［３］の高さとを比較する（Ｓ２１８）。ここでは、
ｄｉｖ｛ｈｅｉｇｈｔ｝＝５２８
ｅｌｅｍ３｛ｈｅｉｇｈｔ｝＝３４４
であるので、ｄｉｖ｛ｈｅｉｇｈｔ｝＞ｅｌｅｍ３｛ｈｅｉｇｈｔ｝である。したがって、この場合（Ｓ２１８でＮｏ）、レイアウト調整部１６は、画面番号ｉに１を加算する（Ｓ２２０）。その結果、ｉ＝２となる。
【００７９】
続いて、レイアウト調整部１６は、閾値ｓｕｍに対して、任意要素［３］の高さｅｌｅｍ３｛ｈｅｉｇｈｔ｝に閾値ｓｕｍの値を代入する（Ｓ２２１）。その結果、
ｓｕｍ＝ｅｌｅｍ３｛ｈｅｉｇｈｔ｝＝３４４
となる。
【００８０】
続いて、レイアウト調整部１６は、任意要素［３］を、画面番号２に対応する画面に割り当てる（Ｓ２１６）。具体的には、レイアウト調整部１６は、対象レイアウト設定テーブル（図１７）において、任意要素［３］（すなわち、「説明」）に対応するレコードの「対象画面」の項目に、画面番号ｉの値である「２」を設定する。
【００８１】
その結果、対象レイアウト設定テーブルの内容は、図１８に示されるように更新される。図１８は、対象レイアウト設定テーブルの更新結果の一例を示す図である。図１８によれば、対象記事の任意要素のうち、「日時」、「場所」の「対象画面」の値は、「１」であり、「説明」の「対象画面」の値は、「２」である。このことは、対象記事要素群が、２つの画面に分散されて表示されることを意味する。
【００８２】
続いて、レイアウト調整部１６は、要素番号ｑに１を加算する（Ｓ２１７）。その結果、ｑ＝４となる。続いて、レイアウト調整部１６は、要素番号ｑ＝４に該当する任意要素［４］が存在するか否かを判定する（Ｓ２１１）。図６によれば、任意要素［４］は存在しない。したがって、この場合（Ｓ２１１でＮｏ）、レイアウト調整部１６は、対象記事に対する各画面（ここでは、２つの画面）のそれぞれの表示時間を計算する（Ｓ２２２）。
【００８３】
例えば、レイアウト調整部１６は、対象レイアウト設定テーブル（図１８）における「画面番号」（ここでは、「１」又は「２」）ごとに、当該画面番号が割り当てられた記事要素項目の文字数を集計し、γ×文字数（秒）のような式を用いて表示時間を計算する。この際、「画面番号」が「全画面」である記事要素項目の文字数は、各画面について集計対象とされる。図１８の対象レイアウト設定テーブルによれば、「タイトル」、「日時」、「場所」のそれぞれの文字数が、「画面番号」が「１」である画面の文字数として集計され、「タイトル」、「説明」のそれぞれの文字数が、「画面番号」が「２」である画面の文字数として集計される。なお、「画像」が文字を含まない場合は、文字数の集計対象とはされない。「画像」が文字を含む場合には、その文字数をあらかじめ記憶しておき、集計対象としてもよい。
【００８４】
具体的には、１画面目の文字数は、「第２１回○○公園さくら祭り」、「日時：２０１８年３月１８日」、「会場：○○公園」の各文字数を合計した２８．５文字となる。なお、半角数字は０．５文字として計数している。２画面目の文字数は、「第２１回○○公園さくら祭り」、「△△△駅から歩いてすぐのところにある公園です。桜の時期には、園内は桜の花でいっぱいになります。」の各文字数を合計した５９文字となる。ここでγを２．５とすると、１画面目の表示時間は、２８．５×０．２５＝７．１２５（秒）、２画面目の表示時間は５９×０．２５＝１４．７５（秒）となる。なお、半角文字を０．５文字として計算したが、１文字として計算してもよい。また、句読点やカッコなど、読むときに発音されない記号などは、文字数から除いて計算してもよい。
【００８５】
このように、表示時間をγ×文字数で計算する場合には、情報量が多い画面では表示時間を長く、情報量が少ない画面では表示時間を短くすることができ、画面内の情報量に応じてそれぞれの画面を表示することが可能になる。この例では、文字数から情報量を計算しているが、文字数のみで表示時間を決定すると、記事要素項目「画像」を含む画面のように、文字数が少ない画面では、情報量に対して表示時間が短すぎる可能性がある。
【００８６】
そこで、レイアウト調整部１６は、γ×文字数＋オフセット値Δ（秒）のような式を用いて各画面の表示時間を計算してもよい。そうすることで、各画面について最低でもオフセット値Δ（秒）の表示時間を確保することができる。Δの値としては、少なくとも５秒以上の正の値などと設定することができる。その結果、γ×文字数で表示時間を計算した場合に、表示時間が０又は０に近い画面が表示対象となる画面であっても少なくともΔ（秒）表示されるため、当該画面から次の画面に表示対象が切り替わった際に、その切り替わりをユーザが認知できる時間を確保することができる。
【００８７】
一方で、画面ごとに表示時間を決定すると、画面ごとに表示時間が異なることになる。画面ごとに表示時間が異なると、ユーザが画面の表示時間を推定することが難しくなり、画面の文字を読んでいる最中に画面が切り替わってしまう可能性も考えられる。そこで、例えば、レイアウト調整部１６は、それぞれの画面番号ごとに文字数を集計し、γ×文字数＋オフセット値Δ（秒）のような式を用いて表示時間を計算し、画面ごとに計算された表示時間のうちの最大値（上記の例では、「１４．７５秒」）を全ての画面の表示時間としてもよい。各画面の表示時間の中の最大値を各画面の表示時間とする場合には、各画面が一定間隔で遷移するため、ユーザにとって画面の切り替わりのタイミングを予測しやすくなり、閲覧するかどうかの判断を決定しやすくなる。また、全ての画面について、余裕を持って閲覧することが可能となる。
【００８８】
又は、レイアウト調整部１６は、例えば、画面番号ごとに文字数を算出し、γ×文字数（秒）のような式を用いて表示時間を計算し、画面ごとに計算された表示時間の平均値（上記の例では「１０．９（秒）」）を全ての画面の表示時間としてもよい。各画面の表示時間の平均値を全ての画面の表示時間とする場合には、それぞれの画面が一定間隔で遷移するため、ユーザにとって遷移のタイミングを予測しやすくなり、閲覧するかどうかの判断を決定しやすくなる。また、各画面の情報量の平均値に応じて画面が遷移するため、或る程度閲覧可能、かつ、早い時間で、記事全体を把握することが可能になる。
【００８９】
又は、対象記事要素群が複数の画面に分散される場合、閲覧者にとって各画面を読むのに必要な時間は、各画面内の文章（テキスト）の文字数が同じであっても、その内容の難しさ（難易度）によって異なる可能性がある。したがって、単に文字数で表示時間を決めてしまうと、解読が困難な（難易度が相対的に高い）画面については閲覧者が読み切れない可能性が有る。そこで、レイアウト調整部１６は、画面ごとに、当該画面に含まれる記事要素のテキストが示す文章の難易度を推定し、当該難易度に応じて当該画面の表示時間を変化させてもよい。
【００９０】
具体的には、レイアウト調整部１６は、画面ごとに、当該画面に割り当てられた記事要素テキスト（文字列）の難易度を、当該テキストに含まれる各単語の単語親密度等から計算し、難易度に基づいて表示時間を決定又は計算する。例えば、難易度の範囲と表示時間との対応表が予め設定され、補助記憶装置１０２等に記憶されていてもよい。この場合、レイアウト調整部１６は、各画面について、当該画面の難易度を含む範囲に対応する表示時間を特定する。又は、難易度を説明変数とし、表示時間を目的変数とする関数が定義されてもよい。この場合、レイアウト調整部１６は、各画面について、当該画面の難易度を当該関数の説明変数に代入することで、当該画面の表示時間を計算してもよい。なお、テキストの難易度の計算は、所定のものに限定されず、公知の他の方法を用いて行われてもよい。又は、ユーザによって各記事要素の難易度が設定されてもよい。この場合、レイアウト調整部１６は、画面ごとに、当該画面に含まれる各記事要素の難易度を集計することで、当該画面の難易度を計算してもよい。当該画面に含まれる各記事要素の難易度と前述の各画面内の文章（テキスト）の文字数とを組み合わせて、難易度が高いほど、また、文章（テキスト）の文字数が多いほど表示時間が長くなるような関数、またはテーブルを用意し、このような関数やテーブルを用いて当該画面の表示時間を計算してもよい。
【００９１】
又は、レイアウト調整部１６は、例えば、上記のように表示時間を計算する過程において、全画面に表示される記事要素（例えば、「タイトル」等）の文字数又は難易度を、２番目の画面以降については集計対象から除外してもよい。すなわち、複数の画面のそれぞれに対して共通に割り当てられる記事要素については、当該複数の画面のうちの一部の画面についての表示時間の計算に寄与させないようにしてもよい。重複して表示される記事要素については、閲覧対象とされる可能性は低い。したがって、このようにすることで、実際の閲覧速度により近い時間で各画面を表示することができ、対象記事の閲覧者のストレスの低減を期待することができる。なお、全画面に表示される記事要素の文字数を２番目の画面以降の文字数の集計対象から除外するか否かは、ユーザによる設定が可能とされてもよい。この場合、全画面に表示される記事要素の文字数を２番目の画面以降の文字数の集計対象とするか否かを示す設定値が予め補助記憶装置１０２等に記憶される。レイアウト調整部１６は、当該設定値に基づいて、全画面に表示される記事要素の文字数を２番目の画面以降の文字数の集計対象とするか否かを判定する。
【００９２】
レイアウト調整部１６は、ステップＳ２２２の終了後、対象記事要素群、対象レイアウト設定テーブル（図１８）、画面ごとに計算された表示時間、及び対象レイアウト情報（図１３）を出力内容生成部１７へ入力する。なお、ステップＳ２１８においてＹｅｓの場合の説明は後述される。
【００９３】
続いて、出力内容生成部１７は、対象記事要素群、対象レイアウト設定テーブル（図１８）、及び画面ごとに計算された表示時間に基づいて、対象レイアウト情報としてのｈｔｍｌ、ｃｓｓ、及びｊｓ、又はこれらを出力するスクリプトを修正して、対象記事のｈｔｍｌ、ｃｓｓ、及びｊｓ（以下、「出力内容」という。）を生成する（Ｓ２２３）。
【００９４】
対象記事要素群を複数の画面に分散して表示する方法として、画面番号ごとにｈｔｍｌファイルを生成して、各画面を当該画面の表示時間の経過後に遷移させるＪａｖａＳｃｒｉｐｔ（登録商標）を記述して再帰的に表示させる方法や、ｊｓファイルから、ｃｓｓやそれぞれのタグ要素を表示時間ごとに再帰的に書き換える方法が有る。また、図１３の例では、「任意要素用エリア」がｄｉｖ要素として定義され、各任意要素が文字列として追加されていくが、ｐ要素など他のＨＴＭＬ要素として追加されてもよい。
【００９５】
出力内容生成部１７は、生成した出力内容を、ユーザ端末２０へ送信する。ユーザ端末２０のブラウザは、当該出力内容に基づいて、対象記事を表示する。
【００９６】
図１９は、対象記事の表示結果の一例を示す図である。図１９では、図１８に従って、「タイトルエリア」及び「画像エリア」は１画面目及び２画面目の双方に表示されている。一方で、任意要素［１］（「日時」）及び任意要素［２］（「場所」）は、１画面目にのみ表示され、任意要素［３］（「説明」）は、２画面目にのみ表示されている。更に、各エリアは、図１８に従って、全体の表示領域に対して、中央揃えで配置されている。また、各エリア内における各記事要素の配置位置は、図１８に従って、「タイトル」及び「画像」は中央揃え、「日時」、「場所」、「説明」は、左揃えである。
【００９７】
なお、１画面目の次に２画面目、次に１画面目というように、２つの画面が交互に表示されるようにしてもよい。また、対象記事要素群が３つ以上の画面に分散される場合には、３つ以上の画面が循環するようにしてもよい。この際、各画面の表示時間は、出力内容において当該画面に対して設定されている表示時間に従う。
【００９８】
なお、本実施の形態においては、全ての任意要素がテキストである例を示したが、静止画像又は動画によって構成される任意要素が定義されてもよい。静止画像又は動画によって構成される任意要素については、画像エリアと同様に扱われればよい。すなわち、本実施の形態において、記事要素には、テキストから構成される記事要素と画像から構成される記事要素とがあるが、動画から構成される記事要素など、記事要素の内容は自由に定義されてよい。動画の場合には、表示時間が明らかであるので、その時間を加味して、表示時間を設定すればよい。
【００９９】
続いて、要素サイズ記憶部１２５に記事ごとに記憶される各記事要素のサイズ（高さ）の計算処理について説明する。図２０は、各記事要素の高さの計算処理の一例を説明するためのフローチャートである。なお、図２０の処理手順は、記事ごとに実行され、図４の処理手順の終了後に実行されてもよいし、図１１のステップＳ２１３の前までに実行されてもよい。図４の処理手順の終了後であって、図１１の処理手順の開始前に図２０の処理手順が実行される場合、表示パラメータの値が特定されていない。したがって、この場合は、表示パラメータの値（「縦」及び「横」）ごとに、図２０の処理手順が実行されればよい。
【０１００】
ステップＳ３０１において、サイズ計算部１５は、「タイトルエリア」（図１４）に対して対象記事の「タイトル」を当てはめる。本実施の形態では、テキストから構成される記事要素では、記事要素の横幅を固定し、文字数に応じて高さを上限の範囲内で可変とする。「タイトル」は、テキストによって構成されるため、「タイトルエリア」の横幅は固定され、「タイトル」の文字数に応じて高さが変化する。
【０１０１】
ここで、「タイトルエリア」の行数の上限（以下、「上限行数」という。）をｈ１｛ｍａｘ＿ｌｉｎｅ｝とし、１行当たりの文字数の上限（以下、「上限文字数」という。）をｈ１｛ｍａｘ＿ｃｈａｒ｝とし、実際の行数をｈ１｛ｌｉｎｅ｝とし、実際の１行当たりの最大文字数をｈ１｛ｃｈａｒ｝とする。ｈ１｛ｍａｘ＿ｌｉｎｅ｝及びｈ１｛ｍａｘ＿ｃｈａｒ｝の値は、記事タイプ及び表示パラメータごとに、サイズパラメータ記憶部１２４に予め設定されている。
【０１０２】
図２１は、サイズパラメータ記憶部１２４の構成例を示す図である。図２１には、記事タイプが「イベント」、及び表示パラメータが「縦」に対するサイズパラメータの例が示されている。
【０１０３】
図２１によれば、ｈ１｛ｍａｘ＿ｌｉｎｅ｝＝３、ｈ１｛ｍａｘ＿ｃｈａｒ｝＝７である。したがって、この場合、タイトルエリアに対する各文字の配置位置の候補は図２２に示されるようになる。
【０１０４】
したがって、サイズ計算部１５は、図２２に対して、タイトル「第２１回○○公園さくら祭り」という文字列を当てはめる。その結果、タイトルエリアに対するタイトルの配置について、図２３に示されるような結果が得られる。この場合、実際の行数ｈ１｛ｌｉｎｅ｝は２となり、実際の１行当たりの最大文字数ｈ１｛ｃｈａｒ｝は７となる。なお、各エリアの高さの計算において、各エリア内の記事要素の配置位置（図１８）は、考慮されなくてよい。
【０１０５】
なお、仮に、タイトルが「第２１回○○市民公園さくら祭り大会前夜祭」であったとする。この場合、当該タイトルのタイトルエリアの配置結果は、図２４に示す通りとなる。図２４において、実際の行数ｈ１｛ｌｉｎｅ｝は３であり、実際の１行当たりの最大文字数ｈ１｛ｃｈａｒ｝は７である。
【０１０６】
また、仮に、タイトルが「○○さくら祭」であったとする。この場合、当該タイトルのタイトルエリアの配置結果は、図２５に示す通りとなる。図２５において、実際の行数ｈ１｛ｌｉｎｅ｝は１であり、実際の１行当たりの最大文字数ｈ１｛ｃｈａｒ｝は６である。
【０１０７】
なお、ここでは、ｈ１｛ｍａｘ＿ｌｉｎｅ｝＝３、ｈ１｛ｍａｘ＿ｃｈａｒ｝＝７であるが、仮に、上限行数ｈ１｛ｍａｘ＿ｌｉｎｅ｝に２が設定されている場合であって、タイトルが、図２４に示したように「第２１回○○市民公園さくら祭り大会前夜祭」である場合には、タイトルがタイトルエリアの文字数制限を超えてしまうことになる。そのような場合には、サイズ計算部１５は、当該文字数制限を超えないように「タイトル」を編集してもよい。
【０１０８】
例えば、タイトル「第２１回○○市民公園さくら祭り大会前夜祭」について、サイズ計算部１５は、１行目は「第２１回○○市民」、２行目は「公園さくら祭り」とし、３行目に含まれる文字列を削除する。更に、サイズ計算部１５は、タイトルの途中以降が削除したことが分かるように、２行目の最後の文字を「…」に置き換えて、１行目は「第２１回○○市民」、２行目は「公園さくら祭…」としてもよい。斯かる修正は、図２０の処理手順が、図１１の処理手順の過程で行われる場合には、対象記事要素群の中の「タイトル」に対して行われればよい。
【０１０９】
続いて、サイズ計算部１５は、「タイトルエリア」の高さを計算する（Ｓ３０２）。図２２のように「タイトルエリア」内のテキストの１文字あたり（１行あたり）の高さｈ１｛ｃｈａｒ＿ｈｅｉｇｈｔ｝と、１文字あたりの横幅ｈ１｛ｃｈａｒ＿ｗｉｄｔｈ｝は、「タイトルエリア」のｆｏｎｔ−ｓｉｚｅ値に依存する。
【０１１０】
そこで、タイトルの文字のフォントサイズの値をｈ１｛ｆｏｎｔ−ｓｉｚｅ｝とすると、高さｈ１｛ｃｈａｒ＿ｈｅｉｇｈｔ｝及び横幅ｈ１｛ｃｈａｒ＿ｗｉｄｔｈ｝は、定数α１又はα２を用いて次のように表すことができる。
ｈ１｛ｃｈａｒ＿ｈｅｉｇｈｔ｝＝α１×ｈ１｛ｆｏｎｔ−ｓｉｚｅ｝
ｈ１｛ｃｈａｒ＿ｗｉｄｔｈ｝＝α２×ｈ１｛ｆｏｎｔ−ｓｉｚｅ｝
ここで、α１、α２、ｈ１｛ｆｏｎｔ−ｓｉｚｅ｝及びｈ１｛ｆｏｎｔ−ｓｉｚｅ｝は、予めサイズパラメータ記憶部１２４（図２１）の記憶されている。図２１の例によれば、α１＝１．２、α２＝１．１、ｈ１｛ｆｏｎｔ−ｓｉｚｅ｝＝８０なので、ｈ１｛ｃｈａｒ＿ｈｅｉｇｈｔ｝、ｈ１｛ｃｈａｒ＿ｗｉｄｔｈ｝は次のようになる。
ｈ１｛ｃｈａｒ＿ｈｅｉｇｈｔ｝＝１．２×８０＝９６（ｐｘ）
ｈ１｛ｃｈａｒ＿ｗｉｄｔｈ｝＝１．１×８０＝８８（ｐｘ）
上記より、「タイトルエリア」の高さは、以下の式で計算することができる。
ｈ１｛ｈｅｉｇｈｔ｝＝ｈ１｛ｃｈａｒ＿ｈｅｉｇｈｔ｝×ｈ１｛ｌｉｎｅ｝
図２３の例によれば、ｈ１｛ｌｉｎｅ｝＝２であるため、サイズ計算部１５は、ｈ１｛ｈｅｉｇｈｔ｝を、以下の通りに計算する。
ｈ１｛ｈｅｉｇｈｔ｝＝ｈ１｛ｃｈａｒ＿ｈｅｉｇｈｔ｝×ｈ１｛ｌｉｎｅ｝＝９６×２＝１９２（ｐｘ）
なお、サイズ計算部１５は、「タイトル」の上下に余白を設けてもよい。例えば、上下の余白をそれぞれ１５０ｐｘとすると、合計で３００ｐｘとなる。したがって、余白を含めた「タイトルエリア」の高さは１９２＋３００＝４９２（ｐｘ）となる。上下の余白の値は、サイズパラメータ記憶部１２４に記憶されていてもよい。
【０１１１】
なお、上記において、ｈ１｛ｍａｘ＿ｃｈａｒ｝＝７は、図２２のようにあらかじめ設定されているが、「タイトルエリア」の横幅ｈ１｛ｗｉｄｔｈ｝がサイズパラメータ記憶部１２４（図２１）に設定され、サイズ計算部１５が、ｈ１｛ｗｉｄｔｈ｝内に挿入可能な最大の文字数を計算することで、ｈ１｛ｍａｘ＿ｃｈａｒ｝を求めてもよい。ｘに対して小数点以下を切り捨てて整数を返す関数をｄｏｗｎ（ｘ）とすると、１行あたりの最大文字数ｈ１｛ｍａｘ＿ｃｈａｒ｝は次のようになる。
ｈ１｛ｌｉｎｅ＿ｃｈａｒ｝＝ｄｏｗｎ（ｈ１｛ｗｉｄｔｈ｝／ｈ１｛ｃｈａｒ＿ｗｉｄｔｈ｝）
例えば、「タイトルエリア」の横幅ｈ１｛ｗｉｄｔｈ｝の設定値が６８０ｐｘであれば、ｈ１｛ｌｉｎｅ＿ｃｈａｒ｝は、以下のように計算される。
ｈ１｛ｌｉｎｅ＿ｃｈａｒ｝＝ｄｏｗｎ（ｈ１｛ｗｉｄｔｈ｝／ｈ１｛ｃｈａｒ＿ｗｉｄｔｈ｝）
＝ｄｏｗｎ（６８０／８８）＝７
更に、ｘに対して小数点以下を切り上げて整数を返す関数をｕｐ（ｘ）とすると、タイトルの文字数ｈ１｛ｃｈａｒ＿ｎｕｍ｝に基づいて、行数ｈ１｛ｌｉｎｅ｝は、次のように計算できる。
ｈ１｛ｌｉｎｅ｝＝ｕｐ（ｈ１｛ｃｈａｒ＿ｎｕｍ｝／ｈ１｛ｍａｘ＿ｃｈａｒ｝）
＝ｕｐ（１２／７）＝２
したがって、ｈ１｛ｈｅｉｇｈｔ｝は、以下のように計算できる。
ｈ１｛ｈｅｉｇｈｔ｝＝ｈ１｛ｃｈａｒ＿ｈｅｉｇｈｔ｝×ｈ１｛ｌｉｎｅ｝
＝α１×ｈ１｛ｆｏｎｔ−ｓｉｚｅ｝×ｈ１｛ｌｉｎｅ｝
＝１．２×８０×２
＝１９２
このように、「タイトルエリア」の横幅ｈ１｛ｗｉｄｔｈ｝と文字の横幅ｈ１｛ｃｈａｒ＿ｗｉｄｔｈ｝から、「タイトルエリア」の高さｈ１｛ｈｅｉｇｈｔ｝が計算されてもよい。
【０１１２】
続いて、サイズ計算部１５は、「画像エリア」の高さと横幅の比（以下、「縦横比β１」という。）を計算する（Ｓ３０３）。なお、「画像エリア」は画像の大きさによって変化する領域である。ここでは、「画像エリア」の高さの最大値をｉｍｇ｛ｍａｘ＿ｈｅｉｇｈｔ｝、横幅の最大値をｉｍｇ｛ｍａｘ＿ｗｉｄｔｈ｝とすると、β１の計算式は以下の通りである。
β１＝ｉｍｇ｛ｍａｘ＿ｈｅｉｇｈｔ｝／ｉｍｇ｛ｍａｘ＿ｗｉｄｔｈ｝
図２１に設定されているように、ｉｍｇ｛ｍａｘ＿ｈｅｉｇｈｔ｝＝５００（ｐｘ）であり、画像の横幅をｉｍｇ｛ｍａｘ＿ｗｉｄｔｈ｝＝８００（ｐｘ）であれば、縦横比β１は、以下の通りである。
β１＝ｉｍｇ｛ｍａｘ＿ｈｅｉｇｈｔ｝／ｉｍｇ｛ｍａｘ＿ｗｉｄｔｈ｝
＝５００／８００
＝０．６２５
続いて、サイズ計算部１５は、画像エリアに配置する画像（図８）の高さと横幅の比（以下、「縦横比β２」という。）を計算する（Ｓ３０４）。ここで、当該画像の高さをｉｍｇ｛ｈｅｉｇｈｔ｝、当該画像の横幅をｉｍｇ｛ｗｉｄｔｈ｝とすると、β２の計算式は以下の通りである。
β２＝ｉｍｇ｛ｈｅｉｇｈｔ｝／ｉｍｇ｛ｗｉｄｔｈ｝
図８に示されるように、画像ｈａｎａｍｉ．ｊｐｇについて、画像の高さｉｍｇ｛ｈｅｉｇｈｔ｝＝３００（ｐｘ）であり、画像の横幅ｉｍｇ｛ｗｉｄｔｈ｝＝４００（ｐｘ）であれば、縦横比β２は、以下の通りである。ｉｍｇ｛ｈｅｉｇｈｔ｝及びｉｍｇ｛ｗｉｄｔｈ｝は、画像ファイルから画像を取得する際に、メモリ装置１０３等に記憶しておけばよい。
β２＝ｉｍｇ｛ｈｅｉｇｈｔ｝／ｉｍｇ｛ｗｉｄｔｈ｝
＝３００／４００
＝０．７５
続いて、サイズ計算部１５は、このβ２を保ったまま、画像を拡大又は縮小し、画像エリア内で最大になるように画像のサイズを調整することで、画像エリアの高さを計算する（Ｓ３０５）。
【０１１３】
具体的には、β１≦β２の場合、サイズ計算部１５は、図２７に示されるように、画像の高さが画像エリアの高さに等しくなるように、画像を拡大又縮小する。なお、図２７の下段には、β１が３／４であり、β２が２である場合における、画像の拡大例が示されている。一方、β１＞β２の場合、サイズ計算部１５は、図２８に示されるように、画像の横幅が画像エリアの横幅に等しくなるように、画像を拡大又は縮小する。なお、図２８の下段には、β１が３／４であり、β２が１／２である場合における、画像の拡大例が示されている。
【０１１４】
上記の例によれば、β１（０．６２５）≦β２（０．７５）なので、サイズ計算部１５は、図２７に示されるように、画像の高さが画像エリアの高さｉｍｇ｛ｍａｘ＿ｈｅｉｇｈｔ｝と等しくなるように画像を拡大する。したがって、この場合、画像の高さは以下の通りである。
ｉｍｇ｛ｍａｘ＿ｈｅｉｇｈｔ｝＝５００（ｐｘ）
なお、サイズ計算部１５は、「画像エリア」についても、画像の上下に余白を設けてもよい。例えば、上下の余白をそれぞれ２００ｐｘとすると、合計で４００ｐｘとなる。したがって、余白を含めた「画像エリア」の高さは５００＋４００＝９００（ｐｘ）となる。上下の余白の値は、サイズパラメータ記憶部１２４に記憶されていてもよい。
【０１１５】
なお、仮に、ｉｍｇ｛ｈｅｉｇｈｔ｝＝７５０（ｐｘ）であり、画像の横幅ｉｍｇ｛ｗｉｄｔｈ｝＝１５００（ｐｘ）であった場合、画像の縦横比β２は以下のようになる。
β２＝ｉｍｇ｛ｈｅｉｇｈｔ｝／ｉｍｇ｛ｗｉｄｔｈ｝
＝７５０／１５００
＝０．５
この場合、β１＞β２なので、サイズ計算部１５は、図２８に示されるように、画像の横幅が画像エリアの横幅に等しくなるように画像を縮小する。その結果、「画像エリア」の高さは、縮小後のｉｍｇ｛ｈｅｉｇｈｔ｝となる。
縮小後のｉｍｇ｛ｈｅｉｇｈｔ｝＝ｉｍｇ｛ｍａｘ＿ｗｉｄｔｈ｝×β２＝８００×０．５＝４００（ｐｘ）
なお、画像の拡大又は縮小が行われなくてもよい、その場合、画像の高さｉｍｇ｛ｈｅｉｇｈｔ｝が、画像エリアの高さとなる。例えば、ｉｍｇ｛ｈｅｉｇｈｔ｝＝３００（ｐｘ）、画像の横幅がｉｍｇ｛ｗｉｄｔｈ｝＝４００（ｐｘ）の例では、画像エリアの高さは、３００ｐｘとなる。
【０１１６】
続いて、サイズ計算部１５は、各任意要素［ｑ］（ｑ＝１，２，３）の高さｅｌｅｍｑ｛ｈｅｉｇｈｔ｝を計算する（Ｓ３０６）。任意要素［ｑ］のテキストの１文字あたり（１行あたり）の高さｅｌｅｍｑ｛ｃｈａｒ＿ｈｅｉｇｈｔ｝と１文字あたりの横幅ｅｌｅｍｑ｛ｃｈａｒ＿ｗｉｄｔｈ｝とは、任意要素［ｑ］のｆｏｎｔ−ｓｉｚｅ値に依存する。そこで、任意要素［ｑ］の文字のフォントサイズの値をｅｌｅｍｑ｛ｆｏｎｔ−ｓｉｚｅ｝とすると、定数αｑ１、αｑ２を用いて、任意要素［ｑ］の高さｅｌｅｍｑ｛ｈｅｉｇｈｔ｝は、以下のように計算することができる。
ｅｌｅｍｑ｛ｃｈａｒ＿ｈｅｉｇｈｔ｝＝αｑ１×ｅｌｅｍｑ｛ｆｏｎｔ−ｓｉｚｅ｝
ｅｌｅｍｑ｛ｃｈａｒ＿ｗｉｄｔｈ｝＝αｑ２×ｅｌｅｍｑ｛ｆｏｎｔ−ｓｉｚｅ｝
ｅｌｅｍｑ｛ｈｅｉｇｈｔ｝＝ｅｌｅｍｑ｛ｃｈａｒ＿ｈｅｉｇｈｔ｝×ｅｌｅｍｑ｛ｌｉｎｅ｝
なお、任意要素［ｑ］について、αｑ１、αｑ２、ｅｌｅｍｑ｛ｆｏｎｔ−ｓｉｚｅ｝は、サイズパラメータ記憶部１２４に予め記憶されている。
【０１１７】
具体的には、任意要素［１］について、図２１では、ｅｌｅｍ１｛ｗｉｄｔｈ｝＝８００、ｅｌｅｍ１｛ｆｏｎｔ−ｓｉｚｅ｝＝５０、α１１＝１．２、α１２＝１．５と設定されている。したがって、
ｅｌｅｍ１｛ｃｈａｒ＿ｈｅｉｇｈｔ｝＝α１１×ｅｌｅｍ１｛ｆｏｎｔ−ｓｉｚｅ｝＝１．２×５０＝６０（ｐｘ）
ｅｌｅｍ１｛ｃｈａｒ＿ｗｉｄｔｈ｝＝α１２×ｅｌｅｍ１｛ｆｏｎｔ−ｓｉｚｅ｝＝１．５×５０＝７５（ｐｘ）
ｅｌｅｍ１｛ｍａｘ＿ｃｈａｒ｝＝ｅｌｅｍ１｛ｗｉｄｔｈ｝／ｅｌｅｍ１｛ｃｈａｒ＿ｗｉｄｔｈ｝＝８００／７５＝１０．６
である。
【０１１８】
任意要素［１］は、図１０より、「日時：2018年3月18日」である。この場合、コロン「：」は全角で１文字と数える。数字は半角で、半角文字は０．５文字分と数える。ただし、どの文字を全角と数え、どの文字を半角と数えるかは、入力された文字が全角であったか半角であったかに従ってもよい。例えば、数字も全角で「日時：２０１８年３月１８日」と入力された場合には、数字を含めてすべての文字は全角で１文字と数えるとしてもよい。そうすると、任意要素［１］の文字数ｅｌｅｍ１｛ｃｈａｒ｝＝９．５である。１行当たりの最大文字数は１０なので、１行に収まることが分かる。すなわち、任意要素［１］の行数ｅｌｅｍ１｛ｌｉｎｅ｝＝１である。したがって、任意要素［１］の高さｅｌｅｍ１｛ｈｅｉｇｈｔ｝は、以下のように計算される。
ｅｌｅｍ１｛ｈｅｉｇｈｔ｝＝ｅｌｅｍ１｛ｃｈａｒ＿ｈｅｉｇｈｔ｝×ｅｌｅｍ１｛ｌｉｎｅ｝
＝６０×１＝６０（ｐｘ）
なお、タイトルエリアと同様に、上下に余白を設けてもよい。例えば、上下の余白をそれぞれ１００ｐｘとすると、合計で２００ｐｘとなる。余白を含めた任意要素［１］の高さは６０＋２００＝２６０（ｐｘ）となる。
【０１１９】
また、任意要素［２］について、図２１では、ｅｌｅｍ２｛ｗｉｄｔｈ｝＝８００、ｅｌｅｍ２｛ｆｏｎｔ−ｓｉｚｅ｝＝５０、α２１＝１．２、α２２＝１．５と設定されている。したがって、
ｅｌｅｍ２｛ｃｈａｒ＿ｈｅｉｇｈｔ｝＝α２１×ｅｌｅｍ２｛ｆｏｎｔ−ｓｉｚｅ｝＝１．２×５０＝６０（ｐｘ）
ｅｌｅｍ２｛ｃｈａｒ＿ｗｉｄｔｈ｝＝α２２×ｅｌｅｍ２｛ｆｏｎｔ−ｓｉｚｅ｝＝１．５×５０＝７５（ｐｘ）
ｅｌｅｍ２｛ｍａｘ＿ｃｈａｒ｝＝ｅｌｅｍ２｛ｗｉｄｔｈ｝／ｅｌｅｍ２｛ｃｈａｒ＿ｗｉｄｔｈ｝＝８００／７５＝１０．６
任意要素［２］は、図１０より、「会場：○○公園」である。ここで、コロン「：」は全角で１文字と数える。そうすると、任意要素［２］の文字数ｅｌｅｍ２｛ｃｈａｒ｝＝７である。１行当たりの最大文字数は１０なので、１行に収まることが分かる。すなわち、任意要素［２］の行数ｅｌｅｍ２｛ｌｉｎｅ｝＝１である。したがって、任意要素［２］の高さｅｌｅｍ２｛ｈｅｉｇｈｔ｝は、以下のように計算される。
ｅｌｅｍ２｛ｈｅｉｇｈｔ｝＝ｅｌｅｍ２｛ｃｈａｒ＿ｈｅｉｇｈｔ｝×ｅｌｅｍ２｛ｌｉｎｅ｝
＝６０×１＝６０（ｐｘ）
なお、タイトルエリアと同様に、上下に余白を設けてもよい。例えば、上下の余白をそれぞれ１００ｐｘとすると、合計で２００ｐｘとなる。余白を含めた任意要素［２］の高さは６０＋２００＝２６０（ｐｘ）となる。
【０１２０】
更に、任意要素［３］について、図２１では、ｅｌｅｍ３｛ｗｉｄｔｈ｝＝８００、ｅｌｅｍ３｛ｆｏｎｔ−ｓｉｚｅ｝＝３０、α３１＝１．２、α３２＝１．５と設定されている。したがって、
ｅｌｅｍ３｛ｃｈａｒ＿ｈｅｉｇｈｔ｝＝α３１×ｅｌｅｍ３｛ｆｏｎｔ−ｓｉｚｅ｝＝１．４×３０＝４２（ｐｘ）
ｅｌｅｍ３｛ｃｈａｒ＿ｗｉｄｔｈ｝＝α３２×ｅｌｅｍ３｛ｆｏｎｔ−ｓｉｚｅ｝＝１．２×３０＝３６（ｐｘ）
ｅｌｅｍ３｛ｍａｘ＿ｃｈａｒ｝＝ｅｌｅｍ３｛ｗｉｄｔｈ｝／ｅｌｅｍ３｛ｃｈａｒ＿ｗｉｄｔｈ｝＝８００／３６＝２２．２
である。
【０１２１】
任意要素［３］は、図１０より、「△△△駅から歩いてすぐのところにある公園です。桜の時期には、園内は桜の花でいっぱいになります。」である。任意要素［３］の文字数ｅｌｅｍ３｛ｃｈａｒ｝＝４７である。１行当たりの最大文字数は２２なので、３行に収まることが分かる。すなわち、任意要素［３］の行数ｅｌｅｍ１｛ｌｉｎｅ｝＝３である。したがって、任意要素の高さｅｌｅｍ３｛ｈｅｉｇｈｔ｝は、以下のように計算される。
ｅｌｅｍ３｛ｈｅｉｇｈｔ｝＝ｅｌｅｍ３｛ｃｈａｒ＿ｈｅｉｇｈｔ｝×ｅｌｅｍ３｛ｌｉｎｅ｝
＝４２×３＝１２６（ｐｘ）
なお、タイトルエリアと同様に、上下に余白を設けてもよい。例えば、上下の余白をそれぞれ１０９ｐｘとすると、合計で２１８ｐｘとなる。余白を含めた任意要素［３］の高さは１２６＋２１８＝３４４（ｐｘ）となる。
【０１２２】
続いて、サイズ計算部１５は、対象記事の記事名及び対象表示パラメータ値に対する各記事要素の高さを要素サイズ記憶部１２５（図１６）に記憶する（Ｓ３０７）。具体的には、「タイトルエリア」の高さの計算結果が、図１６の「タイトル」の行の「高さ」に記憶される。また、「画像エリア」の高さの計算結果が、図１６の「画像」の行の「高さ」に記憶される。また、任意要素［１］の高さの計算結果が、図１６の「日時」の行の「高さ」に記憶される。また、任意要素［２］の高さの計算結果が、図１６の「場所」の行の「高さ」に記憶される。また、任意要素［３］の高さの計算結果が、図１６の「説明」の行の「高さ」に記憶される。なお、図１６には、上記の説明における余白を含めた計算結果が示されている。
【０１２３】
なお、上記では、各エリアの余白が事前に固定的に設定されている例を示したが、各エリアの余白は事前に設定されていなくてもよい。例えば、サイズ計算部１５は、対象記事の記事要素項目の数に基づいて、各記事要素項目に対応するエリアの余白の値を計算してもよい。そうすることで、記事要素項目数に応じて余白の高さを変化させて、対象記事の出力内容における各記事要素の配置位置のバランスが整えられるようにしてもよい。
【０１２４】
続いて、図１１のステップＳ２１８の判定がＹｅｓの場合について説明する。例えば、仮に、任意要素［３］が、「○○市民公園は、△△△駅から歩いてすぐのところにある公園です。桜の季節になると、ソメイヨシノ、シダレザクラが咲き誇ります。さくら祭りも今年で２１回目を迎えて、近隣の皆様にも親しまれてまいりました。近年では県内だけでなく県外からも多くの観光客が花見に訪れます。また、海外からのお客様も多く訪れる人気のスポットです。」であるとする。ｅｌｅｍ３｛ｍａｘ＿ｃｈａｒ｝＝７とすると、任意要素［３］は、次のように９行で記載される。
１行目は、「○○市民公園は、△△△駅から歩いてす」である。
２行目は、「ぐのところにある公園です。桜の季節に」である。
３行目は、「なると、ソメイヨシノ、シダレザクラが」である。
４行目は、「咲き誇ります。さくら祭りも今年で２１回である。
５行目は、「目を迎えて、近隣の皆様にも親しまれて」である。
６行目は、「まいりました。近年では県内だけでなく」である。
７行目は、「県外からも多くの観光客が花見に訪れま」である。
８行目は、「す。また、海外からのお客様も多く訪れ」である。
９行目は、「る人気のスポットです。」である。
【０１２５】
このとき、ｅｌｅｍ３｛ｈｅｉｇｈｔ｝＝５４０であるとすると、
ｄｉｖ｛ｈｅｉｇｈｔ｝＝５２８
ｅｌｅｍ３｛ｈｅｉｇｈｔ｝＝５４０
であるので、ｄｉｖ｛ｈｅｉｇｈｔ｝≦ｅｌｅｍ３｛ｈｅｉｇｈｔ｝である。したがって、この場合（Ｓ２１８でＹｅｓ）、ステップＳ２１９へ進む。
【０１２６】
ステップＳ２１９において、レイアウト調整部１６は、ｅｌｅｍ３｛ｈｅｉｇｈｔ｝を修正して、ｅｌｅｍ３｛ｍ＿ｈｅｉｇｈｔ｝とする。具体的には、レイアウト調整部１６は、ｄｉｖ｛ｈｅｉｇｈｔ｝＞ｅｌｅｍ３｛ｍ＿ｈｅｉｇｈｔ｝が満たされるように、ｅｌｅｍ３｛ｍ＿ｈｅｉｇｈｔ｝を決める。任意要素［３］は、テキストからなる要素であり、行数がＬであり、テキストの高さがＴであるとすると、この例では、Ｌ＝９、テキストの高さＴ＝６０として計算できる。
【０１２７】
すなわち、
ｅｌｅｍ３｛ｈｅｉｇｈｔ｝＝ＬＴ
であり、レイアウト調整部１６は、
ｄｉｖ｛ｈｅｉｇｈｔ｝≦ｅｌｅｍ３｛ｈｅｉｇｈｔ｝＝ＬＴ
を満たすようにＬを調整する。
【０１２８】
ここで、ｄｉｖ｛ｈｅｉｇｈｔ｝−ＬＴは、−１２であり負の値であるが、Ｌを一つずつ減らしていくと、正の値に変わる。初めて正に変わったときのＬをＬ'とし、Ｌ'＋１行以降を削除すると、ｅｌｅｍ３｛ｍ＿ｈｅｉｇｈｔ｝＝Ｌ'Ｔとなる。
【０１２９】
この例では、Ｌ＝８のときに、ＬＴ＝４８０となり、ｄｉｖ｛ｈｅｉｇｈｔ｝＞ｅｌｅｍ３｛ｍ＿ｈｅｉｇｈｔ｝を満たすことができる。したがって、Ｌ'＝８であり、ｅｌｅｍ３｛ｍ＿ｈｅｉｇｈｔ｝は４８０（ｐｘ）となる。このとき、任意要素［３］は、９行目が削除され８行になるが、レイアウト調整部１６は、８行目の最後の文字を「…」に置き換えて、以降が省略されていることを示してもよい。その場合、８行目は、「す。また、海外からのお客様も多く訪…」となる。
【０１３０】
上述したように、第１の実施の形態によれば、複数の情報（記事要素）のそれぞれについて、表示装置３０の表示領域におけるサイズが計算され、当該複数の情報のそれぞれのサイズと、当該表示領域のサイズとに基づいて、当該表示領域に対する当該複数の情報の配置の可否が判定され、当該表示領域に当該複数の情報を配置できない場合に、当該複数の情報を、それぞれが当該表示領域に収まる複数の画面に分散させて割り当てて当該複数の情報の出力内容が生成される。
【０１３１】
したがって、無理矢理１つの画面に対して文字サイズを小さくするなどして複数の情報を収める場合に比べて、閲覧者が視認可能な文字サイズでの情報が表示される可能性を高めることができる。すなわち、情報を分かり易く閲覧可能とすることができる。
【０１３２】
また、このように自動的に各情報（各記事要素）の各画面への割り当てが行われるため、コンテンツ制作の構築コストを低減できる上、専門的な知識を必要とせずとも自動的にデジタルサイネージを見ている人にとって見やすいレイアウトで表示されるコンテンツを作成することができる。
【０１３３】
また、共通のレイアウト、例えば、タイトルを各画面に共通で表示することで、同じタイトルに関する内容だということが明示できるため、デジタルサイネージの閲覧者によるコンテンツの内容理解を促進できる。
【０１３４】
［第２の実施の形態］
次に、第２の実施の形態について説明する。第２の実施の形態では第１の実施の形態と異なる点について説明する。第２の実施の形態において特に言及されない点については、第１の実施の形態と同様でもよい。
【０１３５】
第１の実施の形態では、高さ１９２０ｐｘ、横幅が１０８０ｐｘの表示領域について、タイトル等の記事要素を配置していく方法について説明した。但し、本実施の形態の適用範囲は、このような長方形の領域にのみに限定されない。
【０１３６】
例えば、図２９は、３つの領域に分割された表示領域の例を示す図である。すなわち、図２９では、高さ１０８０ｐｘ、横幅１９２０ｐｘの領域が、領域１、領域２、領域３の３つに分割されている。図２９では画面が横配置となっているため、対象表示パラメータ値が「横」の場合の例である。
【０１３７】
第２の実施の形態では、例えば、補助記憶装置１０２等に、記事タイプ及び表示パラメータごとに各領域にいずれの記事要素を配置するのかを示す設定データ（以下、「配置領域設定データ」という。）が記憶されている。
【０１３８】
図３０は、配置領域設定データの構成例を示す図である。図３０には、記事要素項目ごとに、「表示領域」及び「全画面共通表示」が設定されている例が示されている。「表示領域」は、記事要素を表示する領域の番号を示す項目である。「全画面共通表示」は、対象記事要素群が複数の画面に分散される場合に、全ての画面で表示対象となるか（○）否か（×）を示す項目である。
【０１３９】
図３０によれば、「タイトル」は領域１に、「画像」は領域３に、「日時」、「場所」及び「説明」は領域２に配置される。また、「タイトル」、「画像」及び「日時」について、「全画面共通表示」は、「○」に設定されている。
【０１４０】
「タイトル」は、テキストであるとする。第１の実施の形態では、図２２に示されるようにタイトルエリアの高さと横幅の最大値が設定される例について説明したが、図２９の領域１の高さ、幅が、タイトルエリアの高さの最大値、横幅の最大値として設定されれば、「タイトル」が領域１をはみ出すことはない。
【０１４１】
同様に、領域３には画像が表示されるが、領域３の高さ、幅が、図２１に示される画像エリアの高さの最大値ｉｍｇ｛ｍａｘ＿ｈａｉｇｈｔ｝と横幅の最大値ｉｍｇ｛ｍａｘ＿ｗｉｄｔｈ｝として設定されるようにすれば、画像が領域３をはみ出すことはない。
【０１４２】
領域２については、図３０によると、「日時」、「場所」及び「説明」が配置され、「日時」の「全画面共通表示」が「○」に設定されている。この場合の「日時」、「場所」及び「説明」の配置については、第１の実施の形態と同様に実行することが可能である。
【０１４３】
図３１は、第２の実施の形態における各記事要素の配置例を示す図である。図３１には、領域１に「タイトル」が配置され、領域２に、任意要素［１］（「日時」）、任意要素［２］（「場所」）、任意要素［３］（「説明」）が配置され、領域３に「画像」が配置された例が示されている。
【０１４４】
このように、複数の領域に分けることができる画面においても、各記事要素を配置することが可能である。
【０１４５】
［第３の実施の形態］
次に、第３の実施の形態について説明する。第３の実施の形態では上記各実施の形態と異なる点について説明する。第３の実施の形態において特に言及されない点については、上記各実施の形態と同様でもよい。
【０１４６】
上記では、表示領域のサイズが固定（ｍａｉｎ｛ｈｅｉｇｈｔ｝＝１９２０ｐｘ、ｍａｉｎ｛ｗｉｄｔｈ｝＝１０８０ｐｘ）である例を説明したが、この場合、表示装置３０のディスプレイサイズが小さくなると、表示される文字のサイズが小さくなり、閲覧者に視認可能な最低の文字サイズ（以下、「最低文字サイズ」という。）での表示が困難となる可能性が有る。なお、最低文字サイズは、単位がｃｍ等、物理的なサイズをいう。
【０１４７】
そこで、第３の実施の形態では、レイアウト情報（図１３）及びサイズパラメータ群（図２１）の内容がディスプレイサイズごとに設定される。具体的には、ディスプレイサイズと、レイアウト情報（図１３）及びサイズパラメータ群（図２１）との対応表が予め生成され、補助記憶装置１０２等に記憶される。レイアウト調整部１６やサイズ計算部１５は、表示装置３０のディスプレイサイズに対応したレイアウト情報又はサイズパラメータ群を利用して処理を実行する。そうすることで、出力内容のレイアウトを、最低文字サイズが保証された状態で、ディスプレイサイズに応じて変化させることができる。なお、ディスプレイサイズは、例えば、ユーザによって入力（設定）されてもよいし、出力内容生成装置１０が自動的に検出してもよい。
【０１４８】
［第４の実施の形態］
次に、第４の実施の形態について説明する。第４の実施の形態では上記各実施の形態と異なる点について説明する。第４の実施の形態において特に言及されない点については、上記各実施の形態と同様でもよい。
【０１４９】
表示装置３０の解像度に応じて、文字の判別のし易さは変化する。例えば、解像度が低くなると文字の判別がしづらくなる。そこで、第４の実施の形態では、表示装置３０の解像度が低くなるほど最低文字サイズを大きくする。具体的には、解像度と、レイアウト情報（図１３）及びサイズパラメータ群（図２１）との対応表が予め生成され、補助記憶装置１０２等に記憶される。この際、解像度が低いほど、最低文字サイズが大きくなるように、レイアウト情報及びサイズパラメータ群が設定される。レイアウト調整部１６やサイズ計算部１５は、表示装置３０の解像度に対応したレイアウト情報又はサイズパラメータ群を利用して処理を実行する。そうすることで、出力内容のレイアウトを、解像度に応じて異なる最低文字サイズが保証された状態で変化させることができる。なお、解像度は、例えば、ユーザによって入力（設定）されてもよいし、出力内容生成装置１０が自動的に検出してもよい。
【０１５０】
［第５の実施の形態］
次に、第５の実施の形態について説明する。第５の実施の形態では上記各実施の形態と異なる点について説明する。第５の実施の形態において特に言及されない点については、上記各実施の形態と同様でもよい。
【０１５１】
第５の実施の形態では、表示装置３０の設置場所に応じて周囲の明るさ（以下、単に「明るさ」という。）が変化することを考慮する。例えば、表示装置３０の周囲が明るいと、コントラストが足りなくなり、記事の内容が見づらくなる。
【０１５２】
そこで、第５の実施の形態では、レイアウト情報（図１３）が明るさごとに設定される。具体的には、明るさと、レイアウト情報（図１３）との対応表が予め生成され、補助記憶装置１０２等に記憶される。レイアウト調整部１６は、表示装置３０の明るさに対応したレイアウト情報を利用して処理を実行する。各レイアウト情報では、背景色と文字色との設定が異なる。図１３には図示していないが、背景色と文字色はｃｓｓファイルに記述することができるため、その組み合わせを変更することができる。すなわち、相対的に高い明るさに対応するレイアウト情報では、背景色と文字色とのコントラストが高くなるように設定される。そうすることで、出力内容のコントラストを、明るさに応じて変化させることができる。なお、明るさは、例えば、ユーザによって入力（設定）されてもよいし、出力内容生成装置１０が自動的に検出してもよい。
【０１５３】
［第６の実施の形態］
次に、第６の実施の形態について説明する。第６の実施の形態では上記各実施の形態と異なる点について説明する。第６の実施の形態において特に言及されない点については、上記各実施の形態と同様でもよい。
【０１５４】
第６の実施の形態では、対象記事の出力内容にヘッダ領域及びフッタ領域が設けられる。ヘッダ領域とは、表示領域内において、一番上に配置されるエリア（図１５の例ではタイトルエリア）の上の領域をいい、フッタ領域とは、表示領域内において、一番下に配置されるエリア（図１５の例では、任意要素３用エリア）の下の領域をいう。
【０１５５】
ヘッダ領域及びフッタ領域の高さは、固定的に設定されてもよいが、例えば、表示装置３０のディスプレイサイズ又は解像度等に応じて変えられてもよい。この場合、ディスプレイサイズ又は解像度ごとに、ヘッダ領域及びフッタ領域が異なるレイアウト情報（図１３）が設定され、レイアウト調整部１６は、表示装置３０のディスプレイサイズ又は解像度に応じて異なるレイアウト情報を利用すればよい。
【０１５６】
同様に、各エリアの内法についても、ディスプレイサイズ又は解像度等に応じて、レイアウト情報において異なるように設定されてもよい。
【０１５７】
［第７の実施の形態］
次に、第７の実施の形態について説明する。第７の実施の形態では第３又は第４の実施の形態と異なる点について説明する。第７の実施の形態において特に言及されない点については、第３又は第４の実施の形態と同様でもよい。
【０１５８】
第３又は第４の実施の形態において、最低文字サイズが保証されるように、ディスプレイサイズ又は解像度に応じてレイアウト情報が設定される場合に、各エリアを垂直方向又は水平方向に一列に並べるのではなく、複数エリアが水平方向又は垂直方向に配置されるように、レイアウト情報が設定されてもよい。具体的には、表示パラメータ値が「縦」である場合に、最低文字サイズが保証可能な範囲において、複数のエリアが水平方向に配列可能なディスプレイサイズ又は解像度については（本来であれば、下に配置されるエリアが、隣接する上側のエリアと水平方向に配列可能なディスプレイサイズ又は解像度については）、そのようにレイアウト情報を定義することで、なるべく少ない画面数で対象記事が表示されるようにしてもよい。同様に、表示パラメータ値が「横」である場合に、最低文字サイズが保証可能な範囲において、複数のエリアが垂直方向に配列可能なディスプレイサイズ又は解像度については（本来であれば、右に配置されるエリアが、隣接する左側のエリアと垂直方向に配列可能なディスプレイサイズ又は解像度については）、そのようにレイアウト情報を定義することで、なるべく少ない画面数で対象記事が表示されるようにしてもよい。
【０１５９】
［第８の実施の形態］
次に、第８の実施の形態について説明する。第８の実施の形態では上記各実施の形態と異なる点について説明する。第８の実施の形態において特に言及されない点については、上記各実施の形態と同様でもよい。
【０１６０】
第８の実施の形態において、サイズ計算部１５は、テキストの各記事要素（例えば、「タイトル」や「任意要素」という。）について、表示装置３０のディスプレイサイズ又は解像度に応じた文字サイズを計算する。サイズ計算部１５は、テキストの各記事要素について、当該記事要素に対する最低文字サイズを下回らない文字サイズであって、当該記事要素に対応するエリアに当該記事要素を収めることが可能な最大の文字サイズを計算し、当該最大の文字サイズに対応するフォントサイズで、当該記事要素を当該エリアに配置する。そうすることで、出来るだけ閲覧者にとって見易い態様の出力内容を生成することができる。
【０１６１】
［第９の実施の形態］
次に、第９の実施の形態について説明する。第９の実施の形態では上記各実施の形態と異なる点について説明する。第９の実施の形態において特に言及されない点については、上記各実施の形態と同様でもよい。
【０１６２】
第９の実施の形態では、テキストの記事要素について、形態素内での改行の許否に関する設定が可能とされる。当該設定に対する設定値は、例えば、補助記憶装置１０２等に記憶される。
【０１６３】
レイアウト調整部１６が、記事要素を当該記事要素に対応するエリア内に配置する際に、形態素内での改行を許可しないことが設定されている場合には、形態素内での改行が行われないように、当該記事要素を当該エリア内に配置する。具体的には、行を跨ぐ形態素が発生した場合、レイアウト調整部１６は、当該形態素の先頭で改行を行う。そうすることで、当該記事要素を読みやすくすることができる。
【０１６４】
［第１０の実施の形態］
次に、第１０の実施の形態について説明する。第１０の実施の形態では上記各実施の形態と異なる点について説明する。第１０の実施の形態において特に言及されない点については、上記各実施の形態と同様でもよい。
【０１６５】
第１０の実施の形態では、対象記事の各画面において、総画面数（画面の分割数）と、現在の画面番号とが、例えば、フッタ領域に表示されるようにレイアウト情報が定義される。例えば、「現在のページ番号／総画面数」といった形式で、これらの情報が表示されるようにしてもよい。そうすることで、閲覧者は、対象記事を構成する画面数と、現在閲覧中の画面が何番目の画面であるのかを把握することができる。
【０１６６】
［第１１の実施の形態］
次に、第１１の実施の形態について説明する。第１１の実施の形態では上記各実施の形態と異なる点について説明する。第１１の実施の形態において特に言及されない点については、上記各実施の形態と同様でもよい。
【０１６７】
第１１の実施の形態では、対象記事の各画面において、残りの表示時間が、例えば、フッタ領域に表示されるようにレイアウト情報が定義される。例えば、画面の表示時間や残りの表示時間を数値で表してもよいし、表示時間に対する経過時間の割合を示すバーや円グラフの形式で、残りの表示時間が表現されるようにしてもよい。そうすることで、閲覧者は、現在閲覧中の画面の残りの表示時間を容易に把握することができる。
【０１６８】
［第１２の実施の形態］
次に、第１２の実施の形態について説明する。第１２の実施の形態では上記各実施の形態と異なる点について説明する。第１２の実施の形態において特に言及されない点については、上記各実施の形態と同様でもよい。
【０１６９】
対象記事要素群が複数画面に分散されて表示される場合、閲覧者によっては、或る画面の表示開始後にしばらく時間が経過してから当該を閲覧したために、当該画面内の文章を読み終わる前に当該画面の表示が終了してしまう（表示対象の画面が切り替わってしまう）可能性がある。
【０１７０】
そこで、第１２の実施の形態では、画面ごとに、当該画面又は対象記事のＵＲＬを示すＱＲコード（登録商標）等を表示しておく。具体的には、各画面に対して斯かるＱＲコード（登録商標）等が表示されるように、レイアウト情報が定義される。
【０１７１】
そうすることで、閲覧者は、閲覧中の画面に含まれるＱＲコード（登録商標）を自分のスマートフォン等に読み込ませることで、当該画面を当該スマートフォン等で閲覧することができるようになる。
【０１７２】
［第１３の実施の形態］
次に、第１３の実施の形態について説明する。第１３の実施の形態では上記各実施の形態と異なる点について説明する。第１３の実施の形態において特に言及されない点については、上記各実施の形態と同様でもよい。
【０１７３】
上述の実施形態では、図１１のステップＳ２２２では、図１０におけるひとつのレコードに対して、画面毎の文字数や難易度等を用いて表示時間を設定したが、これに限るものではない。例えば、図１０のようにイベントの中に複数のレコードが登録されている場合、各レコードについて、上述のように、対象記事要素群を複数の画面に分散させるかを計算し、その結果完成した一連の画面の平均文字数や難易度を求めたり、全記事タイプの平均的な１画面あたりの文字数や難易度を求めることで、画面についての表示時間を自動設定するようにしてもよい。このとき、全画面に表示される記事要素（例えば、「タイトル」等）の文字数や難易度を、２番目の画面以降については集計対象から除外してもよいことはいうまでもない。
【０１７４】
なお、上記各実施の形態において、サイズ計算部１５は、第１の計算部の一例である。レイアウト調整部１６は、判定部及び第２の計算部の一例である。レイアウト調整部１６及び出力内容生成部１７は、生成部の一例である。
【０１７５】
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【０１７６】
１０          出力内容生成装置
１１          記事登録部
１２          生成要求受信部
１３          記事要素取得部
１４          レイアウト取得部
１５          サイズ計算部
１６          レイアウト調整部
１７          出力内容生成部
２０          ユーザ端末
３０          表示装置
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
１２１        記事要素項目記憶部
１２２        記事情報記憶部
１２３        レイアウト情報記憶部
１２４        サイズパラメータ記憶部
１２５        要素サイズ記憶部
１２６        レイアウト設定記憶部
Ｂ            バス
【図１】
2020060804.tif 000003
【図２】
2020060804.tif 000004
【図３】
2020060804.tif 000005
【図４】
2020060804.tif 000006
【図５】
2020060804.tif 000007
【図６】
2020060804.tif 000008
【図７】
2020060804.tif 000009
【図８】
2020060804.tif 000010
【図９】
2020060804.tif 000011
【図１０】
2020060804.tif 000012
【図１１】
2020060804.tif 000013
【図１２】
2020060804.tif 000014
【図１３】
2020060804.tif 000015
【図１４】
2020060804.tif 000016
【図１５】
2020060804.tif 000017
【図１６】
2020060804.tif 000018
【図１７】
2020060804.tif 000019
【図１８】
2020060804.tif 000020
【図１９】
2020060804.tif 000021
【図２０】
2020060804.tif 000022
【図２１】
2020060804.tif 000023
【図２２】
2020060804.tif 000024
【図２３】
2020060804.tif 000025
【図２４】
2020060804.tif 000026
【図２５】
2020060804.tif 000027
【図２６】
2020060804.tif 000028
【図２７】
2020060804.tif 000029
【図２８】
2020060804.tif 000030
【図２９】
2020060804.tif 000031
【図３０】
2020060804.tif 000032
【図３１】
2020060804.tif 000033