JP2024534171A - テキストの組版 - Google Patents

テキストの組版 Download PDF

Info

Publication number
JP2024534171A
JP2024534171A JP2024513148A JP2024513148A JP2024534171A JP 2024534171 A JP2024534171 A JP 2024534171A JP 2024513148 A JP2024513148 A JP 2024513148A JP 2024513148 A JP2024513148 A JP 2024513148A JP 2024534171 A JP2024534171 A JP 2024534171A
Authority
JP
Japan
Prior art keywords
font
terminal
target text
character
original
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.)
Pending
Application number
JP2024513148A
Other languages
English (en)
Inventor
宗華 曹
歓 劉
文鋒 王
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.)
Beijing Kingsoft Office Software Inc
Zhuhai Kingsoft Office Software Co Ltd
Original Assignee
Beijing Kingsoft Office Software Inc
Zhuhai Kingsoft Office Software Co Ltd
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 Beijing Kingsoft Office Software Inc, Zhuhai Kingsoft Office Software Co Ltd filed Critical Beijing Kingsoft Office Software Inc
Publication of JP2024534171A publication Critical patent/JP2024534171A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/109Font handling; Temporal or kinetic typography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

本発明は、コンピュータ技術分野に関し、テキストの組版方法、装置、電子機器、及び記憶媒体に関する。当該方法は、コラボレーション文書内の対象テキストに使用される元のフォントを決定するステップと、複数のコラボレーション端末のうちの第1端末が元のフォントをサポートするか否かを判定するステップと、第1端末は、第1端末が元のフォントをサポートしない場合、元のフォントの文字サイズデータを取得するステップと、第1端末は、元のフォントの文字サイズデータの取得に成功した場合、第1端末がサポートする第1フォントで対象テキストを表示し、元のフォントの文字サイズデータに基づいて、第1フォントで表示される対象テキストを組版するステップと、を含む。【選択図】図2

Description

