公交车上荫蒂添的好舒服的电影-公用玩物(np双xing总受)-公用小荡货芊芊-公与妇仑乱hd-攻把受做哭边走边肉楼梯play-古装一级淫片a免费播放口

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

使用 JS 實(shí)現(xiàn)在瀏覽器控制臺(tái)打印圖片 console.image()

freeflydom
2024年5月30日 14:55 本文熱度 1260
在前端開(kāi)發(fā)過(guò)程中,調(diào)試的時(shí)候,我們會(huì)使用 console.log 等方式查看數(shù)據(jù)。但對(duì)于圖片來(lái)說(shuō),僅靠展示的數(shù)據(jù)與結(jié)構(gòu),是無(wú)法想象出圖片最終呈現(xiàn)的樣子的

雖然我們可以把圖片數(shù)據(jù)通過(guò) img 標(biāo)簽展示到頁(yè)面上,或?qū)D片下載下來(lái)進(jìn)行預(yù)覽。但這樣的調(diào)試過(guò)程實(shí)在是復(fù)雜,何不實(shí)現(xiàn)一個(gè) console.image() 呢?

先上演示案例:

在線演示 https://bi.cool/bi/W1P1cyq

(chrome 瀏覽器上演示效果)

實(shí)現(xiàn) console.image():

參考 Github 上已實(shí)現(xiàn)的庫(kù) https://github.com/adriancooney/console.image Star 1.8k(本文發(fā)布前)。 實(shí)現(xiàn)代碼如下:

// 實(shí)現(xiàn) console.image 函數(shù)【注意,url如果是網(wǎng)絡(luò)圖片必須開(kāi)啟了跨域訪問(wèn)才能打印】

console.image = function (url, scale) {

  const img = new Image()

  img.crossOrigin = "anonymous"

  img.onload = () => {

    const c = document.createElement('canvas')

    const ctx = c.getContext('2d')

    if (ctx) {

      c.width = img.width

      c.height = img.height

      ctx.fillStyle = "red";

      ctx.fillRect(0, 0, c.width, c.height);

      ctx.drawImage(img, 0, 0)

      const dataUri = c.toDataURL('image/png')


      console.log(`%c sup?` ,

        `

          font-size: 1px;

          padding: ${Math.floor((img.height * scale) / 2)}px ${Math.floor((img.width * scale) / 2)}px;

          background-image: url(${dataUri});

          background-repeat: no-repeat;

          background-size: ${img.width * scale}px ${img.height * scale}px;

          color: transparent;

        `

      )

    }

  }

  img.src = url

}

使用方式:

// 支持 圖片地址【注意,url如果是網(wǎng)絡(luò)圖片則必須開(kāi)啟了跨域訪問(wèn)才能打印圖片】

console.image("替換為 圖片 url", 0.5);

// 支持 base64

console.image("替換為 base64 字符串", 1);

上面僅展示 console.image() 的代碼,因?yàn)樵瓗?kù)還包含 console.meme() 的實(shí)現(xiàn),用于在控制臺(tái)生成表情包,感興趣的同學(xué)可以去該庫(kù)查看詳情。

該庫(kù)上一次更新已經(jīng)將近10年了,由于近些年 Chrome 控制臺(tái)中工作方式有變更,導(dǎo)致作者原版實(shí)現(xiàn)會(huì)使圖片重復(fù)顯示一次。 遇到相同問(wèn)題的人提了 issues,本文章代碼已根據(jù) issues 里提供的解決方案進(jìn)行了修復(fù)。

實(shí)現(xiàn)說(shuō)明:

console.image() 借助于 console.log 能夠使用 %c 為打印內(nèi)容定義樣式 的方式進(jìn)行實(shí)現(xiàn),例如:

// 下面的代碼將會(huì)在控制臺(tái)打印出帶樣式的文本

console.log("這是 %c一條帶樣式的消息", `

    font-style: italic;

    color: cyan;

    background-color: red;

`);

下載本案例源碼:https://bi.cool/bi/W1P1cyq

參考資料 Reference :
https://developer.mozilla.org/zh-CN/docs/Web/API/console



該文章在 2024/5/30 14:55:33 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專(zhuān)業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車(chē)隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類(lèi)企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷(xiāo)售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产精品一区二区亚瑟不卡 | 东京热av永久无码 | 国产在线精品99一卡2卡 | 99久久国产综合精品成人影院 | 国产精品一区二区av不卡 | 国产一二三四在线观看 | 69久蜜桃人妻无码精品一区 | 国产中文字幕玖玖 | 动漫精品无码视频一区二区三区 | 精品精品国产欧美在 | 国产成年无码av片 | 成年午夜免费 | 韩国美女主播热舞 | 国产99精品亚洲 | 国产精品无码片在线看 | 国产91精品 | 东京热一区二区三区 | 91在线国产手机在线 | 国产精品熟女一区二区三区 | 国产精品欧美亚洲韩国日本久久 | 国产精品女人呻吟在线观看 | 3d动漫精品啪啪一区二区中文 | 国产无码专区在线看 | 国产成人av大片在线播放 | 国产精品欧美亚洲韩国日本不卡 | 91精品丝袜国产在线一区 | 99久久九九社区 | 国产高清视频在线观看不卡v | 国产色片在线观看 | 91精品国产乱码久久久久久 | 国产欧美日韩一区二区三区在 | 国产丝袜无码一区二区视频 | 国产高清成人久久 | 精品一区二区高清在线观看 | 成人18免费网站在线观看 | 国产亚洲日韩在线 | 91久久精品一区二区www | 国产97久久国产 | 超薄丝袜足j好爽在线观看 超超碰免费超超碰免费 | 福利精品短视频在线 | 2025一本久道久久综合狂躁 |