Exemple #1
0
        public NoBreakHyphen AddNoBreakHyphen()
        {
            var noBreakHyphen = NoBreakHyphen.Create();

            Xml.Add(noBreakHyphen.Xml);
            return(noBreakHyphen);
        }
Exemple #2
0
 public void InsertNoBreakHyphen(IElementContext context, NoBreakHyphen hyphen)
 {
     context.AddMutation(new TextInsertion
     {
         Position = context.TextIndex,
         Text     = "‑"
     });
 }
Exemple #3
0
 public bool ProcessElement(IElementProcessingState state, NoBreakHyphen noBreakHyphen)
 {
     state.CurrentVNode.Text += "‑"; // non breaking hyphen
     state.CurrentVNode.VOffsets.Add(new VTextOffset
     {
         Index = state.Index,
         Delta = 1
     });
     return(false);
 }
Exemple #4
0
        public void InsertNoBreakHyphen_Test()
        {
            var dash = new NoBreakHyphen();

            _instance.InsertNoBreakHyphen(_context, dash);

            var insertion = _textInsertions.Single();
            Assert.AreEqual(666, insertion.Position);
            Assert.AreEqual("‑", insertion.Text);
        }
Exemple #5
0
        private static IEnumerable <RunContentElementBase> BuildContent(string text)
        {
            if (text == null)
            {
                throw new ArgumentNullException(nameof(text));
            }
            var parts = splitRegex.Split(text);

            return(parts.Select <string, RunContentElementBase>(part =>
            {
                return part switch
                {
                    "\n" => TextBreak.Create(),
                    "\t" => Tab.Create(),
                    "\u00AD" => SoftHyphen.Create(),
                    "\u2011" => NoBreakHyphen.Create(),
                    _ => RunText.Create(part)
                };
            }));
        }