Vla-getpapermargins
- 構文
- (vla-getpapermargins vla-object LowerLeft UpperRight )
- 機能
- レイアウトまたは印刷設定の余白を取得する。
- 引数
-
- vla-object … VLAオブジェクト(Layout、PlotConfiguration)
- LowerLeft … 左下余白の X および Y の値。
- UpperRight … 右上余白の X および Y の値。
- 戻り値
- nil
- 印刷基点は、ここで指定したマージンだけ用紙の端からオフセットされる。
- 値の単位は PaperUnits プロパティで指定する。
- サンプル
(vl-load-com) (defun c:Example_GetPaperMargins() ;; 現在の図面のレイアウトのコレクションにアクセスし、モデル空間を除く ;; 各レイアウトの GetPaperMargins プロパティから返される余白に基づいて ;; プロット サイズをリストするサンプル。 (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; 現在の図面の layouts コレクションを取得 (setq Layouts (vla-get-Layouts doc)) (setq msg "") ;; 空文字 ;; レイアウトのマージン情報を取得 (vlax-for Layout Layouts ;; Skip model space (if (/= (vla-get-Name Layout) "Model") (progn (vla-put-ActiveLayout doc Layout) (setq msg (strcat msg (vla-get-Name Layout) "\n")) ;; 用紙サイズとマージンの情報 (vla-GetPaperMargins Layout 'MarginLowerLeft 'MarginUpperRight) (vla-GetPaperSize Layout 'PaperWidth 'PaperHeight) ;; 印刷可能範囲を計算 (setq PlotWidth (- PaperWidth (- (vlax-safearray-get-element MarginUpperRight 0) (vlax-safearray-get-element MarginLowerLeft 0)))) (setq PlotHeight (- PaperHeight (- (vlax-safearray-get-element MarginUpperRight 1) (vlax-safearray-get-element MarginLowerLeft 1)))) ;; インチかミリか (setq Measurement " ミリメートル") ;; Format for display (setq msg (strcat msg "レイアウトの用紙サイズは : " (rtos PaperWidth 2) " X " (rtos PaperHeight 2) Measurement "\n\n")) (setq msg (strcat msg " 用紙の余白は : \n" " 左 (" (rtos (vlax-safearray-get-element MarginLowerLeft 0) 2) ")" Measurement "\n" " 右 (" (rtos (vlax-safearray-get-element MarginUpperRight 0) 2) ")" Measurement "\n" " 上 (" (rtos (vlax-safearray-get-element MarginUpperRight 1) 2) ")" Measurement "\n" " 下 (" (rtos (vlax-safearray-get-element MarginLowerLeft 1) 2) ")" Measurement "\n\n")) (setq msg (strcat msg "印刷可能範囲は: " (rtos PlotWidth 2) " X " (rtos PlotHeight 2) Measurement "\n")) (setq msg (strcat msg "_____________________\n")) ) ) ) ;; 用紙サイズとマージンを表示 (alert (strcat "この図面の用紙の印刷情報は : " msg)) )
関連事項