2012-01-05 103 views
0

我創建了一個基本上可以讓用戶添加行並進行一些數學計算的會計程序。我的問題是,我需要做到這一點,所以一旦用戶按下按鈕,它會在紙上打印表格。我怎麼能做到這一點?請逐步解釋,因爲我是初學者。如何在Visual Studio C++中打印整個表格?

編輯:爲什麼這個問題投下來。它有什麼問題?

+2

我沒有看到任何理由對它投反對票。在我看來,這是一個有效的問題 - 它過於模糊,因爲有很多方法可以解決問題,但對於經驗不多的人來說,這可能並不明顯。沒有一些幫助,OP沒有足夠的信息能夠有效地Google;爲了Google,您至少需要知道幾個關鍵字。 (當然,任何答案都可能引發額外的問題:-)。或向Google推薦關鍵字。但至少OP可以開始尋求進一步。) – 2012-01-05 11:47:52

+0

以及我沒有downvote,只是認爲這個問題太模糊,以適應SO的問答格式。這個問題似乎更適合聊天 – 2012-01-05 11:49:43

回答

3

C++中的基本輸出工具是std::ostream,但它非常有限。 如果 輸出使用的是固定寬度的字體,那麼使用它可以(但並非總是那麼容易)對錶格進行格式化但今天情況很少如此。 如果你可以使用固定寬度的字體, iostream的操縱器應該是足夠的;決定每列的寬度,並在輸出字段時使用適當的 操縱器設置寬度(和左對齊或右對齊—)。

否則,您將不得不確定印刷的 輸出應該使用哪種標記語言— Postscript是非常普遍的,但遠不是通用的。 完成此操作後,您必須重複遍歷行,並在每行中迭代 ,爲每個行生成正確的標記。如果你是 生成一些像Postscript(或大多數打印機標記語言), ,你將不得不跟蹤絕對位置,並可能計算 列的寬度等,確定每個字段的寬度取決於 字體是使用和該字體中每個字符的寬度。 我見過的不止一個程序輸出了LaTeX源代碼,然後用 system來調用LaTeX(或者pdflatex,生成PDF);這假設 LaTeX被安裝在程序 將運行的所有機器上,但LaTeX將負責所有上述計算;你 只輸出你的列,由'&'分隔,每行 由兩個'\'終止,與相應的周邊命令, 乳膠剩下的。 (這是我推薦的解決方案,如果你可以將 設置爲LaTeX的存在,那麼舊的和不友好的 就像LaTeX那樣,LaTeX仍然會生成我嘗試過的任何程序的最佳輸出。 )

+0

最後我的問題得到解答。謝謝你,這就是我所要求的。 – Bugster 2012-01-05 11:42:17