本発明は、コンピュータ技術分野に関し、より具体的には、テキストの組版方法、装置、電子機器、及び記憶媒体に関する。
オンライン文書を複数のユーザで同時に編集及び閲覧する機能などのオンラインコラボレーション文書機能を導入するアプリケーションがますます増えている。1又は複数のユーザが異なる機器で同じオンライン文書を閲覧する場合、特定のフォントがないと、機器によって当該文書の組版が大きく異なり、文書の美観や閲覧体験の一致性に影響を与える可能性がある。一般的な方法は、現在の環境で対応するフォントをインストールすることである。しかし、この方法では、フォントの検索、ダウンロード、インストールが必要であり、また、フォントが有料である場合もあり、大規模な普及・適用が困難である。そのため、新たなテキストの組版方法を提案する必要がある。
本発明の実施例の目的は、フォントがない場合にオンラインコラボレーション文書の組版の一致性を保つように、テキストを組版するための新しい技術的解決策を提供することである。
本発明の第1態様によれば、コラボレーション文書の複数のコラボレーション端末に適用されるテキストの組版方法を提供する。当該テキストの組版方法は、
前記コラボレーション文書内の対象テキストに使用される元のフォントを決定するステップと、
前記複数のコラボレーション端末のうちの第1端末が前記元のフォントをサポートするか否かを判定するステップと、
前記第1端末は、前記第1端末が前記元のフォントをサポートしない場合、前記元のフォントの文字サイズデータを取得するステップと、
前記第1端末は、前記元のフォントの文字サイズデータの取得に成功した場合、前記第1端末がサポートする第1フォントで前記対象テキストを表示するステップと、
前記第1端末は、前記元のフォントの文字サイズデータに基づいて、前記第1フォントで表示される前記対象テキストを組版するステップと、を含む。
本発明の第2態様によれば、コラボレーション文書の複数のコラボレーション端末に適用されるテキストの組版装置を提供する。当該テキストの組版装置は、
前記コラボレーション文書内の対象テキストに使用される元のフォントを決定するための第1決定モジュールと、
前記複数のコラボレーション端末のうちの第1端末が前記元のフォントをサポートするか否かを判定するための第2決定モジュールと、
前記第1端末が前記元のフォントをサポートしない場合、前記元のフォントの文字サイズデータを取得するための取得モジュールと、
前記元のフォントの文字サイズデータの取得に成功した場合、前記第1端末がサポートする第1フォントで前記対象テキストを表示し、前記元のフォントの文字サイズデータに基づいて、前記第1フォントで表示される前記対象テキストを組版するための組版モジュールと、を含む。
本発明の第3態様によれば、電子機器を提供する。当該電子機器は、メモリと、プロセッサとを含み、前記メモリは、コンピュータプログラムを記憶するために用いられ、前記プロセッサは、前記コンピュータプログラムを実行することで、本発明の第1態様の方法を実施するために用いられる。
本発明の第4態様によれば、コンピュータ読み取り可能な記憶媒体を提供する。当該コンピュータ読み取り可能な記憶媒体には、コンピュータプログラムが記憶され、前記コンピュータプログラムがプロセッサによって実行されると、本発明の第1態様の方法が実施される。
本発明の実施例の有益な効果は、以下の通りである。オンラインでの複数のユーザによるコラボレーションのコラボレーション文書について、あるコラボレーション端末がコラボレーション文書内の対象テキストの元のフォントをサポートしない場合、当該コラボレーション端末がサポートする第1フォントを使用して対象テキストを表示し、元のフォントに対応する文字サイズデータに基づいて対象テキストを組版することができる。これにより、当該コラボレーション端末は、元のフォントがない場合でも、他のコラボレーション端末との組版上の一致性を保つことができる。本発明の実施例で提供されるテキストの組版方法は、オンライン文書の複数のユーザによる編集に適用可能である。
以下、添付図面を参照して本発明の例示的な実施例について詳細に説明し、本発明の実施例の他の特徴及び利点が明らかになる。
本明細書に組み込まれ、本明細書の一部を構成する添付図面は、本発明の実施例を示し、その説明と共に本発明の実施例の原理を説明するために用いられる。
本発明の実施例に係るオンライン文書コラボレーションシステムの概略図である。 本発明の実施例に係るテキストの組版方法のフローチャートである。 本発明の実施例に係る更に文字サイズデータの概略図である。 本発明の実施例に係るテキストの組版方法の例示的な図である。 本発明の実施例に係る電子機器の概略図である。
以下、添付図面を参照して本発明の様々な例示的な実施例について詳細に説明する。なお、これらの実施例に記載された構成要素やステップの相対的配置、数式、及び数値は、特に断らない限り、本発明の範囲を限定するものではないことに留意されたい。
少なくとも1つの例示的な実施例に関する以下の説明は、実際には例示的なものに過ぎず、本発明及びその適用又は使用を限定するものではない。
当業者に公知の技術、方法、及び機器については、詳細に説明されない場合があるが、必要に応じて、当該技術、方法、及び機器は、本明細書の一部とみなされるべきである。
本明細書において示され、議論されるすべての例において、任意の特定の値は、単に例示的なものとして解釈されるべきであり、限定として解釈されるべきではない。したがって、例示的な実施例の他の例は、異なる値を有してもよい。
以下の添付図面において、同様の符号及びアルファベットは同様の項目を表すため、ある項目が1つの図面において一度定義すれば、それ以降の図面においてそれ以上の説明は不要である。
<テキストの組版方法>
図1は、本発明の実施例に係るオンライン文書コラボレーションシステムのブロック図である。図1に示すように、当該オンライン文書コラボレーションシステムは、複数の端末機器を含み、複数の端末機器は、ネットワークを介して通信することができる。
端末機器は、例えば、インテリジェント・オペレーティング・システム(例えば、Android、IOS、Windows、Linuxなど)がインストールされた電子機器であってよく、ポータブル・コンピュータ、デスクトップ・コンピュータ、携帯電話、タブレットなどが挙げられるが、これらに限定されない。端末機器の構成は、プロセッサ1031、メモリ1032、インタフェース装置1033、通信装置1034、GPU(Graphics Processing Unit、画像処理装置)1035、表示装置1036、入力装置1037、スピーカ1038、マイク1039、及びカメラ1030を含むが、これらに限定されない。プロセッサ1031は、中央処理装置CPU、マイクロプロセッサMCUなどを含むが、これらに限定されない。メモリ1032は、ROM(Read Only Memory)、RAM(Random Access Memory)、ハードディスク等の不揮発性メモリ等を含むが、これらに限定されない。インタフェース装置1033は、USBインタフェース、シリアル・インタフェース、パラレル・インタフェース等を含むが、これらに限定されない。通信装置1034は、例えば、有線通信又は無線通信が可能であり、具体的には、WiFi通信、Bluetooth通信、2G/3G/4G/5G通信等を挙げることができる。GPU 1035は、画像を処理するために用いられる。表示装置1036は、液晶ディスプレイ、タッチパネルディスプレイ等を含むが、これらに限定されない。入力装置1037は、キーボード、マウス、タッチパネル等を含むが、これらに限定されない。また、端末機器の構成は、上記装置の一部のみを含むものであってもよい。
本発明の一実施例において、ユーザAは、1台の端末機器を介してコラボレーション文書を提出し、コラボレーション相手を選択してオンラインでの複数のユーザによるコラボレーション機能を開始することができる。その後、選択されたすべての共同作業者及びユーザAは、それぞれの端末機器を用いて、当該コラボレーション文書を閲覧し、共同に編集することができる。これらの端末機器は、当該コラボレーション文書のコラボレーション端末である。
本発明の一実施例において、オンラインでの複数のユーザによるコラボレーション機能は、対象アプリケーションに基づいて実現されてもよい。ユーザは、対象アプリケーション上でコラボレーション文書を提出し、対象アプリケーション上で閲覧及び共同編集を行うことができる。一例では、ユーザは、対象アプリケーションに予めアカウントを登録し、端末機器を使用して対象アプリケーションをオープンし、アカウントにログインした後、オンラインでの複数のユーザによるコラボレーション機能を使用することができる。端末機器上で実行される対象アプリケーションは、当該コラボレーション文書のコラボレーション端末アプリケーションである。
一例では、当該対象アプリケーションは、例えば、文書編集ソフトウェア、インスタントメッセージングソフトウェア、オフィスソフトウェア、ブラウザなどであってもよい。
一例では、当該対象アプリケーションは、例えば、ネイティブアプリケーション、Webアプリケーション、ハイブリッドアプリケーション、ライト(軽量)アプリケーションなどであってもよい。ネイティブアプリケーションとは、現在のオペレーティングシステム上で直接実行できるアプリケーションのことである。Webアプリケーションとは、ブラウザで実行する必要があるWebアプリケーションのことである。ハイブリッドアプリケーションは、ネイティブアプリケーションとWebアプリケーションとの組み合わせであってもよく、通常、ブラウザが組み込まれたネイティブアプリケーションである。軽量アプリケーションとは、ダウンロードやインストールを必要とせずに使用可能なアプリケーションであり、ユーザが直接検索して使用することができ、又はスキャンして使用することができる。
複数の端末機器の対象アプリケーションに同一のアカウントが登録されている場合、各端末機器は1つのコラボレーション端末とみなされてもよい。つまり、同一アカウントのユーザは、2台以上のコラボレーション端末を使用して、対象テキストの閲覧、共同編集を行うことができる。
図1に示すオンライン文書コラボレーションシステムは、単に例示的なものであり、本発明の実施例、その適用又は使用を限定することを意味するものではない。当業者であれば、端末機器の複数の装置について説明したが、本発明の実施例は、その一部の装置のみに関連してもよいことが理解される。例えば、端末機器は、プロセッサ、メモリ、通信装置、入力装置、及びディスプレイのみを含んでもよい。当業者は、本発明の実施例に開示された態様に従って命令を設計してもよい。命令がどのようにプロセッサを制御して動作させるかは、当該技術分野において周知の技術であるため、本明細書では詳述しない。
図2に示すように、本発明の実施例は、ステップS102~S108を含むテキストの組版方法を提供する。ステップS102~S108は、第1端末によって実施されてもよい。第1端末は、コラボレーション文書の複数のコラボレーション端末のうちの1つのコラボレーション端末である。
ステップS102において、コラボレーション文書内の対象テキストに使用される元のフォントを決定する。
本発明の実施例において、対象テキストは、コラボレーション文書内のテキストの任意の部分であってよい。一例では、第1端末は、コラボレーション文書から対象テキストの元のフォント情報を取得して、対象テキストに使用される元のフォントを決定する。通常、当該元のフォント情報は、コラボレーション文書の文書データに格納されることができる。可能な実施例では、当該元のフォント情報は、フォントの識別子、名称、コードなどであってもよい。
本発明の実施例において、フォントは、端末機器のオペレーティングシステムにロードされたフォント、端末機器のクライアント(例えば、ブラウザやアプリケーションなど)にロードされたフォント、又はサーバに格納されたフォントであってもよいし、文書ファイルに搭載されたフォントであってもよい。ここで、文書ファイルがフォントを搭載することができるが、フォントを搭載する文書ファイルは通常、データ量が比較的大きい。また、端末機器のオペレーティングシステムにロードされたフォント、端末機器のクライアントにロードされたフォント、及び文書ファイルに搭載されたフォントは、いずれも当該端末機器がサポート可能なフォントであり、ローカルフォントと総称されてもよい。一方、サーバに格納されるフォントは、サーバフォント又はクラウドフォントと呼ばれる。
ステップS104において、第1端末が元のフォントをサポートするか否かを判定する。
本発明の実施例において、第1端末は、対象テキストに使用される元のフォントを決定した後、自身がサポートするすべてのフォントに当該元のフォントが含まれるかどうかをチェックする。自身がサポートするすべてのフォントに当該元のフォントが含まれない場合、第1端末が当該元のフォントをサポートしないと判断する。例えば、第1端末のオペレーティングシステム又は第1端末のクライアントに当該元のフォントがロードされた場合、又は対象テキスト(又はコラボレーション文書)に当該元のフォントが格納されている場合、第1端末が当該元のフォントをサポートすると判断し、そうでない場合、第1端末が当該元のフォントをサポートしないと判断する。
第1端末がサポートするフォントは、第1端末にインストールされているフォントパッケージ(フォントパック)に基づいて決定されてもよい。一例として、第1端末にあるフォントのフォントパッケージがインストールされた場合、第1端末が当該フォントをサポートすることを意味する。一般的に、端末機器のオペレーティングシステム又はアプリケーションの基本データパケットには、広く使用されている様々なフォントパッケージが予めインストールされており、そのうちの1つのフォントをデフォルトフォントとして設定する。ユーザが特別なフォントを使用したい場合、対応するフォントパッケージを別途ダウンロードする必要がある。
ステップS106において、第1端末は、第1端末が元のフォントをサポートしない場合、元のフォントの文字サイズデータを取得する。
本発明の実施例における文字(キャラクター)は、文字及び記号を含むが、これらに限定されない。文字は、漢字やアルファベットなどを含むが、これらに限定されない。記号は、句読点、数字記号、数学記号、特殊記号、絵文字などを含むが、これらに限定されない。
本発明の実施例では、フォントの文字サイズデータは、文字の高さ及び幅を含む。元のフォントの文字サイズデータは、元のフォントの文字幅と元のフォントの文字高さとを含み、元のフォントの状態での対象テキストの文字の幅及び高さである。同じフォントについて、同じフォントサイズの下で、異なる文字のサイズが同じ又は異なるように設計され得る。同じフォントについて、同じフォントサイズの下で、そのすべての文字が同じサイズを採用しない場合、文字と文字幅、高さとのマッピング関係を確立する。このように、当該マッピング関係を対応するフォントの文字サイズデータとすることができ、マッピング関係に基づいて対応するフォントサイズでの各文字の文字サイズを検索することができる。
図3(a)と図3(b)に示すように、同じ漢字「早」に対して、2種類のフォントは、同じフォントサイズの下で、幅及び高さが異なる。図3(b)に示すフォントの幅及び高さは図3(a)のフォントの幅と高さより小さい。
一例として、フォントの文字サイズデータは、文字のサイズを測定することによって得られる。例えば、複数のコラボレーション端末のうちの1つが元のフォントをサポートする場合、当該コラボレーション端末は、元のフォントで対象テキストを表示し、元のフォントでの対象テキストの文字のサイズ(具体的には、文字幅及び高さ)を測定して、元のフォントの文字サイズデータを得てもよい。
別の実施例では、元のフォントの元のフォント情報には、当該元のフォントの文字サイズデータが含まれる。さらに、元のフォントの元のフォント情報から元のフォントの文字サイズデータを読み出してもよい。
一例では、第1端末は、他のコラボレーション端末によって、複数のコラボレーション端末間で共有される元のフォントの文字サイズデータを取得してもよい。すなわち、オンラインでの複数のユーザによるコラボレーション関係に基づいて、第1端末が元のフォントをサポートしない場合、第1端末以外のあるコラボレーション端末が元のフォントをサポートすれば、元のフォントをサポートする当該コラボレーション端末は、複数のコラボレーション端末間で元のフォントの文字サイズデータを共有してもよく、これにより、第1端末は元のフォントのサイズデータを取得することができる。
一例では、元のフォントの文字サイズデータを共有するコラボレーション端末は、第2端末と呼ばれる。第2端末は元のフォントをサポートする。複数のコラボレーション端末の中から第2端末を決定するプロセスは、後続のステップS202を参照することができる。一実施例において、第1端末は、第2端末から元のフォントの文字サイズデータを取得した後、元のフォントの文字サイズデータを第1端末のローカルキャッシュに格納し、次回当該フォントを使用する必要があるとき、ローカルキャッシュから当該フォントの文字サイズデータを直接読み出してもよい。
一実施例では、第1端末が元のフォントの文字サイズデータを取得することは、元のフォントの文字サイズデータを第1端末のローカルキャッシュに照会することであってもよい。
一例において、第1端末が元のフォントの文字サイズデータを取得することは、第1端末のローカルキャッシュに元のフォントの文字サイズデータを照会し、第1端末のローカルキャッシュに元のフォントの文字サイズデータが見つからない場合、第2端末から元のフォントの文字サイズデータを取得することであってもよい。この例では、第1端末は、元のフォントの文字サイズデータを取得した後、元のフォントの文字サイズデータをローカルキャッシュに格納し、次回当該フォントを使用する必要があるとき、ローカルキャッシュから当該フォントの文字サイズデータを直接読み出してもよい。
第1端末は、第2端末から元のフォントの文字サイズデータを取得するステップは、ステップS202~S204を含んでもよい。
ステップS202において、元のフォントに関するフォント照会要求を複数のコラボレーション端末間でブロードキャストして、第2端末を決定する。
一例では、1つの端末がコラボレーション文書のコラボレーション端末になった場合、「コラボレーションに参加する」という通知情報がブロードキャストされ、それに応じて、1つの端末がコラボレーションを終了し、当該コラボレーション文書のコラボレーション端末でなくなった場合、「コラボレーションを終了する」という通知情報がブロードキャストされる。このように、コラボレーション文書のコラボレーション端末は、受信した通知情報に基づいて、コラボレーション端末の数を決定することができる。例えば、コラボレーション端末の数は、受信した「コラボレーションに参加する」という通知情報の数と、受信した「コラボレーションを終了する」という通知情報の数との差である。第1端末が元のフォントをサポートしない場合、コラボレーション端末の数が2つ以上に達すると、第1端末は、フォント照会要求を複数のコラボレーション端末間でブロードキャストして、第2端末を決定する。
第1端末は、フォント照会要求を複数のコラボレーション端末間でブロードキャストして、第2端末を決定するステップは、ステップS2022~S2024を含んでもよい。
ステップS2022において、フォント照会要求を複数のコラボレーション端末間でブロードキャストして、元のフォントをサポートするコラボレーション端末を候補端末として決定する。
ステップS2024において、候補端末の数が1の場合、候補端末を第2端末として決定し、候補端末の数が1より大きい場合、所定の条件を満たす候補端末を第2端末として決定する。
当該所定の条件は、以下の条件a~cのうちの少なくとも1つを含み得る。
条件a、第1端末との間の通信品質が最も良い候補端末。例えば、第1端末との間のネットワーク遅延が最も低い候補端末を、通信品質が最も良い候補端末として決定してもよい。
条件b、受信したフォント支援要求の数が最も少ない候補端末。受信したフォント支援要求の数が最も少ない候補端末は、相対的にアイドルであるため、これを第2端末とすることは全体効率の向上に有利である。
条件c、送信したフォント照会要求の数が最も少ない候補端末。送信したフォント照会要求の数が最も少ない候補端末は、相対的にアイドルであるため、これを第2端末とすることが全体効率の向上に有利である。
一例では、第1端末は、元のフォントをサポートしないこと、すなわち、第1端末のローカルに元のフォントがないことを発見すると、情報キューを作成して、フォント照会要求を情報キューに追加し、それによってコラボレーション文書の複数のコラボレーション端末間でフォント照会要求をブロードキャストする。コラボレーション文書の各コラボレーション端末は、当該フォント照会要求を受信すると、自分が元のフォントをサポートするかどうかを判断し、自分が元のフォントをサポートすると判断した場合、第1応答情報を第1端末に送信する。第1応答情報は、元のフォントをサポートすることを示す。第1端末は、他のコラボレーション端末から送信されたフォント照会要求に対する第1応答情報を受信すると、当該コラボレーション端末を第2端末として決定してもよい。
ステップS204において、元のフォントに関するフォント支援要求を第2端末に送信して、第2端末から元のフォントの文字サイズデータを取得する。
第1端末は、フォント支援要求を第2端末に送信し、第2端末は、フォント支援要求を受信すると、元のフォントに対応する文字サイズデータを第1端末に送信する。一例として、第二端末は、フォント支援要求を受信すると、元のフォントに対して文字測定操作を行い、元のフォントの文字サイズデータを取得する。
ステップS108において、第1端末は、元のフォントの文字サイズデータの取得に成功した場合、第1端末がサポートする第1フォントで対象テキストを表示し、元のフォントの文字サイズデータに基づいて、表示される対象テキストを組版する。第1フォントは、第1端末がサポートするすべてのフォントのうち、元のフォントの文字サイズデータに最も一致するフォントであってもよい。一例では、第1フォントを決定するステップは、以下のステップを含んでもよい。対象テキストの組版方向が横書きである場合、元のフォントでの対象テキストの文字幅と、第1端末がサポートする各フォントでの対象テキストの文字幅との差を第1差として算出し、第1差の絶対値が小さいほど、第1端末がサポートする対応するフォントの文字幅が元のフォントの文字幅に近いことを意味し、第1差の絶対値が最も小さい第1端末がサポートするフォントを第1フォントとして選択する。また、対象テキストの組版方向が縦書きである場合、元のフォントでの対象テキストの文字高さと、第1端末がサポートする各フォントでの対象テキストの文字高さとの差を第2差として算出し、第2差の絶対値が小さいほど、第1端末がサポートする対応するフォントの文字高さが元のフォントの文字高さに近いことを意味し、第2差の絶対値が最も小さい第1端末がサポートするフォントを第1フォントとして選択する。
第1端末は、元のフォントの文字サイズデータに基づいて、第1端末において第1フォントで表示される対象テキストを組版することは、様々な方式があり、以下、例を挙げて説明する。
例1:
対象テキストの組版方向を決定し、対象テキストの組版方向に基づいて、第1端末において第1フォントで表示される対象テキストを組版する。
対象テキストの組版方向が横書きである場合、第1フォントでの対象テキストの文字幅と元のフォントでの対象テキストの文字幅とが一致するように、第1フォントでの対象テキストの文字に対して第1拡大縮小処理を行う。また、対象テキストの組版方向が縦書きである場合、第1フォントでの対象テキストの文字高さと元のフォントでの対象テキストの文字高さとが一致するように、第1フォントでの対象テキストの文字に対して第2拡大縮小処理を行う。
例1では、文字の拡大縮小は、フォントサイズを調整することによって実現することができる。
一実施例では、ステップS108において、元のフォントに対応する文字サイズデータに基づいて、第1端末に表示される対象テキストを組版することは、第1フォントに対応する文字サイズデータを取得し、元のフォントに対応する文字サイズデータ及び第1フォントに対応する文字サイズデータに基づいて、第1端末に表示される対象テキストを組版することであってもよい。
例2:
対象テキストの組版方向を決定し、対象テキストの組版方向に基づいて、第1端末において第1フォントで表示される対象テキストを組版する。
対象テキストの組版方向が横書きである場合、元のフォントでの対象テキストの文字幅と第1フォントでの対象テキストの文字幅との差である第1差を決定する。第1差が正の値である場合、対象テキストの文字の横座標値を調整し、第1差が負の値である場合、対象テキストの文字に対して縮小処理を行う。
対象テキストの組版方向が縦書きである場合、元のフォントでの対象テキストの文字高さと第1フォントでの対象テキストの文字高さとの差である第2差を決定する。第2差が正の値である場合、対象テキストの文字の縦座標値を調整し、第2差が負の値である場合、対象テキストの文字に対して縮小処理を行う。
例2において、文字の縮小処理は、フォントサイズを調整することで実現してもよい。
以下、対象テキストの組版方向が横書きである場合を例に説明する。
図3(a)に示すように、元のフォントでの対象テキストの各文字の文字幅は約W1である。図3(b)に示すように、第1フォントでの対象テキストの各文字の文字幅は約W2である。W1とW2の差DW(=W1-W2)を第1差として算出する。
当該第1差DWが正の値である場合、第1フォントの文字幅が元のフォントの文字幅より小さいことを示し、第1フォントでの対象テキストの各文字の横軸の座標値を調整する必要がある。
図4に示すように、対象テキストは1行のコンテンツであり、「早上好今天的天气真好」という10文字を含む。元のフォントの下では、当該10文字の横軸の座標値はX、X、...、X10であり、組版後では、当該10文字の横軸の座標値はX’、X’、...、X10’である。これにより、以下の式が得られる。
’=X+0.5*DW
’=X+(2-1)*DW+0.5*DW

