JP2010205151A - 変換装置、変換方法、表示システム及びコンピュータプログラム - Google Patents

変換装置、変換方法、表示システム及びコンピュータプログラム Download PDF

Info

Publication number
JP2010205151A
JP2010205151A JP2009052369A JP2009052369A JP2010205151A JP 2010205151 A JP2010205151 A JP 2010205151A JP 2009052369 A JP2009052369 A JP 2009052369A JP 2009052369 A JP2009052369 A JP 2009052369A JP 2010205151 A JP2010205151 A JP 2010205151A
Authority
JP
Japan
Prior art keywords
character string
ruby
character
lyrics
lyric
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.)
Granted
Application number
JP2009052369A
Other languages
English (en)
Other versions
JP5250453B2 (ja
Inventor
Junya Nakatani
潤哉 中谷
Yuji Asakura
祐司 朝倉
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.)
Xing Inc
Original Assignee
Xing 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 Xing Inc filed Critical Xing Inc
Priority to JP2009052369A priority Critical patent/JP5250453B2/ja
Publication of JP2010205151A publication Critical patent/JP2010205151A/ja
Application granted granted Critical
Publication of JP5250453B2 publication Critical patent/JP5250453B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)
  • Document Processing Apparatus (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)

Abstract

【課題】本発明は、ルビを見易く表示するための変換装置、変換方法、表示システム及びコンピュータプログラムを提供する。
【解決手段】PC1は、ネットワーク網Nを介してサーバ装置2から歌詞データを受付ける。PC1は、歌詞データに含まれており、連続して配列してあるルビ付き歌詞文字列を読み出して連結すると共に、対応するルビ文字列を連結する。PC1は、受付けた歌詞データに含まれるルビ付き歌詞文字列及び対応するルビ文字列夫々を、連結したルビ付き歌詞文字列及び連結したルビ文字列に変換し、表示データとしてサーバ装置2に出力する。サーバ装置2は、PC1により変換して得た表示データをカラオケ装置3に送信する。カラオケ装置3は、受信した表示データを表示することにより、ルビ付き歌詞文字列に沿ってルビを見易く表示する。
【選択図】図1

Description

