(57)【要約】【課題】Ｗｅｂフォントにおける文字詰めを容易に実現する技術を提供することを目的とする。【解決手段】クライアント装置からの要求において文字詰めを行うことが指定されているか否かを判定する判定手段と、判定手段により文字詰めを行うことが指定されていると判定された場合、対象とするフォントの文字のグリフデータを抽出し、抽出したグリフデータを変更し、文字詰めを行う文字詰め手段と、文字詰め手段により変更されたグリフデータを含む新しいフォントを生成する生成手段と、生成手段により生成されたフォントをクライアント装置に提供する提供手段と、を有することによって課題を解決する。【選択図】図５
2015118548.tif 000002
【特許請求の範囲】
【請求項１】
クライアント装置からの要求において文字詰めを行うことが指定されているか否かを判定する判定手段と、
前記判定手段により文字詰めを行うことが指定されていると判定された場合、対象とするフォントの文字のグリフデータを抽出し、抽出したグリフデータを変更し、文字詰めを行う文字詰め手段と、
前記文字詰め手段により変更されたグリフデータを含む新しいフォントを生成する生成手段と、
前記生成手段により生成されたフォントを前記クライアント装置に提供する提供手段と、
を有するサーバ装置。
【請求項２】
前記判定手段により文字詰めを行うことが指定されていると判定された場合、文字詰めの方法を指定する指定情報を抽出する抽出手段を更に有し、
前記文字詰め手段は、前記抽出手段により抽出された指定情報で指定されている文字詰めの方法で文字詰めを行う請求項１記載のサーバ装置。
【請求項３】
前記文字詰め手段は、前記抽出手段により抽出された指定情報で指定されている文字詰めの方法が第１の文字詰めの方法であった場合、対象とするフォントの各文字のグリフデータを抽出して、字面の最も左の座標と最も右の座標とから前記字面の幅を取得し、仮想ボディの幅を前記字面の幅と同じにして、前記字面を示す各ポイントの座標位置を合わせて左に再配置することでスペースのないグリフデータを生成し、文字詰めを行う請求項２記載のサーバ装置。
【請求項４】
前記文字詰め手段は、前記抽出手段により抽出された指定情報で指定されている文字詰めの方法が第２の文字詰めの方法であった場合、予め設定されているスペース情報に合わせて仮想ボディの幅を狭くし、字面を示す各ポイントの座標位置を合わせて左に再配置することでグリフデータを生成し、文字詰めを行う請求項２記載のサーバ装置。
【請求項５】
前記文字詰め手段は、前記指定情報で指定されたＷｅｂページ内の一部の文字に対して文字詰めを行う請求項２乃至４何れか１項記載のサーバ装置。
【請求項６】
サーバ装置が実行する文字詰め方法であって、
クライアント装置からの要求において文字詰めを行うことが指定されているか否かを判定する判定ステップと、
前記判定ステップにより文字詰めを行うことが指定されていると判定された場合、対象とするフォントの文字のグリフデータを抽出し、抽出したグリフデータを変更し、文字詰めを行う文字詰めステップと、
前記文字詰めステップにより変更されたグリフデータを含む新しいフォントを生成する生成ステップと、
前記生成ステップにより生成されたフォントを前記クライアント装置に提供する提供ステップと、
を有する文字詰め方法。
【請求項７】
コンピュータに、
クライアント装置からの要求において文字詰めを行うことが指定されているか否かを判定する判定ステップと、
前記判定ステップにより文字詰めを行うことが指定されていると判定された場合、対象とするフォントの文字のグリフデータを抽出し、抽出したグリフデータを変更し、文字詰めを行う文字詰めステップと、
前記文字詰めステップにより変更されたグリフデータを含む新しいフォントを生成する生成ステップと、
前記生成ステップにより生成されたフォントを前記クライアント装置に提供する提供ステップと、
を実行するためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置、文字詰め方法及びプログラムに関する。
【背景技術】
【０００２】
Ｊａｖａｓｃｒｉｐｔ（登録商標）を用いて、自動的に文字単位でｓｐａｎ等のタグで区切って、更にＣＳＳのｌｅｔｔｅｒ−ｓｐａｃｉｎｇを使うことで文字間のスペースを調整する方法がある（例えば、非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“文字と文字の間隔を変更できるｌｅｔｔｅｒ−ｓｐａｃｉｎｇプロパティ”、［ｏｎｌｉｎｅ］、［平成２５年１２月９日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ａｔｍａｒｋｉｔ．ｃｏ．ｊｐ／ｆｗｃｒ／ｄｅｓｉｇｎ／ｃｓｓｒｅｆ／ｔｅｘｔ／ｌｅｔｔｅｒｓｐａｃｉｎｇ．ｈｔｍｌ＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記技術によれば、細かい設定ができる半面、その設定を文字ごとや文字の並びごとに行う必要がある。また、テキストを修正した場合は、改めて設定し直す必要があった。そのため、こだわりの強いＷｅｂデザイナーにはよいが、一般的にはあまり好まれず、普及しにくい問題があった。
【０００５】
本発明はこのような問題点に鑑みなされたもので、Ｗｅｂフォントにおける文字詰めを容易に実現する技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
そこで、本発明は、サーバ装置であって、クライアント装置からの要求において文字詰めを行うことが指定されているか否かを判定する判定手段と、前記判定手段により文字詰めを行うことが指定されていると判定された場合、対象とするフォントの文字のグリフデータを抽出し、抽出したグリフデータを変更し、文字詰めを行う文字詰め手段と、前記文字詰め手段により変更されたグリフデータを含む新しいフォントを生成する生成手段と、前記生成手段により生成されたフォントを前記クライアント装置に提供する提供手段と、を有する。
【発明の効果】
【０００７】
本発明によれば、Ｗｅｂフォントにおける文字詰めを容易に実現する技術を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】Ｗｅｂフォント配信システムのシステム構成の一例を示す図である。
【図２】サーバ装置のハードウェア構成の一例を示す図である。
【図３】サーバ装置のソフトウェア構成の一例を示す図である。
【図４】サーバ装置と、クライアント装置と、の間の処理等の一例を示すシーケンス図である。
【図５】サーバ装置における文字詰め処理の一例を示すフローチャートである。
【図６】方法１による文字詰めの一例を示す概念図である。
【図７】方法１に係るＷｅｂページの作成方法の一例を示す図である。
【図８】方法２に係るＷｅｂページの作成方法の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面に基づいて説明する。
【００１０】
図１は、Ｗｅｂフォント配信システムのシステム構成の一例を示す図である。
図１に示されるように、Ｗｅｂフォント配信システムは、サーバ装置１０と、クライアント装置１２と、がネットワーク１１を介して通信可能に接続されている。
サーバ装置１０は、クライアント装置１２からの要求に応じて、文字詰め表示に係るプログラムを提供する。クライアント装置１２は、ダウンロードした文字詰め表示に係るプログラムを実行する。クライアント装置１２は、文字詰め表示に係るプログラムの実行によって、表示対象のＷｅｂページに係るフォント名、フォントが使われている文字、文字詰めの方法を指定する指定情報、ＯＳの種類、Ｗｅｂブラウザの種別等の情報を取得する。そして、クライアント装置１２は、取得した情報を含むフォント要求をサーバ装置１０に送信する。サーバ装置１０は、フォント要求を受け取ると、文字詰めの方法を指定する指定情報に応じて、前記フォントが使われている文字に対して、文字詰めを行い、文字詰めを行った新たなフォントを生成する。そして、サーバ装置１０は、生成したフォントをクライアント装置１２に送信する。より具体的に説明すると、サーバ装置１０は、前記ＯＳの種類及びＷｅｂブラウザの種別に応じて、前記フォントをＷｅｂブラウザに適したフォーマットに変換して、クライアント装置１２に送信する。フォントを受け取ったクライアント装置１２は、受け取ったフォントを用いて該当するＷｅｂページを表示する。
このような処理を実行することによって、Ｗｅｂフォントにおける文字詰めを容易に実現することができる。
なお、図１ではクライアント装置１２は、１つであるが、複数であってもよい。また、クライアント装置１２は、タブレット端末装置、スマートフォン、携帯電話装置等であってもよい。また、図１では、サーバ装置１０は、１つであるが、複数であってもよい。つまり、サーバ装置１０の機能を、複数のサーバ装置が互いに分担しあいながら処理を実行するクラウドの様なシステムであってもよい。また、サーバ装置１０は、コンピュータの一例である。
【００１１】
図２は、サーバ装置１０のハードウェア構成の一例を示す図である。
図２に示されるように、サーバ装置１０は、ハードウェア構成として、ＣＰＵ２０と、メモリ２１と、ネットワークＩ／Ｆ２２と、を含む。
ＣＰＵ２０は、サーバ装置１０全体を制御する。ＣＰＵ２０が、メモリ２１に記憶されているプログラムに基づき処理を実行することによって、後述するサーバ装置１０に係るソフトウェア構成及び後述するフローチャート等に係る処理が実現される。メモリ２１は、ＲＡＭ、ＲＯＭ、ＨＤＤ等であって、プログラムやＣＰＵ２０がプログラムを実行する際に参照するデータ等を記憶する。ネットワークＩ／Ｆ２２は、サーバ装置１０をネットワーク１１に接続するためのインターフェースである。
クライアント装置１２のハードウェア構成もサーバ装置１０と同様で、少なくとも、ＣＰＵと、メモリと、ネットワークＩ／Ｆと、を含む。そして、クライアント装置１２のＣＰＵがクライアント装置１２のメモリに記憶されているプログラムに基づき処理を実行することによって、後述するクライアント装置１２の機能等が実現される。
【００１２】
図３は、サーバ装置１０のソフトウェア構成の一例を示す図である。
図３に示されるように、サーバ装置１０は、ソフトウェア構成として、プログラム提供部３０と、文字詰め機能提供部３１と、を含む。
プログラム提供部３０は、クライアント装置１２からの要求に応じて、文字詰め表示に係るプログラムを提供する。文字詰め表示に係るプログラムの一例としては、例えば、文字詰め表示に係るＪａｖａｓｃｒｉｐｔである。
【００１３】
文字詰め機能提供部３１は、クライアント装置１２より、表示対象のＷｅｂページに係るフォント名、フォントが使われている文字、文字詰めの方法を指定する指定情報、Ｗｅｂブラウザ等の情報を含むフォント要求を受信する。文字詰め機能提供部３１は、前記フォント要求を受信すると、前記フォント要求に含まれる前記指定情報を抽出する。そして、文字詰め機能提供部３１は、抽出した前記指定情報に基づいて、指定されている文字詰めの方法を特定し、特定した文字詰めの方法で文字詰めを行う。
より具体的に説明すると、本実施形態における文字詰めの方法には、方法１と、方法２と、が存在する。方法１は、文字間のスペースを均一にする文字詰めの方法で、方法２は、フォントデザイナーが設定した文字幅の情報（例えば、プロポーショナルメトリックス等）に基づき文字を詰める文字詰めの方法である。
文字詰め機能提供部３１は、フォント要求に含まれる前記指定情報で指定された文字詰めの方法で文字詰めを行う。つまり、文字詰め機能提供部３１は、前記指定情報で方法１が指定されていた場合、方法１で文字詰めを行い、前記指定情報で方法２が指定されていた場合、方法２で文字詰めを行う。
文字詰め機能提供部３１は、文字詰めを行った新たなフォントを生成し、生成したフォントをクライアント装置１２に送信する。
【００１４】
図４は、サーバ装置１０と、クライアント装置１２と、の間の処理等の一例を示すシーケンス図である。
シーケンスＳＣ４０において、サーバ装置１０は、クライアント装置１２からの要求に応じて、文字詰め表示に係るプログラムを提供する。前記要求とは、例えば、Ｗｅｂページの表示要求等である。
シーケンスＳＣ４１において、クライアント装置１２は、ダウンロードした文字詰め表示に係るプログラムを実行する。クライアント装置１２は、文字詰め表示に係るプログラムの実行によって、表示対象のＷｅｂページに係るフォント名、フォントが使われている文字、文字詰めの方法を指定する指定情報、Ｗｅｂブラウザ等の情報を取得する。
シーケンスＳＣ４２において、クライアント装置１２は、取得した情報を含むフォント要求をサーバ装置１０に送信する。
【００１５】
シーケンスＳＣ４３において、サーバ装置１０は、フォント要求を受け取ると、前記フォント要求に含まれる文字詰めの方法を指定する指定情報に応じて、前記フォントが使われている文字に対して、文字詰めを行い、文字詰めを行った新たなフォントを生成する。また、サーバ装置１０は、前記ＯＳの種類及びＷｅｂブラウザの種別に応じて、前記フォントをＷｅｂブラウザに適したフォーマットに変換する。
シーケンスＳＣ４４において、サーバ装置１０は、生成し、変換したフォントをクライアント装置１２に送信する。
シーケンスＳＣ４５において、クライアント装置１２は、受信したフォントを用いてＷｅｂページを表示する。
このことによって、文字詰めが行われたフォントでＷｅｂページの表示が行われる。
【００１６】
図５は、サーバ装置１０における文字詰め処理の一例を示すフローチャートである。
ステップＳ５０において、ＣＰＵ２０は、クライアント装置１２からフォント要求を受信したか否かを判定する。ＣＰＵ２０は、クライアント装置１２からフォント要求を受信したと判定した場合、処理をステップＳ５１に進め、クライアント装置１２からフォント要求を受信していないと判定した場合、ステップＳ５０の処理を繰り返す。
ステップＳ５１において、ＣＰＵ２０は、フォント要求から文字詰めの方法を指定する指定情報を抽出する。
【００１７】
ステップＳ５２において、ＣＰＵ２０は、抽出した指定情報に基づいて、文字詰め方法が方法１か方法２かを判定する。ＣＰＵ２０は、抽出した指定情報が方法１を示していた場合、方法１による文字詰めであると判定し、処理をステップＳ５３に進め、抽出した指定情報が方法２を示していた場合、方法２による文字詰めであると判定し、処理をステップＳ５４に進める。
ステップＳ５３において、ＣＰＵ２０は、文字間のスペースを均一にする文字詰めの方法で、文字詰めを行う。より具体的説明すると、ＣＰＵ２０は、フォント要求に含まれるフォント名やフォントが使われている文字の情報に基づき、対象とするフォントの各文字のグリフデータを抽出する。ＣＰＵ２０は、字面の最も左の座標と最も右の座標とから前記字面の幅を取得し、仮想ボディの幅を前記字面の幅と同じにして、前記字面を示す各ポイントの座標位置を合わせて左に再配置することでスペースのないグリフデータを生成し、文字詰めを行う。
ここで、図６は、方法１による文字詰めの一例を示す概念図である。
図６に示されるように、方法１による文字詰めでは余白が削除する。余白を削除し、ＣＳＳを設定すれば、文字間の余白を統一して見栄えをよくすることができる。
【００１８】
一方、ステップＳ５４において、ＣＰＵ２０は、Ｗｅｂページの所定のタグ等に予め設定されているスペース情報に合わせて仮想ボディの幅を狭くし、字面を示す各ポイントの座標位置を合わせて左に再配置することでグリフデータを生成し、文字詰めを行う。スペース情報は、例えば、クライアント装置１２からのフォント要求に含まれているものとする。つまり、フォントデザイナー等にとって最も好ましいと思われるスペース情報が設定されており、クライアント装置１２では、このスペース情報を抽出し、フォント要求に含めてサーバ装置１０に送信する。サーバ装置１０は、このスペース情報がフォント要求に含まれていた場合は、方法２による文字詰め方法であると判定する。
ステップＳ５５において、ＣＰＵ２０は、ステップＳ５３又はステップＳ５４の文字詰めにより変更されたグリフデータを含む新しいフォントを生成する。
ステップＳ５６において、ＣＰＵ２０は、生成された新しいフォントを要求元のクライアント装置１２に送信する。
【００１９】
図７は、方法１に係るＷｅｂページの作成方法の一例を示す図である。
まず、Ｗｅｂページを作成する作成者等はサーバ装置１０に接続し、文字間の余白を削除するＷｅｂページを作成する場合には、図７の（ａ）に示すようなスクリプト発行画面において、文字間の余白削除の「する」を選択する。
そうすると、サーバ装置１０によって、図７の（ｂ）に示すようなスクリプトが生成される。このスクリプトが埋め込まれたＷｅｂページの場合、クライアント装置１２は、方法１で文字詰めを行うＷｅｂページであると判断し、指定情報にその旨を記載し、フォント要求をサーバ装置１０に送信する。
Ｗｅｂページを作成する作成者等は、図７の（ｃ）に示されるＣＳＳ：ｌｅｔｔｅｒ−ｓｐａｃｉｎｇを、Ｗｅｂフォントを設定する箇所に設定する。
【００２０】
図８は、方法２に係るＷｅｂページの作成方法の一例を示す図である。
方法２の場合、Ｗｅｂページを作成する作成者等はスクリプトタグのパラメータを変更するだけでよい。
このスクリプトタグが埋め込まれたＷｅｂページの場合、クライアント装置１２は、方法２で文字詰めを行うＷｅｂページであると判断し、指定情報にその旨を記載し、フォント要求をサーバ装置１０に送信する。
【００２１】
上述した実施形態によれば、Ｗｅｂフォントにおける文字詰めを容易に実現する技術を提供することができる。
また、方法１による文字詰めの方法によれば、ユーザーが通常では触れることができないグリフデータを直接変更し、また、字面を基準に好みのスペースをユーザーが使いなれたＣＳＳで調整することができる。また、ＳＥＯ効果が薄れることもない。
また、方法２による文字詰めの方法によれば、フォントデザイナーが最適であると予め設定したスペースに、一括で文字幅を設定することができる。
また、図７や図８に示すように、Ｗｅｂページを生成する人は、簡単に文字詰めの設定等を行うことができる。
また、Ｗｅｂページを生成する際に、同一ページ内のどの部分に文字詰めを適用するかを指定可能としてもよい。このように指定された場合、クライアント装置１２は、Ｗｅｂページ内のどの部分を文字詰めするのかを判断し、指定情報にその場所に記載された文字と指定されたフォント名及び文字詰めの方法等を記載し、フォント要求をサーバ装置１０に送信する。サーバ装置１０では、フォント要求に記載された前記場所における文字やフォント名、そして文字詰めの方法を抽出し、この文字詰めの方法の情報に基づき、指定された方法で文字詰めを行い、要求元のクライアント装置１２に提供することができる。このような構成によれば、例えば、Ｗｅｂページ内の部分によって、ある部分は方法１で文字詰めを行い、ある部分は方法２で文字詰めを行う等、よりユーザーの好みに応じたＷｅｂフォントにおける文字詰めを容易に実現することができる。
【００２２】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００２３】
１０  サーバ装置
１１  ネットワーク
１２  クライアント装置
【図１】
2015118548.tif 000003
【図２】
2015118548.tif 000004
【図３】
2015118548.tif 000005
【図４】
2015118548.tif 000006
【図５】
2015118548.tif 000007
【図６】
2015118548.tif 000008
【図７】
2015118548.tif 000009
【図８】
2015118548.tif 000010