preload-jr-worker.js主要是用来提升文档渲染速度的,非必须引入,可以根据功能场景决定是否需要引入。不引入preload-jr-worker.js的话,可以在初始化UI界面时引入字体资源、引擎资源文件,以避免内容渲染出来有缺失,像这样:
viewerOptions: {
libPath: '../../../lib',
jr: {
//readyWorker: readyWorker,
workerPath: './',
enginePath: '../lib/jr-engine/gsdk',
fontPath: '../external/brotli',
licenseSN: licenseSN,
licenseKey: licenseKey
}
},
preload-jr-worker影响了页面白屏的事件,有预加载worker提高的是总体初始化的时间,但是用户页面空白页面等待时间变长。
解决方案:
如果这个页面是一开始就需要有PDF文档需要渲染的,可以使用preload-jr-worker在UIExtension.full.js*之前*加载执行,来提高总体时长,更快的渲染出PDF的视图。
如果这个页面一开始没有PDF文档需要渲染的,可以使用preload-jr-worker在UIExtension.full.js*之后*加载执行,可以提高首屏UIExtension的UI呈现的时长。
结论:
使用preload-jr-worker比不使用preload-jr-worker,加载顺序影响首屏UI初始化时间。顺序合适,使用preload-jr-worker更快。
页面初始化+PDF引擎初始化,总时长,使用preload-jr-worker都更快。