Using Khmer Unicode with LaTEX/XeLateX



មាតិកា \ ផ្សេងៗ \…

I) What is LaTEX \LaTeX ?

LaTeXis a document markup language and document preparation system for the TeX typesetting program.

LaTeX is most widely used by mathematicians, scientists, philosophers, engineers, scholars in academia and the commercial world, and other professionals.

It is free, but can produce a very beautiful documents.!!!

II) Installation

1) Install Khmer Opentype font: Khmer OS,…. If you don’t have it yet.

http://www.khmeros.info/drupal/?q=en/download/fonts

2) Install MikTex2.7: If you don’t have it yet. Get free download from

http://miktex.org/2.7/Setup.aspx

3) Download w32tex.rar by Akira Kakuto from:

Part1: http://www.mediafire.com/?ptayy47v1hn

Part2: http://www.mediafire.com/?dthmeqtmzmz

Part3: http://www.mediafire.com/?j0nnkmmcz0m

Part4: http://www.mediafire.com/?zcxmgiwemtj

Part5: http://www.mediafire.com/?bfx4xjxym3j

4) Extract w32tex.rar to “c:\w32tex ” having that c:\w32tex \ setup.bat.

5) Double click on “c:\w32tex \ setup.bat”

III) Using

1) Open Notepad.exe

2) On the menu bar of notepad: Format > Font

Font = Khmer OS

Font size=12

Font style = normal

2) Entering text as below

\documentclass[12pt,a4paper]{book}

\usepackage[utf8x]{inputenc}

\usepackage{fontspec}

\setmainfont [Script=Khmer]{Khmer OS}

\newfontscript{Khmer}{khmr}

\newfontlanguage{Khmer}{KHM}

\XeTeXlinebreaklocale “KHM”   % use to break line

%——Translate some label into khmer———–

%——បក​ប្រែ​ជា​ខ្មែរ—————

\def\chaptername {ជំពូក}

\def\contentsname{មាតិកា}

\def\refname{បង្អែក}

\def\abstractname{សង្ខេប}

\def\bibname{ឯកសារ​ពិគ្រោះ}

\def\prefacename{អារម្ភកថា}

\def\appendixname{ឧបសម្ព័ន្ធ}

\begin{document}

សួស្តី

\end{document}

Save as

File name= Trial.tex

Save as types= All files

Encoding =UTF-8

3) Create a .bat file name it “Compile.bat” save it in the same folder as “Trial.tex”

Edit the content of “Compile.bat” as :

Save and close this .bat file. Double click it

You will receive a pdf file.

IV) Another example

source file: book2.zip> Extract with WinZip or WinRar.

here is the output: https://svichet.files.wordpress.com/2008/06/book2.pdf


មាតិកា \ ផ្សេងៗ \…

About វិចិត្រ

ជា​ខ្មែរ​ម្នាក់ ជា​មនុស្ស​ម្នាក់ ធម្មតា​ដូច​មនុស្ស​ឯ​ទៀត​ដែរ
អត្ថបទនេះត្រូវបាន​ផ្សាយក្នុង វប្បធម៌​ទូទៅ។ ប៊ុកម៉ាក តំណភ្ជាប់​អចិន្ត្រៃ​យ៍​

