在我的MVC2应用程序中,我使用CKEditor,我允许用户创建PDF文档。 首先,CKEditor内容将转换为HTML文件,稍后将转换为PDF文档。 我点击它时提供了一个名为箭头的按钮,应插入箭头图像。在编辑器中,图像显示成功,但在HTML和PDF文件中,图像未显示在其中以显示alt内容。
箭头按钮的代码:
<input type="button" class="green_button" id="arrow" name="Arrow" value="Arrow" style="width: 110px; height: 30px; background-color: #FFFFFF;" onclick="return arrow_onclick()" />
function arrow_onclick() {
var editor = CKEDITOR.instances.message;
editor.insertHtml(' <input type="image" alt="arrow" src="../../PDFimages/arrow-left-up.jpg" style="height:100px; width:100px" />');
}
控制器代码:
public ActionResult CreateFile(FormCollection data)
{
var filename = data["filename"];
var htmlContent = data["content"];
string sFilePath = Server.MapPath(_createdPDF + filename + ".html");
htmlContent = htmlContent.Trim();
if (!System.IO.File.Exists(sFilePath))
{
using (FileStream fs = new FileStream(sFilePath, FileMode.Create))
{
using (StreamWriter w = new StreamWriter(fs, Encoding.UTF8))
{
w.Write(htmlContent);
}
}
string filename1 = Path.GetFileNameWithoutExtension(sFilePath);
string name = Server.MapPath(_createdPDF + filename1 + ".pdf");
HTML2PDF.SetModulePath(@"C:\Documents and Settings\shubham\My Documents\visdatemplatemanger\visdatemplatemanger\bin");
using (PDFDoc doc = new PDFDoc())
{
if (HTML2PDF.Convert(doc, sFilePath))
doc.Save(name, pdftron.SDF.SDFDoc.SaveOptions.e_linearized);
}
System.IO.File.Delete(sFilePath);
UploadURL(name);
}
return View();
}
答案 0 :(得分:0)
在提交表单之前,您应该从CkEditor设置textarea值并使您接受帖子的操作已应用此注释[HttpPost, ValidateInput(false)]
$("#content").val(CKEDITOR.instances.message.getData());
检查你的src值。也许应该使用:
src="@(Url.Content( "~/PDFimages/arrow-left-up.jpg" ))"
如果PDFimages
Project/Content
文件夹