本発明は、ルビを見易く表示するための変換装置、変換方法、表示システム及びコンピュータプログラムに関する。
楽曲の演奏時に読み仮名を示すルビが付された歌詞を表示するカラオケ装置、カラオケ機能付き携帯電話機及びDTM( Desk Top Music)装置等が使われている。このようなカラオケ装置は、ルビを含む歌詞データを受付けて表示するようにしてある。特許文献1及び特許文献2には、受付けた歌詞データに対して形態素解析及び構文解析等を施し、変換用の辞書を参照して歌詞の読み仮名を取得し、ルビを含む歌詞データを作成する装置が開示されている。しかし、歌詞の読み仮名は、一般的な読み仮名と曲毎に異なる場合があるため、ルビを含む歌詞データは、データ作成者により人手で作成されることがある。
データ作成者により、1曲の歌詞全体が複数の画面夫々に表示する歌詞に分割され、さらに各画面に表示する歌詞が複数の部分歌詞に分割される。次に、データ作成者により、複数の部分歌詞のうち、一部の部分歌詞にルビが付けられる。データ作成者により、複数の部分歌詞夫々を示す複数の文字列からなり、当該複数の文字列の一部にルビを示す子文字列が対応付けられた歌詞データが作成される。歌詞データは、カラオケ装置に与えられる。カラオケ装置は、カラオケ曲の演奏中に歌詞データに配列してある複数の文字列を順次表示し、子文字列を対応する文字列の上側に沿って表示することで、歌詞をルビと共に表示する。歌詞を複数の部分歌詞に分割する方法は、データ作成者によって異なり、例えば、歌詞を漢字一文字毎又は複合語の途中で分割し、得られた部分歌詞夫々を示す複数の文字列を含む歌詞データが作成されることがある。
特開2002−41074号公報 特開2002−82665号公報
しかしながら、このような歌詞データがカラオケ装置に与えられて、漢字一文字又は複合語の途中で分割された部分歌詞夫々に沿ってルビが表示される場合、ルビが付される単語又は熟語との対応関係がユーザにとって把握し難く、ルビが見難いという問題があった。
本発明は斯かる事情に鑑みてなされたものであり、入力データに連続して配列してある一部の文字列を連結する文字列連結手段と、対応するルビ文字列を連結する連結手段とを備えることにより、ルビを視認し易く表示することが可能となる変換装置、変換方法、表示システム及びコンピュータプログラムを提供することを目的とする。
本発明に係る変換装置は、複数の文字列のうち、一部の文字列に子文字列が対応付けられた入力データを受付けて、表示装置により前記子文字列を前記一部の文字列に沿って表示すべく表示データへ変換する変換装置において、連続して配列してある一部の文字列を連結する文字列連結手段と、前記一部の文字列夫々に対応付けられた子文字列を連結する子文字列連結手段と、該子文字列連結手段により連結した子文字列を前記文字列連結手段により連結した前記一部の文字列に対応付ける対応付け手段と、前記入力データに含まれる前記一部の文字列を前記対応付け手段により対応付けられた一部の文字列へ変換する変換手段とを備えることを特徴とする。
本発明にあっては、入力データに含まれており、子文字列が対応付けられた文字列のうち、連続して配列してある文字列が連結されると共に、当該文字列夫々に対応付けられた子文字列が連結される。入力データに含まれる子文字列が対応付けられた文字列は、連結された文字列に変換されると共に、当該子文字列は、連結された子文字列に変換される。これにより、入力データは、1つの単語及び熟語に対応した文字列に沿って子文字列が表示される表示データへ変換される。
本発明に係る変換装置は、前記子文字列は、前記一部の文字列に付されるルビであることを特徴とする。
本発明にあっては、文章及び歌詞等の部分を示す複数の文字列のうち、一部の文字列に沿って、当該文章及び歌詞等の読み仮名を示すルビが表示される。
本発明に係る変換装置は、前記変換手段は、前記子文字列連結手段により連結した子文字列を、前記対応付け手段により対応付けられた一部の文字列に沿って配列してなる表示データへ変換するよう構成してあることを特徴とする。
本発明にあっては、入力データが、連結された文字列に沿って、対応する連結された子文字列が配列された表示データへ変換される。表示装置が表示データを表示することにより、1つの単語及び熟語に対応した文字列に沿ってルビが表示される。
本発明に係る変換方法は、複数の文字列のうち、一部の文字列に子文字列が対応付けられた入力データを受付けて、表示装置により前記子文字列を前記一部の文字列に沿って表示すべく表示データへ変換する変換方法において、連続して配列してある一部の文字列を連結する文字列連結ステップと、前記一部の文字列夫々に対応付けられた子文字列を連結する子文字列連結ステップと、該子文字列連結ステップにより連結した子文字列を前記文字列連結ステップにより連結した前記一部の文字列に対応付ける対応付けステップと、前記入力データに含まれる一部の文字列を前記対応付けステップにより対応付けられた一部の文字列へ変換する変換ステップとを備えることを特徴とする。
本発明にあっては、入力データに含まれており、子文字列が対応付けられた文字列のうち、連続して配列してある文字列が連結されると共に、当該文字列夫々に対応付けられた子文字列が連結される。入力データに含まれており、子文字列が対応付けられた文字列は、連結された文字列に変換されると共に、当該子文字列は、連結された子文字列に変換される。これにより、入力データは、1つの単語及び熟語に対応した文字列に沿って子文字列が表示される表示データへ変換される。
本発明に係る表示システムは、前述の変換装置と、該変換装置により変換した表示データを表示する表示装置とを備えることを特徴とする。
本発明にあっては、入力データが変換装置によりルビを見易く表示すべく表示データへ変換される。表示装置は、表示データを表示することにより、ルビの配置の調整を必要とせずにルビを見易く表示する。
本発明に係るコンピュータプログラムは、複数の文字列のうち、一部の文字列に子文字列が対応付けられた入力データを受付けるコンピュータに、表示装置により前記子文字列を前記一部の文字列に沿って表示すべく表示データへ変換させるコンピュータプログラムにおいて、前記コンピュータに、連続して配列してある一部の文字列を連結する文字列連結ステップと、前記一部の文字列夫々に対応付けられた子文字列を連結する子文字列連結ステップと、該子文字列連結ステップにより連結した子文字列を前記文字列連結ステップにより連結した前記一部の文字列に対応付ける対応付けステップと、前記入力データに含まれる前記一部の文字列を前記対応付けステップにより対応付けた一部の文字列へ変換する変換ステップとを実行させることを特徴とする。
本発明にあっては、入力データに含まれており、子文字列が対応付けられた文字列のうち、連続して配列してある文字列が連結されると共に、当該文字列夫々に対応付けられた子文字列が連結される。入力データに含まれており、子文字列が対応付けられた文字列は、連結された文字列に変換されると共に、当該子文字列は、連結された子文字列に変換される。これにより、入力データは、1つの単語及び熟語に対応した文字列に沿って子文字列が表示される表示データへ変換される。
本発明にあっては、入力データに連続して配列してある一部の文字列を連結する文字列連結手段と、対応するルビ文字列を連結する連結手段とを備えることにより、ルビを視認し易く表示することが可能となる。
実施の形態1に係るカラオケシステムの構成を示すブロック図である。 実施の形態1に係るPCの内部構成例を示すブロック図である。 実施の形態1に係る置換文字DBのレコードレイアウト例を示す図表である。 実施の形態1に係る歌詞データのレコードレイアウト例を示す模式図である。 実施の形態1に係る対応表のレコードレイアウト例を示す図表である。 実施の形態1に係る第1ルビレイアウト処理を説明するための説明図である。 実施の形態1に係る第1ルビレイアウト処理を説明するための説明図である。 実施の形態1に係る第2ルビレイアウト処理を説明するための説明図である。 実施の形態1に係る第2ルビレイアウト処理を説明するための説明図である。 実施の形態1に係る改行処理を説明するための説明図である。 実施の形態1に係る改行処理を説明するための説明図である。 実施の形態1に係る改行処理を説明するための説明図である。 実施の形態1に係る改行処理を説明するための説明図である。 実施の形態1に係る改行処理を説明するための説明図である。 実施の形態1に係る改行処理を説明するための説明図である。 実施の形態1に係る不要な空白文字の削除処理を説明するための説明図である。 実施の形態1に係る表示データのレコードレイアウト例を示す模式図である。 実施の形態1に係るデータ変換処理の手順を示すフローチャートである。 実施の形態1に係るデータ読込処理の手順を示すフローチャートである。 実施の形態1に係る第1ルビレイアウト処理の手順を示すフローチャートである。 実施の形態1に係る先頭挿入処理の手順を示すフローチャートである。 実施の形態2に係る第1ルビレイアウト処理を説明するための説明図である。 実施の形態2に係る第1ルビレイアウト処理を説明するための説明図である。 実施の形態2に係る第1ルビレイアウト処理の手順を示すフローチャートである。 実施の形態2に係る均等挿入処理の手順を示すフローチャートである。 実施の形態3に係るPCの内部構成例を示すブロック図である。
実施の形態1
以下、本発明をその実施の形態を示す図面を参照して具体的に説明する。本発明の表示システムは、ルビを含むテキストデータを受け付けて変換する変換装置と、変換装置により変換されたテキストデータを表示する表示装置とからなる。テキストデータは、例えばルビが付された文章からなる電子書籍データ、ルビが付されたセリフからなる映画及びドラマの字幕データ、並びにルビが付された歌詞からなる歌詞データ等である。変換装置は、ネットワーク網を介して変換すべきテキストデータを受け付けるサーバ装置、並びにネットワーク網及び記憶媒体を介して変換すべきテキストデータを受け付けるPC( Personal Computer )等である。表示装置は、例えば、液晶パネル等の表示部を有する携帯端末装置及び携帯電話機、並びに表示部を有するカラオケ装置等である。本実施の形態では、表示システムとして、歌詞データを変換して得た表示データをカラオケ装置により表示するカラオケシステムを例に挙げて説明する。
図1は、実施の形態1に係るカラオケシステムの構成を示すブロック図である。図中1は、変換装置としてのPCであり、インターネット又はLAN( Local Area Network )等のネットワーク網Nを介してサーバ装置2に接続してある。サーバ装置2は、演奏データ、楽曲情報及びデータ作成者により作成された複数の歌詞データを管理している。また、サーバ装置2は、ネットワーク網Nを介してPC1からの要求を受付け、当該要求に応じて歌詞データ及び楽曲情報をPC1に送信するようにしてある。PC1は、サーバ装置2から送られてきた入力データとしての歌詞データを表示データに変換し、当該表示データに楽曲情報を付加してサーバ装置2に送信するようにしてある。
サーバ装置2は、PC1により変換された表示データを管理するようにしてある。サーバ装置2には、ネットワーク網Nを介して表示装置としてのカラオケ装置3が接続してある。カラオケ装置3は、サーバ装置2に特定の曲の表示データ及び演奏データを要求するようにしてある。また、カラオケ装置3は、要求に応じて送られてきた演奏データ及び表示データに基づいてカラオケ曲を演奏すると共に、ルビが付された歌詞を表示するようにしてある。カラオケ装置3により演奏及び表示されるカラオケ曲及び歌詞に応じてユーザが歌唱を行うようにしてある。
図2は、実施の形態1に係るPC1の内部構成例を示すブロック図である。PC1は、ネットワーク網Nと接続し、当該ネットワーク網Nを介してサーバ装置2から歌詞データを受付けると共に、当該サーバ装置2へ表示データを出力するための通信部13を備える。また、PC1は、コンピュータプログラムに従って挿入手段、変更手段、連結手段(文字列連結手段及び子文字列連結手段)、対応付け手段、変換手段、文字列長取得手段及び判定手段として機能するCPU( Central Processing Unit )10を備える。
CPU10には、ROM(Read Only Memory )11と、RAM( Random-Access Memory )12と、通信部13と、置換文字DB( Data Base )14と、表示部15と、操作受付部16とがバス10aを介して接続してある。CPU10は、バス10aを介してハードウェア各部を制御するようにしてある。置換文字DB14は、歌詞データに含まれる特定の文字を予め指定してある文字に置換するための表を記憶してある。ROM11は、CPU10で実行されるコンピュータプログラム及び当該コンピュータプログラムを読み出すためのバッチファイルが記憶してある。
RAM12は、ROM11から読み出したプログラムを記憶すると共に、コンピュータプログラムの実行中に生じる変数等を記憶するようにしてある。表示部15は、液晶パネル等からなり、コマンドプロンプトを表示するようにしてある。操作受付部16は、キーボード及びマウス等からなり、ユーザによる操作を受け付けるようにしてある。CPU10は、表示部15に表示したコマンドプロンプトを介して操作受付部16がユーザによるバッチファイルの実行操作を受け付けた場合、ROM11からコンピュータプログラムをRAM12に読み出して実行するようにしてある。
図3は、実施の形態1に係る置換文字DB14のレコードレイアウト例を示す図表である。置換文字DB14には、歌詞データに含まれる文字のうち、置換する文字が置換元文字として記憶してあり、各置換元文字に対して置換先の文字が置換先文字として記憶してある。置換元文字として、全角文字を示す文字列が指定してあり、置換先文字として、カタカナの半角文字が指定してある。図3に示す例では、全角文字のひらがなである置換元文字「あ」、「い」、…夫々に対応してカタカナの半角文字である置換先文字「ア」、「イ」、…が指定してある。また、濁点を含んでおり、濁音を示す全角文字である置換元文字「ガ」、「ギ」、…夫々に対応してカタカナの半角文字である置換先文字「カ゛」、「キ゛」、…が指定してある。また、半濁点を含んでおり、半濁音を示す全角文字である置換元文字「パ」、「ピ」、…夫々に対応してカタカナの半角文字である置換先文字「ハ゜」、「ヒ゜」、…が指定してある。
図4は、実施の形態1に係る歌詞データのレコードレイアウト例を示す模式図である。歌詞データは、全角文字及び半角文字からなるテキストデータである。ここで、全角文字は、等幅フォントを用いて表示した場合、文字の高さが文字幅と略同一となる文字である。また、半角文字は、等幅フォントを用いて表示した場合、文字の高さが文字幅の略2倍となる文字である。全角文字及び半角文字は、空白(スペース)が表示される空白文字を含んでいる。歌詞データは、画面切替えを示す「;」(セミコロン)で区切られており、各画面に表示する歌詞を示す画面歌詞データが複数配列してある。
図4に示す例では、3つのセミコロンにより3回の画面切替が指定されている。また、図4には、画面切替後に表示する歌詞を示す画面歌詞データ夫々が各セミコロンの次の行に配列されている。各画面歌詞データには、複数の文字列としての複数の部分歌詞文字列が配列されている。部分歌詞文字列夫々は、画面切替後に表示する歌詞がデータ作成者等により複数の部分歌詞に分割されて得られた文字列である。複数の部分歌詞文字列のうち、一部の部分歌詞文字列に子文字列としての部分ルビ文字列が対応付けられている。部分ルビ文字列夫々は、各部分歌詞の読み仮名を示す複数のルビ文字からなる文字列である。ここで、部分歌詞文字列及び部分ルビ文字列夫々は、1個の文字からなる文字列を含む。
部分歌詞文字列は、漢字、カタカナ、平仮名、数字、アルファベット及び空白を示す文字からなる。部分ルビ文字列は、平仮名及びカタカナを示すルビ文字からなる。部分歌詞文字列のうち、部分ルビ文字列が対応付けられる一部の部分歌詞文字列は、先頭に「”」(ダブルコーテーション)が付加されて、画面歌詞データに配列されている。また、部分ルビ文字列が対応付けられない部分歌詞文字列は、先頭にダブルコーテーションが付加されずに画面歌詞データに配列されている。部分ルビ文字列は、先頭及び終端にダブルコーテーションが付加されて、対応する部分歌詞文字列の後端に挿入されている。
以下、部分ルビ文字列が対応付けられた部分歌詞文字列をルビ付き部分歌詞文字列と呼ぶ。また、部分ルビ文字列が対応付けられていない部分歌詞文字列をルビ無し部分歌詞文字列と呼ぶ。例えば、図4に示す画面歌詞データ「”一”いち””番”ばん””大切”たいせつ”な”事”こと”」は、ルビ付き部分歌詞文字列「一」、「番」、「大切」及び「事」夫々の後端に対応する部分ルビ文字列「いち」、「ばん」、「たいせつ」及び「こと」が各挿入されている。また、ルビ無し部分歌詞文字列「な」は、ダブルコーテーションが付加された部分ルビ文字列の「”たいせつ”」の後端に配列してある。次に、PC1が歌詞データを読込む手順について説明する。
PC1は、各画面歌詞データに配列してある部分歌詞文字列を順に読み出す。PC1は、ルビ付き部分歌詞文字列を読み出す場合、対応する部分ルビ文字列と共に読み出すようにしてある。PC1は、読み出した部分歌詞文字列のうち、ルビ無し部分歌詞文字列を挟まずに連続して配列してある複数のルビ付き部分歌詞文字列を連結し、1つのルビ付き歌詞文字列として取得する。また、PC1は、連結したルビ付き部分歌詞文字列夫々に対応する部分ルビ文字列を連結し、1つのルビ文字列として取得する。読み出した部分文字列のうち、連続していない各ルビ付き部分歌詞文字列及びルビ無し部分歌詞文字列夫々は、1つのルビ付き歌詞文字列及びルビ無し歌詞文字列として各取得される。
また、連続していないルビ付き部分歌詞文字列に対応する部分ルビ文字列夫々は、1つのルビ文字列として各取得される。PC1は、取得したルビ付き歌詞文字列及びルビ無し歌詞文字列を、画面歌詞データにおける部分歌詞文字列の配列順に基づいて、歌詞文字列として並べた対応表を作成し、RAM12に記憶する。PC1は、対応表に並べた歌詞文字列のうち、ルビ付き歌詞文字列夫々にルビ文字列を対応付ける。
図5は、実施の形態1に係る対応表のレコードレイアウト例を示す図表である。図5に示す対応表の例は、図4の例に示す画面歌詞データ「”一”いち””番”ばん””大切”たいせつ”な”事”こと”」を読込んで作成された対応表を示している。画面歌詞データに連続して配置してあるルビ付き部分歌詞文字列「一」、「番」及び「大切」が連結されて1つのルビ付き歌詞文字列「一番大切」が取得されている。また、図5は、連続して配置されていないルビ付き部分歌詞文字列「事」が1つのルビ付き歌詞文字列「事」として取得されている。また、図5は、画面歌詞データに配置してあるルビ無し部分歌詞文字列「な」が1つのルビ無し歌詞文字列として取得されている。また、図5の対応表には、歌詞データでの配列順に基づいてルビ付き歌詞文字列「一番大切」、ルビ無し歌詞文字列「な」及びルビ付き歌詞文字列「事」の順に並べられている。
図5に示す例では、部分ルビ文字列「いち」、「ばん」及び「たいせつ」が連結されてルビ文字列「いちばんたいせつ」が取得され、当該ルビ文字列が対応表のルビ付き歌詞文字列「一番大切」に対応付けられている。ルビ部分文字列「こと」が1つのルビ文字列として取得され、対応表のルビ付き歌詞文字列「事」に対応付けられている。PC1は、全ての画面歌詞データに基づいて対応表を作成し、歌詞データの読込みを完了する。PC1は、対応表のルビ文字列に置換文字DB14により指定された置換元文字が含まれている場合、置換先文字を用いて対応表を書き換える。これにより、ルビが全角文字を含んでいる場合、半角文字に置換される。
また、置換文字DB14の置換先文字としてJISコード等に含まれない外字を指定し、当該外字に置換するようにしてもよい。この場合、歌詞部に”[”(左カッコ)及び”]”(右カッコ)で囲まれた特定の文字コードを示す文字列を挿入し、当該文字列を置換元文字とし、外字に対応付けて置換文字DB14により指定するとよい。次に、ルビ文字列をなすルビ文字夫々のルビ付き歌詞文字列に対する配置を変更する第1ルビレイアウト処理を説明する。
PC1は、ルビ付き歌詞文字列及びルビ文字列夫々の文字列長を取得する。各文字列長は、半角文字幅で取得されるようにしてあり、文字列に含まれる全角文字の個数の2倍値と、当該文字列に含まれる半角文字の個数との合計値に対応する。また、1個の文字からなる文字列の場合、文字列長として1が取得されるようにしてある。PC1は、文字列長の差を2等分した数の空白文字をルビ付き歌詞文字列及びルビ文字列のうち、文字列長の短い文字列の先頭に挿入する。これにより、ルビ文字列がルビ付き歌詞文字列の略中央に表示されるよう配置が調整される。
ルビ文字列の終端文字が濁点又は半濁点である場合、ルビ文字列の文字列長として、終端文字を除いた文字列長を取得することにより、ルビ文字列又はルビ付き歌詞文字列の先頭に挿入する空白文字の個数が1個加算される。これにより、他の半角文字と比較して左側に位置するよう視認される濁点又は半濁点に合わせてルビ文字列がルビ付き歌詞文字列に対して空白文字1個分を右側に移動して配置される。以上の第1ルビレイアウト処理を数式に基づいて実行する方法を説明する。
PC1は、ルビ付き歌詞文字列の文字列長、すなわち一部の文字列の文字列長としての歌詞文字列長W1と、ルビ文字列の文字列長、すなわち子文字列の文字列長としてのルビ文字列長W2とを取得する。PC1は、判定値mを、次式(1)に基づいて算出する。
m=(W1−W2+C)/2 (1)
ここで、Cは、ルビ文字列の終端文字が濁音又は半濁音である場合、1が設定され、濁音又は半濁音で無い場合、0が設定される補正値である。次にPC1は、挿入個数nを次式(2)に基づいて算出する。
n=Int〔|m|〕 (2)
ここでIntは、変数の小数点以下を切り捨てて変数の整数部を取得する関数である。
PC1は、ルビ付き歌詞文字列がルビ文字列よりも短く、判定値mが負値である場合、ルビ付き歌詞文字列の先頭に挿入個数nの半角の空白文字を挿入する。また、PC1は、ルビ付き歌詞文字列がルビ文字列よりも長く、判定値mが正値である場合、ルビ文字列の先頭に挿入個数nの半角の空白文字を挿入する。PC1は、配置を調整したルビ付き歌詞文字列及びルビ文字列の組を用いて対応表を書換える。PC1は、対応表に含まれるルビ付き歌詞文字列及びルビ文字列の組全てに第1ルビレイアウト処理を施して対応表を書換える。
図6は、実施の形態1に係る第1ルビレイアウト処理を説明するための説明図である。図中(a)及び(b)夫々は、第1ルビレイアウト処理が施される前後のルビ付き歌詞文字列及びルビ文字列を示す。図6(a)に示す例では、ルビ付き歌詞文字列「Come on」の歌詞文字列長W1及びルビ文字列「カモン」のルビ文字列長W2夫々は、7及び3となる。ルビ文字列の終端文字が濁音又は半濁音でないため、補正値Cは0となる。この場合、式(1)より判定値mとして2が算出され、式(2)より挿入個数nとして2が算出される。判定値mは、正値であるため、ルビ文字列「カモン」の先頭に2個の半角の空白文字が図6(b)に示す如く挿入されている。これにより、図6(b)は、ルビ文字列「カモン」が、ルビ付き歌詞文字列「Come on」に対して略中央となるよう配置が調整されている。
図7は、実施の形態1に係る第1ルビレイアウト処理を説明するための説明図である。図中(a)及び(b)夫々は、第1ルビレイアウト処理が施される前後のルビ付き歌詞文字列及びルビ文字列を示す。図7の(a)に示す例では、ルビ付き歌詞文字列「11万度」の歌詞文字列長W1及びルビ文字列「シ゛ュウイチマント゛」のルビ文字列長W2夫々は、6及び10となる。ルビ文字列の終端文字が濁音であるため、補正値Cは1となる。この場合、式(1)より判定値mとして−1.5が算出され、式(2)より挿入個数nとして1が算出される。判定値mは、負値であるため、ルビ付き歌詞文字列「11万度」の先頭に1個の半角の空白文字が図7(b)に示す如く挿入されている。
これにより、図7(b)は、ルビ文字列「シ゛ュウイチマント゛」が、ルビ付き歌詞文字列「11万度」に対して略中央となるよう配置が調整されている。PC1は、対応表に含まれる全ての組の書換えを完了した場合、対応表に記憶してあるルビ付き歌詞文字列及びルビ無し歌詞文字列をルビ文字列と共に順に連結し、各画面歌詞データに対応した歌詞行を生成する。PC1は、文字列長の異なるルビ文字列が対応付けられたルビ付き歌詞文字列に他のルビ付き歌詞文字列を連結する場合、第2ルビレイアウト処理を行う。次に、第2ルビレイアウト処理について、ルビ文字列長W2よりも短い歌詞文字列長W1を有するルビ付き歌詞文字列を他のルビ付き歌詞文字列に連結する場合の手順を説明する。
図8は、実施の形態1に係る第2ルビレイアウト処理を説明するための説明図である。図中黒塗りで示す領域は、半角の空白文字からなるルビ無し歌詞文字列を示す。また、図中斜線で示す領域は、第1ルビレイアウト処理又は第2ルビレイアウト処理によりルビ付き歌詞文字列又はルビ文字列に挿入された半角の空白文字を示す。図8(a)に示す連結元のルビ付き歌詞文字列「 11万度 」は、第1ルビレイアウト処理により先頭に半角の空白文字1個が挿入してあるルビ付き歌詞文字列「 11万度」に、空白文字1個からなるルビ無し歌詞文字列が連結されてなる。また、ルビ付き歌詞文字列「 11万度 」は、ルビ文字列「シ゛ュウイチマント゛」よりも短い文字列長を有している。図8(a)に示す連結先のルビ付き歌詞文字列「Come on」は、先頭に半角の空白文字2個が第1ルビレイアウト処理により挿入されたルビ文字列「 カモン」が対応付けられている。
図8(b)に示す如く歌詞文字列「11万度 」のルビ文字「ト」及び当該ルビ文字「ト」の後端に配置された「゛」に対応するよう2個の半角の空白文字を挿入されている。これにより、ルビ文字列及び歌詞文字列が同一の文字列長にされて、ルビ付き歌詞文字列「Come on」に、ルビ文字列「 カモン」と共に連結される。次に、図8(c)に示す如く、連結されたルビ付き歌詞文字列間及び連結されたルビ文字列間夫々に2個以上の半角の空白文字が存在する場合、連結されたルビ文字列間の空白文字が1個となるようルビ文字列から空白文字が削除される。また、ルビ文字列から削除された空白文字と同数の空白文字が連結されたルビ付き歌詞文字列間から削除される。次に、第2ルビレイアウト処理について、ルビ文字列長W2よりも長い歌詞文字列長W1を有するルビ付き歌詞文字列を他のルビ付き歌詞文字列に連結する場合の手順を説明する。
図9は、実施の形態1に係る第2ルビレイアウト処理を説明するための説明図である。図中黒塗りで示す領域は、半角の空白文字からなるルビ無し歌詞文字列を示す。また、図中斜線で示す領域は、第1ルビレイアウト処理又は第2ルビレイアウト処理によりルビ付き歌詞文字列又はルビ文字列に挿入された半角又は全角の空白文字を示す。図9(a)に示す連結元のルビ付き歌詞文字列「不思議な 」は、ルビ付き歌詞文字列「不思議な」に、空白文字1個からなるルビ無し歌詞文字列が連結されてなる。また、ルビ付き歌詞文字列「不思議な 」には、第1レイアウト処理により先頭に半角の空白文字が1個挿入されたルビ文字列「 フシキ゛」が対応付けられている。ルビ付き歌詞文字列「不思議な 」は、ルビ付き文字列「 フシキ゛」よりも長い文字列長を有している。図9(a)に示す連結先のルビ付き歌詞文字列「 11万度」は、先頭に半角の空白文字1個が第1ルビレイアウト処理により挿入されたルビ文字列「シ゛ュウイチマント゛」が対応付けられている。
図9(b)に示す如く、ルビ文字列「 フシキ゛」の終端に半角及び全角の空白文字夫々を挿入することにより、ルビ文字列及び歌詞文字列が同一の文字列長にされて、ルビ付き歌詞文字列「 11万度」にルビ文字列「シ゛ュウイチマント゛」と共に連結される。この場合、ルビ文字列「 フシキ゛」の終端に半角の空白文字のみを挿入してもよい。次に、図9(c)に示す如く、連結されたルビ付き歌詞文字列間及び連結されたルビ文字列間夫々に2個以上の半角の空白文字が存在する場合、連結されたルビ付き歌詞文字列間の空白文字が1個となるようルビ付き歌詞文字から空白文字が削除される。また、ルビ付き歌詞文字列から削除された空白文字と同数の空白文字が連結されたルビ文字列から削除される。PC1は、生成した歌詞行が所定の文字列長に達した場合、改行処理を施して改行を行う。次に、改行処理を説明する。
改行処理は、4つの改行条件に基づいて実行される。PC1は、第1ルビレイアウト処理及び第2ルビレイアウト処理により挿入された空白文字と異なる空白文字が歌詞行に存在し、当該空白文字が改行位置よりも左側に位置している場合、当該空白文字のうち、改行位置に最も近い空白文字の直後で改行する(第1改行条件)。PC1は、第1ルビレイアウト処理及び第2ルビレイアウト処理により挿入された空白文字と異なる空白文字が歌詞行に存在しておらず、ルビ文字列の途中に改行が位置する場合、改行位置のルビ付き歌詞文字列の先端で改行する(第2改行条件)。
PC1は、第1ルビレイアウト処理及び第2ルビレイアウト処理により挿入された空白文字と異なる空白文字が歌詞行に存在しておらず、アルファベット表記でない歌詞文字列中に改行が位置する場合、改行位置で改行する(第3改行条件)。PC1は、第1ルビレイアウト処理及び第2ルビレイアウト処理により挿入された空白文字と異なる空白文字が存在しておらず、アルファベット表記の歌詞文字列中に改行が位置する場合、当該歌詞文字列の先端で改行する(第4改行条件)。また、PC1は、第1改行条件から第4改行条件までのいずれにも該当せずに改行が出来なかった場合、その旨の警告を示すログファイルを出力するようにしてある。
図10は、実施の形態1に係る改行処理を説明するための説明図である。図10は、第1改行条件に基づいて改行処理が行われる歌詞行の例を示している。図中黒塗りで示す領域は、半角の空白文字からなるルビ無し歌詞文字列を示す。また、図中斜線で示す領域は、第1ルビレイアウト処理又は第2ルビレイアウト処理によりルビ付き歌詞文字列又はルビ文字列に挿入された半角の空白文字を示す。歌詞行「不思議な 11万度 Come on この俺」には、第1ルビレイアウト処理及び第2ルビレイアウト処理により挿入された空白文字とは異なる空白文字が存在し、当該空白文字は、改行M1よりも左側に位置している。この場合、第1改行条件に該当し、図10(b)に示す如く改行M1の位置から最も近い空白文字として、「Come on」の終端に位置する空白文字の直後で改行される。
図11は、実施の形態1に係る改行処理を説明するための説明図である。図11は、第2改行条件に基づいて改行処理が行われる歌詞行の例を示している。図中斜線で示す領域は、第1ルビレイアウト処理又は第2ルビレイアウト処理によりルビ付き歌詞文字列又はルビ文字列に挿入された半角の空白文字を示す。歌詞行「不思議な11万度 Come onこの俺様」には、第1ルビレイアウト処理及び第2ルビレイアウト処理により挿入された空白文字とは異なる空白文字が存在しておらず、改行M2は、ルビ文字列「オレサマ」中に位置している。この場合、第2改行条件に該当し、図11(b)に示す如く、改行M2が位置するルビ付き歌詞文字列「俺様」の先端でルビ文字列「オレサマ」と共に改行される。
図12は、実施の形態1に係る改行処理を説明するための説明図である。図12に示す例は、第3改行条件に基づいて改行処理が行われる歌詞行である。図中斜線で示す領域は、第1ルビレイアウト処理又は第2ルビレイアウト処理によりルビ付き歌詞文字列又はルビ文字列に挿入された半角の空白文字を示す。歌詞行「不思議な11万度 Come onこの俺様」には、第1ルビレイアウト処理及び第2ルビレイアウト処理により挿入された空白文字とは異なる空白文字が存在しておらず、改行M3は、アルファベット表記でない歌詞文字列「この」中に位置している。この場合、第3改行条件に該当し、図12(b)に示す如く、改行M3が位置する文字「の」で改行される。
図13は、実施の形態1に係る改行処理を説明するための説明図である。図13は、第4改行条件に基づいて改行処理が行われる歌詞行の例を示している。図中斜線で示す領域は、第1ルビレイアウト処理又は第2ルビレイアウト処理によりルビ付き歌詞文字列又はルビ文字列に挿入された半角の空白文字を示す。歌詞行「不思議な11万度 Come onこのore」には、第1ルビレイアウト処理及び第2ルビレイアウト処理により挿入された空白文字とは異なる空白文字が存在しておらず、改行M4は、アルファベット表記の歌詞文字列「ore」中に位置している。この場合、第4改行条件に該当し、図13(b)に示す如く、アルファベット表記の歌詞文字列「ore」の先端で改行される。
図14は、実施の形態1に係る改行処理を説明するための説明図である。図14に示す例は、第1改行条件から第4改行条件までのいずれの条件にも該当せず、改行処理が行われない場合を示す。図中斜線で示す領域は、第1ルビレイアウト処理又は第2ルビレイアウト処理によりルビ付き歌詞文字列又はルビ文字列に挿入された半角の空白文字を示す。図14に示す例では、改行M5は、歌詞文字列「 従順的心構え」及びルビ文字列「シ゛ュウシ゛ュンテキココロカ゛マエ」の途中に位置している。この場合、第1改行条件から第4改行条件までのいずれにも該当せず、改行処理が行われなかった旨の警告を示すログファイルが出力される。
図15は、実施の形態1に係る改行処理を説明するための説明図である。図15は、第1改行条件に基づいて改行処理を行われる歌詞行の他の例を示している。図中黒塗りで示す領域は、半角の空白文字からなるルビ無し歌詞文字列を示す。また、図中斜線で示す領域は、第1ルビレイアウト処理又は第2ルビレイアウト処理によりルビ付き歌詞文字列又はルビ文字列に挿入された半角の空白文字を示す。歌詞行「不思議な 11万度 Come on この俺」には、第1ルビレイアウト処理及び第2ルビレイアウト処理により挿入された空白文字とは異なる空白文字が存在し、当該空白文字は、改行M6よりも左側に位置している。
この場合、第1改行条件に該当し、図15(b)に示す如く、改行M6の位置から最も近く、「Come on」の直前に位置する空白文字の直後で改行される。また、改行後にルビ付き歌詞文字列「Come on」の先端とルビ文字列「カモン」の先端とを一致させるべく、ルビ文字列「カモン」の先端に2個の空白文字が挿入される。更に、ルビ付き文字列「11万度」の終端に位置する空白文字が不要な空白文字として削除される。
図16は、実施の形態1に係る不要な空白文字の削除処理を説明するための説明図である。図16は、第3改行条件に基づいて改行処理が行われる歌詞行の他の例を示している。図中斜線で示す領域は、第1ルビレイアウト処理又は第2ルビレイアウト処理によりルビ付き歌詞文字列又はルビ文字列に挿入された半角の空白文字を示す。歌詞行「不思議な11万度の 俺」には、第1ルビレイアウト処理及び第2ルビレイアウト処理により挿入された空白文字とは異なる空白文字が存在しておらず、改行M7は、アルファベット表記でない歌詞文字列「 俺」に位置している。
この場合、第3改行条件に該当し、図16(b)に示す如く、改行M7が位置する歌詞文字列「 俺」中の空白文字で改行される。また、改行後にルビ付き文字列「シ゛ュウイチマント゛ 」の終端の空白文字及び、ルビ付き歌詞文字列「 俺」及びルビ文字列「 オレ」夫々の先端の空白文字が不要な空白文字として削除される。
図17は、実施の形態1に係る表示データのレコードレイアウト例を示す模式図である。図17は、図4に示す歌詞データを受付けた場合に出力される表示データの例を示している。PC1は、サーバ装置2から歌詞データに関する楽曲情報を要求して取得する。PC1は、歌詞データの各画面歌詞データを改行処理後の各歌詞行に変換した表示データを生成する。PC1は、取得した楽曲情報に基づいて楽曲データを生成して、表示データの先頭に付加し、当該表示データを出力する。図17に示す例では、カラオケ選曲番号「1234」、歌詞データのファイル名「1234.txt」、曲名「夏の海」、歌手名「田中太郎」及び作曲者名「山田次郎」を含む楽曲データが表示データの先頭に付加されている。
また楽曲データは、作詞者名「ジョージ」、曲名の読み仮名「なつのうみ」、歌手名の読み仮名「たなかたろう」、曲の演奏時間「4’32’’」及び曲の態様を示す「ソロ男」を含んでいる。「ソロ男」は、男性歌手がソロで歌う曲であることを示している。楽曲データの後に、画面切替を示すセミコロンで区切られており、各歌詞画面データから変換された歌詞行が配列してある。図17に示す表示データの例には、図4に示した歌詞データに含まれる画面歌詞データ「”一”いち””番”ばん””大切”たいせつ”な”事”こと”」から変換された歌詞行「一番大切な事」及びルビ行「イチハ゛ンタイセツ コト」が含まれている。
図18は、実施の形態1に係るデータ変換処理の手順を示すフローチャートである。データ変換処理は、入力データとしての歌詞データが与えられた場合にPC1のCPU10により実行される。CPU10は、後述のデータ読込処理を実行する(ステップS11)。CPU10は、文字置換処理を実行する(ステップS12)。CPU10は、第1ルビレイアウト処理を実行する(ステップS13)。CPU10は、歌詞行を生成すべくルビ文字列と共に歌詞文字列を連結し(ステップS14)、第2ルビレイアウト処理を実行する(ステップS15)。CPU10は、改行処理を実行する(ステップS16)。CPU10は、サーバ装置2から楽曲情報を取得する(ステップS17)。CPU10は、歌詞データを変換して得た表示データを出力し(ステップS18)、データ変換処理を終了する。
図19は、実施の形態1に係るデータ読込処理の手順を示すフローチャートである。データ読込処理は、図18に示すフローチャートのステップS11で実行される。CPU10は、歌詞データから先頭の画面歌詞データを読み出す(ステップS31)。CPU10は、連続した部分歌詞文字列を抽出し(ステップS32)、連結して歌詞文字列を取得する(ステップS33)。CPU10は、連結した部分歌詞文字列に対応する部分ルビ文字列があるか否かを判定する(ステップS34)。CPU10は、部分ルビ文字列があると判定した場合(ステップS34でYES)、連結してルビ文字列を取得する(ステップS35)。CPU10は、連続していない部分歌詞文字列及び部分ルビ文字列夫々を抽出して歌詞文字列及びルビ文字列として取得する (ステップS36)。CPU10は、歌詞文字列及びルビ文字列を対応表に追加する(ステップS37)。
CPU10は、全ての画面歌詞データを読み出したか否かを判定する(ステップS38)。CPU10は、全ての画面歌詞データを読み出していないと判定した場合(ステップS38でNO)、次の画面歌詞データを読み出して(ステップS39)、連続した部分歌詞文字列を抽出するステップS32に処理を戻す。CPU10は、部分ルビ文字列があるか否かを判定するステップS34において、部分ルビ文字列がないと判定した場合(ステップS34でNO)、連続していない部分歌詞文字列及び部分ルビ文字列夫々を抽出して歌詞文字列及びルビ文字列として取得するステップS36に処理を移す。CPU10は、全ての画面歌詞データを読み出したか否かを判定するステップS38において、全ての画面歌詞データを読み出したと判定した場合(ステップS38でYES)、データ読込処理を終了する。
図20は、実施の形態1に係る第1ルビレイアウト処理の手順を示すフローチャートである。第1ルビレイアウト処理は、図18に示すフローチャートのステップS13で実行される。CPU10は、対応表から歌詞文字列及びルビ文字列の1組を読み出す(ステップS51)。CPU10は、歌詞文字列長W1及びルビ文字列長W2を取得する(ステップS52)。CPU10は、後述の先頭挿入処理を実行する(ステップS53)。CPU10は、対応表から全ての組を読み出したか否かを判定する(ステップS54)。CPU10は、全ての組を読み出していないと判定した場合(ステップS54でNO)、対応表から次の1組を読み出し(ステップS55)、歌詞文字列長W1及びルビ文字列長W2を取得するステップS52に処理を戻す。CPU10は、全ての組を読み出したと判定した場合(ステップS54でYES)、第1ルビレイアウト処理を終了する。
図21は、実施の形態1に係る先頭挿入処理の手順を示すフローチャートである。先頭挿入処理は、図20に示すフローチャートのステップS53で実行される。CPU10は、終端文字が濁点又は半濁点であるか否かを判定する(ステップS61)。CPU10は、終端文字が濁点又は半濁点であると判定した場合(ステップS61でYES)、補正値Cに1を設定する(ステップS62)。CPU10は、終端文字が濁点又は半濁点でないと判定した場合(ステップS61でNO)、補正値Cに0を設定する(ステップS63)。CPU10は、判定値mを算出し(ステップS64)、挿入個数nを算出する(ステップS65)。CPU10は、判定値mが正であるか否かを判定する(ステップS66)。
CPU10は、判定値mが正であると判定した場合(ステップS66でYES)、ルビ文字列の先頭に挿入個数nの空白文字を挿入する(ステップS67)。CPU10は、判定値mが正でないと判定した場合(ステップS66でNO)、歌詞文字列の先頭に挿入個数nの空白文字を挿入する(ステップS68)。CPU10は、全ての組を読み出したか否かを判定する(ステップS69)。CPU10は、全ての組を読み出していないと判定した場合(ステップS69でNO)、次の1組を読み出し(ステップS70)、終端文字が濁点又は半濁点であるか否かを判定するステップS61に処理を戻す。CPU10は、全ての組を読み出したと判定した場合(ステップS69でYES)、先頭挿入処理を終了する。
実施の形態2
本実施の形態は、実施の形態1がルビ文字列又はルビ付き歌詞文字列の先頭に空白文字を挿入するのに対して、ルビ付き歌詞文字列がルビ文字列よりも長い文字列長を有する場合、ルビ文字列の文字間に空白文字を挿入するようにしてある。PC1は、ルビ付き歌詞文字列の歌詞文字列長W1がルビ文字列長W2より短い場合、実施の形態1で示した先頭挿入処理により空白文字をルビ文字列の先頭に挿入する。PC1は、ルビ付き歌詞文字列の歌詞文字列長W1がルビ文字列長W2よりも長い場合、ルビ文字列の文字間の個数に先頭及び終端に対応する2個を加算して空白文字の挿入箇所数を算出する。
PC1は、ルビ文字列が濁点又は半濁点を含んでいる場合、当該濁点又は半濁点を除いてルビ文字列長W2を取得する。PC1は、歌詞文字列長W1及びルビ文字列長W2の差分を挿入箇所数で除算することにより、各挿入箇所に挿入すべき空白文字の挿入個数を算出する。PC1は、ルビ文字列の先頭、文字間及び終端夫々に算出した挿入個数の空白文字を挿入する。これにより、ルビ文字列がルビ付き歌詞文字列の略中央に表示されるよう配置されると共に、ルビ文字夫々が略均等な間隙を有して配置される。また、PC1は、算出した挿入個数が0である場合、挿入箇所数からルビ文字列の先頭に対応する1個を引き算して挿入個数を再算出し、ルビ文字列の文字間及び終端夫々に再算出した挿入個数の空白文字を挿入する。
図22は、実施の形態2に係る第1ルビレイアウト処理を説明するための説明図である。図中(a)は、ルビ文字列長W2が3であるルビ文字列「カモン」が対応付けられており、歌詞文字列長W1が7であるルビ付き歌詞文字列「Come on」を示す。この場合、ルビ付き歌詞文字列は、ルビ文字列長W2よりも長い歌詞文字列長W1を有するため、空白文字を略均等に挿入する均等挿入処理が行われる。挿入箇所数として、ルビ文字列「カモン」の先頭、2つの文字間及び終端に対応する4が算出される。次に歌詞文字列長W1及びルビ文字列長W2の差分4が挿入箇所数4で除算されて挿入個数として1個が算出される。除算結果は、少数点以下を切り捨てることにより、整数として取得される。図中(b)に示す如くルビ文字列「カモン」の先頭、文字間及び終端夫々に1個の空白文字が挿入される。これにより、ルビ文字列がルビ付き歌詞文字列に対して略中央に配置されると共に、ルビ文字夫々が略均等な間隙を有して配置される。
図23は、実施の形態2に係る第1ルビレイアウト処理を説明するための説明図である。図中(a)は、ルビ文字列「フシキ゛」が対応付けられており、歌詞文字列長W1が6であるルビ付き歌詞文字列「不思議」を示す。ルビ文字列「フシキ゛」は、濁点が除かれ、ルビ文字列長W2として3が取得される。この場合、ルビ付き歌詞文字列は、ルビ文字列長W2よりも長い歌詞文字列長W1を有するため、空白文字を略均等に挿入する処理が行われる。挿入箇所数として、ルビ文字列「フシキ゛」の先頭、3つの文字間及び終端に対応する4が算出される。次に歌詞文字列長W1及びルビ文字列長W2の差分3が挿入箇所数4で除算されて挿入個数として0個が算出される。挿入個数として0が算出されたため、挿入箇所数5個からルビ文字列の先頭に対応する1個が減算されて挿入箇所数が3個にされる。
文字列長の差分3を挿入箇所数3で除算して挿入個数1個を再算出する。図中(b)に示す如くルビ文字列「フシキ゛」の文字間及び終端夫々に1個の空白文字が挿入される。これにより、ルビ文字列がルビ付き歌詞文字列に対して略中央に配置されると共に、ルビ文字夫々が略均等な間隙を有して配置される。図中(c)に示す如くルビ文字列「フシキ゛」の終端に挿入した空白文字が歌詞文字列の終端に対応する位置から右側に突出した不要な空白文字として削除される。次に挿入個数を数式に基づいて取得する方法を説明する。
PC1は、歌詞文字列長W1及びルビ文字列長W2を用いて式(3)に基づいて挿入個数nを算出する。
n=Int〔|(W1−W2)/(W2+1)|〕 (3)
PC1は、算出した挿入個数が0である場合、下記(4)に基づいて挿入個数nを再算出する。
n=Int〔|(W1−W2)/W2|〕 (4)
図24は、実施の形態2に係る第1ルビレイアウト処理の手順を示すフローチャートである。PC1は、対応表からルビ付き歌詞文字列及びルビ文字列の1組を読み出す(ステップS81)。PC1は、歌詞文字列長W1及びルビ文字列長W2を取得する(ステップS82)。PC1は、歌詞文字列長W1がルビ文字列長W2以上であるか否かを判定する(ステップS83)。PC1は、歌詞文字列長W1がルビ文字列長W2以上でないと判定した場合(ステップS83でNO)、実施の形態1の図21で示した先頭挿入処理を実行する(ステップS84)。
PC1は、歌詞文字列長W1がルビ文字列長W2以上であると判定した場合(ステップS83でYES)、後述の均等挿入処理を実行する(ステップS85)。PC1は、対応表から全ての組を読み出したか否かを判定する(ステップS86)。PC1は、全ての組を読み出していないと判定した場合(ステップS86でNO)、対応表から次の1組を読み出して(ステップS87)、歌詞文字列長W1及びルビ文字列長W2を取得するステップS82に処理を戻す。PC1は、全ての組を読み出したと判定した場合(ステップS86でYES)、第1ルビレイアウト処理を終了する。
図25は、実施の形態2に係る均等挿入処理の手順を示すフローチャートである。均等挿入処理は、図24で示すフローチャートのステップS85で実行される。PC1は、挿入個数nを算出する(ステップS101)。PC1は、挿入個数nが0であるか否かを判定する(ステップS102)。PC1は、挿入個数が0でないと判定した場合(ステップS102でNO)、ルビ文字列の先頭、文字間及び終端夫々に挿入個数nの空白文字を挿入する(ステップS105)。PC1は、挿入個数nが0である場合(ステップS102でYES)、挿入個数nを再算出し(ステップS103)、ルビ文字列の文字間及び終端夫々に挿入個数nの空白文字を挿入する(ステップS104)。
PC1は、濁点又は半濁点の直後の空白文字があるか否かを判定する(ステップS106)。PC1は、濁点又は半濁点の直後の空白文字があると判定した場合(ステップS106でYES)、当該空白文字を削除して(ステップS107)、均等挿入処理を終了する。PC1は、濁点又は半濁点の直後の空白文字がないと判定した場合(ステップS106でNO)、均等挿入処理を終了する。
本実施の形態2は以上の如き構成としてあり、その他の構成及び作用は実施の形態1と同様であるので対応する部分には同一の符号及び処理名を付してその詳細な説明を省略する。
実施の形態3
図26は、実施の形態3に係るPCの内部構成例を示すブロック図である。本実施の形態3は、実施の形態1及び実施の形態2がROMからコンピュータプログラムを読み出して実行するのに対して、記録媒体から読み出して実行するよう構成してある。PC4のCPU10には、バス10aを介してHD( Hard Disk )41及び記録媒体読込部42が接続してある。PC4は、記録媒体読込部42に挿入された記録媒体420から本発明のコンピュータプログラム421を読み込んでHD41に記憶するようにしてある。
CPU10は、HD41が記憶する本発明のコンピュータプログラム421に従って、PC4による変換処理を実行する構成となっている。コンピュータプログラム421は、CPU10に画面歌詞データに連続して配列されたルビ付き歌詞文字列を連結させると共に、対応するルビ文字列を連結させる(連結ステップ)。コンピュータプログラム421は、CPU10に連結したルビ付き歌詞文字列及び連結したルビ文字列からなる対応表をRAM12に記憶して対応付ける(対応付けステップ)。コンピュータプログラム421は、CPU10に、対応付けたルビ付き歌詞文字列又はルビ文字列に空白文字を挿入させて(挿入ステップ)、ルビ文字夫々のルビ付き歌詞文字列に対する配置を変更させる(変更ステップ)。コンピュータプログラム421は、CPU10に、歌詞データに含まれるルビ付き歌詞文字列及びルビ文字列夫々を、配置が変更されたルビ付き歌詞文字列及びルビ文字列に変換させる(変換ステップ)。
本発明に係るコンピュータプログラム421は、CD( Compact Disc )−ROM又はDVD( Digital Versatile Disc )−ROM等の記録媒体420だけでなく、CPU10に接続された図示しない外部のサーバーコンピュータとの間で通信を確立し、係るコンピュータプログラム421をHD41へダウンロードしても良い。
本実施の形態3は以上の如き構成としてあり、その他の構成及び作用は実施の形態1及び実施の形態2と同様であるので対応する部分には同一の符号及び処理名を付してその詳細な説明を省略する。
1,4 PC
2 サーバ装置
3 カラオケ装置
N ネットワーク網
10 CPU
11 ROM
12 RAM
13 通信部
14 置換文字DB
15 表示部
16 操作受付部
41 HD
42 記録媒体読込部
420 記録媒体
421 コンピュータプログラム

