Xem điểm thi Đại Học 2010 miễn phí tại Học vui
Advanced Search

New Reply

Author Topic: Thêm chức năng gõ công thức toán giống như MathType cho SMF  (Read 1117 times)

0 Members and 1 Guest are viewing this topic.

  • dpsangcva

    • Guest


Từ nay, việc gõ công thức toán học vào diễn đàn SMF không còn là điều khó khăn nữa. Sau một thời gian tìm hiểu, dpsangcva đã giải quyết được vấn đề về công thức toán học cho diễn đàn SMF để chúng ta có thể gõ được công thức toán một cách thuận tiện và hiệu quả nhất.

Để gõ được công thức toán học một cách nhanh chóng vào diễn đàn SMF chúng ta phải nhúng TeX cho diễn đàn và tích hợp cho nó bộ gõ công thức CodeCods Equation Editor (bảng gõ công thức giống như MathType)

Sau đây là cách làm cho vấn đề được nêu ra

1. Nhúng LaTeX cho diễn đàn SMF của chúng ta
a. Cách nhúng bằng gói tải từ máy chủ simplemachines.org
    + Tải  mimetex1.01_.zip  về từ trang Tag LaTeX (Mimetex) Public
       (gói này phù hợp với các version SMF 1.1.4, 1.1.7, 2.0 Beta 4)

    + Sau đó vào phần Admin --> Packages --> Download Packages --> Package to Upload: --> chọn file mới tải về được --> Upload --> Apply mod --> Install

Vậy là đã nhúng xong MimeTeX cho SMF

Bạn nhớ lưu ý xem gói mimetex1.01_.zip tải về có phù hợp version đang dùng không. Nếu không phù hợp bạn phải xử lý thủ công theo cách dưới đây

b. Cách nhúng thủ công (tác động vào mã nguồn SMF)
Lưu ý: dpsangcva đang dùng SMF 1.1.8 nên đây là cách dùng cho SMF 1.1.8, không biết là nó có dùng được cho các version khác hay không nhé. Tuy vậy, nếu bạn dùng các version khác thì có thể vào trang Tag LaTeX (Mimetex) Public, chọn version trong ô Manual Install Instructions for SMF (ở bên phải màn hình) và nhấn vào nút Parse để xem cách nhúng thủ công cho phiên bản của bạn.

Cách làm cho SMF 1.1.8:

Mở file ./Sources/Subs.php và tìm đến đoạn
Code: [Select]
        ),
         array(
            'tag' => 'white',
            'before' => '<span style="color: white;">',
            'after' => '</span>',
         ),
Thêm đoạn mã sau đây vào phía sau của nó
Code: [Select]
           array(
            'tag' => 'tex',
            'type' => 'unparsed_content',
            'content' => '<img src="http://www.forkosh.dreamhost.com/mimetex.cgi?$1" alt="$1" border="0" align="absmiddle" />',
         ),

Mở file ./Themes/default/Post.template.php và tìm đến đoạn
Code: [Select]
        'list' => array('code' => 'list', 'before' => '\n', 'after' => '\n
\n', 'description' => $txt[261]),
Thêm đoạn mã sau đây vào phía trước của nó
Code: [Select]
                       'tex' => array('code' => 'tex', 'before' => '[tex]', 'after' => '[/tex]', 'description' => $txt['latex']),
Mở file ./Themes/default/languages/Modifications.english-utf8.php và tìm đến mã (dòng cuối cùng)
Code: [Select]
?>thêm vào trước nó đoạn mã
Code: [Select]
//- LaTeX
$txt['latex'] = 'LaTeX';

Mở file ./Themes/default/languages/Modifications.vietnamese-utf8.php và tìm đến đoạn mã
Code: [Select]
?>thêm vào trước nó đoạn
Code: [Select]
//- LaTeX
$txt['latex'] = 'LaTeX';


Upload tập tin ảnh tex.gif http://www.99-host.com/free/images/2oq14r02iv7u1v1a92y.gif vào thư mục ./Themes/default/images/bbc và thư mục ./Themes/theme đang xài/images/bbc

thế là xong


2. Tích hợp bộ gõ công thức codecogs equation editor vào diễn đàn
Bước 1. Tải file nén tex.zip này về (trong đây dpsangcva đã Việt hoá rất nhiều và xoá bớt logo của codecogs đi cho nhẹ).

Bước 2. Upload và unzip nó lên host của diễn đàn đang xài (tốt nhất là ở root của host - nhớ lưu ý đường dẫn để chút nữa sử dụng)

Bước 3. Tải file ảnh equation.gif về và upload lên thư mục /Themes/default/images/bbc/
(sau khi tải file ảnh này về nhớ đổi tên lại là equation.gif)

Bước 4. Bây giờ chỉ cần chỉnh sửa file /Themes/default/Post.template.php 1 chút là được

Đối với phiên bản 1.1.9 trở lại


Tìm đến đoạn
Code: [Select]
echo '
            </td>
         </tr>';
   }
   // Now start printing all of the smileys.
