MathType辅助工具的编写

/*-----------------------------------------------------------------------------
*
* 版权声明:
* 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明
* http://www.cnblogs.com/yuliyang/
* 联系方式:
* Mail:yuliyang@qq.com
*
*-----------------------------------------------------------------------------*/

因为要在博客里写矩阵公式等数学公式,所以用到MatTpye的一项功能:

113

发现复制到博客里都是乱码了,原因就是包含了空格符。

用PYTHON脚本解决:

s=r'''[{F_4} = left[ {egin{array}{*{20}{c}}
   1 & 1 & 1 & 1  \
   1 & i & { - 1} & { - i}  \
   1 & { - 1} & 1 & { - 1}  \
   1 & { - i} & { - 1} & i  \
end{array}} 
ight]]'''
s2="".join(s.split())
print s2

115

result.txt里的内容:

[{F_4}=left[{egin{array}{*{20}{c}}1&1&1&1\1&i&{-1}&{-i}\1&{-1}&1&{-1}\1&{-i}&{-1}&i\end{array}} ight]]

但是发现还是有不方便的,于是用MFC写了个软件,取名曰:《MathType Assistant》

许久不用MFC了,捣鼓了一小时,终于写好!

复习一些知识点:

  • 我想在about软件里加上我博客的地址,好的,加上下面代码:
/* 
 * ===  FUNCTION  ========================================================
 *         Name:   OnStnClickedOpenweb
 *        Returns:   void
 *  Description:   连接到我的博客主页
 * =======================================================================
 */void CAboutDlg::OnStnClickedOpenweb()
{
    // TODO: 在此添加控件通知处理程序代码
    ShellExecute(this->m_hWnd, "open", "http://www.cnblogs.com/yuliyang/",NULL, NULL, SW_SHOWNORMAL); 
}
  • 我想把结果复制到剪贴板,好的,如下代码上也:
    OpenClipboard();
    EmptyClipboard();
    USES_CONVERSION;
    char * pGlobal;
    HGLOBAL hGlobal; // 一个句柄,其实就是HANDLE
    hGlobal = GlobalAlloc(GHND | GMEM_SHARE, (strlen(T2A(m_gongshi.GetBuffer(0)))+1) * sizeof(TCHAR));// 这个句柄,指向了一段内存
     pGlobal = (char*)GlobalLock(hGlobal);        // 把这段内存lock起来使用

    strcpy(pGlobal, T2A(m_gongshi.GetBuffer(0)));          // 复制cst到这段内存
    GlobalUnlock(hGlobal);            // unlock
    SetClipboardData(CF_TEXT,   hGlobal);          // 直接把指向交给函数解决。
    CloseClipboard();

注意m_gongshi是关联文本框控件的成员变量

OpenClipboard(); 不要忘了哦。

  • 获取控件内容和替换掉空格和换行符号:
GetDlgItemText(IDC_EDIT1,m_gongshi);

    m_gongshi.Replace(" ","");
    m_gongshi.Replace("
","");
    m_gongshi.Replace("
","");

好了,代码就是这么简单。

116

黏贴板里的内容:

[a=left[{egin{array}{*{20}{c}}1&2\2&4\end{array}} ight]*left[{egin{array}{*{20}{c}}3\4\end{array}} ight]]

小伙伴们快快来试一下嘛

附上demo一个:

http://pan.baidu.com/share/link?shareid=3322490172&uk=3742184260

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/yuliyang/p/3434141.html