Esempio n. 1
0
        public void TestStartNewPagePropertySet()
        {
            var rtfParagraph = new RtfParagraph(true, true);

            rtfParagraph.StartNewPage = false;
            Assert.AreEqual(false, rtfParagraph.StartNewPage);
        }
Esempio n. 2
0
        public override void addParagraphLink(string text, IFont font, string link, IFont linkFont)
        {
            RtfParagraph  par = fDocument.addParagraph();
            RtfCharFormat fmt = addParagraphChunk(par, text, font);

            fmt.LocalHyperlink = link;
        }
        protected override void Write(string weaponnames, Info weapon)
        {
            RtfParagraph  paragraphWeaponName = _document.addParagraph();
            RtfCharFormat formatWeaponName    = paragraphWeaponName.addCharFormat();

            formatWeaponName.FontStyle.addStyle(FontStyleFlag.Bold);
            paragraphWeaponName.Text.Append(weaponnames);

            RtfParagraph  paragraph = _document.addParagraph();
            RtfCharFormat format    = paragraph.addCharFormat();

            paragraph.Text.AppendLine(weapon.info);

            if (weapon.additionalFields == null)
            {
                return;
            }

            foreach (KeyValuePair <string, string> pair in weapon.additionalFields)
            {
                paragraph.Text.Append(pair.Key);
                paragraph.Text.Append(": ");
                paragraph.Text.Append(pair.Value);
                paragraph.Text.AppendLine();
            }
        }
Esempio n. 4
0
        private static RtfCharFormat addParagraphChunk(RtfParagraph par, string text, IFont font)
        {
            FontStruct fntStr = ((FontHandler)font).Handle;

            par.DefaultCharFormat.Font = fntStr.FD;

            int beg = par.Text.Length;

            par.Text.Append(text);
            int end = par.Text.Length - 1;

            RtfCharFormat fmt = par.addCharFormat(beg, end);

            fmt.Font     = fntStr.FD;
            fmt.FgColor  = fntStr.Color;
            fmt.FontSize = fntStr.Size;
            if (fntStr.Bold)
            {
                fmt.FontStyle.addStyle(FontStyleFlag.Bold);
            }
            if (fntStr.Underline)
            {
                fmt.FontStyle.addStyle(FontStyleFlag.Underline);
            }

            return(fmt);
        }
Esempio n. 5
0
        public override void addParagraphAnchor(string text, IFont font, string anchor)
        {
            RtfParagraph  par = fDocument.addParagraph();
            RtfCharFormat fmt = addParagraphChunk(par, text, font);

            fmt.Bookmark = anchor;
        }
Esempio n. 6
0
        public override void addParagraph(string text, IFont font, TextAlignment alignment)
        {
            RtfParagraph par = fDocument.addParagraph();

            par.Alignment = iAlignments[(int)alignment];
            addParagraphChunk(par, text, font);
        }
Esempio n. 7
0
        public void TestDefaultCharFormatProperty()
        {
            var text         = "Test Paragraph";
            var rtfParagraph = new RtfParagraph(true, true);

            rtfParagraph.setText(text);
            Assert.DoesNotThrow(() => { var defaultCharformat = rtfParagraph.DefaultCharFormat; });
        }
Esempio n. 8
0
        public void CheckRightDirectionForParagraph()
        {
            var rtfParagraph = new RtfParagraph(true, true);

            rtfParagraph.ReadingDirection = ReadingDirection.RightToLeft;

            Assert.AreEqual(ReadingDirection.RightToLeft, rtfParagraph.ReadingDirection);
        }
Esempio n. 9
0
        public void AddFootNoteForParagraph()
        {
            var text         = "Test FootNote";
            var rtfParagraph = new RtfParagraph(true, true);

            rtfParagraph.setText(text);
            Assert.DoesNotThrow(() => rtfParagraph.addFootnote(1));
        }
        protected override void WriteSlot(string text)
        {
            RtfParagraph  paragraph = _document.addParagraph();
            RtfCharFormat format    = paragraph.addCharFormat();

            format.FontStyle.addStyle(FontStyleFlag.Italic);
            paragraph.Text.AppendLine(text);
        }
