2

我必须在部分视图中显示 PDF(在 SQL Server 表中存储为 BLOB)。我对在表中存储为 BLOB 的“.jpeg”图像执行相同的操作。图像正在显示,但是,PDF 不是。我的控制器中有以下代码:

[Authorize]
public ActionResult Show3LeadImage(int id)
{
    Byte[] imageData = null;
    using (var scope = new PatientPersistenceScope())
    {
         searchRequest leadRequest = new searchRequest();
         leadRequest.CaseNumber = id;
         var mrx12LeadBitmap = _mrxSearchService.Get12Lead(leadRequest);
         imageData = mrx12LeadBitmap.Data12Leads[0].mrx3Lead;
         scope.Done();
    }
   return File(imageData,"image/png");//I have tried "FileContentResult,but it didnt work
 }

部分视图 (.ascx) 中的代码如下所示:

<object data='<%= Url.Action("Show3LeadImage", "CareRecord", new { id = Model.CareRecord.CaseNumber}) %>' type="application/pdf" style="width: 721px; height: 800px;" ></object>

我无权访问物理文件.... BLOB 是我所拥有的。

甚至可以在部分视图中将 PDF 显示为图像吗?我遇到了很多文章,这些文章解释了如何在部分视图中使 PDF 可供下载。但我不希望我的文件可下载。这个功能是可以实现的,还是我试图做一些不可能的事情?

4

1 回答 1

1

将 PDF 转换为图像并不像将其用作 PNG 那样简单。您需要使用 ImageMagick 或 ABCPdf 等库进行转换(示例:将 PDF 转换为高分辨率图像

如果您想在 HTML 中嵌入 PDF,有几种方法可以做到这一点,即在 HTML 中嵌入 PDF 的推荐方式?

于 2013-12-11T01:44:37.970 回答