Trường Phương trình và Công thức

Trường Phương trình và Công thức

Các trường Phương trình và Công thức

Hướng dẫn này cho thấy cách làm việc với FieldAdvance and FieldSymbol các lớp field trong Aspose.Words FOSS cho .NET, triển khai các trường của Word ADVANCE and SYMBOL các trường. Cả hai lớp kế thừa từ Field và thực thi IFieldCodeTokenInfoProvider; cho cơ sở Field mô hình đối tượng bản thân, xem Làm việc với Trường hướng dẫn.


Định vị lại Văn bản với FieldAdvance

FieldAdvance thực hiện trường ADVANCE, trường này dịch chuyển văn bản phía sau nó mà không chèn ký tự hiển thị. DownOffset, UpOffset, LeftOffset và RightOffset (tất cả string) di chuyển văn bản phía sau một số điểm theo hướng đó. HorizontalPosition và VerticalPosition (cũng là string) di chuyển văn bản phía sau tới vị trí tuyệt đối đo từ cạnh trái của cột, khung, hoặc ô văn bản, và cạnh trên của trang, tương ứng.


Chèn ký tự đặc biệt với FieldSymbol

FieldSymbol thực hiện trường SYMBOL, trường này chèn một ký tự duy nhất bằng điểm mã. CharacterCode (string) cung cấp điểm mã của ký tự dưới dạng thập phân hoặc thập lục phân. IsAnsi, IsUnicode và IsShiftJis (tất cả bool) chọn cách CharacterCode được diễn giải. FontName và FontSize (string) đặt phông chữ dùng để hiển thị ký tự đã lấy, và DontAffectsLineSpacing (bool) kiểm soát xem ký tự chèn có ảnh hưởng đến khoảng cách dòng của đoạn văn hay không.


Mẹo và Thực hành Tốt nhất

  • Chỉ đặt một trong số IsAnsi, IsUnicode hoặc IsShiftJis trên một FieldSymbol để tránh việc diễn giải mơ hồ của CharacterCode.
  • Các thuộc tính offset của FieldAdvance là string, không phải kiểu số — truyền các giá trị điểm dưới dạng chuỗi khi thiết lập DownOffset, UpOffset, LeftOffset, RightOffset, HorizontalPosition hoặc VerticalPosition.
  • Đặt FieldSymbol.FontName thành một phông chữ thực sự chứa glyph tại CharacterCode, nếu không ký tự được hiển thị có thể chuyển sang placeholder glyph bị thiếu.
  • Gọi Update() sau khi thay đổi bất kỳ thuộc tính nào trên FieldAdvance hoặc FieldSymbol để Result / DisplayResult của trường phản ánh sự thay đổi.
  • Sử dụng DontAffectsLineSpacing khi chèn ký tự biểu tượng cao hoặc lạ mà không nên làm giãn chiều cao của dòng xung quanh.

Các vấn đề thường gặp

Vấn đềNguyên nhânSửa lỗi
Trường ADVANCE không di chuyển văn bản như mong đợiThuộc tính offset không đúng đã được thiết lập, hoặc giá trị để ở chế độ mặc địnhĐặt thuộc tính DownOffset / UpOffset / LeftOffset / RightOffset (tương đối) hoặc HorizontalPosition / VerticalPosition (tuyệt đối) cụ thể sao cho phù hợp với chuyển động mong muốn
Trường SYMBOL hiển thị ký tự saiCharacterCode đã được giải mã dưới mã hoá saiĐặt chính xác một trong IsAnsi, IsUnicode hoặc IsShiftJis sao cho phù hợp với cách CharacterCode được viết
Ký tự biểu tượng được hiển thị dưới dạng hộp glyph bị thiếuFontName không chứa glyph cho CharacterCodeĐặt FontName thành phông chữ đã biết bao gồm ký tự đó

FAQ

Trường ADVANCE làm gì?

Nó đặt lại vị trí của văn bản theo sau, hoặc bằng một độ lệch tương đối (DownOffset, UpOffset, LeftOffset, RightOffset) hoặc một vị trí tuyệt đối (HorizontalPosition, VerticalPosition), mà không chèn ký tự hiển thị.

Làm thế nào để chèn một ký tự Unicode cụ thể bằng FieldSymbol?

Đặt CharacterCode thành mã điểm của ký tự, đặt IsUnicode = true, và tùy chọn đặt FontName / FontSize để hiển thị glyph.

Các giá trị độ lệch của FieldAdvance là số hay chuỗi?

Chúng là các thuộc tính của string (DownOffset, UpOffset, LeftOffset, RightOffset, HorizontalPosition, VerticalPosition), phù hợp với định dạng đối số mã trường thô.

Việc chèn ký tự SYMBOL có ảnh hưởng đến khoảng cách dòng không?

Đặt DontAffectsLineSpacing thành true để ngăn ký tự được chèn ảnh hưởng đến chiều cao dòng của đoạn văn.


API Reference Tóm tắt

Lớp/Phương thứcMô tả
FieldAdvanceThực hiện trường ADVANCE; định vị lại văn bản phía sau mà không chèn ký tự
FieldAdvance.DownOffset / UpOffset / LeftOffset / RightOffsetCác offset điểm tương đối được áp dụng cho văn bản phía sau
FieldAdvance.HorizontalPosition / VerticalPositionVị trí điểm tuyệt đối được áp dụng cho văn bản tiếp theo
FieldSymbolThực hiện trường SYMBOL; chèn một ký tự theo mã điểm
FieldSymbol.CharacterCodeMã điểm của ký tự, ở dạng thập phân hoặc thập lục phân
FieldSymbol.IsAnsi / IsUnicode / IsShiftJisChọn cách CharacterCode được diễn giải
FieldSymbol.FontName / FontSizePhông chữ được sử dụng để hiển thị ký tự đã lấy
FieldSymbol.DontAffectsLineSpacingKiểm soát liệu ký tự được chèn có ảnh hưởng đến khoảng cách dòng của đoạn văn hay không

Xem thêm

 Tiếng Việt