การเข้ารหัสประเภทใดที่งานศิลปะ ANSI เหล่านี้ใช้


12

ฉันพบเว็บไซต์นี้แล้ว มันมีไฟล์ซิป (ลิงค์ในหน้าหลัก ) พร้อมงานศิลปะทั้งหมด บางคนมี.ansส่วนขยายและพวกเขาดูเหมือนรหัสหลบหนี ANSI ที่ใช้บน Linux / Unix แต่เมื่อฉันเปิดหนึ่งในนั้นใช้catใน terminal XFce มันสร้างขยะ (แต่ในสี) พวกเขาดูเหมือนคลังภาพ

บรรทัดแรกของงานศิลปะหลักจากลิงค์มีลักษณะดังนี้ (คัดลอกมาจาก Emacs):

[0;1m[30mthere is no substitute [0;33mÜܲ[1;43m°±²²[40mÛ[43mÛ²±[0;33mÝ ßÜ[1;43m²²²[40mÛÛ²[40m[K

ประเภทไฟล์คือ DOS แต่สามารถสร้างได้บน Windows

เมื่อค้นหางานศิลปะของ ANSI ฉันยังพบเว็บไซต์นี้ที่มีไฟล์ซิปที่มีเฉพาะไฟล์ที่มี.ansนามสกุลและพวกเขาก็แสดงผลไม่ถูกต้องบน Linux (แกลเลอรีในหน้า 2)

คำถามของฉันคือ:

  • การเข้ารหัสแบบนี้เป็นแบบไหนสำหรับคอมพิวเตอร์เครื่องใด
  • ฉันต้องใช้ตัวแสดงพิเศษเพื่อดูบนเทอร์มินัล Linux หรือไม่
  • คุณรู้หรือไม่ว่างานศิลปะประเภทนี้ถูกสร้างขึ้นสำหรับเทอร์มินัล Linux / Unix หรือไม่ ฉันพบศิลปะ ASCII เท่านั้น
  • เป็นไปได้หรือไม่ที่จะแปลงให้ดูบนเทอร์มินัล Linux?

1
ส่วนข้อมูลไม่ใช่ UTF-8: หากคุณรู้ว่าใช้การเข้ารหัสอะไรคุณสามารถใช้recodeหรือiconvแปล หรือ (รู้การเข้ารหัส) คุณสามารถใช้luitในการแปลใช้catเพื่อแสดงผล รู้การเข้ารหัสอาจเป็นสิ่งสำหรับฟอรั่มsuperuserไม่ใช่เฉพาะที่นี่
Thomas Dickey

คำตอบ:


30

นี่คือรหัสหลบหนีของ ANSI แต่คุณพบปัญหาสามประการ:

  • การเข้ารหัสอักขระตามที่คุณสงสัย - ไฟล์เหล่านี้ส่วนใหญ่อยู่ใน CP437 ดังนั้นคุณต้องแปลงไฟล์เหล่านี้:

    iconv -f CP437
    

    (ใช้-tตัวเลือกหากคุณต้องการระบุการเข้ารหัสเป้าหมายโดยค่าเริ่มต้นiconvจะตรงกับการเข้ารหัสอักขระของสถานที่ปัจจุบัน)

  • โทนสี - ไฟล์เหล่านี้มักจะมีลักษณะคล้ายกับโทนสี CGA / EGA / VGA ที่ใช้กับพีซี โดยทั่วไปเทอร์มินัลอีมูเลเตอร์ให้คุณเลือกชุดรูปแบบสี (หรือกำหนดสีใหม่ด้วยตนเอง) ตัวอย่างเช่นเทอร์มินอล GNOME มีชุดรูปแบบในตัว "Linux console" ซึ่งทำงานได้ดีกับ ANSI art

  • ขนาดหน้าจอ - ศิลปะ ANSI ส่วนใหญ่ถือว่าหน้าจอกว้าง 80 คอลัมน์และคาดว่าจะล้อมรอบ

เมื่อคุณแก้ไขทุกอย่างแล้วคุณไม่จำเป็นต้องมีผู้ดูเป็นพิเศษ นี่คือภาพหน้าจอที่แสดงผลลัพธ์ของaa-neurodancer.ansเทอร์มินัล GNOME หลังจากแปลงการเข้ารหัสอักขระ:

ศิลปะ ANSI แสดงศีรษะมนุษย์พร้อมแว่น

ด้านล่างของภาพหน้าจอจะแสดงบันทึก SAUCEของไฟล์:

  • ซอสรุ่น 00
  • หัวข้อ:“ Neurodancer”
  • ผู้แต่ง:“ Antsy Atheist”
  • วันที่: 13 สิงหาคม 2018
  • ขนาดไฟล์: 0x1A65, 6757 ไบต์
  • ชนิดข้อมูล: ตัวอักษร
  • ประเภทไฟล์: ANSi
  • ความกว้าง: 80
  • ความสูง: 23
  • ฟอนต์: IBM VGA

( Ansiloveสามารถถอดรหัส SAUCE เพื่อคุณได้)


เพิ่งพบว่า 128 ไบต์สุดท้ายของไฟล์ ANSI อาจมีข้อมูลเมตาเช่นจำนวนตัวอักษรต่อบรรทัด ดูรายละเอียดSAUSEสำหรับรายละเอียด
jcubic

อ่าดีนั่นอธิบายด้านล่างของภาพหน้าจอ!
Stephen Kitt
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.