M-dub 发表于 2007-11-2 10:08:41

插入光栅图像

嗨,我正在尝试将光栅文件插入到我的绘图中。
我没有看到插入方法,但有人能引导我朝着正确的方向前进并告诉我我是否在正确的轨道上吗?
谢谢
Mark
Dim RastImg As AcadRasterImage
Dim Imgpth As String
Dim Imgnme As String
Set RastImg = ThisDrawing.ModelSpace.AddRaster(Imgnme, "0, 0", 2, 0)

**** Hidden Message *****

M-dub 发表于 2007-11-2 10:21:52

这来自帮助文件,因为我所有的代码都在做非常奇怪的事情,我不想混淆这个问题代码1]

M-dub 发表于 2007-11-2 10:30:55


谢谢CM
看起来我在VBE帮助文件中找到了相同的示例或类似的内容
但是我无法让错误处理程序工作?
标记

M-dub 发表于 2007-11-2 11:15:59


请在此阅读。

M-dub 发表于 2007-11-2 11:20:08


嘿,M<br>首先;Keith是一位伟大的程序员,向Keith Blackie致敬另一件很酷的事是他提出了OpenFileDialog,我刚刚开始学习,它非常酷 MaxHeight Or RasterMax(1) > MaxWidth Then
                ae.ScaleEntity Zero, 0.1
                RasterMax = GetRasterMax(ae)
                If LCase(PaperSize) = "a" Then
                        ScaleFactor = MaxWidth / RasterMax(1)
                        ae.ScaleEntity Zero, ScaleFactor
                Else:
                        ScaleFactor = MaxHeight / RasterMax(0)
                        ae.ScaleEntity Zero, ScaleFactor
                End If
            End If
    End If
Next
End Sub

M-dub 发表于 2007-11-2 11:28:56


蒂姆,你真好!
谢谢您!

M-dub 发表于 2007-11-2 11:31:01


Tim
我正在查看其他人使用 openfiledialog 的其他代码,但是,我不确定哪些变量正在获取文件名和路径?有什么想法吗?另外,任何建议都欢迎
谢谢你
Mark
Public Type OPENFILENAME
    lStructSize As Long
    hwndOwner As Long
    hInstance As Long
    lpstrFilter As String
    lpstrCustomFilter As String
    nMaxCustFilter As Long
    nFilterIndex As Long
    lpstrFile As String
    nMaxFile As Long
    lpstrFileTitle As String
    nMaxFileTitle As Long
    lpstrInitialDir As String
    lpstrTitle As String
    flags As Long
    nFileOffset As Integer
    nFileExtension As Integer
    lpstrDefExt As String
    lCustData As Long
    lpfnHook As Long
    lpTemplateName As String
End Type
Sub ShowFileOpenDialog(ByRef FileList As Collection)
    Dim OpenFile As OPENFILENAME
    Dim lReturn As Long
    Dim FileDir As String
    Dim FilePos As Long
    Dim PrevFilePos As Long
    With OpenFile
      .lStructSize = Len(OpenFile)
      .hwndOwner = 0
      .hInstance = 0
      .lpstrFilter = "Image File (*.tif)" + Chr(0) + "*.tif"
      .nFilterIndex = 1
      .lpstrFile = String(4096, 0)
      .nMaxFile = Len(.lpstrFile) - 1
      .lpstrFileTitle = .lpstrFile
      .nMaxFileTitle = .nMaxFile
      .lpstrInitialDir = ThisDrawing.Path
      .lpstrTitle = "Select Image File"
      .flags = OFN_HIDEREADONLY + _
            OFN_PATHMUSTEXIST + _
            OFN_FILEMUSTEXIST + _
            OFN_ALLOWMULTISELECT + _
            OFN_EXPLORER
      lReturn = GetOpenFileName(OpenFile)
      If lReturn0 Then
            FilePos = InStr(1, .lpstrFile, Chr(0))
            If Mid(.lpstrFile, FilePos + 1, 1) = Chr(0) Then
                FileList.Add .lpstrFile
            Else
                FileDir = Mid(.lpstrFile, 1, FilePos - 1)
                Do While True
                  PrevFilePos = FilePos
                  FilePos = InStr(PrevFilePos + 1, .lpstrFile, Chr(0))
                  If FilePos - PrevFilePos > 1 Then
                        FileList.Add FileDir + "\" + _
                            Mid(.lpstrFile, PrevFilePos + 1, _
                              FilePos - PrevFilePos - 1)
                  Else
                        Exit Do
                  End If
                Loop
            End If
      End If
    End With
End Sub
Public Declare Function GetOpenFileName Lib "comdlg32.dll" Alias _
    "GetOpenFileNameA" (pOpenFileName As OPENFILENAME) As Long
Function SelectFiles() As String
    Dim FileList As New Collection
    Dim I As Long
    Dim s As String
    ShowFileOpenDialog FileList
    With FileList
      If .Count > 0 Then
            s = "The following files were selected:" + vbCrLf
            For I = 1 To .Count
               SelectFiles = .Item(I)
            Next
      Else
             Exit Function
            'MsgBox "No files were selected!"
      End If
    End With
End Function

M-dub 发表于 2007-11-2 11:33:35

你为什么不在我发布的dvb文件中使用Frank O.的类呢
获取文件名非常简单:
Private Sub cmdBrowse_Click()
Dim Dia As New CommonDialog
With Dia
    .DefaultExt = "*.tif"
    .DialogTitle = "Select a raster image"
    .Filter = "Raster Images (*.tif)" & Chr(0) & "*.tif" & Chr(0)
    .ShowOpen
End With
tbFile.Text = Dia.FileName
End Sub
页: [1]
查看完整版本: 插入光栅图像