Search moodle.org's
Developer Documentation

See Release Notes
Long Term Support Release

  • Bug fixes for general core bugs in 4.1.x will end 13 November 2023 (12 months).
  • Bug fixes for security issues in 4.1.x will end 10 November 2025 (36 months).
  • PHP version: minimum PHP 7.4.0 Note: minimum PHP version has increased since Moodle 4.0. PHP 8.0.x is supported too.

Differences Between: [Versions 310 and 401] [Versions 311 and 401] [Versions 39 and 401] [Versions 400 and 401] [Versions 401 and 402] [Versions 401 and 403]

(no description)

File Size: 1860 lines (63 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 1 class

Html:: (63 methods):
  __construct()
  save()
  generateHtmlAll()
  setEditHtmlCallback()
  mapVAlign()
  mapHAlign()
  mapBorderStyle()
  getSheetIndex()
  setSheetIndex()
  getGenerateSheetNavigationBlock()
  setGenerateSheetNavigationBlock()
  writeAllSheets()
  generateMeta()
  generateHTMLHeader()
  generateSheetPrep()
  generateSheetStarts()
  generateSheetTags()
  generateSheetData()
  generateNavigation()
  extendRowsForCharts()
  extendRowsForChartsAndImages()
  winFileToUrl()
  writeImageInCell()
  writeChartInCell()
  generateStyles()
  buildCssRowHeights()
  buildCssPerSheet()
  buildCSS()
  createCSSStyle()
  createCSSStyleAlignment()
  createCSSStyleFont()
  createCSSStyleBorders()
  createCSSStyleBorder()
  createCSSStyleFill()
  generateHTMLFooter()
  generateTableTagInline()
  generateTableTag()
  generateTableHeader()
  generateTableFooter()
  generateRowStart()
  generateRowCellCss()
  generateRowCellDataValueRich()
  generateRowCellDataValue()
  generateRowCellData()
  generateRowIncludeCharts()
  generateRowSpans()
  generateRowWriteCell()
  generateRow()
  assembleCSS()
  getImagesRoot()
  setImagesRoot()
  getEmbedImages()
  setEmbedImages()
  getUseInlineCss()
  setUseInlineCss()
  getUseEmbeddedCSS()
  setUseEmbeddedCSS()
  formatColor()
  calculateSpans()
  calculateSpansOmitRows()
  writeComment()
  getOrientation()
  generatePageDeclarations()


Class: Html  - X-Ref

__construct(Spreadsheet $spreadsheet)   X-Ref
Create a new HTML.


save($filename, int $flags = 0)   X-Ref
Save Spreadsheet to file.

param: resource|string $filename

generateHtmlAll()   X-Ref
Save Spreadsheet as html to variable.

return: string

setEditHtmlCallback(?callable $callback)   X-Ref
Set a callback to edit the entire HTML.

The callback must accept the HTML as string as first parameter,
and it must return the edited HTML as string.

mapVAlign($vAlign)   X-Ref
Map VAlign.

param: string $vAlign Vertical alignment
return: string

mapHAlign($hAlign)   X-Ref
Map HAlign.

param: string $hAlign Horizontal alignment
return: string

mapBorderStyle($borderStyle)   X-Ref
Map border style.

param: int|string $borderStyle Sheet index
return: string

getSheetIndex()   X-Ref
Get sheet index.


setSheetIndex($sheetIndex)   X-Ref
Set sheet index.

param: int $sheetIndex Sheet index
return: $this

getGenerateSheetNavigationBlock()   X-Ref
Get sheet index.

return: bool

setGenerateSheetNavigationBlock($generateSheetNavigationBlock)   X-Ref
Set sheet index.

param: bool $generateSheetNavigationBlock Flag indicating whether the sheet navigation block should be generated or not
return: $this

writeAllSheets()   X-Ref
Write all sheets (resets sheetIndex to NULL).

return: $this

generateMeta(?string $val, string $desc)   X-Ref
No description

generateHTMLHeader($includeStyles = false)   X-Ref
Generate HTML header.

param: bool $includeStyles Include styles?
return: string

generateSheetPrep()   X-Ref
No description

generateSheetStarts(Worksheet $sheet, int $rowMin)   X-Ref
No description

generateSheetTags(int $row, int $theadStart, int $theadEnd, int $tbodyStart)   X-Ref
No description

generateSheetData()   X-Ref
Generate sheet data.

return: string

generateNavigation()   X-Ref
Generate sheet tabs.

return: string

extendRowsForCharts(Worksheet $worksheet, int $row)   X-Ref
Extend Row if chart is placed after nominal end of row.
This code should be exercised by sample:
Chart/32_Chart_read_write_PDF.php.

param: int $row Row to check for charts
return: array

extendRowsForChartsAndImages(Worksheet $worksheet, int $row)   X-Ref
No description

winFileToUrl($filename, bool $mpdf = false)   X-Ref
Convert Windows file name to file protocol URL.

param: string $filename file name on local system
return: string

writeImageInCell(Worksheet $worksheet, $coordinates)   X-Ref
Generate image tag in cell.

param: Worksheet $worksheet \PhpOffice\PhpSpreadsheet\Worksheet\Worksheet
param: string $coordinates Cell coordinates
return: string

writeChartInCell(Worksheet $worksheet, string $coordinates)   X-Ref
Generate chart tag in cell.
This code should be exercised by sample:
Chart/32_Chart_read_write_PDF.php.


generateStyles($generateSurroundingHTML = true)   X-Ref
Generate CSS styles.

param: bool $generateSurroundingHTML Generate surrounding HTML tags? (<style> and </style>)
return: string

buildCssRowHeights(Worksheet $sheet, array &$css, int $sheetIndex)   X-Ref
No description

buildCssPerSheet(Worksheet $sheet, array &$css)   X-Ref
No description

buildCSS($generateSurroundingHTML = true)   X-Ref
Build CSS styles.

param: bool $generateSurroundingHTML Generate surrounding HTML style? (html { })
return: array

createCSSStyle(Style $style)   X-Ref
Create CSS style.

return: array

createCSSStyleAlignment(Alignment $alignment)   X-Ref
Create CSS style.

return: array

createCSSStyleFont(Font $font)   X-Ref
Create CSS style.

return: array

createCSSStyleBorders(Borders $borders)   X-Ref
Create CSS style.

param: Borders $borders Borders
return: array

createCSSStyleBorder(Border $border)   X-Ref
Create CSS style.

param: Border $border Border

createCSSStyleFill(Fill $fill)   X-Ref
Create CSS style (Fill).

param: Fill $fill Fill
return: array

generateHTMLFooter()   X-Ref
Generate HTML footer.


generateTableTagInline(Worksheet $worksheet, string $id)   X-Ref
No description

generateTableTag(Worksheet $worksheet, string $id, string &$html, int $sheetIndex)   X-Ref
No description

generateTableHeader(Worksheet $worksheet, $showid = true)   X-Ref
Generate table header.

param: Worksheet $worksheet The worksheet for the table we are writing
param: bool $showid whether or not to add id to table tag
return: string

generateTableFooter()   X-Ref
Generate table footer.


generateRowStart(Worksheet $worksheet, $sheetIndex, $row)   X-Ref
Generate row start.

param: int $sheetIndex Sheet index (0-based)
param: int $row row number
return: string

generateRowCellCss(Worksheet $worksheet, string $cellAddress, int $row, int $columnNumber)   X-Ref
No description

generateRowCellDataValueRich(Cell $cell, string &$cellData)   X-Ref
No description

generateRowCellDataValue(Worksheet $worksheet, Cell $cell, string &$cellData)   X-Ref
No description

generateRowCellData(Worksheet $worksheet, $cell, &$cssClass, string $cellType)   X-Ref

param: null|Cell|string $cell
param: array|string $cssClass

generateRowIncludeCharts(Worksheet $worksheet, string $coordinate)   X-Ref
No description

generateRowSpans(string $html, int $rowSpan, int $colSpan)   X-Ref
No description

generateRowWriteCell(string &$html, Worksheet $worksheet, string $coordinate, string $cellType, string $cellData, int $colSpan, int $rowSpan, $cssClass, int $colNum, int $sheetIndex, int $row)   X-Ref

param: array|string $cssClass

generateRow(Worksheet $worksheet, array $values, $row, $cellType)   X-Ref
Generate row.

param: array $values Array containing cells in a row
param: int $row Row number (0-based)
param: string $cellType eg: 'td'
return: string

assembleCSS(array $values = [])   X-Ref
Takes array where of CSS properties / values and converts to CSS string.

return: string

getImagesRoot()   X-Ref
Get images root.

return: string

setImagesRoot($imagesRoot)   X-Ref
Set images root.

param: string $imagesRoot
return: $this

getEmbedImages()   X-Ref
Get embed images.

return: bool

setEmbedImages($embedImages)   X-Ref
Set embed images.

param: bool $embedImages
return: $this

getUseInlineCss()   X-Ref
Get use inline CSS?

return: bool

setUseInlineCss($useInlineCss)   X-Ref
Set use inline CSS?

param: bool $useInlineCss
return: $this

getUseEmbeddedCSS()   X-Ref
Get use embedded CSS?

return: bool

setUseEmbeddedCSS($useEmbeddedCSS)   X-Ref
Set use embedded CSS?

param: bool $useEmbeddedCSS
return: $this

formatColor($value, $format)   X-Ref
Add color to formatted string as inline style.

param: string $value Plain formatted value without color
param: string $format Format code
return: string

calculateSpans()   X-Ref
Calculate information about HTML colspan and rowspan which is not always the same as Excel's.


calculateSpansOmitRows(Worksheet $sheet, int $sheetIndex, array $candidateSpannedRow)   X-Ref
No description

writeComment(Worksheet $worksheet, $coordinate)   X-Ref
Write a comment in the same format as LibreOffice.

param: string $coordinate
return: string

getOrientation()   X-Ref
No description

generatePageDeclarations($generateSurroundingHTML)   X-Ref
Generate @page declarations.

param: bool $generateSurroundingHTML
return: string