2012-06-29 36 views
17

Tôi đang sử dụng MathJax để hiển thị các công thức trên trang web của mình. Ra khỏi hộp, MathJax nhận ra nhiều chức năng như sin, cos, ..., nhưng nhiều bị thiếu, chẳng hạn như sech (dấu gạch nối hyperbol) và csch (cost hyperbolic). Tôi biết tôi vẫn có thể sử dụng các chức năng này trong công thức bằng phương pháp \text, chẳng hạn nhưCách xác định hàm mới ('toán tử') trong MathJax?

\text{sech} u 

Tuy nhiên, tôi thà làm \sech làm việc. Để kết thúc này, tôi đã thử

<div style="display:none"> 
    $\DeclareMathOperator{\sech}{sech} 
    \DeclareMathOperator{\csch}{csch}$ 
</div> 

ngay sau <body>. (Tôi cũng đã cố gắng thêm dấu hoa thị sau DeclareMathOperator.)

hầu hết hoạt động này gần như. Vấn đề là bây giờ

\sech^2 u 

nơi quảng trường trênsech, thay vì sau khi nó (proof). Có cách nào để sửa lỗi này? Cách ưa thích để xác định các hàm mới ('toán tử') trong MathJax là gì? Chắc chắn có một cách tốt, cho những người có thể sống mà không có một phổ đầy đủ các chức năng hyperbol ?!

+0

Tôi không chắc liệu MathJax có tương ứng 100% với latex hay không, nhưng bạn có thể thử '\ sech \ nolimits^{2}' không? – phg

+1

@phg: Cảm ơn bạn đã bình luận. Vâng, điều đó có hiệu quả, nhưng nó loại bỏ lợi ích của việc làm cho công việc '\ sech' ở nơi đầu tiên. Thật vậy, ngay cả '\ text {sech}^2' cũng có ít ký tự hơn so với' \ sech \ nolimits^2'. –

Trả lời

13

Macro \DeclareMathOperator không cung cấp phương tiện khai báo nhà điều hành luôn có giới hạn ở vị trí siêu và chỉ số, đó là lý do tại sao số \sech của bạn được đặt phía trên nó khi được sử dụng trong phương trình được hiển thị.

gì bạn muốn là như sau:

<div style="display:none"> 
    $ 
    \newcommand{\sech}{\mathop{\rm sech}\nolimits} 
    \newcommand{\csch}{\mathop{\rm csch}\nolimits} 
    $ 
</div> 

này sẽ giúp bạn khai thác mà làm việc như \sin\cos. Lưu ý rằng khoảng cách sẽ tốt hơn với biểu mẫu này so với các phiên bản của bạn bằng cách sử dụng \text{...}, vì \mathop sẽ cung cấp khoảng cách thích hợp xung quanh tên toán tử (tuy nhiên có lỗi trong MathJax khiến không gian bị mất khi có siêu hoặc chỉ số này sẽ được sửa trong bản phát hành tiếp theo).

+0

Cảm ơn bạn rất nhiều vì câu trả lời của bạn! –

+0

Chỉ cần đặt macro này vào macro theo [tài liệu MathJaX] (http://docs.mathjax.org/en/latest/tex.html#defining-tex-macros) và nó hoạt động hoàn hảo! Tôi đã thêm '

Các vấn đề liên quan