页边距、版面、标题、页码,公文排版的功能基本感觉也差不多了,剩下一些杂七杂八感觉通用性较小。比如说公文部件吧,要直接放置上去吗?还是以插入表格的形式?比如说秘籍吧,可能自动编号比较有用吧,但是呢他又一般要求在特殊电脑上处置(能不折腾就不折腾),那些编号有些都不是打印的,都是直接编号机印的,而且除了那几个部门其他一般也用不上。版头发文机关标志吧,一般印刷好的俗称红头纸,也不用你打印,多部门联合的又没现成的,如同我之前所说,把以前的拿出来改改,安全又可靠,简单又方便。 想来想去就是确定下分隔线的位置,这样白纸起手就比较好参照调整发文字号和正文位置,所以我就把分隔线拿出来了,点一下看下分隔线在哪边,再点一下就删除。分隔线标准没有具体规定使用多粗的,因此有些是参照版记的分隔线设置的0.35mm,个人感觉偏细,可能得1mm左右才好看。当然我们这里只是为了排版参照,不用在意,这里线粗仍以0.35mm,即0.99225磅。首条分隔线撑满版心则左侧边距28mm,线长156mm。当然最重要的是水平位置,实际需要以红头纸为准,因此需要量一下从A4纸上面到分隔线的距离,大概120mm左右,这里以125为例,根据需要自行修改。function 分隔线(){let fFlag = window.Application.PluginStorage.getItem("fengexianFlag")window.Application.PluginStorage.setItem("fengexianFlag", !fFlag)if(!fFlag){let leftposi=2.835 * 28;let topposi=2.835 * 125;//实际测量位置为准let fline=Application.ActiveDocument.Shapes.AddShape(-2, leftposi, topposi, 442.26, 0.99225);//左边距,上边距,宽度,高度 fline.Name="fengexian" fline.Line.ForeColor.RGB = 0x0000ff // 红色线条 }else{ for (let i = Application.ActiveDocument.Shapes.Count; i >= 1; i--) { const shape = Application.ActiveDocument.Shapes.Item(i);if(shape.Name=="fengexian") shape.Delete(); } }}
装订线主要用于A4打印的辅助,看一下对应哪一排的字也够用了。是的,公文连装订的位置都有标准。根据GB/T9704-2012,订位为两钉外订眼距版面上下边缘各70mm处,允许误差±4mm;骑马订钉锯均订在折缝线上,平订钉锯与书脊间的距离为3mm~5mm。 以常用的24/6订书钉为例,外角宽12.66-12.75mm,因此这里为了方便将装订线长度设为10mm,一来方便计算,二来如果不删除也不影响美观。个人感觉顶眼左侧边距太小,怕经常翻折脱落,因此这里以5mm设为左边距。 综上,上装订线位置为左侧距5mm,上距70mm,长度10mm;下装订线位置为左侧距5mm,下距70mm(实际坐标按上距计算,则为297-70-10=217mm),长度10mm。实际以外钉眼位置为准。function 装订线(){let zFlag = window.Application.PluginStorage.getItem("zhuangdingxianFlag")window.Application.PluginStorage.setItem("zhuangdingxianFlag", !zFlag)if(!zFlag){let myShapes=Application.ActiveDocument.Shapes myShapes.AddShape(-2 , 14.1700000, 198.451969, 0, 28.34).Name = "zhuangding1";//左边距,上边距,宽度,高度msoShapeMixed myShapes.AddShape(-2, 14.1700000, 615.1181104, 0, 28.34).Name = "zhuangding2";//左边距,上边距,宽度,高度msoShapeMixedlet zhuangdingShapes = myShapes.Range(["zhuangding1", "zhuangding2"]).Group() zhuangdingShapes.Name="zhuangdingxian"let dingyanshezhi=obj=>{ obj.Transparency = 0.3;//透明度 obj.Weight = 0.5;//线粗 obj.DashStyle =5 ;//虚线样式msoLineDashDot obj.Style = 1 ;//样式-单线msoLineSingle obj.ForeColor.RGB = 0x7f7f7f // 灰色线条 }dingyanshezhi(zhuangdingShapes.Line) }else{ for (let i = Application.ActiveDocument.Shapes.Count; i >= 1; i--) { const shape = Application.ActiveDocument.Shapes.Item(i);if(shape.Name=="zhuangdingxian") shape.Delete(); } }}