1
This commit is contained in:
@@ -4,6 +4,7 @@ use PHPMailer\PHPMailer\PHPMailer;
|
||||
use think\Db;
|
||||
use think\Env;
|
||||
use think\Cache;
|
||||
use PhpOffice\PhpWord\IOFactory;
|
||||
|
||||
|
||||
//use TCPDF;
|
||||
@@ -172,6 +173,61 @@ function proofState($article_id)
|
||||
$p_article_obj->where('article_id', $article_id)->where('state', '<>', 1)->where('proof_etime', '<', time())->where('proof_state', 1)->update(['proof_state' => 2]);
|
||||
}
|
||||
|
||||
function readWordImg($article_id,$file){
|
||||
$phpWord = IOFactory::load($file);
|
||||
|
||||
// 获取文档中的所有图像
|
||||
$images = [];
|
||||
foreach ($phpWord->getSections() as $section) {
|
||||
foreach ($section->getElements() as $element) {
|
||||
var_dump(get_class($element)); // 输出每个元素的类名
|
||||
|
||||
// 如果是列表项元素,检查其中是否包含图片
|
||||
if ($element instanceof \PhpOffice\PhpWord\Element\ListItemRun) {
|
||||
foreach ($element->getElements() as $itemElement) {
|
||||
if (method_exists($itemElement, 'getImage')) {
|
||||
$image = $itemElement->getImage();
|
||||
if ($image) {
|
||||
$imageContent = $image->getImageString();
|
||||
$imageName = 'image_' . uniqid() . '.' . $image->getExtension();
|
||||
file_put_contents(ROOT_PATH.'/public/articleImage/'.$article_id."/" . $imageName, $imageContent);
|
||||
$images[] = $imageName;
|
||||
}
|
||||
}
|
||||
}
|
||||
} elseif ($element instanceof \PhpOffice\PhpWord\Element\Table) {
|
||||
// 检查表格中是否包含图片
|
||||
foreach ($element->getRows() as $row) {
|
||||
foreach ($row->getCells() as $cell) {
|
||||
foreach ($cell->getElements() as $cellElement) {
|
||||
if (method_exists($cellElement, 'getImage')) {
|
||||
$image = $cellElement->getImage();
|
||||
if ($image) {
|
||||
$imageContent = $image->getImageString();
|
||||
$imageName = 'image_' . uniqid() . '.' . $image->getExtension();
|
||||
file_put_contents(ROOT_PATH.'/public/articleImage/'.$article_id."/" . $imageName, $imageContent);
|
||||
$images[] = $imageName;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// 检查是否是图片元素
|
||||
elseif (method_exists($element, 'getImage')) {
|
||||
$image = $element->getImage();
|
||||
if ($image) {
|
||||
$imageContent = $image->getImageString();
|
||||
$imageName = 'image_' . uniqid() . '.' . $image->getExtension();
|
||||
file_put_contents(ROOT_PATH.'/public/articleImage/'.$article_id."/" . $imageName, $imageContent);
|
||||
$images[] = $imageName;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return $images;
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成文章sn号
|
||||
* @return type
|
||||
|
||||
Reference in New Issue
Block a user