How to format text within a cell?

4 Aug 20219 minutes to read

In Essential XlsIO, You can use the rich text formatting option to format the text within a cell. The following code snippet illustrates this.

using (ExcelEngine excelEngine = new ExcelEngine())
{
    IApplication application = excelEngine.Excel;
    application.DefaultVersion = ExcelVersion.Excel2013;

    IWorkbook workbook = application.Workbooks.Create(1);

    IWorksheet worksheet = workbook.Worksheets[0];

    //Insert Rich Text.

    IRange range = worksheet.Range["A1"];

    range.Text = "RichText";

    IRichTextString richText = range.RichText;

    //Formatting first 4 characters.

    IFont redFont = workbook.CreateFont();

    redFont.Bold = true;

    redFont.Italic = true;

    redFont.RGBColor = Color.Red;

    richText.SetFont(0, 3, redFont);

    //Formatting last 4 characters.

    IFont blueFont = workbook.CreateFont();

    blueFont.Bold = true;

    blueFont.Italic = true;

    blueFont.RGBColor = Color.Blue;

    richText.SetFont(4, 7, blueFont);

    workbook.SaveAs("FormattingText.xlsx");
}
Using excelEngine As ExcelEngine = New ExcelEngine()
    Dim application As IApplication = excelEngine.Excel
    application.DefaultVersion = ExcelVersion.Excel2013

    Dim workbook As IWorkbook = application.Workbooks.Create(1)

    Dim worksheet As IWorksheet = workbook.Worksheets(0)

    'Insert Rich Text.

    Dim range As IRange = worksheet.Range("A1")

    range.Text = "RichText"

    Dim richText As IRichTextString = range.RichText

    'Formatting first 4 characters.

    Dim redFont As IFont = workbook.CreateFont()

    redFont.Bold = True

    redFont.Italic = True

    redFont.RGBColor = Color.Red

    richText.SetFont(0, 3, redFont)

    'Formatting last 4 characters.

    Dim blueFont As IFont = workbook.CreateFont()

    blueFont.Bold = True

    blueFont.Italic = True

    blueFont.RGBColor = Color.Blue

    richText.SetFont(4, 7, blueFont)

    workbook.SaveAs("FormattingText.xlsx")
End Using
using (ExcelEngine excelEngine = new ExcelEngine())
{
    IApplication application = excelEngine.Excel;
    application.DefaultVersion = ExcelVersion.Excel2013;
    IWorkbook workbook = application.Workbooks.Create(1);

    IWorksheet worksheet = workbook.Worksheets[0];

    //Insert Rich Text.

    IRange range = worksheet.Range["A1"];

    range.Text = "RichText";

    IRichTextString richText = range.RichText;

    //Formatting first 4 characters.

    IFont redFont = workbook.CreateFont();

    redFont.Bold = true;

    redFont.Italic = true;

    redFont.RGBColor = Color.FromArgb(255, 255, 0, 0);

    richText.SetFont(0, 3, redFont);

    //Formatting last 4 characters.

    IFont blueFont = workbook.CreateFont();

    blueFont.Bold = true;

    blueFont.Italic = true;

    blueFont.RGBColor = Color.FromArgb(255, 0, 0, 255);

    richText.SetFont(4, 7, blueFont);

    //Initializes FileSavePicker
    FileSavePicker savePicker = new FileSavePicker();
    savePicker.SuggestedStartLocation = PickerLocationId.Desktop;
    savePicker.SuggestedFileName = "FormattingText";
    savePicker.FileTypeChoices.Add("Excel Files", new List<string>() { ".xlsx" });

    //Creates a storage file from FileSavePicker
    StorageFile storageFile = await savePicker.PickSaveFileAsync();

    //Saves changes to the specified storage file
    await workbook.SaveAsAsync(storageFile);
}
using (ExcelEngine excelEngine = new ExcelEngine())
{
    IApplication application = excelEngine.Excel;
    application.DefaultVersion = ExcelVersion.Excel2013;
    IWorkbook workbook = application.Workbooks.Create(1);

    IWorksheet worksheet = workbook.Worksheets[0];

    //Insert Rich Text.

    IRange range = worksheet.Range["A1"];

    range.Text = "RichText";

    IRichTextString richText = range.RichText;

    //Formatting first 4 characters.

    IFont redFont = workbook.CreateFont();

    redFont.Bold = true;

    redFont.Italic = true;

    redFont.RGBColor = Color.Red;

    richText.SetFont(0, 3, redFont);

    //Formatting last 4 characters.

    IFont blueFont = workbook.CreateFont();

    blueFont.Bold = true;

    blueFont.Italic = true;

    blueFont.RGBColor = Color.Blue;

    richText.SetFont(4, 7, blueFont);

    FileStream stream = new FileStream("FormattingText.xlsx", FileMode.OpenOrCreate, FileAccess.ReadWrite);
    workbook.SaveAs(stream);

    workbook.Close();
    excelEngine.Dispose();
}
using (ExcelEngine excelEngine = new ExcelEngine())
{
    IApplication application = excelEngine.Excel;
    application.DefaultVersion = ExcelVersion.Excel2013;
    IWorkbook workbook = application.Workbooks.Create(1);

    IWorksheet worksheet = workbook.Worksheets[0];

    //Insert Rich Text.

    IRange range = worksheet.Range["A1"];

    range.Text = "RichText";

    IRichTextString richText = range.RichText;

    //Formatting first 4 characters.

    IFont redFont = workbook.CreateFont();

    redFont.Bold = true;

    redFont.Italic = true;

    redFont.RGBColor = Color.Red;

    richText.SetFont(0, 3, redFont);

    //Formatting last 4 characters.

    IFont blueFont = workbook.CreateFont();

    blueFont.Bold = true;

    blueFont.Italic = true;

    blueFont.RGBColor = Color.Blue;

    richText.SetFont(4, 7, blueFont);

    MemoryStream stream = new MemoryStream();
    workbook.SaveAs(stream);

    stream.Position = 0;

    //Save the stream as a file in the device and invoke it for viewing
    Xamarin.Forms.DependencyService.Get<ISave>().SaveAndView("FormattingText.xlsx", "application/msexcel", stream);
}

See Also