操作方法

操作方法:使用 VBA 和 ArcObjects 将 JPEG 图像添加到 ArcMap

Last Published: April 25, 2020

摘要

本文将介绍如何使用 IRasterLayer::CreateFromDataset 将 JPEG 图像添加到 ArcMap。

过程



  1. 启动 ArcMap。
  2. 在系统上,找到要作为栅格图层加载到 ArcMap 中的 JPEG 图像文件。
  3. 打开 Visual Basic 编辑器。

    在 ArcMap 中,选择“工具”>“宏”>“Visual Basic 编辑器”。

  4. 在“工程浏览器”窗口中,展开 Project 文件夹并选择 ThisDocument。 单击鼠标右键并选择“查看代码”。
    [O-Image] Visual Basic Project  Explorer

    ThisDocument 模块中的代码将仅在当前地图文档中运行。 要将代码存储在所有地图文档中,请打开 Normal.mxt ThisDocument 代码模块。

  5. 将以下代码复制到代码模块中。

    代码
    Public Sub AddRasterLayer()

    Dim pMxDocument As IMxDocument
    Dim pMap As IMap
    Dim pLayer As IRasterLayer
    Dim pWF As IWorkspaceFactory
    Dim pWs As IWorkspace
    Dim pFW As IRasterWorkspace
    Dim pDataset As IDataset
    Dim pRDataset As IRasterDataset

    Set pWF = New RasterWorkspaceFactory

    ' 输入包含图像文件的目录的路径
    Set pWs = pWF.OpenFromFile("C:\Images", 0)

    ' QI
    Set pFW = pWs
    ' 输入图像文件的名称
    Set pRDataset = pFW.OpenRasterDataset("seb1.jpg")

    ' 创建数据集
    Dim pRLayer As IRasterLayer
    Set pRLayer = New RasterLayer
    pRLayer.CreateFromDataset pRDataset

    ' 将栅格图层添加到地图
    Set pMxDocument = ThisDocument
    Set pMap = pMxDocument.FocusMap
    pMxDocument.AddLayer pRLayer

    End Sub

  6. 在 VBA 代码中,更新 OpenFromFile 语句中的字符串以反映 JPEG 文件所在的文件夹。 更新 OpenRasterDataset 语句中的字符串以反映 JPEG 文件名。
  7. 关闭 Visual Basic 编辑器。
  8. 运行代码。

    A. 单击工具 > 宏 > 宏,以显示“宏”对话框。
    B. 选择宏,然后单击“运行”。

文章 ID:000004950

从 ArcGIS 专家处获得帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项

发现关于本主题的更多内容