ฉันพยายามแปลง. docx ที่ได้รับทางไปรษณีย์เป็น pdf ที่ถูกต้องโดยใช้ pandoc (ฉันใช้ GNU / Linux)
ฉันมีข้อผิดพลาดเกี่ยวกับการเข้ารหัสอักขระ:
$ pandoc file.docx -o file.pdf
pandoc: Cannot decode byte '\x87': Data.Text.Encoding.decodeUtf8: Invalid UTF-8 stream
ฉันพยายามระบุการเข้ารหัส:
$ file -i file .docx
file.docx: application/vnd.openxmlformats-officedocument.wordprocessingml.document; charset=binary
ฉันประหลาดใจเล็กน้อยcharset=binary
(ฉันคาดหวังcharset=iso8859-15
) อย่างไรก็ตามฉันพยายามแปลง. docx เป็น utf8 อยู่ดีและมันไม่ทำงาน:
$ iconv -t utf-8 file.docx
P! $iconv: séquence d'échappement non permise à la position 16
ฉันมีข้อผิดพลาดเดียวกันกับบรรทัดคำสั่งจากเอกสารของ pandoc :
iconv -t utf-8 file.docx | pandoc | iconv -f utf-8
ฉันจะแปลง. docx นี้เป็น pdf ด้วย pandoc ได้อย่างไร
iconv
ระบุชุดอักขระต้นฉบับโดยใช้-f
แฟล็ก ตัวอย่างเช่นiconv -f ISO-8859-15 -t utf-8 file.docx
อาจใช้งานได้ ไม่ทราบว่ารูปแบบของไฟล์. docx คืออะไร
iconv
โดยตรง.docx
ไม่น่าจะทำงานได้ iconv
สมมติว่าอินพุตเป็นไฟล์ข้อความในบางรูปแบบที่ระบุหรืออนุมาน .docx
ไฟล์เป็นจริงไฟล์ซิป (ที่เก็บบีบอัด) ที่มี (ส่วนใหญ่) ไฟล์ XML คุณอาจโชคดีที่มีการคลายซิป.docx
ไฟล์เรียกใช้iconv
บนไฟล์ที่เป็นส่วนประกอบจากนั้นทำการซิปไฟล์ทุกอย่างกลับเป็นไฟล์ใหม่.docx
แต่ฉันจะไม่วางเดิมพัน สิ่งหนึ่งไฟล์ xml ที่มีเนื้อหาจริงของเอกสารระบุการเข้ารหัส: encoding="UTF-8"
ตัวอย่างเช่น