我们目前正在使用 Autodesk forgeviewer 以及 PDF 和标记扩展的组合,以允许我们的用户标记技术图纸。
我们目前正在寻求添加一个旋转按钮,以便将文档旋转 90 度:
viewer.loadModel("TestSheet.pdf", {}, (model) => {
var bb = model.getBoundingBox();
var mx = new THREE.Matrix4();
mx.makeRotationZ(90 * Math.PI / 180);
// translation along X axis
mx.elements[12] = bb.max.y;
model.setPlacementTransform(mx);
});
我们在这里找到:https://aps.autodesk.com/blog/rotate-sheets-viewer。
问题在于,当翻转文档时,标记仍保留在其原始位置,并且不再与正确的文档位置相对。
我尝试使用 css 旋转、变换/翻译手动旋转标记层,但似乎找不到一种一致工作的方式。
我不确定我的方法是否正确,也许旋转相机是更好的方法?我在 Navigation.js 中找到了这个函数,但很难理解为枢轴 viewVec 提供的内容。
我想知道是否有人成功地旋转带有标记层的 pdf。他们采取了什么方法?任何帮助表示赞赏。
模型加载在画布中,标记是 SVG 层,两者的定位不同,这就是为什么当编辑标记模式打开时查看器处于锁定位置的原因。我们没有内置函数来同时管理这种轮换。您可以使用此博客内容进行实验。