解决方案 »

  1.   

    标题换行只需在需要换行的地方加上换行符
    比如 "Product\ncode"其他的明天说
      

  2.   

    $objActSheet->setCellValue('A2', 'Shoes Picture'); 
    $objActSheet->setCellValue('B2', 'Product code'); 
    $objActSheet->setCellValue('C2', 'Original Retail  Price (VAT)'); 
    $objActSheet->setCellValue('D2', '  Total \nOrdered Qty'); 
    $objActSheet->setCellValue('E2', '  Total 
    Sales Qty'); 
    $objActSheet->setCellValue('F2', 'Sellthru'); 
    $objActSheet->setCellValue('G2', 'Total Sales'); 
    $objActSheet->setCellValue('H2', 'Cumulated Qty'); 
    $objActSheet->setCellValue('I2', 'Cumulated  /nQty %'); 
    /n \n都试过了...都不行。 
      

  3.   

    加粗 范例
    $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true);添加图片  范例
    $objDrawing = new PHPExcel_Worksheet_Drawing();  
    $objDrawing->setName('Logo');  
    $objDrawing->setDescription('Logo');  
    $objDrawing->setPath('./images/officelogo.jpg');  
    $objDrawing->setHeight(36);  
    $objDrawing->setCoordinates('B15');  
    $objDrawing->setOffsetX(110);  
    $objDrawing->setRotation(25);  
    $objDrawing->getShadow()->setVisible(true);  
    $objDrawing->getShadow()->setDirection(45);  
    $objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); 
      

  4.   

    插入图片的代码该加到哪儿呢?我这样加不对
    $objDrawing = new PHPExcel_Worksheet_Drawing();
    while($row=mssql_fetch_array($query)){
    if(''!==$row["Photo"]){
    $row["Photo"]="../picture/".$row["Photo"];
    $objDrawing->setName('Logo');
    $objDrawing->setDescription('Logo');
    $objDrawing->setPath($row["Photo"]);
    $objDrawing->setHeight(36);
    $objDrawing->setCoordinates('B15');
    $objDrawing->setOffsetX(110);
    $objDrawing->setRotation(25);
    $objDrawing->getShadow()->setVisible(true);
    $objDrawing->getShadow()->setDirection(45);
    $objDrawing->setWorksheet($objExcel->getActiveSheet());
    }
      

  5.   

    $objDrawing = new PHPExcel_Worksheet_Drawing();
    要放在循环内,即每个图片需要一个  PHPExcel_Worksheet_Drawing 实例setHeight 图片高
    setCoordinates 所在单元格
    setOffsetX 左上角相对单元格的x偏移
    setRotation 旋转角
    更多的方法请见文档
      

  6.   

    我 setCoordinates('B15') (15行B列)
    你也在 setCoordinates('B15') 吗?
      

  7.   

    果然这样,但又有个问题,我把图片设置到了图片名称出现的位置。
    while($row=mssql_fetch_array($query)){
    $objDrawing = new PHPExcel_Worksheet_Drawing();
    if(''!==$row["Photo"]){
    $row["Photo"]="picture/".$row["Photo"];
    $objDrawing->setName('Logo');
    $objDrawing->setDescription('Logo');
    $objDrawing->setPath($row["Photo"]);
    $objDrawing->setHeight(36);
    $objDrawing->setCoordinates('A'.$aa);//图片名称所在的单元格
    $objDrawing->setOffsetX(80);
    $objDrawing->setRotation(25);
    $objDrawing->getShadow()->setVisible(true);
    $objDrawing->getShadow()->setDirection(45);
    $objDrawing->setWorksheet($objExcel->getActiveSheet());
    $aa++;
    }
    出来效果是这样的图片只是出现在单元格的位置,并不是单元格的值
    要达到下面的效果该怎么设置单元格?
      

  8.   

    不是说了吗?
        $objDrawing->setOffsetX(80); //表示图片左边距是 80
        $objDrawing->setRotation(25); //表示旋转 25 度
    显然都不是你需要的
    你只需设置单元格居中排列批量设置,我一般用 PHPExcel_Style 来写,如
    $style_obj = new PHPExcel_Style(); 
    $style_array = array( 
    'borders' => array( 
    'top' => array('style' => PHPExcel_Style_Border::BORDER_THIN),
    'left' => array('style' => PHPExcel_Style_Border::BORDER_THIN),
    'bottom' => array('style' => PHPExcel_Style_Border::BORDER_THIN),
    //'right' => array('style' => PHPExcel_Style_Border::BORDER_THIN) 
    ),
    'alignment' => array(
    'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
    'vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER,
    'wrap' => true
    )
    );
    $style_obj->applyFromArray($style_array); 
    $sheet->setSharedStyle($style_obj, "B$y:$x$y");当然一个个的设置也是没有问题的
      

  9.   

    格式搞定了 现在就剩两个问题了:
    1、导出图片到cell里面。
     2、页面上有导出excel按钮,怎么通过点击按钮,将页面的参数传到后台(前台页面不跳转)以导出对应的excel。
    大师把这个分数一起拿走吧 小弟分数不多...http://bbs.csdn.net/topics/390730241
      

  10.   

    1、导出图片上面已经说了,你也做到了。只是要注意调整格式
    2、导出excel按钮可以是表单的提交按钮,设置表单的 target 指向一个隐藏的 iframe 就不会跳转了
    <form method=post action=excel.php target=down>
    <input type=submit value='导出excel'>
    </form>
    <iframe name=down style='display:none'></iframe>
      

  11.   

    大师 再请教个问题,向excel中写入图片时,当图片不存在,phpexcel会抛出异常不能形成excel文件,于是我捕获异常(被注释掉的代码)
    if(''!==$row["Photo"]){
    // $row["Photo"]="picture/".$row["Photo"];
    //try{
    $objDrawing->setName('Logo');
    $objDrawing->setDescription('Logo');
    $objDrawing->setPath($row["Photo"]);
    $objDrawing->setHeight(36);
    $objDrawing->setCoordinates('A'.$n);//图片名称所在的单元格
    $objDrawing->setOffsetX(15);
    $objDrawing->setRotation(25);
    $objDrawing->getShadow()->setVisible(true);
    $objDrawing->getShadow()->setDirection(45);
    $objDrawing->setWorksheet($objExcel->getActiveSheet());
    //  }catch (Exception $e){
    //  $objDrawing->setName('Logo1');
    //  $objDrawing->setDescription('Logo1');
    //  $objDrawing->setPath("notf.jpg");
    //  $objDrawing->setHeight(36);
    //  $objDrawing->setCoordinates('A'.$n);//图片名称所在的单元格
    //  $objDrawing->setOffsetX(15);
    //  $objDrawing->setRotation(25);
    //  $objDrawing->getShadow()->setVisible(true);
    //  $objDrawing->getShadow()->setDirection(45);
    //  $objDrawing->setWorksheet($objExcel->getActiveSheet());
    //  }
    }
    这样就算图片不存在也能导出excel,但导出的excel就是打不开,请问如何解决?
      

  12.   

    if(file_exists("picture/".$row["Photo"])) {
       .....
      $objDrawing->setWorksheet($objExcel->getActiveSheet());
    }
      

  13.   

    请问大师 输出pdf文档该怎么输出呢?
    我这样输出文件很小很小,而且打不开
    /输出内容    
    // if($outtype=="pdf"){
    // header('Content-Type: application/pdf');
    // header('Content-Disposition: attachment;filename="Global Network.pdf"');
    // header('Cache-Control: max-age=0');// $objWriter = PHPExcel_IOFactory::createWriter($objExcel, 'PDF');
    // $objWriter->save('php://output');
    // exit;
    //}ELSE{$outputFileName = "Global Network.xls";    
    //到文件    
    //$objWriter->save($outputFileName);    
    //到浏览器
    header("Content-Type: application/force-download");
    header("Content-Type: application/octet-stream");
    header("Content-Type: application/download");
    header('Content-Disposition:inline;filename="'.$outputFileName.'"');
    header("Content-Transfer-Encoding: binary");
    header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
    // header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Pragma: no-cache");
    $objWriter->save('php://output');  
    //exit;
    //}