PHPSPreadSheet Как заменить изображение в шаблонеPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 PHPSPreadSheet Как заменить изображение в шаблоне

Сообщение Anonymous »

Можно ли заменить изображения в существующем файле шаблонов? Каждое изображение имеет свое собственное уникальное имя/заголовок (т.е. "Imagebanner_1"). Каждое изображение находится в месте, связанном с тем, где находятся определенные диаграммы на рабочем листе - но не обязательно связаны с конкретной ячейкой.
На основе использования имени изображения можно ли заменить изображение другим, чтобы новое изображение было в том же месте, что и в оригинальном, и сохраняет все оригинальные свойства изображения (тень, ширина/длина, и т. Д. Работал: < /p>

Код: Выделить всё

  $fImages = $speadsheet->getSheetByName("Chart Data")->getDrawingCollection();
foreach ($fImages as $fImage) {
echo "\n".$fImage->getName() ;
if ($fImage->getName() == "imageBanner_1") {
$fImage->setPath("path/to/new/file/fileName.png") ;
}
}
Как я могу получить все свойства $ fimage ? Может быть, одно из них -это правильное имя, которое будет соответствовать на ImageBanner_1
В моих шаблонах Excel я связал имена (в Formulas -> Manager) как:

Код: Выделить всё

Name             Value         Refers To
imageBanner_1    Picture 9     =*Picture 9*
imageBanner_2    Picture 18    =*Picture 18*
imageBanner_3    Picture 21    =*Picture 21*
Выполнение echo отпечатка:

Код: Выделить всё

Picture 9
Picture 18
Picture 21
, который говорит мне, что getName () является либо ссылкой на значение, либо getName () на самом деле изображение x . В любом случае, как я могу использовать имена ImageBanner_x в качестве идентификатора? Я не знаю, будет ли мой код просто заменить изображение на setPath , потому что, по крайней мере, на данный момент я не могу на самом деле добраться до изображения из -за проблемы getName () .
=============
.

Код: Выделить всё

if ($fImage->getName() == "imageBanner_1") { 
to

Код: Выделить всё

if ($fImage->getName() == "Picture 13") {

... Но проблема с этим я должен знать точный номер изображения, который я заменяю. Это не идеально, так как номер изображения не является статическим номером все время. В некоторых случаях я повторяю диаграммы или изображения, в других я заменяю ... esp, когда речь идет о копировании, будет довольно сложно узнать точный номер изображения каждый раз, когда я запускаю скрипт с разными наборами данных.

Подробнее здесь: https://stackoverflow.com/questions/731 ... a-template
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»