Pdf p:不同浏览器的媒体呈现方式不同

Pdf p:不同浏览器的媒体呈现方式不同,pdf,primefaces,primefaces-extensions,Pdf,Primefaces,Primefaces Extensions,我正在使用PF 6.2,试图使用p:media组件来显示PDF。 (我不再使用pe:documentViewer,只是因为它目前不显示数字签名,因为PDF.js首先不支持该功能) 但是,我观察到渲染PDF查看器的外观在不同浏览器中是不同的 我的用法: <p:media id="pdfVw" height="600" width="800" value="#{viewerController4.pdfDocumentStream}" player="pdf" cache="false">

我正在使用PF 6.2,试图使用
p:media
组件来显示PDF。
(我不再使用
pe:documentViewer
,只是因为它目前不显示数字签名,因为PDF.js首先不支持该功能)

但是,我观察到渲染PDF查看器的外观在不同浏览器中是不同的

我的用法:

<p:media id="pdfVw" height="600" width="800" value="#{viewerController4.pdfDocumentStream}" player="pdf" cache="false">                                              
        <f:param name="id" value="#{viewerController4.currentDocId}" /> 
</p:media>
关于外观…例如,在Chrome中:
*没有缩略图的网页带
*字符串“MicrosoftWord-Dokument1”来自PDF的“title”属性(我希望可以抑制显示它!)

在Firefox中:
*缩略图条在那里
*数字签名不见了
*该标题字符串不存在(对我来说,它是一个加号)
*与Chrome相比,菜单也完全不同

(在IE中,情况更为不同)

我客户的目标浏览器是Chrome。

如果我能以某种方式抑制标题并开始在Chrome中显示缩略图条,那将完全解决我的目的。有什么建议吗

我知道了……在使用
p:media
时,期望Chrome中的缩略图条是错误的期望。这是因为,当使用
p:media
时,Chrome将使用自己的PDF查看器,而不是Adobe的(因此,可能没有所有类似Adobe的功能可用)。详情如下:

关于标题显示在工具栏上的主题,除了编辑PDF本身的标题元数据外,我仍然找不到任何轻松抑制或软修改它的解决方案

此外,我还看到了这个不错的文档,其中列出了可以传递给配置查看器的各种
:)

我知道了……在使用
p:media
时,期望Chrome中的缩略图条是错误的期望。这是因为,当使用
p:media
时,Chrome将使用自己的PDF查看器,而不是Adobe的(因此,可能没有所有类似Adobe的功能可用)。详情如下:

关于标题显示在工具栏上的主题,除了编辑PDF本身的标题元数据外,我仍然找不到任何轻松抑制或软修改它的解决方案

此外,我还看到了这个不错的文档,其中列出了可以传递给配置查看器的各种
:)

您可以在这里找到如何配置一些(工具栏->0隐藏工具栏,这是我找到的最接近的选项,虽然这是一个有点激烈的解决方案,但据报道,
不同的专有播放器可能有不同的配置参数
)另外需要注意的是,Firefox的PDF渲染器是PDF.js,这就解释了为什么数字签名消失了。js是一个Mozilla项目,专门用于在Firefox浏览器中呈现PDF。@Melloware非常感谢您提供的信息。我不会在Firefox上追逐任何PDF格式副本。@WoAiNii正如你所建议的,这个
会使整个工具栏本身消失。但就个人而言,我没有任何运气单独压制这个头衔。我意识到,至少对于Chrome来说,工具栏中的标题来自PDF的“标题”元数据。因此,如果我想显示一个与文件名相同的标题,那么一个选项是在显示之前编辑原始PDF本身——但这不是一个好的解决方案(尽管它实际上可以工作)。如果我能知道Chrome for PDF player的其他
配置值可以传递给
,这本来是一个希望……但我找不到任何关于这方面的文档:(这里是您可以找到如何配置一些(工具栏->0隐藏工具栏,这是我找到的最接近的选项,虽然这是一个有点激进的解决方案,但据报道,
不同的专有播放器可能有不同的配置参数
)另外需要注意的是,Firefox的PDF呈现程序是PDF.js,这就解释了为什么数字签名消失了。PDF.js是一个专门用于在Firefox浏览器中呈现PDF的Mozilla项目。@Melloware非常感谢您提供的信息。我不会在Firefox上追逐任何PDF格式副本。@WoAiNii正如您所建议的,这个
将消失整个过程工具栏本身。但就个人而言,我并没有幸单独抑制标题。我意识到,至少对于Chrome来说,工具栏中的标题来自PDF的“标题”因此,如果我想显示一个与文件名相同的标题,那么一个选项是在显示之前编辑原始PDF本身——但这不是一个好的解决方案(尽管它实际上可以工作)。如果我能知道Chrome for PDF player的其他
配置值可以传递给
,这将是一个希望…但我找不到任何关于此的文档:(
public StreamedContent getPdfDocumentStream() throws IOException {
        FacesContext context = FacesContext.getCurrentInstance();

        if (context.getCurrentPhaseId() == PhaseId.RENDER_RESPONSE) {
            return new DefaultStreamedContent();
        } else {
            String id = context.getExternalContext().getRequestParameterMap().get("id");
            Doc doc = pdfDocMap.get(id);

            return new DefaultStreamedContent(new FileInputStream(new File(doc.getDocPath())), "application/pdf", doc.getDocName());
        }

    }