เป็นเรื่องปกติที่ผู้คนต้องการพิมพ์ฉบับ”TNGD”ดังนั้นฉันจึงประหลาดใจเมื่อ Lauri Reinhardt ผู้ช่วยเราในการสนับสนุน ส่งต่อข้อความจากผู้อ่านให้ฉันโดยถามว่ามีวิธีพิมพ์ฉบับอีเมลของ”TNGD”กับภาพทั้งหมด เราทั้งคู่ไม่เคยพยายามทำสิ่งนั้นมาก่อน แต่ผู้อ่านทำถูกต้องทั้งหมด: การพิมพ์ฉบับ”TNGD”หรือส่งออกเป็น PDF ทำให้มีกล่องว่างแทนที่รูปภาพ
“TNGD”#1648 ใน PDF ในการแสดงตัวอย่าง—ไม่มีรูปภาพกำลังโหลด
การแก้ไขด้วยการตั้งค่า Protect Mail Activity ของ Mail ไม่ได้สร้างความแตกต่าง และรูปภาพก็แสดงได้ดีในข้อความเอง—ไม่เกี่ยวข้องกับการโหลด เนื้อหาระยะไกล สิ่งที่น่าสับสนยิ่งกว่าก็คือ Mimestream ที่ฉันใช้กับ Gmail ประสบปัญหาเดียวกัน แต่เฉพาะใน macOS 12 Monterey ไม่ใช่ใน macOS 13 เวนทูร่า การพิมพ์จากเว็บอินเทอร์เฟซของ Gmail ก็ทำงานได้ดีเช่นกัน
เมื่อดูที่ต้นตอของปัญหาของเรา เผยให้เห็นควันปืนในทันที: แอตทริบิวต์ Loading=”lazy”สำหรับแท็ก IMG ทุกแท็กในบทความ แบนเนอร์สปอนเซอร์ที่ด้านบนของปัญหาไม่มีแอตทริบิวต์ดังกล่าว และปรากฏใน PDF ตามปกติ ฉันหันไปหา Neil Jhaveri นักพัฒนาของ Mimestream ซึ่งเคยทำงานเกี่ยวกับ Mail ที่ Apple ด้วยความอยากรู้อยากเห็น เขากล่าวว่า Mail สร้างมุมมองเว็บนอกหน้าจอ รอให้ส่วน”โหลด”ของเอกสารมาถึง แล้วจึง”พิมพ์”แต่การโหลด=”ขี้เกียจ”ทำให้รูปภาพโหลดเฉพาะเมื่อเลื่อนดู ซึ่งไม่เคยเกิดขึ้นกับการพิมพ์ Mimestream แชร์ปัญหา อย่างน้อยก็ในมอนเทอเรย์ เพราะมันใช้ WebKit สำหรับการพิมพ์ เช่นเดียวกับ Mail นีลแนะนำให้เลิกแอตทริบิวต์ Loading=”lazy”เพราะเขาไม่คิดว่ารูปภาพ (อย่างน้อยรูปภาพที่มีแอตทริบิวต์ความกว้างและความสูง) จะบล็อกหน้าไม่ให้แสดงผลจนกว่าจะโหลดเสร็จ
ในระหว่างการสนทนาเหล่านี้ Lauri สะดุดกับวิธีแก้ปัญหาที่เหมาะสมในบริบทของคำอธิบายของ Neil. เธอตั้งสมมติฐานว่ารูปภาพอาจใหญ่เกินไปที่จะโหลด เธอจึงลองลดขนาดด้วยตัวเลือกการปรับขนาดในกล่องโต้ตอบการพิมพ์ ซึ่งทำให้มีการแสดงรูปภาพอย่างน้อยบางภาพ ฉันทำการทดสอบและพบว่าถ้าฉันเปลี่ยนเปอร์เซ็นต์การปรับขนาดเป็น 99% ภาพบางภาพจะโหลดขึ้น—แต่ภาพเหล่านั้นจะไม่ชัดเจน—และภาพอื่น ๆ จะว่างเปล่า อย่างไรก็ตาม หากฉันเปลี่ยนเปอร์เซ็นต์การปรับขนาดอย่างจริงจังมากขึ้น เช่น เป็น 87% แล้วเลื่อนดูตัวอย่างเอกสารทั้งหมด รูปภาพทั้งหมดจะปรากฏอย่างคมชัดใน PDF ผลลัพธ์ แม้ว่าฉันจะคืนมาตราส่วนเป็น 100% ในภายหลังก็ตาม สันนิษฐานว่า การขอให้กล่องโต้ตอบการพิมพ์ปรับขนาดเอาต์พุตเป็นการบังคับให้ WebKit โหลดรูปภาพทั้งหมด เพื่อให้ปรากฏ
เมื่อฉันขอให้ Eli Van Zoeren นักพัฒนาของเราลบแอตทริบิวต์ Loading=”lazy”ออกจาก แท็ก IMG เขาสังเกตเห็นว่า WordPress แทรกโดยอัตโนมัติ ดังนั้นเขาจึงเพิ่มตัวกรองเพื่อลบออกจากเวอร์ชันอีเมลของปัญหาของเรา (รหัสของเขาเพิ่มแบนเนอร์สปอนเซอร์ให้กับปัญหาแยกต่างหาก ซึ่งเป็นสาเหตุที่ทำให้พวกเขาขาดคุณสมบัตินั้น) ฉันรู้สึกตื่นเต้นที่จะทดสอบการแก้ไขกับปัญหาในสัปดาห์หน้า แต่ก็ต้องผิดหวังที่พบว่าปัญหายังไม่หายไป กลายเป็นว่าหลังจากที่ Eli กรอง Loading=”lazy”ออกไปแล้ว WordPress ก็แทนที่ด้วยแอตทริบิวต์ที่ฟังดูคล้ายกัน หลังจาก Whack-an-Attribute อีกรอบ ปัญหาก็หายไป
“TNGD”#1649 ใน PDF ในการแสดงตัวอย่าง รูปภาพโหลดอย่างถูกต้อง
ดังนั้น แม้ว่าฉันไม่แนะนำให้พิมพ์ปัญหา”TNGD”แต่เราไม่จัดรูปแบบสำหรับการพิมพ์ และปัญหาเหล่านี้ จะใช้กระดาษไม่น้อย อย่างน้อยคุณก็จะเห็นภาพแล้ว ที่น่าสนใจคือภาพหน้าจอทั้งสองด้านบนมีหน้าว่างเพิ่มเติมในตอนท้าย ฉันไม่รู้ว่าทำไม Mail ถึงเพิ่มพวกเขา แต่ฉันแนะนำให้ลบออก เลือก ไฟล์ > ส่งออกเป็น PDF เปิดไฟล์ในการแสดงตัวอย่าง เลือกหน้าว่าง (และหน้าที่ไม่จำเป็นอื่นๆ) ในแถบด้านข้าง และลบออกก่อนพิมพ์
ฉันสงสัยเป็นอย่างยิ่งว่ามีคนจำนวนมากได้รับผลกระทบ จากปัญหานี้ แต่ผู้อ่าน”TNGD”อย่างน้อยหนึ่งคนจะมีความสุขมากขึ้น และด้วยความโชคดี คนอื่นๆ ที่พบปัญหาคล้ายๆ กันจะพบบทความนี้และหาวิธีแก้ไขได้เร็วยิ่งขึ้น