’=X+(n-1)*DW+0.5*DW

10’=X10+(10-1)*DW+0.5*DW
ただし、nは整数であり、1≦n≦10である。
ここから分かるように、第1フォントの下での、この行のコンテンツ内の各文字の横軸の座標値を調整することは、この行のコンテンツ内の隣接する文字間の間隔を調整することに相当する。
当該第1差DWが負の値である場合、第1フォントの文字幅が元のフォントの文字幅より大きいことを意味し、座標値を調整すると、文字同士の重なりが生じる可能性があるため、第1端末において第1フォントで表示される対象テキストのフォントサイズを縮小し、第1フォントでの元の対象テキストの位置(座標値)を変更しないようにする必要がある。一例では、比率W1/W2に基づいて、第1端末において第1フォントで表示される対象テキストのフォントサイズを縮小する。例えば、W1/W2=R1とし、このコンテンツの元のフォントサイズをU1とすると、このコンテンツのフォントサイズをU2に調整し、U2=R1*U1である。ここで、本明細書におけるフォントサイズは、ポイント単位であり、これは当業者によく知られている印刷フォントの計量方法であり、例えば、5ポイント、12ポイントなどである。
以下、対象テキストの組版方向が縦書きである場合を例に説明する。
図3(a)に示すように、元のフォントでの各文字の文字高さは約H1である。図3(b)に示すように、第1フォントでの各文字の文字高さは約H2である。H1とH2の差DH(=H1-H2)を第2差として算出する。
当該第2差DHが正の値である場合、第1フォントの文字高さが元のフォントの文字高さより小さいことを示し、第1フォントでの各文字の縦軸の座標値を調整する。
元のフォントの下での対象テキストが合計M行のコンテンツを有し、各行内の文字の縦座標値が同じであり、1行目からM行目までの文字の縦座標値がそれぞれY、Y、...、Yであり、組版後、1行目からM行目までの文字の縦座標値がY’、Y’、...、Y’であると仮定すると、以下の式が得られる。
’=Y+0.5*DH
’=Y+(2-1)*DH+0.5*DH

