この掲示板は AutoCADマクロ屋本舗 の掲示板です。

【 注意 】最初に必ず ↓↓ 下記内容 ↓↓ を参照ください。
① マクロが分からない方は、まず 【 マクロ講座 】 を参照ください。
② 質問の前に 【 マクロ使用前の注意事項 】 をお読みください。
③ 質問する時は、新規投稿フォーム下の【 新規投稿時のお願い 】を必ずお読みください。

文字二重下線
先程は文字検索について
ご教示くださりありがとうございました。

もう一点お願い致します。

文字の下線を自動でひくマクロの作成をおねがいしたいです。
基準としましては、
文字高100、下線両側+50mmずつはみ出す、二重線幅10mm
という感じです。
マルチ、ダイレクト対応ですと助かります。
よろしくおねがいします。
  • bombom
  • 2018/06/06 (Wed) 11:24:29
Re: 文字二重下線
133.文字二重線付加マクロを修正してみました。
お試しください。

♪文字二重下線
*^C^C$m=setenv;to;0;$(nth,$(getenv,to),offset;;\;select;non;@;non;@;;copy;p;;non;@;non;@;erase;p;;undo;be;setenv;to;1;-attedit;y;;;;non;@;non;@;;$M="""$(if,$(getvar,cmdactive),;setenv;to;0,)""",,,,,)$(nth,$(getenv,to),,;to;2;explode;l;"""$m=$(if,$(getvar,cmdactive),;)"""explode;l;"""""""$m=$(if,$(getvar,cmdactive),;)"""""""select;l;,,,,)$(nth,$(getenv,to),,,;to;3;ucs;e;l;sortents;127;line;non;0<0;non;@0.05<0;;extend;p;;f;non;@-0.02",0.1;non;@0,-0.2;;f;non;@-0.02,0.1;non;@0,"-0.2;;,,,)$(nth,$(getenv,to),,,,;to;4;line;non;@;non;@0.05<90;;extend;p;;f;non;@0.1",-0.02;non;@-0.2,0;;f;non;@0.1,-0.02;non;@-0.2,"0;;;lengthen;l;;erase;l;,,)$(nth,$(getenv,to),,,,,chprop;l;;c;1;;copy;p;;non;0<0;non;10<S;ucs;p;;p;;p;copybase;0<0;p;l;;undo;e;u;pasteclip;non;0<0)^M


ただし情報だと、文字高100のみで二重線幅10mmで作画させてます。
他の文字高さでも二重線幅10mmです。

尚、「下線両側+50mmずつはみ出す」に関しましては無視しました。
どこを基準に50mmはみ出すのかが分からないです。
  • とってぃ
  • 2018/06/06 (Wed) 12:58:50
Re: 文字二重下線
ご対応ありがとうございます。
試した見たところ、

コマンド: extend

現在の設定: 投影モード=UCS、エッジモード=延長
境界エッジを選択 ...
オブジェクトを選択 または <すべて選択>: p
認識された数: 1

オブジェクトを選択:

延長するオブジェクトを選択 または Shift を押してトリムするオブジェクトを選択 または
[フェンス(F)/交差(C)/投影モード(P)/エッジ(E)/元に戻す(U)]: f

フェンスの 1 点目を指定 または クリックしてカーソルをドラッグ: non

オブジェクト スナップはここでは使用できません。
応答が無効です。

このように出ました。
文字を選択するとすごく小さな下線がある場合とない場合がありました。

宜しくお願いします。
  • bombom
  • 2018/06/06 (Wed) 13:10:31
Re: 文字二重下線
こちらでお試しください。

♪文字二重下線 改1
*^C^C$m=setenv;to;0;$(nth,$(getenv,to),offset;;\;select;non;@;non;@;;copy;p;;non;@;non;@;erase;p;;undo;be;setenv;to;1;-attedit;y;;;;non;@;non;@;;$M="""$(if,$(getvar,cmdactive),;setenv;to;0,)""",,,,,)$(nth,$(getenv,to),,;to;2;explode;l;"""$m=$(if,$(getvar,cmdactive),;)"""explode;l;"""""""$m=$(if,$(getvar,cmdactive),;)"""""""select;l;,,,,)$(nth,$(getenv,to),,,;to;3;ucs;e;l;sortents;127;line;non;0<0;non;@0.05<0;;extend;p;;f;@-0.02",0.1;@0,-0.2;;f;@-0.02,0.1;@0,"-0.2;;,,,)$(nth,$(getenv,to),,,,;to;4;line;non;@;non;@0.05<90;;extend;p;;f;@0.1",-0.02;@-0.2,0;;f;@0.1,-0.02;@-0.2,"0;;;lengthen;l;;erase;l;,,)$(nth,$(getenv,to),,,,,chprop;l;;c;1;;copy;p;;non;0<0;non;10<S;ucs;p;;p;;p;copybase;0<0;p;l;;undo;e;u;pasteclip;non;0<0)^M
  • とってぃ
  • 2018/06/06 (Wed) 13:22:21
Re: 文字二重下線
ありがとうございます。
再度試してみましたところ、
動きました!

お忙しい中、ありがとうございました。
  • bombom
  • 2018/06/06 (Wed) 13:31:54
Re: 文字二重下線
こちらを、30mm固定にするには
どこを修正すれば良いですか??
  • α
  • 2019/04/23 (Tue) 11:09:08
Re: 文字二重下線
何を30mmに固定したいのでしょう?