Esempio n. 11
0
        public void BuildTokenListTest()
        {
            var rtfParagraph = new RtfParagraph(true, true, ReadingDirection.LeftToRight);

            rtfParagraph.setText("Test Token Method");
            rtfParagraph.addCharFormat(-1, -1);
            Assert.DoesNotThrow(() => rtfParagraph.render());
        }
        protected override void WriteClass(string text)
        {
            RtfParagraph  paragraph = _document.addParagraph();
            RtfCharFormat format    = paragraph.addCharFormat();

            format.FontStyle.addStyle(FontStyleFlag.Bold | FontStyleFlag.Underline);
            paragraph.Text.AppendLine(text);
        }
Esempio n. 13
0
        public void BuildTokenListTestForTotalParagraph()
        {
            var text         = "Test Token Method";
            var rtfParagraph = new RtfParagraph(true, true, ReadingDirection.LeftToRight);

            rtfParagraph.setText(text);
            rtfParagraph.addCharFormat(0, text.Length - 1);
            Assert.DoesNotThrow(() => rtfParagraph.render());
        }
Esempio n. 14
0
        private static void AddListItem(string text, FontStruct fntStr)
        {
            RtfParagraph par = fDocument.addParagraph();

            var symFont = CreateFont("Symbol", fntStr.Size, fntStr.Bold, fntStr.Underline, fntStr.OriginalColor);

            AddParagraphChunk(par, "\t· ", symFont);
            AddParagraphChunk(par, text, fntStr);
        }
Esempio n. 15
0
        public void GenerateExceptionWhenEnd_GreaterThanOrEqualTo_TextLength()
        {
            var text         = "Test Token Method";
            int end          = text.Length;
            var rtfParagraph = new RtfParagraph(true, true, ReadingDirection.LeftToRight);

            rtfParagraph.setText(text);
            Assert.Throws <Exception>(() => rtfParagraph.addCharFormat(0, text.Length));
        }
Esempio n. 16
0
        public void TestLineSpacingPropertySet()
        {
            var text         = "Test Paragraph";
            var rtfParagraph = new RtfParagraph(true, true);

            rtfParagraph.LineSpacing = 2;
            rtfParagraph.setText(text);
            Assert.AreEqual(2, rtfParagraph.LineSpacing);
        }
Esempio n. 17
0
        public void TestFirstLineIndentPropertySet()
        {
            var text         = "Test Paragraph";
            var rtfParagraph = new RtfParagraph(true, true);

            rtfParagraph.FirstLineIndent = 2;
            rtfParagraph.setText(text);
            Assert.AreEqual(2, rtfParagraph.FirstLineIndent);
        }
Esempio n. 18
0
        public override void addListItem(string text, IFont font)
        {
            RtfParagraph par = fDocument.addParagraph();

            FontStruct fntStr  = ((FontHandler)font).Handle;
            var        symFont = CreateFont("Symbol", fntStr.Size, fntStr.Bold, fntStr.Underline, fntStr.OriginalColor);

            addParagraphChunk(par, "\t· ", symFont);
            addParagraphChunk(par, text, font);
        }
Esempio n. 19
0
        public override void beginParagraph(TextAlignment alignment, float spacingBefore, float spacingAfter)
        {
            fParagraph           = fDocument.addParagraph();
            fParagraph.Alignment = iAlignments[(int)alignment];

            var margins = fParagraph.Margins;

            margins[Direction.Top]    = spacingBefore;
            margins[Direction.Bottom] = spacingAfter;
        }
Esempio n. 20
0
        public void AddCharFormatForParagraphWithoutBeginandEnd()
        {
            var text         = "Test Paragraph";
            var rtfParagraph = new RtfParagraph(true, true);

            rtfParagraph.setText(text);
            var charFormat = rtfParagraph.addCharFormat();

            Assert.AreEqual(text.Length, rtfParagraph.Text.Length);
            Assert.IsNotNull(charFormat);
        }
Esempio n. 21
0
        public override void BeginParagraph(TextAlignment alignment,
                                            float spacingBefore, float spacingAfter,
                                            float indent = 0.0f, bool keepTogether = false)
        {
            fParagraph           = fDocument.addParagraph();
            fParagraph.Alignment = iAlignments[(int)alignment];

            var margins = fParagraph.Margins;

            margins[Direction.Top]    = spacingBefore;
            margins[Direction.Bottom] = spacingAfter;
        }
