Transparency プロパティ(ActiveX)

特定のモノクロ イメージの透過性をオンにするかオフにするかを指定します。

サポートされているプラットフォーム: Windows のみ

構文と要素

VBA:

object.Transparency
object

タイプ: GeomapImageRasterImageWipeout

このプロパティが適用されるオブジェクト。

プロパティの値

読み込み専用: いいえ

タイプ: ブール型

注意

モノクロ ラスター イメージは、前景色と背景色だけからなるイメージです。モノクロ イメージをアタッチすると、イメージ全体が現在の画層の色設定を継承します。アタッチしたイメージを修正できるだけでなく、背景色の透過性のオン/オフを切り替えることでモノクロ イメージを修正することもできます。

注: モノクロ イメージおよびその境界は、常に同一色です。

VBA:

Sub Example_Transparency()
    ' This example inserts a raster image and finds the current status
    ' of Transparency for the image. It then changes the Transparency
    ' status of the image.
    
    ' This example uses the "2d Projected Polylines.jpg" found in the sample
    ' directory. If you do not have the image, or it is located
    ' in a different directory, insert a valid path and name for the
    ' imageName variable below.
    Dim insertionPoint(0 To 2) As Double
    Dim scalefactor As Double
    Dim rotAngleInDegree As Double, rotAngle As Double
    Dim imageName As String
    Dim raster As AcadRasterImage
    imageName = "C:\AutoCAD\sample\2d Projected Polylines.jpg"
    insertionPoint(0) = 2#: insertionPoint(1) = 2#: insertionPoint(2) = 0#
    scalefactor = 1#
    rotAngleInDegree = 0#
    rotAngle = rotAngleInDegree * 3.141592 / 180#
    
    On Error Resume Next
    
    ' Creates a raster image in model space
    Set raster = ThisDrawing.ModelSpace.AddRaster(imageName, insertionPoint, scalefactor, rotAngle)
    If Err.Description = "Filer error" Then
        MsgBox imageName & " could not be found."
        Exit Sub
    End If

    ' Find the current Transparency
    ThisDrawing.Regen True
    MsgBox "The Transparency is currently set to: " & raster.transparency, vbInformation
    
    ' Change the Transparency
    If (raster.transparency) Then
        raster.transparency = False
    Else
        raster.transparency = True
    End If
    ThisDrawing.Regen True
    MsgBox "The Transparency is now set to: " & raster.transparency, vbInformation
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_Transparency()
    ;; This example inserts a raster image and finds the current status
    ;; of Transparency for the image. It then changes the Transparency
    ;; status of the image.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
  
    ;; This example uses the "2d Projected Polylines.jpg" found in the sample
    ;; directory. If you do not have the image, or it is located
    ;; in a different directory, insert a valid path and name for the
    ;; imageName variable below.
    (setq insertionPoint (vlax-3d-point 2 2 0)
          imageName ".\\Sample\\VBA\\2d Projected Polylines.jpg"
          scalefactor 1
          rotAngle (/ (* 0 3.141592) 180))
    
    (if (/= (findfile imageName) nil)
        (progn
            ;; Creates a raster image in model space
            (setq modelSpace (vla-get-ModelSpace doc))
            (setq raster (vla-AddRaster modelSpace (findfile imageName) insertionPoint scalefactor rotAngle))
            (vla-ZoomExtents acadObj)

            ;; Find the current Transparency
            (vla-Regen doc :vlax-true)
            (alert (strcat "The Transparency is currently set to: " (if (= (vla-get-Transparency raster) :vlax-true) "True" "False")))
    
            ;; Change the Transparency
            (vla-put-Transparency raster (if (= (vla-get-Transparency raster) :vlax-true) :vlax-false :vlax-true))
            (vla-Regen doc :vlax-true)
            (alert (strcat "The Transparency is currently now set to: " (if (= (vla-get-Transparency raster) :vlax-true) "True" "False")))
	       )
        (alert (strcat imageName " could not be found."))
    )
)