/** * Write BIFF record Window2. */ private function _writeWindow2() { $record = 0x23e; // Record identifier $length = 0x12; $grbit = 0xb6; // Option flags $rwTop = 0x0; // Top row visible in window $colLeft = 0x0; // Leftmost column visible in window // The options flags that comprise $grbit $fDspFmla = 0; // 0 - bit $fDspGrid = $this->_phpSheet->getShowGridlines() ? 1 : 0; // 1 $fDspRwCol = $this->_phpSheet->getShowRowColHeaders() ? 1 : 0; // 2 $fFrozen = $this->_phpSheet->getFreezePane() ? 1 : 0; // 3 $fDspZeros = 1; // 4 $fDefaultHdr = 1; // 5 $fArabic = $this->_phpSheet->getRightToLeft() ? 1 : 0; // 6 $fDspGuts = $this->_outline_on; // 7 $fFrozenNoSplit = 0; // 0 - bit // no support in PHPExcel for selected sheet, therefore sheet is only selected if it is the active sheet $fSelected = $this->_phpSheet === $this->_phpSheet->getParent()->getActiveSheet() ? 1 : 0; $fPaged = 1; // 2 $fPageBreakPreview = $this->_phpSheet->getSheetView()->getView() === PHPExcel_Worksheet_SheetView::SHEETVIEW_PAGE_BREAK_PREVIEW; $grbit = $fDspFmla; $grbit |= $fDspGrid << 1; $grbit |= $fDspRwCol << 2; $grbit |= $fFrozen << 3; $grbit |= $fDspZeros << 4; $grbit |= $fDefaultHdr << 5; $grbit |= $fArabic << 6; $grbit |= $fDspGuts << 7; $grbit |= $fFrozenNoSplit << 8; $grbit |= $fSelected << 9; $grbit |= $fPaged << 10; $grbit |= $fPageBreakPreview << 11; $header = pack("vv", $record, $length); $data = pack("vvv", $grbit, $rwTop, $colLeft); // FIXME !!! $rgbHdr = 0x40; // Row/column heading and gridline color index $zoom_factor_page_break = $fPageBreakPreview ? $this->_phpSheet->getSheetView()->getZoomScale() : 0x0; $zoom_factor_normal = $this->_phpSheet->getSheetView()->getZoomScaleNormal(); $data .= pack("vvvvV", $rgbHdr, 0x0, $zoom_factor_page_break, $zoom_factor_normal, 0x0); $this->_append($header . $data); }
/** * Write BIFF record Window2. */ private function _writeWindow2() { $record = 0x23e; // Record identifier if ($this->_BIFF_version == 0x500) { $length = 0xa; // Number of bytes to follow } elseif ($this->_BIFF_version == 0x600) { $length = 0x12; } $grbit = 0xb6; // Option flags $rwTop = 0x0; // Top row visible in window $colLeft = 0x0; // Leftmost column visible in window // The options flags that comprise $grbit $fDspFmla = 0; // 0 - bit $fDspGrid = $this->_phpSheet->getShowGridlines() ? 1 : 0; // 1 $fDspRwCol = $this->_phpSheet->getShowRowColHeaders() ? 1 : 0; // 2 $fFrozen = $this->_phpSheet->getFreezePane() ? 1 : 0; // 3 $fDspZeros = 1; // 4 $fDefaultHdr = 1; // 5 $fArabic = $this->_phpSheet->getRightToLeft() ? 1 : 0; // 6 $fDspGuts = $this->_outline_on; // 7 $fFrozenNoSplit = 0; // 0 - bit // no support in PHPExcel for selected sheet, therefore sheet is only selected if it is the active sheet $fSelected = $this->_phpSheet === $this->_phpSheet->getParent()->getActiveSheet() ? 1 : 0; $fPaged = 1; // 2 $grbit = $fDspFmla; $grbit |= $fDspGrid << 1; $grbit |= $fDspRwCol << 2; $grbit |= $fFrozen << 3; $grbit |= $fDspZeros << 4; $grbit |= $fDefaultHdr << 5; $grbit |= $fArabic << 6; $grbit |= $fDspGuts << 7; $grbit |= $fFrozenNoSplit << 8; $grbit |= $fSelected << 9; $grbit |= $fPaged << 10; $header = pack("vv", $record, $length); $data = pack("vvv", $grbit, $rwTop, $colLeft); // ---- !!! if ($this->_BIFF_version == 0x500) { $rgbHdr = 0x0; // Row/column heading and gridline color $data .= pack("V", $rgbHdr); } elseif ($this->_BIFF_version == 0x600) { $rgbHdr = 0x40; // Row/column heading and gridline color index $zoom_factor_page_break = 0x0; $zoom_factor_normal = 0x0; $data .= pack("vvvvV", $rgbHdr, 0x0, $zoom_factor_page_break, $zoom_factor_normal, 0x0); } $this->_append($header . $data); }