Esempio n. 22
0
        public void AddCharFormatForParagraph()
        {
            var text         = "Test Paragraph";
            var rtfParagraph = new RtfParagraph(true, true);

            rtfParagraph.LineSpacing     = 2;
            rtfParagraph.FirstLineIndent = 2;
            rtfParagraph.StartNewPage    = false;
            rtfParagraph.setText(text);
            var charFormat = rtfParagraph.addCharFormat(1, 6);

            Assert.AreEqual(text.Length, rtfParagraph.Text.Length);
            Assert.IsNotNull(charFormat);
        }
        protected override void Write(RebalanceInfo weapon)
        {
            RtfParagraph  paragraphWeaponName = _document.addParagraph();
            RtfCharFormat formatWeaponName    = paragraphWeaponName.addCharFormat();

            formatWeaponName.FontStyle.addStyle(FontStyleFlag.Bold);
            paragraphWeaponName.Text.AppendLine(weapon.name);

            RtfParagraph  paragraph = _document.addParagraph();
            RtfCharFormat format    = paragraph.addCharFormat();

            paragraph.Text.AppendLine(weapon.info);
            paragraph.Text.AppendLine();
        }
Esempio n. 24
0
        private static void AddParagraph(string text, FontStruct font, Align alignment,
                                         float spacingBefore, float spacingAfter,
                                         float indent = 0.0f, bool keepTogether = false)
        {
            RtfParagraph par = fDocument.addParagraph();

            par.Alignment = alignment;

            var margins = par.Margins;

            margins[Direction.Top]    = spacingBefore;
            margins[Direction.Bottom] = spacingAfter;

            AddParagraphChunk(par, text, font);
        }
Esempio n. 25
0
        public override void addListItemLink(string text, IFont font, string link, IFont linkFont)
        {
            RtfParagraph par = fDocument.addParagraph();

            FontStruct fntStr  = ((FontHandler)font).Handle;
            var        symFont = CreateFont("Symbol", fntStr.Size, fntStr.Bold, fntStr.Underline, fntStr.OriginalColor);

            addParagraphChunk(par, "\t· ", symFont);
            addParagraphChunk(par, text, font);

            if (!string.IsNullOrEmpty(link))
            {
                RtfCharFormat fmt = addParagraphChunk(par, link, linkFont);
                fmt.LocalHyperlink = link;
            }
        }
        private void btnReport_Click(object sender, EventArgs e)
        {
            RtfDocument  doc = new RtfDocument(PaperSize.A4, PaperOrientation.Landscape, Lcid.Russian);
            RtfParagraph p   = doc.addParagraph();

            p.Text = "Статистика победителей и призёров олимпиад по регионам";

            p      = doc.addParagraph();
            p.Text = FacultyId.HasValue ? cbFaculty.Text : "";

            p      = doc.addParagraph();
            p.Text = StudyFormId.HasValue ? "" + cbStudyForm.Text : "";

            p      = doc.addParagraph();
            p.Text = StudyBasisId.HasValue ? "" + cbStudyBasis.Text : "";
        }
Esempio n. 27
0
        public void LTR_ParagraphRender()
        {
            var textPara = "Test Paragraph";
            var sb       = new StringBuilder();

            sb.AppendLine(string.Format(@"{{\pard\fi0\{0}par\ql", LtrContent))
            .AppendLine(textPara)
            .AppendLine(@"\par}");

            var expectString = sb.ToString();

            var rtfParagraph = new RtfParagraph(true, true);

            rtfParagraph.setText(textPara);
            var result = rtfParagraph.render();

            Assert.AreEqual(expectString, result);
        }
Esempio n. 28
0
        private void _btTable_Click(object sender, System.EventArgs e)
        {
            // create document
            C1WordDocument c1Word = new C1WordDocument();

            c1Word.Info.Title = "Sample with tables";
            _statusBar.Text   = "Creating document...";

            int      rows  = 4;
            int      cols  = 2;
            RtfTable table = new RtfTable(rows, cols);

            table.BottomBorderStyle = table.LeftBorderStyle = table.RightBorderStyle = table.TopBorderStyle = RtfBorderStyle.Single;
            table.BottomBorderWidth = table.LeftBorderWidth = table.RightBorderWidth = table.TopBorderWidth = 1;
            c1Word.Add(table);
            for (int row = 0; row < rows; row++)
            {
                for (int col = 0; col < cols; col++)
                {
                    var cell = table.Rows[row].Cells[col];
                    cell.BottomBorderStyle = cell.LeftBorderStyle = cell.RightBorderStyle = cell.TopBorderStyle = RtfBorderStyle.Single;
                    cell.BottomBorderWidth = cell.LeftBorderWidth = cell.RightBorderWidth = cell.TopBorderWidth = 1;
                    RtfParagraph paragraph = new RtfParagraph();
                    paragraph.Content.Add(new RtfString(string.Format("table cell {0}:{1}.", row, col)));
                    cell.Content.Add(paragraph);
                }
            }

            Font font = new Font("Arial", 10, FontStyle.Regular);

            c1Word.AddParagraph("Simple table.", font, Color.Blue);

            _statusBar.Text = "Saving document...";
            string fileName = GetFileName(c1Word, "table.rtf");

            c1Word.Save(fileName);
            Process.Start(fileName);
            _statusBar.Text = "Ready.";
        }
