繁体   English   中英

如何保存在不同单元格中包含具有不同行高的图像的 Excel 文件?

[英]How can I save an excel file containing images with different row height in different cells?

我正在尝试 PHPExcel 并根据其示例编写了以下代码:

<?php

require_once "QueryHandler.php";

define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />');

/** Include PHPExcel */
require_once 'PHPExcel/Classes/PHPExcel.php';


// Create new PHPExcel object
$objPHPExcel = new PHPExcel();

// Set document properties
$objPHPExcel->getProperties()->setCreator("Lajos Arpad")
                             ->setLastModifiedBy("Lajos Arpad")
                             ->setTitle("Import Test Foto")
                             ->setSubject("Import Test Foto")
                             ->setDescription("Import Test Foto")
                             ->setKeywords("office PHPExcel php")
                             ->setCategory("Test result file");


// Add some data
$objPHPExcel->setActiveSheetIndex(0)
            ->setCellValue('A1', 'cod_comanda')
            ->setCellValue('B1', 'Foto 1')
            ->setCellValue('C1', 'Foto 2')
            ->setCellValue('D1', 'Foto 3')
            ->setCellValue('E1', 'Foto 4')
            ->setCellValue("F1", "Foto 5")
            ->setCellValue("G1", "Foto 6")
            ->setCellValue("H1", "Foto 7");

$objPHPExcel->getActiveSheet()->setTitle('Import Test Foto');

$toContinue = true;
$limit = 0;
$size = 100;

$pictures = QueryHandler::buildSelect("testtable", array("cod_comanda", "poze"), "Created", $limit, $size);

$index = 2;
$activeSheet = $objPHPExcel->getActiveSheet();
$columns = array("B", "C", "D", "E", "F", "G", "H");
foreach ($pictures as $picture) {
    $activeSheet->setCellValue("A".$index, $picture["cod_comanda"]);
    if (strlen($picture["poze"])) {
        $items = explode(",", $picture["poze"]);
        $itemCount = count($items);
        for ($innerIndex = 0; $innerIndex < $itemCount; $innerIndex++) {
            $activeSheet->setCellValue($columns[$innerIndex].$index, $items[$innerIndex]);
        }
    }
    $index++;
}

// Save Excel 2007 file

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save("export/Import Test Foto.xlsx");

电流输出

电流输出

期望输出

期望输出

它导出可以在第一张图片上看到的那种东西。 我希望能够像第二张图所示那样导出它,其中涉及到 A 列中几行附近的 Foto 列。 请注意,当前代码仅导出文本数据,而最后我需要导出图像,但我想我需要先弄清楚如何修改与第一列单元格相比的单元格的相对高度。 我怎样才能做到这一点?

如果你知道你的图片的分辨率,那么你可以使用PHPExcel_Shared_Drawing类中的方法将像素转换为单元格尺寸 (),反之亦然

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM