Example #1
0
 public void GetLineSpacingInfo(uint line, string text, Xceed.Document.NET.Paragraph p)
 {
     try
     {
         if (p.LineSpacing == 0)
         {
             throw new Exception();
         }
         else if (Math.Round(p.LineSpacing, 2, MidpointRounding.AwayFromZero) != Math.Round(DefaultLineSpacing, 2, MidpointRounding.AwayFromZero))
         {
             ResultErrors += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                             " - используется неверный междустрочный интервал: " +
                             (p.LineSpacing / 12).ToString("0.00").Replace(',', '.') + $" вместо {(DefaultLineSpacing / 12).ToString("0.00").Replace(',', '.')} строки" + '\n';
             if (checkCopy)
             {
                 if (checkErrors)
                 {
                     p.InsertText($"\n--- Используется неверный междустрочный интервал: {(p.LineSpacing / 12).ToString("0.00").Replace(',', '.')} вместо {(DefaultLineSpacing / 12).ToString("0.00").Replace(',', '.')} строки ---");
                 }
             }
         }
     }
     catch
     {
         ResultWarnings += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                           " - предположительно используется неверный междустрочный интервал." + '\n';
         if (checkCopy)
         {
             if (checkWarnings)
             {
                 p.InsertText("\n--- Предположительно используется неверный междустрочный интервал. ---");
             }
         }
     }
 }
Example #2
0
        public void GetFontInfo(uint line, string text, Xceed.Document.NET.Paragraph p)
        {
            HashSet <string> usingFonts = new HashSet <string>();

            try
            {
                foreach (var magic in p.MagicText)
                {
                    /*foreach (var s in styles)
                     * {
                     * // some code
                     * }*/

                    if (magic.formatting.FontFamily.Name != DefaultFont)
                    {
                        if (usingFonts.Contains(magic.formatting.FontFamily.Name) == false)
                        {
                            usingFonts.Add(magic.formatting.FontFamily.Name);
                            ResultErrors += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                            " - используется неверный шрифт: " + magic.formatting.FontFamily.Name + '\n';
                            if (checkCopy)
                            {
                                if (checkErrors)
                                {
                                    p.InsertText($"\n--- Используется неверный шрифт: {magic.formatting.FontFamily.Name}. ---");
                                }
                            }
                        }
                    }
                    else if (magic.formatting.FontFamily == null & usingFonts.Contains("null") == false)
                    {
                        usingFonts.Add("null");

                        ResultWarnings += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                          " - предположительно используется неверный шрифт. Возможные варианты:" + '\n';

                        if (checkCopy)
                        {
                            if (checkWarnings)
                            {
                                p.InsertText("\n--- Предположительно используется неверный шрифт. Возможные варианты: ---");
                            }
                        }

                        foreach (var f in fontTable.ChildElements)
                        {
                            Font font = f as Font;
                            if (!font.Name.ToString().Contains(DefaultFont) & !font.Name.ToString().Contains("serif"))
                            {
                                ResultWarnings += "* " + font.Name + '\n';
                            }

                            if (checkCopy)
                            {
                                if (checkWarnings)
                                {
                                    p.InsertText($"\n* {font.Name}");
                                }
                            }
                        }
                    }
                }
                usingFonts.Clear();
            }
            catch
            {
                ResultWarnings += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                  " - предположительно используется неверный шрифт. Возможные варианты:" + '\n';

                if (checkCopy)
                {
                    if (checkWarnings)
                    {
                        p.InsertText("\n--- Предположительно используется неверный шрифт. Возможные варианты: ---");
                    }
                }

                foreach (var f in fontTable.ChildElements)
                {
                    Font font = f as Font;
                    if (!font.Name.ToString().Contains(DefaultFont) & !font.Name.ToString().Contains("serif"))
                    {
                        ResultWarnings += "* " + font.Name + '\n';
                    }

                    if (checkCopy)
                    {
                        if (checkWarnings)
                        {
                            p.InsertText($"\n* {font.Name}");
                        }
                    }
                }
            }
        }
