Я использую библиотеку PphPresentation для создания презентаций Powepoint.
Я пытаюсь создать новую строку внутри texthape.
Это часть кода
$currentSlide=$objPHPPresentation->createSlide();
$textRun = $shape->createTextRun('Estado de Fuerza: '.$personal['ef'].' Elementos. '.'Población: '.$personal['pb'].' hab. '.'Faltante: '.$personal['fal'].' Elementos.');
И я получаю что-то вроде этого:
Fuerza: 0 Elementos Población: 10987 hab. Faltante: -31 Elementos.
Но то, что я хочу получить, это:
Fuerza: 0 Elementos
Población: 10987 hab.
Faltante: -31 Elementos.
Другой вариант получения новой строки с одинаковыми свойствами шрифта для всех строк — использовать параграф:
$textParagraph = $shape->createParagraph();
$textParagraph->getFont()->setSize(14)->setColor($colorBlack);
$shape->getActiveParagraph()->createTextRun("Estado de Fuerza: ".$personal["ef"]." Elementos.");
$shape->getActiveParagraph()->createBreak();
$shape->getActiveParagraph()->createTextRun("Población: ".$personal["pb"]." hab. ");
$shape->getActiveParagraph()->createBreak();
$shape->getActiveParagraph()->createTextRun("Faltante: ".$personal["fal"]." Elementos.");
У меня та же проблема. Я только что нашел это в примерах. Я считаю, что вам нужно добавить каждую строку отдельно. Я должен переписать, как я строю свой массив, затем я протестирую его, но вот пример кода:
$shape->getActiveParagraph()->getBulletStyle()->setBulletType(Bullet::TYPE_BULLET);$shape->createTextRun('A class library');
$shape->createParagraph()->createTextRun('Written in PHP');
$shape->createParagraph()->createTextRun('Representing a presentation');
$shape->createParagraph()->createTextRun('Supports writing to different file formats');
Я понял, что у этой библиотеки есть метод для этого.
Я просто сделал это так.
$textRun = $shape->createTextRun("Estado de Fuerza: ".$personal["ef"]." Elementos.");
$textRun->getFont()->setSize(14)->setColor($colorBlack);
$shape->createBreak();
$textRun = $shape->createTextRun("Población: ".$personal["pb"]." hab. ");
$shape->createBreak();
$textRun = $shape->createTextRun("Faltante: ".$personal["fal"]." Elementos.");
И я получил:
Fuerza: 0 Elementos
Población: 10987 hab.
Faltante: -31 Elementos.
Три разные строки в одном текстовом поле Powerpoint.