JPH04127356A - Document processor - Google Patents

Document processor

Info

Publication number
JPH04127356A
JPH04127356A JP2247385A JP24738590A JPH04127356A JP H04127356 A JPH04127356 A JP H04127356A JP 2247385 A JP2247385 A JP 2247385A JP 24738590 A JP24738590 A JP 24738590A JP H04127356 A JPH04127356 A JP H04127356A
Authority
JP
Japan
Prior art keywords
frame
character
document processing
information
rotation
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
JP2247385A
Other languages
Japanese (ja)
Inventor
Eiji Saoyama
佐尾山 英二
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.)
JustSystems Corp
Original Assignee
JustSystems Corp
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 JustSystems Corp filed Critical JustSystems Corp
Priority to JP2247385A priority Critical patent/JPH04127356A/en
Publication of JPH04127356A publication Critical patent/JPH04127356A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To make the character-string hidden by rotating a frame visible by relocation by relocating a series of character-strings in the frame detected by a detecting means to avoid the frame rotated by a rotating means. CONSTITUTION:On recording paper 20, there are frames 21 - 23 for expanding a character-string (document), and a size of the frame is set by operating a mouse 9. Subsequently, one suitable frame is designated by the mouse, etc., the character-string inputted from a keyboard 8 is expanded therein and a document is generated. In this case, desired frames 21 - 23 are rotated, and whether the frame having the character-string hidden by a part or all of its rotated frames 21 - 23 exists or not is detected, and the character-string in its detected frame is relocated so as to avoid these rotary frames 21 - 23. In such a way, the hidden character-string becomes visible.

Description

【発明の詳細な説明】[Detailed description of the invention] 【産業上の利用分野】[Industrial application field]

本発明は文書処理装置、詳しくは文書の作成及び編集を
行う文書処理装置に関するものである。
The present invention relates to a document processing device, and more particularly to a document processing device that creates and edits documents.

【従来の技術】[Conventional technology]

近年では、コンピュータ等を利用したデスクトップパブ
リッシング(所謂、DTP)が望まれている。 通常、この種のシステムにおいて、文書を作成する場合
、文書を展開する1つ1つの枠内に、キーボード等より
入力された文字を展開していくという操作を行う。
In recent years, desktop publishing (so-called DTP) using computers and the like has been desired. Normally, when creating a document in this type of system, an operation is performed in which characters input from a keyboard or the like are expanded into each frame in which the document is expanded.

【発明が解決しようとする課題】[Problem to be solved by the invention]

ところで、このDTPにおいては、文字であれば縦書き
横書き、画像であれば正立させる等にとられれることな
く、自由な方向に回転させることが望まれている。 また、枠回転を実現させたとしても問題は残る。すなわ
ち、その回転によってそれまで見えていた他の枠の一部
を隠す場合があ゛るがらである。 本発明はかかる従来技術に鑑みなされたものであり、枠
を回転することで隠れてしまう文字列を再配置させて見
えるようにする文書処理装置を提供しようとするもので
ある。
By the way, in this DTP, it is desired to rotate characters in a free direction without having to write vertically or horizontally, or to erect an image. Moreover, even if frame rotation is realized, problems remain. In other words, the rotation often hides a part of the other frame that was previously visible. The present invention has been made in view of such prior art, and it is an object of the present invention to provide a document processing device that allows character strings that would otherwise be hidden by rotating a frame to be rearranged and made visible.

【課題を解決するための手段】[Means to solve the problem]

この課題を解決するため本発明の文書処理装置は以下に
示す構成を備える。すなわち、ページ内に設定された少
なくとも1つの枠中に文字列或いは画像を展開表示して
いって文書の作成及び編集を行う文書処理装置であって
、所望とする枠を回転させる回転手段と、該回転手段で
回転させた枠の一部或いは全部によって隠される文字列
を有する枠が存在するか否かを検出する検出手段と、該
検出手段で検出された枠内の一連の文字列を前記回転手
段で回転された枠を避けるように再配置する文字列配置
手段とを備える。
In order to solve this problem, the document processing device of the present invention has the configuration shown below. That is, a document processing device that creates and edits a document by expanding and displaying a character string or an image in at least one frame set within a page, comprising: a rotation means for rotating a desired frame; a detection means for detecting whether or not there is a frame having a character string hidden by part or all of the frame rotated by the rotation means; and character string arrangement means for rearranging character strings so as to avoid the frame rotated by the rotation means.

【作用】[Effect]

かかる本発明の構成において、回転手段で所望とする枠
を回転させる。そしてその回転させた枠の一部或いは全
部によって隠される文字列を有した枠が存在するか否か
を検出手段で検出する。そして、その検出された枠内の
文字列を文字列配置手段によって回転枠を避けるように
再配置させるものである。
In this configuration of the present invention, a desired frame is rotated by the rotating means. Then, the detecting means detects whether there is a frame having a character string that is partially or completely hidden by the rotated frame. Then, the character string within the detected frame is rearranged by the character string arrangement means so as to avoid the rotating frame.

【実施例】【Example】