Claims (6)

  1. 複数の文字列のうち、一部の文字列に子文字列が対応付けられた入力データを受付けて、表示装置により前記子文字列を前記一部の文字列に沿って表示すべく表示データへ変換する変換装置において、
    連続して配列してある一部の文字列を連結する文字列連結手段と、
    前記一部の文字列夫々に対応付けられた子文字列を連結する子文字列連結手段と、
    該子文字列連結手段により連結した子文字列を前記文字列連結手段により連結した前記一部の文字列に対応付ける対応付け手段と、
    前記入力データに含まれる前記一部の文字列を前記対応付け手段により対応付けられた一部の文字列へ変換する変換手段と
    を備えることを特徴とする変換装置。
  2. 前記子文字列は、前記一部の文字列に付されるルビであることを特徴とする請求項1に記載の変換装置。
  3. 前記変換手段は、前記子文字列連結手段により連結した子文字列を、前記対応付け手段により対応付けられた一部の文字列に沿って配列してなる表示データへ変換するよう構成してあることを特徴とする請求項1又は請求項2に記載の変換装置。
  4. 複数の文字列のうち、一部の文字列に子文字列が対応付けられた入力データを受付けて、表示装置により前記子文字列を前記一部の文字列に沿って表示すべく表示データへ変換する変換方法において、
    連続して配列してある一部の文字列を連結する文字列連結ステップと、
    前記一部の文字列夫々に対応付けられた子文字列を連結する子文字列連結ステップと、
    該子文字列連結ステップにより連結した子文字列を前記文字列連結ステップにより連結した前記一部の文字列に対応付ける対応付けステップと、
    前記入力データに含まれる一部の文字列を前記対応付けステップにより対応付けられた一部の文字列へ変換する変換ステップと
    を備えることを特徴とする変換方法。
  5. 請求項1から請求項3までのいずれか一項に記載の変換装置と、
    該変換装置により変換した表示データを表示する表示装置と
    を備えることを特徴とする表示システム。
  6. 複数の文字列のうち、一部の文字列に子文字列が対応付けられた入力データを受付けるコンピュータに、表示装置により前記子文字列を前記一部の文字列に沿って表示すべく表示データへ変換させるコンピュータプログラムにおいて、
    前記コンピュータに、
    連続して配列してある一部の文字列を連結する文字列連結ステップと、
    前記一部の文字列夫々に対応付けられた子文字列を連結する子文字列連結ステップと、
    該子文字列連結ステップにより連結した子文字列を前記文字列連結ステップにより連結した前記一部の文字列に対応付ける対応付けステップと、
    前記入力データに含まれる前記一部の文字列を前記対応付けステップにより対応付けた一部の文字列へ変換する変換ステップと
    を実行させることを特徴とするコンピュータプログラム。