’=Y+(m-1)*DH+0.5*DH

’=Y+(M-1)*DH+0.5*DH
ただし、mは整数であり、1≦m≦Mである。
ここから分かるように、第1フォントでの対象テキストの各文字の縦軸の座標値を調整することは、対象テキストの隣接する行の間の間隔を調整することに相当する。
当該第2差DHが負の値である場合、第1フォントの文字高さが元のフォントの文字高さより大きいことを意味し、座標値を調整すると、文字同士の重なりが生じる可能性があるため、第1端末において第1フォントで表示される対象テキストのフォントサイズを縮小する必要がある。一例では、比率H1/H2に基づいて、第1端末において第1フォントで表示される対象テキストのフォントサイズを縮小し、第1フォントでの元の対象テキストの位置(座標値)を変更しないようにする。例えば、H1/H2=R2とし、対象テキストの元のフォントサイズをU1とすると、フォントサイズをU2に調整し、U2=R2*U1である。
例3:
対象テキストの組版方向を決定し、対象テキストの組版方向に基づいて、第1端末において第1フォントで表示される対象テキストを組版する。
対象テキストの組版方向が横書きである場合、第1フォントでの対象テキストのフォントサイズを第1フォントサイズに調整し、第1フォントサイズは、第1フォントでの対象テキストの文字幅と元のフォントでの対象テキスト文字幅とが最も近いフォントサイズである。対象テキストのフォントサイズを第1フォントサイズに調整した後、第1差を決定し、第1差は、元のフォントでの対象テキストの文字幅と第1フォントでの対象テキストの文字幅との差である。第1差が正の値である場合、対象テキストの文字の横座標値を調整し、第1差が負の値である場合、対象テキストの文字に対して縮小処理を行う。
すなわち、対象テキストの組版方向が横書きである場合、第1端末は、第1フォントでの対象テキストのフォントサイズを第1フォントサイズに調整した後、文字幅が元のフォントでの文字幅よりまだ大きい場合、フォントサイズを1ポイント下させて文字を縮小させ、文字同士が重なってしまう状況を回避する。
対象テキストの組版方向が縦書きである場合、第1フォントでの対象テキストのフォントサイズを第2フォントサイズに調整し、第2フォントサイズは、第1フォントでの対象テキストの文字高さと元のフォントでの対象テキストの文字高さとが最も近いフォントサイズである。対象テキストのフォントサイズを第2フォントサイズに調整した後、第2差を決定し、第2差は、元のフォントでの対象テキストの文字高さと第1フォントでの対象テキストの文字高さとの差である。第2差が正の値である場合、対象テキストの文字の縦座標値を調整し、第2差が負の値である場合、対象テキストの文字に対して縮小処理を行う。
すなわち、対象テキストの組版方向が縦書きである場合、第1端末は、第1フォントでの対象テキストのフォントサイズを第2フォントサイズに調整した後、文字高さが元のフォントでの文字高さよりまだ大きい場合、フォントサイズを1ポイント下させて文字を縮小させ、文字同士が重なってしまう状況を回避する。
例3において、文字の縮小処理は、フォントサイズを調整することで実現してもよい。
第1端末が第1フォントで表示される対象テキストを組版した後、第1端末において第1フォントで表示される対象テキストの組版状況と、元のフォントで表示される対象テキストの組版状況とが近くなる。図4に示すように、「早上好今天的天气真好」という対象テキストについては、元のフォントでの組版状況と第1フォントでの組版状況とを比較すると、元のフォントでのこのコンテンツの総幅がより広い。ステップS108の組版により、第1端末に第1フォントで表示されるこのコンテンツの総幅は、元のフォントでのこのコンテンツの総幅に近くなる。このようにして、元のフォントでの同じ行のコンテンツが、第1フォントで表示されるように変更されたために改行されることがなく、さらに組版の違いによるコラボレーション端末がコラボレーションを同期できないという問題を回避することができる。
本発明の実施例の有益な効果は、以下の通りである。オンラインでの複数のユーザによるコラボレーションのコラボレーション文書について、あるコラボレーション端末がコラボレーション文書内の対象テキストの元のフォントをサポートしない場合、当該コラボレーション端末がサポートする第1フォントを使用して対象テキストを表示し、元のフォントに対応する文字サイズデータに基づいて、当該コラボレーション端末に表示される対象テキストを組版することができる。これにより、当該コラボレーション端末は、元のフォントがない場合でも、他のコラボレーション端末との組版上の一致性を保つことができる。
第1端末は、元のフォントの文字サイズデータの取得に失敗した場合、当該方法は、ステップS902~S904を更に含んでもよい。
ステップS902において、第1端末が目標フォントをサポートするか否かを判定する。目標フォントは、複数のコラボレーション端末のいずれも前記元のフォントをサポートしない場合、複数のコラボレーション端末が予め設定されたネゴシエーションメカニズムに基づいて候補フォントの中から決定されたフォントである。候補フォントは、コラボレーション端末のいずれかがサポートするフォントである。
例えば、最初にフォント照会要求を送信したコラボレーション端末がサポートするフォントを目標フォントとして決定してもよい。最初にフォント照会要求を送信したコラボレーション端末は、通常、相対的にアイドルであり、他のコラボレーション端末より効率が高い。別の例として、各候補フォントのスコアを決定し、スコアが最も高い候補フォントを目標フォントとして決定してもよい。ここで、候補フォントのスコアは、候補フォントをサポートするコラボレーション端末の数である。
ステップS904において、第1端末は、目標フォントをサポートする場合、目標フォントで対象テキストを表示し、第1端末は、目標フォントをサポートしない場合、第3端末から目標フォントの文字サイズデータを取得し、第1端末がサポートする第2フォントで対象テキストを表示し、目標フォントの文字サイズデータに基づいて、第2フォントで表示される対象テキストを組版し、第3端末は、目標フォントをサポートするコラボレーション端末である。ここで、第2フォントは、第1端末がサポートするフォントのうち、目標フォントに最も一致するフォントである。第2フォントを決定するプロセスは、前述の第1フォントを決定するプロセスと同様であってよい。特に、第2フォントは、第1フォントと同じであってもよい。
第1端末が第3端末から目標フォントの文字サイズデータを取得するプロセスは、前述の第1端末が第2端末から元のフォントの文字サイズデータを取得するプロセスと同様である。
本発明の実施例の有益な効果は、以下の通りである。オンラインでの複数のユーザによるコラボレーションのコラボレーション文書について、コラボレーション端末のすべてがコラボレーション文書内の対象テキストの元のフォントをサポートしない場合、予め設定されたネゴシエーションメカニズムに基づいて1つのフォントを目標フォントとして決定し、各コラボレーション端末が目標フォントを統一的に使用して対象テキストを表示することができる。これにより、各コラボレーション端末は、元のフォントがない場合でも、他のコラボレーション端末との組版上の一致性を保つことができる。
第1端末が元のフォントをサポートする場合、当該方法は、第1端末は、元のフォントで対象テキストを表示し、元のフォントの文字サイズデータを第4端末に送信するステップを更に含んでもよい。第4端末は、元のフォントをサポートしないコラボレーション端末である。
一例において、第1端末が元のフォントをサポートする場合、第1端末が第4端末からフォント支援要求を受信すると、元のフォントに対応する文字サイズデータを第4端末に送信する。一例において、第1端末が元のフォントをサポートする場合、第1端末は、複数のコラボレーション端末間で元のフォントの文字サイズデータを共有してもよい。
<デバイスの実施例>
本発明の実施例は、コラボレーション文書の複数のコラボレーション端末に適用されるテキストの組版装置を提供する。当該テキストの組版装置は、
コラボレーション文書内の対象テキストに使用される元のフォントを決定するための第1決定モジュールと、
複数のコラボレーション端末のうちの第1端末が元のフォントをサポートするか否かを判定するための第2決定モジュールと、
第1端末が前記元のフォントをサポートしない場合、元のフォントの文字サイズデータを取得するための第1取得モジュールと、
元のフォントの文字サイズデータの取得に成功した場合、元のフォントの文字サイズデータに基づいて、第1フォントで表示される対象テキストを組版するための第1組版モジュールと、を含む。
一例において、第1端末は、元のフォントの文字サイズデータを取得するステップは、第1端末は、第2端末によって複数のコラボレーション端末間で共有される元のフォントの文字サイズデータを取得するステップを含む。
一例において、第1端末は、元のフォントの文字サイズデータを取得するステップは、元のフォントの文字サイズデータを第1端末のローカルキャッシュに照会するステップ、あるいは、第2端末から元のフォントの文字サイズデータを取得するステップを含む。第2端末は、複数のコラボレーション端末のうち元のフォントをサポートするコラボレーション端末である。
一例において、第1端末は、元のフォントの文字サイズデータを取得するステップは、元のフォントの文字サイズデータを第1端末のローカルキャッシュに照会するステップと、第1端末のローカルキャッシュに元のフォントの文字サイズデータが見つからない場合、第2端末から元のフォントの文字サイズデータを取得するステップと、を含む。第2端末は、複数のコラボレーション端末のうち元のフォントをサポートするコラボレーション端末である。
一例において、第1取得モジュールは、
フォント照会要求を複数のコラボレーション端末間でブロードキャストして、第2端末を決定するための第1要求モジュールと、
フォント支援要求を第2端末に送信して、第2端末から元のフォントの文字サイズデータを取得するための第2要求モジュールと、を含む。
第1要求モジュールは、フォント照会要求を複数のコラボレーション端末間でブロードキャストして、第2端末を決定することは、
フォント照会要求を複数のコラボレーション端末間でブロードキャストして、元のフォントをサポートするコラボレーション端末を候補端末として決定することと、
候補端末の数が1の場合、候補端末を第2端末として決定し、
候補端末の数が1より多い場合、所定の条件を満たす候補端末を第2端末として決定することと、を含む。
一例において、第1端末は、第3決定モジュールと、第2取得モジュールと、第2組版モジュールとを更に含み、
第3決定モジュールは、第1端末が元のフォントの文字サイズデータの取得に失敗した場合、第1端末が目標フォントをサポートするか否かを判定するために用いられ、目標フォントは、複数のコラボレーション端末のいずれも元のフォントをサポートしない場合、複数のコラボレーション端末が予め設定されたネゴシエーションメカニズムに基づいて候補フォントの中から決定されたフォントであり、候補フォントは、コラボレーション端末のいずれかがサポートするフォントであり、
第2取得モジュールは、第3決定モジュールが第1端末が目標フォントをサポートしないと決定した場合、第3端末から目標フォントの文字サイズデータを取得するために用いられ、
第2組版モジュールは、第3決定モジュールが第1端末が目標フォントをサポートすると決定した場合、目標フォントで対象テキストを表示し、第3決定モジュールが第1端末が目標フォントをサポートしないと決定した場合、第1端末がサポートする第2フォントで対象テキストを表示し、目標フォントの文字サイズデータに基づいて、第1端末がサポートする第2フォントで表示される対象テキストを組版するために用いられ、第3端末は、複数のコラボレーション端末のうち目標フォントをサポートするコラボレーション端末である。
一例において、第1端末は、
第1端末が元のフォントをサポートする場合、元のフォントで対象テキストを表示し、元のフォントの文字サイズデータを第4端末に送信するための送信モジュールを更に含み、
第4端末は、複数のコラボレーション端末のうち元のフォントをサポートしないコラボレーション端末である。
一例において、第1組版モジュールは、元のフォントの文字サイズデータに基づいて、第1端末がサポートする第1フォントで表示される対象テキストを組版することは、
対象テキストの組版方向を決定することと、
対象テキストの組版方向が横書きである場合、元のフォントでの対象テキストの文字幅と第1フォントでの対象テキストの文字幅との差である第1差を決定し、第1差が正の値である場合、対象テキストの文字の横座標値を調整し、第1差が負の値である場合、対象テキストの文字に対して縮小処理を行い、
対象テキストの組版方向が縦書きである場合、元のフォントでの対象テキストの文字高さと第1フォントでの対象テキストの文字高さとの差である第2差を決定し、第2差が正の値である場合、対象テキストの文字の縦座標値を調整し、第2差が負の値である場合、対象テキストの文字に対して縮小処理を行うことと、を含む。
一例において、第1組版モジュールは、元のフォントの文字サイズデータに基づいて、第1端末がサポートする第1フォントで表示される対象テキストを組版することは、
対象テキストの組版方向を決定することと、
対象テキストの組版方向が横書きである場合、第1フォントでの対象テキストの文字幅と元のフォントでの対象テキストの文字幅とが一致するように、第1フォントでの対象テキストの文字に対して第1拡大縮小処理を行い、
対象テキストの組版方向が縦書きである場合、第1フォントでの対象テキストの文字高さと元のフォントでの対象テキストの文字高さとが一致するように、第1フォントでの対象テキストの文字に対して第2拡大縮小処理を行うことと、を含む。
一例において、第1組版モジュールは、元のフォントの文字サイズデータに基づいて、第1端末がサポートする第1フォントで表示される対象テキストを組版することは、
対象テキストの組版方向を決定することと、
対象テキストの組版方向が横書きである場合、第1フォントでの前記対象テキストのフォントサイズを、第1フォントでの対象テキストの文字幅と元のフォントでの前記対象テキストの文字幅とが最も近いフォントサイズである第1フォントサイズに調整し、対象テキストのフォントサイズを第1フォントサイズに調整した後、元のフォントでの対象テキストの文字幅と第1フォントでの対象テキストの文字幅との差である第1差を決定し、第1差が正の値である場合、対象テキストの文字の横座標値を調整し、第1差が負の値である場合、対象テキストの文字に対して縮小処理を行い、
対象テキストの組版方向が縦書きである場合、第1フォントでの対象テキストのフォントサイズを、第1フォントでの対象テキストの文字高さと元のフォントでの対象テキストの文字高さとが最も近いフォントサイズである第2フォントサイズに調整し、対象テキストのフォントサイズを第2フォントサイズに調整した後、元のフォントでの対象テキストの文字高さと第1フォントでの対象テキストの文字高さとの差である第2差を決定し、第2差が正の値である場合、対象テキストの文字の縦座標値を調整し、第2差が負の値である場合、対象テキストの文字に対して縮小処理を行うことと、を含む。
図5は、一実施例に係る電子機器のハードウェア構造の概略図である。
図5に示すように、当該電子機器800は、プロセッサ801とメモリ802とを含み、当該メモリ802は、実行可能なコンピュータプログラムを記憶するために用いられ、当該プロセッサ801は、前記コンピュータプログラムを実行することで、上記のいずれかの方法実施例に係るテキストの組版方法を実施するために用いられる。
当該電子機器800は、コンピュータ、携帯電話、タブレットなどの機器であってもよい。
<コンピュータ読み取り可能な記憶媒体>
本発明の実施例は、コンピュータ読み取り可能な記憶媒体を更に提供し、コンピュータ読み取り可能な記憶媒体には、コンピュータプログラムが記憶され、コンピュータプログラムがプロセッサによって実行されると、上記のいずれかの方法実施例に係るテキストの組版方法が実施される。
本発明は、システム、方法、及び/又はコンピュータ・プログラム・プロダクトであってもよい。コンピュータ・プログラム・プロダクトは、コンピュータ読み取り可能な記憶媒体を含んでいてもよく、その媒体上に、本発明の各態様をプロセッサに実施させるためのコンピュータ読み取り可能なプログラム命令を有する。
コンピュータ読み取り可能な記憶媒体は、命令実行デバイスが使用するための命令を保持および格納することができる、実体のあるデバイスとすることができる。コンピュータ読み取り可能な記憶媒体は、例えば、以下に限定されないが、電子記憶デバイス、磁性記憶デバイス、光学記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、又は先に述べたものの適切な組合せとしてもよい。コンピュータ読み取り可能な記憶媒体のさらに具体的な例を非排他的に列挙すると、携帯可能なコンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ(RAM)、読み取り専用のメモリ(ROM)、消去可能かつプログラミング可能な読み取り専用のメモリ(EPROMもしくはフラッシュ・メモリ)、静的ランダム・アクセス・メモリ(SRAM)、携帯可能かつコンパクト・ディスクの読み取り専用のメモリ(CD-ROM)、デジタル多目的ディスク(DVD)、メモリディスク、フロッピーディスク、命令が記録されたパンチカードや溝に浮き彫りされた構造などの物理的にコードされたデバイス、又は先に述べたものの任意の適切な組合せが挙げられる。コンピュータ読み取り可能な記憶媒体は、本発明に使用されるように、ラジオ波又は自由に伝播する他の電磁波、導波管又は他の伝送媒体を通じて伝播する電磁波(例えば、光ファイバ・ケーブルを通過する光パルス)や、ワイヤを通じて伝送される電気シグナルなど、それ自体で一時的なシグナルであるものとは解されない。
本発明に記載するコンピュータ読み取り可能なプログラム命令は、ネットワークを介して、例えば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、ワイヤレス・ネットワーク、又はそれらの組合せを介して、コンピュータ読み取り可能な記憶媒体からそれぞれのコンピューティング/処理デバイスに、又は外部コンピュータもしくは外部記憶デバイスに、ダウンロードすることができる。ネットワークは、銅製の伝送ケーブル、光伝送ファイバ、ワイヤレス伝送、ルーター、ファイヤーウォール、スイッチ、ゲートウェイ・コンピュータ、エッジ・サーバ、又はそれらの組合せを含んでいてもよい。各コンピューティング/処理デバイスのネットワーク・アダプタ・カード又はネットワーク・インターフェースは、コンピュータ読み取り可能なプログラム命令をネットワークから受け取り、コンピュータ読み取り可能な記憶媒体に記憶するためのコンピュータ読み取り可能なプログラム命令を各コンピューティング/処理デバイス内で転送する。
本発明の操作を行うためのコンピュータ読み取り可能なプログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)、機械語命令、機械語依存的な命令、マイクロコード、ファームウェア命令、状態設定データ、又は1つもしくは複数のプログラミング言語の任意の組合せで書かれたソースコード及びオブジェクトコードのどちらかであってもよく、そのようなプログラミング言語としては、Smalltalk、C++などのオブジェクト指向のプログラミング言語、及び“C”プログラミング言語や類するプログラミング言語など、既存の手続き型プログラミング言語が挙げられる。コンピュータ読み取り可能なプログラム命令は、ユーザのコンピュータ上で全体的に、ユーザのコンピュータ上で部分的に、スタンドアローン・ソフトウェア・パッケージとして、ユーザのコンピュータ上で部分的に及び遠隔コンピュータ上で部分的に、又は遠隔コンピュータもしくはサーバで全体的に、実行されてもよい。後者の大筋では、遠隔コンピュータは、任意の型のネットワークを介してユーザ・コンピュータへ接続されてもよく、そのようなネットワークとしては、ローカル・エリア・ネットワーク(LAN)又はワイド・エリア・ネットワーク(WAN)が挙げられる。あるいは、上記接続は、外部のコンピュータへ(例えば、インターネット・サービス・プロバイダを使用してインターネットを通じて)作成されてもよい。いくつかの実施形態では、本発明の態様を実施するために、電子回路、例えば、プログラム可能な論理回路、現場でプログラム可能なゲート・アレイ(FPGA)又はプログラム可能な論理アレイ(PLA)などが、コンピュータ読み取り可能なプログラム命令の状態情報を利用することによって、コンピュータ読み取り可能なプログラム命令を実行して、上記電子回路を個人用に設定してもよい。
本発明の態様は、本発明の実施形態による方法、装置(システム)及びコンピュータ・プログラム・プロダクトのフローチャート図、ブロック図又はそれらの組合せを参照して本発明に記載されている。フローチャート図、ブロック図又はそれらの組合せの各ブロック、ならびに上記フローチャート図、上記ブロック図又はそれらの組合せのブロックの組合せは、コンピュータ読み取り可能なプログラム命令によって実装することができることが理解されよう。
これらのコンピュータ読み取り可能なプログラム命令を、汎用コンピュータ、専用コンピュータ、又は他のプログラミング可能なデータ処理装置のプロセッサに提供して機械を生成してもよく、その結果、その命令は、コンピュータ又は他のプログラミング可能なデータ処理装置を介して実行され、フローチャート、ブロック図又はそれらの組合せの1つもしくは複数のブロックに指定された機能/役割を実装するための手段を作り出す。これらのコンピュータ読み取り可能なプログラム命令はまた、コンピュータ、プログラミング可能なデータ処理装置、又は他のデバイス、又はそれらの組合せを指示することができるコンピュータ読み取り可能な媒体中に格納されて、具体的な仕様で機能する場合もあり、その結果、命令が中に格納されたコンピュータ読み取り可能な媒体は、フローチャート、ブロック図又はそれらの組合せの1つもしくは複数のブロックに指定された機能/役割の態様を実装する命令を含む、製品を含む。
コンピュータ読み取り可能なプログラム命令はまた、コンピュータ、他のプログラミング可能なデータ処理装置、又は他のデバイスにロードされ、コンピュータ、他のプログラミング可能な装置又は他のデバイスで実施される一連の操作のステップを引き起こして、コンピュータに実装されるプロセスを生成してもよく、その結果、コンピュータ又は他のプログラミング可能な装置又は他のデバイスで実行される命令は、フローチャート、ブロック図又はそれらの組合せの1つもしくは複数のブロックに指定された機能/役割を実装する。
図中のフローチャート及びブロック図は、本発明の様々な実施形態による、ありうるシステム、方法及びコンピュータ・プログラム・プロダクトの実装に関するアーキテクチャ、機能性及び操作を説明している。この点、フローチャート又はブロック図のそれぞれのブロックは、モジュール、セグメント、又は命令の一部を表すことがあり、それらは、指定された論理関数を実装するための、1つ又は複数の実行可能な命令を含む。いくつかの代替の実現例では、ブロックに記述された機能は、図に記述された順序を外れて発生することがある。例えば、連続して示された2つのブロックが、実際には、ほぼ同時に実行されてもよいし、時には、上記ブロックは、含まれる機能性に応じて、逆の順番で実行されてもよい。ブロック図とフローチャート図とのどちらか又はその両方の各ブロック、及び上記ブロック図と上記フローチャート図とのどちらか又はその両方のブロックの組合せは、指定された機能又は動作を実施する専用のハードウェアベースのシステムによって実装されるか、又は、専用のハードウェア及びコンピュータ命令の組合せを実施することができることもまた留意されよう。ハードウェアによる実施、ソフトウェアによる実施、及びソフトウェアとハードウェアの組み合わせによる実施が等価であることは当業者に周知である。
以上、本発明の様々な実施形態について説明したが、上記の説明は例示的なものであり、網羅的なものではなく、開示された各実施形態に限定されるものではない。多くの改変及び変形は、記載する実施形態の範囲及び趣旨を逸脱することなく、当業者にとって明らかとなろう。本発明に使用される用語は、本実施形態の原理、実際的な適用、又は市場に見出される技術を超える技術的な向上を、最適に説明するために、及び本発明に開示する実施形態を他の当業者が理解することを可能にするために、選択されたものである。本発明の範囲は、添付の特許請求の範囲によって限定される。