Example #3
0
 public void GetAlignmentInfo(uint line, string text, Xceed.Document.NET.Paragraph p)
 {
     try
     {
         if (p.Alignment.ToString() != DefaultAlignment)
         {
             if (p.Alignment.ToString() == "center")
             {
                 ResultErrors += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                 " - используется выравнивание по центру." + '\n';
                 if (checkCopy)
                 {
                     if (checkErrors)
                     {
                         p.InsertText("\n--- Используется выравнивание по центру. ---");
                     }
                 }
             }
             else if (p.Alignment.ToString() == "left")
             {
                 ResultErrors += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                 " - используется выравнивание по левому краю." + '\n';
                 if (checkCopy)
                 {
                     if (checkErrors)
                     {
                         p.InsertText("\n--- Используется выравнивание по левому краю. ---");
                     }
                 }
             }
             else if (p.Alignment.ToString() == "right")
             {
                 ResultErrors += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                 " - используется выравнивание по правому краю." + '\n';
                 if (checkCopy)
                 {
                     if (checkErrors)
                     {
                         p.InsertText("\n--- Используется выравнивание по правому краю. ---");
                     }
                 }
             }
             else if (p.Alignment.ToString() == "both")
             {
                 ResultErrors += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                 " - используется выравнивание по ширине." + '\n';
                 if (checkCopy)
                 {
                     if (checkErrors)
                     {
                         p.InsertText("\n--- Используется выравнивание по ширине. ---");
                     }
                 }
             }
             else
             {
                 ResultWarnings += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                   " - предположительно используется неверное выравнивание." + '\n';
                 if (checkCopy)
                 {
                     if (checkWarnings)
                     {
                         p.InsertText("\n--- Предположительно используется неверное выравнивание. ---");
                     }
                 }
             }
         }
     }
     catch { }
 }
Example #4
0
        public void GetFontSizeInfo(uint line, string text, Xceed.Document.NET.Paragraph p)
        {
            HashSet <double?> usingSize = new HashSet <double?>();

            try
            {
                foreach (var magic in p.MagicText)
                {
                    if (magic.formatting.Size != DefaultFontSize & usingSize.Contains(magic.formatting.Size) == false & magic.formatting.Size != null & magic.formatting.Size != 0)
                    {
                        usingSize.Add(magic.formatting.Size);
                        ResultErrors += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                        " - используется неверный кегль: " + magic.formatting.Size + '\n';
                        if (checkCopy)
                        {
                            if (checkErrors)
                            {
                                p.InsertText($"\n--- Используется неверный кегль: {magic.formatting.Size} ---");
                            }
                        }
                        usingSize.Add(magic.formatting.Size);
                    }
                    else if ((magic.formatting.Size == null || magic.formatting.Size == 0) & usingSize.Contains(DefaultOpenXmlFontSize / 2) == false)
                    {
                        if (DefaultFontSize != 0 & DefaultOpenXmlFontSize != 0 & (DefaultOpenXmlFontSize / 2) != DefaultFontSize)
                        {
                            ResultWarnings += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                              $" - предположительно используется неверный кегль. Возможно: {DefaultOpenXmlFontSize / 2}" + '\n';
                            if (checkCopy)
                            {
                                if (checkWarnings)
                                {
                                    p.InsertText($"\n--- Предположительно используется неверный кегль. Возможно: {DefaultOpenXmlFontSize / 2} ---");
                                }
                            }
                            usingSize.Add(DefaultOpenXmlFontSize / 2);
                        }
                        else if (usingSize.Contains(0) == false)
                        {
                            ResultWarnings += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                              " - предположительно используется неверный кегль. " + '\n';
                            if (checkCopy)
                            {
                                if (checkWarnings)
                                {
                                    p.InsertText("\n--- Предположительно используется неверный кегль. ---");
                                }
                            }
                            usingSize.Add(0);
                        }
                    }
                }
                usingSize.Clear();
            }
            catch
            {
                ResultWarnings += "Строка " + line + " (начинается со слов \"" + text + "\" )" +
                                  " - предположительно используется неверный кегль. " + '\n';
                if (checkCopy)
                {
                    if (checkWarnings)
                    {
                        p.InsertText("\n--- Предположительно используется неверный кегль. ---");
                    }
                }
            }
        }