PHPSPREADSheet So ersetzen Sie ein Bild in einer Vorlage

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: PHPSPREADSheet So ersetzen Sie ein Bild in einer Vorlage

by Anonymous » 16 Aug 2025, 22:41

Ist es möglich, Bilder in der vorhandenen Vorlagendatei auszutauschen? Jedes Bild hat seinen eigenen einzigartigen Namen/Titel (dh "ImageBanner_1"). Jedes Bild befindet sich an einem Ort, an dem sich bestimmte Diagramme im Arbeitsblatt befinden - aber nicht unbedingt an eine bestimmte Zelle gebunden ist. funktioniert: < /p>

Code: Select all

  $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") ;
}
}
Wie kann ich alle Eigenschaften von $ fimage erhalten? Vielleicht ist einer von ihnen der richtige Name, der auf ImageBanner_1
in meinen Excel -Vorlagen übereinstimmt. Ich habe die Namen (in Formeln -> Name Manager) als:
gebunden.

Code: Select all

Name             Value         Refers To
imageBanner_1    Picture 9     =*Picture 9*
imageBanner_2    Picture 18    =*Picture 18*
imageBanner_3    Picture 21    =*Picture 21*
Erledigt das Echo Drucke:

Code: Select all

Picture 9
Picture 18
Picture 21
, wodurch mir GetName () entweder eine Referenz auf den Wert oder GetName () ist tatsächlich Bild X ist. Wie kann ich die Namen imageBanner_x als Bezeichner verwenden? Ich weiß nicht, ob mein Code, das das Bild einfach durch einen SetPath ersetzt, funktioniert, denn zumindest nicht zum Bild kann ich tatsächlich zum Bild gelangen, weil GetName () Ausgabe ist.

Code: Select all

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

TO

Code: Select all

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

... Aber das Problem dabei ist, dass ich die genaue Bildnummer kennen muss, die ich ersetze. Dies ist nicht ideal, da die Bildnummer nicht ständig eine statische Zahl ist. In einigen Fällen repliziere ich Diagramme oder Bilder, in anderen>

Top