Claims (16)

  1. コラボレーション文書の複数のコラボレーション端末に適用されるテキストの組版方法であって、
    前記コラボレーション文書内の対象テキストに使用される元のフォントを決定するステップと、
    前記複数のコラボレーション端末のうちの第1端末が前記元のフォントをサポートするか否かを判定するステップと、
    前記第1端末は、前記第1端末が前記元のフォントをサポートしない場合、前記元のフォントの文字サイズデータを取得するステップと、
    前記第1端末は、前記元のフォントの文字サイズデータの取得に成功した場合、前記第1端末がサポートする第1フォントで前記対象テキストを表示するステップと、
    前記第1端末は、前記元のフォントの文字サイズデータに基づいて、前記第1フォントで表示される前記対象テキストを組版するステップとを含む、
    ことを特徴とするテキストの組版方法。
  2. 前記第1端末は、前記元のフォントの文字サイズデータを取得するステップは、
    前記第1端末は、第2端末によって前記複数のコラボレーション端末間で共有される前記元のフォントの文字サイズデータを取得するステップであって、前記第2端末は、前記複数のコラボレーション端末のうちの1つである、ステップを含む、
    ことを特徴とする請求項1に記載のテキストの組版方法。
  3. 前記第1端末は、前記元のフォントの文字サイズデータを取得するステップは、
    前記元のフォントの文字サイズデータを前記第1端末のローカルキャッシュに照会するステップ、あるいは、
    第2端末から前記元のフォントの文字サイズデータを取得するステップであって、前記第2端末は、前記複数のコラボレーション端末のうち前記元のフォントをサポートするコラボレーション端末である、ステップを含む、
    ことを特徴とする請求項1に記載のテキストの組版方法。
  4. 前記第1端末は、前記元のフォントの文字サイズデータを取得するステップは、
    前記元のフォントの文字サイズデータを前記第1端末のローカルキャッシュに照会するステップと、
    前記第1端末のローカルキャッシュに前記元のフォントの文字サイズデータが見つからない場合、第2端末から前記元のフォントの文字サイズデータを取得するステップであって、前記第2端末は、前記複数のコラボレーション端末のうち前記元のフォントをサポートするコラボレーション端末である、ステップとを含む、
    ことを特徴とする請求項1に記載のテキストの組版方法。
  5. 前記第1端末は、第2端末から前記元のフォントの文字サイズデータを取得するステップは、
    前記第1端末は、フォント照会要求を前記複数のコラボレーション端末間でブロードキャストして、前記第2端末を決定するステップと、
    前記第1端末は、フォント支援要求を前記第2端末に送信して、前記第2端末から前記元のフォントの文字サイズデータを取得するステップとを含む、
    ことを特徴とする請求項3又は請求項4に記載のテキストの組版方法。
  6. 前記第1端末は、フォント照会要求を前記複数のコラボレーション端末間でブロードキャストして、前記第2端末を決定するステップは、
    フォント照会要求を複数のコラボレーション端末間でブロードキャストして、前記元のフォントをサポートするコラボレーション端末を候補端末として決定するステップと、
    前記候補端末の数が1の場合、前記候補端末を前記第2端末として決定し、
    前記候補端末の数が1より多い場合、所定の条件を満たす前記候補端末を前記第2端末として決定するステップとを含む、
    ことを特徴とする請求項5に記載のテキストの組版方法。
  7. 前記所定の条件は、
    前記候補端末と前記第1端末との間の通信品質が最も良いという条件、
    前記候補端末が受信した前記フォント支援要求の数が最も少ないという条件、
    前記候補端末が送信した前記フォント照会要求の数が最も少ないという条件、のうちの少なくとも1つを含む、
    ことを特徴とする請求項6に記載のテキストの組版方法。
  8. 前記第1端末は、前記元のフォントの文字サイズデータの取得に失敗した場合、
    前記第1端末が目標フォントをサポートするか否かを判定するステップであって、前記目標フォントは、前記複数のコラボレーション端末のいずれも前記元のフォントをサポートしない場合、前記複数のコラボレーション端末が予め設定されたネゴシエーションメカニズムに基づいて候補フォントの中から決定されたフォントであり、前記候補フォントは、前記コラボレーション端末のいずれかがサポートするフォントである、ステップと、
    前記第1端末は、前記目標フォントをサポートする場合、前記目標フォントで前記対象テキストを表示し、
    前記第1端末は、前記目標フォントをサポートしない場合、第3端末から前記目標フォントの文字サイズデータを取得し、前記第1端末がサポートする第2フォントで前記対象テキストを表示するステップであって、前記第3端末は、前記複数のコラボレーション端末のうち前記目標フォントをサポートするコラボレーション端末である、ステップと、
    前記第1端末は、前記目標フォントの文字サイズデータに基づいて、前記第2フォントで表示される前記対象テキストを組版するステップとを更に含む、
    ことを特徴とする請求項1に記載のテキストの組版方法。
  9. 前記複数のコラボレーション端末のいずれも前記元のフォントをサポートしない場合、前記複数のコラボレーション端末が予め設定されたネゴシエーションメカニズムに基づいて候補フォントの中から目標フォントを決定することは、
    前記複数のコラボレーション端末のうち、最初にフォント照会要求を送信したコラボレーション端末がサポートするフォントを前記目標フォントとして決定することと、
    各前記候補フォントのスコアを決定し、スコアが最も高い前記候補フォントを前記目標フォントとして決定することであって、各前記候補フォントのスコアは、前記候補フォントをサポートするコラボレーション端末の数に基づいて決定される、こととのうちのいずれか1つを含む、
    ことを特徴とする請求項8に記載のテキストの組版方法。
  10. 前記第1端末は、前記元のフォントをサポートする場合、前記元のフォントで前記対象テキストを表示するステップと、
    前記第1端末は、前記元のフォントの文字サイズデータを第4端末に送信するステップであって、前記第4端末は、前記複数のコラボレーション端末のうち前記元のフォントをサポートしないコラボレーション端末である、ステップとを更に含む、
    ことを特徴とする請求項1に記載のテキストの組版方法。
  11. 前記元のフォントの文字サイズデータは、前記元のフォントの文字幅と前記元のフォントの文字高さとを含み、
    前記第1端末は、前記元のフォントの文字サイズデータに基づいて、前記第1フォントで表示される前記対象テキストを組版するステップは、
    前記対象テキストの組版方向を決定するステップと、
    前記対象テキストの組版方向が横書きである場合、前記元のフォントでの前記対象テキストの文字幅と前記第1フォントでの前記対象テキストの文字幅との差である第1差を決定し、前記第1差が正の値である場合、前記対象テキストの文字の横座標値を調整し、前記第1差が負の値である場合、前記対象テキストの文字に対して縮小処理を行い、
    前記対象テキストの組版方向が縦書きである場合、前記元のフォントでの前記対象テキストの文字高さと前記第1フォントでの前記対象テキストの文字高さとの差である第2差を決定し、前記第2差が正の値である場合、前記対象テキストの文字の縦座標値を調整し、前記第2差が負の値である場合、前記対象テキストの文字に対して縮小処理を行うステップとを含む、
    ことを特徴とする請求項1に記載のテキストの組版方法。
  12. 前記元のフォントの文字サイズデータは、前記元のフォントの文字幅と前記元のフォントの文字高さとを含み、
    前記第1端末は、前記元のフォントの文字サイズデータに基づいて、前記第1フォントで表示される前記対象テキストを組版するステップは、
    前記対象テキストの組版方向を決定するステップと、
    前記対象テキストの組版方向が横書きである場合、前記第1フォントでの前記対象テキストの文字幅と前記元のフォントでの前記対象テキストの文字幅とが一致するように、前記第1フォントでの前記対象テキストの文字に対して第1拡大縮小処理を行い、
    前記対象テキストの組版方向が縦書きである場合、前記第1フォントでの前記対象テキストの文字高さと前記元のフォントでの前記対象テキストの文字高さとが一致するように、前記第1フォントでの前記対象テキストの文字に対して第2拡大縮小処理を行うステップとを含む、
    ことを特徴とする請求項1に記載のテキストの組版方法。
  13. 前記元のフォントの文字サイズデータは、前記元のフォントの文字幅と前記元のフォントの文字高さとを含み、
    前記第1端末は、前記元のフォントの文字サイズデータに基づいて、前記第1フォントで表示される前記対象テキストを組版するステップは、
    前記対象テキストの組版方向を決定するステップと、
    前記対象テキストの組版方向が横書きである場合、第1フォントでの前記対象テキストのフォントサイズを、前記第1フォントでの前記対象テキストの文字幅と前記元のフォントでの前記対象テキストの文字幅とが最も近いフォントサイズである第1フォントサイズに調整し、前記対象テキストのフォントサイズを前記第1フォントサイズに調整した後、前記元のフォントでの前記対象テキストの文字幅と前記第1フォントでの前記対象テキストの文字幅との差である第1差を決定し、前記第1差が正の値である場合、前記対象テキストの文字の横座標値を調整し、前記第1差が負の値である場合、前記対象テキストの文字に対して縮小処理を行い、
    前記対象テキストの組版方向が縦書きである場合、第1フォントでの前記対象テキストのフォントサイズを、前記第1フォントでの前記対象テキストの文字高さと前記元のフォントでの前記対象テキストの文字高さとが最も近いフォントサイズである第2フォントサイズに調整し、前記対象テキストのフォントサイズを前記第2フォントサイズに調整した後、前記元のフォントでの前記対象テキストの文字高さと前記第1フォントでの前記対象テキストの文字高さとの差である第2差を決定し、前記第2差が正の値である場合、前記対象テキストの文字の縦座標値を調整し、前記第2差が負の値である場合、前記対象テキストの文字に対して縮小処理を行うステップとを含む、
    ことを特徴とする請求項1に記載のテキストの組版方法。
  14. コラボレーション文書の複数のコラボレーション端末に適用されるテキストの組版装置であって、
    前記コラボレーション文書内の対象テキストに使用される元のフォントを決定するための第1決定モジュールと、
    前記複数のコラボレーション端末のうちの第1端末が前記元のフォントをサポートするか否かを判定するための第2決定モジュールと、
    前記第1端末が前記元のフォントをサポートしない場合、前記元のフォントの文字サイズデータを取得するための取得モジュールと、
    前記元のフォントの文字サイズデータの取得に成功した場合、前記第1端末がサポートする第1フォントで前記対象テキストを表示し、前記元のフォントの文字サイズデータに基づいて、前記第1フォントで表示される前記対象テキストを組版するための組版モジュールとを含む、
    ことを特徴とするテキストの組版装置。
  15. メモリと、プロセッサとを含む電子機器であって、前記メモリは、コンピュータプログラムを記憶するために用いられ、前記プロセッサは、前記コンピュータプログラムを実行することで、請求項1~12のいずれか1項に記載の方法を実施するために用いられる、
    ことを特徴とする電子機器。
  16. コンピュータプログラムを記憶しているコンピュータ読み取り可能な記憶媒体であって、前記コンピュータプログラムがプロセッサによって実行されると、請求項1~12のいずれか1項に記載の方法が実施される、
    ことを特徴とするコンピュータ読み取り可能な記憶媒体。
