Specify how to cross string in output PDF and image
Possible Usage Scenarios
When a cell contains text or string but it is larger than the width of the cell, then the string overflows if the next cell in the next column is null or empty. When you save your Excel file into PDF/Image, you can control this overflow by specifying the cross type using the TextCrossType enumeration. It has the following values
-
TextCrossType.Default: Display text like MS Excel which depends on the next cell. If the next cell is null, the string will cross or it will be truncated.
-
TextCrossType.CrossKeep: Display the string like MS Excel exporting PDF/Image
-
TextCrossType.CrossOverride: Display all the text by crossing other cells and override the text of crossed cells
-
TextCrossType.StrictInCell: Only display the string within the width of the cell.
Specify how to cross string in output PDF/Image using TextCrossType
The following sample code loads the sample Excel file and saves it to PDF/Image format by specifying different TextCrossType. The sample Excel file and output files can be downloaded from the following links:
Sample Code
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Load template Excel file | |
Workbook wb = new Workbook(sourceDir + "sampleCrosssType.xlsx"); | |
// Create file streams for saving the PDF and PNG files | |
using (FileStream outputStream = new FileStream(outputDir + "outputCrosssType.pdf", FileMode.Create)) | |
using (FileStream outputStream2 = new FileStream(outputDir + "outputCrosssType.png", FileMode.Create)) | |
{ | |
// Initialize PDF save options | |
PdfSaveOptions saveOptions = new PdfSaveOptions(); | |
// Set text cross type | |
saveOptions.TextCrossType = TextCrossType.StrictInCell; | |
// Save PDF file | |
wb.Save(outputStream, saveOptions); | |
// Initialize image or print options | |
ImageOrPrintOptions imageSaveOptions = new ImageOrPrintOptions(); | |
// Set text cross type | |
imageSaveOptions.TextCrossType = TextCrossType.StrictInCell; | |
// Initialize sheet renderer object | |
SheetRender sheetRenderer = new SheetRender(wb.Worksheets[0], imageSaveOptions); | |
// Create bitmap image from sheet renderer | |
System.Drawing.Bitmap bitmap = sheetRenderer.ToImage(0); | |
// Save PNG image | |
bitmap.Save(outputStream2, ImageFormat.Png); | |
} |