แพ็กเกจ pgfpages with XeTeX

วันก่อนอาจารย์ท่านหนึ่งได้ส่งคำถามเรื่องการสร้างเอกสารจาก beamer 4 หน้าลงใน 1 หน้า A4 โดยใช้แพ็กเกจ pgfpages บน XeTeX ซึ่งต้องบอกก่อนว่าแพ็กเกจ นี้สามารถใช้งานกับ LaTeX และ pdfLaTeX ได้เป็นอย่างดี  ส่วนตัวไม่เคยลองกับ XeTeX เลย  พึ่งได้มาลองก็ตอนที่ได้ไฟล์มาจากอาจารย์ท่านที่ส่งคำถามมาเนี่ยแหละครับ (XeTeX เป็นความหวังของชุมชนที่จะสามารถใช้ฟอนต์ภาษาไทยกับ LaTeX ได้อย่างอิสระ)

เมื่อได้ลองแล้วก็หาทางแก้ไข ไม่ว่าจะทางเว็บ stack exchange และที่อื่น ๆ ก็ไม่สามารถแก้ปัญหาได้ แต่ได้รู้ปัญหาคือแพ็กเกจ pgf  ที่แพ็กเกจ pgfpages ใช้นั้น ไม่สนับสนุน XeTeX  วิธีแก้ไขมีทางเดียวครับคือเข้าไปแก้ไข page layout ให้เหมาะสมกับ XeTeX  ในการแก้ไข page layout ของเพ็กเกจ pgf นั้นสิ่งที่ต้องทำคือทำใจยอมรับความทรมานที่จะต้องเข้าไปผจญกับคู่มือของ pgf (เยอะ แล้วอ่านแล้วไม่สื่อความหมาย)  ในที่สุดผมก็แก้ไขได้ครับ โดยใช้รหัสต้นดังนี้

เพื่อความสะดวก ผมได้ทำเป็นแพ็กเกจให้ โดยตอนนี้สนับสนุนแค่ 4 on 1 เท่านั้น ไว้มีเวลาว่างจะทำแบบอื่นด้วยครับ

วิธีการใช้คือให้คัดลอกแพ็กเกจ xetexhandout.sty ไปไว้ในโฟลเดอร์ที่บรรจุเอกสาร เวลาเรียกใช้ก็เพิ่มรหัสต้นเข้าไปในไฟล์เอกสารดังนี้ครับ

สำหรับไฟล์ตัวอย่างคือ beam.tex และผลที่ได้คือ beam.pdf ครับ ซึ่งผลลัพธ์เป็นไปตามรูปครับ

 

ช่วงอ่านหนังสือสอบ ผมได้ทำการปรับปรุงไฟล์ xetexhandout.sty เพิ่มเติมฟังก์ชันพิมพ์สไลด์สองหน้าลงในหนึ่งการดาษ a4 นะครับ  เอาไปใช้กันได้  โดยสั่งใช้งานดังนี้

4 Responses to แพ็กเกจ pgfpages with XeTeX

  1. chakkree says:

    ผมใช้ แพกเกจ pdfpages ทำเอกสาร A5
    เรียงพิมพ์แบบเย็บอก โดยใช้กระดาษ A4
    ดังนั้นต้องเรียงพิมพ์ให้หน้าสลับกัน

    วิธีการคือ ต้องสร้างเอกสารเป็น pdf แบบ A5 เรียงกันก่อน

    แล้วค่อยใช้คำสั่ง includespdf

    \includepdf[pages={ เลขหน้า , เลขหน้า },nup=1x2, landscape, signature=16]{ชื่อไฟล์ต้นฉบัยA5.pdf}

    สำคัญที่ signature ต้อง หารด้วย 4 ลงตัว

    ถ้ามีเวลาเดี๋ยวผมจะไปทำตัวอย่างแล้วมาโพสอีกทีครับ

  2. admin says:

    เยี่ยมมากคุณจักรี ผมเองก็พึ่งรู้ว่าแพ็กเกจ pdfpages นั้นทำอะไรได้มาก ๆ ส่วนใหญ่ใช้ผ่าน pgf (ผ่าน beamer อีกที) ซึ่งการใช้ผ่าน pgf ทำให้มีข้อเสียคือค่าตั้งของหน้ากระดาษนั้นเข้ากันไม่ได้กับของ XeTeX

  3. Kasia says:

    Stands back from the keyboard in amemzaent! Thanks!

  4. FirstSofia says:

    I see you don't monetize your site, don't waste
    your traffic, you can earn additional bucks every month because you've got hi quality content.
    If you want to know how to make extra money, search for:
    Boorfe's tips best adsense alternative

Leave a Reply

Your email address will not be published. Required fields are marked *