我正在做的是將由D3.js生成的圖表(圖表圖例的SVG爲圖表正文的HTML)轉換爲圖像,現在我正在使用html2canvas並手動將SVG轉換爲圖像數據,原因是因爲html2canvas只能處理SVG中的html部分和文本元素。如何將兩張圖片合併爲一張?
所以我的問題是:
一旦我有兩個圖像數據(SVG的部分是這樣的:(我可以通過建立圖像對象變成類似的數據url和繪製在畫布上)和HTML的部分是從canvas.toDataURL
),我怎麼能合併他們合力得到完整的圖像
/////////////// /////////////// ///////////////
/ / /////////////// / /
/ / /////////////// / /
/ / + /////////////// = / /
/////////////// /////////////// ///////////////
/////////////// / / / /
/////////////// /////////////// ///////////////
我猜畫布可能有能力(疊加模式)來合併多層,但我無法弄清楚如何做到這一點。所以,任何代碼示例表示讚賞。
SVG是一種矢量格式的一些樣品,你到底考慮合併?在另一個上面放置一個圖像? – user2867288
@ user2867288基本上可以。就像我說過的,我有兩個圖像,一個圖表體部分,另一個圖例部分,我想把它們放在一起得到一個圖像既有圖表又有圖例。目前關於畫布的問題是:[1]我不知道要重疊圖層(如Photoshop圖層)[2]這兩個圖像可能有一些相同的部分(如圖表軸),但不在相同的位置(比較10像素diff,這聽起來很荒謬,但是當它是真的。)我需要刪除底層的那部分,只使用頂層。 – Kuan