本页内容
测量距离
距离测量工具允许您的用户测量代表平面图中的对象(例如房屋、街道或墙壁)的两点之间的距离。选择此工具后,用户只需用指针点击起点与终点,即可取得两点间的距离。
距离测量工具有两类:线段测量工具与折线测量工具。线段测量工具可以测量起始和结束两点间的距离,折线测量工具会测量折线绘制过程中所有相邻两点间的距离,并计算总长度。
以线段测量工具为例,配置测量属性后,可通过以下步骤创建一个线段测量注释:
- 将工具类型设置为线段测量注释创建模式。
- 获取
distanceMeasurementCreateTool
线段测量工具的默认属性,在创建测量注释时将默认属性附加到测量注释上。再使用annotationManager
类的createMeasurementAnnotation
方法创建测量注释。
以下是创建线段测量注释的示例代码:
javascript
ComPDFKitViewer(...)
.then(instance => {
const { docViewer, UI } = instance;
docViewer.addEvent('documentloaded', async () => {
// 进入线段测量注释创建模式,初始化 DistanceMeasurementCreateTool。
UI.setActiveToolMode('toolMenu-Measurement');
UI.setActiveTool('measureLine');
// 为注释设置默认测量属性。
const defaults = docViewer.pdfViewer.distanceMeasurementCreateTool.defaults;
const defaultStyles = docViewer.pdfViewer.distanceMeasurementCreateTool.defaultStyles;
const leaderLineDefaultOptions = docViewer.pdfViewer.distanceMeasurementCreateTool.leaderLineDefaultOptions;
const annotationData = {
measure: 1,
operate: 'add-annot',
type: 'line',
measureType: 'distance',
pageIndex: 0,
date: new Date(),
rect: {
left: 130,
top: 45,
right: 300,
bottom: 75
},
linePoints: [300, 45, 130, 75],
...defaults,
...defaultStyles,
...leaderLineDefaultOptions
};
// 创建测量注释。
const annotation = await docViewer.annotationManager.createMeasurementAnnotation(annotationData);
// 渲染注释。
docViewer.annotationManager.drawAnnotationsFromList(annotation);
});