0

私はこのコードを持っています:

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 に表示されませんか? 私は何が欠けていますか?

4

1 に答える 1

3

これは私のために働いた:

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();

おそらく、上書きされていない古いバージョンの出力がありますか? または間違った出力を見ていますか?これを 2 回実行したところ、20135826 と 20135926 という 2 つのファイルが作成されました。おそらく、分ではなく、DateTime.Now.ToString("yyyyMMdd") が本当に必要なものです。

var pdf = "D:/Temp/pdfs/" + DateTime.Now.ToString("yyyyMMdd") + ".pdf";
于 2013-09-26T22:42:35.327 に答える