hocky の回答履歴
- Illustratorの面積測定スクリプトが変な挙動をします
いつもお世話になっております。 以下のようなスクリプトを書いて、 Illustratorの図形の面積を求めようと思っています。 レイヤごとに、中にあるパスアイテムの面積を総計したものを、 エクセルのシートに書き出すスクリプトです。 一応、動作はするのですが、以下の2点について、 よくわからない挙動をします。 1. 面積が約2倍になってでてくる。 テストで、10 mm × 10 mm の四角形を作り、 その面積を測ったのですが、約200になりました。 何故か、約2倍になってしまいます。 2. 多角形の面積がマイナスで出てくる。 面積を測りたい実際の図形が多角形です。 スクリプティング・ガイドは読んだのですが、 PathItem の Area の「四角形~」というのがよくわかりません。 上の、2点について、回答頂けますよう、 よろしくお願い致します。 Sub レイヤごとのパスアイテムの面積_作成中() Dim illApp As New Illustrator.Application Dim myDoc As Illustrator.Document Dim mm As Single, areaVal As Single Dim i As Integer Dim p As PathItem Dim l As Layer Set myDoc = illApp.ActiveDocument mm = 2.834645 i = 1 For Each l In myDoc.Layers areaVal = 0 If l.PathItems.Count <> 0 Then For Each p In l.PathItems areaVal = areaVal + p.Area Next p Range("A" & i).Value = l.Name Range("B" & i).Value = areaVal / mm / mm i = i + 1 End If Next l End Sub