JP2009052369A 2009-03-05 2009-03-05 変換装置、変換方法、表示システム及びコンピュータプログラム Active JP5250453B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009052369A JP5250453B2 (ja) 2009-03-05 2009-03-05 変換装置、変換方法、表示システム及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009052369A JP5250453B2 (ja) 2009-03-05 2009-03-05 変換装置、変換方法、表示システム及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2010205151A true JP2010205151A (ja) 2010-09-16
JP5250453B2 JP5250453B2 (ja) 2013-07-31

Family

ID=42966536

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009052369A Active JP5250453B2 (ja) 2009-03-05 2009-03-05 変換装置、変換方法、表示システム及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP5250453B2 (ja)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59106035A (ja) * 1982-12-10 1984-06-19 Sharp Corp 文書処理装置の振仮名付加方式
JPH01166250A (ja) * 1987-12-23 1989-06-30 Hitachi Ltd 文書処理方式
JPH02255968A (ja) * 1989-01-31 1990-10-16 Toshiba Corp 文書作成装置
JPH0388061A (ja) * 1989-08-31 1991-04-12 Ricoh Co Ltd 日本語入力装置
JPH04178972A (ja) * 1990-11-14 1992-06-25 Toppan Printing Co Ltd Cd―iディスクおよびcd―iディスクへのデータ格納方法
JPH04205548A (ja) * 1990-11-30 1992-07-27 Toshiba Corp 文書作成装置
JPH05210671A (ja) * 1991-03-11 1993-08-20 Toshiba Corp 文書作成装置
JPH0635911A (ja) * 1992-07-20 1994-02-10 Fujitsu Ltd ルビ表示システム
JPH0844332A (ja) * 1994-07-28 1996-02-16 Victor Co Of Japan Ltd 文字表示装置
JPH1125075A (ja) * 1997-06-27 1999-01-29 Dainippon Screen Mfg Co Ltd ルビ配置方法およびその方法を実行するプログラムを記録したコンピュータ読み取り可能な記録媒体
JPH11191101A (ja) * 1997-12-25 1999-07-13 Dainippon Screen Mfg Co Ltd ルビを含む文章の組版方法
JP2000293183A (ja) * 1999-04-08 2000-10-20 Yamaha Corp カラオケ装置

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59106035A (ja) * 1982-12-10 1984-06-19 Sharp Corp 文書処理装置の振仮名付加方式
JPH01166250A (ja) * 1987-12-23 1989-06-30 Hitachi Ltd 文書処理方式
JPH02255968A (ja) * 1989-01-31 1990-10-16 Toshiba Corp 文書作成装置
JPH0388061A (ja) * 1989-08-31 1991-04-12 Ricoh Co Ltd 日本語入力装置
JPH04178972A (ja) * 1990-11-14 1992-06-25 Toppan Printing Co Ltd Cd―iディスクおよびcd―iディスクへのデータ格納方法
JPH04205548A (ja) * 1990-11-30 1992-07-27 Toshiba Corp 文書作成装置
JPH05210671A (ja) * 1991-03-11 1993-08-20 Toshiba Corp 文書作成装置
JPH0635911A (ja) * 1992-07-20 1994-02-10 Fujitsu Ltd ルビ表示システム
JPH0844332A (ja) * 1994-07-28 1996-02-16 Victor Co Of Japan Ltd 文字表示装置
JPH1125075A (ja) * 1997-06-27 1999-01-29 Dainippon Screen Mfg Co Ltd ルビ配置方法およびその方法を実行するプログラムを記録したコンピュータ読み取り可能な記録媒体
JPH11191101A (ja) * 1997-12-25 1999-07-13 Dainippon Screen Mfg Co Ltd ルビを含む文章の組版方法
JP2000293183A (ja) * 1999-04-08 2000-10-20 Yamaha Corp カラオケ装置

