JP2816181B2 - 文書処理装置 - Google Patents

文書処理装置

Info

Publication number
JP2816181B2
JP2816181B2 JP1136018A JP13601889A JP2816181B2 JP 2816181 B2 JP2816181 B2 JP 2816181B2 JP 1136018 A JP1136018 A JP 1136018A JP 13601889 A JP13601889 A JP 13601889A JP 2816181 B2 JP2816181 B2 JP 2816181B2
Authority
JP
Japan
Prior art keywords
line
character
document
word
characters
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.)
Expired - Fee Related
Application number
JP1136018A
Other languages
English (en)
Other versions
JPH032962A (ja
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP1136018A priority Critical patent/JP2816181B2/ja
Publication of JPH032962A publication Critical patent/JPH032962A/ja
Application granted granted Critical
Publication of JP2816181B2 publication Critical patent/JP2816181B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Document Processing Apparatus (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、ワードプロセツサ等の文書処理装置に係
り、特に日本語と英語等の外国語が混在する和欧混植の
テキストについて、各行の行末位置が正しく揃い、かつ
行内の各文字が適切な位置に配置された高品位の文書を
作成することが可能な文書処理装置に関する。
〔従来の技術〕
日本語と英語等の外国語が混在するテキストについ
て、両者の配置規則を共に満足しうる文字配置を行うた
めの従来技術としては、例えば特開昭63−133258号公報
に記載された方式がある。
この方式では、英単語が行末にかかつている場合、そ
の単語全体を次行の行頭に移す。また、行頭禁則文字が
行の先頭に位置している場合、当該行の直前の行の末尾
を調べ、そこに日本語文字があればその文字を、英文字
があればその文字を含む単語全体を当該行の先頭に移
す。さらに、以上の処理の結果、ある行の行末に空きが
生じた場合、行内に存在する日本語文字の間、日本語文
字と英単語との間、および英単語間の空白に空きを分散
させて分配し、行長を伸長させることによつて各行の右
端を揃える。このようにして、禁則処理とワードラツプ
処理とを統一的に行い、また行内における文字配置のバ
ランスを保持しつつ行揃えを行うようにしている。
また、行末にかかる英単語等が分割可能な場合、ハイ
フネーシヨンを行つて2行にまたがらせて配置する方式
としては、例えば特開昭63−49875号公報に記載された
方式がある。この方式では、行末にかかる単語について
分割可能な位置を調べ、分割が可能な場合にはハイフネ
ーシヨンを行い、分割不能の場合にのみ単語全体を次行
に追い出すことによつて全体としての追い出し量を少な
くしている。
〔発明が解決しようとする課題〕 上記従来技術では、禁則対象文字については必ず禁則
処理を行い、行末にかかる単語については必ず追い出し
処理を行う(特開昭63−133258号)、あるいはハイフネ
ーシヨンが可能であれば必ずハイフネーシヨンを行う
(特開昭63−49875号)というように、各行の文字配分
の決定に関する方針が固定されていた。このため、状況
に応じて最適な文字配置を行うことができず、条件によ
つては大きく文書品位が低下してしまう場合があるとい
う問題点があつた。
例えば、長い単語がわずかに行末からはみ出している
ような場合、追い出しやハイフネーシヨンを行うより
も、行内の文字間や単語間の空白を少しずつ縮めてはみ
出た部分を行内に追い込む方が、より文書品位の低下が
少ない場合がある。逆に、同じように行末からのはみ出
しがわずかな場合でも、行内の空白部を縮められる余裕
が少なく、追い込みを行うと空白部が詰まりすぎるよう
な場合には、ハイフネーシヨンを行つて単語の末尾を次
行に移す方が望ましい。
日本語の禁則処理についても、条件によつては無理に
禁則処理を行わないほうが良い場合がある。行長が短
く、行内に含まれる文字数が少ない場合、行揃えのため
の修正量が大きくなると、各文字間隔が伸びすぎ(また
は詰まりすぎ)て、読みやすさが大きく損なわれる。こ
れに対して、禁則対象文字の種類によつては、例外的な
位置に配置されてもあまり読みやすさを損なわないもの
がある。例えば、拗促音類(「ゃ」、「っ」など)は一
般に行頭禁則文字として扱われるが、これが行頭に配置
されることによつて読みやすさが損なわれる程度は、同
じ行頭禁則文字である句読点などに比べてかなり少な
い。従つて、禁則処理を行うと行長の修正量が大きくな
るような場合、むしろ禁則処理を行わないほうが良いこ
とがある。
しかし、上記従来技術では、各行の文字配分の決定に
関する方針が固定されているため、上記のような多様な
状況に柔軟に対処して最適な文字配置を決定することが
できないという問題点があつた。
本発明の目的は、高品位の文書を作成する文書処理装
置を提供することにあり、具体的には行長、各文字固有
の幅、最適な文字間隔とその伸縮許容量、禁則文字の有
無とその種別、単語の分割可能性等の諸条件を総合的に
判断して、最終的に最も高品位の文書が得られるように
各行に対する文字の配分と行内における各文字の配置を
決定するようにした文字処理装置を提供することにあ
る。
〔課題を解決するための手段〕
上記目的を達成するために、本発明の文書処理装置で
は、禁則文字または複数の文字からなる単語(例えば、
英単語)が、各行の標準的な最終位置を越えて入力され
た場合に、上記行内の文字間隔を縮めて禁則対象文字ま
たは単語を、その行内に配置するか、上記行内の文字間
隔を縮めて禁則対象文字または単語を次の行の先頭に配
置するか、あるいは単語を2行に分割して配置するか
を、予め決められた評価規則に従つて判断し、判断結果
に応じて、既入力文字の配置を自動的に修正するように
する。
具体的には、本発明の文書処理装置では、まず隣り合
う文字の種別に応じて文字間隔の最適値、伸長許容量お
よび収縮許容量を算出し、行内の各文字間隔を前記最適
値から伸縮させて行長の調整を行つた場合に、その伸縮
量と伸縮許容量との関係から、文字間隔の伸縮によつて
生じる文書品位の低下の程度を示す値(伸縮損失)を求
める。
次に、禁則対象文字が例外的な位置に配置された場合
に生ずる文書品位の低下の程度を示す値(禁則損失)を
求め、英語等の外国語の単語内部においてハイフネーシ
ヨンによる行分割の可能な位置を求め、その位置におい
て行を分割し、単語を2行またがつて配置した場合に生
じる文書品位の低下の程度を示す値(分割損失)を求
め、これらの値(伸縮損失,禁則損失,分割損失)の合
計損失を最小とするように各行の文字配分を決定し、決
定された文字配分に基づき、行内の文字間隔を伸縮して
行長を調整し、行末位置を正しく揃える。
さらに、改行文字またはその他の明示的な指示をする
ための文字を含み次行に文字列を連続して配置する必要
のない行については、上記行末位置の揃えを行わないよ
うにし、また、複数の英字からなる単語の内部において
行分割が行われ、単語が2行にまたがつて配置される場
合に、行末に置かれる単語の前半部分の末尾にハイフン
文字を付加して表示するようにする。
〔作用〕
本発明においては、文書の作成に際して文字列が入力
されると、まず隣り合う文字の種別の組合せに従つて、
その間に置くべき文字間隔の最適値、伸長許容量および
収縮許容量を求め、ある行に対する文字配分を決定する
際には、まず文字列を各文字固有の幅と最適な文字間隔
で行頭から配置した場合に行長があらかじめ定められた
長さに達する位置の前後において、行分割の可能な候補
位置を複数固定める。ここで、日本語文字同士の間およ
び日本語文字と英字等との間に関しては任意の位置を候
補位置として用いるが、英語等の外国語の単語内部に関
しては、その言語特有の規則により分割可能とされる位
置のみを候補位置とする。
次に、それらの候補位置のそれぞれについて、そこを
行末得位置とした場合に生じる合計損失(伸縮損失,禁
則損失,分割損失の和)を求め、合計損失の値が最小と
なる候補位置を行分割位置として選択するようにするの
で、その行に対する最も高品位文書に適した文字配分を
決定することができる。ここで、単語内部で行分割が行
われた場合には、行末にハイフン文字を挿入する。
次に、行長があらかじめ定められた長さに一致するよ
う、行内の各文字間隔を伸長(または収縮)させる。こ
こで、各文字間隔に対して伸び(または縮み)を割当て
る際には、それぞれの文字間隔の持つ伸長許容量(また
は収縮許容量)に比例した量を割当てることにより、文
字配置のバランスが失われないようにする。
ただし、改行文字またはその他の明示的な指示により
終了する行については、行内の文字間隔を前記最適値に
保つたままで文字を配置し、以上のような行末位置の揃
えは行わない。
このようにして各行に対する文字配分と、行内におけ
る各文字の配置とを決定することにより、各行の行末位
置が正しく揃い、かつ各文字間にそれぞれ適切な幅の間
隔が置かれた高品位な文書を得ることができる。
〔実施例〕
以下、本発明の一実施例を図面により説明する。
第1図は、本発明による行揃え処理の動作を説明する
ための図である。第1図(a)は、入力された文字列を
各文字固有の幅と最適な文字間隔で並べた状態を示して
いる。ここで、Lはあらかじめ定められた行長であり、
行揃えを行うには文字列を最適な位置て分割し、行内の
各文字間隔を伸縮して行長をこのLに合わせなければな
らない。からまでの各位置は、それぞれ行分割可能
な候補位置を示している。より前、およびより後で
も行分割は可能であるが、文字間隔の必要伸縮量が大き
くなりすぎるため候補から除外してある。また、英単語
exampleの内部においてハイフネーシヨンを行つて分割
できる位置は、英語特有の規則により、とで示す2
箇所のみである。
第2図は、からまでの各候補位置について、そこ
で行分割を行つた場合に生じる伸縮損失,禁則損失,分
割損失およびその和(合計損失)の値を示す表図であ
る。この表図に示すように、候補位置が本来の行末位置
行から離れ、文字間隔の必要伸縮量が増大するほど伸縮
損失は大きくなる。ここで、との2箇所における伸
縮損失には、ハイフネーシヨンにより行末に挿入される
ハイフン文字の幅に対応する補正が加えてある。また、
,,のいずれかで行分割を行う場合には、禁則対
象文字が例外的な位置に配置される結果になるため禁則
損失が発生する。同様に、とのいずれかで行分割を
行う場合には、単語の分割による分割損失が発生する。
この例の場合には、伸縮損失,禁則損失,分割損失の和
である合計損失の値が最小となる行分割位置はである
と判断し、ここで行分割を行う。
上述した伸縮損失,禁則損失,分割損失の値の具体的
意味、及び設定方法については、第6図及び第7図を用
いて後述する。
第1図(b)は、上述した行揃え処理を行つた結果を
示す図である。ここに示すように、この例では単語exam
leにハイフネーシヨン行い、2行にまたがつて配置する
結果となつている。また、各文字間隔を伸縮することに
よつて行長が調整され、行末位置が正しく揃えられてい
る。
第3図は、本発明の一実施例における文書処理装置の
構成図である。本実施例の文書処理装置は、中央処理装
置(CPU)201,主記憶装置(MEM)202,フレームメモリ
(MF)203,CRTコントローラ(CRTC)204,デイスプレイ
装置(CRT)205,ビツトマツププロセツサ(BMP)206,シ
ステムバス207,キーボード208,マウス209,キーボードイ
ンターフエース(KB I/F)210,フロツピーデイスク装置
211,ハードデイスク装置212,フロツピーデイスクインタ
ーフエース(FD I/F)213,ハードデイスクインターフエ
ース(HD I/F)214,レーザービームプリンタ(LBP)21
5,プリンタインターフエース(PR I/F)216,通信インタ
ーフエース(COMM I/F)217、および単語辞書(DICT)2
18を備える。
CPU210は、マイクロプロセツサおよび周辺回路等から
構成される。MEM202は、プログラムおよびデータを格納
する。FM203は、表示画面全体に対応するビツトマツプ
データを保持し、この内容がCRTC204により表示信号に
変換されてCRT205上に表示される。BMP206は、FM203の
内容に対して文字描画,図形描画,塗り潰し,ブロツク
転送等を行う機能を有し、高速な表示の更新を可能にす
る。またシステムバス207はこれらの各装置を接続す
る。
キーボード208は文字データ入力用のデバイス、マウ
ス209は位置指定用のデバイスであつて、これらはKB I
/F 210を介してシステムバス207に接続される。フロツ
ピーデイスク装置211およびハードデイスク装置212は、
プログラムや文書フアイルを保持するための補助記憶装
置であり、それぞれFD I/F 213およびHD I/F 214を
介してシステムバス207に接続される。LBP215は、文書
印刷用の高解像度の出力装置であり、PR I/F 216を介
してシステムバス207に接続される。COMM I/F 217
は、システムを外部のネツトワークや通信回線と接続す
る。DICT218は、単語内における分割可能位置を決定す
る際に用いられる辞書であり、例えば単語exampleはex
−am−pleのように2箇所で分割可能であるといつたデ
ータを保持している。DICT218はデータフアイルとして
ハードデイスク装置行212内に格納される。
なお、ハードウエア構成については、他の構成も考え
られ、一部を変更して実施することが可能である。
第4図は、本発明の一実施例における文書処理プログ
ラムの機能構成図である。本実施例では、ユーザの操作
に従い、第4図に示す文書処理プログラム301によつ
て、文書の入力,編集,整形,印刷等を行う。
この文書処理プログラム301は、ユーザインターフエ
ース制御部302,フアイル入出力制御部303,編集制御部30
4,整形制御部305,印刷制御部306、および文書データ管
理部307から構成される。
ユーザインターフエース制御部302は、デイスプレイ
画面上に文書データ、操作メニユーなどを表示し、また
ユーザから入力される操作指示を解釈実行する。フアイ
ル入出力制御部303は、文書フアイルとの間で文書デー
タの入出力を行う。編集制御部304は、文字列の挿入/
削除/置換/検索などの入力・編集操作を行う。整形制
御部305は、文字の書体やサイズの変更、行末位置の揃
えなどの整形処理を行う。印刷制御部306は、整形され
た文書データを出力装置に転送し、印刷を行う。文書デ
ータ管理部307は、文字列データ、書式情報等から構成
される文書データをメモリ上に保持し、これを管理す
る。
また、オペレーテイングシステム308は、文書処理プ
ログラム301を含む各種業務プログラムの実行の制御、
文書処理システムを構成する各種ハードウエア装置の管
理などを行う。なお、文書処理プログラムから文書フア
イルや単語辞書フアイルおよび各種ハードウエア装置等
にアクセスする場合には、オペレーテイングシステム30
8を介して処理が行われる。
第5A図〜第5C図は、本発明の一実施例において、入力
文字列を読み込み、これを各行の長さがあらかじめ定め
られた行長に一致するように整形し、配置していく処理
の全体を示すフローチヤートである。以下、この図に従
つて本発明における行揃え処理の概略を説明する。
まず、入力文字の有無を判定し(401)、入力文字が
あれば、トークンを1個読み込む(402)。ここで、ト
ークンとは、文字配置に際して処理の基本単位となるデ
ータ要素のことで、日本語文字の場合は1文字,英単語
の場合は1語を1個のトークンとして扱う。
次に、トークンを構成する各文字の幅を求め(40
3)、またトークンの直前およびトークンを構成する各
文字同士の間に置く文字間隔の属性(最適値,伸長許容
量および収縮許容量)を求める(404)。文字幅は、文
字コード,書体,フオントサイズ等によつて異なる。ま
た、文字間隔の属性は隣り合う文字の種別の組合せ(漢
字と仮名,仮名と英字など)によつて決まる。
次に、行末にまだ余白があるかどうかを判定する(40
5)。余白があれば、すなわちこれまでに配置してきた
文字列の自然長(各文字の幅と、それらの間の文字間隔
の最適値の総和)が、まだあらかじめ定められた行長に
達していなければ、ステツプ406に進む。そうでなけれ
ばステツプ418に進む。
ステツプ406では、トークンが改行文字等、明示的に
改行を指示するものであるかどうかを判定する。もしそ
うであれば、その行に対する処理を終了して(文字配置
は現在の状態で確定)次行の処理に移り(407)、ステ
ツプ401に戻る。そうでなければステツプ408に進む。
ステツプ408では、トークンをそのまま行末に配置す
ることができるかどうかを判定する。配置が可能であれ
ばステツプ409へ、そうでなければステツプ415へ進む。
ステツプ409では、トークンの直後を行分割一として
文字配分を決定し、文字間隔を伸縮して行揃えを行つた
場合に生じる伸縮損失の値を求める。次に、その伸縮損
失が一定の値Pmaxより小さいかどうかを判定する(41
0)。損失がPmaxより小さければ、すなわち、そこが本
来の行分割位置に十分近ければ、トークン直後の位置を
行分割の候補位置として登録し(411)、ステツプ412へ
進む。そうでなければステツプ414へ進む。
ステツプ412では、トークンが英単語であるかどうか
を判定し、そうであればステツプ413へ、そうでなけれ
ばステツプ414へ進む。ステツプ413では、前記単語辞書
(第3図218)を検索してその語が分割可能であるかど
うかを調べ、分割が可能な場合には、単語内の各分割可
能位置をそれぞれ行分割の候補位置として登録する。ス
テツプ414では、トークンを行内に仮に配置し、ステツ
プ401に戻る。
ステツプ415は、そのまま配置するとトークンがちよ
うど行末にかかる状態にある場合を表している。ここで
は、トークンが英単語であるかどうかを判定し、もしそ
うであれば、ステツプ416へ、そうでなければステツプ4
17へ進む。ステツプ416での処理は前記ステツプ413の場
合と同じであるため、ここでは省略する。ステツプ417
では、トークンを次行に仮に配置し、ステツプ401に戻
る。
ステツプ418は、これまでに配置してきた文字列の自
然長が既にあらかじめ定められた行長を越えている場合
を表している。ここでは、トークンが改行文字等明示的
に改行を指示するものであるかどうかを判定し、もしそ
うであればステツプ425へ、そうでなければステツプ419
へ進む。
ステツプ419では、トークンの直前を行分割位置とし
て文字配分を決定し、文字間隔を伸縮して行揃えを行つ
た場合に生じる伸縮損失の値を求める。次に、その伸縮
損失が一定の値Pmaxより小さいかどうかを判定する(42
0)。損失がPmaxより小さければ、トークン直前の位置
を行分割の候補位置として登録し(421)、ステツ422へ
進む。そうでなければステツプ412へ進む。
ステツプ422では、トークンが英単語であるかどうか
を判定し、そうであればステツプ423へ、そうでなけれ
ばステツプ424へ進む。ステツプ423での処理は前記ステ
ツプ413の場合と同じであるため、ここでは省略する。
ステツプ424では、トークンを次行に仮に配置し、ステ
ツプ401に戻る。
ステツプ425は、文字列の自然長が既にあらかじめ定
められた行長を大きく上回つたか、または自然長が行長
を越えた後で改行が指示された状態を表している。ここ
では、これまでに行分割候補位置として登録されたそれ
ぞれの位置について、そこで行を分割した場合に生じる
伸縮損失,禁則損失,分割損失の値と、それらの和であ
る合計損失の値とを求める。
次に、これらの候補位置のうち、合計損失の値が最小
となるものを選択して行分割位置とし、行に対する文字
配分を決定する(426)。次に、仮に配置された文字列
の一部を移動して、実際の文字配分をステツプ426で決
定したものに一致させる。また、選択された行分割位置
が英単語内部であれば、行末にハイフン文字を挿入する
(427)。
ここで、合計損失が最小となる候補位置が複数個ある
場合は、それらのうち行頭に最も近いものを選ぶものと
する。また、候補位置が1個も登録されていない場合
は、ユーザからの直接の指示により行分割位置を決める
ものとする。
次に、行長があらかじめ指定された長さに一致するよ
う、行内の各文字間隔を伸長(または収縮)させて行長
の調整を行い、行内における各文字の位置を確定する
(428)。ここで、必要となる伸び(または縮み)を各
文字間隔に割当てる際には、それぞれの文字間隔が持つ
伸長許容量(または収縮許容量)に比例した量を割当て
ることにより、行全体の文字配置のバランスが損なわれ
ないようにする。
行長調整の終了後、次行の処理に移り(429)、ステ
ツプ401に戻る。入力文字があるかぎり同様にして処理
を続行し、入力の終わりに達した時点で全体の処理を終
了する。
次に、本実施例における整形処理において行分割位置
を決定する際に必要となる合計損失(伸縮損失,禁則損
失,分割損失の和)の値を求める処理について、さらに
詳しく説明する。
第6図501は、隣り合う文字の種別の組合せと、その
間に置く文字間隔の属性(最適値,伸長許容量および収
縮許容量)との対応を示す文字間隔テーブルの例であ
る。このテーブルから、例えば漢字の次にかなが続いて
いる場合、文字間隔の最適値は10、伸長許容量は20、収
縮許容量は5であることがわかる。すなわち、この組合
せにおける最適な文字間隔は10であるが、必要な場合に
は、最小値5(10−5)から最大値30(10+20)までの
範囲内で文字間隔を伸縮できることを示している。
第7図601は、各禁則対象文字と、その文字が行頭ま
たは行末に配置された場合に生じる文書品位の低下(禁
則損失)との対応を示す禁則文字テーブルの例である。
このテーブルから、例えば先頭禁則文字である「。」が
行頭に配置された場合には1000ポイントの禁則損失を生
じるが、同じく行頭禁則文字である「ゃ」の場合、その
禁則損失は300ポイントにすぎないことなどがわかる。
なお、これらのテーブルの内容および単語内部で行分
割が行われた場合に生じる分割損失等の文書整形用パラ
メータ類の値は、文書の書式に応じてそれぞれ適切なも
のが選択されて使用される。また、ユーザが対話的にこ
れらの値を指定することも可能である。
これらのパラメータ類を参照しつつ、ある位置で行を
分割した場合に生じる合計損失の値を求める処理は、以
下のようになる。
まず、あからじめ指定された行長をLとする。また、
行頭からi番目の文字をC[i]、その文字幅をW
[i]で表す。また、行頭からi番目の文字間隔、すな
わち文字C[i]とC[i+1]との間の文字間隔につ
いて、その最適値をSo[i]、伸長許容量をSx[i]、
収縮許容量をSr[i]で表すものとする。
ここでは、行頭からn文字目の直後、すなわち文字C
[n]とC[n+1]との間を行分割位置とした場合に
ついて考える。
最初に伸縮損失を求める。行頭からこの位置まで、す
なわち文字C[1]から文字C[n]までの文字列の自
然長(各文字をそれぞれの固有の幅と最適な文字間隔で
並べたときの長さ)をLnとすると、その値は、 となる。この自然長があらかじめ定められた行長に満た
ない場合、文字間隔の伸長が、逆にあらかじめ定められ
た行長を越えている場合、文字間隔の収縮が必要とな
り、それぞれ伸縮損失が発生する。ただし、行分割位置
が英単語の内部である場合には行末にハイフン文字が付
加されるので、実際にはそれに対応する補正を加えた値
を用いる必要がある。ハイフン文字の幅をWh、ハイフン
文字とその直前の英字との間に置く文字間隔をShとする
と、補正済み自然長Lmは次のようになる。
補正済み自然長Lmが与えられた行長Lに満たない場合
の必要伸長量Yxは、 Yx=L−Lm となる。逆にLmが与えられた行長Lを越えている場合の
必要収縮量Yrは、 Yr=Lm−L である。
ところで、文字間隔をその最適値から伸縮させること
によつて生じる文書品位の低下は、伸縮量が大きくなる
に従つて急速に増大する。そこで、伸縮損失を次のよう
に定義する。すなわち、伸縮損失は、行内に含まれる各
文字間隔の持つ伸長許容量(または収縮許容量)の総和
に対する、必要伸長量(または必要収縮量)の比の2乗
に比例するものとする。すると、求める伸縮損失Psの値
は、 で与えられる。ここで、Kは比例定数である。
次に禁則損失について考える。文字Cが行頭および行
末に配置された場合に生じる禁則損失の値は、前記禁則
文字テーブル(第7図601)を参照することにより求め
ることができる。その値をそれぞれPkh(C)およびPkt
(C)で表すものとすると、文字C[n]とC[n+
1]との間で行を分割する場合に生じる禁則損失Pkは、
文字C[n]が行末に配置されることによつて生じる禁
則損失と、文字C[n+1]が行頭に配置されることに
よつて生じる禁則損失との和であるから、 Pk=Pkt(C[n])+Pkh([n+1]) で与えられる。
最後に、分割損失は英単語内部で行分割を行う場合に
のみ発生し、その値はパラメータとして与えられる一定
値である。その値をHとすると、分割損失Phは、 となる。
以上のようにして伸縮損失,禁則損失および分割損失
の値が得られれば、合計損失Ptの値はそれらの和として
求めることができる。すなわち、 Pt=Ps+Pk+Ph となる。
次に、合計損失が最小となる候補位置を選択すること
によつて行に対する文字の配分を決定した後、行長があ
らかじめ指定された長さに一致するよう、行内の各文字
間隔を伸長(または収縮)させて調整を行う処理につい
て、さらに詳しく説明する。
行長の調整を行う際には、行全体としての伸長量(ま
たは収縮量)が前記の必要伸長量(または必要収縮量)
と一致するように、各文字間隔に伸び(または縮み)を
割当てなければならない。この場合、行内の文字配置の
バランスが損なわれないよう、各文字間隔に対して、そ
れぞれが持つ伸長許容量(または収縮許容量)に比例し
た量の伸び(または縮み)を割当てるようにする。
従つて、行全体としての必要伸縮量をY、行内に含ま
れる文字間隔の総数をN、各文字間隔の持つ伸縮許容量
をSv[i](i=1,2,…,N)、その総和をTSとすれば、
各文字間隔に割当てるべき補正量F[i]は、 F[i]=Y・(Sv[i]/TS) となる。しかし、一般に文書処理装置の持つ字間調整の
精度は必ずしも十分に高くはないので、誤差が累積する
のを避けるため、行頭からの補正量の部分和と、行頭か
らの伸縮許容量の部分和との比が、常に必要伸縮量と伸
縮許容量の総和との比に最も近くなるように各補正量を
割当てていく。
第8図は、各文字間隔に割当てる補正量を計算する手
続きを具体的に示すフローチヤートである。まず、カウ
ンタiをリセツトし(701)、伸縮許容量の部分和SS、
割当て済み補正量の部分和FSを0に初期化する(70
2)。次に、カウンタiをインクリメントする(703)。
ここで、i番目の文字間隔の持つ伸縮許容量はSv[i]
であるから、これを伸縮許容量の部分和SSに加算する。
このとき、この文字間隔に割当てるべき補正量F[i]
は、この文字間隔までに割当てられているべき補正量の
和から、既に割当て済みの補正量の和を引いた値にすれ
ばよいので、 F[i]=Y・(SS/TS)−FS となる(704)。次に、求めた補正量を部分和FSに加え
た後(705)、カンウンタiを文字間隔の総数Nと比較
する(706)。iがN未満であれば、次の文字間隔につ
いての処理に進み、ステツプ703に戻る。iが既にNに
達していれば処理を終了する。
行長を伸縮させる場合には、各文字間隔の最適値So
[i]に、対応する補正量F[i]を加えて補正された
文字間隔を求め、これらの補正された文字間隔を用いて
行内の各文字を配置する。逆に行長を収納させる場合に
は、各文字間隔の最適値So[i]から対応する補正量F
[i]を引いて補正された文字間隔を求め、これらを用
いて行内の各文字を配置する。
なお、本実施例では単語分割処理の対象となる外国語
の例として英語のみを扱つたが、前記単語辞書(第3図
218)を入れ換える等の手段により、他の言語(例え
ば、独語,ロシア語等)にも対応することができる。ま
た、本実施例では前記単語辞書を検索することにより単
語内での分割可能位置を調べる方法を取つたが、対象と
する言語特有の規則に従つてアルゴリズム的に分割可能
位置を検出する方法も適用可能である。また、本実施例
では伸縮損失の値は伸縮許容量の総和に対する必要伸縮
量の比の2乗に比例するものとしたが、これらの値の関
係によつて決まる何らかの他の関数として伸縮損失を定
義しても良い。また、本実施例では入力文字列を順に並
べてゆく場合についてのみ並べたが、挿入,削除,文字
サイズ変更などの編集操作の後で文書を再整形する場合
にも本発明が適用できることはもちろんである。
〔発明の効果〕
以上説明したように、本発明によれば、高品位の文書
を得ることができる。具体的には、各行の行末位置を揃
えて文書を整形する際、文字間隔がその最適値から外れ
ることによつて生じる文書品位の低下と、禁則対象文字
が例外的な位置に配置されることによつて生じる文書品
位の低下と、単語が分割されて2行にまたがつて配置さ
れることによつて生じる文書品位の低下とを総合的に判
断して最適な文字配置を決定することができ、行長の調
整に際しては、全体としての文字配置のバランスが損な
われないよう、適切な文字間隔の伸縮が行われる。従つ
て、各種の条件の違いにかかわらず、常に読みやすい高
品位の文書を得ることが可能になる。
【図面の簡単な説明】
第1図は、本発明による行揃え処理の動作例を示す説明
図、第2図は、行分割をおこなう位置と伸縮損失,禁則
損失,分割損失およびその合計損失との対応関係を示す
表図、第3図は、本発明の一実施例における文書処理装
置の構成図、第4図は、本発明の一実施例における文書
処理プログラムの機能構成図、第5A図〜第5C図は、本発
明の一実施例において、入力文字列を読み込み、これを
各行の長さがあらかじめ定められた行長に一致するよう
整形しつつ配置していく処理の全体を示すフローチヤー
ト、第6図は、隣り合う文字の種別の組合せと、文字間
隔の最適値、伸張許容量および収縮許容量との対応を示
す文字間隔テーブル、第7図は、各禁則対象文字と、そ
の文字が行頭や行末に置かれた場合に生じる禁則損失と
の対応を示す禁則文字テーブル、第8図は、行長調整の
際に行内の各文字間隔に割当てる補正量を計算する手続
きを示すフローチヤートである。 501……文字間隔テーブル(隣り合う文字の種別の組合
せと、その間に置くべき文字間隔の最適値、伸張許容値
および収縮許容量との対応を示すテーブル)、601……
禁則文字テーブル(禁則対象文字と、それらが行頭や行
末に置かれた場合に生じる禁則損失との対応を示すテー
ブル)。

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】文字入力手段から入力された複数の文字か
    ら行を構成し、複数の行からなる文書を表示する文書処
    理装置において、 所定の禁則文字または文書を表示する複数の文字からな
    る単語が、各行の所定の最終位置を越えて入力された場
    合に、上記行内の文字間隔の伸縮により生じる文書品位
    の低下の程度を示す第1の値と、禁則文字の配置位置に
    より生じる文書品位の低下の程度を示す第2の値と、複
    数の文字から構成される単語を上記行と次行とに分割し
    て配置することによつて生じる文書品位の低下の程度を
    示す第3の値とに応じて、上記行内に配置すべき文字列
    を決定し、該行内の文字間隔を増減することによつて行
    長を調整し、表示するようにしたことを特徴とする文書
    処理装置。
  2. 【請求項2】前記単語を2行以上に分割して表示する場
    合に、行末に置かれる上記単語の前半部分の末尾に、ハ
    イフン文字を付加するようにしたことを特徴とする請求
    項第1項記載の文書処理装置。
  3. 【請求項3】前記文字入力手段から改行文字が入力され
    た場合に、該改行文字を含む行の行長の調整を行わない
    ようにしたことを特徴とする請求項第1項記載の文書処
    理装置。
  4. 【請求項4】前記文書処理装置は、読め複数の単語の分
    割可能な位置を登録したメモリを備え、前記入力手段か
    ら入力された単語を2行以上に分割して配置する場合
    に、上記メモリを参照することにより、上記単語を予め
    定められた分割位置でのみ分割するようにしたことを特
    徴とする請求項第1項記載の文書処理装置。
  5. 【請求項5】前記入力手段から入力された複数の文字
    は、順次隣接する文字の種別に応じて定められた所定の
    標準的な文字間隔で配置され、上記文字間隔を伸縮する
    場合には、各文字間の上記標準的な文字間隔の比率を一
    定にしたまま伸縮するようにしたことを特徴とする請求
    項第1項記載の文書処理装置。
  6. 【請求項6】入力された複数の文字から行を構成し、複
    数の行からなる文書を表示する文書処理方法において、 所定の禁則文字または文書を表示する複数の文字からな
    る単語が各行の所定の最終位置を越えて入力された場合
    に、上記行内の文字間隔の伸縮により生じる文書品位の
    低下の程度を示す第1の値と、禁則文字の配置位置によ
    り生じる文書品位の低下の程度を示す第2の値と、複数
    の文字から構成される単語を上記行と次行とに分割して
    配置することによつて生じる文書品位の低下の程度を示
    す第3の値とに応じて、上記行内に配置すべき文字列を
    決定し、該行内の文字間隔を増減することによつて行長
    を調整し、表示することを特徴とする文書処理方法。
JP1136018A 1989-05-31 1989-05-31 文書処理装置 Expired - Fee Related JP2816181B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1136018A JP2816181B2 (ja) 1989-05-31 1989-05-31 文書処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1136018A JP2816181B2 (ja) 1989-05-31 1989-05-31 文書処理装置

Publications (2)

Publication Number Publication Date
JPH032962A JPH032962A (ja) 1991-01-09
JP2816181B2 true JP2816181B2 (ja) 1998-10-27

Family

ID=15165262

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1136018A Expired - Fee Related JP2816181B2 (ja) 1989-05-31 1989-05-31 文書処理装置

Country Status (1)

Country Link
JP (1) JP2816181B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10283353A (ja) * 1997-04-01 1998-10-23 Sanyo Electric Co Ltd 文書処理装置、文書処理方法及び記録媒体
JP2000335396A (ja) 1999-03-19 2000-12-05 Honda Motor Co Ltd ブレーキ用マスターシリンダ
JP4100951B2 (ja) 2002-04-05 2008-06-11 川崎重工業株式会社 ブレーキ用マスターシリンダ装置
JP2006163651A (ja) * 2004-12-03 2006-06-22 Sony Computer Entertainment Inc 表示装置、表示装置の制御方法、プログラム及びフォントデータ
JP4786444B2 (ja) * 2006-07-12 2011-10-05 シャープ株式会社 文書処理装置、そのプログラムおよび該プログラムを記録したコンピュータ読取り可能な記録媒体、電子表示器、ならびに文書処理方法
CN110968988A (zh) * 2019-12-06 2020-04-07 歌尔科技有限公司 显示处理方法、装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
JPH032962A (ja) 1991-01-09

Similar Documents

Publication Publication Date Title
EP0117406B1 (en) Automatically balancing and vertically justifying text and/or graphics
EP0117405B1 (en) Automatically balancing and vertically justifying text and/or graphics
JP2816181B2 (ja) 文書処理装置
JP3083314B2 (ja) 文書処理方法及び装置
JPH04128970A (ja) 文書処理システム
JPH08161309A (ja) 文書作成装置
JPS6017487A (ja) 文書作成装置の行ピツチ自動設定方法
JP2010262559A (ja) Gui調整プログラム、gui調整装置、情報処理方法。
US5299294A (en) Method for compensating for font resolution conversion error
US4689764A (en) Method and apparatus for formatting a line of text containing a complex character prior to text justification
US4402058A (en) Keyboard mismatch correction
JP2773145B2 (ja) 文書整形方法および文書処理装置
JP3076348B2 (ja) 文書整形装置及び文書整形方法
JPH0969098A (ja) 文書作成装置
JP3437293B2 (ja) 文字出力方法及び文字処理装置
JPH0581247A (ja) 文書整形方法
JP3470926B2 (ja) 文書処理装置および文書処理方法
CA1172373A (en) Method of justification for a line of text containing complex characters
JP2682873B2 (ja) 表形式文書の認識装置
KR900009116B1 (ko) 문서 작성 장치의 문서 작성 방법
JP3084817B2 (ja) 文字出力装置
JPH05303577A (ja) 文書作成装置
JPH05334350A (ja) 機械翻訳装置
JPH0356189B2 (ja)
JPH03269665A (ja) 文字原図および文字フォント管理方式

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees