处理提交的PDF文件和FDF响应
我正在尝试向mvc asp.net web应用程序提交pdf表单处理提交的PDF文件和FDF响应,pdf,itextsharp,Pdf,Itextsharp,我正在尝试向mvc asp.net web应用程序提交pdf表单 this.submitForm({ cURL : this.getField('submitTo').value.toString(), cSubmitAs :"FDF", oJavaScript : { Before : 'app.alert("Before")', After : 'app.alert("After")'}
this.submitForm({
cURL : this.getField('submitTo').value.toString(),
cSubmitAs :"FDF",
oJavaScript : { Before : 'app.alert("Before")',
After : 'app.alert("After")'}
});
此代码处理以下请求:
[HttpPost]
public void SubmitPdf()
{
var fdfReader = new FdfReader(Request.InputStream);
var fdfWriter = new FdfWriter();
fdfWriter.SetFields(fdfReader);
fdfReader.Close();
fdfWriter.SetFieldAsString("TextArea", DateTime.Now.ToLongTimeString());
byte[] fdfbuffer;
using (var mstream = new MemoryStream())
{
fdfWriter.WriteTo(mstream);
fdfbuffer = mstream.ToArray();
}
Response.ContentType = "application/vnd.fdf";
Response.AddHeader("Content-disposition", "inline;");
var fdf = Encoding.Default.GetString(fdfbuffer);
Response.Write(fdf);
}
一切正常,请求得到处理,FDF响应返回PDF阅读器。
在PDF阅读器中,我可以在“TextArea”文本框中看到更新的值
但是由于某些原因,我没有看到带有“Before”和“After”消息的警报
在向客户端发送响应之前,我检查了fdf变量中的值。
在脚本之后和之前没有任何相关内容。我相信,它应该有这样的内容,我在Request.InputStream中有这样的文本:
2 0 obj << /After(app.alert\("After"\))/Before(app.alert\("Before"\))>> endobj
我的问题:如何使用iTextSharp v.5.5.4在FDF响应中插入前后脚本
我发现了类似的问题,但没有答案:
谢谢。如果我没记错的话,用于传递JavaScript代码的对象必须在其引用中或引用中具有/JS键;您可以查看可移植文档格式参考aka ISO 32000中的FDF描述。如果我不使用iTextSharp更新SubmitPdf方法中的某些值,只需发送回我得到的相同FDF-一切正常。我可以看到之前和之后的警报。