[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Display Chinese characters in pdf manual (Was: Re: Translations: 'LINGUA=ll make pdf' is broken)



Hi David,

On Sun, Mar 11, 2012 at 09:51:51AM -0400, David Prévot wrote:
> 
> Le 11/03/2012 06:35, Wolfgang Schweer a écrit :
> 
> > the LINGUA=ll stuff comes in handy and used to work, but recently 
> > 'LINGUA=ll make pdf' failed. (Maybe due to my Debian Sid system.)

(The error was caused by missing ttf packages.) 

> Please define “broken”, it works fine on my Sid (with po4a from Squeeze)
> box:

[..]

> I'm afraid “李健秋” (Andrew Lee) won't be displayed with such setting.

OK, point seen.

> Maybe common/xetex_param.xsl can be twisted to avoid this
> --param=lingua=zh-tw hack.

Just tried to play around, see below; Makefile.common would be different 
then. Chinese in non zh pdf files should show up this way, real Chinese 
pdf should build as well. So the hackish part would have gone from 
Makefile.common to xetex_param.xls. Please check it.

Index: xetex_param.xsl
===================================================================
--- xetex_param.xsl	(Revision 77053)
+++ xetex_param.xsl	(Arbeitskopie)
@@ -12,9 +12,12 @@
     <xsl:text>\setsansfont{Nimbus Sans L}&#10;</xsl:text>
     <xsl:text>\setmonofont{Nimbus Mono L}&#10;</xsl:text>
     <xsl:text>\usepackage{xeCJK}&#10;</xsl:text>
+    <xsl:text>\setCJKmainfont{AR PL Mingti2L Big5}&#10;</xsl:text>
+    <xsl:text>\setCJKsansfont{WenQuanYi Zen Hei}&#10;</xsl:text>
+    <xsl:text>\setCJKmonofont{WenQuanYi Zen Hei Mono}&#10;</xsl:text>
     <xsl:choose>
       <xsl:when test="$lingua = 'zh-cn'">
-	<!-- zh_CN centric: ttf-arphic-gbsn00lp, ttf-wqy-zenhei -->
+        <!-- zh_CN centric: ttf-arphic-gbsn00lp, ttf-wqy-zenhei -->
         <xsl:text>\setCJKmainfont{AR PL SungtiL GB}&#10;</xsl:text>
         <xsl:text>\setCJKsansfont{WenQuanYi Zen Hei}&#10;</xsl:text>
         <xsl:text>\setCJKmonofont{WenQuanYi Zen Hei Mono}&#10;</xsl:text>
@@ -25,6 +28,12 @@
         <xsl:text>\setCJKsansfont{WenQuanYi Zen Hei}&#10;</xsl:text>
         <xsl:text>\setCJKmonofont{WenQuanYi Zen Hei Mono}&#10;</xsl:text>
       </xsl:when>
+      <xsl:when test="$lingua = 'zh'">
+        <!-- zh centric: ttf-arphic-bsmi00lp, ttf-wqy-zenhei -->
+        <xsl:text>\setCJKmainfont{AR PL Mingti2L Big5}&#10;</xsl:text>
+        <xsl:text>\setCJKsansfont{WenQuanYi Zen Hei}&#10;</xsl:text>
+        <xsl:text>\setCJKmonofont{WenQuanYi Zen Hei Mono}&#10;</xsl:text>
+      </xsl:when>
       <xsl:when test="$lingua = 'ja'">
         <!-- ja centric: otf-ipafont-mincho otf-ipafont-gothic -->
         <xsl:text>\setCJKmainfont{IPAMincho}&#10;</xsl:text>


Index: Makefile.common
===================================================================
--- Makefile.common	(Revision 77053)
+++ Makefile.common	(Arbeitskopie)
@@ -6,10 +6,7 @@
 LANGUAGES = `find . -name "$(name).*.po" | sed -e "s/.\/$(name).//" -e "s/.po//"`
 # Program name and option
 XP = xsltproc --nonet --novalid --xinclude ../common/html.xsl
-# --param=lingua=zh-tw is a bit of a hack so Adrew Lew actual name is not broken
-#  (and chinese PDF works), but it spreads some warnings during the build
-DBLATEX = dblatex -T db2latex --backend=xetex --xsl-user=../common/user_param.xsl --xsl-user=../common/xetex_param.xsl -p ../common/pdf.xsl --param=lingua=zh-tw
-# that's ugly, smarter approach appreciated
+DBLATEX = dblatex -T db2latex --backend=xetex --xsl-user=../common/user_param.xsl --xsl-user=../common/xetex_param.xsl -p ../common/pdf.xsl 
 directory = `echo $(name) | sed 's/-manual//'`
 
 all: build
@@ -61,11 +58,11 @@
 
 ifndef LINGUA
 pdf:
-	$(DBLATEX) $(name).xml
+	$(DBLATEX) $(name).xml --param=lingua=en
 else
 pdf:
 	po4a --translate-only $(name).$(LINGUA).xml po4a.cfg
-	$(DBLATEX) $(name).$(LINGUA).xml
+	$(DBLATEX) $(name).$(LINGUA).xml --param=lingua=$(LINGUA)
 endif
 
 install: build
@@ -79,7 +76,7 @@
 			if [ "$$f" = "en" ] ; then \
 			  mkdir -p $$LANGPATH/images/ ; \
 			  find images -maxdepth 1 -type f -exec cp \{\} $$LANGPATH/images/ \; ; \
-			  $(DBLATEX) -o $$LANGPATH/$(name).pdf $(name).xml ; \
+			  $(DBLATEX) -o $$LANGPATH/$(name).pdf $(name).xml --param=lingua=$$f; \
 			else \
 			  	mkdir -p $$LANGPATH/images ; \
 			  	cd images ; \
@@ -90,7 +87,7 @@
 						ln -sf ../../debian-edu-doc-en/images/$$i $$LANGPATH/images/$$i ; \
 					fi ; done ; \
 			  	cd .. ; \
-			  mv images images_tmp_away ; $(DBLATEX) -I $$LANGPATH/ -I $(DESTDIR)/debian-edu-doc-en/$(DESTPATH)/debian-edu-doc-en/ -o $$LANGPATH/$(name).pdf $(name).$$f.xml ; mv images_tmp_away images ; \
+			  mv images images_tmp_away ; $(DBLATEX) -I $$LANGPATH/ -I $(DESTDIR)/debian-edu-doc-en/$(DESTPATH)/debian-edu-doc-en/ -o $$LANGPATH/$(name).pdf $(name).$$f.xml --param=lingua=$$f; mv images_tmp_away images ; \
 			fi ; \
 		fi ; \
 	done 		


Regards,

Wolfgang

Attachment: signature.asc
Description: Digital signature


Reply to: