【发布时间】:2023-03-09 08:32:01
【问题描述】:
我正在使用 tinymce 使用“laravel-tinymce-simple-imageupload”包上传图片。当用户在 textarea 中输入一些内容并单击表单提交按钮时,我想将 textarea 中的内容放在 pdf 文件中。我有下面的代码。
问题是在pdf文件中,如果在textarea中插入图片,图片不会出现在pdf中,并且pdf中出现“找不到图片或类型未知”。
你知道可能是什么问题吗?
图像在证书表的内容列中是这样存储的:
<p>test<img src="/img/image_15zdbBr.jpeg" alt="" width="1200" height="900" /></p>
获取pdf的代码:
$certificateContent = RegistrationType::with('certificate')->where('id', $request->registrationType)->first();
$pdf = app()->make('dompdf.wrapper');
$pdf->loadHTML($certificateContent->certificate->content);
return $pdf->download('test.pdf');
Tinymce 代码的 relative_urls 为 false:
tinymce.init({
selector:'textarea',
plugins: 'image code link',
relative_urls: false,
file_browser_callback: function(field_name, url, type, win) {
// trigger file upload form
if (type == 'image') $('#formUpload input').click();
}
});
我已经使用了 "setOptions(['isHtml5ParserEnabled' => true, 'isRemoteEnabled' => true])" 但也不能使用它,它显示相同的错误。
似乎问题可能是因为需要更改图像的 url 路径。但我不明白该怎么做,因为用户只在 tinymce 文本区域中选择了一个图像,如何更改该图像的绝对路径。
【问题讨论】:
-
尝试用绝对 uri 替换代码,例如
<p>test<img src="{{ asset('/img/image_1530423144_Yn4tAJwZmzcbb82UOGHo07eIQsiGfzdbBjh10r.jpeg') }}" alt="" width="1200" height="900" /></p> -
谢谢,您知道在哪里更改代码,在包的哪个文件中?
-
它不是文件或包,它应该在您传递的内容中。如果 url 路径不起作用,请尝试使用绝对路径。
-
谢谢,但是我用的是tinymce,只需要点击浏览图片按钮,选择图片,那么如何更改图片的url路径呢?
-
tiny.cloud/docs/configure/url-handling - 看看这个文档。你会在这里得到答案。
标签: php jquery laravel tinymce dompdf