以下、添付図面に従って本発明に係る実施例を詳細に説
明する。 〈システム構成の説明〉 第1図は実施例における文書処理システムのブロック構
成図である。 図中、1は本システム全体を制御するCPUであり、2
は本装置に電源投入時点におけるブートプログラムを記
憶したROM、3は外部記憶装置から読み込んだプログ
ラム(後述する第6.10図のフローチャートに係るプ
ログラムなど)や、編集中の文書情報を記憶したり、C
PU1のワークエリアとして使用されるRAMである。 4は文字パターンを生成するために座標形式のデータを
記憶しているフォントメモリ(所謂アウトラインフォン
トを記憶している)、5は表示画面に表示するイメージ
を展開するVRAM、6はそのVRAM−5に展開され
た画像を表示するCRTデイスプレィである。7はフロ
ッピーディスク装置やハードディスク装置で代表される
磁気記憶装置であり、本装置における文書処理に係る各
種プログラム(RAM3にロードされる)や、文書情報
等を記憶している。8は文書を構成する文字或いは本シ
ステムに所定の指示を与えるためのキーボード、9はC
RTデイスプレィ6に表示画面上に表示されたグラフィ
ックカーソルの移動等を制御するためのマウスである。 10は実際に印刷処理する段階になったとき、SP録紙
1ページ分のイメージを展開可能な画像メモリ、11は
画像メモリ10に展開されたイメージに基づいて記録媒
体上に可視画像を形成するプリンタである。向、実施例
におけるプリンタ11はレーザビームプリンタとして説
明する。 通常、CRTデイスプレィ装置は、編集内容が確認でき
さえすれば良いので、その解像度はレーザビームプリン
タ等の高品位プリンタと比較して低いものを採用してい
る。印刷処理を行うときには、印刷対象の文書情報に従
いプリンタの解像度に合せた文字パターン等を、フォン
トメそり4より読み出したデータに従って発生させ、そ
れを画像メモリ】0に展開し、印刷する。 く枠の説明〉 第2図は実施例における文書の展開領域となる枠のレイ
アウト−例を示している。 図中、20は記録紙を表わし、21〜23は各文字列(
文書)を展開するための枠である。枠の大きさ及び設定
はマウス9を操作することで行う。具体的には、マウス
9を操作することで、表示画面に表示された記録紙を自
由にスクロールさせ、その中で任意の2つ点位置にグラ
フィックカーソルを移動させ、マウス9に設けられたボ
タンを押下(以下、クリックという)する。その2点を
矩形(=枠)の対角線の両端点としてとらえるわけであ
る。 この後、適当な枠を1つマウス等より指定し、その中に
キーボード8より入力された文字列(以下、実施例では
1文字も含まれる)を展開していって文書を作成してい
く。尚、文書等を入力した後でも、枠のレイアウトや大
きさは自由に変更可能である。 上述した構成において、各ページ内に複数の枠を設定し
、その中にキーボード8より人力した文字列を展開して
文書を作成してい(が、この際、RAM3には第3図に
示すようなデータが構築される。 図示で、31−1.2・・・nは各ページの情報(以下
、ページ情報という)を示している。先頭ページのペー
ジ情報31−1を見るとわかるが、実施例においては、
1つの枠内に対するデータは、枠ヘツダエリア32、文
字コードエリア33そして文字属性エリア34の3つ情
報から構成されている。 以下、各エリアを説明する。 枠ヘツダエリア32は、その枠に対しての編集に必要な
データが格納されている。実施例においては、この枠ヘ
ツダエリアは、第4図に示す如(、枠番号、リンク情報
、枠の大きさ(縦横の長さ)、枠の記録紙に対する座標
位置、枠内の文字数、回転角度、そして、その属性情報
を格納するエリアから構成されている。 枠番号とは注目枠を他の枠と区別するための番号であり
、同じ枠番号はない。これは、例えば、オペレータが枠
を新規に1つ設定するたびに、1つづつインクリメント
させれば良い。 リンク情報は注口枠に対して論理的に前後する枠を特定
する情報である。すなわち、注目している枠がどの枠に
続くものであるのか及び注目枠の後にどの枠が続(のか
を示すそれぞれの枠番号が記憶されている。また、前後
に連結される枠がない場合には、存在し得ない番号(例
えば、“O”等)を記憶させておく。因に、両方とも“
O”の場合には、注目枠は孤立した枠ということになる
。 また、大きさ、座標位置、文字数については上述した通
りである。また、実施例の装置においては、個々の枠は
記録紙に対して並行に配置するばかつてなく、1度単位
に回転可能になっている。 回転角度には、その値が格納される。 最後に、枠ヘツダの属性情報であるが、注目枠に対して
オペレータが簡単なコメントを付することができる属性
名情報、その枠内の文書が縦書きか横書きか等の文書の
組み方情報、文字サイズ情報(ポイント数)、文字の縦
横の倍率情報、欧文か漢字混じり文字かの書体情報(漢
字であれば明朝体やゴシック体、欧文文字であればフー
リエ、ヘリベテイカ、タイムズ等)、行間の距離情報、
文字間距離情報、斜体文字の角度情報、禁則処理の有無
の情報、枠内の情報が文字か画像かを示す情報等から構
成されている。この枠ヘツダの属性であるが、オペレー
タが積極的にそれら各情報を変更する旨の指示を与えな
い限りは、そのデフォルト値が設定されるようになって
いる。尚、枠内の情報がイメージの場合(イメージスキ
ャナより読み込む)、図示の文字コードエリア内に、イ
メージデータが格納される。 また、説明が前後するが、オペレータが枠を設定したと
きには、先ず、その枠ヘツダに対するエリア、文字コー
ドエリア、文字属性エリアそれぞれがRAM3内に確保
される。 次に、第3図における文字コードエリアであるが、この
エリアには、該当する枠内に展開された文書を構成する
個々の文字コードが格納される。 但し、注目枠内の情報がイメージである場合には、当然
のことながら文字属性エリア34は生成しない。 また、文字属性エリア34には、対応する文字コードエ
リア内の個々の文字に対する属性情報が格納される。個
々の文字に対しての属性情報には種々の情報があるが、
その一部を挙げると、文字サイズ情報、文字種(書体の
種類)、飾り情報(文字飾りの色、下線の有無、上線の
有無、網掛けの有無及びその網掛はパターンの種類、文
字列を囲む囲み罫線の有無等)、字形情報、文字色、文
字の縦方向の位置、文字間、表示パターンを反転させる
か否かの情報等である。このうち、字形情報は、表にな
る文字と影になる文字の2つの種類がある。表文字に対
しては横倍(50〜200%の範囲)、縦倍(50〜2
00%の範囲)、縁取りの有無、斜体の角度、斜体の方
向、回転方向(0〜360度の範囲)、塗り潰しパター
ンの種類を設定する情報がある。影文字に対しても、表
文字とほぼ同じパラメータを設定する情報が確保されて
いる。 上述した説明によれば、枠ヘツダエリア内の属性情報と
個々の文字に対する文字属性エリア内の情報が重複する
と思われるかもしれないが、そうではない。すなわち、
実施例のシステムにおいては、文字属性エリア内の情報
を枠ヘツダエリア内の属性情報に優先する。つまり、1
つの枠内に対するおおかたの属性は枠データエリア内の
属性情報で制御し、枠内の例えば[ここの文字だけを大
きくさせたい」という要求、つまり個々の文字に対する
出力形態は文字属性エリア内の情報に基づいて制御する
。 〈枠回転による文字よけ処理の説明〉 先に説明したように、実施例の各粋にはそれぞれ個別の
回転角度情報を持つことが可能になっている。 枠を回転させるためには、先ず、その回転させようとし
ている枠をマウス9により指定する。この枠指定を終え
ると、オペレータはその枠を回転させる旨の指示を与え
る。実施例では、この回転処理方法としては、マウス9
によるオペレータの感覚に合せて回転角度を決定する手
法と、回転角度をキーボード8等により数値として入力
する手法の2つが用意されている0回転対象枠を設定し
た後は、これらいずれかを選択する。キーボード8より
角度値を入力する手法を選択した場合には、単にその値
を入力すれば良い。また、マウス9により任意に回転さ
せる旨を選択した場合、マウス9の移動に伴って、該半
枠の輪郭線のみを随時描画更新し、オペレータにどの程
度回転しているのかを確認可能にする。そして、クリッ
クされたときに表示していた輪郭線の角度を注目枠の回
転角とする。 こうして、回転角度が決定した後は、注目枠内の枠ヘツ
ダ情報内に設けられた“回転角度”の欄にそのデータを
格納する。そして、当該枠がイメージ画像等であれば、
公知の次式の回転方程式、(夛) ” (2冗 3 −
7社 g)  (夛: )に基づいて各ドツトの新座標
位置を算出して画像全体の回転処理を行なう。但し、(
xo、yo)は回転前のドツト座標、θは回転角度、(
x、y)は回転後の座標である。 また、注目枠が文字情報からなる場合には、回転角度に
合せて、文字パターンを新たに発生し、それをその枠内
に属性情報に格納されている縦書きか横書きかを示す情
報(文字ピッチや文字サイズ等も含まれる)等に従って
展開しなおす。 第5図を用いて、マウス9により枠回転の具体的処理概
要を説明する。先ず、マウス9に連動するグラフィック
カーソル53を画面上で移動させることで、枠51の中
心を回転の中心とし、その輪郭!I52を図示の様に表
示更新させていく。オペレータは例えば図示の状態でク
リックすることで、枠51の回転角を決定する。すると
、図示の枠51゛に示す結果を得ることが可能になる。 CPUIの動作処理内容を第6図のフローチャートに従
って説明する。 オペレータがマウス9を操作することで、1つの枠を指
定すると、CPUIは先ず、ステップS1において、そ
の枠指定に係る処理を行なう。具体的には、マウス9が
クリックされた時点におけるグラフィックカーソルの座
標位置に基づき、その時点で表示されているページデー
タ内の枠ヘツダ情報中にある枠の座標位置、大きさ及び
回転角度等から、グラフィックカーソルがどの枠上にあ
るときクリックされたかを検索する。この検索処理によ
って、該当する枠(枠番号)が特定できたら、ステップ
S2に進んで、回転角度をキーボード8よりの数値入力
とするか、マウス9によるオペレータの感覚による入力
とするかを選択させる。 キーボード8による回転角度入力が選択された場合には
、ステップS3でその数値を入力し、ステップS7に進
む。 また、入力対象としてマウス9が選択された場合、処理
はステップS4に進み、そのマウス9がら相対移動距離
及びボタンスティタスを入力し、ステップS5でその結
果に基づく回転角度の更新及び得られた回転角度に基づ
く注目枠の輪郭線の表示更新を行なう。以下、このステ
ップS4.S5の処理を、マウス9がクリックされたと
判断するまで繰り返す。そして、クリックされた時点に
おける更新させた回転角度を、注目枠の回転角度として
決定し、ステップS7に進む。 いずれにせよ、ステップS1で指定された枠に対する回
転角度が決定すると、ステップS7において、その値を
注目枠の枠ヘツダ情報内に設けられた“回転角度”の欄
に格納する。そして、ステップS8において、その格納
された回転角度に基づいて、実際に注目枠の回転処理を
行なう。回転処理は、先に説明した通りであるので、こ
こでの詳述は割愛する。 以上のようにして、オペレータの指定した枠(及び枠内
情報)の回転処理が行なわれる。 ここで1つ問題となるのは、枠回転によって、例えばそ
の回転させた枠の背景に位置することになった枠内情報
をどのように扱うかである。 今、第7図(A)に示すように2つの枠70゜71が図
示の様に隣接している場合であって、枠71を回転させ
たとする(但し枠71が枠70に優先(手前に位置)す
る旨の指示を既に与えている)。この場合、CPU 1
の一番簡単な処理としては、同図(B)に示す如く、回
転後の枠71゛のみの表示処理を行ない、枠70内の情
報については何も手を付けないことである。しかしなが
ら、これでは枠70゛の背後に位置した文字は見ること
ができない。そこで、本実施例では、このように成る枠
を回転させたとき、その処理によって他の枠の一部が隨
れる場合には、同図(C)に示す如くr文字よけjを行
なわせることを可能にする。尚、同図(C)において、
枠70°の右下に表示されたマーク72は、その枠から
文字列が溢れたことを示している。このマーク72は、
枠70゛を大きくしなおして、内部の文字を全て表示で
きるようにするか、所定数の文字を削除するまで表示し
続ける。 ところで、場合によっては「文字よけ」を行なわせたく
ないという要求に応えるため、各粋の属性情報(第4図
参照)には、当該枠内の文字列を「文字よけ」の対象と
するか否かを示す情報を設けた(各枠毎にオペレータが
それらの属性を指定するが、初期値として文字列を展開
する枠には「文字よけコする旨のデータを格納しておく
)。勿論、イメージを展開している枠は、その情報の性
質上、「文字よけ」処理の対象外としている。 前述した如く、枠回転する以前は他の枠と重畳していな
くとも、その処理の後に重なる場合がある。従って、枠
回転によって、どの枠に重畳したかを判断しなければな
らない。 実施例では、第7図(B)に示す如く、枠71°のよう
に回転させたとき、その4隅の点A。 B、C,Dの座標位置を求め、これら各点がその時点で
表示されている各枠のヘッダ情報32中の座標位置及び
大きさ(回転角度も含む)に照し合せて判断する。例え
ば、第7図(B)の場合には、枠70のヘッダ情報中の
大きさ及び座標情報を照し合せれば、点Bが当該枠70
中に有ると判断できる。 さて、次に実施例における「文字よけ」処理を説明する
。 実施例における「文字よけ」は以下に示す法則に従って
処理を行なう。すなわち、 「注目している行が成る枠回転によってい(つかの文字
展開可能空間に分断された場合、展開幅の広い方に文字
列を展開する」 第8図(A)は、文字列展開枠81中に枠82(文字或
いはイメージを展開した枠)がある場合である。図示の
場合、枠82によって、枠81中の第3,4行にだ右に
分断された文字展開可能空間ができるが、左側の空間が
広いと判断したため図示のように文字列が展開される。 第8図(B)、(C)は同図(A)における枠82を異
なる角度で回転させたときの枠81の「文字よけ」処理
の結果を示している。 同図(B)においては、その第2,3行目の空間では右
側が、第4.5行では左側の文字展開可能空間が広いと
判断されたことを示している。また、同図(C)では、
各行とも左側が広いと判断されたことを示している。 CPLI 1の「文字よけ」の処理概要を第9図を用い
て説明する。 基本的には、各行ずつ一番広い文字展開可能空間を探し
出す。図示の場合、第1打金体が文字展開可能空間にな
り、第2行目の場合はβLとbとを比較し5大きい方(
図示ではβ、l)を文字展開可能空間とする。以下、決
定された文字展開可能空間−杯になるまで文字コードエ
リア33から読み込んだ文字を順次その空間に展開して
いく。 但し、個々の文字には文字属性(文字属性エリア34内
のデータ)があるので、その属性に基づいた文字パター
ンを発生し、展開していく。 1つの行に対する文字展開可能空間に対する文字展開が
終了すると、次の行に注目して同様の処理を繰り返し、
最終的に処理対象の行が注目枠の外に出てしまったとこ
ろでその処理を終了する(°、°表示されない文字に対
して処理を行なっても意味がない)。 上述した処理を整理すると第10図に示すフローチャー
トの如くになる。 先ず、ステップSllで初期値として第1行を注目行と
する。次のステップS12では、文字コードエリア33
及び文字属性エリア34の先頭から1文字分のデータを
読み込む。この後、ステップ313で注目行における最
も広い文字展開可能空間を選択する。ステップS14で
は先に読み込んだ1文字分のデータに基づいて発生した
場合の文字パターンの大きさと選択した文字展開可能空
間とを比較し、文字パターンがその空間に展開可能かど
うかを判断する(ステップ313において注目行中に文
字展開可能空間が存在せず、選択できなかった場合には
、当然展開不可と判断される)。 展開期と判断した場合には、ステップS15に進み、そ
の文字展開可能空間に発生した文字パターンを展開し、
次のステップS16で次の1文字分のデータを読み込み
、ステップS14に戻る。 こうして、文字展開可能空間に展開不可と判断されるま
で順次文字パターンを展開していく、さて、これから展
開しようとした文字パダーンが注目行に対して展開不可
と判断すると、処理はステップS17に進み、注目行を
次行に移す6そして、ステップ318では、その更新さ
れた注目行が現在処理している枠外に出たか否かを判断
する。そして、注目行が枠外に出たと判断されない限り
はステップ313に戻り、上述した処理を続行する。 以上の処理の結果、第7図(C)、第8図(B)、(C
)のような結果を得ることが可能となる。 尚、上述した処理では、注目行に発生させた文字パター
ンが1つでも展開可能であると判断した場合には、その
文字を展開したが、これだと、その行中に1文字だけし
か存在しない場合が発生する。 そこで、ステップS12又はステップ818からステッ
プS13に処理が移った場合(ステップS16からの処
理を除(とき)のみ、選択された文字展開可能空間がn
文字分(又は成る長さ℃)以上あるか否かを判断する。 こうすることで、少な(とも1行中に1文字しか存在し
ないという不自然さを解消することが可能になる。この
場合、オペレータの好みによって変数n(或いは長さり
を変更するようにしても良い。 〈第2の実施例の説明〉 上述した実施例では、枠回転によって生じた複数個(1
個の枠回転では最高2個)の文字展開可能空間のうち最
も広いものを選択した。 水弟2の実施例では、文を読む人に更に理解しやすい格
好で「文字よけ」する例を説明する。 般に、横書きの日本語や英語等は文が左から右に流れる
方が理解し易い。 そこで、第11図(A)に示す様に、枠112の回転処
理によって文字展開可能空間が左右に分断された場合、
同図に示す様な文字(文)の流れにする。但し、先の第
1の実施例でも説明したように、各々の展開可能空間の
行中に展開できる文字数nが所定以下の場合には、そこ
への文字の展開はやめ、同図(B)のような流れにする
。 第11図(A)から同図(B)への切り換えは、設定値
nを太き(取ることで容易に成し得るので、ここではそ
の詳述は割愛する。 以上説明したように本実施例によれば、枠回転を行なう
ことで隠れる文字列を有した文章を、回転枠の避けて再
配列を行なうことが可能になる。 尚実施例では横書きを例にして説明したが、同様の原理
は縦書きに適応できるので、これによって本発明が限定
されるものではない。 【発明の効果] 以上説明したように本発明によれば、枠を回転すること
で隠れてしまう文字列を再配置させて見えるようにする
、極めて便利な文書処理装置を提供することが可能とな
る。
Embodiments of the present invention will be described in detail below with reference to the accompanying drawings. <Description of System Configuration> FIG. 1 is a block configuration diagram of a document processing system in an embodiment. In the figure, 1 is a CPU that controls the entire system, and 2
is a ROM that stores the boot program at the time the device is powered on, and 3 stores programs read from an external storage device (such as programs related to the flowchart in Figure 6.10 described later) and document information being edited. , C
This is a RAM used as a work area for PU1. 4 is a font memory (stores so-called outline fonts) that stores coordinate format data for generating character patterns; 5 is a VRAM that develops images to be displayed on the display screen; and 6 is the VRAM-5. This is a CRT display that displays an image developed on the screen. Reference numeral 7 denotes a magnetic storage device, typically a floppy disk device or a hard disk device, which stores various programs (loaded into the RAM 3) related to document processing in this device, document information, and the like. 8 is a keyboard for giving predetermined instructions to the characters composing the document or this system; 9 is C;
This is a mouse for controlling the movement of a graphic cursor displayed on the display screen of the RT display 6. Reference numeral 10 denotes an image memory capable of developing an image for one page of SP recording paper when the stage of actual printing processing is reached; reference numeral 11 forms a visible image on a recording medium based on the image developed in the image memory 10. It's a printer. The printer 11 in this embodiment will be described as a laser beam printer. Usually, CRT display devices only need to be able to confirm the edited content, so their resolution is lower than that of high-quality printers such as laser beam printers. When performing printing processing, character patterns and the like matching the resolution of the printer are generated in accordance with the document information to be printed, according to the data read out from the font grid 4, developed in the image memory 0, and printed. Explanation of Frame> FIG. 2 shows an example of the layout of a frame that is a development area of a document in the embodiment. In the figure, 20 represents recording paper, and 21 to 23 represent each character string (
This is a frame for expanding documents. The size and settings of the frame are performed by operating the mouse 9. Specifically, by operating the mouse 9, you can freely scroll the recording paper displayed on the display screen, move the graphic cursor to any two points within it, and press the button provided on the mouse 9. Press (hereinafter referred to as "click"). These two points are taken as the end points of the diagonal of the rectangle (=frame). After this, a document is created by specifying an appropriate frame using the mouse, etc., and expanding the character string input from the keyboard 8 (hereinafter, in the example, a single character is included) into the frame. . Note that even after inputting a document or the like, the layout and size of the frame can be changed freely. In the above configuration, multiple frames are set within each page, and a document is created by expanding character strings entered manually using the keyboard 8 (at this time, however, the RAM 3 contains data as shown in Figure 3). In the figure, 31-1.2...n indicates information on each page (hereinafter referred to as page information).As you can see from the page information 31-1 of the first page, In the example,
Data for one frame is composed of three pieces of information: a frame header area 32, a character code area 33, and a character attribute area 34. Each area will be explained below. The frame header area 32 stores data necessary for editing the frame. In the embodiment, this frame header area contains information as shown in FIG. , and an area for storing its attribute information.The frame number is a number to distinguish the frame of interest from other frames, and no two frames have the same number.This is because, for example, when an operator selects a frame, Every time you set a new one, you just need to increment it by one. Link information is information that specifies the frames that logically precede and follow the spout frame. In other words, which frame is the frame you are looking at? Each frame number is stored to indicate which frame is the one that follows the frame of interest and which frame is the next one after the frame of interest.Furthermore, if there are no frames to be connected before or after, a number that cannot exist (for example, , “O”, etc.). Incidentally, both “
O", the frame of interest is an isolated frame. Also, the size, coordinate position, and number of characters are as described above. In addition, in the device of the embodiment, each frame is an isolated frame. If it is placed parallel to the frame, it can be rotated in 1 degree increments.The value is stored in the rotation angle.Finally, regarding the attribute information of the frame header, it is possible to rotate it in units of 1 degree. Attribute name information that allows the operator to add simple comments, document layout information such as whether the document in the frame is written vertically or horizontally, font size information (number of points), character vertical and horizontal magnification information, and Roman characters. typeface information (for kanji, Mincho or Gothic; for European characters, Fourier, Herbetica, Times, etc.), distance information between lines,
It is composed of inter-character distance information, angle information of italic characters, information on the presence or absence of prohibition processing, information indicating whether the information in the frame is text or an image, etc. The attributes of this frame header are set to default values unless the operator actively instructs to change each piece of information. Note that when the information in the frame is an image (read by an image scanner), the image data is stored in the illustrated character code area. Although the explanation will be repeated later, when the operator sets a frame, first, an area for the frame header, a character code area, and a character attribute area are each secured in the RAM 3. Next, in the character code area in FIG. 3, individual character codes constituting the document developed within the corresponding frame are stored. However, if the information within the attention frame is an image, the character attribute area 34 is not generated, as a matter of course. Further, the character attribute area 34 stores attribute information for each character in the corresponding character code area. There are various types of attribute information for individual characters, but
To name a few, font size information, font type (type of font), decoration information (color of font decoration, presence or absence of underlining, presence or absence of overline, presence or absence of shading, and the shading is the type of pattern, the information surrounding the character string. information on the presence or absence of enclosing ruled lines, etc.), character shape information, character color, vertical position of characters, character spacing, and information on whether to invert the display pattern. Among these, there are two types of glyph information: front characters and shadow characters. For front characters, double the width (50-200% range) and double the height (50-20%).
00% range), presence/absence of border, angle of italic, direction of italic, rotation direction (range of 0 to 360 degrees), and type of fill pattern. Information for setting almost the same parameters as for front characters is also secured for shadow characters. According to the above explanation, it may seem that the attribute information in the frame header area and the information in the character attribute area for each character overlap, but this is not the case. That is,
In the system of the embodiment, information in the character attribute area is given priority over attribute information in the frame header area. In other words, 1
Most of the attributes for the two frames are controlled by the attribute information in the frame data area, and the output form for each character, such as a request to make only this character larger, in the frame is controlled by the information in the character attribute area. control based on <Description of character avoidance processing by frame rotation> As explained above, each corner of the embodiment can have individual rotation angle information. To rotate a frame, first, use the mouse 9 to specify the frame to be rotated. After specifying this frame, the operator gives an instruction to rotate the frame. In the embodiment, this rotation processing method uses the mouse 9
There are two methods available: determining the rotation angle according to the operator's sense, and inputting the rotation angle as a numerical value using the keyboard 8, etc. After setting the zero rotation target frame, select one of these methods. . If the method of inputting the angle value using the keyboard 8 is selected, it is sufficient to simply input the value. In addition, if you select to rotate the mouse 9 arbitrarily, as the mouse 9 moves, only the outline of the half frame will be drawn and updated at any time, allowing the operator to check how much it has been rotated. . Then, the angle of the outline that was being displayed when it was clicked is set as the rotation angle of the frame of interest. After the rotation angle is determined in this way, the data is stored in the "rotation angle" column provided in the frame header information in the frame of interest. Then, if the frame is an image, etc.,
The well-known rotation equation of the following formula, (夛) ” (2)
Company 7 g) Calculate the new coordinate position of each dot based on (夛: ) and perform rotation processing on the entire image. however,(
xo, yo) are the dot coordinates before rotation, θ is the rotation angle, (
x, y) are the coordinates after rotation. In addition, when the frame of interest consists of character information, a new character pattern is generated according to the rotation angle, and the information (character (including pitch, font size, etc.). A detailed outline of frame rotation using the mouse 9 will be explained with reference to FIG. First, by moving the graphic cursor 53 linked to the mouse 9 on the screen, the center of the frame 51 is set as the center of rotation, and its outline! The display of I52 is updated as shown. The operator determines the rotation angle of the frame 51 by clicking, for example, in the illustrated state. Then, it becomes possible to obtain the result shown in the illustrated frame 51'. The operation processing contents of the CPUI will be explained according to the flowchart shown in FIG. When the operator specifies one frame by operating the mouse 9, the CPU first performs processing related to the frame specification in step S1. Specifically, it is based on the coordinate position of the graphic cursor at the time the mouse 9 is clicked, and from the coordinate position, size, rotation angle, etc. of the frame in the frame header information in the page data displayed at that time. , find out which frame the graphic cursor is on when clicked. When the corresponding frame (frame number) is identified through this search process, the process proceeds to step S2, where the user selects whether the rotation angle should be input numerically from the keyboard 8 or input by the operator's sense using the mouse 9. . When inputting the rotation angle using the keyboard 8 is selected, the numerical value is input in step S3, and the process proceeds to step S7. Further, if the mouse 9 is selected as the input target, the process proceeds to step S4, where the relative movement distance and button status are input from the mouse 9, and in step S5, the rotation angle is updated based on the results and the obtained rotation is The display of the outline of the frame of interest is updated based on the angle. Hereinafter, this step S4. The process in S5 is repeated until it is determined that the mouse 9 has been clicked. Then, the updated rotation angle at the time of clicking is determined as the rotation angle of the frame of interest, and the process proceeds to step S7. In any case, once the rotation angle for the designated frame is determined in step S1, the value is stored in the "rotation angle" column provided in the frame header information of the frame of interest in step S7. Then, in step S8, the frame of interest is actually rotated based on the stored rotation angle. The rotation process is as described above, so a detailed explanation will be omitted here. As described above, the frame (and information within the frame) designated by the operator is rotated. One problem here is how to handle information within a frame that has been placed, for example, in the background of the rotated frame due to frame rotation. Now, suppose that two frames 70 and 71 are adjacent to each other as shown in FIG. 7A, and frame 71 is rotated (however, frame 71 has priority over frame 70 (front location)). In this case, CPU 1
The simplest process is to display only the rotated frame 71' and leave the information in the frame 70 untouched, as shown in FIG. However, in this case, the characters located behind the frame 70' cannot be seen. Therefore, in this embodiment, when a frame configured as described above is rotated, if part of the other frame is eclipsed by the process, r character dodge j is performed as shown in FIG. make it possible. In addition, in the same figure (C),
A mark 72 displayed at the lower right of the frame 70° indicates that the character string has overflowed from the frame. This mark 72 is
The frame 70' is resized so that all the characters inside can be displayed, or the display continues until a predetermined number of characters are deleted. By the way, in order to meet the demand that "character avoidance" may not be performed in some cases, the attribute information for each style (see Figure 4) includes information that indicates that the character string within the relevant frame is subject to "character avoidance". (The operator specifies these attributes for each frame, but as an initial value, the frame that expands character strings stores data indicating that characters should be avoided.) ).Of course, the frame in which the image is expanded is not subject to the "text avoidance" process due to the nature of the information. As described above, even if a frame does not overlap with another frame before the frame is rotated, it may overlap after that process. Therefore, it is necessary to determine which frame the image is superimposed on by rotating the frame. In the embodiment, as shown in FIG. 7(B), when the frame is rotated by 71 degrees, the points A at the four corners of the frame. The coordinate positions of B, C, and D are determined, and each point is determined by comparing it with the coordinate position and size (including the rotation angle) in the header information 32 of each frame displayed at that time. For example, in the case of FIG. 7(B), if the size and coordinate information in the header information of the frame 70 are compared, point B is located within the frame 70.
It can be determined that it is inside. Next, the "text avoidance" process in the embodiment will be explained. "Character avoidance" in the embodiment is processed according to the rules shown below. In other words, ``by rotating the frame of the line of interest (if the line is divided into a few spaces where characters can be expanded, expand the character string in the wider expansion width)'' Figure 8 (A) shows the character string expansion. This is a case where there is a frame 82 (a frame in which characters or images are developed) within a frame 81. In the case shown in the figure, the space in which characters can be developed is divided to the right in the 3rd and 4th lines in the frame 81 by the frame 82. However, since it was determined that the space on the left side was wide, the character string was expanded as shown in the figure. Figures 8 (B) and (C) show the results when the frame 82 in Figure 8 (A) is rotated at different angles. This shows the result of the "character avoidance" processing for frame 81. In the same figure (B), the space in which characters can be developed is on the right in the second and third lines, and on the left in lines 4 and 5. This shows that it was judged to be wide.In addition, in the same figure (C),
Each row indicates that the left side is determined to be wide. An overview of the "text avoidance" processing of CPLI 1 will be explained using FIG. 9. Basically, the widest space in which characters can be expanded is found for each line. In the case shown, the first metal body becomes the space where characters can be developed, and in the case of the second line, βL and b are compared and the larger one (
In the illustration, β, l) is a character expandable space. Thereafter, the characters read from the character code area 33 are sequentially developed into the determined space until the space reaches the determined character development space. However, since each character has a character attribute (data in the character attribute area 34), a character pattern is generated and developed based on the attribute. When character expansion in the character expandable space for one line is completed, focus on the next line and repeat the same process.
When the line to be processed finally goes outside the frame of interest, the process ends (°, ° There is no point in processing characters that are not displayed). The above-mentioned processing can be summarized as shown in the flowchart shown in FIG. First, in step Sll, the first row is set as the row of interest as an initial value. In the next step S12, the character code area 33
Then, data for one character is read from the beginning of the character attribute area 34. After this, in step 313, the widest character expandable space in the line of interest is selected. In step S14, the size of the character pattern generated based on the previously read data for one character is compared with the selected character expandable space, and it is determined whether the character pattern can be expanded in that space (step S14). If there is no character expandable space in the line of interest and it cannot be selected in step 313, it is naturally determined that character expansion is not possible). If it is determined that it is the development period, the process proceeds to step S15, in which the character pattern generated in the character development possible space is developed,
In the next step S16, data for the next character is read, and the process returns to step S14. In this way, character patterns are developed one after another until it is determined that the character pattern cannot be developed in the character development space.Now, when it is determined that the character pattern that is about to be developed cannot be developed in the line of interest, the process advances to step S17. , move the line of interest to the next line 6 Then, in step 318, it is determined whether the updated line of interest has moved out of the frame currently being processed. Then, unless it is determined that the line of interest has gone outside the frame, the process returns to step 313 and continues the above-described process. As a result of the above processing, Fig. 7 (C), Fig. 8 (B), (C
) can be obtained. In addition, in the process described above, if it is determined that even one character pattern generated in the line of interest can be expanded, that character is expanded, but in this case, only one character exists in that line. There will be cases where you don't. Therefore, when the process moves from step S12 or step 818 to step S13 (excluding the process from step S16), the selected character expandable space is
Determine whether there are more than the number of characters (or length C). By doing this, it is possible to eliminate the unnaturalness of having only one character on one line.In this case, the variable n (or the length may be changed depending on the operator's preference) Good. <Explanation of the second embodiment> In the embodiment described above, a plurality of objects (one
For each frame rotation, the widest one was selected from among the spaces in which characters can be developed (up to 2 characters). In the example of Mizui 2, we will explain an example of "dodging characters" in a way that is easier for readers to understand. In general, it is easier to understand horizontally written Japanese and English when sentences flow from left to right. Therefore, as shown in FIG. 11(A), when the character developable space is divided into left and right by the rotation process of the frame 112,
Make the characters (sentences) flow as shown in the figure. However, as explained in the first embodiment above, if the number n of characters that can be expanded in a line in each expandable space is less than a predetermined value, characters are not expanded there and the process shown in FIG. Make it flow like this. Switching from FIG. 11(A) to FIG. 11(B) can be easily achieved by increasing the setting value n, so a detailed explanation thereof will be omitted here.As explained above, this implementation According to the example, it is possible to rearrange a sentence that has a character string that is hidden by rotating the frame to avoid the rotated frame. In the example, horizontal writing was explained as an example, but similar Since the principle can be applied to vertical writing, the present invention is not limited to this. [Effects of the Invention] As explained above, according to the present invention, character strings that are hidden by rotating the frame can be reproduced. It becomes possible to provide an extremely convenient document processing device that can be arranged and viewed.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は実施例における文書処理システムのブロック構
成図、 第2図は実施例における文書展開エリアとなる枠のレイ
アウトの一例を示す図、 第3図は実施例におけるRAM内のデータ格納状態を示
す図、 第4図は第3図におけるヘッダ情報内のデータフォーマ
ットを示す図、 第5図は枠回転の概要を説明するための図、第6図は枠
回転処理手順を示すフローチャート、 第7図(A)〜(C)は枠回転によって隠れる部分が発
生する原理と文字よけの原理を示す図、第8図(A)〜
(C)は文字よけ処理の概要を示す図、 第9図は文字よけする際の文字展開可能空間の選択に係
る原理を示す図、 第10図は文字よけ処理手順の内容を示すフローチャー
ト、 第11図(A)、(B)は他の文字よけ処理概要を示す
図である。 図中、1・・・CPU、2・・・ROM、3・・・RA
M、4・・・フォントメモリ、5・・・VRAM、6・
・・CRTデイスプレィ、7・・・磁気記憶装置、8・
・・キーボード、9・・・マウス、10・・・画像メモ
リ、11・・・レーザビームプリンタである。 特許出願人  株式会社ジャストシステムビ己 代理人 弁理士  大塚康徳(他1名)−ま た 第2図 第4図 第8図 第9図 第10図
FIG. 1 is a block diagram of a document processing system according to an embodiment. FIG. 2 is a diagram showing an example of the layout of a frame serving as a document expansion area in an embodiment. FIG. 3 is a diagram showing a data storage state in a RAM in an embodiment. FIG. 4 is a diagram showing the data format in the header information in FIG. 3; FIG. 5 is a diagram for explaining an overview of frame rotation; FIG. 6 is a flowchart showing the frame rotation processing procedure; Figures (A) to (C) are diagrams showing the principle behind the occurrence of hidden parts due to frame rotation and the principle of character avoidance.
(C) is a diagram showing an overview of character avoidance processing; Figure 9 is a diagram showing the principle of selecting a space in which characters can be developed when avoiding characters; Figure 10 is a diagram showing the contents of the character avoidance processing procedure. Flowchart FIGS. 11(A) and 11(B) are diagrams showing an outline of other character avoidance processing. In the figure, 1...CPU, 2...ROM, 3...RA
M, 4... Font memory, 5... VRAM, 6...
・・CRT display, 7・・Magnetic storage device, 8・
...Keyboard, 9...Mouse, 10...Image memory, 11...Laser beam printer. Patent applicant Just System B Co., Ltd. Self-representative Patent attorney Yasunori Otsuka (and 1 other person) - also Figure 2 Figure 4 Figure 8 Figure 9 Figure 10

Claims (5)

【特許請求の範囲】[Claims] (1)ページ内に設定された少なくとも1つの枠中に文
字列或いは画像を展開表示していつて文書の作成及び編
集を行う文書処理装置であつて、所望とする枠を回転さ
せる回転手段と、 該回転手段で回転させた枠の一部或いは全部によつて隠
される文字列を有する枠が存在するか否かを検出する検
出手段と、 該検出手段で検出された枠内の一連の文字列を前記回転
手段で回転された枠を避けるように再配置する文字列配
置手段とを備えることを特徴とする文書処理装置。
(1) A document processing device that creates and edits a document by expanding and displaying a character string or image in at least one frame set within a page, and a rotation means for rotating a desired frame; a detection means for detecting whether or not there is a frame having a character string hidden by part or all of the frame rotated by the rotation means; and a series of character strings within the frame detected by the detection means. character string arrangement means for rearranging the character strings so as to avoid the frame rotated by the rotation means.
(2)各枠の大きさ、位置及び回転角度情報を記憶する
記憶手段を備え、 前記検出手段は回転手段で回転された枠の4辺が前記記
憶手段に記憶された情報に基づいてどの枠内にあるかを
検出することを特徴とする請求項第1項に記載の文書処
理装置。
(2) A storage means is provided for storing size, position, and rotation angle information of each frame, and the detection means determines which frame the four sides of the frame rotated by the rotation means are based on the information stored in the storage means. 2. The document processing apparatus according to claim 1, wherein the document processing apparatus detects whether the document processing apparatus is located within the document processing apparatus.
(3)文字列配置手段は、 注目枠内の各文字を行或いは列方向に展開しようとする
とき、当該行或いは列がいくつか文字展開用区画に分け
られていると判断したとき、広い方を優先して選択する
選択手段と、 該選択手段で選択された区画に文字列を一杯になるまで
展開する展開手段とを備えることを特徴とする請求項第
1項または第2項に記載の文書処理装置。
(3) When the character string arrangement means attempts to develop each character within the frame of interest in the row or column direction, and determines that the row or column is divided into several sections for character development, 3. The method according to claim 1 or 2, further comprising a selection means for preferentially selecting a character string, and a development means for developing character strings into a section selected by the selection means until the character string is filled. Document processing device.
(4)該選択手段で選択した区画が予め設定された大き
さに満たない場合には、当該区画を文字展開対象から外
すことを特徴とする請求項第3項に記載の文書処理装置
(4) The document processing apparatus according to claim 3, wherein if the section selected by the selection means does not have a preset size, the section is excluded from character development targets.
(5)選択手段で選択された区画を文字展開対象にする
か否かの判断基準となる前記予め設定された大きさを変
更する変更手段を備えることを特徴とする請求項第4項
に記載の文書処理装置。
(5) The method according to claim 4, further comprising a changing means for changing the preset size, which serves as a criterion for determining whether or not the section selected by the selecting means is to be targeted for character development. document processing equipment.
JP2247385A 1990-09-19 1990-09-19 Document processor Pending JPH04127356A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2247385A JPH04127356A (en) 1990-09-19 1990-09-19 Document processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2247385A JPH04127356A (en) 1990-09-19 1990-09-19 Document processor

Publications (1)

Publication Number Publication Date
JPH04127356A true JPH04127356A (en) 1992-04-28

Family

ID=17162646

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2247385A Pending JPH04127356A (en) 1990-09-19 1990-09-19 Document processor

Country Status (1)

Country Link
JP (1) JPH04127356A (en)

Similar Documents

Publication Publication Date Title
JPH04128970A (en) Document processing system
JPH04347779A (en) Graphic document processor
JP3100614B2 (en) Document processing apparatus and document processing method
JPH04127356A (en) Document processor
KR100238814B1 (en) Data processing apparatus and method
JPS6215670A (en) Editing system for intra-graphic character string
JPH04127265A (en) Document processor
JP2608276B2 (en) Document display device
JPH03156668A (en) Document preparing device
JPS63187331A (en) Data displaying system by multi-window
JP3101402B2 (en) Document editing method and document editing device
JP3761923B2 (en) Image processing apparatus and method
JP3035126B2 (en) Information processing device
JP2831318B2 (en) Editing device
JP2698348B2 (en) Character processor
JPH0447865B2 (en)
JPH07152737A (en) Document preparing device
JPH0470961A (en) Pattern display device
JPH04139572A (en) Document processor
JP2001101165A (en) Document editor
JPH04147366A (en) Document processor
JPH0721159A (en) Processor and method for character processing
JPH03276253A (en) Display processor
JPH04364569A (en) Character enlargement and reduction processing system
JPH05143053A (en) Word processor provided with enlarging and smoothing function