Ich brauchte die Möglichkeit, einen PDF-Umschlag zu erstellen, und hatte keine gute Lösung dafür gefunden, also dachte ich, dass dies von Interesse sein könnte.Erstellen Sie einen PDF-Umschlag
1
A
Antwort
2
Wir verwenden PDFSharp, ein kostenloses PDF-Dokument-Tool. Es hat gut geklappt. Hier ist die Methode dafür. Es wird ein neues PDF-Dokument mit Umschlaggröße erstellt und die Adresse zentriert. GetAddress() ist nur eine Methode, um die Adresse von einem DB abzurufen. Verwenden Sie einfach \ n, um die verschiedenen Zeilen in der Adresse zu ändern.
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
XGraphics gfx = XGraphics.FromPdfPage(pdfpage, XGraphicsPdfPageOptions.Append);
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);
XBrush brush = new XSolidBrush();
// 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
PDFSharp ist gut, so iTextSharp, die Java-Port von iText, einer der ersten PDF-Bibliotheken um.
Verwandte Themen
- 1. Erstellen Sie einen Schauspieler
- 2. Erstellen Sie einen generischen Basisadapter?
- 3. Erstellen Sie einen Daemon-Hintergrunddienst?
- 4. Erstellen Sie einen Vollbildmodus alertDialog
- 5. So erstellen Sie einen Binärbaum
- 6. R Erstellen Sie einen Schließzähler
- 7. So erstellen Sie einen scala.concurrent.ExecutionContext
- 8. Erstellen Sie einen DNS-Proxy in C
- 9. So erstellen Sie einen Spinner mit Optionsschaltflächen
- 10. So erstellen Sie einen Zugriffspunkt programmgesteuert
- 11. Erstellen Sie einen Spinner programmgesteuert Android
- 12. Erstellen Sie einen personalisierten Download-Link
- 13. Erstellen Sie einen Prozess von einem Treiber
- 14. So erstellen Sie einen dynamischen UIPageViewController
- 15. Erstellen Sie einen Präfix-Befehl mit Boost.Program_options
- 16. So erstellen Sie einen Schatten für UICollectionViewCell
- 17. Erstellen Sie einen Loader-Stub für OutlookAddInBase
- 18. Erstellen Sie einen Wochenplan mit CSS/HTML
- 19. Erstellen Sie einen einfachen POP3 * -SERVER *
- 20. Erstellen Sie einen Ordner (Bundle) in Cocoa
- 21. Erstellen Sie einen Border-Radius für div
- 22. Erstellen Sie einen Proxy für eine Abhängigkeitseigenschaft
- 23. Erstellen Sie einen Auth-Benutzer mit Gerät
- 24. Erstellen Sie einen neuen Block in Magento
- 25. Erstellen Sie einen Farbverlauf in Android?
- 26. Erstellen Sie einen Baum aus Oracle Tabellen
- 27. Erstellen Sie einen "Transaktions-Handler" Smart-Vertrag
- 28. Erstellen Sie einen Index in Blogger alphabetisch
- 29. Erstellen Sie einen dynamischen vhost in Apache
- 30. Erstellen Sie einen Datenrahmen mit% Faktor
+1: Das hat mir etwas Zeit gespart, danke! –
PDFSharp ist genial. – devlord