JPS6164451A - 文書処理システムにおける数式清書方法 - Google Patents
文書処理システムにおける数式清書方法Info
- Publication number
- JPS6164451A JPS6164451A JP59186320A JP18632084A JPS6164451A JP S6164451 A JPS6164451 A JP S6164451A JP 59186320 A JP59186320 A JP 59186320A JP 18632084 A JP18632084 A JP 18632084A JP S6164451 A JPS6164451 A JP S6164451A
- Authority
- JP
- Japan
- Prior art keywords
- function
- area
- size
- argument
- text
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Record Information Processing For Printing (AREA)
- Input From Keyboards Or The Like (AREA)
- Document Processing Apparatus (AREA)
- Dot-Matrix Printers And Others (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明は、関数などの数式を含んだテキストを入力・編
集したり、清書・出力したりする文書処理装置において
、関数記号領域のサイズ、関数内の引数の配置および関
数領域のサイズを可変にしうる処理方式に関する。
集したり、清書・出力したりする文書処理装置において
、関数記号領域のサイズ、関数内の引数の配置および関
数領域のサイズを可変にしうる処理方式に関する。
近年、オフィス・オートメーションの発展にともない、
文書を電子計算機システム内で作成・修正し、これを電
子計算機に接続された印刷装置る。数式を含んだテキス
トについても同様である素ところが、数式の取り扱いは
通常のテキストと異なる。数式テキスト中の数学関数の
扱いにおいては、新しい関数記号の大きさをどのように
設定するか、あるいは関数記号と引数の位置関係および
引数と引数の位置関係をどのように設定し、かつ関数全
体の大きさをどのように設定するかという問題が発生す
る。しかも、上記の問題は、これといった仕様の決め手
がなく、種々のシステム(印刷装置、出力装置、タイプ
ライタ、写植機など)において独自の方式が採用されて
いる。さらに。
文書を電子計算機システム内で作成・修正し、これを電
子計算機に接続された印刷装置る。数式を含んだテキス
トについても同様である素ところが、数式の取り扱いは
通常のテキストと異なる。数式テキスト中の数学関数の
扱いにおいては、新しい関数記号の大きさをどのように
設定するか、あるいは関数記号と引数の位置関係および
引数と引数の位置関係をどのように設定し、かつ関数全
体の大きさをどのように設定するかという問題が発生す
る。しかも、上記の問題は、これといった仕様の決め手
がなく、種々のシステム(印刷装置、出力装置、タイプ
ライタ、写植機など)において独自の方式が採用されて
いる。さらに。
これらのシステムでは、一度仕様が決定したものについ
ては、ユーザの好みに合わない場合に変更ができなかっ
たり、設計・製作者自身が仕様を変えたい場合にも多く
の時間と手数を必要としたことが少なくない。これを、
より具体的なシステムを例にとって考えてみよう。
ては、ユーザの好みに合わない場合に変更ができなかっ
たり、設計・製作者自身が仕様を変えたい場合にも多く
の時間と手数を必要としたことが少なくない。これを、
より具体的なシステムを例にとって考えてみよう。
数式を扱ったテキスト処理システムの方式は、2種類に
分類できる。
分類できる。
(1)タイプライタ・ベースの方式
(2)写植機法による方式
写植機法による方式について、As5ociat、io
n forComputing Machinery
、Inc、Comunicat、1ons of t
heACM、March 1975 Volumel
8 Number3におけるBr1an W、Ker
nig han and Lorinda L
、Cherry (BellLaboratorie
s)による”A System for Typese
tt、ingMathemat、ics”と題する文献
において論じられている。
n forComputing Machinery
、Inc、Comunicat、1ons of t
heACM、March 1975 Volumel
8 Number3におけるBr1an W、Ker
nig han and Lorinda L
、Cherry (BellLaboratorie
s)による”A System for Typese
tt、ingMathemat、ics”と題する文献
において論じられている。
上記の方式(1)の問題は、文字の大きさが固定的であ
ること、任意の行送りが不可能であり、高高通常行の1
/2の行送りで満足せざるえないことである。このため
(1)の方式は、大きさの異なる2次元的な領域を縦・
横自由自在に任意の位置に配置する必要がある数式処理
に対しては機能不足である。
ること、任意の行送りが不可能であり、高高通常行の1
/2の行送りで満足せざるえないことである。このため
(1)の方式は、大きさの異なる2次元的な領域を縦・
横自由自在に任意の位置に配置する必要がある数式処理
に対しては機能不足である。
上記の方式(2)は、方式(1)の問題の一解決法を与
えるが、関数記号の大きさや関数内の引数の配置、およ
び関数の大きさに関する仕様が、プログラムの処理の中
に埋め込まれているのが現状であり、仕様変更の際、プ
ログラム自身の修正が必要になる。このため、プログラ
ムを修正しては結果を確認するといった工程を繰り返す
ことになり。
えるが、関数記号の大きさや関数内の引数の配置、およ
び関数の大きさに関する仕様が、プログラムの処理の中
に埋め込まれているのが現状であり、仕様変更の際、プ
ログラム自身の修正が必要になる。このため、プログラ
ムを修正しては結果を確認するといった工程を繰り返す
ことになり。
開発効率が悪く、結局品質の向上が困廻になっている。
本発明の目的は、上記の問題に対処するため、数学関数
の割付は処理内容を関数情報テーブルの形で保持し、そ
れによってさらにその内容を書き換える機能をもつこと
によって、プログラムの論理を変更することなく、数学
関数の割付は仕様が容易に変更できるような数式清書方
式を提供することにある。
の割付は処理内容を関数情報テーブルの形で保持し、そ
れによってさらにその内容を書き換える機能をもつこと
によって、プログラムの論理を変更することなく、数学
関数の割付は仕様が容易に変更できるような数式清書方
式を提供することにある。
さらに1本発明の他の目的は、関数情報テーブルの中の
関数識別コードを追加することにより、既存の関数タイ
プの仕様をもった新しい関数を、容易に追加できる数式
清書方式を提供することにある。
関数識別コードを追加することにより、既存の関数タイ
プの仕様をもった新しい関数を、容易に追加できる数式
清書方式を提供することにある。
本発明では、関数がその割付は方法によっていくつかの
タイプに分類できることに着眼し、これを関数タイプと
名付け、関数の割付は情報を各関数タイプ別に保持する
こととした。例えば、第1図において、和関数(Σ)や
積関数(n)および和集合関数(U)などは、共に、引
数の最大個数がIt 3 Itで、各引数の名称につい
ては第1引数が下限値、第2引数は上限値、第3引数が
関数テキストであり、かつ、関数における引数文字比率
がそれぞれ、”50(%) ”、 ”50 (%) ”
、 ”100(%)″であり、しかも、関数記号の大き
さや関数記号と各引数との配置のし方が一様である、と
いう点でこれらの関数を同タイプとして扱い、′″ΣΣ
タイプ″付けることにした。
タイプに分類できることに着眼し、これを関数タイプと
名付け、関数の割付は情報を各関数タイプ別に保持する
こととした。例えば、第1図において、和関数(Σ)や
積関数(n)および和集合関数(U)などは、共に、引
数の最大個数がIt 3 Itで、各引数の名称につい
ては第1引数が下限値、第2引数は上限値、第3引数が
関数テキストであり、かつ、関数における引数文字比率
がそれぞれ、”50(%) ”、 ”50 (%) ”
、 ”100(%)″であり、しかも、関数記号の大き
さや関数記号と各引数との配置のし方が一様である、と
いう点でこれらの関数を同タイプとして扱い、′″ΣΣ
タイプ″付けることにした。
次に、関数の割付は法、すなわち、関数内の引数の配置
や関数記号と引数との配置が、ある種の一次式で表わせ
ること、およびその−次式における係数を関数タイプ毎
に変えることにより各種の関数が扱えることに着眼し、
関数タイプ毎に一次式を保持し、かつ、−次式中の係数
を、関数記号領域サイズ決定パラメタおよび関数領域サ
イズ補正パラメタとして保持することにした。
や関数記号と引数との配置が、ある種の一次式で表わせ
ること、およびその−次式における係数を関数タイプ毎
に変えることにより各種の関数が扱えることに着眼し、
関数タイプ毎に一次式を保持し、かつ、−次式中の係数
を、関数記号領域サイズ決定パラメタおよび関数領域サ
イズ補正パラメタとして保持することにした。
さらに、上記の関数割付は方法が、−意に定まらず、最
良の方法を見つけるために、上記の関数タイプ別の情報
を常に変更できることが好ましいということに着眼し、
関数の割付は情報を、第1図のようなテーブルの形で保
持することにし、これを関数情報テーブルと名付けた。
良の方法を見つけるために、上記の関数タイプ別の情報
を常に変更できることが好ましいということに着眼し、
関数の割付は情報を、第1図のようなテーブルの形で保
持することにし、これを関数情報テーブルと名付けた。
以上により、本発明では、関数情報テーブルを保持し、
その内容を書き換える機能をもつことにより、プログラ
ムの論理を変更することなく、関数の割付は仕様を、少
ない労力、テーブル量で、容易に変更できる。
その内容を書き換える機能をもつことにより、プログラ
ムの論理を変更することなく、関数の割付は仕様を、少
ない労力、テーブル量で、容易に変更できる。
さらに、関数情報テーブルに、新たな関数識別コードを
追加するだけで、既存の関数タイプの仕様をもった断読
の関数を、容易に追加できる。
追加するだけで、既存の関数タイプの仕様をもった断読
の関数を、容易に追加できる。
以下、本発明の一実施例を図面を用いて詳細に説明する
。
。
第2図は、文書の作成手順の概念を示す。図中の符号2
01は、テキストの入出力にユーザが用いる端末装置、
符号202は、作成・編集したテキストを格納するテキ
スト・ファイル、符号203は、清書結果を出力する出
力装置、符号204は、テキストの作成・編集・清書を
行なう文書処理システム、符号205は、端末ユーザ入
出力制御部、符号206は、テキスト作成・編集制御部
、符号207は、清書出力制御部、符号208は、出力
装置制御部である。
01は、テキストの入出力にユーザが用いる端末装置、
符号202は、作成・編集したテキストを格納するテキ
スト・ファイル、符号203は、清書結果を出力する出
力装置、符号204は、テキストの作成・編集・清書を
行なう文書処理システム、符号205は、端末ユーザ入
出力制御部、符号206は、テキスト作成・編集制御部
、符号207は、清書出力制御部、符号208は、出力
装置制御部である。
端末装置201からテキストを入力すると、端末ユーザ
入出力制御部205はテキスト作成・編集制御部206
を起動し、入力テキストを渡す。
入出力制御部205はテキスト作成・編集制御部206
を起動し、入力テキストを渡す。
テキスト作成・編集制御部206は、ユーザの指示によ
って入力テキストに割付けのための指示を加えたり、テ
キストの追加・修正・削除などの編集を施した後、テキ
スト・ファイル202に格納する。テキストの作成・編
集の結果は、端数装置201に表示する。ユーザは、端
末装置201で作成・編集結果を確認しながらテキスト
の再編集や清書を行なう。
って入力テキストに割付けのための指示を加えたり、テ
キストの追加・修正・削除などの編集を施した後、テキ
スト・ファイル202に格納する。テキストの作成・編
集の結果は、端数装置201に表示する。ユーザは、端
末装置201で作成・編集結果を確認しながらテキスト
の再編集や清書を行なう。
ユーザが端末装置201から、清書の指示を与えると、
端末ユーザ入出力制御部205は清書出力制御部207
を起動する。清書出力制御部207は、テキスト・ファ
イル202からテキストを取り出し、テキスト中の割付
は指示および端末装置201からの割付は指示に従って
テキストを割付け、清書を行なう。清書出力制御部20
7は、清書結果を、端末ユーザ入出力制御部205の起
動によって端末装置201に表示したり、あるいは出力
装置制御部208の起動によって出力装置203に出力
する。
端末ユーザ入出力制御部205は清書出力制御部207
を起動する。清書出力制御部207は、テキスト・ファ
イル202からテキストを取り出し、テキスト中の割付
は指示および端末装置201からの割付は指示に従って
テキストを割付け、清書を行なう。清書出力制御部20
7は、清書結果を、端末ユーザ入出力制御部205の起
動によって端末装置201に表示したり、あるいは出力
装置制御部208の起動によって出力装置203に出力
する。
第3図は、第2図の清書出力制御部207において、本
発明の数式清書方式を適用した数式テキスト処理につい
てより詳細に説明したものである。
発明の数式清書方式を適用した数式テキスト処理につい
てより詳細に説明したものである。
図中の符号301は、関数の割付は情報を保持する関数
情報テーブル、符号302は、関数記号領域のサイズ決
定に用いる関係式A、符号303は、関数領域のサイズ
決定に用いる関係式B、符号304は、解析処理、符号
305は、引数領域すイズ決定処理、符号306は、関
数記号領域サイズ決定処理、符号307は、関数領域サ
イズ決定処理、符号308は、割付は処理である。符号
309から符号314までは、関数テキストの解析から
割付けに至る過程を例示したものである。
情報テーブル、符号302は、関数記号領域のサイズ決
定に用いる関係式A、符号303は、関数領域のサイズ
決定に用いる関係式B、符号304は、解析処理、符号
305は、引数領域すイズ決定処理、符号306は、関
数記号領域サイズ決定処理、符号307は、関数領域サ
イズ決定処理、符号308は、割付は処理である。符号
309から符号314までは、関数テキストの解析から
割付けに至る過程を例示したものである。
関数情報テーブル301の構成は、第4図に示すように
、関数タイプ401、関数識別コード402、引数の最
大個数403.引数名称404゜引数文字比率405、
関数記号領域サイズ決定パラメタ406、および関数領
域サイズ補正パラメタ407からなり、引数名称404
と引数文字比率405は、引数の最大個数403が示す
数だけ保持される。
、関数タイプ401、関数識別コード402、引数の最
大個数403.引数名称404゜引数文字比率405、
関数記号領域サイズ決定パラメタ406、および関数領
域サイズ補正パラメタ407からなり、引数名称404
と引数文字比率405は、引数の最大個数403が示す
数だけ保持される。
テキスト・ファイル202から取り出した関数テキスト
309において、53M<”は和(Σ)の開始を、#
;IIは引数間の区切りを II > Hgは関数の終
了をそれぞれ意味する。関数の種類は、分数。
309において、53M<”は和(Σ)の開始を、#
;IIは引数間の区切りを II > Hgは関数の終
了をそれぞれ意味する。関数の種類は、分数。
根号、積分、Σ関数、積、和集合、積集合、および上限
値・下限値付き任意関数などがあり、各関数の入力形式
と対応する出力は第5図の通りである。
値・下限値付き任意関数などがあり、各関数の入力形式
と対応する出力は第5図の通りである。
解析処理304では、関数テキスト309の妥当性を関
数情報テーブル301の関数タイプ401と関数識別コ
ード402と引数の最大個数403の参照によりチェッ
クした後、引数名称404の参照によって各引数の名称
を決定し、解析結果310を出力する。解析結果310
は、関数記号がパΣ″、第1引数が下限値で′L i
= Q II、第2引数が上限値で″(1)″、第3引
数が関数テキストでX、″′となる。
数情報テーブル301の関数タイプ401と関数識別コ
ード402と引数の最大個数403の参照によりチェッ
クした後、引数名称404の参照によって各引数の名称
を決定し、解析結果310を出力する。解析結果310
は、関数記号がパΣ″、第1引数が下限値で′L i
= Q II、第2引数が上限値で″(1)″、第3引
数が関数テキストでX、″′となる。
引数領域サイズ決定処理305では、解析結果310を
入力とし、関数情報テーブル301の引数文字比率40
5を参照することにより、各引数の引数領域サイズ31
1を得る。
入力とし、関数情報テーブル301の引数文字比率40
5を参照することにより、各引数の引数領域サイズ31
1を得る。
関数記号領域サイズ決定処理306では、各引数の引数
領域サイズ311を入力とし、関数情報テーブル301
の関数記号領域サイズ決定パラメタ406および関係式
A302を用いて、関数記号領域312を生成する。こ
こで関係式A302は、引数領域のサイズに応じて関数
記号領域のサイズを決定する一次式である。
領域サイズ311を入力とし、関数情報テーブル301
の関数記号領域サイズ決定パラメタ406および関係式
A302を用いて、関数記号領域312を生成する。こ
こで関係式A302は、引数領域のサイズに応じて関数
記号領域のサイズを決定する一次式である。
関数領域サイズ決定処理307では、各引数の引数領域
サイズ311と関数記号領域312とを入力とし、関数
情報テーブル301の関数領域サイズ補正パラメタ40
7および関係式B503を用いることにより、各引数と
関数記号との配置方法を決定し、関数領域313を生成
する。ここで関係式B503は、引数領域のサイズと関
数記号領域のサイズおよび関数領域サイズ補正パラメタ
の一次式であり、それによって関数領域のサイズを決定
するものである。
サイズ311と関数記号領域312とを入力とし、関数
情報テーブル301の関数領域サイズ補正パラメタ40
7および関係式B503を用いることにより、各引数と
関数記号との配置方法を決定し、関数領域313を生成
する。ここで関係式B503は、引数領域のサイズと関
数記号領域のサイズおよび関数領域サイズ補正パラメタ
の一次式であり、それによって関数領域のサイズを決定
するものである。
割付は処理308は、関数領域313を予め定められて
いる位置に配置する。
いる位置に配置する。
本発明の数式清書方式を数式テキスト処理に適用した実
施例として、プログラムの処理の流れを第6図に示す。
施例として、プログラムの処理の流れを第6図に示す。
まず、第6図の表記法を示す。図中の矩形は処理を表わ
し、符号601,606,610および611のような
右縦線付き矩形は反復条件を、そして、符号622,6
23の形は選択条件を表わす。また、符号620,62
1の横二重線は、線の左側の処理を右側の処理によって
定義することを表わす。一般に、上から下へと縦線でつ
ながった順序に処理が行なわれる。反復条件601゜6
06.610.611では、括弧内の条件を満たす間、
横線でつながった右側の処理を繰り返す。
し、符号601,606,610および611のような
右縦線付き矩形は反復条件を、そして、符号622,6
23の形は選択条件を表わす。また、符号620,62
1の横二重線は、線の左側の処理を右側の処理によって
定義することを表わす。一般に、上から下へと縦線でつ
ながった順序に処理が行なわれる。反復条件601゜6
06.610.611では、括弧内の条件を満たす間、
横線でつながった右側の処理を繰り返す。
また1選択条件622,623は、条件によって処理を
選択して実行する。
選択して実行する。
本実施例では、数式割付けの基本的データ構造として第
7図のようなエリア701を採用する。
7図のようなエリア701を採用する。
エリアは、ベース・ラインとベース・オリジンをもつ矩
形である。各二リアはその中に独自の水平方向の文字列
出力基準ラインをもち、これをベース・ラインと呼ぶ、
エリア・オリジンはエリアの左上隅の点であり、このエ
リア・オリジンの座標をエリア・アドレスという。エリ
アのサイズは。
形である。各二リアはその中に独自の水平方向の文字列
出力基準ラインをもち、これをベース・ラインと呼ぶ、
エリア・オリジンはエリアの左上隅の点であり、このエ
リア・オリジンの座標をエリア・アドレスという。エリ
アのサイズは。
エリア縦長、エリア横長、およびエリア・ベース上の高
さの3つの要素からなる。エリアのサイズは予め定まっ
ているのではなく、数式を割付けていく段階で決定され
るものである。数式割付けにおいては1行二すア708
、関数エリア706、引数エリア705、およびテキス
ト・エリア704などを扱う。ベース・ラインは行エリ
ア708にテキスト・エリア704や関数エリア706
を配置する際、関数エリア706中に引数エリア705
を配置する際、引数エリア705中にテキスト・エリア
704や関数エリア706を配置する際の基準位置を与
えるものである。
さの3つの要素からなる。エリアのサイズは予め定まっ
ているのではなく、数式を割付けていく段階で決定され
るものである。数式割付けにおいては1行二すア708
、関数エリア706、引数エリア705、およびテキス
ト・エリア704などを扱う。ベース・ラインは行エリ
ア708にテキスト・エリア704や関数エリア706
を配置する際、関数エリア706中に引数エリア705
を配置する際、引数エリア705中にテキスト・エリア
704や関数エリア706を配置する際の基準位置を与
えるものである。
上記の表記法およびエリアの概念に基づいて、第6図の
処理を第7図のエリアの例を用いて説明する6符号60
1により、テキストが終了するまで、符号602,60
3,604,605(7)順で処理を繰り返す、符号6
02でテキスト・ファイル202から1行分のテキスト
を入力し、符号603で行エリア708を生成し、符号
604で行エリアの708配置を行なった後、符号60
5で出力する。行エリア生成603では、符号606に
より行が継続する間、符号622でテキストの解析を行
ない、その結果が通常テキストである場合には符号60
7でテキスト・エリア・サイズの決定、関数情報テーブ
ル301の関数識別コード402の参照により関数テキ
ストである場合には符号608で関数エリア706の生
成をそれぞれ行なった後符号618でサブ行エリア70
7のサイズを決定する。符号606で行が終了すると、
符号619で行エリア・サイズを決定する。行エリア・
サイズ決定619では、符号618で生成したサブ行エ
リア707に行ピッチを付加することにより、行エリア
708を生成し、そのサイズを決定する。サブ行エリア
・サイズ決定618では、符号607,608で生成し
たテキスト・エリア704および関数エリア706をも
とにサブ行エリア707を生成し、そのサイズを決定す
る。
処理を第7図のエリアの例を用いて説明する6符号60
1により、テキストが終了するまで、符号602,60
3,604,605(7)順で処理を繰り返す、符号6
02でテキスト・ファイル202から1行分のテキスト
を入力し、符号603で行エリア708を生成し、符号
604で行エリアの708配置を行なった後、符号60
5で出力する。行エリア生成603では、符号606に
より行が継続する間、符号622でテキストの解析を行
ない、その結果が通常テキストである場合には符号60
7でテキスト・エリア・サイズの決定、関数情報テーブ
ル301の関数識別コード402の参照により関数テキ
ストである場合には符号608で関数エリア706の生
成をそれぞれ行なった後符号618でサブ行エリア70
7のサイズを決定する。符号606で行が終了すると、
符号619で行エリア・サイズを決定する。行エリア・
サイズ決定619では、符号618で生成したサブ行エ
リア707に行ピッチを付加することにより、行エリア
708を生成し、そのサイズを決定する。サブ行エリア
・サイズ決定618では、符号607,608で生成し
たテキスト・エリア704および関数エリア706をも
とにサブ行エリア707を生成し、そのサイズを決定す
る。
テキスト・エリア・サイズ決定607では1文字エリア
7021個ずつに文字ピッチを付加することにより、テ
キスト・エリア704を生成し。
7021個ずつに文字ピッチを付加することにより、テ
キスト・エリア704を生成し。
そのサイズを決定する。
関数エリア生成608では、まず符号609で引数の順
序番号iをre 1”にセットした後、符号610によ
り、関数が継続する間、第1引数、第2引数、・・・の
処理を行なう。関数情報テーブル301の引数の最大個
数403のすべての引数について処理が終り、符号61
0で関数が終了すると、関数情報テーブル301の関数
記号領域サイズ決定パラメタ406と関係式A302を
参照して符号616により関数記号エリア・サイズを決
定し、関数領域サイズ補正パラメタ407と関係式B5
03を参照して符号617により関数エリア・サイズを
決定する。第i引数の処理では、関数情報テーブル30
1の引数文字比率405を参照しながら、符号611に
より、第i引数が継続する間、符号623でテキストの
解析を行ない、その′結果が通常テキストである場合に
は符号612でテキスト・エリア・サイズの決定を、関
数テキストである場合には符号613で関数エリアの生
成をそれぞれ行なった後、符号614で第i引数エリア
のサイズを決定する。ここで、関数エリア生成608は
、自分自身すなわち関数エリア生成613を呼び出して
いる。このような呼び出しを再帰的呼び出しという。複
雑な数式テキストでは、関数の中に他の関数を含むこと
があるにれを関数のネストと呼ぶが1本実施例では、上
記の関数エリア生成613の再帰的呼び出しにより、関
数の多重ネストの処理が可能である。第i引数エリア・
サイズ決定614では、符号612,613で生成した
テキスト・エリア704および関数エリアをもとに第3
引数エリア702を生成し、そのサイズを決定する。符
号611で第i引数が終了すると、符号611で引数の
順序番号iをrz 1 rr増加し、次の順序番号の引
数処理に備える。ここでiが引数の最大個数403を超
えると関数終了とみなす。
序番号iをre 1”にセットした後、符号610によ
り、関数が継続する間、第1引数、第2引数、・・・の
処理を行なう。関数情報テーブル301の引数の最大個
数403のすべての引数について処理が終り、符号61
0で関数が終了すると、関数情報テーブル301の関数
記号領域サイズ決定パラメタ406と関係式A302を
参照して符号616により関数記号エリア・サイズを決
定し、関数領域サイズ補正パラメタ407と関係式B5
03を参照して符号617により関数エリア・サイズを
決定する。第i引数の処理では、関数情報テーブル30
1の引数文字比率405を参照しながら、符号611に
より、第i引数が継続する間、符号623でテキストの
解析を行ない、その′結果が通常テキストである場合に
は符号612でテキスト・エリア・サイズの決定を、関
数テキストである場合には符号613で関数エリアの生
成をそれぞれ行なった後、符号614で第i引数エリア
のサイズを決定する。ここで、関数エリア生成608は
、自分自身すなわち関数エリア生成613を呼び出して
いる。このような呼び出しを再帰的呼び出しという。複
雑な数式テキストでは、関数の中に他の関数を含むこと
があるにれを関数のネストと呼ぶが1本実施例では、上
記の関数エリア生成613の再帰的呼び出しにより、関
数の多重ネストの処理が可能である。第i引数エリア・
サイズ決定614では、符号612,613で生成した
テキスト・エリア704および関数エリアをもとに第3
引数エリア702を生成し、そのサイズを決定する。符
号611で第i引数が終了すると、符号611で引数の
順序番号iをrz 1 rr増加し、次の順序番号の引
数処理に備える。ここでiが引数の最大個数403を超
えると関数終了とみなす。
関数符号エリア・サイズ決定616の処理について、Σ
タイプの関数の例を第8図に示す。Σタイプの関数の場
合、関数記号エリア701のサイズ、すなわち、エリア
縦長f、、エリア横長f1、およびエリア・ベース上の
高さfcは、第3引数エリア702のエリア・サイズす
なわちエリア縦長a 2 +エリア・ベース上の高さC
1と、第4図の関数記号領域サイズ決定パラメタ406
の値kllk2T・・・・・・とを用いて表した第9図
の関係式によって決定できる。
タイプの関数の例を第8図に示す。Σタイプの関数の場
合、関数記号エリア701のサイズ、すなわち、エリア
縦長f、、エリア横長f1、およびエリア・ベース上の
高さfcは、第3引数エリア702のエリア・サイズす
なわちエリア縦長a 2 +エリア・ベース上の高さC
1と、第4図の関数記号領域サイズ決定パラメタ406
の値kllk2T・・・・・・とを用いて表した第9図
の関係式によって決定できる。
関数エリア・サイズ決定617の処理について、同様に
、Σタイプの関数の例を第10図に示す。
、Σタイプの関数の例を第10図に示す。
関数エリア1001のサイズ、すなわち、エリア縦長a
、エリア横長b、およびエリア・ベース上の高さCは、
第1引数エリア1002のサイズa、l b。
、エリア横長b、およびエリア・ベース上の高さCは、
第1引数エリア1002のサイズa、l b。
と、第2引数エリア1003のサイズa21 b、と
、第3引数エリア1004のサイズa、 l b31
c、と、関数記号エリア1005のサイズfa、f、
、fcと。
、第3引数エリア1004のサイズa、 l b31
c、と、関数記号エリア1005のサイズfa、f、
、fcと。
さらに、第4図の関数領域サイズ補正パラメタ407の
値el1871・・・とを用いて表した第11図の関係
式によって決定できる。
値el1871・・・とを用いて表した第11図の関係
式によって決定できる。
第12図は、本実施例の出力サンプルである。
本実施例によれば、
(1)分数や根号のように同時に縦・横に延びる2次元
的な配置 (2)複雑な数式における2次元的配置の多重な入れ子
、すなわち、関数の多重ネストの処理などの、数式テキ
ストの割付けに特有な処理が可能になり数式清書が実現
できる。
的な配置 (2)複雑な数式における2次元的配置の多重な入れ子
、すなわち、関数の多重ネストの処理などの、数式テキ
ストの割付けに特有な処理が可能になり数式清書が実現
できる。
また、関数情報テーブルを保持し、それを参照すること
によって、以下の効果がある。
によって、以下の効果がある。
(1)関数タイプ、関数識別コード、引数の最大個数お
よび引数名称などの情報により、関数テキストの妥当性
のチェックおよび解析処理が可能である。
よび引数名称などの情報により、関数テキストの妥当性
のチェックおよび解析処理が可能である。
(2)引数文字比率により、Σ式などにおいて上限値・
下限値に用いる文字のサイズを変更できる。
下限値に用いる文字のサイズを変更できる。
(3)関数記号領域サイズ決定パラメタにより、引数領
域サイズに応じて関数記号領域のサイズを決定できる。
域サイズに応じて関数記号領域のサイズを決定できる。
(4)関数領域サイズ補正パラメタにより、引数領域の
サイズや関数記号領域のサイズに応じて、関数領域内の
引数領域の配置、引数領域と関数記号領域の配置、およ
び関数領域のサイズを決定できる。
サイズや関数記号領域のサイズに応じて、関数領域内の
引数領域の配置、引数領域と関数記号領域の配置、およ
び関数領域のサイズを決定できる。
本発明によれば、関数情報テーブルの関数記号領域決定
パラメタを書き換えることにより関数記号領域のサイズ
の変更を、同様に関数領域補正パラメタを書き換えるこ
とにより、関数記号と引数の位置関係の変更や引数と引
数の位置関係の変更を、それぞれプログラム自身の修正
手順を踏むことなく容易に行なうことが可能となり、ユ
ーザの好みに合った出力結果を得ることができるという
効果があり、一方プログラムの設計・製作者自身にとっ
ては、機能的にも美的にも最も相応しい出力仕様を得る
たるめ工数が削減できるという効果がある。
パラメタを書き換えることにより関数記号領域のサイズ
の変更を、同様に関数領域補正パラメタを書き換えるこ
とにより、関数記号と引数の位置関係の変更や引数と引
数の位置関係の変更を、それぞれプログラム自身の修正
手順を踏むことなく容易に行なうことが可能となり、ユ
ーザの好みに合った出力結果を得ることができるという
効果があり、一方プログラムの設計・製作者自身にとっ
ては、機能的にも美的にも最も相応しい出力仕様を得る
たるめ工数が削減できるという効果がある。
さらに、関数情報テーブルは、関数をその割付は法によ
って分類した関数タイプ毎の情報をもつので、既存の関
数タイプの新しい関数記号を容易に追加できるという効
果がある。
って分類した関数タイプ毎の情報をもつので、既存の関
数タイプの新しい関数記号を容易に追加できるという効
果がある。
第1図は、関数情報テーブルの具体例を示す図、第2図
は文書の作成手順の概念図、第3図は第2図の清書出力
制御部の詳細を示す図、第4図は関数情報テーブルの構
造図、第5図は関数毎の入力形式と出力の対応図、第6
図は本発明を適用したプログラムの流れ図、第7図はエ
リアの概念と構成の図、第8図はΣ関数に関する関数記
号エリア・サイズ決定の例、第9図はΣ関数に関する関
数記号エリア・サイズ決定のための関係式の例を示す図
、第10図はΣ関数に関する関数エリア・サイズ決定の
例を示す図、第11図はΣ関数に関する関数エリア・サ
イズ決定のための関係式の例を示す図、第12図は本発
明の実施例における出力第 1 口 f−J2 口 第 3121 第 4 因 第 57 第6 図 第7 図 第 8 已 扁 91211 扇 10 図 第 11 図 r−r:L、 E+ 二e、H 第1Z図 [プンアル1] [サンプルZコ [サンプ?し3] [ブンτル4] イ=都T]==テ〒
は文書の作成手順の概念図、第3図は第2図の清書出力
制御部の詳細を示す図、第4図は関数情報テーブルの構
造図、第5図は関数毎の入力形式と出力の対応図、第6
図は本発明を適用したプログラムの流れ図、第7図はエ
リアの概念と構成の図、第8図はΣ関数に関する関数記
号エリア・サイズ決定の例、第9図はΣ関数に関する関
数記号エリア・サイズ決定のための関係式の例を示す図
、第10図はΣ関数に関する関数エリア・サイズ決定の
例を示す図、第11図はΣ関数に関する関数エリア・サ
イズ決定のための関係式の例を示す図、第12図は本発
明の実施例における出力第 1 口 f−J2 口 第 3121 第 4 因 第 57 第6 図 第7 図 第 8 已 扁 91211 扇 10 図 第 11 図 r−r:L、 E+ 二e、H 第1Z図 [プンアル1] [サンプルZコ [サンプ?し3] [ブンτル4] イ=都T]==テ〒
Claims (1)
- 【特許請求の範囲】 1、数式を含んだテキストの割付け、清書を行う文書処
理装置において、数式テキスト中に現れる関数をその割
付け方法により分類した関数タイプと、その関数タイプ
の各々に応じた、1ないし複数個の関数識別コードと1
ないし複数個の引数の引数名称および引数の文字サイズ
と予め設定された関数基本文字サイズとの比率を表わす
引数文字比率に関する情報と、関数領域のサイズおよび
関数内の引数の配置の決定に関与する関数領域補正パラ
メタとを記憶した関数情報テーブルを具備しさらに割付
け清書の対称である数式テキスト中に現れた関数の属す
る関数タイプを判定する手段を具備することにより、判
定結果である関数タイプに応じて上記関数情報テーブル
から決定される引数名称と引数文字比率とを用いて引数
領域のサイズを決定し、該引数領域のサイズと関数記号
領域のサイズとさらに該関数領域補正パラメタとの一次
式とそれらの比較機能を備えた関数領域サイズ決定機構
を用いて、該関数の関数領域のサイズを決定し、かつ割
付け処理を行うことを特徴とした数式清書方式。 2、上記の関数情報テーブルに、関数が持ちうる引数の
最大個数をも具備し、数式テキスト中に現われる関数の
関数識別コードと引数の個数とを求め、関数情報テーブ
ルの関数識別コードを参照することにより上記テキスト
中の該関数が属する関数タイプを決定し、テキスト中の
関数の引数の個数と関数情報テーブルより求まる該関数
タイプの有する引数の最大個数とを比較し、前者の値が
後者の値と等しいかまたは小さいことを確認することに
よつて、入力された数式テキストにおける関数が妥当で
あることをチェックする解析処理機構を有することを特
徴とした特許請求の範囲第1項記載の数式清書方式。 3、上記の関数情報テーブルに、さらに関数記号領域の
サイズの変更に関与する関数記号変更パラメタをも具備
し、引数領域サイズに応じて関数記号領域のサイズを決
定する別の一次式とそれらの比較機能を備えた関数記号
領域サイズ決定機構によって、該関数記号領域のサイズ
を決定した後、上記関数領域サイズ決定機構を用いて、
該関数領域のサイズを決定し、かつ割付け処理を行うこ
とを特徴とした特許請求の範囲第1項記載の数式清書方
式。 4、さらに、上記の関数情報テーブルを書き換える機能
をもつことを特徴とした特許請求の範囲第1項、第2項
又は第3項記載の数式清書方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59186320A JPH0692153B2 (ja) | 1984-09-07 | 1984-09-07 | 文書処理システムにおける数式清書方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59186320A JPH0692153B2 (ja) | 1984-09-07 | 1984-09-07 | 文書処理システムにおける数式清書方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5239349A Division JP2601153B2 (ja) | 1993-09-27 | 1993-09-27 | 数式清書方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6164451A true JPS6164451A (ja) | 1986-04-02 |
JPH0692153B2 JPH0692153B2 (ja) | 1994-11-16 |
Family
ID=16186268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59186320A Expired - Lifetime JPH0692153B2 (ja) | 1984-09-07 | 1984-09-07 | 文書処理システムにおける数式清書方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0692153B2 (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62250481A (ja) * | 1986-03-31 | 1987-10-31 | ウオング・ラボラトリ−ズ・インコ−ポレ−テツド | 多次元又は多方向テキスト・エデイタ− |
JPS63108456A (ja) * | 1986-10-25 | 1988-05-13 | Ricoh Co Ltd | 数式入力方法 |
JPS63184157A (ja) * | 1986-08-08 | 1988-07-29 | ウォング・ラボラトリ−ズ・インコ−ポレ−テッド | 多次元又は多方向テキスト・エディタ− |
JPH0196753A (ja) * | 1987-10-09 | 1989-04-14 | Hitachi Ltd | 数式編集方式 |
JPH0244458A (ja) * | 1988-08-05 | 1990-02-14 | Ricoh Co Ltd | 文字処理装置 |
JPH0264857A (ja) * | 1988-08-31 | 1990-03-05 | Canon Inc | 文書処理装置 |
JPH0264851A (ja) * | 1988-08-31 | 1990-03-05 | Canon Inc | 数式処理装置及びその方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS53100933U (ja) * | 1977-01-20 | 1978-08-15 | ||
JPS53100933A (en) * | 1977-02-17 | 1978-09-02 | Fujitsu Ltd | Automatic regulating apparatus for non-electrolysis copper plating liquid |
JPS5714943A (en) * | 1980-06-30 | 1982-01-26 | Sharp Corp | Display system of computer or the like |
JPS5781670A (en) * | 1980-11-07 | 1982-05-21 | Hitachi Ltd | Editing method of document |
JPS5852733A (ja) * | 1981-09-25 | 1983-03-29 | Canon Inc | パターン出力方法及び装置 |
JPS58181148A (ja) * | 1982-04-15 | 1983-10-22 | Fujitsu Ltd | S式入力方式 |
JPS5960472A (ja) * | 1982-09-30 | 1984-04-06 | 富士通株式会社 | 添字の制御方法 |
-
1984
- 1984-09-07 JP JP59186320A patent/JPH0692153B2/ja not_active Expired - Lifetime
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS53100933U (ja) * | 1977-01-20 | 1978-08-15 | ||
JPS53100933A (en) * | 1977-02-17 | 1978-09-02 | Fujitsu Ltd | Automatic regulating apparatus for non-electrolysis copper plating liquid |
JPS5714943A (en) * | 1980-06-30 | 1982-01-26 | Sharp Corp | Display system of computer or the like |
JPS5781670A (en) * | 1980-11-07 | 1982-05-21 | Hitachi Ltd | Editing method of document |
JPS5852733A (ja) * | 1981-09-25 | 1983-03-29 | Canon Inc | パターン出力方法及び装置 |
JPS58181148A (ja) * | 1982-04-15 | 1983-10-22 | Fujitsu Ltd | S式入力方式 |
JPS5960472A (ja) * | 1982-09-30 | 1984-04-06 | 富士通株式会社 | 添字の制御方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62250481A (ja) * | 1986-03-31 | 1987-10-31 | ウオング・ラボラトリ−ズ・インコ−ポレ−テツド | 多次元又は多方向テキスト・エデイタ− |
JPS63184157A (ja) * | 1986-08-08 | 1988-07-29 | ウォング・ラボラトリ−ズ・インコ−ポレ−テッド | 多次元又は多方向テキスト・エディタ− |
JPS63108456A (ja) * | 1986-10-25 | 1988-05-13 | Ricoh Co Ltd | 数式入力方法 |
JPH0196753A (ja) * | 1987-10-09 | 1989-04-14 | Hitachi Ltd | 数式編集方式 |
JPH0244458A (ja) * | 1988-08-05 | 1990-02-14 | Ricoh Co Ltd | 文字処理装置 |
JPH0264857A (ja) * | 1988-08-31 | 1990-03-05 | Canon Inc | 文書処理装置 |
JPH0264851A (ja) * | 1988-08-31 | 1990-03-05 | Canon Inc | 数式処理装置及びその方法 |
Also Published As
Publication number | Publication date |
---|---|
JPH0692153B2 (ja) | 1994-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20030193521A1 (en) | Rapid GUI refacing of a legacy application | |
CN110705237B (zh) | 文档的自动生成方法、数据处理设备及存储介质 | |
JPH0640302B2 (ja) | 図式・ソ−スプログラム自動生成方法 | |
JPH03268058A (ja) | 文書作成方法及びその装置 | |
CN110853117A (zh) | 图表绘制方法、装置、设备及存储介质 | |
JPS6164451A (ja) | 文書処理システムにおける数式清書方法 | |
JP2004157927A (ja) | 帳票入力用プログラムの生成方式、生成プログラム及び生成方法 | |
JP2601153B2 (ja) | 数式清書方法 | |
JP2000029677A (ja) | 画面構成自動生成装置 | |
JP3910048B2 (ja) | データベースパブリッシング方法及びその装置 | |
Mittelbach et al. | Volunteer work for the LATEX3 project | |
JPH09212630A (ja) | 図形作成装置 | |
JP4026862B2 (ja) | 新聞制作システムの見出し組文字サイズ設定装置 | |
JPS6255769A (ja) | 文書画像の処理装置 | |
CN115373690A (zh) | 一种将艾默生ovation转化成iplat组态的转换方法和系统 | |
JP2023087805A (ja) | 情報処理装置及びプログラム | |
JP3977874B2 (ja) | 文書出力方法および装置 | |
WO2002037206A2 (en) | Method and system for automatic layout of visual objects | |
JPS6250834A (ja) | 印刷物の罫版下作成方法 | |
CN115544980A (zh) | 基于Revit的Excel文件生成文档方法及设备 | |
JP2000011072A (ja) | データ印字プログラム生成方法 | |
JPS60134335A (ja) | ソ−スプログラムの印刷方法 | |
JPH11265374A (ja) | 文書製作方法ならびにシステム、及び同方法がプログラムされ記録される記録媒体 | |
JP2001101165A (ja) | 文書編集装置 | |
JPS63165952A (ja) | 雑誌編集システム |