/ClosedXML/ClosedXML/ClosedXML_Examples/Misc/AdjustToContents.cs
# · C# · 145 lines · 79 code · 42 blank · 24 comment · 4 complexity · 8c1a7b7e4b6d24d158e237d2dfb4374a MD5 · raw file
- using System;
- using ClosedXML.Excel;
-
-
- namespace ClosedXML_Examples.Misc
- {
- public class AdjustToContents : IXLExample
- {
- #region Variables
-
- // Public
-
- // Private
-
-
- #endregion
-
- #region Properties
-
- // Public
-
- // Private
-
- // Override
-
-
- #endregion
-
- #region Events
-
- // Public
-
- // Private
-
- // Override
-
-
- #endregion
-
- #region Methods
-
- // Public
- public void Create(String filePath)
- {
- var wb = new XLWorkbook();
- var ws = wb.Worksheets.Add("Adjust To Contents");
-
- // Set some values with different font sizes
- ws.Cell(1, 1).Value = "Tall Row";
- ws.Cell(1, 1).Style.Font.FontSize = 30;
- ws.Cell(2, 1).Value = "Very Wide Column";
- ws.Cell(2, 1).Style.Font.FontSize = 20;
-
- // Adjust column width
- ws.Column(1).AdjustToContents();
-
- // Adjust row heights
- ws.Rows(1, 2).AdjustToContents();
-
- // You can also adjust all rows/columns in one shot
- // ws.Rows().AdjustToContents();
- // ws.Columns().AdjustToContents();
-
-
- // We'll now select which cells should be used for calculating the
- // column widths (same method applies for row heights)
-
- // Set the values
- ws.Cell(4, 2).Value = "Width ignored because calling column.AdjustToContents(5, 7)";
- ws.Cell(5, 2).Value = "Short text";
- ws.Cell(6, 2).Value = "Width ignored because it's part of a merge";
- ws.Range(6, 2, 6, 4).Merge();
- ws.Cell(7, 2).Value = "Width should adjust to this cell";
- ws.Cell(8, 2).Value = "Width ignored because calling column.AdjustToContents(5, 7)";
-
- // Adjust column widths only taking into account rows 5-7
- // (merged cells will be ignored)
- ws.Column(2).AdjustToContents(5, 7);
-
- // You can also specify the starting row to start calculating the widths:
- // e.g. ws.Column(3).AdjustToContents(9);
-
- var ws2 = wb.Worksheets.Add("Adjust Widths");
- ws2.Cell(1, 1).SetValue("Text to adjust - 255").Style.Alignment.TextRotation = 255;
- for (Int32 co = 0; co < 90; co += 5)
- {
- ws2.Cell(1, (co / 5) + 2).SetValue("Text to adjust - " + co).Style.Alignment.TextRotation = co;
- }
-
- ws2.Columns().AdjustToContents();
-
- var ws4 = wb.Worksheets.Add("Adjust Widths 2");
- ws4.Cell(1, 1).SetValue("Text to adjust - 255").Style.Alignment.TextRotation = 255;
- for (Int32 co = 0; co < 90; co += 5)
- {
- var c = ws4.Cell(1, (co / 5) + 2);
-
- c.RichText.AddText("Text to adjust - " + co).SetBold();
- c.RichText.AddText(Environment.NewLine);
- c.RichText.AddText("World!").SetBold().SetFontColor(XLColor.Blue).SetFontSize(25);
- c.RichText.AddText(Environment.NewLine);
- c.RichText.AddText("Hello Cruel and unsusual world").SetBold().SetFontSize(20);
- c.RichText.AddText(Environment.NewLine);
- c.RichText.AddText("Hello").SetBold();
- c.Style.Alignment.SetTextRotation(co);
- }
- ws4.Columns().AdjustToContents();
-
- var ws3 = wb.Worksheets.Add("Adjust Heights");
- ws3.Cell(1, 1).SetValue("Text to adjust - 255").Style.Alignment.TextRotation = 255;
- for (Int32 ro = 0; ro < 90; ro += 5)
- {
- ws3.Cell((ro / 5) + 2, 1).SetValue("Text to adjust - " + ro).Style.Alignment.TextRotation = ro;
- }
-
- ws3.Rows().AdjustToContents();
-
- var ws5 = wb.Worksheets.Add("Adjust Heights 2");
- ws5.Cell(1, 1).SetValue("Text to adjust - 255").Style.Alignment.TextRotation = 255;
- for (Int32 ro = 0; ro < 90; ro += 5)
- {
- var c = ws5.Cell((ro / 5) + 2, 1);
- c.RichText.AddText("Text to adjust - " + ro).SetBold();
- c.RichText.AddText(Environment.NewLine);
- c.RichText.AddText("World!").SetBold().SetFontColor(XLColor.Blue).SetFontSize(10);
- c.RichText.AddText(Environment.NewLine);
- c.RichText.AddText("Hello Cruel and unsusual world").SetBold().SetFontSize(15);
- c.RichText.AddText(Environment.NewLine);
- c.RichText.AddText("Hello").SetBold();
- c.Style.Alignment.SetTextRotation(ro);
- }
-
- ws5.Rows().AdjustToContents();
-
- wb.SaveAs(filePath);
- }
-
- // Private
-
- // Override
-
-
- #endregion
- }
- }