Bibliotecă PHP Gratuită pentru Crearea și Gestionarea Fișierelor DOCX pe Bază de Șabloane

Principala bibliotecă PHP open source permite Crearea, Citirea, Modificarea și Manipularea Documentelor Microsoft Word (DOCX) din șabloane. Adaugă Tabele, Inserează Text, Imagini și Aplică Formatare prin API PHP gratuit

Ce este MDword?

Pentru dezvoltatorii PHP care își propun să creeze sau să gestioneze documente Microsoft Word, MDword se evidențiază ca o alternativă ușoară și eficientă la API-ul REST PHP DOCX. Ca un API PHP DOCX open source, MDword permite dezvoltatorilor să creeze fișiere DOCX pe bază de șabloane, să modifice conținutul și să construiască funcționalități document bogate — totul fără a depinde de Microsoft Office sau de dependențe grele. Această bibliotecă gratuită de procesare a textului suportă inserarea și gestionarea tabelelor, adăugarea de text formatat, manipularea imaginilor și îmbinarea mai multor fișiere Word într-unul singur. Abordarea sa minimalistă și de înaltă performanță o face ideală pentru generarea documentelor din șabloane, date utilizator sau conținut din bază de date în timp real în aplicații PHP.

Proiectat pentru simplitate și performanță, MDword este o bibliotecă PHP versatilă de procesare a textului pentru construirea fluxurilor de lucru automatizate ale documentelor. Dezvoltatorii pot adăuga cu ușurință tabele în DOCX prin PHP, manipula paragrafe și converti documente Word în PHP fără unelte externe precum LibreOffice sau COM. Indiferent dacă generați facturi, contracte sau rapoarte, MDword oferă o manipulare robustă a DOCX în PHP nativ. Cu compatibilitate imediată în majoritatea mediilor și fără costuri de licențiere, este o alegere excelentă pentru gestionarea documentelor Word în PHP în aplicații web dinamice, menținând dezvoltarea ușoară și rentabilă.

Previous Next

Începeți cu MDword

Modalitatea recomandată pentru instalarea MDword în proiectul dumneavoastră este prin utilizarea Composer. Vă rugăm să folosiți comanda de mai jos pentru o instalare fără probleme.

Instalați MDword prin Composer

composer require mkdreams/mdword  

Instalați MDword prin GitHub

git clone https://github.com/mkdreams/MDword.git 

Generare de Documente Word pe Bază de Șablon prin PHP

În esență, MDword permite dezvoltatorilor să creeze documente Word noi de la zero. Dezvoltatorii pot inițializa un nou obiect document și apoi să înceapă să adauge conținut în acesta. Puteți seta proprietăți de bază ale documentului dacă biblioteca le suportă (deși manipularea proprietăților avansate poate varia). MDword permite utilizatorilor să creeze șabloane Word cu placeholder-e care pot fi înlocuite dinamic cu date reale. Suportă text, tabele, imagini, grafice și alte elemente Word. Exemplul următor demonstrează cum dezvoltatorii pot genera un document Word de bază în aplicații PHP.

Cum să creați un document Word (.docx) pe bază de șablon prin Biblioteca PHP?

require_once 'vendor/autoload.php';

use MDword\WordProcessor;

// Load a template
$template = new WordProcessor();
$template->load('template.docx');

// Replace placeholders
$template->setValue('{{NAME}}', 'John Doe');
$template->setValue('{{DATE}}', date('Y-m-d'));

// Save the modified document
$template->save('output.docx');

Adăugarea Textului în Word și Formatarea prin PHP

Adăugarea și formatarea textului în documentele Word este o cerință principală, iar MDword oferă capacități de inserare a textului și de aplicare a diferitelor opțiuni de formatare în aplicațiile PHP. Dezvoltatorii pot adăuga paragrafe, secvențe de text și pot aplica stiluri precum îngroșat, cursiv, subliniat, mărimea fontului, familia fontului și culoarea. Acest lucru permite conținut text bogat în documentele generate. Codul PHP de mai jos arată cum dezvoltatorii pot insera text în documentele Word și să aplice formatarea prin biblioteca PHP.

Cum să inserați text în documentul Word și să aplicați formatare prin Biblioteca PHP?

require 'vendor/autoload.php';
use Mkdreams\MDword\MDword;
use Mkdreams\MDword\Elements\TextRun;
use Mkdreams\MDword\Elements\Paragraph;

$mdword = new MDword();
$section = $mdword->createSection(); // Sections are often containers for content

// Add a simple paragraph
$paragraph1 = new Paragraph();
$paragraph1->addText('This is a simple paragraph.');
$section->addElement($paragraph1);

// Add a paragraph with formatted text
$paragraph2 = new Paragraph();
$textRun1 = new TextRun();
$textRun1->setText('This text is ');
$paragraph2->addElement($textRun1);

$textRun2 = new TextRun();
$textRun2->setText('bold and red.');
$textRun2->setFontStyle(['bold' => true, 'color' => 'FF0000']); // Color as hex
$paragraph2->addElement($textRun2);
$section->addElement($paragraph2);

// Add text with specific font and size
$paragraph3 = new Paragraph();
$textRun3 = new TextRun();
$textRun3->setText('This is Arial, size 16.');
$textRun3->setFontStyle(['name' => 'Arial', 'size' => 16]);
$paragraph3->addElement($textRun3);
$section->addElement($paragraph3);

$mdword->save('FormattedTextDocument.docx');
echo "Formatted document created.";

Adăugați și Gestionează Tabele în Fișiere Word prin PHP

Tabelele sunt esențiale pentru prezentarea datelor structurate. Biblioteca open source MDword oferă adesea mecanisme pentru crearea de tabele, adăugarea de rânduri, celule și popularea acestora cu conținut. Dezvoltatorii pot defini structuri de tabel, seta conținutul celulelor (text, eventual alte elemente) și uneori pot aplica stiluri de bază la margini sau umbrire a celulelor cu doar câteva linii de cod. Iată un exemplu simplu care demonstrează cum să creați și să gestionați tabele în documente .docx Word prin biblioteca PHP.

Cum să creați și să gestionați tabele în documentele Word DOCX prin Biblioteca PHP?

require 'vendor/autoload.php';
use Mkdreams\MDword\MDword;
use Mkdreams\MDword\Elements\Table;
use Mkdreams\MDword\Elements\Row;
use Mkdreams\MDword\Elements\Cell;
use Mkdreams\MDword\Elements\TextRun;

$mdword = new MDword();
$section = $mdword->createSection();

// Create a table
$table = new Table();
// Potentially add table-level styling, e.g., borders
// $table->setStyle(['borderSize' => 6, 'borderColor' => '000000']);

// Add a header row
$headerRow = new Row();
$cellH1 = new Cell();
$cellH1->addTextRun(new TextRun('Header 1', ['bold' => true]));
$headerRow->addCell($cellH1);

$cellH2 = new Cell();
$cellH2->addTextRun(new TextRun('Header 2', ['bold' => true]));
$headerRow->addCell($cellH2);
$table->addRow($headerRow);

// Add a data row
$dataRow1 = new Row();
$cellR1C1 = new Cell();
$cellR1C1->addTextRun(new TextRun('Data A1'));
$dataRow1->addCell($cellR1C1);

$cellR1C2 = new Cell();
$cellR1C2->addTextRun(new TextRun('Data B1'));
$dataRow1->addCell($cellR1C2);
$table->addRow($dataRow1);

$section->addElement($table);
$mdword->save('DocumentWithTable.docx');
echo "Document with table created.";

 Română