27 Responses to Using Khmer Unicode with LaTEX/XeLateX

  1. ការីម និយាយថា៖

    Dear Vichet,

    I followed what you have instructed in the block, but I didn’t get the pdf file, i.e. no executive process. So, what happens? and How can I do. Looking forward to hearing from you soon. Would you mind if you can response via my email: hamkarim@gmail.com.

    With best regards,

    Karim, from HK

  2. វិចិត្រ និយាយថា៖

    Perhap you need to install: Ghostscript.

    You need 2 files: gsv49w32.exe and gs861w32.exe

    1) Goto

    http://www.ctan.org/tex-archive/support/ghostscript/ghostgum/

    download file:

    gsv49w32.exe

    2) Goto

    http://sourceforge.net/project/showfiles.php?group_id=1897&package_id=108733

    download:gs862w32.exe

    All this are for winXP only.

    For winvista, perhap, you need all this file but serie 64bit.

    Please let me know if this can help you.

  3. Chenda និយាយថា៖

    Thanks for a very useful blog. I could not do it when i did my master thesis. So, some part were written in Microsoft word, some was in Latex.

  4. វិចិត្រ និយាយថា៖

    i just get interested in this tools recently.. before i hate this Latex so much; difficult to use…
    but since i everybody in my Lab use it; i start to practise it, and see the result; i said wow…

  5. jaja និយាយថា៖

    Hi, I’m thankful for this site. I’ve learned quite useful things about Khmer font.
    I’m a beginner in Xelatex using windows. But I’m right now having problems with hyphenation.
    I’m wondering if you may kindly experience this same problem.

    Thanks a lot

  6. som dara និយាយថា៖

    ឡាតិច​ជាភាសាខ្មែរពិតជាមានទំរង់ស្អាតមែន។​ ខ្ងុំទើបតែចេះប្រើវា។ អរគុណបង​វិចិត្រ ដែលបានចែករំលែកវាដល់អ្នកសិក្សា៕
    បើមិនយល់ទោះទេ តើបងអាចប្រាប់ខ្ញុំ ពីរបៀបប្រើឡាតិចដើម្បីសរសេរសៀវភៅជាភាសាខ្មែរបានទេ?
    ខ្ញុំចូលចិត្តសរសេរសៀវភៅគណិតវិទ្យា។ ខ្ញុំសាកល្បងដែរតែហាក់ដូចជាមិនល្អទាល់តែសោះ!
    សង្ឃឹមថាបងនឹងណែនាំ…
    ពីខ្ញុំដារ៉ា

  7. som dara និយាយថា៖

    អរគុណបងដែលប្រាប់,​ និយាយអញ្ជឹងខ្ញុំមានចំងល់មួយទៀតលើ​ command ដើម្បើសរសេរ
    ទ្រឹស្តីបទ តាមសៀវភៅ ឡាតិចជាភាសាអង់គ្លេសគឺវាមានទំរង់ល្អណាស់, តើយើងអាច
    \begin{theorem}
    \end{theorem}
    យ៉ាងដូចម្តេចទៅ ដើម្បីចេញជាទ្រឹស្តីបទមានទំរង់យ៉ាងស្អាតដូចអង់គ្លេសដែរ?

  8. dara និយាយថា៖

    Dear Brother. Vichet
    Excuse me, I cannot download source: book.doc maybe it has broken which you had uploaded. Would you mind if I need it again by my email: som_dara007@yahoo.com
    ?
    Thank you in higher!
    Sincerely,
    Som Dara

  9. nathanwells និយាយថា៖

    I would be interested in seeing the source book.doc as well – it is 404 not found.

    Thanks,
    Nathan

  10. nathanwells និយាយថា៖

    Great thanks!

    Have you ever messed around with the microtype package http://www.tex.ac.uk/ctan/macros/latex/contrib/microtype/microtype.pdf in order to make Khmer look good using justified paragraph alignment?

    I am just starting to get into LaTeX and the microtype package was one of the reasons – I haven’t tried it with Khmer Unicode yet though.

    Also, have you been able to use Khmer numbering for page numbers and such?

    Thanks,
    Nathan

  11. nathanwells និយាយថា៖

    Perhaps this style for Thai would help: http://thailatex.wordpress.com/2010/07/12/thai-number-for-xetex/

    Do you think it could be converted to do Khmer numbering?

  12. MAM MARETH និយាយថា៖

    សួស្តីបងប្រុសវិចិត្រ.

    ខ្ញុំឈ្មោះ ម៉ារ៉េត ជាគ្រូនៅដេប៉ាតឺម៉ង់គណិតវិទ្យា សាកល.ភូមិន្ទភ្នំពេញ។
    ខ្ញុំមានបញ្ហាទាក់ទងនឹងសរសេរ អក្សរខ្មែរមិនចេញ នៅក្នុង ការបង្កើត slide ក្នុង latex តាម
    \documentclass{beamer}។ ការអនុវត្តនៅក្នុងសៀវភៅធម្មតា run វាចេញ, ហេតុអ្វីក្នុង \documentclass {beamer} run វាអត់ចេញ។
    សូមបងមេត្តាជួយសំរួលអោយផង។

    អរគុណ!

    • វិចិត្រ និយាយថា៖

      សូម​អធ្យាស្រ័យ​ផង ខ្ញុំ​អត់​ចេះ beamer ទេ។ ម្យ៉ាង​ពេល​នេះ​ ទុក​ LaTEX ចោល មិន​ដែល​បាន​ប្រើទៀត​សោះ ដូច្នេះ គ្មាន​ការ​ស្រាវជ្រាវ​ថ្មី​បន្ថែម​ពី​នេះ​ទេ 😀

    • អូល សាយ និយាយថា៖

      ជួនចំពោះបង Mam Mareth និង​ អ្នកទាំងអស់គ្នា

      ខ្ញុំក៏ជាអ្នកចូលប្រើប្រាស់ LaTeX ម្នាក់ដែរ។
      ខ្ញុំបានរកឃើញដំណោះស្រាយ​ដែលឆ្លើយតបទៅនឹងសំនួរ​របស់បង​​ Mam Mareth។

      អ្នកអាចសាកល្បង TeX ដែលខ្ញុំសរសេរ​រួចដោយគ្រាន់តែ Download Files ខាងក្រោមនេះ
      https://www.dropbox.com/sh/mqn9zu4heyb596b/boIjayTLrO
      សម្គាល់ៈ​ អ្នកចាំបាច់ត្រូវ Run beamerkhmer.tex ដោយប្រើ​ XeLaTeX.exe

      • Douch Makara និយាយថា៖

        អរគុណដែលបានចែករំលែកចំណេះដឹងដ៏មានប្រយោជន៏នេះ។ ប៉ុន្តែប្រសិនបើខ្ញុំចង់ប្រើ Beamertheme វិញ តើគួរកែកូដដូចម្តេចខ្លះ?​ តើអាច Set Khmer font បន្ថែមទៀតបានទេ? សូមអរគុណ!

      • khtug និយាយថា៖

        នេះជា TeX ខ្លីមួយ

        \documentclass[xetex,serif]{beamer}
        \usetheme{Madrid}
        \usepackage{fontspec}
        \setmainfont[Script=Khmer]{Khmer OS}
        \XeTeXlinebreaklocale"KHM"

        \newcommand{\khmuol}{\fontspec[Script=Khmer]{Khmer OS Muol}\selectfont}

        \def\khbok{\fontspec[Script=Khmer]{Khmer OS Bokor}\selectfont}

        \begin{document}

        \begin{frame}
        \frametitle{\khmuol ចំណងជើង}
        ខ្លឹមសារ\khbok នៃអត្ថបទខ្លីមួយ\normalfont និយាយ​អំពី​ការ​ប្ដូរ​ពុម្ភ​អក្សរ​។
        \end{frame}

        \end{document}

  13. អូល សាយ និយាយថា៖

    \documentclass[a4paper]{book}
    \usepackage{amsmath}
    \usepackage{amsfonts}
    \usepackage{amssymb}
    \usepackage{amsthm}
    \usepackage{blindtext}
    \usepackage{fontspec}
    \setmainfont[Script=Khmer]{Khmer OS}
    \XeTeXlinebreaklocale “KHM”
    \makeatletter
    \def\@khmernumer#1{\expandafter\@@khmernumer\number#1\@nil}
    \def\@@khmernumer#1{%
    \ifx#1\@nil
    \else
    \char\numexpr#1+”17E0\relax
    \expandafter\@@khmernumer\fi}
    \def\khmercounter#1{\expandafter\@khmernumer\csname c@#1\endcsname}
    \def\thainumeral#1{\@@khmernumer#1\@nil}
    %\makeatother
    %\newcounter{pippo}

    \def\contentsname{មាតិការ}
    \def\partname{ផ្នែក}
    \def\thepart{\khmercounter{part}}
    \def\theequation{\khmercounter{equation}}
    \def\chaptername{ជំពូក}
    \def\thechapter{\khmercounter{chapter}}
    \def\thesection{\khmercounter{section}}
    \def\thesubsection{\khmercounter{section}.\khmercounter{subsection}}
    \def\theenumerate{\khmercounter{enumerate}}
    \def\thepage{\khmercounter{page}}

    \newtheorem{theorem}{ទ្រឹស្ដីបទ}[chapter]
    \newtheorem{lemma}[theorem]{បទគន្លឹះ}
    \newtheorem{corollary}[theorem]{ស្វ័យស័ត្យ}
    \newtheorem{remark}{សម្គាល់}[chapter]
    \newtheorem{exercise}{លំហាត់}[chapter]
    \def\theremark{\khmercounter{chapter}.\khmercounter{remark}}
    \def\theexercise{\khmercounter{chapter}.\khmercounter{exercise}}
    \def\thetheorem{\khmercounter{chapter}.\khmercounter{theorem}}
    \def\proofname{សម្រាយ}

    \begin{document}
    \tableofcontents

    \part{ចំណងជើងផ្នែក}
    \chapter{ជំណងជើងជំពូក}
    \section{ផ្នែក}
    \subsection{ផ្នែករង}
    \begin{lemma}
    ខ្លឹមសារ
    \end{lemma}
    \begin{theorem}
    ខ្លឹមសារ
    \end{theorem}
    \begin{corollary}
    ខ្លឹមសារ
    \end{corollary}
    \begin{theorem}
    ខ្លឹមសារ
    \end{theorem}
    \begin{theorem}
    ខ្លឹមសារ
    \end{theorem}
    \begin{proof}
    ខ្លឹមសារ
    \end{proof}
    \begin{remark}
    ខ្លឹមសារ
    \end{remark}
    \begin{exercise}
    ខ្លឹមសារ
    \end{exercise}
    \begin{exercise}
    ខ្លឹមសារ
    \end{exercise}
    \begin{exercise}
    ខ្លឹមសារ
    \end{exercise}
    \begin{exercise}
    ខ្លឹមសារ
    \end{exercise}

    នេះ​គឺជា​អត្ថបទ​ធម្មតា​មួយ​ដែល​គ្នាន​អត្ថន័យ​អ្វី​ទាល់​តែ​សោះ​។ តែ​ទោះ​ជាយ៉ាង​ណា​ក៏​ដោយ​%
    ក៏​ត្រូវ​បាន​គេ​សរសេរ​​ដើម្បី​បង្ហាញ​ពី​ការសរសេរ​អត្ថបទ​ជា​ភាសារ​ខ្មែរ​។

    \chapter{ជំណងជើងជំពូក}
    \section{ផ្នែក}
    \subsection{ផ្នែករង}
    \begin{lemma}
    ខ្លឹមសារ
    \end{lemma}
    \begin{theorem}
    ខ្លឹមសារ
    \end{theorem}
    \begin{corollary}
    ខ្លឹមសារ
    \end{corollary}
    \begin{theorem}
    ខ្លឹមសារ
    \end{theorem}
    \begin{theorem}
    ខ្លឹមសារ
    \end{theorem}
    \begin{proof}
    ខ្លឹមសារ
    \end{proof}
    \begin{remark}
    ខ្លឹមសារ
    \end{remark}
    \begin{exercise}
    ខ្លឹមសារ
    \end{exercise}
    \begin{exercise}
    ខ្លឹមសារ
    \end{exercise}
    \begin{exercise}
    ខ្លឹមសារ
    \end{exercise}
    \begin{exercise}
    ខ្លឹមសារ
    \end{exercise}

    \chapter{ចំណងជើងជំពូក}
    \section{ផ្នែក}
    \subsection{ផ្នែករង}
    \Blindtext
    \Blindtext
    \subsection{ផ្នែករង}
    \Blindtext
    \Blindtext
    \chapter{ចំណងជើងជំពូក}
    \section{ផ្នែក}
    \subsection{ផ្នែករង}
    \Blindtext
    \Blindtext
    \subsection{ផ្នែករង}
    \Blindtext
    \Blindtext

    \part{ចំណងជើងផ្នែក}
    \chapter{ចំណងជើងជំពូក}
    \section{ផ្នែក}
    \subsection{ផ្នែករង}
    \Blindtext
    \Blindtext
    \subsection{ផ្នែករង}
    \Blindtext
    \Blindtext
    \chapter{ចំណងជើងជំពូក}
    \section{ផ្នែក}
    \subsection{ផ្នែករង}
    \Blindtext
    \Blindtext
    \subsection{ផ្នែករង}
    \Blindtext
    \Blindtext

    \end{document}
    % Reference
    % http://tex.stackexchange.com/questions/87131/numbering-sections

  14. dalinmath និយាយថា៖

    Hello, professor!can you upload part 2 of w32tex.rar by Akira Kakuto again?this link (Part2: http://www.mediafire.com/?dthmeqtmzmz) had been broken.
    thanks!

  15. idev kashy និយាយថា៖

    I am using LaTex and ShareLaTeX. I don’t know the way how to use Khmer Unicode with them.
    I tried with all mentioned methods above but they’re not working.

    Thanks!

ឆ្លើយ​តប

Fill in your details below or click an icon to log in:

ឡូហ្កូ WordPress.com

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី WordPress.com របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

រូប Twitter

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី Twitter របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

រូបថត Facebook

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី Facebook របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

Google+ photo

អ្នក​កំពុង​បញ្ចេញ​មតិ​ដោយ​ប្រើ​គណនី Google+ របស់​អ្នក​។ Log Out / ផ្លាស់ប្តូរ )

កំពុង​ភ្ជាប់​ទៅ​កាន់ %s