Hei guys Tôi có mảng byte này tôi muốn chuyển đổi sang pdf và làm cho nó có sẵn để tải về. Bất cứ ai có bất kỳ ý tưởng làm thế nào điều này được thực hiện?Làm thế nào để chuyển đổi pdf Byte [] Mảng để tải về tập tin bằng cách sử dụng iTextSharp
đây là điều khiển hành động của tôi
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");
}
Nếu bạn có tệp pdf trên đĩa, bạn có thể đọc trực tiếp bằng FileStream. –
Thậm chí nếu bạn cần PdfStamper có vẻ như bạn có nhiều luồng, bạn không cần hơi "ms", luồng "luồng" phải đủ, nhưng bạn không nên đóng nó trước khi sử dụng, bạn có thể thử " ms.Seek (0, SeekOrigin.Begin); " trước khi bạn thêm nó vào OutputStream. –
oh ya tôi luôn có thể đọc từ ổ đĩa cục bộ nhưng tôi chỉ cố gắng mô phỏng một cái gì đó ở đây mà im chỉ được cung cấp với mảng byte và công việc của tôi là chuyển đổi nó thành tệp có thể tải xuống, không biết chính xác cách làm điều đó hehe = p – Ari