Exemple #1
0
 /**
  * Sets the progress bar maximal steps.
  *
  * @param int     The progress bar max steps
  */
 private function setMaxSteps($max)
 {
     $this->max = max(0, (int) $max);
     $this->stepWidth = $this->max ? Helper::strlen($this->max) : 4;
 }
Exemple #2
0
 /**
  * Renders table cell with padding.
  *
  * @param array   $row
  * @param int     $column
  * @param string  $cellFormat
  */
 private function renderCell(array $row, $column, $cellFormat)
 {
     $cell = isset($row[$column]) ? $row[$column] : '';
     $width = $this->getColumnWidth($column);
     // str_pad won't work properly with multi-byte strings, we need to fix the padding
     if (function_exists('mb_strlen') && false !== ($encoding = mb_detect_encoding($cell))) {
         $width += strlen($cell) - mb_strlen($cell, $encoding);
     }
     $width += Helper::strlen($cell) - Helper::strlenWithoutDecoration($this->output->getFormatter(), $cell);
     $content = sprintf($this->style->getCellRowContentFormat(), $cell);
     $this->output->write(sprintf($cellFormat, str_pad($content, $width, $this->style->getPaddingChar(), $this->style->getPadType())));
 }