internal void AddCellDiagonal(int cellIndex, RPLFormat.BorderStyles style, string width, string color, bool slantUp) { BorderCode borderCode = new BorderCode(); byte b = (byte)(slantUp ? 32 : 16); borderCode.Ico24 = Word97Writer.ToIco24(color); double num = Word97Writer.ToPoints(width); borderCode.LineWidth = (byte)(num * 8.0); borderCode.Style = ConvertBorderStyle(style); byte[] array = new byte[11] { (byte)cellIndex, (byte)(cellIndex + 1), b, 0, 0, 0, 0, 0, 0, 0, 0 }; borderCode.Serialize2K3(array, 3); m_tapx.AddSprm(54831, 0, array); }
private void UpdateBorderColor(Positions position, int offset, int cellIndex, bool borderContext) { if (!borderContext) { if (!m_cellBorders[(int)position].Empty) { m_cellBorders[(int)position].Serialize97(m_tapx.Buf, offset + (int)position * 4); m_borderColors.SetColor(position, cellIndex, m_cellBorders[(int)position].Ico24); } } else if (!m_tableBorders[(int)position].Empty) { m_tableBorders[(int)position].Serialize97(m_tapx.Buf, offset + (int)position * 4); m_borderColors.SetColor(position, cellIndex, m_tableBorders[(int)position].Ico24); } m_cellBorders[(int)position] = new BorderCode(); }
internal TableData(int tableLevel, bool layoutTable) { m_tapx = new SprmBuffer(2048, 2); m_tapx.AddSprm(9238, 1, null); m_tapx.AddSprm((ushort)((tableLevel > 1) ? 9292 : 9239), 1, null); m_tapx.AddSprm(26185, tableLevel, null); m_tableBorders = new BorderCode[4]; m_tableBorders[0] = new BorderCode(); m_tableBorders[1] = new BorderCode(); m_tableBorders[2] = new BorderCode(); m_tableBorders[3] = new BorderCode(); m_cellBorders = new BorderCode[4]; m_cellBorders[0] = new BorderCode(); m_cellBorders[1] = new BorderCode(); m_cellBorders[2] = new BorderCode(); m_cellBorders[3] = new BorderCode(); m_layoutTable = layoutTable; }
internal void SetTableContext(BorderContext borderContext) { if (borderContext.Top) { m_tableBorders[0] = new BorderCode(); } if (borderContext.Left) { m_tableBorders[1] = new BorderCode(); } if (borderContext.Bottom) { m_tableBorders[2] = new BorderCode(); } if (borderContext.Right) { m_tableBorders[3] = new BorderCode(); } }
internal void ClearCellBorder(Positions position) { m_cellBorders[(int)position] = new BorderCode(); }
internal void WriteBrc97(byte[] grpprl, int offset, BorderCode brc) { brc.Serialize97(grpprl, offset); }