vb.net - illustrator
イラストレーターの文字列の改行コードは 強制改行時に付与されるらしい。 調べてみると Asc(改行コード) = 3 '[3]-ETX(テキスト終了) と判明。 という訳で '改行コードを半角スペースに置換 temContents = Regex.Replace(temContents, Chr(3), " ")
'改行コードが先頭にある場合 If Regex.IsMatch(Name, "^\w") Then 'Console.WriteLine("ok") Else Name = Name.Remove(0, 1) End If
ちょっとメモ。 Adobe Illustrator 10.0 Type Library C:\Program Files (x86)\Adobe\Illustrator 10.0.3\プラグイン\機能拡張\ScriptingSupport.aip
エリアテキスト作成時、ボックスがやたらデカイ。 何なんだこれは? ちょっと調べてみると、どうやらテキストボックスの幅は 特に指定しなければ、フォントサイズに関係なく「文字数 * 6 pt」 のようだ。たぶん。 ちゅう事で、文字列がほどほどに収まるよう…
BoundingBoxを使用 Dim RasterItem As Illustrator.RasterItem Dim rHeight As Single = RasterItem.BoundingBox(1) Dim rWidth As Single = RasterItem.BoundingBox(2)
Dim sDash(1) As Object sDash = New Object() {6.0, 3.0} With Line .Filled = False .Stroked = True .StrokeColor = LineColor("B") .StrokeWidth = 2 .StrokeDashes = sDash End With
表示したり、しなかったり・・・ TextType の位置を変えてテスト。 Dim IllApp As New Illustrator.Application Dim NewDoc As Illustrator.Document = IllApp.ActiveDocument Dim TextItem1 As Illustrator.TextArtItem Dim Str As String Dim rowCount As …
For Each pItem In IllDoc.PathItems Console.WriteLine(TypeName(pItem.Parent)) 'GroupItem 'Layer Next
プロパティ 値の型 説明 Height Single GeometricBounds に基づいて計算した PathItem の高さ(線の幅を除く)。 Width Single GeometricBounds に基づくPathItem の幅(線の幅を除く)。 Top Single PathItem の上端の位置。 Left Single PathItem の左側の…
pathItem.BlendingMode = Illustrator.AiBlendModes.aiMultiply
ちょっとメモ FontName = TextArtItems(i).TextRange.Font "MS-Gothic" "MS-PGothic" "ArialMT" "Arial-BoldMT"
A3 - 297×420 A4 - 210×297 B4 - 257×364 レター - 215.9×279.4 (単位:mm)
文字列の改行を徹底的に削除←なんてやってたけど、どうもうまくいかない。 仕方ないので一文字づつ処理していく事にした。 Dim temContents As String = String.Empty Dim newCont As String Dim temCont As String = String.Empty For Each tItem As TextAr…
Ctrl + Alt + 8 オブジェクトタブ - 複合パス - 解除
イラストレーター 改行コード で改行の削除はとりあえず可能になったが、他所のイラスト屋さんから送られてきたイラストレーターファイルには「vbCr」では取れない物も存在した。 イカン!これではイカン!!という事で、Replace と StringReader の2段構え…
イラストレーターのアイテムを格納する class を作り、プロパティとしてアイテムの情報を取得させる。 Dim PName As Object Dim PNameStr As String '条件に合う文字列を「PName」に格納。 PName = From c As IllData1 In iData Where (c.Cate = 3) AndAlso …
Imports System.Data.OleDb ・・・ Public Sub ItemRemove(ByVal IllDoc As Illustrator.Document) 'タイトルと罫線を削除する If Form1.Cn.State = ConnectionState.Closed Then Form1.Cn.Open() 'データベースに接続 Dim delCom As OleDbCommand = Form1.C…
COMオブジェクトの内部エラー メモリ解放でもダメなら 5回トライしてみる Imports System.Runtime.InteropServices.Marshal ... Dim IllDoc As Illustrator.Document Dim IllLay As Illustrator.Layer Dim n, i, ErrorCount As Integer Dim LayName() As St…
vb.net で他のアプリケーションを操作していると頻発するのが an internal error occurred:PARM 直訳すれば「内部でエラーが起きたぜ」って事になるが、内部ってなんやねん。調べてみるとどうやら「COMオブジェクトの内部エラー」らしい。 ふーん ( ´_ゝ`)…
1pt = 1/72inch = 0.3527777...mm ≒ 0.35mm (1inch = 25.4mm) ということは 2.86pt ≒ 1mm じゃあイラストレーターで実際に移動させてみよう。 IllDoc.PathItems(1).Translate(moveX, 0) ちなみに PathItems(0) はエラーになる。配列とは違うので気をつけよう…
Dim IllApp As New Illustrator.Application Dim IllDoc As Illustrator.Document = IllApp.ActiveDocument Dim gItem As Illustrator.GroupItem Dim lItem As Illustrator.Layer Dim pgItem As Illustrator.PageItem 'ドキュメント内の全てのグループアイテ…
Dim pItem As Illustrator.PathItem pItem = IllDoc.PathItems.RoundedRectangle(0, 0, 12, 6, 1, 2) 'RoundedRectangle( '[top As Single], [left As Single], 座標で位置を指定(オブジェクトの左上が基準) '[Width As Single], [Height As Single], 幅と…
内部エラーで止まる場合はcomオブジェクトの開放をしよう。 Private Sub GetText() Dim Illapp As New Illustrator.Application Dim IllDoc As Illustrator.Document IllDoc = Illapp.ActiveDocument Dim lItem As Illustrator.Layer Dim gItem As Illustrat…
Public Sub aiSave() '処理したいファイルを別ディレクトリにコピーするためのフォルダを新しく作成します Dim SaveDocDir As String = Path.GetDirectoryName(Form1.FL(0)) & "\ai_" & Format(Now(), "yyyyMMddHHmmss") & "\" MkDir(SaveDocDir) Dim IllApp…
処理モジュールサンプル Imports System.IO Imports System.Text Imports System.Text.RegularExpressions Imports System.Runtime.InteropServices.Marshal Module IllClass_sample Dim FLs As New List(Of String) '処理するファイルパスを格納したリスト …
IllDoc.Close(Illustrator.AiSaveOptions.aiDoNotSaveChanges)
イラストレーターの文字列の改行を削除したい。 NameStr = Replace(NameStr, vbCr, String.Empty) ミソは「vbCr」。「vbCrLf」ではうまくいかない。 ???おやおや?? イラストレーターで処理しても削除されないぞ??? って事であーだこーだやってる内に…
Imports System.Runtime.InteropServices.Marshal If Not IllDoc Is Nothing Then ReleaseComObject(IllDoc) 'COMオブジェクトの開放
Public Function WhatIsGeometricBounds() Dim IllApp As New Illustrator.Application Dim IllDoc As Illustrator.Document Dim pItem As PathItem Dim temObj As Object IllDoc = IllApp.ActiveDocument For Each pItem In IllDoc.Selection Console.Write…
Public Function GetCenter(ByVal pItem As Illustrator.PathItem) Dim CX, CY, Right, Left, Top, Bottom, Width, Height As Single 'GeometricBounds(0) : Left 'GeometricBounds(1) : Top 'GeometricBounds(2) : Right 'GeometricBounds(3) : Bottom 'な…