次の方法で共有


ShapeNodes オブジェクト (Publisher)

特定のフリーフォームのすべての ShapeNode オブジェクトのコレクションです。 各 ShapeNode オブジェクトは、フリーフォームのセグメント間の節点、またはフリーフォームの曲線セグメントのコントロール ポイントを表します。

フリーフォームは、手動で作成することも、 Shapes.BuildFreeform メソッドと FreeformBuilder.ConvertToShape メソッドを使用して作成することもできます。

解説

ShapeNodes コレクションを取得するには、Nodes プロパティを使用します。 単一の ShapeNode オブジェクトを返すには、ノード (インデックス) を使用します。index はノードインデックス番号です。

Insert メソッドを使用して新しいノードを作成し、それを ShapeNodes コレクションに追加します。

次の使用例は、作業中の文書の 3 番目の図形の 4 番目の節点を削除します。 次の使用例を実行するには、3 番目の図形が少なくとも 4 つの節点を持つフリーフォームである必要があります。

Sub DeleteShapeNode() 
 ActiveDocument.Pages(1).Shapes(3).Nodes.Delete Index:=4 
End Sub

次の使用例は、作業中の文書の 3 番目の図形の 4 番目の節点の後に、曲線の線分を含む、滑らかな節点を追加します。 次の使用例を実行するには、3 番目の図形が少なくとも 4 つの節点を持つフリーフォームである必要があります。

Sub AddCurvedSmoothSegment() 
 ActiveDocument.Pages(1).Shapes(3).Nodes.Insert _ 
 Index:=4, SegmentType:=msoSegmentCurve, _ 
 EditingType:=msoEditingSmooth, X1:=210, Y1:=100 
End Sub

次の使用例は、作業中の文書の 3 番目の図形の最初の節点が角の頂点である場合、その角を滑らかにします。 次の使用例を実行するには、3 番目の図形がフリーフォームである必要があります。

Sub SetPointType() 
 With ActiveDocument.Pages(1).Shapes(3) 
 If .Nodes(1).EditingType = msoEditingCorner Then 
 .Nodes.SetEditingType Index:=1, EditingType:=msoEditingSmooth 
 End If 
 End With 
End Sub

メソッド

プロパティ

関連項目

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。