27 Star 264 Fork 35

colin_86 / MDword

Create your Gitee Account
Explore and code with more than 12 million developers,Free private repositories !:)
Sign up
Clone or Download
contribute
Sync branch
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README
Apache-2.0

MDword

中文文档

Project General Name

Template: a word which will be revised.
Block: the part which will be replaced or cloned.

Project Introduction

Main Use: to generate word dynamically.
Advantage: focus only on dynamic data and logic, rather than adjusting the style, which can modulate the template with the help of office word.

Comparison between MDword & PHPword

  • Similarities

  1. PHP Package.
  2. Both can be used to generate office word.
  • Differences

  1. PHPword concentrates on writing elements one by one. However, it is more powerful and efficient for Mdword just to revise them on the template.
  2. For updating text styles, adding covers, headers and footers, MDword just modifies the template by office word, while PHPword complicate the task-adjusting every element.
  3. Directories(Table of content) can be automatically generated.

Tutotials

  • Installation

// Method 1
composer require mkdreams/mdword
// Method 2, Autoloading Template
require_once('Autoloader.php');
  • Add annotations or use “${value/}” to the template. Please note that there is a “/” at the end.

image

// New class,load template
$TemplateProcessor = new WordProcessor();
$template = 'temple.docx';
$TemplateProcessor->load($template);

// Set Value
$TemplateProcessor->setValue('value', 'r-value');

// Clone 
$TemplateProcessor->clones('people', 3);

$TemplateProcessor->setValue('name#0', 'colin0');
$TemplateProcessor->setValue('name#1', [
    ['text'=>'colin1','style'=>'style','type'=>MDWORD_TEXT],
    ['text'=>1,'type'=>MDWORD_BREAK],
    ['text'=>'86','style'=>'style','type'=>MDWORD_TEXT]
]);
$TemplateProcessor->setValue('name#2', 'colin2');

$TemplateProcessor->setValue('sex#1', 'woman');

$TemplateProcessor->setValue('age#0', '280');
$TemplateProcessor->setValue('age#1', '281');
$TemplateProcessor->setValue('age#2', '282');

// set value for image
$TemplateProcessor->setImageValue('image', dirname(__FILE__).'/logo.jpg');

// Delete a paragraph
$TemplateProcessor->deleteP('style');

// Save
$rtemplate = __DIR__.'/r-temple.docx';
$TemplateProcessor->saveAs($rtemplate);
  • Result

image

  • GIFs

image

More samples

Communication

Note: Exchange idea on MDword.

image

Project Plans

Copyright mkdreams Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

MDword 是一个 PHP 动态生成 word 的项目; word 模板引擎 expand collapse
PHP and 2 more languages
Apache-2.0
Cancel

Releases

No release

Contributors

All

Activities

Load More
can not load any more
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
PHP
1
https://gitee.com/colin_86/MDword.git
git@gitee.com:colin_86/MDword.git
colin_86
MDword
MDword
main

Search

344bd9b3 5694891 D2dac590 5694891