QGIS 3.0用户变更详解:表达式与打印布局的重大更新

QGIS 3.0用户变更详解:表达式与打印布局的重大更新

QGIS QGIS is a free, open source, cross platform (lin/win/mac) geographical information system (GIS) QGIS 项目地址: https://gitcode.com/gh_mirrors/qg/QGIS

概述

QGIS 3.0版本作为一次重大更新,在用户界面和功能实现上带来了诸多改进。本文将重点解析两个关键领域的变更:表达式引擎的语法更新和打印布局(Composer)的兼容性问题。这些变更对于从QGIS 2.x升级到3.0版本的用户尤为重要,了解这些变化可以帮助用户顺利完成项目迁移。

表达式引擎的重大变更

QGIS 3.0对表达式引擎进行了全面优化,其中最显著的变化是变量命名规范的统一。新版采用了更加一致和清晰的命名约定,所有系统变量现在都以"@"符号开头,取代了旧版中的"$"符号前缀。这一变更虽然提高了代码的可读性和一致性,但也意味着用户需要更新现有项目中的所有表达式。

变量名称变更对照表

以下是QGIS 3.0中表达式变量名称的主要变更:

| 旧版本变量名 | 新版本变量名 | 变量用途 | |--------------|--------------|----------| | $rownum | @row_number | 获取当前行号 | | $scale | @map_scale | 获取当前地图比例尺 | | $map | @map_id | 获取地图ID | | $numpages | @layout_numpages | 获取布局总页数 | | $page | @layout_page | 获取当前页码 | | $feature | @atlas_featurenumber | 获取图集要素编号 | | $atlasfeatureid | @atlas_featureid | 获取图集要素ID | | $atlasfeature | @atlas_feature | 获取图集要素 | | $atlasgeometry | @atlas_geometry | 获取图集几何图形 | | $numfeatures | @atlas_totalfeatures | 获取图集总要素数 |

升级建议

对于从QGIS 2.x升级到3.0的用户,建议采取以下步骤:

  1. 在升级前备份所有项目文件
  2. 使用文本编辑器批量替换表达式中的旧变量名
  3. 或者在QGIS 3.0中逐个检查并更新表达式
  4. 特别注意那些在数据定义标签、标注表达式或属性表单中使用的变量

打印布局(Composer)兼容性问题

QGIS 3.0对打印布局系统也进行了重大重构,这导致了一些兼容性问题,特别是对于非常旧的项目文件。

主要问题

  • 包含属性表的旧版打印布局在QGIS 3.0中可能无法正确恢复
  • 这些属性表不会自动加载,需要用户手动重新添加到布局中

解决方案

  1. 对于重要的旧项目,建议在QGIS 2.x中导出为模板
  2. 在QGIS 3.0中重新创建打印布局
  3. 对于必须保留的旧布局,可以尝试:
    • 在QGIS 2.x中导出为QPT模板文件
    • 在QGIS 3.0中导入该模板
    • 手动重新添加缺失的属性表

升级后的验证步骤

完成项目迁移后,建议进行以下验证:

  1. 检查所有标注和属性表单是否显示正常
  2. 验证打印布局中的所有元素是否正确呈现
  3. 特别检查那些依赖表达式的功能,如条件格式、数据定义覆盖等
  4. 测试图集功能是否正常工作

结语

QGIS 3.0的这些变更虽然短期内可能带来一些迁移工作,但从长远来看,新的表达式语法更加清晰一致,打印布局系统也更加稳定。理解这些变更有助于用户更顺利地过渡到新版本,并充分利用QGIS 3.0提供的新功能和改进。

对于大型项目或复杂表达式,建议分阶段进行迁移,并在每个阶段进行充分测试,确保所有功能都能按预期工作。

QGIS QGIS is a free, open source, cross platform (lin/win/mac) geographical information system (GIS) QGIS 项目地址: https://gitcode.com/gh_mirrors/qg/QGIS

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秦贝仁Lincoln

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值