You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pixel Compare扩展对比PDF时过度缩放无法缩小问题问询

排查方向

  • 调整扩展与对比逻辑的触发时机:你现有代码仅监听了LOADER_LOAD_FILE_EVENT事件,此时PDF资源仅完成加载还未完成页面渲染,直接触发Pixel Compare会导致视口边界计算错误。建议改为监听Autodesk.Viewing.PDF_PAGE_LOADED_EVENT事件,等PDF页面完全渲染后再启动对比逻辑。
  • 强制重置视口范围:对比逻辑执行完成后主动调用viewer.fitToView()方法,让视口自动适配整个PDF页面的边界,覆盖Pixel Compare自动生成的错误视口参数。如果fitToView()未生效,可以先通过viewer.model.getBoundingBox()获取PDF页面的全局边界,手动调整相机的目标点、位置和裁剪面参数适配边界范围。
  • 修正PDF加载配置:在调用loadModel加载PDF文件时,在配置项中添加{ adjustCropBox: true, disableBlobStorage: true },强制适配PDF的裁剪框属性,避免裁剪框读取错误导致页面被裁切。
  • 排查扩展冲突:暂时注释掉MarkupsCore、MarkupsGui两个扩展的加载逻辑,验证是否是多扩展之间的视口操作冲突导致缩放功能失效。如果确认是扩展冲突,调整加载顺序,优先加载Pixel Compare扩展,再加载标记类扩展。

参考修正代码

viewer1.addEventListener(Autodesk.Viewing.PDF_PAGE_LOADED_EVENT, async function (e) {
    // 等待PDF扩展加载完成
    await viewer1.loadExtension('Autodesk.PDF');
    // 优先加载Pixel Compare扩展,再加载其他功能扩展
    await viewer1.loadExtension('Autodesk.PixelCompare');
    await viewer1.loadExtension("Autodesk.Viewing.MarkupsCore");
    await viewer1.loadExtension("Autodesk.Viewing.MarkupsGui");
    // 强制适配全页视口
    viewer1.fitToView();
});

内容的提问来源于stack exchange,提问作者itsmejohn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 19:57:01