Hei Jungs Ich habe dieses Byte-Array Ich möchte in PDF konvertieren und stellen Sie es zum Download bereit. Hat jemand eine Idee, wie das gemacht wird?Wie konvertiert man pdf Byte [] Array in eine herunterladbare Datei mit iTextSharp
hier ist meine Action Controller
public ActionResult DownloadLabTestResult(string labTestResultID)
{
PdfReader pdfReader = new PdfReader("Xue_Tang.pdf");
MemoryStream stream = new MemoryStream();
PdfStamper stamper = new PdfStamper(pdfReader, stream);
pdfReader.Close();
stamper.Close();
stream.Flush();
stream.Close();
byte[] pdfByte = stream.ToArray();
// So i got the byte array of the original pdf at this point. Now how do i convert this
// byte array to a downloadable pdf? i tried the method below but to no avail.
MemoryStream ms = new MemoryStream(pdfByte);
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=labtest.pdf");
Response.Buffer = true;
Response.Clear();
Response.OutputStream.Write(ms.GetBuffer(), 0, ms.GetBuffer().Length);
Response.OutputStream.Flush();
Response.End();
return new FileStreamResult(Response.OutputStream, "application/pdf");
}
Wenn Sie die PDF-Datei auf der Festplatte haben, könnten Sie sie direkt mit einem FileStream lesen. –
Auch wenn du den PdfStamper brauchst, sieht es so aus als hättest du viele Streams, du solltest nicht die "ms" -Dämpfung brauchen, der "Stream" -Stream sollte reichen, aber du solltest es nicht schließen bevor du es verwendest, du könntest versuchen " ms.Seek (0, SeekOrigin.Begin); " bevor Sie es dem OutputStream hinzufügen. –
oh ya ich könnte immer von der lokalen Festplatte natürlich lesen, aber ich versuche nur etwas hier zu simulieren, wo ich nur mit dem Byte-Array zur Verfügung gestellt und mein Job ist es in eine herunterladbare Datei zu konvertieren, nicht genau wissen, wie das hehe = p – Ari