public void GenerateWorksheetName(string pageName) { if (string.IsNullOrEmpty(pageName)) { return; } StringBuilder stringBuilder = ExcelGeneratorStringUtil.SanitizeSheetName(pageName); if (stringBuilder.Length == 0) { return; } pageName = stringBuilder.ToString(); int value = 0; while (m_worksheetNames.TryGetValue(pageName.ToUpperInvariant(), out value) || CheckForSheetNameConflict(pageName)) { value++; m_worksheetNames[pageName.ToUpperInvariant()] = value; string text = string.Format(CultureInfo.InvariantCulture, ExcelRenderRes.SheetNameCounterSuffix, value); if (pageName.Length + text.Length > 31) { pageName = pageName.Remove(31 - text.Length); } pageName += text; } m_worksheet.SheetName = pageName; m_worksheetNames.Add(pageName.ToUpperInvariant(), 1); }
private void RenderCell() { if (this.m_column != -1) { ExcelDataType excelDataType = ExcelDataType.Blank; RichTextInfo richTextInfo = null; if (this.m_cellValue != null) { if (this.m_cellValueType == TypeCode.Object) { richTextInfo = (this.m_cellValue as RichTextInfo); if (richTextInfo != null) { excelDataType = ExcelDataType.RichString; } //else if (this.m_cellValue is SqlGeometry || this.m_cellValue is SqlGeography) //{ // excelDataType = ExcelDataType.String; //} } else { excelDataType = FormatHandler.GetDataType(this.m_cellValueType); } } bool flag = false; switch (excelDataType) { case ExcelDataType.String: { string text = this.m_cellValue.ToString(); if (text.Length > 0) { StringBuilder stringBuilder = new StringBuilder(text.Length); ExcelGeneratorStringUtil.ConvertWhitespaceAppendString(text, stringBuilder, this.m_checkForRotatedEastAsianChars, out flag); this.m_cellValue = stringBuilder.ToString(); } break; } case ExcelDataType.RichString: flag = richTextInfo.FoundRotatedFarEastChar; break; } if (flag) { this.m_styleContainer.Orientation = Orientation.Vertical; } this.m_styleContainer.Finish(); if (this.m_cellValue != null || this.m_styleContainer.CellIxfe != 15) { this.m_rowHandler.Add(this.m_cellValue, richTextInfo, this.m_cellValueType, excelDataType, this.m_cellErrorCode, (short)this.m_column, (ushort)this.m_styleContainer.CellIxfe); } this.m_cellValue = null; this.m_cellValueType = TypeCode.String; this.m_cellErrorCode = ExcelErrorCode.None; this.m_styleContainer.Reset(); this.m_checkForRotatedEastAsianChars = false; } }
public void GenerateWorksheetName(string pageName) { if (!string.IsNullOrEmpty(pageName)) { StringBuilder stringBuilder = ExcelGeneratorStringUtil.SanitizeSheetName(pageName); if (stringBuilder.Length != 0) { pageName = stringBuilder.ToString(); int num = 0; while (true) { if (!this._worksheetNames.TryGetValue(pageName.ToUpperInvariant(), out num) && !this.CheckForSheetNameConflict(pageName)) { break; } num++; this._worksheetNames[pageName.ToUpperInvariant()] = num; string text = string.Format(CultureInfo.InvariantCulture, ExcelRenderRes.SheetNameCounterSuffix, num); if (pageName.Length + text.Length > 31) { pageName = pageName.Remove(31 - text.Length); } pageName += text; } this._currentSheet.Name = pageName; this._worksheetNames.Add(pageName.ToUpperInvariant(), 1); } } }
private void RenderCell() { if (m_column == -1) { return; } ExcelDataType excelDataType = ExcelDataType.Blank; RichTextInfo richTextInfo = null; if (m_cellValue != null) { if (m_cellValueType == TypeCode.Object) { richTextInfo = (m_cellValue as RichTextInfo); if (richTextInfo != null) { excelDataType = ExcelDataType.RichString; } } else { excelDataType = FormatHandler.GetDataType(m_cellValueType); } } bool foundEastAsianChar = false; switch (excelDataType) { case ExcelDataType.String: { string text = m_cellValue.ToString(); if (text.Length > 0) { StringBuilder stringBuilder = new StringBuilder(text.Length); ExcelGeneratorStringUtil.ConvertWhitespaceAppendString(text, stringBuilder, m_checkForRotatedEastAsianChars, out foundEastAsianChar); m_cellValue = stringBuilder.ToString(); } break; } case ExcelDataType.RichString: foundEastAsianChar = richTextInfo.FoundRotatedFarEastChar; break; } if (foundEastAsianChar) { m_styleContainer.Orientation = Orientation.Vertical; } m_styleContainer.Finish(); if (m_cellValue != null || m_styleContainer.CellIxfe != 15) { m_rowHandler.Add(m_cellValue, richTextInfo, m_cellValueType, excelDataType, m_cellErrorCode, (short)m_column, (ushort)m_styleContainer.CellIxfe); } m_cellValue = null; m_cellValueType = TypeCode.String; m_cellErrorCode = ExcelErrorCode.None; m_styleContainer.Reset(); m_checkForRotatedEastAsianChars = false; }
public void AddFooter(string left, string center, string right) { StringBuilder stringBuilder = new StringBuilder(); ExcelGeneratorStringUtil.ConvertWhitespaceAppendString(left, stringBuilder.Append("&L")); ExcelGeneratorStringUtil.ConvertWhitespaceAppendString(center, stringBuilder.Append("&C")); ExcelGeneratorStringUtil.ConvertWhitespaceAppendString(right, stringBuilder.Append("&R")); m_worksheet.FooterString = stringBuilder.ToString(); }
private void AppendWithChecking(string value) { ExcelGeneratorStringUtil.ConvertWhitespaceAppendString(value, m_stringBuilder, m_checkForRotatedFarEastChars, out bool foundEastAsianChar); if (m_checkForRotatedFarEastChars && foundEastAsianChar) { m_checkForRotatedFarEastChars = false; m_foundRotatedFarEastChar = true; } }
private void AppendWithChecking(string value) { bool foundEastAsianChar = false; ExcelGeneratorStringUtil.ConvertWhitespaceAppendString(value, _text, _checkForRotatedFarEastChars, out foundEastAsianChar); if (foundEastAsianChar) { _checkForRotatedFarEastChars = false; _foundRotatedEastAsianChar = true; } }
private void AppendWithChecking(string value) { bool flag = default(bool); ExcelGeneratorStringUtil.ConvertWhitespaceAppendString(value, this.m_stringBuilder, this.m_checkForRotatedFarEastChars, out flag); if (this.m_checkForRotatedFarEastChars && flag) { this.m_checkForRotatedFarEastChars = false; this.m_foundRotatedFarEastChar = true; } }
private void AppendWithChecking(string value) { bool flag = false; ExcelGeneratorStringUtil.ConvertWhitespaceAppendString(value, this._text, this._checkForRotatedFarEastChars, out flag); if (flag) { this._checkForRotatedFarEastChars = false; this._foundRotatedEastAsianChar = true; } }
private string GetUsablePortionOfHeaderFooterString(string candidate, ref int spaceRemaining) { if (!string.IsNullOrEmpty(candidate) && spaceRemaining > 2) { StringBuilder stringBuilder = new StringBuilder(candidate.Length); ExcelGeneratorStringUtil.ConvertWhitespaceAppendString(candidate, stringBuilder); int num = Math.Min(spaceRemaining - 2, stringBuilder.Length); spaceRemaining -= num + 2; return(stringBuilder.ToString(0, num)); } return(null); }
private void FinalizeCell() { if (this._currentRow != null && !this._currentCellHasBeenModified && (this._currentStyle == null || !this._currentStyle.HasBeenModified)) { this._currentRow.ClearCell(this._currentColumn); } else { bool flag = false; if (this._currentRichText != null) { this._currentRichText.Commit(this._currentStyle); flag = this._currentRichText.FoundRotatedEastAsianChar; this._currentRichText = null; } else if (this._currentCell != null && this._currentCell.ValueType == Cell.CellValueType.Text && this._currentCell.Value != null) { string text = this._currentCell.Value.ToString(); if (text.Length > 0) { StringBuilder stringBuilder = new StringBuilder(text.Length); ExcelGeneratorStringUtil.ConvertWhitespaceAppendString(text, stringBuilder, this._checkForRotatedEastAsianChars, out flag); this._currentCell.Value = stringBuilder.ToString(); } } if (flag) { this._currentStyle.Orientation = Orientation.Vertical; } if (this._currentCell != null) { if (this._currentStyle != null && (this._currentCell.ValueType == Cell.CellValueType.Text || this._currentCell.ValueType == Cell.CellValueType.Blank || this._currentCell.ValueType == Cell.CellValueType.Error)) { this._currentStyle.NumberFormat = null; } this._currentCell.Style = this._currentStyle; } this._currentStyle = null; } this._checkForRotatedEastAsianChars = false; }
public void AdjustFirstWorksheetName(string reportName, bool addedDocMap) { if (!string.IsNullOrEmpty(reportName)) { Streamsheet streamsheet = null; if (addedDocMap) { if (this._workbook.Worksheets.Count >= 2) { streamsheet = this._workbook[1]; } } else if (this._workbook.Worksheets.Count >= 1) { streamsheet = this._workbook[0]; } if (streamsheet != null) { streamsheet.Name = ExcelGeneratorStringUtil.SanitizeSheetName(reportName).ToString(); } } }