我正在尋找一種簡單的方法來打印DIN-A4紙與數據庫上的數據。數據應該填充到多個帶有邊框的表格中。一些數據應該具有不同的文本格式p.e.粗體或下劃線。我也應該能夠在該表單上打印多個圖像。c#簡單的方法來打印格式化的數據
該程序應該是Windows Forms應用程序或用C#編寫的控制檯應用程序。
哪種格式化數據和打印數據最簡單/最常見的方式是?
apreciated任何建議:)
編輯:
這是我當前的代碼,幾乎沒有成功。它實際上打印,但我得到的只是打印的XML文件。
private void printButton_Click(object sender, EventArgs e)
{
string printPath = System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
fileToPrint = new System.IO.StreamReader(printPath + @"\test.xml");
printFont = new System.Drawing.Font("Arial", 10);
PrintDocument printDocument1 = new PrintDocument();
printDocument1.PrintPage += new PrintPageEventHandler(printDocument1_PrintPage);
printDocument1.Print();
fileToPrint.Close();
}
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
float yPos = 0f;
int count = 0;
float leftMargin = e.MarginBounds.Left;
float topMargin = e.MarginBounds.Top;
string line = null;
float linesPerPage = e.MarginBounds.Height/printFont.GetHeight(e.Graphics);
while (count < linesPerPage)
{
line = fileToPrint.ReadLine();
if (line == null)
{
break;
}
yPos = topMargin + count * printFont.GetHeight(e.Graphics);
e.Graphics.DrawString(line, printFont, Brushes.Black, leftMargin, yPos, new StringFormat());
count++;
}
if (line != null)
{
e.HasMorePages = true;
}
}
那麼,到目前爲止你累了什麼? – neeKo
所以,對於紙張,我建議使用類似html的東西(這裏是一個很好的例子http://www.codeproject.com/Articles/32376/A-Professional-HTML-Renderer-You-Will-Use),但是,你真的需要解釋(畫)你想得到什麼,如果沒有這些信息,我不能提供更好的答案。 – Cynede
我想在我的論文中有這樣的內容:http://jsfiddle.net/35uCK/ – colosso