JP2024513148A 2021-08-26 2021-12-28 テキストの組版 Pending JP2024534171A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202110990091.8 2021-08-26
CN202110990091.8A CN113642290A (zh) 2021-08-26 2021-08-26 文本的排版方法和装置、电子设备及存储介质
PCT/CN2021/142056 WO2023024377A1 (zh) 2021-08-26 2021-12-28 文本的排版

Publications (1)

Publication Number Publication Date
JP2024534171A true JP2024534171A (ja) 2024-09-18

Family

ID=78424039

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2024513148A Pending JP2024534171A (ja) 2021-08-26 2021-12-28 テキストの組版

Country Status (4)

Country Link
EP (1) EP4379597A1 (ja)
JP (1) JP2024534171A (ja)
CN (1) CN113642290A (ja)
WO (1) WO2023024377A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4379596A1 (en) * 2021-08-26 2024-06-05 Beijing Kingsoft Office Software, Inc. Text typesetting
CN113642290A (zh) * 2021-08-26 2021-11-12 珠海金山办公软件有限公司 文本的排版方法和装置、电子设备及存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101587373B (zh) * 2009-06-30 2011-10-12 青岛海信移动通信技术股份有限公司 一种显示输入信息的方法、系统和装置
US20120079374A1 (en) * 2010-09-29 2012-03-29 Apple Inc. Rendering web page text in a non-native font
TW201243624A (en) * 2011-04-26 2012-11-01 Zeon Corp The process for solving the font missing problem
CN103699520A (zh) * 2012-09-27 2014-04-02 茵弗维尔株式会社 用于维持电子文档布局的字体处理方法
CN103312793B (zh) * 2013-05-28 2017-02-08 珠海金山办公软件有限公司 一种跨设备提醒文件所缺失的字体信息的方法和系统
CN103279452A (zh) * 2013-05-28 2013-09-04 珠海金山办公软件有限公司 一种在关联设备中匹配并传输字体文件的方法和系统
CN104881298A (zh) * 2014-02-27 2015-09-02 国际商业机器公司 用于在线显示文档的方法和装置
CN103902513A (zh) * 2014-03-21 2014-07-02 北京百度网讯科技有限公司 在终端设备中显示字体的方法及装置
CN111199137B (zh) * 2018-10-30 2024-03-19 广州金山移动科技有限公司 一种云端字体加载方法、装置
CN113051235A (zh) * 2021-04-22 2021-06-29 平安普惠企业管理有限公司 文档加载方法、装置、终端和存储介质
CN113642290A (zh) * 2021-08-26 2021-11-12 珠海金山办公软件有限公司 文本的排版方法和装置、电子设备及存储介质

