`
lozpeng
  • 浏览: 39492 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用PDFRenderer在线浏览PDF文档

    博客分类:
  • Java
阅读更多

最近所做的一个项目,提出要求将700多个文档在服务器端管理,并且不能以文本形式向浏览用户展示,要求对这700多个文档进行保密,因此考虑将DOC文档转为PDF后再将PDF文档转为图片数据提供给浏览用户浏览。可能这不是一个很好的办法,但这是目前我能想到的办法了。希望大家能给点意见。实现采用服务器端使用PDFRenderer,客户端则采用Extjs。贴个图看效果,服务器端关键代码在前一篇中已经提供。改功能目前存在一个问题,当浏览嵌入有VISIO图片或者嵌入有中文字体时会出现如下异常

java.io.IOException: Unknown CMap: Identity-V
	at com.sun.pdfview.font.PDFCMap.getCMap(PDFCMap.java:67)
	at com.sun.pdfview.font.PDFFontEncoding.<init>(PDFFontEncoding.java:73)
	at com.sun.pdfview.font.PDFFont.getFont(PDFFont.java:133)
	at com.sun.pdfview.PDFParser.getFontFrom(PDFParser.java:1172)
	at com.sun.pdfview.PDFParser.iterate(PDFParser.java:726)
	at com.sun.pdfview.BaseWatchable.run(BaseWatchable.java:101)
	at java.lang.Thread.run(Unknown Source)

 

当将字体嵌入到PDF文档中之后如上错误则不会出现,如果嵌入有VISIO绘图,则将VISIO绘图转为其它图片形式。嵌入PDF文档中。

java.io.IOException: Unknown CMap: UniGB-UCS2-H
	at com.sun.pdfview.font.PDFCMap.getCMap(PDFCMap.java:67)
	at com.sun.pdfview.font.PDFFontEncoding.<init>(PDFFontEncoding.java:73)
	at com.sun.pdfview.font.PDFFont.getFont(PDFFont.java:133)
	at com.sun.pdfview.PDFParser.getFontFrom(PDFParser.java:1172)
	at com.sun.pdfview.PDFParser.iterate(PDFParser.java:726)
	at com.sun.pdfview.BaseWatchable.run(BaseWatchable.java:101)
	at java.lang.Thread.run(Unknown Source)

 

上一种异常也是没有嵌入字体,在生成PDF文档时将字体嵌入就可以解决。

  • 大小: 200.8 KB
分享到:
评论
9 楼 maodun1978 2015-09-22  
用pdfrenderer解析itext生成的pdf一直是报java.io.IOException: Unknown CMap: UniGB-UCS2-H错误,解析标准的PDF就没这问题,如何解决呢?
8 楼 maodun1978 2015-09-22  
怎么在生成PDF时将itext中的"STSong-Light","UniGB-UCS2-H"支持中文的字体嵌入到PDF呢?
7 楼 lishaorui 2011-09-20  
你好,从office转成pdf是采取什么方式获取的,我用poi只能获取到office文档的文本内容,望回复,谢谢。
6 楼 C_yi 2010-08-06  
C_yi 写道
“上一种异常也是没有嵌入字体,在生成PDF文档时将字体嵌入就可以解决。”
请问,具体需要加什么代码,还是需要引什么jar包



回复是空的
5 楼 C_yi 2010-08-05  
“上一种异常也是没有嵌入字体,在生成PDF文档时将字体嵌入就可以解决。”
请问,具体需要加什么代码,还是需要引什么jar包



4 楼 远方的你 2010-07-04  
是的啊。我也出现了第二种异常的,请问怎么解决呢。
3 楼 AbstractForever 2010-07-01  
我也是这个问题,怎么解决呢
2 楼 zijin1117 2010-05-27  
请问一下,如何用Java的 itext 在生成PDF的时候嵌入字体?

BaseFont bfChinese = BaseFont.createFont("STSong-Light","UniGB-UCS2-H", BaseFont.EMBEDDED);

不行。
1 楼 chanball 2010-03-16  
请问你上面的第二个异常是怎么解决的,我现在也是。如果pdf有中文就出现这个异常

相关推荐

    pdfrenderer

    2. **页面渲染**:可以逐页加载PDF文档,支持缩放、平移等交互操作,使用户能够自由浏览PDF文档的各个部分。 3. **事件处理**:可以监听用户对PDF的交互,比如点击、滚动等,以便实现更丰富的功能,如书签跳转、高亮...

    PDFRenderer插件.rar

    PDFRenderer插件是一款专为Unity开发的工具,用于在Unity引擎中实现PDF文档的渲染与播放功能。这个插件能够帮助开发者将PDF文档集成到3D游戏或交互式应用中,提供了一种在Unity环境中查看PDF内容的有效方式。在本文...

    unity3d pdf renderer v5.51

    使用Unity3D PDF Renderer V5.51时,开发者需要注意的是,由于PDF文档可能包含大量的图像和文本,因此在加载和渲染时可能会影响性能。为了优化用户体验,可以预先加载部分关键页面,或者采用异步加载策略。此外,...

    Unit3d PDF Renderer v3.992.rar

    此外,它支持多页面显示,用户可以在Unity的3D场景中自由浏览PDF文档的各个页面,这对于创建虚拟现实(VR)或增强现实(AR)应用尤其有用。 Unit3d PDF Renderer v3.992的另一个亮点是其自适应渲染机制。它可以根据设备...

    PDF Renderer-V3.992.rar

    这款插件的强大之处在于它允许用户在Unity应用中无缝集成PDF阅读功能,无论是本地存储的PDF文件还是通过网络访问的在线文档,都能轻松处理。 Unity3D是一款广泛应用于游戏开发、虚拟现实(VR)、增强现实(AR)以及...

    Unity基于PDFRenderer插件实现文档查看(支持移动端&amp;PC)

    通过集成此插件,开发者可以创建用户友好的PDF阅读器应用,用户可以在游戏或应用内浏览PDF文件,无需依赖外部软件。 1. **PDFRenderer插件介绍**:PDFRenderer提供了C#接口,使得Unity脚本可以直接与PDF文档进行...

    PDF Renderer-3.992.unity 加载PDF插件

    PDF Renderer-3.992.unity 是一个专门为Unity游戏引擎设计的插件,用于在Unity环境中渲染和显示PDF文档。这个插件的核心功能是使开发者能够在Unity项目中集成PDF查看器,允许用户在游戏或者应用程序中直接查看PDF...

    PDF Renderer5.51

    在使用PDFRenderer.unitypackage时,开发者需要按照以下步骤操作: 1. **导入插件**:将下载的PDFRenderer.unitypackage文件导入到Unity项目中,通过“Assets”-&gt;"Import Package"-&gt;"Custom Package"菜单选项完成。...

    最新UnityPDF阅读器PDF Renderer_v4.11.rar

    UnityPDF阅读器PDF Renderer_v4.11是一款专为Unity引擎设计的高级PDF阅读解决方案,旨在为游戏开发者和应用程序创建者提供便捷、高效的PDF文件查看功能。这款阅读器的版本v4.11代表着它已经经过多次迭代和优化,具备...

    C# pdf转图片的demo程序

    以下是一个简单的示例代码片段,展示了如何使用该库将PDF文件转换为JPEG图片: ```csharp using O2S.Components.PDFRender4NET; // 初始化PDF渲染器 var pdfRenderer = new PDFRenderer(); // 加载PDF文件 int ...

    PDFRender4NET 资源及使用方法

    2. **初始化**: 在代码中,你需要创建一个`PDFRenderer`对象,通常通过提供PDF文件的路径来初始化。例如: ```csharp PDFRenderer pdfRenderer = new PDFRenderer(@"C:\path\to\your\pdf\file.pdf"); ``` 3. **...

    Android浏览书籍的层叠翻页动画效果

    本文将深入探讨如何利用Android SDK中的工具和技术来创建这样的动画效果,同时也会介绍PDF文件渲染器PdfRenderer以及栈视图StackView的使用。 首先,让我们关注核心的翻页动画效果。在Android中,这种效果通常通过...

    flutter_plugin_pdf_viewer,一个处理pdf文件的flutter插件。适用于Android和iOS.zip

    插件的使用方法通常是创建一个`PDFViewer` widget,将PDF文件的URL或者文件路径作为参数传入。它可以处理本地存储的PDF文件,也可以通过HTTP或HTTPS加载网络上的PDF资源。此外,插件还提供了基本的页面导航功能,如...

    pdf.图片手机端预览demo,打开就可以使用

    实现手机端的PDF预览,开发者通常会使用专门的库或API,例如Adobe的PDFKit(iOS)、Android的PdfRenderer或者开源的PDF.js。这些工具能处理PDF解析、渲染和交互,使开发者可以快速集成到自己的应用中。在这个demo中...

    PDF转图片O2S.Components.PDFRender4NET

    3. 创建转换对象:实例化PDFRender4NET的类,例如`PDFRenderer renderer = new PDFRenderer();` 4. 加载PDF文件:通过`renderer.LoadDocumentFromFile("path_to_your_pdf_file.pdf");`加载要转换的PDF文件。 5. ...

    Android DocumentViewer(PDF阅读器).zip

    加载完成后,使用`PdfRenderer.openPdf()`方法打开PDF文档,并获取其元数据,如总页数等。 性能优化是PDF阅读器开发中的重要环节。由于PDF渲染可能比较耗时,可以考虑使用异步加载策略,将PDF加载和渲染过程放在...

    安卓Android源码——DocumentViewer(PDF阅读器).zip

    在移动开发领域,尤其是在安卓平台上,PDF阅读器是常见的应用之一,它允许用户查看、浏览和管理PDF文档。本篇将深入剖析一个名为"DocumentViewer"的开源PDF阅读器项目,通过分析其源码,我们可以了解安卓系统下PDF...

    java编写的PdfViewer

    4. **PDF处理库**:在Java中,有多个库可以用来处理PDF文件,例如iText、PDFBox、Apache PDFBox、PDFRenderer等。这些库提供API,可以用于读取、解析、创建、编辑PDF文档。Java PDF Viewer可能使用了其中的一种或几...

    AndroidDocumentViewer(PDF阅读器).rar

    1. PdfRenderer初始化:首先,需要通过`ParcelFileDescriptor`打开PDF文件,然后使用`PdfRenderer.Builder`创建`PdfRenderer`实例。 2. 页面渲染:获取`PdfRenderer.Page`对象,将其绑定到Surface上,然后调用`draw`...

Global site tag (gtag.js) - Google Analytics