我想要使用c#從網頁打印標準大小的信封。有誰知道如何做這樣的事情?我會從系統加載地址的數據並傳遞給它。我只需要這樣做的基本步驟。從網站打印信封?
Q
從網站打印信封?
1
A
回答
2
我確實最終用PDF格式。我們使用PDFSharp,這是一個免費的PDF創作者工具。我使用此處的函數即時創建PDF,然後在頁面上,我只是將此頁面作爲新窗口加載。這是我最終爲任何想要做類似事情的人創建的方法。
protected void DisplayPDFEnvelope()
{
try
{
PdfDocument document = new PdfDocument();
PdfPage pdfpage = new PdfPage();
XUnit pdfWidth = new XUnit(4.125, XGraphicsUnit.Inch);
XUnit pdfHeight = new XUnit(9.5, XGraphicsUnit.Inch);
pdfpage.Height = pdfHeight;
pdfpage.Width = pdfWidth;
pdfpage.Orientation = PageOrientation.Landscape;
XPdfFontOptions options = new XPdfFontOptions(PdfFontEncoding.Unicode, PdfFontEmbedding.Always);
document.AddPage(pdfpage);
// Create a font
XFont font = new XFont("ARIAL", 1, XFontStyle.Regular, options);
// Get an XGraphics object for drawing beneath the existing content
XGraphics gfx = XGraphics.FromPdfPage(pdfpage, XGraphicsPdfPageOptions.Append);
// This method just returns a formatted address from the DB using \n to
// do line breaks, i.e. 'Test Person\nAddress Line1\City, State Zip'
string address = GetAddress();
// Get the size (in point) of the text
XSize size = gfx.MeasureString(address, font);
// Create a graphical path
XGraphicsPath path = new XGraphicsPath();
path.AddString(address, font.FontFamily, XFontStyle.Regular, 10,
new XPoint(345, 160), XStringFormats.Default);
// Create a dimmed pen and brush
XPen pen = new XPen(XColor.FromGrayScale(0), 0); // XColor.FromArgb(50, 75, 0, 130), 3);
XBrush brush = new XSolidBrush(); // XColor.FromArgb(50, 106, 90, 205));
// Stroke the outline of the path
gfx.DrawPath(pen, brush, path);
MemoryStream stream = new MemoryStream();
document.Save(stream, false);
Page.Response.Clear();
Page.Response.ContentType = "application/pdf";
Page.Response.AppendHeader("Content-Length", stream.Length.ToString());
Page.Response.AppendHeader("Content-Type", "application/pdf");
Page.Response.AppendHeader("Content-Disposition", "inline;filename=envelope.pdf");
Page.Response.BinaryWrite(stream.ToArray());
Page.Response.Flush();
stream.Close();
HttpContext.Current.ApplicationInstance.CompleteRequest();
}
catch (Exception ex)
{
throw ex;
}
}
0
你將不得不使用的ActiveX這樣做。
這可能有助於 http://www.sharewareconnection.com/print-preview-activex-control.htm
1
理論上你可以使用CSS http://www.w3.org/TR/css-print/做到這一點。取決於你需要支持多少瀏覽器,它可能是一個很大的痛苦,因爲它們的工作方式稍有不同。
你很可能與頁面大小和方向的一些問題爲您的用戶或許我的許多歧打印機。從flash,pdf或silverlight 3打印可能是簡單的路線。
+0
對PDF的+1,儘管CSS *可能能夠做到這一點 - PDF是明顯的第一選擇。 – 2009-05-01 23:14:24
0
您可以從this site打印信封。
它增加了條形碼和一切。從網絡打印。
相關問題
- 1. 從C打印信封#
- 2. JButton的打印一封信
- 3. 打印信封格式
- 4. .net從網站打印?
- 5. 從perl網站打印頭
- 6. 從網站打印票
- 7. Crystal Report打印信封標籤
- 8. Adobe LiveCycle打印到信封
- 9. 如何打印從ASPX.net網站Visual Basic
- 10. 從網站自動打印PDF
- 11. 從網站DYMO標籤打印機打印
- 12. 在網站中打印PDF
- 13. 打印屏幕到網站
- 14. IE8打印網站放大
- 15. 網站打印和flash
- 16. 打印OSC網站的URL
- 17. 正確打印網站
- 18. 從網站/網絡應用程序打印到標籤打印機?
- 19. 從ASP.NET打印到網絡打印機
- 20. 收據打印機 - 從網頁打印
- 21. 在控制檯打印一個網站的信息
- 22. rake db:在我的網站上打印的種子信息
- 23. 在PyQt4的loadFinished信號後打印html網站。 Python
- 24. 從打印網站隱藏元(網址,頁面標題,頁碼)
- 25. Java打印對象,封裝
- 26. 直接從網站(PHP)打印到本地打印機POS(銷售點)
- 27. 使打印機打印出網站背景
- 28. 從網站閱讀信息
- 29. 從網站提取信息
- 30. 從網站存儲信息
在服務器或客戶端? – 2009-05-01 23:01:42