我正在研究一个使用canvas putImageData的非常奇怪的错误。以下是代码段:
test="not(./ingredientes/ingrediente[contains(., 'Leche'))] and
not(./ingredientes/ingrediente[contains(., 'Queso'))]"
我可以在Mac chrome上的“output_canvas”上获得正确的图像。但它无法在Safari和Firefox上呈现。最终图像被切断,在两个维度上看起来都是两倍大。我怀疑这是putImageData实现的浏览器问题,但我找不到任何官方来源的确认。有没有人有类似的问题?任何帮助表示赞赏。
更新11/16/17:https://jsfiddle.net/9r4cbfpk/5/。这是一个概念小提琴的工作证明。它在Safari和Chrome上为我提供了不同的结果。
更新11/17/17:修正小提琴:https://jsfiddle.net/9r4cbfpk/7/。关键点是修复window.devicePixelRatio。 Fabric将画布放大到场景后面,因此真实图像在两个维度上都是两倍大。我最终升级了dest画布以匹配结果数据。