سیندی پرسید آیا راهی برای «تایپ کردن» کلمات با کاراکتر متفاوت وجود دارد؟ به ویژه، او می خواست برخی از شخصیت ها را "x" کند. او نمی خواهد خط خطی انجام دهد، اما در واقع از کاراکتر "x" برای تایپ روی کاراکترهای موجود در سند استفاده می کند.
بهترین راه برای انجام این کار در Word استفاده از فیلد EQ با سوئیچ o (overtype) است. این مراحل را دنبال کنید:
- نشانگر درج را در جایی که می خواهید متن x-ed out ظاهر شود، قرار دهید.
- Ctrl+F9 را فشار دهید . Word مجموعه ای از مهاربندهای میدان را با نقطه درج در وسط آنها وارد می کند.
- عبارت زیر را در فیلد پرانتز تایپ کنید:
eq o(my text,xxxxxxx)
- متنی را که می خواهید x-ed بیرون بیاورید جایگزین «متن من» کنید و مطمئن شوید که x کاراکترهای کافی برای پوشش آن متن وجود دارد.
- Shift+F9 را فشار دهید تا فیلد جمع شود و نتیجه نمایش داده شود.
این رویکرد میدانی برای انتخاب متن کوتاه عالی عمل میکند، و اگر متنهای زیادی دارید که میخواهید به این روش تأثیر بگذارید، همیشه میتوانید آن را به یک ماکرو تبدیل کنید. ماکرو زیر این مفهوم را حتی بیشتر میبرد - کاراکترهای x را به رنگ قرمز نمایش میدهد و فاصلهها را تایپ نمیکند:
Sub OverstrikeWithX2() Dim i As Integer MyString = Selection.TextInsertion point only/single character/multiple character range handler If Selection.Characters.Count = 1 Then Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend If Selection.Characters.Count = 2 Then Selection.MoveLeft Unit:=wdCharacter, Count:=2, Extend:=wdExtend Else Selection.MoveLeft Unit:=wdCharacter, Count:=1 End If Else Selection.MoveLeft Unit:=wdCharacter, Count:=1 End Ifend range handler For i = 1 To Len(MyString) Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtendparagraph marker and space handler If Selection.Text = Chr(13) Or Selection.Text = " " Then While Selection.Text = Chr(13) Or Selection.Text = " " If i = Len(MyString) Then Selection.MoveRight Unit:=wdCharacter, Count:=1 Exit Sub Else i = i + 1 Selection.MoveRight Unit:=wdCharacter, Count:=1 Selection.MoveRight Unit:=wdCharacter, Count:=1, _ Extend:=wdExtend End If Wend End Ifend paragraph marker & space handler With Selection .Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, _ PreserveFormatting:=False .TypeText Text:="eq o(" .MoveRight Unit:=wdCharacter, Count:=1 .TypeText Text:=",x)" .Delete Unit:=wdCharacter, Count:=1The next three lines turns the overstike "x" red .MoveLeft Unit:=wdCharacter, Count:=1 .MoveLeft Unit:=wdCharacter, Count:=1, Extend:=wdExtend .Font.Color = wdColorRed .Fields.ToggleShowCodes .MoveRight Unit:=wdCharacter, Count:=1 End With Next i End Sub
ماکرو برای هر کاراکتری که بیش از حد تایپ می شود یک فیلد اضافه می کند و بنابراین برای متن تقریباً با هر طولی مناسب است.
همچنین یک رویکرد کاملا متفاوت وجود دارد که ممکن است بخواهید این بار با استفاده از کادرهای متنی امتحان کنید. یک جعبه متن ایجاد کنید و در داخل آن به اندازه دلخواه کاراکتر x را با فونت و اندازه دلخواه تایپ کنید. مطمئن شوید که جعبه متن طوری فرمت شده است که پر نشده باشد (که باعث شفافیت آن می شود)، هیچ حاشیه ای نداشته باشد و روی متن بدون بسته بندی متن شناور شود. کادر متنی را روی متن بکشید تا در صورت لزوم ویرایش شود و اندازه شود.