- เครื่องมือจัดพิมพ์เอกสาร Typst เวอร์ชัน 0.14 เปิดตัวแล้ว โดยมาพร้อมฟีเจอร์สำคัญอย่างการรองรับการเข้าถึงพื้นฐาน การจัดการภาพ PDF และการจัดย่อหน้าแบบปรับระดับตัวอักษร
- เวอร์ชันนี้รองรับ มาตรฐาน PDF/UA-1 เพื่อช่วยให้สอดคล้องกับข้อกำหนดด้านการเข้าถึง และเพิ่มความสามารถในการ แทรก PDF เป็นรูปภาพได้โดยตรง
- ฟีเจอร์ การจัดย่อหน้าแบบปรับระดับตัวอักษร (character-level justification) ช่วยให้จัดหน้าข้อความในย่อหน้าได้สมดุลสวยงามยิ่งขึ้น
- ความสามารถในการส่งออก HTML ได้รับการปรับปรุง โดยแปลงองค์ประกอบเอกสารต่าง ๆ เป็น HTML เชิงความหมาย และเพิ่ม Typed HTML API เข้ามา
- อัปเดตครั้งนี้ช่วยเสริมความสามารถด้าน การสร้างเอกสารอัตโนมัติในงานอุตสาหกรรมและการรองรับข้อกำหนดด้านการเข้าถึง ทำให้ Typst นำไปใช้ในงานจริงได้กว้างขึ้นอย่างมาก
ภาพรวมของ Typst 0.14
- Typst เริ่มต้นจากวงการวิชาการ แต่ช่วงหลังได้ขยายไปสู่ งานอุตสาหกรรม เช่น การเขียนเอกสารแบบแมนนวล รายงานอัตโนมัติ และพายป์ไลน์สร้าง PDF จำนวนมาก
- เวอร์ชัน 0.14 นี้จึงใส่ ฟีเจอร์หลัก สำหรับการใช้งานเชิงอุตสาหกรรมเข้ามาจำนวนมาก
- มีการปรับปรุงฟีเจอร์ที่เน้นการใช้งานในสภาพแวดล้อมการผลิต เช่น การเข้าถึง มาตรฐาน PDF การจัดย่อหน้าแบบปรับระดับตัวอักษร และการส่งออก HTML
- อัปเดตได้ง่ายทั้งบนเว็บแอปและ CLI พร้อมมี คู่มือย้ายไปเวอร์ชันใหม่ ให้ใช้งาน
การเข้าถึง (Accessibility)
- Typst 0.14 สามารถสร้าง tagged PDF สำหรับการเข้าถึง โดยอัตโนมัติ ทำให้เทคโนโลยีช่วยเหลืออย่าง screen reader สามารถเข้าใจโครงสร้างเอกสารได้
- หากใช้งานมาร์กอัปและองค์ประกอบที่มีมาในตัว ระบบจะกำหนดแท็กที่เหมาะสมให้อัตโนมัติ
- เพิ่มพารามิเตอร์
alt ใหม่เพื่อใส่ คำอธิบายแทนภาพ (alt text) ให้กับรูปทรงหรือภาพประกอบได้
- ในโค้ดตัวอย่าง มีการเพิ่มคำอธิบายแทนภาพให้กับไดอะแกรมที่ประกอบด้วยสี่เหลี่ยมสองอันและลูกศร เพื่อให้ผู้ใช้ที่มีความบกพร่องทางการมองเห็นรับรู้ข้อมูลเดียวกันได้
- มี ความสามารถในการส่งออก PDF/UA-1 เพื่อช่วยทำให้การตรวจสอบการเข้าถึงเอกสารเป็นอัตโนมัติ
- สามารถตรวจพบปัญหาอย่างการไม่มีชื่อเอกสาร ลำดับหัวข้อไม่ถูกต้อง หรือขาดคำอธิบายแทนภาพ
- PDF/UA-1 ช่วยรองรับการปฏิบัติตามข้อกำหนดด้านการเข้าถึงระดับสากล เช่น European Accessibility Act (EAA) ของสหภาพยุโรป และ ADA Title II ของสหรัฐฯ
- ฝั่ง EU จะเริ่มมีผลในวันที่ 28 มิถุนายน 2025 และฝั่งสหรัฐฯ ในวันที่ 24 เมษายน 2026
- องค์กรที่จัดการเอกสารสำหรับลูกค้าหรือหน่วยงานรัฐควรพิจารณานำ Typst 0.14 ไปใช้
ขยายการรองรับมาตรฐาน PDF
- จากเดิมที่รองรับแค่ PDF 1.7 ตอนนี้สามารถเลือกได้ตั้งแต่ PDF 1.4 ถึง 2.0
- มาตรฐาน PDF/A ก็ขยายจากเดิมที่รองรับเพียงสองมาตรฐานย่อย ไปสู่การรองรับ ครบทั้ง 4 พาร์ตและระดับความสอดคล้อง
- การเลือกมาตรฐานที่เหมาะสมช่วยปรับเอกสารให้เหมาะกับ ความเข้ากันได้ การเก็บรักษาระยะยาว และการปฏิบัติตามข้อกำหนด
- รายละเอียดเพิ่มเติมดูได้ใน ส่วนอ้างอิงมาตรฐาน PDF ของเอกสาร Typst
ใช้ PDF เป็นรูปภาพ
- Typst 0.14 รองรับ PDF เป็นฟอร์แมตรูปภาพแบบเนทีฟ
- เมื่อต้องส่งออกเป็น PDF จะฝังเข้าไปโดยตรง ส่วนการส่งออกเป็น HTML/SVG จะ แปลงเป็น SVG และใน PNG หรือพรีวิวบนเว็บจะ เรนเดอร์แบบแรสเตอร์
- ทุกกระบวนการแปลงทำงาน ภายในคอมไพเลอร์ของ Typst โดยไม่มีการพึ่งพาระบบภายนอก
- ฟีเจอร์นี้เป็นไปได้ด้วยไลบรารีประมวลผล PDF ตัวใหม่ชื่อ
hayro ที่เขียนด้วย Rust
hayro เป็นไลบรารี Rust ล้วนที่พัฒนาโดยผู้มีส่วนร่วมในชุมชน Typst @LaurenzV ซึ่งให้ทั้งความสามารถในการพกพาและประสิทธิภาพสูง
การจัดย่อหน้าแบบปรับระดับตัวอักษร (Character-level Justification)
- เพิ่มฟีเจอร์ที่ช่วยปรับ ทั้งระยะห่างระหว่างคำและระยะห่างระหว่างตัวอักษร เพื่อให้ย่อหน้าดูสมดุลทางสายตามากขึ้น
- ซอฟต์แวร์ส่วนใหญ่เดิมจะปรับเพียงระยะห่างระหว่างคำ แต่ Typst สามารถควบคุมระยะห่างระหว่างตัวอักษรได้ละเอียดกว่า
- ในอนาคตมีแผนสำรวจการปรับความกว้างตัวอักษรด้วย variable fonts หรือการแทรก Kashida สำหรับภาษาอาหรับ
- Typst ใช้ อัลกอริทึมพื้นฐานเดียวกับ LaTeX แต่เพิ่มความสามารถในการจัดย่อหน้าแบบปรับระดับตัวอักษรที่ LaTeX ไม่มี
- หากใช้มากเกินไปอาจดูไม่เป็นธรรมชาติ แต่เมื่อกำหนดขีดจำกัดและใช้อัลกอริทึมอย่างเหมาะสม ก็ช่วยยกระดับคุณภาพการจัดพิมพ์ได้อย่างละเอียด
- ผลลัพธ์คือช่วยให้ได้ ความสม่ำเสมอของโทนเทาของย่อหน้า (grayness) ที่สมดุลขึ้น พร้อมคุณภาพการจัดพิมพ์ระดับงานสำนักพิมพ์มืออาชีพ
การส่งออก HTML ที่ดีขึ้น
- HTML export ที่เปิดตัวแบบทดลองใน Typst 0.13 ได้รับการปรับปรุงครั้งใหญ่ใน 0.14
- เพิ่ม semantic HTML mapping (show rules) สำหรับองค์ประกอบในตัวหลายชนิด เช่น เชิงอรรถ สารบัญ และการอ้างอิง
- ปรับปรุงการประมวลผลข้อความ ทำให้องค์ประกอบส่วนใหญ่ใน Model category สามารถแปลงเป็น HTML ที่ถูกต้องได้
- เพิ่ม อินเทอร์เฟซ Typed HTML แบบใหม่
- สามารถกำหนดแอตทริบิวต์แบบ type-safe ได้ เช่น
#html.video(autoplay: true, width: 1280, …)
- ปลอดภัยและใช้งานตรงไปตรงมามากกว่าวิธี
html.elem แบบสตริงเดิม
- การส่งออก HTML ยังถือเป็น ฟีเจอร์ทดลอง โดยใน CLI ต้องเปิดด้วยออปชัน
--features html หรือ environment variable TYPST_FEATURES=html
- บนเว็บแอปก็ต้องเปิดใช้งานแยกเป็นรายโปรเจกต์เช่นกัน
- ในอนาคตมีแผน รองรับการส่งออก HTML อย่างเป็นทางการในเว็บแอป Typst
การย้ายไปใช้ Typst 0.14
- รีลีสครั้งนี้เป็น อัปเดตที่เสถียรและแทบไม่มี breaking changes
- มีเพียงการตรวจสอบบางอย่างที่เข้มงวดขึ้น เช่น label, URL ของลิงก์ และรายการฟอนต์ จะไม่สามารถเว้นว่างได้
- การเปลี่ยนแปลงสำคัญ
pdf.embed ถูกแทนที่ด้วย pdf.attach
- มีการเปลี่ยนชื่อรูปแบบบรรณานุกรม 2 แบบ
- แฟลก
--make-deps ของ CLI ถูกแทนที่ด้วย --deps --deps-format make
- มีการเลิกใช้สัญลักษณ์ (symbols) บางตัว และคอมไพเลอร์จะแสดงคำเตือนให้อัตโนมัติ
- ในเว็บแอป มีการปรับปรุง ประสบการณ์การอัปเกรดเวอร์ชัน
- ก่อนหน้านี้ระบบจะใช้เวอร์ชันล่าสุดเสมอ แต่ตอนนี้เมื่อพบเวอร์ชันใหม่ จะมี การแนะนำให้อัปเกรดอัตโนมัติพร้อมตรวจสอบความเข้ากันได้
- ระบบจะแสดงผลเปรียบเทียบข้อผิดพลาดและคำเตือนหลังคอมไพล์ด้วยเวอร์ชันใหม่
ชุมชนและแผนในอนาคต
- Typst 0.14 เป็น ผลลัพธ์จากการพัฒนาและการทำงานร่วมกับชุมชนตลอด 8 เดือน
- เพื่อฉลองการเปิดตัว จะมี Discord community call ในวันที่ 7 พฤศจิกายน
- มีเป้าหมายเพื่อแลกเปลี่ยนประสบการณ์การใช้งานและรับฟีดแบ็ก
- ทีม Typst มีแผนเดินหน้าพัฒนาต่อในด้าน การยกระดับความสมบูรณ์ของ HTML export การเสริมการเข้าถึง และการปรับปรุงคุณภาพงานจัดพิมพ์
1 ความคิดเห็น
ความเห็นบน Hacker News
มีคนมักสับสนเรื่อง Typst บ่อย ๆ เลยขอสรุปไว้ก่อน
ตัวแก้ไขออนไลน์(typst.app) เป็น ซอฟต์แวร์เชิงพาณิชย์ ส่วนคอมไพเลอร์/CLI(github.com/typst/typst) เป็น โอเพนซอร์ส
ฉันใช้แค่ CLI แต่พอใจกับผลลัพธ์มาก เดิมเริ่มใช้เพื่อแทน PowerPoint แต่ก็เหมาะกับการทำโปสเตอร์หรือเอกสารสั้น ๆ ด้วย ไม่ต้องกังวลว่าจะลืมไวยากรณ์ซับซ้อนแบบ LaTeX และชอบที่เป็น ไวยากรณ์ที่กลับมาใช้ใหม่ได้ง่าย
ประสบการณ์พัฒนาด้วย TinyMist และ VS Code ยอดเยี่ยมมาก แก้เทมเพลตได้ภายในวันเดียว ซึ่งใน LaTeX เป็นฝันร้ายเสมอ
หน้าอย่างเป็นทางการของ TinyMist
ขอสรุปสิ่งที่รู้สึกทุกครั้งที่ใช้ Typst
โดยเฉพาะฟีเจอร์ PDF ที่เข้าถึงได้และการส่งออก HTML ใน Typst 0.14 น่าตื่นเต้นมาก
คนจำนวนมากก็ใช้เว็บอินเทอร์เฟซอย่าง Overleaf ด้วย ดังนั้นในข้อดีของ Typst สิ่งที่รู้สึกเด่นจริง ๆ มีประมาณ ความเร็วในการคอมไพล์และคุณภาพของข้อความวินิจฉัย
Pandoc รองรับ Typst ได้ดี ทำให้แปลงเป็น docx หรือ epub ได้ง่าย และ อีชชูที่เกี่ยวข้อง ก็ถูกแก้เร็วด้วย
ฟีเจอร์แปลง PDF เป็น SVG เพื่อเรนเดอร์ได้ทันทีใน HTML, PNG และเว็บพรีวิว น่าทึ่งมาก
ความสามารถประมวลผล PDF ทั้งหมดนี้ถูกฝังมาในคอมไพเลอร์ Typst และเป็นเพราะไลบรารี hayro ที่เขียนด้วย Rust ทั้งหมด
ลิงก์ GitHub, หน้าเดโม
ต่อให้ไม่ได้ใช้ Typst โดยตรง ก็อยาก สนับสนุน ผ่านการสมัครสมาชิก
ในฐานะคนที่ทั้งรักทั้งเกลียด LaTeX ก็ยินดีที่มีตัวแทนใหม่ออกมา โดยเฉพาะที่ให้ความสำคัญกับ microtypography
ถ้ามี ระบบ bounty สำหรับการรองรับ HTML ฉันก็อยากช่วยเพิ่ม
Typst สร้างขึ้นจากบทเรียนเหล่านั้นและออกมาเป็น ไบนารีขนาด 45MB ที่สะอาดเรียบร้อย
เป็นเครื่องมือชั้นยอดที่จัดการ JSON, CSV ได้ตรง ๆ และสร้างได้ทั้งหนังสือ โบรชัวร์ ไปจนถึงการ์ด
เหตุผลที่วงการวิชาการยังเลิก LaTeX ไม่ได้คือ Beamer, TikZ, Overleaf
Beamer มีสไตล์และฟอนต์หลากหลาย ส่วน TikZ ใช้วาดรูปทรงได้โดยไม่ต้องมี GUI
Overleaf มีความสามารถด้านการทำงานร่วมกันที่ดีกว่า Typst Cloud หวังว่าวันหนึ่ง Typst จะไปถึงระดับนั้น
การนำ version control มาใช้ก็น่าพิจารณา
แม้ยังไม่ถึงระดับ Beamer แต่ typst-presentate ก็ใช้งานได้ดีพอสมควร
ธีม Touying Unistra Pristine
มีเครื่องมือแทน TikZ หลายตัว แต่ยังไม่มีอะไรสมบูรณ์แบบ
ฉันเขียนเรซูเม่ .docx ที่ดูแลมานานกว่า 10 ปีขึ้นใหม่ทั้งหมดด้วย Typst
โดยแยกประวัติการทำงานและสไตล์ออกเป็น ไฟล์ข้อมูล TOML แล้วให้เติมลงในเทมเพลตที่ต้องการอัตโนมัติ
เป็นโปรเจ็กต์ที่เกินความจำเป็น แต่สนุกมาก และไวยากรณ์ของ Typst ก็ เข้าใจง่าย จนทำได้โดยไม่ต้องมีบทเรียน
ข้อไม่พอใจที่ใหญ่ที่สุดของฉันกับ Typst คือยังไม่รองรับ ตัวคั่นทศนิยมตาม locale
ดู ลิงก์อีชชู ได้
ถ้าไม่รีบแก้เรื่องฟอร์แมตตัวเลขตามภาษา อาจเกิดการชนกันของไวยากรณ์ในอนาคตได้
ถึงอย่างนั้น โดยรวมแล้ว Typst ก็ เร็วและเรียบง่าย จนพอใจมาก
การที่ใช้ PDF เป็น ฟอร์แมตรูปภาพแบบเนทีฟ ได้ ถือเป็นก้าวหน้าครั้งใหญ่ของตัวแทน LaTeX
ขอบคุณทีม Typst ตอนแรกฉันทำเรซูเม่ด้วย Typst เพื่อฝึกใช้ Git
สักวันหนึ่งอยากทำเอกสาร ปริศนาอักษรไขว้ ด้วย Typst ยังไม่รู้วิธีทำตารางให้เป็นสี่เหลี่ยมจัตุรัส แต่สักวันคงได้ลอง
เมื่อก่อนฉันใช้ GitHub/Azure Markdown + Mermaid + MathJax เพื่อทำเอกสารโมเดลการเงิน แต่ยิ่งซับซ้อนก็ยิ่งลำบาก
ตอนนี้ใช้ Typst ซึ่งเป็น คอมไพเลอร์ที่พัฒนาด้วย Rust จึงติดตั้งง่าย และด้านความปลอดภัยก็ไม่มีการส่งข้อมูลออกไปภายนอก
ดีไซน์สมัยใหม่จนรู้สึกถึงช่องว่างของเวลาราว 40 ปี