示例#1
0
        //[System.STAThread]
        //static void Main()
        //{
        //    TestWriteFile();
        //    TestClipboard();
        //}

        /// <summary>
        /// 测试生成RTF文件
        /// 执行这个函数后可以使用 MS Word 打开文件 c:\a.rtf
        /// </summary>
        internal static void TestWriteFile()
        {
            RTFWriter w = new RTFWriter("c:\\a.rtf");

            TestBuildRTF(w);
            w.Close();
            System.Windows.Forms.MessageBox.Show("好了,你可以打开文件 c:\\a.rtf 了.");
        }
示例#2
0
        /// <summary>
        /// 测试生成RTF文档并设置到系统剪切板中
        /// 执行这个函数后就可以在 MS Word中使用粘贴操作来显示程序生成的文档了
        /// </summary>
        internal static void TestClipboard()
        {
            System.IO.StringWriter myStr = new System.IO.StringWriter();
            RTFWriter w = new RTFWriter(myStr);

            TestBuildRTF(w);
            w.Close();
            System.Windows.Forms.DataObject data = new System.Windows.Forms.DataObject();
            data.SetData(System.Windows.Forms.DataFormats.Rtf, myStr.ToString());
            System.Windows.Forms.Clipboard.SetDataObject(data, true);
            System.Windows.Forms.MessageBox.Show("好了,你可以在MS Word 中粘贴文本了.");
        }
示例#3
0
 /// <summary>
 /// 测试生成RTF文档
 /// </summary>
 /// <param name="w">RTF文档书写器</param>
 public static void TestBuildRTF(RTFWriter w)
 {
     w.Encoding = System.Text.Encoding.GetEncoding(936);
     // 输出文件头
     w.WriteStartGroup();
     w.WriteKeyword("rtf1");
     w.WriteKeyword("ansi");
     w.WriteKeyword("ansicpg" + w.Encoding.CodePage);
     // 输出字体表
     w.WriteStartGroup();
     w.WriteKeyword("fonttbl");
     w.WriteStartGroup();
     w.WriteKeyword("f0");
     w.WriteText("隶书;");
     w.WriteEndGroup();
     w.WriteStartGroup();
     w.WriteKeyword("f1");
     w.WriteText("宋体;");
     w.WriteEndGroup();
     w.WriteEndGroup();
     // 输出颜色表
     w.WriteStartGroup();
     w.WriteKeyword("colortbl");
     w.WriteText(";");
     w.WriteKeyword("red0");
     w.WriteKeyword("green0");
     w.WriteKeyword("blue255");
     w.WriteText(";");
     w.WriteEndGroup();
     // 输出正文
     w.WriteKeyword("qc");    // 设置居中对齐
     w.WriteKeyword("f0");    // 设置字体
     w.WriteKeyword("fs30");  // 字体大小
     w.WriteText("这是第一段文本 ");
     w.WriteKeyword("cf1");   // 设置颜色
     w.WriteText("隶书 ");
     w.WriteKeyword("cf0");   // 设置为默认颜色
     w.WriteKeyword("f1");    // 设置字体
     w.WriteText("居中对齐 ABC12345");
     w.WriteKeyword("par");   // 开始新的段落
     w.WriteKeyword("pard");  // 清除居中对齐
     w.WriteKeyword("f1");    // 设置字体
     w.WriteKeyword("fs20");  // 字体大小
     w.WriteKeyword("cf1");
     w.WriteText("这是第二段文本 宋体 左对齐 ABC12345");
     // 结束输出
     w.WriteEndGroup();
 }