Ejemplo n.º 1
0
            /// <summary>
            /// Ajusta los colores del documento a insertar.
            /// </summary>
            /// <param name="parentNode">Nodo grupo que se está procesando.</param>
            /// <param name="colorDestTbl">Tabla de colores resultante.</param>
            /// <param name="colorToCopyTbl">Tabla de colores del documento a insertar.</param>
            private void adjustColorRecursive(RtfTreeNode parentNode, RtfColorTable colorDestTbl, RtfColorTable colorToCopyTbl)
            {
                if (parentNode != null && parentNode.HasChildNodes())
                {
                    for (int iNdIndex = 0; iNdIndex < parentNode.ChildNodes.Count; iNdIndex++)
                    {
                        if (parentNode.ChildNodes[iNdIndex].NodeType == RtfNodeType.Keyword &&
                            (parentNode.ChildNodes[iNdIndex].NodeKey == "cf" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "cb" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "pncf" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "brdrcf" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "cfpat" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "cbpat" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "clcfpatraw" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "clcbpatraw" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "ulc" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "chcfpat" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "chcbpat" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "highlight" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "clcbpat" ||
                             parentNode.ChildNodes[iNdIndex].NodeKey == "clcfpat") &&
                            parentNode.ChildNodes[iNdIndex].HasParameter)
                        {
                            parentNode.ChildNodes[iNdIndex].Parameter = baseRtfDoc.GetColorID(colorDestTbl, colorToCopyTbl[parentNode.ChildNodes[iNdIndex].Parameter]);
                        }

                        adjustColorRecursive(parentNode.ChildNodes[iNdIndex], colorDestTbl, colorToCopyTbl);
                    }
                }
            }