二重線幅なら
>二重線幅10mmで作画させてます。
と、なっているのでマクロの中の『10』を探せばわかると思いますよ。

もし違うならば何を固定したいのか提示しないと
答えようがないと思いますよ。
  • chibi-tom
  • 2019/04/23 (Tue) 16:12:02
Re: 文字二重下線
chibi-tom様
すみません。
二重線幅が30mmです。
マクロ内の「10」を探したのですが
見当たらなくて...
  • α
  • 2019/04/23 (Tue) 16:44:49
Re: 文字二重下線
どのマクロを使用しているかわからないので

最後のほうにある『10<S』を『30<S』に変えれば良いと思います。
ちなみに、メモ帳でもwordでもコピペして『10』で検索すれば見つかりますよ。
『10』は一箇所しかないです。
  • chibi-tom
  • 2019/04/23 (Tue) 17:12:17
Re: 文字二重下線
chibi-tom様

すみません。
私の使用していたマクロが少し違ったみたいです。


*^C^C$m=setenv;to;0;$(nth,$(getenv,to),;sw;0;;to;1,;to;0;offset;;^x^x文字を選択【$(nth,$(getenv,sw),下線,二重下線)】--切替(Rc)--^x\$M="""$(if,$(getvar,cmdactive),;select;non;@;non;@;;copy;p;;non;@;non;@;erase;p;;undo;be;setenv;to;2,setenv;sw;$(nth,$(getenv,sw),1,0);;to;1)""",,,,)$(nth,$(getenv,to),,,;to;3;-attedit;y;;;;non;@;non;@;;$M="""$(if,$(getvar,cmdactive),;setenv;to;1,)""",,,)$(nth,$(getenv,to),,,,;to;4;explode;l;"""$m=$(if,$(getvar,cmdactive),;)"""explode;l;"""""""$m=$(if,$(getvar,cmdactive),;)"""""""select;l;,,)$(nth,$(getenv,to),,,,,;to;5;ucs;e;l;sortents;127;line;non;0<0;non;@0.05<0;;extend;p;;f;@-0.02",0.1;@0,-0.2;;f;@-0.02,0.1;@0,"-0.2;;,)$(nth,$(getenv,to),,,,,,;to;1;chprop;l;;c;2;;move;p;;non;0<0;non;$(*,$(getvar,dimscale),0.5)<270;$(nth,$(getenv,sw),,copy;p;;non;0<0;non;$(*,$(getvar,dimscale),0.5)<270;)ucs;p;copybase;0<0;p;l;;undo;e;u;pasteclip;non;0<0)^M
  • α
  • 2019/04/24 (Wed) 09:32:42
Re: 文字二重下線
>どこを修正すれば良いですか??
とのことなので

『$(*,$(getvar,dimscale),0.5)<270』が2箇所あります。
1つ目が文字からどれくらい離すかの数値
2つ目が二重線幅の数値になります。
なので2つ目を
『30<270』又は『30<S』に変えれば良いと思います。
  • chibi-tom
  • 2019/04/24 (Wed) 10:09:57
Re: 文字二重下線

いつもお世話になります。
横から申し訳ありません。
上記マクロの『1つ目が文字からどれくらい離すかの数値』『2つ目が二重線幅の数値』を
毎回任意の数値を入力するように変更する事は可能でしょか。
図面尺度により数値が異なる為です。

ご確認宜しくお願い致します。
  • SD
  • 2019/04/26 (Fri) 10:16:58
Re: 文字二重下線
こんな感じでしょうか?

*^C^C$m=setenv;to;0;$(nth,$(getenv,to),;sw;0;;to;1,;to;0;offset;;^x^x文字を選択【$(nth,$(getenv,sw),下線,二重下線)】--切替(Rc)--^x\$M="""$(if,$(getvar,cmdactive),;select;non;@;non;@;;copy;p;;non;@;non;@;erase;p;;undo;be;setenv;to;2,setenv;sw;$(nth,$(getenv,sw),1,0);;to;1)""",,,,,)$(nth,$(getenv,to),,,;to;3;-attedit;y;;;;non;@;non;@;;$M="""$(if,$(getvar,cmdactive),;setenv;to;1,)""",,,,)$(nth,$(getenv,to),,,,;to;4;explode;l;"""$m=$(if,$(getvar,cmdactive),;)"""explode;l;"""""""$m=$(if,$(getvar,cmdactive),;)"""""""select;l;,,,)$(nth,$(getenv,to),,,,,;to;5;ucs;e;l;sortents;127;line;non;0<0;non;@0.05<0;;extend;p;;f;@-0.02",0.1;@0,-0.2;;f;@-0.02,0.1;@0,"-0.2;;,,)$(nth,$(getenv,to),,,,,,;Y1;文字からの位置指定:^X\$(if,$(getenv,sw),;Y2;二重線幅を指定:^X\,);to;6,)$(nth,$(getenv,to),,,,,,,;to;1;chprop;l;;c;2;;move;p;;non;0<0;non;$(getenv,Y1)<270;$(nth,$(getenv,sw),,copy;p;;non;0<0;non;$(getenv,Y2)<270;)ucs;p;copybase;0<0;p;l;;undo;e;u;pasteclip;non;0<0)^M
  • chibi-tom
  • 2019/04/26 (Fri) 11:36:31
Re: 文字二重下線
chibi-tomさま

希望の動作になりました。
ありがとうございました。
  • SD
  • 2019/04/27 (Sat) 17:15:58

返信フォーム






プレビュー (投稿前に内容を確認)