我有设置默认打印机的代码,但它适用于windows而不是acad。
至于调用布局名称,您可以测试任何不是“layout*”的布局,并打印出来,假设您命名了布局 我有一个LISP例程,用于从键盘调用打印,或从按钮调用宏。
我们的模板只设置了一个布局选项卡,因此如果图形中有更多布局选项卡,则也需要打印它们。 好的,我们可以将其更改为所有未命名为模型的布局,打印 你认为你可以从这里调整它还是需要帮助? 命令
如果我错了,请纠正我;这很有趣。
看起来你正在从第二个子调出第一个子。
那么,你真的会先运行公共Sub供应商1117 Sub吗?
我想我可以做一个测试图并尝试一下,我只是好奇地看着它
谢谢
毫升 是的,CALL语句调用第二个子集,并将参数传递给第二个子集。这样,我就有了一个例程来打印任意数量的方式。我有12个短版本,它们都调用主sub并传递我想要的设置。 我尝试一下代码,看看是否可以让它工作,否则我会回来的。
非常感谢你的帮助! 对于函数部分,这是一种很酷的方法
是的,我也会这么做。
如果布局被命名,那么其中一个被删除,“我认为”将重新创建一个名为Layout1的新布局。因此,过滤掉名称布局可能不是最好的方法。
如果你真的想打印所有版面,过滤掉模型并循环浏览所有版面(在我看来)可能是最好的攻击。
如果布局已命名,我将设置对特定布局名称的引用。
毫升 我成功了,下面是我如何绕过多重布局的
For x = 0 To Drawing.Layouts.Count - 1
Set Layout = Drawing.Layouts(x)
Layout.RefreshPlotDeviceInfo
Layout.ConfigName = Plotter ' CALL PLOTTER
Layout.PlotType = acExtents
Layout.PlotRotation = ROT ' CALL ROTATION
Layout.StyleSheet = CTB ' CALL CTB FILE
Layout.PlotWithPlotStyles = True
Layout.PlotViewportBorders = False
Layout.PlotViewportsFirst = True
Layout.CanonicalMediaName = SIZE ' CALL SIZE
Layout.PaperUnits = acInches
Layout.StandardScale = PSCALE ' CALL PSCALE
Layout.ShowPlotStyles = False
Layout.ScaleLineweights = True
Layout.CenterPlot = True
Drawing.ActiveLayout = Layout
Drawing.Plot.NumberOfCopies = 1
Drawing.Regen acAllViewports
Drawing.Plot.PlotToDevice
Next x
Set Layout = Nothing
页:
1
[2]