【 ソ フ ト名 】 MathString
 【 バージョン 】 0.8.1
 【 ソフト種別 】 フリーウェア
 【 必要環境 】 MFCを使用できる開発環境
 【 開発環境 】 Windows XP, Visual C++ 6.0 (MFC)
 【 著 作 権 】 sho
 【 U R L 】 http://www5d.biglobe.ne.jp/~sho-sho/

◆ソフト紹介◆

 数式に特化した、HTMLライクなテキスト描画用クラス郡です。
 HTML, Texを参考に作成しており、標準的な仕様としています。
 上記言語に触れたことのある方はもちろん、初めての方でも簡単に扱えます。
 Windows標準フォントのみを使用しているので、汎用性に優れています。
 また、テキストを任意の角度に傾けて描画することが可能です。

 [機能]
 ブロック要素、各種添え字、分数、平方根・n乗根、
 可変括弧、行列、テーブル、文字・記号、フォント操作...

 [今後の課題]
 ・煤A∫等に正式対応
 ・アクセント機能
 ・Texを参考に、機能の追加・強化
 ・しっかりしたヘルプ作成
 ・微調整



◆DLLの使用方法◆

 リリース用ファイルがMathString.lib, MathString.dll
 デバッグ用ファイルがMathString_d.lib, MathString_d.dll, MathString_d.pdbとなります。

 その他のサポートは現在ありません。
 Demo用のソースを見て、使い方を理解された方だけ使用して下さい。
 ※マクロ、自作の型・関数を多数使用しております。
ヘッダを参照し、名前がかぶらないように気をつけて下さい。



CMathString コントロールクラスの使用方法◆

 各クラスとコントロールとの対応を以下に示します。

クラスコントロール
CStatic_MS スタティックテキスト
CButton_MS ボタン
CButton_MS_Ex チェックボックス
ラジオボタン


 以下、CFormView上のラジオボタンの場合を例に説明します。
 (対象のラジオボタンのIDを「IDC_RADIO1〜IDC_RADIO3」とする。)
 @ ラジオボタンの数だけ、CButton_MS_Exクラスのメンバ変数を定義する。
//  〜.h 内
class ClassA : public CFormView
{
    ・・・

public:
    //{{AFX_DATA(ClassA)
    ・・・

    CButton_MS_Ex m_rad1;                   //  追加
    CButton_MS_Ex m_rad2;
    CButton_MS_Ex m_rad3;
    //}}AFX_DATA

    ・・・
}

 A DoDataExchange関数内で、ラジオボタンのIDとCButton_MS_Exのメンバ変数を対応付ける。
//  〜.cpp 内
void ClassA::DoDataExchange(CDataExchange* pDX)
{
    CFormView::DoDataExchange(pDX);
    //{{AFX_DATA_MAP(ClassA)
    ・・・

    DDX_Control(pDX, IDC_RADIO1, m_rad1);   //  追加
    DDX_Control(pDX, IDC_RADIO2, m_rad2);
    DDX_Control(pDX, IDC_RADIO3, m_rad3);
    //}}AFX_DATA_MAP
}



◆ユーザーの必要環境◆

・MFCランタイムライブラリ
・以下のWindows標準フォント

必要箇所必要フォント
数学系のタグSymbol
文字・記号 Symbol
Times New Roman
Wingdings(一部のみ)

なお、同名のフォントでもバージョンの違いにより、表示具合が若干違うようです。
デフォルトでは当環境で最適になるようカスタマイズされています。
以下に当環境でのフォントのバージョンを示します。
Symbolver1.60
Times New Romanver3.00
Wingdingsver2.55



◆インストール・アンインストール方法◆

 インストールは、HDD上の任意の場所に解凍するだけです。
 アンインストールは、フォルダごと削除するだけです。



◆著作権・使用許諾条項・免責事項◆

 著作権は放棄しませんが、基本的に何でもありです。
 勉強に使うなり、修正・改造するなりお好きにどうぞ。
 ただし、本DLL・ソースを使用したソフトの公開はフリーウェアのみ許諾します。
 また、その旨をREADME・ヘルプ等に記載し、当方へご一報ください。
 商用利用をご希望の方はメールにてご相談下さい。
 なお、本DLL・ソースを使用することによって、いかなる損害が生じても作者はその責を負いません。
 使用者は、本DLL・ソースを使用することによって発生した損害や問題等全てを
 自己のみの責任とすることに同意した場合のみ、本DLL・ソースを使用できるものとします。

 また、本DLL・ソースに対するアドバイス等を当方は歓迎いたします。
 お気軽にメールor掲示板までどうぞ。



◆更新経歴◆

05/05/10
v0.8.1 [追加]
 ・CMathString コントロールクラス
 ・CMathString クラスのパラメータ設定用関数
[修正]
 ・テキストの角度の設定が、すべての CMathString クラスに反映される不具合
 ・CMatrix クラスを削除
 
05/04/05
v0.8 [追加]
 ・タグの属性、スタイル属性
 ・文字、記号を大幅に追加
[修正]
 ・全アルゴリズムを一新
 ・HTML, Texを参考に、標準的な仕様とする
 ・「TextMaker」から「MathString」に改名
 
04/04/04
Demo [追加]
 ・∫、Σ、分数、ルート、一部の記号
 
04/03/24
Demo デモバージョン公開