|
GetPaperMargins Пример |
Sub Example_GetPaperMargins()
' Этот пример обратится к коллекции Layouts для текущего рисунка и
' перечислит графический размер из свойства GetPaperMargins для
' каждого Листа кроме пространства модели.
Dim Layouts As AcadLayouts, Layout As ACADLayout
Dim msg As String
Dim Measurement As String
Dim MarginLowerLeft As Variant, MarginUpperRight As Variant
Dim PaperHeight As Double, PaperWidth As Double
Dim PlotHeight As Double, PlotWidth As Double
' Получите коллекцию листов от объекта документа
Set Layouts = ThisDrawing.Layouts
msg = vbCrLf & vbCrLf ' Start with a space
' Получите информацию края каждого листа в этом рисунке
For Each Layout In Layouts
' Пространство модели пропустить
If Layout.name = "Model" Then GoTo NEXT_LAYOUT
ThisDrawing.ActiveLayout = Layout
msg = msg & Layout.name & vbCrLf
' Получите информацию края и размер бумаги
Layout.GetPaperMargins MarginLowerLeft, MarginUpperRight
Layout.GetPaperSize PaperWidth, PaperHeight
' Вычислить область печати
PlotWidth = PaperWidth - (MarginUpperRight(0) - MarginLowerLeft(0))
PlotHeight = PaperHeight - (MarginUpperRight(1) - MarginLowerLeft(1))
' Дюймы или миллиметры
Measurement = " миллиметр(а, ов) "
' Формат для отображения
msg = msg & vbTab & "Размер бумаги для этого листа
msg = msg & vbTab & "Края бумаги: " & vbCrLf & _
vbTab & vbTab & "Left" & vbTab & "(" & MarginLowerLeft(0) & ")" & Measurement & vbCrLf & _
vbTab & vbTab & "Right" & vbTab & "(" & MarginUpperRight(0) & ")" & Measurement & vbCrLf & _
vbTab & vbTab & "Top" & vbTab & "(" & MarginUpperRight(1) & ")" & Measurement & vbCrLf & _
vbTab & vbTab & "Bottom" & vbTab & "(" & MarginLowerLeft(1) & ")" & Measurement & vbCrLf & vbCrLf
msg = msg & vbTab & "Бумажная графическая область для этого листа: " & PlotWidth & " X " & PlotHeight & Measurement & vbCrLf
msg = msg & "_____________________" & vbCrLf
NEXT_LAYOUT:
Next
' Размер бумаги отображения и информация края
MsgBox "Бумажная графическая информация для текущего рисунка: " & msg
End Sub
Сайт управляется системой uCoz