FeatureLabel.Place 方法将基于 web 或文档要素图层的现有字段的内容新建文本实体。 可以将要素属性字段值链接到大多数类型的要素属性字段。 无法将报告字段链接到文本或块属性值。
声明
public ObjectId Esri.ArcGISForAutoCAD.FeatureLabel.Place(Document doc, string flName, string fieldName, ObjectId featureObjId, Point3d placePoint, double textSize = 0)
参数
| 类型 | 名称 | 描述 | 必填 |
|---|---|---|---|
文档 | doc | 要进行操作的 AutoCAD 文档。 | 必填 |
string | flName | 工程图中现有的要素图层名称。 | 必填 |
string | fieldName | 标注的要素属性字段名称源。 | 必填 |
ObjectId | featureObjId | 要链接到指定文本的要素的 AutoCAD ObjectId。 | 必填 |
Point3d | placePoint | 将放置新文本标注的 3D 点。 | 必填 |
双精度 | textSize | 要放置的新文本标注的文本高度。 | 可选 |
返回
| 类型 | 描述 |
|---|---|
ObjectId | 已创建文本实体的 AutoCAD ObjectId。 |
错误条件备注
如果参数无效,则此方法可能会抛出异常或者返回 null。
示例
为所选 Parcels 要素的 Owner 属性值放置文本标注,并打印新文本实体的 AutoCAD ObjectId。// Initialize
var doc = Application.DocumentManager.MdiActiveDocument;
var flName = "Parcels";
var featureObjId = Esri.ArcGISForAutoCAD.FeatureLayer.SelectEntity(doc, flName);
var fieldName = "Owner";
var placePoint = doc.Editor.GetPoint("Place label: ").Value;
// Place label
var labelObjId = Esri.ArcGISForAutoCAD.FeatureLabel.Place(doc, flName, fieldName, featureObjId, placePoint);
// Print the label's ObjectId
doc.Editor.WriteMessage("\nObjectId: " + labelObjId.ToString());
/* Example output
ObjectId: (2100004115968)
*/
另请参阅
esri_label_place - 此 AutoLISP 函数用于放置要素属性标注。
FeatureLayer.SelectEntity - 此 .NET 方法将提示选择一个实体并返回其 AutoCAD ObjectId。