PHP-PHP生成word时是否能控制页面设置?
使用设置的DOC可以控制WORD 的边距吗?
header("Content-Disposition:attachment;filename=img.doc");
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
使用设置的DOC可以控制WORD 的边距吗?
header("Content-Disposition:attachment;filename=img.doc");
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
通过直接header头输出DOC格式的无法设置页面的属性,如果你的Web Server是在Windows上运行,那么可以通过COM扩展生成doc文档,就可以设置这些属性了,这里有一个例子:
<?php
$word= new COM("word.application") or die("Unable to create Word document");
print "Loaded Word, version {$word->Version}n";
$word->Visible = 0;
$word->Documents->Add();
//设置边距
$word->Selection->pageSetup->LeftMargin = '3';
$word->Selection->pageSetup->RightMargin = '3';
//设置字体
$word->Selection->Font->Name = 'Helvetica';
//设置字号
$word->Selection->Font->Size = 8;
//设置颜色
$word->Selection->Font->ColorIndex= 13; //wdDarkRed = 13
//输出到文档
$word->Selection->TypeText("string string string string string string ");
$range = $word->ActiveDocument->Range(0, 0);
$table_t = $word->ActiveDocument->Tables->Add($range,3,4); //生成3行4列
$table_t->Cell(1, 2)->Range->InsertAfter('aaa'); //向第1行第2列插入aaa
//保存
//$word->Sections->Add(1);
$word->Documents[1]->SaveAs(dirname(__FILE__)."/create_test.doc");
//退出
$word->quit();
?>