Also Published As

Publication number Publication date
JP5250453B2 (ja) 2013-07-31

Similar Documents

Publication Publication Date Title
US6756533B2 (en) Automatic music composing apparatus and automatic music composing program
WO2007078261A1 (en) Method and system for text-editing and playing back a score
RU2684665C2 (ru) Способ, устройство и компьютерный программный продукт для прокрутки партитуры
US8212819B2 (en) Display control apparatus
KR20090107037A (ko) 디지털 콘텐츠 메타데이터의 통합된 포맷
EP1640989B1 (en) Electronic music apparatus and music-related data display method
US7094960B2 (en) Musical score display apparatus
US7601906B2 (en) Methods and systems for automated analysis of music display data for a music display system
JP4769611B2 (ja) 音声データ再生装置および音声データ再生装置のデータ表示方法
JP3239897B1 (ja) 作詞作曲装置及びプログラム
JP3659124B2 (ja) 譜面情報生成装置、譜面情報表示装置および記憶媒体
JP5250453B2 (ja) 変換装置、変換方法、表示システム及びコンピュータプログラム
JP5034674B2 (ja) ファイル又はフォルダ管理装置
JP5312989B2 (ja) 変換装置、変換方法、表示システム及びコンピュータプログラム
Eipert et al. Editor support for digital editions of medieval monophonic music
JP5082971B2 (ja) 音声合成装置およびそれを用いた読み上げシステム。
JP2002278549A (ja) 作詞作曲装置及びプログラム
Khan et al. Development of a music score editor based on musicxml
JP4501417B2 (ja) 楽譜表示装置および楽譜表示方法を実現するためのプログラム
Foxley Music—a language for typesetting music scores
KR20170058504A (ko) 악보 구현 및 음원 재생 시스템 및 그 방법
JP6642367B2 (ja) カラオケ装置及びカラオケ用プログラム
JP2001306070A (ja) シーケンスデータファイル処理装置及び方法並びに記憶媒体
JP5169021B2 (ja) 表示制御装置
JP2008216965A (ja) 音楽と一体化した形式でメールを画面に表示する方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130318

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130409

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130415

R150 Certificate of patent or registration of utility model

Ref document number: 5250453

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160419

Year of fee payment: 3