Esempio n. 29
0
        private static void AddParagraphChunk(RtfParagraph par, string text, FontStruct fntStr)
        {
            par.DefaultCharFormat.Font = fntStr.FD;

            int beg = par.Text.Length;

            par.Text.Append(text);
            int end = par.Text.Length - 1;

            RtfCharFormat fmt = par.addCharFormat(beg, end);

            fmt.Font     = fntStr.FD;
            fmt.FgColor  = fntStr.Color;
            fmt.FontSize = fntStr.Size;
            if (fntStr.Bold)
            {
                fmt.FontStyle.addStyle(FontStyleFlag.Bold);
            }
            if (fntStr.Underline)
            {
                fmt.FontStyle.addStyle(FontStyleFlag.Underline);
            }
        }
Esempio n. 30
0
        /**
         * Takes an Element subclass and returns the correct IRtfBasicElement
         * subclass, that wraps the Element subclass.
         *
         * @param element The Element to wrap
         * @return A IRtfBasicElement wrapping the Element
         * @throws DocumentException
         */
        public IRtfBasicElement MapElement(IElement element)
        {
            IRtfBasicElement rtfElement = null;

            if (element is IRtfBasicElement)
            {
                rtfElement = (IRtfBasicElement)element;
                rtfElement.SetRtfDocument(this.rtfDoc);
                return(rtfElement);
            }
            switch (element.Type)
            {
            case Element.CHUNK:
                if (((Chunk)element).GetImage() != null)
                {
                    rtfElement = new RtfImage(rtfDoc, ((Chunk)element).GetImage());
                }
                else if (((Chunk)element).HasAttributes() && ((Chunk)element).Attributes.ContainsKey(Chunk.NEWPAGE))
                {
                    rtfElement = new RtfNewPage(rtfDoc);
                }
                else
                {
                    rtfElement = new RtfChunk(rtfDoc, (Chunk)element);
                }
                break;

            case Element.PHRASE:
                rtfElement = new RtfPhrase(rtfDoc, (Phrase)element);
                break;

            case Element.PARAGRAPH:
                rtfElement = new RtfParagraph(rtfDoc, (Paragraph)element);
                break;

            case Element.ANCHOR:
                rtfElement = new RtfAnchor(rtfDoc, (Anchor)element);
                break;

            case Element.ANNOTATION:
                rtfElement = new RtfAnnotation(rtfDoc, (Annotation)element);
                break;

            case Element.IMGRAW:
            case Element.IMGTEMPLATE:
            case Element.JPEG:
                rtfElement = new RtfImage(rtfDoc, (Image)element);
                break;

            case Element.AUTHOR:
            case Element.SUBJECT:
            case Element.KEYWORDS:
            case Element.TITLE:
            case Element.PRODUCER:
            case Element.CREATIONDATE:
                rtfElement = new RtfInfoElement(rtfDoc, (Meta)element);
                break;

            case Element.LIST:
                rtfElement = new RtfList(rtfDoc, (List)element);
                break;

            case Element.LISTITEM:
                rtfElement = new RtfListItem(rtfDoc, (ListItem)element);
                break;

            case Element.SECTION:
                rtfElement = new RtfSection(rtfDoc, (Section)element);
                break;

            case Element.CHAPTER:
                rtfElement = new RtfChapter(rtfDoc, (Chapter)element);
                break;

            case Element.TABLE:
                try {
                    rtfElement = new TB.RtfTable(rtfDoc, (Table)element);
                }
                catch (InvalidCastException) {
                    rtfElement = new TB.RtfTable(rtfDoc, ((SimpleTable)element).CreateTable());
                }
                break;
            }

            return(rtfElement);
        }