Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# iTextSharp ColumnText未显示在PDF上_C#_Itextsharp - Fatal编程技术网

C# iTextSharp ColumnText未显示在PDF上

C# iTextSharp ColumnText未显示在PDF上,c#,itextsharp,C#,Itextsharp,我有以下代码: var doc = new Document(); var pdf = "C:/pdfs/" + DateTime.Now.ToString("yyyymmdd") + ".pdf"; PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(pdf, FileMode.Create)); doc.Open(); ColumnText ct = new ColumnText(cb); Phrase myTex

我有以下代码:

var doc = new Document();
var pdf = "C:/pdfs/" + DateTime.Now.ToString("yyyymmdd") + ".pdf";
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(pdf, FileMode.Create));
doc.Open();    
ColumnText ct = new ColumnText(cb);
Phrase myText = new Phrase("TEST paragraph\nNewline");
ct.SetSimpleColumn(myText, 34, 750, 580, 317, 15, Element.ALIGN_LEFT);
ct.Go();
doc.Close();
但是当我运行应用程序时,它没有显示在PDF上?我错过了什么?

这对我来说很有用:

var doc = new Document();
var pdf = "D:/Temp/pdfs/" + DateTime.Now.ToString("yyyymmdd") + ".pdf"; // mm ??
var fi = new FileInfo(pdf);
var di = fi.Directory;
if (!di.Exists)
{
    di.Create();
}
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(pdf, FileMode.Create));
doc.Open();
PdfContentByte cb = writer.DirectContent;
ColumnText ct = new ColumnText(cb);
Phrase myText = new Phrase("TEST paragraph\nNewline");
ct.SetSimpleColumn(myText, 34, 750, 580, 317, 15, Element.ALIGN_LEFT);
ct.Go();
doc.Close();
也许您有一个未被覆盖的旧版本的输出?或者您看到了错误的输出?我运行了两次,它创建了两个文件20135826和20135926。可能在DateTime.Now.ToString(“yyyyMMdd”)中是您真正想要的,而不是分钟

var pdf = "D:/Temp/pdfs/" + DateTime.Now.ToString("yyyyMMdd") + ".pdf";
这对我很有用:

var doc = new Document();
var pdf = "D:/Temp/pdfs/" + DateTime.Now.ToString("yyyymmdd") + ".pdf"; // mm ??
var fi = new FileInfo(pdf);
var di = fi.Directory;
if (!di.Exists)
{
    di.Create();
}
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(pdf, FileMode.Create));
doc.Open();
PdfContentByte cb = writer.DirectContent;
ColumnText ct = new ColumnText(cb);
Phrase myText = new Phrase("TEST paragraph\nNewline");
ct.SetSimpleColumn(myText, 34, 750, 580, 317, 15, Element.ALIGN_LEFT);
ct.Go();
doc.Close();
也许您有一个未被覆盖的旧版本的输出?或者您看到了错误的输出?我运行了两次,它创建了两个文件20135826和20135926。可能在DateTime.Now.ToString(“yyyyMMdd”)中是您真正想要的,而不是分钟

var pdf = "D:/Temp/pdfs/" + DateTime.Now.ToString("yyyyMMdd") + ".pdf";

cb来自哪里?是否应该有一个PdfContentByte cb=writer.DirectContent;cb来自哪里?是否应该有一个PdfContentByte cb=writer.DirectContent;我缺少
PdfContentByte cb=writer.DirectContent可能旧版本没有被覆盖。我缺少
PdfContentByte cb=writer.DirectContent并且可能没有覆盖旧版本。