intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Luận văn:Nghiên cứu ứng dụng mathml để quản lý các công thức toán học trên văn bản

Chia sẻ: Nhung Thi | Ngày: | Loại File: PDF | Số trang:27

95
lượt xem
10
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

MathML (viết tắt cho Mathematical Markup Language, Ngôn ngữ Đánh dấu Toán học) là một ứng dụng của XML để thể hiện ký hiệu và công thức toán học với mục đích rộng là phương cách trao đổi thông tin toán học trên máy tính (để hiển thị cũng như để tính toán) và mục đích hẹp là hiển thị tài liệu toán học trên World Wide Web. Nhóm toán học của W3C đề xuất mọi người nên dần sử dụng ngôn ngữ này trên mạng....

Chủ đề:
Lưu

Nội dung Text: Luận văn:Nghiên cứu ứng dụng mathml để quản lý các công thức toán học trên văn bản

  1. -1- B D C VÀ ĐÀO T O Đ I H C ĐÀ N NG PHAN TH L THUY N NGHIÊN C U NG D NG MATHML Đ QU N LÝ CÁC CÔNG TH C TOÁN H C TRÊN VĂN B N Chuyên ngành: KHOA H C MÁY TÍNH Mã s : 60.48.01 TÓM T T LU N VĂN TH C SĨ K THU T Đà N ng - Năm 2011
  2. -2- M Đ U 1. Lý do ch n ñ tài Hi n nay, có r t nhi u công c cho phép so n th o các công th c toán h c trên văn b n như Winword, OpenOffice.org Writer, Acrobat, WebEditor,… M i ph n m m so n th o văn b n có m t chu n lưu tr và ñư c qu n lý khác nhau. Đi u này làm cho ngư i s d ng g p nhi u khó khăn khi sao chép n i dung các công th c toán h c gi a các ng d ng và không th th c hi n yêu c u tìm ki m m t công th c toán h c trên m t ng d ng so n th o. Xu t phát t nhu c u th c t ñó, vi c nghiên c u v cách th c lưu tr , so n th o, tìm ki m các công th c toán h c và ñ c bi t nghiên c u tiêu chu n MathML trong vi c qu n lý các công th c toán h c trên văn b n có ý nghĩa khoa h c và th c ti n r t cao. Đ có ñi u ki n nghiên c u sâu hơn v MathML và ng d ng, tôi ñã ch n ñ tài t t nghi p “Nghiên c u ng d ng MathML ñ qu n lý các công th c toán h c trên văn b n”. 2. M c tiêu c a ñ tài M c tiêu chính mà ñ tài hư ng ñ n là ng d ng ngôn ng ñánh d u MathML trong ph n m m mã ngu n m ñ so n th o, qu n lý, tìm ki m công th c toán h c trên văn b n và sao chép công th c toán h c t hai ph n m m so n th o v i hai ngôn ng ñánh d u khác nhau. Đ ñáp ng m c tiêu ñã nêu, ñ tài c n gi i quy t nh ng v n ñ chính sau: Nghiên c u t ng quan v tiêu chu n lưu tr , so n th o và hi n th các công th c toán h c trên các văn b n; Nghiên c u m t s công c h tr so n th o công th c toán h c và th c tr ng tìm ki m công th c toán h c hi n nay; Nghiên c u m t ph n m m mã ngu n m ñ mô ph ng ng d ng so n
  3. -3- th o công th c, lưu tr và h tr tìm ki m trên văn b n; Xây d ng ph n m m th c hi n ch c năng sao chép công th c toán h c t hai trình so n th o. 3. Đ i tư ng nghiên c u Đ i tư ng nghiên c u khi th c hi n ñ tài là các công c h tr so n th o, các tiêu chu n lưu tr , phương pháp hi n th và tìm ki m công th c toán h c. Trong ñ tài này, tôi ch n mã ngu n m Amaya ñ tri n khai ng d ng. 4. Phương pháp nghiên c u Tìm hi u lý thuy t v so n th o, lưu tr và tìm ki m các công th c toán h c trên văn b n. Tìm hi u chu n MathML ñ ñ c t các công th c toán h c. Nghiên c u m t s công c h tr so n th o công th c toán h c. D a trên lý thuy t ñã nghiên c u, ti n hành xây d ng m t ng d ng so n th o công th c, lưu tr , h tr tìm ki m trên văn b n và sao chép công th c toán h c t ñ nh d ng khác. 5. Ý nghĩa khoa h c và th c ti n c a ñ tài D a trên cơ s lý thuy t ñã nghiên c u ti n hành xây d ng m t môi trư ng so n th o, tìm ki m và sao chép công th c toán h c trên chu n MathML trong môi trư ng Web. Đi u này có ý nghĩa h t s c thi t th c ñ i v i vi c trao ñ i tài li u khoa h c trong th i ñ i công ngh thông tin như hi n nay. K t qu c a ñ tài s góp ph n quan tr ng trong vi c x lý các công th c toán h c trong các h th ng h tr d y và h c qua m ng Internet, di n ñàn khoa h c,…
  4. -4- 6. B c c c a lu n văn Báo cáo c a lu n văn ñư c t ch c thành 3 chương. Trong chương 1, trình bày k t qu nghiên c u v các ng d ng so n th o văn b n, các công c h tr so n th o công th c toán h c và ngôn ng ñánh d u MathML. Chương 2 ñư c dành ñ mô t ng d ng, xây d ng mô hình t ng quát, ñ xu t gi i pháp xây d ng môi trư ng so n th o công th c, tiêu chu n lưu tr và tìm ki m công th c toán h c, gi i pháp sao chép công th c t OpenOffice.Org Writer sang WebBrowser Amaya. N i dung chương 3 trình bày môi trư ng tri n khai ng d ng, môi trư ng so n th o, tìm ki m công th c toán h c và sao chép công th c gi a hai trình so n th o.
  5. -5- CHƯƠNG 1. NGHIÊN C U T NG QUAN Trong th i ñ i ngày nay, máy tính ñã tr thành công c không th thi u ñ ph c v công tác so n th o văn b n. Hi n nay ph n m m h tr vi c so n th o văn b n khoa h c khá ña d ng, tuy nhiên các ph n m m này không ñ ng nh t v m t chu n so n th o công th c toán h c. Vì v y, vi c chuy n ñ i tài li u qua l i gi a các ph n m m r t khó khăn do ñó c n ph i có m t chu n th ng nh t ñ lưu tr và qu n lý. Trong chương này, tôi trình bày nh ng ngôn ng ñánh d u ñ ñ c t công th c toán h c trên các ph n m m so n th o văn b n và th c tr ng tìm ki m công th c toán h c trong các tài li u hi n nay. 1.1. SO N TH O, LƯU TR VÀ TÌM KI M CÁC CÔNG TH C TOÁN H C TRÊN VĂN B N 1.1.1. Khái ni m văn b n 1.1.2. H so n th o văn b n 1.1.3. Quá trình nh p công th c 1.1.3.1. S d ng b ng l a ch n Đơn gi n, tr c quan và d s d ng. 1.1.3.2. S d ng ngôn ng ñánh d u Vi t cú pháp l nh, ñòi h i ngư i s d ng ph i nh khi so n th o. 1.1.4. Tình tr ng s d ng ph n m m gõ công th c toán h c hi n nay Hi n nay, trên th gi i có r t nhi u ph n m m h tr quá trình gõ công th c toán h c trên văn b n. Ngoài nh ng ph n m m thương m i
  6. -6- như: Mathtype, Microsoft Equation trong b Microsoft Office,… ho c nh ng ph n m m mã ngu n m như: MathCast, Math trong OpenOffice.Org, ... ho c ph n m m phi thương m i c a Vi t Nam như MyeqText,…Nhưng m i công c ch h tr phù h p cho t ng ph n m m so n th o c th . M c khác, v i m i trình so n th o văn b n có m t chu n lưu tr khác nhau vì v y s g p r t nhi u khó khăn trong vi c h p nh t các văn b n ñư c t o ra t nhi u ng d ng khác nhau. 1.1.5. Bi u di n công th c toán h c trên máy tính 1.1.5.1. Bi u di n công th c toán h c trên Microsoft Word Ví d trong Microsoft word 2003, ñ hi n th công th c 3 x , so n th o b ng phương trình Editor thì ph i s d ng ño n mã sau: { EQ \r(3,x) } 1.1.5.2. Bi u di n công th c toán h c trên WebSite Ví d ño n mã l nh ñư c so n th o tr c ti p vào c a s so n th o c a trang web t i ñ a ch http://www.codecogs.com/latex/eqneditor.php Đ hi n th hình nh 3 x chúng ta ph i nh p ño n mã sau: \sqrt[3]{2} 1.1.5.3. Bi u di n công th c toán h c trên OpenOffice.Org Đ hi n th 3 x thì chúng ta có ño n mã tương ng sau: nroot{3}{x} 1.1.6. Th c tr ng tìm ki m công th c toán h c Công th c ñư c ñ nh d ng như m t t p tin hình nh. Vì lý do ñó, không th th c hi n quá trình tìm ki m như tìm ki m chu i thông thư ng trong văn b n thư ng s d ng. Các trình ng d ng so n th o văn b n thông d ng hi n nay chưa có công c tr giúp cho vi c tìm
  7. -7- ki m công th c toán h c. Trên Internet, Website LatexSearch có h tr tìm ki m các công th c toán h c ñư c so n th o b ng ngôn ng ñánh d u Latex. Đây là b n quy n c a MPS Technologies (Mathematical Programming System). Nhưng nh ng k t qu tìm th y ch gi i h n trên nh ng tài li u ñi n t trên máy ch SpringerLink. 1.1.7. Các ph n m m h tr so n th o công th c toán h c 1.1.7.1. ng d ng Microsoft Equation 3.0 trong b Office Microsoft Equation là ng d ng b Office hãng Microsoft bán kèm. 1.1.7.2. Ph n m m MathType Mathtype là m t ph n m m thương m i c a Design Science t o các ký hi u toán h c trên Microsoft Word, OpenOffice.Org, E-Learning, … 1.1.7.3. Ph n m m MyEqText MyEqText tích h p vào Microsoft Word như m t thanh công c . 1.2. GI I THI U M T S NGÔN NG ĐÁNH D U TOÁN H C 1.2.1. Ngôn ng ñánh d u LaTex Tex là m t h th ng s p ch ñư c vi t b i Donald E.Knuth Đ i h c Stanford vào năm 1977. Nó ph bi n trong môi trư ng hàn lâm, ñ c bi t là trong c ng ñ ng toán h c, v t lí và khoa h c máy tính. B t ñ u t năm 1980, Leslie Lamport b t ñ u t o ra h th ng so n th o văn b n ngày nay g i là LaTex d a trên ñ nh d ng c a Tex. H th ng LaTex thêm vào nh ng l nh t ng quát cho Tex và hư ng ngư i dùng vào c u trúc văn b n hơn là ñ nh d ng chi ti t. M t s l nh b c cao cho phép ngư i dùng d dàng so n ra h u h t các lo i tài li u. Ch t
  8. -8- lư ng b n in b ng LaTex r t cao. Nhưng ngư i so n th o không hình dung ra hình dáng c a tài li u trư c khi biên d ch. Bi u di n toán h c trên văn b n Ph n n i dung toán h c trong ño n văn b n có th ñư c so n th o gi a d u \(và \) hay $ và $ hay \begin{math} và \end{math}. Ví d n i dung so n th o và hi n th b ng Latex: C ng $a$ bình phương v i $b$ bình phương ñư c $c$ bình phương. Ta có th vi t dư i d ng công th c là: $c^{2} = a^{2}+b^{2}$ C ng a bình phương v i b bình phương ñư c c bình phương. Ta có th vi t dư i d ng công th c là: c = a + b 2 2 2 1.2.2. Ngôn ng ñánh d u AMS-Latex AMS-LaTeX (American Mathematical Society–LaTex) ñư c phát tri n b i H i Toán h c M . Tên g i AMS-LaTex có nghĩa là s d ng LaTex v i ph n m r ng AMS. AMS-LaTex ban ñ u ñư c vi t b i Michael Spivak và g n như ch ph bi n M . ASM-LaTex cũng là ph n m m biên d ch ra t p tin .pdf gi ng như LaTex. Trong ASM-LaTex có 2 gói là: Amsmath – gói m r ng cho Latex t o thu n l i cho quá trình t o công th c, nâng cao ch t lư ng in n và Amscls bao g m l p các tài li u và thu t toán h tr trong quá trình so n th o. Bi u di n toán h c trên văn b n Ví d n i dung so n th o và hi n th b ng AMS-LaTex: \begin{align} y &= (x+1)^2 \\ &= x^2+2x+1 \end{align}
  9. -9- 1.2.3. Ngôn ng ñánh d u HTML HTML (HyperText Markup Language - Ngôn ng ñánh d u siêu văn b n) là m t ngôn ng ñánh d u ñư c thi t k ñ t o nên các trang web. Vi c ñưa các công th c toán h c vào tài li u HTML m c dù chúng ta ñã có chu n ñ th c hi n ñi u này nhưng h u h t các trình duy t chưa h tr hay thi u các phông ch c n thi t. Do ñó, chúng ta nhìn th y công th c bi u di n không rõ ràng, r t khó khăn trong vi c th hi n ý nghĩa toán h c. Ví d so n th o và hi n th 1 − e2 trên Microsoft Office FrontPage 2003: √ 1- e2 √ 1- e2 1.3. NGÔN NG ĐÁNH D U MATHML 1.3.1. L ch s c a MathML 1.3.2. Tính năng c a MathML MathML ñư c h tr b i các ph n m m văn phòng như Microsoft Word, OpenOffice.org cùng v i các ph n m m tính toán k thu t như Maple, Mathematica, và MathCad trên các n n nhi u h ñi u hành khác nhau như Linux, Windows,… 1.3.3. Cách th c hi n th c a MathML Ưu ñi m - Không ch hi n th t t mà còn ch a ý nghĩa n i dung công th c toán h c. - D dàng s d ng trên các trình duy t. - Cho phép hi n th ngay công th c m t cách ñ p m t.
  10. - 10 - - Truy n t i ý nghĩa toán h c cho các ph n m m tính toán. Như c ñi m - C u trúc không ng n g n như Tex. - C n có công c so n th o thân thi n v i ngư i dùng. Hi n th trên browser - Trong s các trình duy t thân thi n như Mozilla Firefox, Amaya thì hi n th tr c ti p MathML. - Các trình duy t khác c n ph n m m h tr như: các phiên b n trư c Internet Explore cài thêm MathPlayer, t Internet Explore 6 cài JavaScript MathJax. 1.3.4. C u trúc c a MathML T t c các ký hi u toán ñư c ñ t trong các c p th sau: ???? Các th ký hi u toán h c ???? 1.3.5. T o công th c toán h c Ti u k t chương 1. Chương này ñã trình bày nh ng nghiên c u t ng quan v bi u di n công th c toán h c trên máy tính b ng ba trình ng d ng c th . Thông qua các ví d , chúng ta th y r ng m i ph n m m so n th o công th c ñư c ñ c t b i các ngôn ng ñánh d u khác nhau. Vì v y, vi c chuy n ñ i tài li u khoa h c gi a các ng d ng s r t khó khăn.
  11. - 11 - Các công th c hi n th trên màn hình so n th o ñ u d ng hình nh. Do ñó, công c tìm ki m không th tìm th y các công th c này như nh ng chu i văn b n. Bên c nh ñó cũng nghiên c u m t vài ngôn ng ñánh d u ñang ñư c s d ng t ñó rút ra nh ng ưu và như c ñi m c a t ng ngôn ng . Nhu c u trao ñ i và tìm ki m tài li u khoa h c t nhiên qua Internet ngày càng nhi u. Các tài li u ñăng t i lên m ng h u h t dư i d ng t p tin và công th c hi n th dư i d ng hình nh. V i vi c nghiên c u nh ng tính năng ưu vi t c a ngôn ng ñánh d u toán h c MathML trong ñ c t công th c toán h c s là ti n ñ cho vi c ñ xu t gi i pháp bài toán c a chương 2. Đó là xây d ng m t môi trư ng so n th o có h tr chu n MathML, mà ñó có th th c hi n ch c năng tìm ki m công th c toán h c và xây d ng chương trình thư ng trú ñ chuy n ñ i các ngôn ng ñánh d u khác sang ngôn ng ñánh d u MathML.
  12. - 12 - CHƯƠNG 2. Đ XU T GI I PHÁP Chương này s ñ xu t gi i pháp ñi xây d ng m t môi trư ng so n th o văn b n trong ñó có h tr chu n MathML ñ c t cho công th c toán h c. môi trư ng so n th o này ngư i s d ng có th th c hi n ch c năng tìm ki m các công th c toán h c trong văn b n. Và ñ xu t gi i pháp cho bài toán sao chép công th c toán h c t ph n m m so n th o văn b n này sang ph n m m so n th o văn b n khác và gi a hai ng d ng trên khác nhau v chu n ñ c t ngôn ng ñánh d u toán h c. 2.1. MÔ T NG D NG ng d ng g m có hai ñ i tư ng tương tác v i nhau: - Ngư i s d ng : S làm nhi m v so n th o, hi u ch nh, xoá, sao chép, dán văn b n và th c hi n l nh lưu tr dư i d ng .html do ngư i dùng ñ nh v , tìm ki m công th c toán h c trên văn b n. - Môi trư ng so n th o: S cung c p môi trư ng so n th o, chu n lưu tr và th c hi n các l nh do ngư i s d ng yêu c u. 2.2. MÔ HÌNH T NG QUÁT Trong môi trư ng so n th o này, tôi s d ng MathML ñ ñ c t công th c toán h c. - So n th o văn b n t bàn phím - Mã hóa d li u dư i b mã b t kỳ 2 1 Lưu tr văn b n dư i MathML 4 Ngư i s d ng 3 X lý văn b n chu n MathML - Tìm ki m công th c - Sao chép công th c - Hi n th n i dung công th c trên môi trư ng Web Hình 2. 1. Mô hình t ng quát c a h th ng
  13. - 13 - - (1) Ngư i dùng nh p li u t bàn phím t o các công th c toán h c trên văn b n dư i d ng chu n MathML ho c sao chép công th c toán h c t nh ng tài li u ñư c t o b i ph n m m so n th o khác. Đ làm ñư c ñi u này, nh vào m t công c trung gian chuy n ngôn ng ñánh d u ñ c t này sang ngôn ng ñánh d u MathML theo c u trúc c a môi trư ng so n th o. - (2) Lưu tr và qu n lý công th c toán h c dư i d ng chu n MathML trong văn b n. - (3) Cung c p m t công c h tr cho quá trình tìm ki m công th c toán h c trong văn b n. - (4) Ch c năng tìm ki m công th c toán h c s ph c v theo yêu c u tìm ki m c a ngư i dùng. 2.3. Đ XU T GI I PHÁP Ngày nay, Internet là m t môi trư ng trao ñ i thông tin ph bi n. Các phương pháp d a trên hình nh hi n ñang chi m ưu th làm phương ti n truy n ký hi u khoa h c trên các trang web. Tuy nhiên, ý tư ng s d ng hình nh ñ hi n th công th c toán h c có m t s như c ñi m như sau: - Hình nh không rõ nét trong vi c in n. - Ngư i s d ng không th s a ñ i phông ch c a công th c nên khó k th a trong vi c s d ng trong các ng d ng khác. - T i v m t trang ch a các công th c toán h c tương ñ i ch m. - Không th th c hi n tìm ki m công th c trên hình nh ñư c. T th c tr ng trên, tôi xin ñ xu t gi i pháp s d ng m t chu n ñ lưu tr n i dung, t o m t môi trư ng so n th o Web Brower và cách qu n lý, tìm ki m công th c toán h c trên môi trư ng này. 2.3.1. Tiêu chu n lưu tr n i dung
  14. - 14 - MathML là m t tiêu chu n m r ng c a XML ñ bi u di n các ký hi u và công th c toán h c, do ñó có th ñư c nhúng bên trong XML. Đ mô t quá trình lưu tr n i dung ñ n hi n th công th c toán h c tôi xin ñưa ra mô hình th c hi n như sau: - Cơ s d li u XHTML và MathML ñư c t o ra và lưu tr m th th ng máy ch nào ñó. - B công c nh ng ký hi u toán h c ñư c t o ra là s k t h p gi a c u trúc HTML và ngôn ng ñánh d u toán h c MathML. - Trên trình duy t WebBrowser, ngư i s d ng có th th c hi n các thao tác t o, ch nh s a và hi n th n i dung t h th ng máy ch . XHTML + Retured Mathematic create/edit interface Web MathML MathML Tool Browser database code display Hình 2. 2. H th ng lưu tr n i dung 2.3.2. H th ng so n th o 2.3.3. Gi i pháp qu n lý, tìm ki m công th c toán h c 2.3.3.1. Gi i pháp qu n lý công th c toán h c Ph n m m Amaya qu n lý n i dung dư i d ng hình cây r t rõ ràng, các c u trúc l ng vào nhau. Amaya qu n lý các th c a XHTML và MathML m t cách có c u trúc. Ví d m t công th c toán h c x = − b ± b 2 − 4ac trong môi trư ng 2a Amaya ñư c ñ nh nghĩa các tab như sau: x =
  15. - 15 - − b ± b 2 − 4 ac 2 a 2.3.3.2. Gi i pháp tìm ki m công th c toán h c - Bài toán c a gi i pháp tìm ki m Bài toán so m u chính xác: v i vi c so m u chính xác ta có th ñ t ra yêu c u bài toán như sau: Cho xâu m u P ñ dài m (P = P1P2 ... Pm – Pi là ký t ) và văn b n T ñ dài n (T = T1T2 ... Tn – Ti là ký t ). Tìm t t c các v trí xu t hi n c a m u P trong xâu T. Bài toán so m u x p x Tìm ki m x p x là bài toán tìm s xu t hi n c a m t m u trong văn b n, trong ñó s “kh p” gi a m u và xu t hi n c a nó có th ch p nh n
  16. - 16 - “k l i” (k là m t gi i h n cho trư c). Có th k ra m t vài ki u “l i”, như nh ng l i ñánh máy hay l i chính t trong h th ng trích rút thông tin,… Vì trong các h th ng tin h c khó có th tránh ñư c các “l i” nên v n ñ tìm ki m x p x càng tr nên quan tr ng. Bài toán ñư c phát bi u: Cho xâu m u P ñ dài m và văn b n T ñ dài n. Xác ñ nh ñ tương t gi a hai xâu P và T. Bài toán trên chúng ta có th ñưa v tìm xâu con chung dài nh t (hay khúc con chung dài nh t): M t xâu w là xâu con hay khúc con (substring or factor) c a xâu T n u T = uwv (xâu u, v có th r ng). Xâu w là khúc con chung c a hai xâu P, T n u w ñ ng th i là khúc con c a P và T. Khúc con chung dài nh t c a hai xâu P và T. Input: M u P ñ dài m; văn b n T ñ dài n Output: - Khúc con chung dài nh t gi a P và T - V trí chu i m u Substr trong T - Ch c năng tìm ki m trong Amaya Ch c năng tìm ki m chu i trong Amaya Amaya có th tìm ki m nh ng ký hi u ñ c bi t như d u căn, tích phân, ch s ,… nhưng không th tìm tr c ti p trên c a s hi n th c a ng d ng Amaya mà tìm qua mã ngu nXHTML. Và khi tìm th y, n i dung trên c a s hi n th không ñư c ñ i màu gi ng như tìm ki m thông thư ng mà ch ñ nh v con tr ñ u dòng c a n i dung tìm th y. Ví d minh h a: Hình 2. 5. Tìm ki m ký t a và tìm ki m ký hi u căn b c hai
  17. - 17 - Đ xu t hư ng tìm ki m các ký hi u toán h c trong Amaya Theo hình 2.5, ta th y trình duy t Amaya có s ñ ng b gi a mã ngu n và n i dung hi n th . Đi u này có nghĩa là khi làm vi c trên mã ngu n t i v trí nào thì trên c a s hi n th s ñư c th c thi t i v trí ñó, và ngư c l i. T phân tích trên, ch ng minh r ng ch c năng tìm ki m các chu i trong Amaya ñư c h tr l nh thay ñ i màu khi chu i ñư c tìm th y. Tôi xin ñ xu t b sung thêm ch c năng chuy n ñ i màu trên màn hình hi n th khi tìm ki m các ký hi u toán h c ñ c bi t trong mã ngu n. Mã ngu n m Amaya sau khi biên d ch có ñ n 11.474 t p tin, trong ñó t p tin “HTMLactions.c” qu n lý s tương quan gi a n i dung hi n th và mã ngu n. Trong t p tin này ch a hàm “void SynchronizeSourceView (NotifyElement *event)” giúp chúng ta có th th c hi n vi c chuy n ñ i màu ñ i v i các ký hi u ñ c bi t. Sau ñây là m t ño n mã trong hàm void SynchronizeSourceView (NotifyElement *event)” ch a n i dung b sung. /* record the highlighted element */ HighlightDocument = otherDoc; HighlightElement = otherEl; HighLightAttribute = attr; /* n u nh ng element nào không ph i là text thì s select nh ng element ñó – Ch c năng này dùng ñ i màu nh ng ký hi u toán h c và lo i tr nh ng th là Text*/ if (TtaGetTextLength(otherEl)
  18. - 18 - 2.3.4.2. Làm vi c v i công th c trên Amaya Amaya là m t trình duy t Web, vì v y m i d li u ñư c t o ra ph i tuân th theo ñ nh d ng c a m t trang XHTML. Amaya b t ñ u như là m t trình biên t p HTML + CSS sau ñó h tr XML, MathML và SVG (Scalable Vector Graphics). SVG thu c tiêu chu n m ñư c qu n lí b i t ch c W3C, là m t ngôn ng ñánh d u thu c XML dùng cho ng d ng trên các trang m ng ñ miêu t các hình nh ñ h a véc tơ hai chi u tĩnh và ñ ng. Amaya có kh năng t sinh th khi sao chép d li u d ng chu i t ng d ng khác vào trình duy t nhưng không th t sinh ra các th SVG khi sao chép d li u hình nh. 2.3.4.3. Đ xu t gi i pháp sao chép công th c t OpenOffice.Org sang trình duy t Amaya Trong OpenOffice.Org Writer có h tr ch c năng Save Copy As – dùng ñ lưu công th c thành t p tin m i d ng .mml. T p tin này ch a các th c a ngôn ng ñánh d u MathML tương ng v i công th c v a ghi. Nhưng c u trúc ño n mã không phù h p v i quy ñ nh c a Amaya. Hình 2.7. Sơ ñ quá trình chuy n ñ i d li u trong ClipBoard
  19. - 19 - Thu t toán chuy n ñ i t ngôn ng ñánh d u trong OpenOffice.Org Math thành ngôn ng ñánh d u MathML theo c u trúc Amaya. - Ý tư ng: Thu t toán th c hi n chuy n ñ i d li u chu i t ngôn ng ñánh d u OpenOffice sang ngôn ng ñánh d u MathML theo ñ nh d ng c u trúc c a Amaya. + D li u ñ u vào: Ngôn ng ñánh d u ñ c t công th c căn b c hai trong OpenOffice.Org. + D li u ñ u ra: Ngôn ng ñánh d u ñ c t căn b c hai theo MathML, ñ nh d ng theo c u trúc c a Amaya. - Cài ñ t thu t toán: Theo m c ñ nh thì khi chúng ta th c hi n thao tác sao chép, m i d li u s ñư c lưu vào ClipBoard c a h th ng. ng d ng thư ng trú Math Clipboard Converter s l y d li u t ClipBoard b ng l nh “instr := Clipboard.AsText;”, sau ñó x lý theo sơ ñ thu t toán ñ chuy n ñ i ngôn ng ñánh d u trong OpenOffice.Org Math sang ngôn ng ñánh d u MathML theo c u trúc Amaya. Sau khi th c hi n xong vi c chuy n ñ i, d li u cu i cùng s lưu l i vào ClipBoard c a h th ng b ng l nh “Clipboard.AsText :=convert(instr);” Ti u k t chương 2. Amaya là m t ph n m m mã ngu n m , mi n phí ñư c biên d ch trong môi trư ng Microsoft Visual C++ 6.0 trên h ñi u hành Windows. Chương này ñã ñ xu t môi trư ng so n th o công th c toán h c Amaya v i chu n MathML. Trên trình duy t Amaya, chúng ta có th th c hi n ch c năng tìm ki m các ký hi u toán h c thông qua mã ngu n. Nhưng ch c năng tìm ki m này ch ñ nh v con tr t i dòng văn b n trên c a màn hình hi n th khi tìm th y.
  20. - 20 - Vì lý do trên, tôi ñ xu t gi i pháp b sung thêm ch c năng ñ i màu các ký hi u toán h c cho ch c năng tìm ki m gi ng như tìm ki m chu i trong văn b n. Bên c nh ñó tôi cũng ñ xu t gi i pháp sao chép ngôn ng ñánh d u ñ c t công th c toán h c trong ng d ng OpenOffice.Org Math sang ngôn ng ñánh d u ñ c t công th c toán h c MathML theo c u trúc c a Amaya thông qua Clipboard.
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2