phpdocx add image makes docx corrupt


phpdocx add image makes docx corrupt

几年前有人问过,但没有答案,添加图像时损坏了docx

我有一个模板,我可以在其中替换一些变量并生成一个 docx 文档......这工作正常..

一旦我添加图像,word就会告诉我文件已损坏。但是让 Word 更正错误会为我提供文档,因为我期望它与图像一起。

我像这样添加图像...

$docx->addBreak(array('type' => 'page'));
            $options = array(
            'src' => $value['110333870356bc784cf1b6b0.56722572.png'],
            'imageAlign' => 'center',
            'scaling' => 100,
            'spacingTop' => 10,
            'spacingBottom' => 0,
            'spacingLeft' => 0,
            'spacingRight' => 20,
            'textWrap' => 0,
            );
            $docx->addImage($options); 

我迷路了.. ?

在与2mdc(phpDocX的创建者)联系后,他们告诉我,由于我插入的图像的文件名,PHP无法获得正确的扩展名。因此,phpDocX 添加了一些错误的值(例如 dpi 和图像扩展名)。

正如我的问题中提到的,Word能够检测这些错误并纠正它们。

更改了创建我的"唯一"图像名称的例程,以确保不存在点并解决了问题..

因此,文件名:110333870356bc784cf1b6b0.56722572.png将变为 110333870356bc784cf1b6b0656722572.png(或其他生成的文件名)。

只是为了分享我的经验。我有完全相同的问题,但不是出于同样的原因。这是因为我想插入的图像文件扩展名(addImage)是大写字母。例:

  • 图像。JPG ==> 结果是"损坏"的文件。
  • 图像。jpg ==> 结果确定!

我希望它能帮助某人...