我第一次给出打印命令。
“此页面存在错误。Acrobat 可能无法正确显示该页面。请联系创建 pdf 文档的人员以更正问题”。
打印输出非常好。第二次打印命令没有给出任何错误。
请帮助我为什么第一次打印时会出现此错误。
这是我创建 PDF 的代码的一部分
PdfContentByte cb = writer.DirectContent;
cb.BeginText();
Font NormalFont = FontFactory.GetFont("Arial", 12, Font.NORMAL, Color.BLACK);
// Add an image to a fixed position
iTextSharp.text.Image img = iTextSharp.text.Image.GetInstance(Server.MapPath("~/images/images/banner.tiff"));
img.SetAbsolutePosition(35, 760);
img.ScalePercent(50);
cb.AddImage(img);
// Draw a line by setting the line width and position
cb.SetLineWidth(2);
cb.MoveTo(20, 740);
cb.LineTo(570, 740);
cb.Stroke();
//Header Details
cb.BeginText();
writeText(cb, drHead["EmpName"].ToString(), 25, 745, f_cb, 14);
writeText(cb, "Employee ID:", 450, 745, f_cn, 12);
writeText(cb, drHead["EmployeeID"].ToString(), 515, 745, f_cb, 12);
cb.EndText();
cb.BeginText();
writeText(cb, …
Run Code Online (Sandbox Code Playgroud) 我遇到了运行时异常.我想从android设备创建一个PDF文档.为此,我使用了iText库.
这是我创建PDF的代码
Document document = new Document();
PdfWriter.getInstance(document, outStream);
document.open();
document.add(new Paragraph(data));
document.close();
Run Code Online (Sandbox Code Playgroud)
代码工作正常.它正在成功创建PDF.但它让我在运行时说例外
06-14 10:09:20.491: W/dalvikvm(764): Unable to resolve superclass of Lcom/itextpdf/awt/PdfGraphics2D; (1251)
06-14 10:09:20.491: W/dalvikvm(764): Link of class 'Lcom/itextpdf/awt/PdfGraphics2D;' failed
06-14 10:09:20.491: E/dalvikvm(764): Could not find class 'com.itextpdf.awt.PdfGraphics2D', referenced from method com.itextpdf.text.pdf.PdfContentByte.createGraphics
06-14 10:09:20.491: W/dalvikvm(764): VFY: unable to resolve new-instance 480 (Lcom/itextpdf/awt/PdfGraphics2D;) in Lcom/itextpdf/text/pdf/PdfContentByte;
06-14 10:09:25.280: E/dalvikvm(764): Could not find class 'org.bouncycastle.cert.X509CertificateHolder', referenced from method com.itextpdf.text.pdf.PdfReader.readDecryptedDocObj
06-14 10:09:25.280: W/dalvikvm(764): VFY: unable to resolve new-instance 1612 (Lorg/bouncycastle/cert/X509CertificateHolder;) in Lcom/itextpdf/text/pdf/PdfReader; …
Run Code Online (Sandbox Code Playgroud) 我正在使用iTextSharp尝试为我生成的PDF添加页眉和页脚,但是,如果我尝试添加宽度为页面100%的页眉,我会遇到一些问题.
所以我做了以下事情:
1)我创建了一个名为PdfHeaderFooter的类,它扩展了iTextSharp PdfPageEventHelper类
2)进入PdfHeaderFooter我已经实现了生成头的OnStartPage()方法:
// write on start of each page
public override void OnStartPage(PdfWriter writer, Document document)
{
base.OnStartPage(writer, document);
PdfPTable tabHead = new PdfPTable(new float[] { 1F });
PdfPCell cell;
//tabHead.TotalWidth = 300F;
tabHead.WidthPercentage = 100;
cell = new PdfPCell(new Phrase("Header"));
tabHead.AddCell(cell);
tabHead.WriteSelectedRows(0, -1, 150, document.Top, writer.DirectContent);
}
Run Code Online (Sandbox Code Playgroud)
如果我使用像tabHead.TotalWidth = 300F那样的东西; insted的tabHead.WidthPercentage = 100; 它运行良好,但如果我尝试将tabHead.WriteSelectedRows(0,-1,150,document.Top,writer.DirectContent)设置为tabHead表的宽度(就像我在前面的例子中所做的那样)的100%它抛出以下异常的方法:
表格宽度必须大于零.
为什么?问题是什么?如果我将其设置为100%,那么该表的大小是多少?
有人可以帮我解决这个问题吗?
TNX
我已经通过Java和PDF论坛从pdf文件中的表中提取文本值,但除了JPedal(它不是开源和许可)之外找不到任何解决方案.
所以,我想知道任何开源API,如pdfbox,itext,以实现与JPedal相同的结果.
参考.例:
我想开始一个项目,我想在其中执行以下场景:
通过c#winform打开现有的pdf文件,
在表格中显示 pdf内容,质量好,不同缩放级别欢迎!
准备一些工具,如突出显示和下划线工具,供用户进行这些注释.(我认为选择文字能力是必要的!)
保存带注释的pdf文件.
其他一些选项,如添加文件注释和文本搜索,欢迎!
请注意,我不应该使用任何商业组件,如PDFViewer4Net,PDFNet SDK,PDF光栅器,......
那么,有可能!?(或者我应该放弃我的工作!!)
我应该使用任何图书馆吗?
请帮帮我,我真的需要它!
提前致谢.
编辑:
显示pdf文件应该只是在winform,而不是在IE中,因为打印和保存pdf文件到其他地方应该被禁用!