ฉันทำงานอยู่บนเว็บไซต์ที่ต้องการจะส่งออกเนื้อหาของหน้าเว็บที่เป็นเอกสาร pdf แต่มันต้องเคารพคนตามเงื่อนไข:
- เบื้องหลังจะต้องได้รับการพิมพ์บททุกหน้า
- เนื้อหาต้องไม่ใช่จุดเชื่อมโยงกันเบื้องหลัง
ตั้งแต่ที่ใช้เว็บไซต์ของ PHP ฉันพยายามจะใช้ mPDF ซึ่งฉันความเดิมตอนที่แล้วเคยอยู่อีกเว็บไซต์ของ PHP นั่นคนเดียวกันเงื่อนไข mPDF แสดงเต็มพื้นหลังในแต่ละหน้าของแฟ้มเอกสาร pdf แม้แต่ตอนที่เพจไม่ใช่เลยเต็มไปด้วยเนื้อหาและฉันสามารถตั้งค่าขอบกระดาษนั่นส่งผลกระทบกับเนื้อหาภายแต่ไม่ใช่คนพื้นหลังซึ่งยังคงปกปิดทั้งหน้า.
น่าเศร้าที่ mPDF ไม่ได้ทำงานกับเรื่องนี้ใหม่เว็บไซต์ของมากน่าจะเพราะมันใช้ bootstrap และ flex เลือกรูปแบบชื่อแฟ้ม(มันกลับมาฉันมีเอกสาร pdf กับเรื่องเป็นพันหน้าส่วนใหญ่ว่างเปล่าเหลือกับก zoomed อยู่ในชิ้นส่วนของหน้า),อย่างแรกเลยคือส่วนหนึ่งของเนื้อหาถูกเปลี่ยนไปแล้โดยจาวาสคริปต์ก่อนที่การพรีเซนต์มันเพื่อผู้ใช้และนั่นมันไม่ได้เอาเข้าไปในบัญชีโดย mPDF(ฉันสังเกตเห็นนั่นเป็นตอนที่ผมถูกลบออบู๊ทสแตร็พcss ซึ่งได้รับอนุญาตให้ฉันเห็นผลลัพธ์ของการแปลง).
ดังนั้นฉันเปลี่ยนเป็นนักเชิดหุ่น https://github.com/puppeteer/puppeteer ซึ่งรอยนิ้วมือบเนื้อหาได้ดีโดยใช้ chrome องใต้กระโปรงฉันแต่ฉันมีปัญหา
คนแรกปัญหาคือฉันไม่สามารถพิมพ์ที่เต็มพื้นหลับทุกเพจแล้วแต่ผมแก้ไขมันขณะที่มีการเขียนคำถามนี้โดยสร้าง div กับ position: fixed
แล้ว width
แล้ว height
ตอน 100%
นั่นทำงานเป็นเบื้องหลัง
ที่สองปัญหาก็คือตอนที่ฉันตั้งค่าขอบกระดาษอยู่ในกเชิดหุ่น(ซึ่งในท้ายที่สุดเป็นเหมือนกับการพิมพ์ขอบกระดาษอยู่ใน chrome)พวกเขาส่งผลต่อเบื้องหลังด้วย(มันเป็นเรื่องสำคัญที่สุดแม้แต่ก่อนที่กำลังสร้างที่ซ่อม div)ดังนั้นฉันจึงไม่สามารถหาทางที่จะมีข้อความที่ไม่ใช่จุดเชื่อมโยงกันเบื้องหลัง
คุณสามารถเห็นตัวอย่าง: https://stackblitz.com/edit/web-platform-vlfqfz?file=index.html
ถ้าคุณเปิดส่วนแสดงตัวอย่างในอีกแท็บและพยายามที่จะพิมพ์มันคุณสามารถเห็นปัญหาของฉันกำลังเผชิญหน้ากับ