2010-10-05 20 views
5

Đây không phải là một câu hỏi lập trình, mà là về một môi trường lập trình, vì vậy hy vọng không quá đúng chỗ. Tôi cần để có thể viết công thức hóa học trong văn bản Mathematica (điều này đặc biệt về văn bản, không phải đầu vào/mã). Một cái gì đó như: H O +. Nhưng Mathematica dường như không thể làm được điều này. Nếu bạn sử dụng các hàm con/superscript bình thường, hoặc nhấn Cntl-_ hoặc Cntl-6, nó sẽ đưa bạn vào "chế độ toán học" ngay cả khi bạn đang ở trong văn bản, và vì vậy các chữ trở thành nghiêng, và nó đặt một khoảng trắng giữa 3 và O. như thế này: HO+. Xấu xí, đặc biệt là với hóa chất dài hơn.Cách sử dụng sub và superscript trong văn bản Mathematica, ví dụ: công thức hóa học?

Những thứ khác trong Mathematica hoạt động như bộ xử lý văn bản thông thường - bạn có thể tạo kiểu phông chữ in nghiêng, đậm, lớn, nhỏ, màu - nhưng các hàm con và hàm siêu phổ biến trong bộ xử lý văn bản dường như bị thiếu.

Tôi có thiếu gì đó không? Tôi hy vọng như vậy ...

cảm ơn,
Rob

+0

Bạn có thể có nhiều may mắn hơn với câu hỏi này tại superuser.com –

Trả lời

5

Bạn có thể sử dụng một mẹo tương tự như mẹo được sử dụng trong LaTeX để in các bản đăng ký ở bên trái. Đó là đặt chỉ số trên một đối tượng không có chiều rộng.

Để nhập loại chế độ toán học Cntl- (và để thoát loại Cntl-).

Gắn phụ và superscripts để ⋮ rỗng ⋮ hoặc ⋮ ⋮ hoặc ⋮ - ⋮ (nơi ⋮ = thoát)

Sau đây là cách nó sẽ hiển thị - so với một số biểu thức trong mathmode: the chemical formula for hydronium is HSubscript[[Null], 3]O[Null]^+

tôi đã đặt Biểu thức ô trong một số gist cho bạn.

3

Trong ChemData, Mathematica sử dụng contructs như

Style[ 
    Row[ 
      {Subscript["H",3],Superscript["O","+"]} 
     ], 
      Rule[ScriptBaselineShifts,{0.5`,0.75`}] 
     ] 

Ví dụ:

alt text

HTH!

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