http://blog.csdn.net/atluckstar/article/details/77688972

回答网友提问  2015-7-28

因为好多人问能不能显示中文的问题,我总结大致分为两类问题:

1.能否显示中文?2.能否读取远程服务器上的PDF(包括中文文件名)

第一个问题:能否显示中文?

首先,显示中文肯定是可以的,不论是文件名还是文件的正文,见下图:

如果你说显示不出中文,我想是不是下面这种情况:

这属于js中文乱码问题,你看中文文件名完全没有识别出来,看一下你的viewer.html文件在<head>标记是不是有这句:<meta charset="utf-8">

换成:<meta http-equiv="Content-Type" content="text/html" charset="gb2312" >  就可以啦!说白了就是charset换成gb2312

第一个问题over。

第二个问题:能否读取远程服务器上的PDF(包括中文文件名)

我们哆嗦一点,从头说起,首先用mozilla的example证明读取远程服务器上的pdf绝对没有问题,见下图
读取http://mozilla.github.io/pdf.js/web/compressed.tracemonkey-pldi-09.pdf
 
然后我换成公司服务器上的pdf文件地址,运行,如下图所示,我想大多数人遇到的都是这个问题。
 
 
这个问题简单说就是跨域访问,其实mozilla的example里有一段声明提到了这个问题,只是这个声明不那么显眼,在helloworld.html中,见下图
 
(CORS) - most servers don't support cross-origin browser requests.  
CORS就是跨域访问,大多数服务器都不支持跨域访问。
要解决跨域访问问题,有很多解决方案,由于能力有限,那些好复杂的处理办法我还完全不懂,不过我百度的水平还是一流的,下面这个链接就是处理这个问题的简单方法,无奈中文资料太少。http://www.webdavsystem.com/ajax/programming/cross_origin_requests
如果看不懂英文,我翻译过来就是一张图
 
设置完毕后再运行:成功,跨域访问问题顺利解决,见下图。第二个问题OVER。
 

关于7.28第二个问题的延伸,同事帮助解决了一个小细节 2015-11-17

同事使用的时候发现一个小问题,跨域访问按照我所说的问题2设置了还是不行(IE浏览器),但是用搜狗浏览器极速模式就可以,于是采取了如下办法问题解决:在页面添加  <meta http-equiv="X-UA-Compatible" content="IE=edge" charset="utf-8" />

最新文章

  1. connect-flash 中间件
  2. Python学习笔记之字典
  3. Oracle Ebs R12 SLA与GL关系变化
  4. 腾讯云CentOS 6.6安装 Nginx
  5. java并发库 Lock 公平锁和非公平锁
  6. iOS interface guidelines (界面设计指南)&lt;一&gt;
  7. RabbitMQ链接不上异常
  8. Oracle存储过程学习使用
  9. Facade外观模式 笔记
  10. ABAP常用字符串处理
  11. PS制作黑暗墙面上的漂亮霓虹文字
  12. 南大算法设计与分析课程复习笔记(3)L3 - Recursion
  13. maven的tomcat插件启动报错
  14. 如何在onCreate方法中获取视图的宽度和高度
  15. 判断一个字符是否为数字的两种方法(C/C++)
  16. google打不开解决的方法
  17. 20172325《Java程序设计》第一周学习总结
  18. 裁剪TOGAF进行产品架构开发
  19. wcf 访问控制
  20. Merkle Patricia Tree (MPT) 以太坊中的默克尔树

热门文章

  1. 如何确保redis中都是热数据
  2. 【Comet OJ - Contest #0 A】解方程(数学水题)
  3. CF1188C Array Beauty(DP)
  4. 【搜索】L国的战斗之伞兵
  5. GC分析工具使用-gceacy分析堆栈
  6. Spring事务调用类自己方法失效解决办法和原因
  7. 公众号对接百度翻译API
  8. Git的使用--如何安装和使用 github,让小白不在那么白 (一)(超详解)
  9. Docker安装及简单使用
  10. 《STL源码剖析》——Vector