فیلدهای معادلات و فرمول‌ها

فیلدهای معادلات و فرمول‌ها

فیلدهای معادلات و فرمول‌ها

این راهنما نشان می‌دهد چگونه با FieldAdvance and FieldSymbol کلاس‌های فیلد در Aspose.Words FOSS برای .NET که فیلدهای Word را پیاده‌سازی می‌کنند، ADVANCE and SYMBOL فیلدها. هر دو کلاس از Field و پیاده‌سازی می‌کنند IFieldCodeTokenInfoProvider; برای مدل پایه Field مدل شیء پایه، ببینید کار با فیلدها راهنما.


جابجایی متن با FieldAdvance

FieldAdvance فیلد ADVANCE را پیاده‌سازی می‌کند که متن پس از آن را بدون درج کاراکترهای قابل مشاهده جابجا می‌سازد. DownOffset، UpOffset، LeftOffset و RightOffset (همه string) متن پس از آن را به تعداد نقطه‌ای در آن جهت جابه‌جا می‌کنند. HorizontalPosition و VerticalPosition (همچنین string) متن پس از آن را به موقعیتی مطلق که از لبهٔ چپ ستون، قاب یا جعبهٔ متن و از لبهٔ بالای صفحه اندازه‌گیری می‌شود، منتقل می‌کنند.


درج کاراکترهای ویژه با FieldSymbol

FieldSymbol فیلد SYMBOL را پیاده‌سازی می‌کند که یک کاراکتر تک را بر اساس کد نقطه‌ای وارد می‌سازد. CharacterCode (رشته) کد نقطه‌ای کاراکتر را به صورت دهدهی یا هگزادسیمال فراهم می‌کند. IsAnsi، IsUnicode و IsShiftJis (همهٔ بولی) تعیین می‌کنند CharacterCode چگونه تفسیر شود. FontName و FontSize (رشته) قلم مورد استفاده برای رندر کاراکتر بازیابی‌شده را تنظیم می‌کنند و DontAffectsLineSpacing (بولی) کنترل می‌کند که آیا کاراکتر درج‌شده بر فاصله‌خط پاراگراف تأثیر می‌گذارد یا نه.


نکات و بهترین روش‌ها

  • تنها یکی از IsAnsi، IsUnicode یا IsShiftJis را روی FieldSymbol تنظیم کنید تا از تفسیر مبهم CharacterCode جلوگیری شود.
  • ویژگی‌های افست FieldAdvance string هستند، نه انواع عددی — مقادیر نقطه‌ای را به‌صورت رشته هنگام تنظیم DownOffset، UpOffset، LeftOffset، RightOffset، HorizontalPosition یا VerticalPosition پاس دهید.
  • به FieldSymbol.FontName یک قلم تنظیم کنید که واقعاً گلیف CharacterCode را داشته باشد، در غیر این‌صورت کاراکتر رندر شده ممکن است به جایگزین گلیف‌غایب بازگردد.
  • پس از تغییر هرگونه ویژگی در FieldAdvance یا FieldSymbol، Update() را فراخوانی کنید تا Result / DisplayResult فیلد تغییر را منعکس کند.
  • از DontAffectsLineSpacing هنگام درج یک نماد بلند یا غیرمعمول که نباید ارتفاع خط اطراف را کشیده کند، استفاده کنید.

مشکلات رایج

مسألهعلتراه‌حل
فیلد ADVANCE متن را همانطور که انتظار می‌رود جابجا نمی‌کندویژگی offset نادرست تنظیم شده بود، یا مقدار به تنظیم پیش‌فرض باقی مانده بودویژگی DownOffset / UpOffset / LeftOffset / RightOffset (relative) یا HorizontalPosition / VerticalPosition (absolute) را تنظیم کنید که با حرکت موردنظر مطابقت داشته باشد
فیلد SYMBOL کاراکتر نادرست را نمایش می‌دهدCharacterCode تحت رمزگذاری نادرست تفسیر شدیک مورد از IsAnsi، IsUnicode یا IsShiftJis را دقیقاً تنظیم کنید تا با نحوهٔ نوشتن CharacterCode مطابقت داشته باشد
کاراکتر نماد به صورت یک جعبهٔ گلیف گمشده نمایش داده می‌شودFontName شامل گلیف برای CharacterCode نیستFontName را به فونتی تنظیم کنید که می‌دانید آن کاراکتر را شامل می‌شود

FAQ

فیلد ADVANCE چه کاری انجام می‌دهد؟

متن پس از آن را جابجا می‌کند، یا با یک جابجایی نسبی (DownOffset, UpOffset, LeftOffset, RightOffset) یا با یک موقعیت مطلق (HorizontalPosition, VerticalPosition)، بدون این‌که کاراکترهای قابل مشاهده‌ای وارد کند.

چگونه می‌توانم یک کاراکتر یونیکد خاص را با FieldSymbol وارد کنم؟

CharacterCode را به نقطه کد کاراکتر تنظیم کنید، IsUnicode = true را تنظیم کنید، و به‌صورت اختیاری FontName / FontSize را برای رندر گلیف تنظیم کنید.

آیا مقادیر جابجایی FieldAdvance عدد هستند یا رشته؟

این‌ها ویژگی‌های string هستند (DownOffset, UpOffset, LeftOffset, RightOffset, HorizontalPosition, VerticalPosition) که با قالب آرگومان کد-فیلد خام مطابقت دارند.

آیا وارد کردن یک کاراکتر SYMBOL بر فاصله خطوط تاثیر می‌گذارد؟

DontAffectsLineSpacing را به true تنظیم کنید تا از تأثیر کاراکتر وارد شده بر ارتفاع خط پاراگراف جلوگیری شود.


API Reference خلاصه

کلاس/متدتوضیح
FieldAdvanceفیلد ADVANCE را پیاده‌سازی می‌کند؛ متن بعدی را بدون وارد کردن کاراکترها جابجا می‌سازد
FieldAdvance.DownOffset / UpOffset / LeftOffset / RightOffsetجابه‌جایی‌های نقطه نسبی اعمال‌شده بر متن بعدی
FieldAdvance.HorizontalPosition / VerticalPositionموقعیت نقطه مطلق اعمال‌شده بر متن بعدی
FieldSymbolفیلد SYMBOL را پیاده‌سازی می‌کند؛ یک کاراکتر را بر پایه نقطه کد وارد می‌کند
FieldSymbol.CharacterCodeنقطه کد کاراکتر، به صورت دهدهی یا هگزادسیمال
FieldSymbol.IsAnsi / IsUnicode / IsShiftJisنحوه تفسیر CharacterCode را انتخاب می‌کند
FieldSymbol.FontName / FontSizeقلم مورد استفاده برای رندر کردن کاراکتر بازیابی‌شده
FieldSymbol.DontAffectsLineSpacingمشخص می‌کند که آیا کاراکتر درج‌شده بر فاصله خطوط پاراگراف تأثیر می‌گذارد

همچنین ببینید:

 فارسی