我一直在尝试显示我从$http.post
响应中获取的pdf文件。pdf必须使用<embed src>
例如在应用程序内显示。
我遇到了几个堆栈帖子,但是以某种方式我的示例似乎不起作用。
JS:
根据这份文件,我继续尝试…
$http.post('/postUrlHere',{myParams}).success(function (response) {
var file = new Blob([response], {type: 'application/pdf'});
var fileURL = URL.createObjectURL(file);
$scope.content = fileURL;
});
现在,据我所知,将fileURL
创建一个临时URL,该博客可以用作参考。
HTML:
<embed src="{{content}}" width="200" height="200"></embed>
我不确定如何在Angular中处理此问题,理想情况是 (1) 将其分配给作用域, (2) 将blob“准备/重建”到pdf (3)
使用,<embed>
因为我将其传递给HTML 想要在应用程序中显示它。
我已经研究了一天多了,但是某种程度上我似乎无法理解它在Angular中是如何工作的。而让我们假设那里没有pdf查看器库。
首先,您需要将设置responseType
为arraybuffer
。如果要创建数据块,这是必需的。参见Sending_and_Receiving_Binary_Data。因此您的代码将如下所示:
$http.post('/postUrlHere',{myParams}, {responseType:'arraybuffer'})
.success(function (response) {
var file = new Blob([response], {type: 'application/pdf'});
var fileURL = URL.createObjectURL(file);
});
下一部分是,您需要使用$
sce
服务来使角度信任您的URL。这可以通过以下方式完成:
$scope.content = $sce.trustAsResourceUrl(fileURL);
不要忘记注入$ sce服务。
如果全部完成,您现在可以嵌入pdf:
<embed ng-src="{{content}}" style="width:200px;height:200px;"></embed>
我一直试图显示pdf文件,我从一个响应中得到一个blob。pdf必须使用
问题内容: 我的Angular 1.5应用程序通过REST连接到Java / Tomcat / Spring后端服务器。 一种REST服务会生成PDF并将其发送给客户端。它在DEsktop浏览器(至少是FF,Chrome)上运行良好,但是 无论我使用的浏览器是什么(Chrome,Safari ), 我都无法在iOS(例如ipad)上看到PDF内容。 这是角度代码: Spring / Jax-RS代
问题内容: 我正在从数据库中检索Blob图像,并且希望能够使用JavaScript查看该图像。以下代码在页面上产生一个损坏的图像图标: 其中包含所有必需的代码,包括blob。完成的代码应正确显示图像。 问题答案: 问题是我有十六进制数据,需要先进行十六进制数据转换,然后才能进行base64编码。 在PHP中:
问题内容: 我无法将图像显示在页面上。我可以存储它。 这些是处理程序: db的内容如下: 表格: 我的模板替换代码: 问题答案: 首先,我认为您正在将图像密钥和图像二进制数据混合在一起。 模板 您应该将图像密钥(字符串)写入模板: 即,如果您只是将image.key()传递给模板,则最终的html应该如下所示: 您可以将其视为一个两步过程。您呈现您的模板。用户浏览器呈现html并获取您的图像处理程
问题内容: 我想以特定尺寸在Android应用程序中显示图片。我该怎么做?请指导我?还有一件事,我想从SD卡中获得该图像。所以请帮帮我。 提前致谢。 问题答案: 首先,您需要创建一个imageview。 创建布局参数以在布局上添加imageview 然后获取您的图像路径 在ImageView上设置图像 获取您要添加的布局 将视图添加到布局
问题内容: 我必须从在线数据库中获取以Latin-1字符集编码的文本,并且每个特殊的拉丁字符(即à,ò,ù,è…)都用带有“?”的黑色正方形显示。内。 如何正确显示此内容? 幸运的是,几个小时后我找到了答案,我想与大家分享。请阅读下面的解决方案 问题答案: 解决方案确实很简单,但是我还没有考虑过,但是它的好处是易于理解和实现。实际上,这是代码: 这样,来自Latin-1服务器的所有传入字符串都将正