如何获取cfspreadsheet呈现HTML

我正在尝试使用cfspreadsheet创建一个Excel文件.在其中一列中,我有html代码,但是由于某些原因,在excel文件中,html不能得到渲染,它只是纯文本.例如. < b> blabla< / b>而不是大胆.

您知道对此有什么解决方案吗?

最佳答案
原因是cfspreadsheet基于does not support html content的POI.

作为user1450455 mentions,您可以使用任何内置的格式化功能(例如SpreadsheetFormatCell)来格式化整个单元格.

  sheet = spreadSheetNew();
  spreadSheetFormatCell( sheet, {bold=true} , 1, 1 );
  spreadSheetSetCellValue( sheet, "blablah", 1, 1 );

如果您要创建cells with multiple formats(即加粗一些字符,但不加其他字符),则只能通过创建RichTextString使用基础POI库来实现.因此,它需要低得多的代码.

<cfscript>
    sheet     = spreadSheetNew();
    workbook  = sheet.getWorkBook();
    helper    = workbook.getCreationHelper();
    richText  = helper.createRichTextString("ColdFusion");

    // make first few characters bold ie "Cold"
    firstFont = workbook.createFont();
    firstFont.setBoldweight( firstFont.BOLDWEIGHT_BOLD );
    richText.applyFont( 0, 4, firstFont );

    // make next characters red ie "Fusion"
    secondFont = workbook.createFont();
    secondFont.setColor( secondFont.COLOR_RED );
    richText.applyFont( 4, 10, secondFont );

    // create cell via CF and apply formats
    // note, in POI indexes are base 0
    spreadSheetSetCellValue( sheet, "", 2, 1);
    cellA2 = workbook.getSheetAt(0).getRow(1).getCell(0);
    cellA2.setCellValue( richText );
</cfscript>

转载注明原文:如何获取cfspreadsheet呈现HTML - 代码日志