///-------------------------------------------------------------------------------------- /// <summary> /// Build a table of styles for testing /// </summary> ///-------------------------------------------------------------------------------------- private void BuildStyleTable(RtfStyleInfoTable styleTable) { // Create a Normal style for everything to be based on (#1) DummyRtfStyle normal = new DummyRtfStyle("Normal", StyleType.kstParagraph); normal.FontInfoForWs(-1).m_fontName.ExplicitValue = "Times New Roman"; styleTable.Add("Normal", normal); // Create a "Paragraph" style that is based on Normal (#2) DummyRtfStyle paragraph = new DummyRtfStyle("Paragraph", StyleType.kstParagraph, 72000, // space before 36000, // space after 18000, // first line indent 9000, // leading indent 4500, // trailing indent "Normal", // based-on style name null); // next style name styleTable.Add("Paragraph", paragraph); // Create a Heading style that is based on "Normal" and has "Paragraph" // as a following style (#3) DummyRtfStyle heading = new DummyRtfStyle("Heading", StyleType.kstParagraph, "Normal", // based-on style name "Paragraph"); // next style name styleTable.Add("Heading", heading); // Create a character style "Emphasis" (#4) DummyRtfStyle emphasis = new DummyRtfStyle("Emphasis", StyleType.kstCharacter, true, 20000); emphasis.FontInfoForWs(-1).m_fontName.ExplicitValue = "Times New Roman"; styleTable.Add("Emphasis", emphasis); // Create a paragraph style that has exact spacing (#5) DummyRtfStyle exactSpacing = new DummyRtfStyle("ExactSpacing", StyleType.kstParagraph, -18000, // line spacing false, // line spacing relativity "Normal", // based-on style name "Paragraph"); // next style name styleTable.Add("ExactSpacing", exactSpacing); // Create a paragraph style that has "at least n" spacing (#6) DummyRtfStyle atLeastSpacing = new DummyRtfStyle("AtLeastSpacing", StyleType.kstParagraph, 18000, // line spacing false, // line spacing relativity "Normal", // based-on style name "Paragraph"); // next style name styleTable.Add("AtLeastSpacing", atLeastSpacing); // Create a Border style (#7) DummyRtfStyle border = new DummyRtfStyle("Border", StyleType.kstParagraph, false, // bold false, // italic FwSuperscriptVal.kssvOff, FwTextAlign.ktalJustify, 0, // line spacing false, // line spacing relativity 0, // space before 0, // space after 0, // first line indent 0, // leading indent 0, // trailing indent "Arial", // font name 20000, // font size Color.Empty, // font color 500, // border top 1000, // border bottom 1500, // border leading 2000, // border trailing Color.Black, // border color null, // based-on style name null); // next style name styleTable.Add("Border", border); styleTable.ConnectStyles(); }