rồi thêm vào ngay trước đó đoạn code
Code: [Select]
echo '<a href="http://dpsang.07x.net/tex/editor.php?target=testbox&phpBB" onclick="window.open(this.href, 'shoutbox', 'resizable=yes,status=yes,scrollbars=yes,width=650,height=420'); return false;"><img onmouseover="bbc_highlight(this, true);" onmouseout="if (window.bbc_highlight) bbc_highlight(this, false);" src="http://dpsang.07x.net/Themes/default/images/bbc/equation.gif" align="bottom" width="23" height="22" alt="DragMath" title="Chèn công thức toán học" style="background-image: url(http://dpsang.07x.net/Themes/default/images/bbc/bbc_bg.gif); margin: 1px 2px 1px 1px;" /></a>';
Lưu ý: trong đoạn code ở trên, cần sửa link của 3 tập tincho đúng với link của nó trong host của bạn

Cuối cùng tìm đoạn code
Code: [Select]
<textarea class="editor"và thêm vào ngay sau nó đoạn code
Code: [Select]
id="testbox"

Đối với phiên bản 2.0

Cần chỉnh sửa file /Themes/default/Post.template.php như sau

Tìm đến đoạn
Code: [Select]
  // Show the actual posting area...
  
   if ($context['show_bbc'])
   {
      echo '
                     <tr>
                        <td align="right"></td>
                        <td valign="middle">
và thêm vào ngay sau đó đoạn
Code: [Select]
<a href="http://localhost/2.0/tex/editor.php?target=message&phpBB" onclick="window.open(this.href, 'shoutbox', 'resizable=yes,status=yes,scrollbars=yes,width=650,height=420'); return false;"><img onmouseover="bbc_highlight(this, true);" onmouseout="if (window.bbc_highlight) bbc_highlight(this, false);" src="http://localhost/2.0/Themes/default/images/bbc/equation.gif" align="bottom" width="23" height="22" alt="equation" title="Chèn công thức toán học" style="background-image: url(http://localhost/2.0/Themes/default/images/bbc/bbc_bg.gif); margin: 1px 2px 1px 1px;"/>
Lưu ý: trong đoạn code trên nhớ sửa link của 3 file: cho chính xác với host bạn đang xài

Vậy là xong, bây giờ bạn có thể soạn thử một bài viết có dùng công thức toán học để tận hưởng thành quả.


bookmark_facebook    bookmark_google    bookmark_twitter    bookmark_yahoo    bookmark_baihay    bookmark_linkhay    bookmark_tagvn    bookmark_zingme

« Last Edit: November 08, 2009, 10:53:14 AM by nvcnvn »


O`, đây là một mod rất hửu ích nhất là cho các forum dành cho việc học tập!


Cám ơn các bạn rất nhiều, thật ra mình củng muốn tích hợp các chức năng này vào diễn đàn lây rồi, chỉ còn đợi SMF v 2 ra đời bãn final thì ngay sau khi update mình sẽ thêm vào diễn đàn ngay! Sở dĩ không làm ngay bây giờ là vì mình sợ các trục trặc sẽ diễn ra trong quá trình update khi các file nguồn bị thay đổi quá nhiều do hack mod!

Re: Thêm chức năng gõ công thức toán giống như MathType cho SMF
« Reply #3 on: August 12, 2009, 02:30:19 PM »

Nhờ các pác xem lại đoạn code dùng để Tích hợp bộ gõ công thức codecogs equation editor. Cả hai đoạn danh cho smf 1.19 trở lại và smf 2.0 đều bị lỗi. Em hok phải là dân chuyên nghiệp nên hok bít sửa thía nào cả

Re: Thêm chức năng gõ công thức toán giống như MathType cho SMF
« Reply #4 on: August 12, 2009, 03:34:48 PM »

Nhờ các pác xem lại đoạn code dùng để Tích hợp bộ gõ công thức codecogs equation editor. Cả hai đoạn danh cho smf 1.19 trở lại và smf 2.0 đều bị lỗi. Em hok phải là dân chuyên nghiệp nên hok bít sửa thía nào cả
Bộ gõ Tag LaTeX (Mimetex) Public có thể dùng cho phiên bản 2.x đó bạn. Sau khi cài mod này, chế biến một chút:
Vào trang: http://latex.codecogs.com/editor.php để soạn thảo
Copy nội dung soạn thảo và đạt trong thẻ [text]
http://custom.simplemachines.org/mods/index.php?mod=1111

tạm thời chửa cháy, để xem chút cái phần kia!
Chứ mình đã chạy thử, mọi chuyện ok, hay là bạn quên sử link lại!?!?
« Last Edit: August 12, 2009, 03:37:59 PM by nvcnvn »


link http://dpsang.zxq.net/tex.zip ko down load được cập nhật lại link giúp mình với



mod đó không hay, click vào ra mỗi đoan
Code: [Select]
[tex][/tex] thui có ra khung soạn thảo đâu.
mà khi dùng nó hiện lên thông báo này:

chẳng thấy công thức toán học ở đâu, đang định test cách 2 xem thế nào nhưng down không được mới chán
« Last Edit: March 09, 2010, 04:28:18 PM by quocbinhvip »

  • geoman

    • Guest

2. Tích hợp bộ gõ công thức codecogs equation editor vào diễn đàn


Đối với phiên bản 3.0   -/ -/ -/ -/



New Reply
 

With Quick-Reply you can write a post when viewing a topic without loading a new page. You can still use bulletin board code and smileys as you would in a normal post.

Name: Email:
Verification:
Một với 1 là mấy!? (trả lời = chử, VD: chín):

Thích hợp với các trình dyệt:

Firefox - Opera- Google Chrome

Diễn đàn Lê Thánh Tôn

Dạy học trực Tuyến Bacgiang gifted high school 4upro.info Driver4Vn