From 3a0bb67b63884e39075b2655dab7169ee93c1e54 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Thu, 26 Oct 2023 18:26:06 -0400 Subject: texpdf, cjk issues not resolved - font rendition bugs where tested --- lib/sisu/texpdf_format.rb | 75 ++++++++++++++++++++++++++++++++++++----------- 1 file changed, 58 insertions(+), 17 deletions(-) (limited to 'lib/sisu/texpdf_format.rb') diff --git a/lib/sisu/texpdf_format.rb b/lib/sisu/texpdf_format.rb index 80fe301e..9b250944 100644 --- a/lib/sisu/texpdf_format.rb +++ b/lib/sisu/texpdf_format.rb @@ -720,28 +720,65 @@ module SiSU_TeX_Pdf case @tex2pdf when /xe/ if @md.opt.lng =~/(?:zh|ja|ko)/ - <<-WOK + if @md.opt.lng =~/zh/ + <<-WOK +\\usepackage{xeCJK} +\\setCJKmainfont{Noto} +\\setCJKmainfont{Noto Sans CJK TC} +\\setCJKsansfont{Noto Sans CJK TC} +\\setCJKmonofont{Noto Sans Mono CJK TC} \\setmainlanguage{#{tex_head_lang[:mainlang]}} \\setotherlanguage{english} -\\setmainfont{#{texpdf_fontface_cjk}} -\\setotherfont{#{texpdf_fontface}} -\\setmonofont[Scale=0.85]{#{texpdf_fontface_mono}} - WOK +% \\setmainfont{#{texpdf_fontface_cjk}} +% \\setotherfont{#{texpdf_fontface}} +\\setotherfont{Noto Sans} +% \\setmonofont[Scale=0.85]{#{texpdf_fontface_mono}} + WOK + elsif @md.opt.lng =~/ja/ + <<-WOK +\\usepackage{xeCJK} +\\setCJKmainfont{Noto} +\\setCJKmainfont{Noto Sans CJK JP} +\\setCJKsansfont{Noto Sans CJK JP} +\\setCJKmonofont{Noto Sans Mono CJK JP} +\\setmainlanguage{#{tex_head_lang[:mainlang]}} +\\setotherlanguage{english} +% \\setmainfont{#{texpdf_fontface_cjk}} +% \\setotherfont{#{texpdf_fontface}} +\\setotherfont{Noto Sans} +% \\setmonofont[Scale=0.85]{#{texpdf_fontface_mono}} + WOK + elsif @md.opt.lng =~/ko/ + <<-WOK +\\usepackage{xeCJK} +\\setCJKmainfont{Noto} +\\setCJKmainfont{Noto Sans CJK KR} +\\setCJKsansfont{Noto Sans CJK KR} +\\setCJKmonofont{Noto Sans Mono CJK KR} +\\setmainlanguage{#{tex_head_lang[:mainlang]}} +\\setotherlanguage{english} +% \\setmainfont{#{texpdf_fontface_cjk}} +% \\setotherfont{#{texpdf_fontface}} +\\setotherfont{Noto Sans} +% \\setmonofont[Scale=0.85]{#{texpdf_fontface_mono}} + WOK + else puts "lang error" + end elsif (tex_head_lang[:mainlang] == "english" \ && (tex_head_lang[:otherlang] == "english" \ || tex_head_lang[:otherlang] == "" \ || tex_head_lang[:otherlang].length == 0)) <<-WOK -\\setmainlanguage{#{tex_head_lang[:mainlang]}} -\\setmainfont{#{texpdf_fontface}} -\\setmonofont[Scale=0.85]{#{texpdf_fontface_mono}} +% \\setmainlanguage{#{tex_head_lang[:mainlang]}} +% \\setmainfont{#{texpdf_fontface}} +% \\setmonofont[Scale=0.85]{#{texpdf_fontface_mono}} WOK else <<-WOK -\\setmainlanguage{#{tex_head_lang[:mainlang]}} -\\setotherlanguage{english} -\\setmainfont{#{texpdf_fontface}} -\\setmonofont[Scale=0.85]{#{texpdf_fontface_mono}} +% \\setmainlanguage{#{tex_head_lang[:mainlang]}} +% \\setotherlanguage{english} +% \\setmainfont{#{texpdf_fontface}} +% \\setmonofont[Scale=0.85]{#{texpdf_fontface_mono}} WOK end when /pdf/ @@ -779,7 +816,9 @@ module SiSU_TeX_Pdf %\\usepackage{inconsolata} \\usepackage[T1]{fontenc} \\usepackage{newunicodechar} -% \\usepackage[utf8]{inputenc} +\\usepackage[utf8]{inputenc} +\\usepackage{xeCJK} +\\usepackage{noto} \\usepackage{alltt} \\usepackage[ unicode=true, @@ -1039,6 +1078,8 @@ module SiSU_TeX_Pdf <<-WOK #{tex_head_info} \\documentclass[11pt,a4paper,titlepage,makeidx]{scrartcl} +\\usepackage{fontspec} +\\usepackage{lmodern} \\usepackage{geometry} \\geometry{ #{d[:papertype]}, @@ -1241,9 +1282,9 @@ module SiSU_TeX_Pdf def tex_head_codeblock(codeblock_box_type) codeblock_box=if codeblock_box_type=='listings' <<-WOK -\\usepackage{listings} -\\usepackage{color} -\\usepackage{textcomp} +% \\usepackage{listings} +% \\usepackage{color} +% \\usepackage{textcomp} WOK elsif codeblock_box_type=='boites' "\\usepackage{boites}" @@ -1260,7 +1301,7 @@ module SiSU_TeX_Pdf #{tex_head_encode} #{tex_head_pdftex} #{tex_head_codeblock(codeblock_box_type)} -\\selectlanguage{#{tex_head_lang[:mainlang]}} +% \\selectlanguage{#{tex_head_lang[:mainlang]}} WOK end def a4generic -- cgit v1.2.3