メインコンテンツに移動

印刷時に図形の色を変更するスクリプト

印刷時に図形の色を変更するスクリプトのサンプルコードです。印刷実行時、印刷プレビュー時に 1 図形ごとにスクリプトが実行されます。
あらかじめ、印刷設定のモノクロ印刷をオフにしておく必要があります。

RootPro CAD Ver13 以降は、レイヤの印刷色機能が追加されました。レイヤのプロパティで印刷色を設定してください。

■ 変更履歴

  • 2026/4/24
    RootPro CAD Ver13 より、部分図レイアウトの範囲枠を印刷できるようになりました。
    部分図レイアウトの範囲をあらわす LayoutShape オブジェクトはレイヤを持たないため、Shape の Layer オブジェクトが null かどうかをチェックするようにしました。

 

■ スクリプトのインストール方法
  1. 以下のリンクからスクリプトファイル(拡張子 .zip)をダウンロードする
  2. RootPro CAD の [スクリプト] メニューの [スクリプトのフォルダーを開く] をクリックして、スクリプトのフォルダーを表示する
  3. ダウンロードした圧縮ファイル(拡張子 .zip)を解凍して、Document.ShapePrinting フォルダーをスクリプトのフォルダーへコピーする

 

■ スクリプトの動作を確認する
  1. RootPro CAD を起動する
  2. 印刷設定でモノクロ印刷をオフにする
  3. 印刷を実行する 「補助線」という名前のレイヤの図形は印刷しないようになります。
    寸法図形は赤色、文字図形は青色で印刷します。

 

// 現在の図面を取得する
var doc = Application.ActiveDocument;
 
// ShapePrinting イベントのパラメータを取得する
var e = (ShapePrintingEventArgs)EventArgs;
 
// 補助線レイヤの図形は印刷しないで、寸法図形は赤色、文字図形は青色で印刷します。
Shape shape = e.Shape;
Layer layer = doc.LayerTable.GetLayerByID(shape.LayerID);
if(layer != null && layer.Name == "補助線")
{
    e.Cancel = true;
}
else if(shape is DimensionShape)
{
    ((DimensionShape)shape).ColorNumber = 2;
}
else if(shape is TextShape) 
{
    ((TextShape)shape).ColorNumber = 4;
}
ファイル
添付 サイズ
Document.ShapePrinting.zip 592 バイト