PDF.js查看器的捏合缩放功能

11
我在一个 Web 应用上使用 PDF.js 来渲染文档。
但是,我需要在移动设备上启用捏合缩放功能,而该库本身似乎不支持原生缩放。
有没有库可以让我模拟(至少)与查看器下拉缩放选择相同比例的捏合缩放?

PDF.js的SVG后端已经有了一些进展,详见https://github.com/mozilla/pdf.js/tree/master/examples/svgviewer -- 你可能会对此更感兴趣,而不是通用查看器。 - async5
1
这个程序的性能如何?我现在使用的查看器会消耗大量内存(在Safari调试模式下,当缩放时内存使用量达到100MB-200MB)。我还使用Hammer.js库成功实现了触摸事件。但是,现在在移动设备上将PDF文件缩放超过110%后,文本内容就会被破坏(只剩下白色页面和蓝色边框,链接也无法点击)。 - Jordan
你使用的pdf.js版本是什么?你有没有看过“USE_ONLY_CSS_ZOOM”选项?请参见:https://github.com/mozilla/pdf.js/issues/2439和https://github.com/mozilla/pdf.js/pull/4834。 - Hakkar
1个回答

4
我找到了一个解决方案。我最终使用hammer.js来处理pdf.js。 http://hammerjs.github.io/ 编辑
var mc = new Hammer.Manager(myElement, myOptions);

mc.add( new Hammer.Pan({ direction: Hammer.DIRECTION_ALL, threshold: 0 }) );
mc.add( new Hammer.Tap({ event: 'quadrupletap', taps: 4 }) );

mc.on("pan", handlePan);
mc.on("quadrupletap", handleTaps);

这里是 hammer.js 的链接:http://hammerjs.github.io/(顺便说一句,我没被允许在这个答案中添加链接 :-/ - 所以也许你自己动手吧,@Jordan) - PhilLab
@PhilLab已将答案链接添加。 - Jordan
Jordan,如果你能添加你编写的捏合缩放代码或者至少是框架代码会更好。谢谢。 - Mr_Green
9
如果您能添加handlePanhandleTaps的代码,那就太好了 :-) - Timothy Gu
6
我认为你应该加入一个完整的可工作代码。 - Oldrich Svec
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接