## Panel面板 文档中的所有内容以面板为单位,包括Grid网格、Text文字、Image图片等类型。 Page页面也是一种特殊的1行1列的网格面板,但一些从Panel面板继承来的通用方法被移除掉了,以防止误操作。直接向Page添加的内容,将被放在这1个单元格中。 如果需要嵌套布局,也可以使用空的Panel面板或者Grid网格作为父容器,在其中添加和布局Panel面板。 Panel面板提供的API有: 1. setWidth(width) > 设置宽度,单位毫米(mm) 2. setHeight(height) > 设置高度,单位毫米(mm) 3. setAnchor(anchor) > 设置停靠方式,参考常量中的[Anchor停靠](anchor.html) 4. setBgColor(color) > 设置背景颜色,推荐使用形如#000000的颜色(可能浏览器需要额外设置才能打印背景颜色) 5. addPanel() > 添加一个Panel面板作为容器,返回值为添加的Panel面板对象 6. addGrid() > 添加一个网格面板,返回值为添加的网格面板对象 7. addText() > 添加一个文本面板,返回值为添加的文本面板对象 8. addImage() > 添加一个图片,返回值为添加的图片对象 9. getWidth() > 获取宽度,单位毫米(mm) 10. getHeight() > 获取高度,单位毫米(mm) 11. getAnchor() > 获取停靠方式,参考常量中的[Anchor停靠](anchor.html) 12. getBgColor() > 获取背景颜色,默认为transparent透明,而Page页面默认为#FFF白色 13. getChildren() > 返回所有下级子面板的数组 14. getLocation() > 获取绝对定位设置(仅停靠方式为none时,该设置才生效) 15. getPadding() > 获取内边距设置 > 所有的set方法都支持链式调用,返回值为Panel面板对象自身。 绝对定位设置: 1. setX(x) > 设置从左侧开始计的横坐标,单位毫米(mm) 2. setY(y) > 设置从顶部开始计的纵坐标,单位毫米(mm) 3. getX() > 获取从左侧开始计的横坐标,单位毫米(mm) 4. getY() > 获取从顶部开始计的纵坐标,单位毫米(mm) 绝对定位示例: var doc = NPrint.createDocument(); var page = doc.addPage(); //页面中添加面板 var panel = page.addPanel(); //设置面板大小 panel.setWidth(10).setHeight(10); //设置面板为绝对定位 panel.setAnchor('none'); //获取面板绝对定位设置 var location = panel.getLocation(); //设置横坐标 location.setX(10); //设置纵坐标 location.setY(5); 内边距设置: 内边距是指面板中的内容停靠时距该面板指定方向的边缘的距离。 默认四个方向的距离均为0。 内边距设置示例: var doc = NPrint.createDocument(); var page = doc.addPage(); var padding = page.getPadding(); //设置页面的顶部内边距,面板顶部与页面顶部将保持10毫米的距离 padding.setTop(10); //设置页面的左侧内边距,面板左侧与页面左侧将保持8毫米的距离 padding.setLeft(8); //页面中添加面板 var panel = page.addPanel(); //设置面板大小 panel.setWidth(10).setHeight(10); //设置面板为左上停靠 panel.setAnchor('left_top');