這次來記錄一下對我而言比較陌生的 @media print 功能,因為 “還沒機會用到” 呀~~
@media 由於要做響應式 web 的關係很常使用,但平常習慣簡寫,所以一時之間還真沒想到 CSS 有針對 print 的媒體設定 🤦
先來點題外的相關話:(總是忍不住想寫與標題不相關的內容😆)
會提到 print,主要來自公司最近的專案,企劃很奇葩的想要有功能是可以客製化選取多筆文章,再打包成一份 PDF 檔讓人下載..
於是乎,問題來了~究竟該怎麼做才能達成多筆文章轉成一份跟網頁不同規格的 PDF 咧?
一開始方向在想要怎麼用 javascript 產生出 PDF 文件,所以跑去跟 Stack Overflow 打交道,查詢 + 測試下來的可行方式為:
使用
html2canvas
將網頁內容轉成 Canvas 畫布(可作為圖像)
使用
jsPDF
建立一個空白 PDF,並將頁面的 Canvas 畫布轉為圖片格式置入,輸出即可下載
jsPDF 滿強大的!語法直觀、支援分頁功能,chrome 及 firefox 都可正常使用,萬惡 IE 格式會跑掉( but who care? )
只是專案的文章內容無法掌握它的顯示長度以及存成圖片格式來置入,畫質有點難控制。
爬了大多文章都是介紹這些插件的運用,只好換個角度去思考,有沒有甚麼方式可以將網頁存成 PDF,突然腦閃想到 “靠
阿平常線上付款會用到的功能我怎麼就給忘了?!” 用瀏覽器的轉存 PDF 功能就好啦
🤓🤓🤓
不過目前只有 chrome 有內建另存 PDF 的模式,其他瀏覽器需要本身電腦有安裝可轉存 PDF 的工具(例: Adobe Acrobat..),看在 chrome 這麼普及、Adobe 軟體這麼多人有的份上~就決定以 “貼心提示: 請使用 chrome 瀏覽器操作” 結束這回合!
-
-
-