Also Published As

Publication number Publication date
WO2023024377A1 (zh) 2023-03-02
CN113642290A (zh) 2021-11-12
EP4379597A1 (en) 2024-06-05

Similar Documents

Publication Publication Date Title
US8595643B2 (en) Scrolling a subsequently displayed block with a delay from a previously displayed block
US11954455B2 (en) Method for translating words in a picture, electronic device, and storage medium
CN109408752B (zh) 在线文档展示方法、装置以及电子设备
JP2024534171A (ja) テキストの組版
US11632437B2 (en) Image transformation in hybrid sourcing architecture
JP7553211B2 (ja) 二次元コード表示方法、装置、デバイス及び媒体
US20180143750A1 (en) Methods and apparatuses for configuring message properties in a networked communications system
CN110020304A (zh) 一种加载页面的方法和装置
CN111294395A (zh) 一种终端页面传输方法、装置、介质和电子设备
CN113515928A (zh) 电子文本生成方法、装置、设备及介质
CN113553123B (zh) 数据处理方法、装置、电子设备及存储介质
US9256592B1 (en) System for detecting and correcting broken words
US20190079908A1 (en) Method, device, client apparatus, and electronic device for presenting webpages
CN112258594A (zh) 文字显示方法、装置、电子设备及计算机可读存储介质
CN113282852A (zh) 编辑网页的方法和装置
CN115344718B (zh) 跨区域文档内容识别方法、装置、设备、介质和程序产品
US20140195894A1 (en) Method and system for continuous rendering of web content
CN112101239B (zh) 一种查找pdf文件中缺失字符的方法、装置和系统
CN110020320A (zh) 缓存页面图片的方法和装置
JP2019021255A (ja) デジタル出版システム、デジタル出版方法及びコンピュータプログラム
CN112825079B (zh) 一种信息展示的方法及装置
CN114626332A (zh) 内容展示方法、装置和电子设备
EP4379596A1 (en) Text typesetting
CN112988310A (zh) 一种基于多分屏浏览器的线上实验方法
CN113642289B (zh) 文本的排版方法和装置、电子设备、服务器及存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240226

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240226