私は、透明な中心とそのフレームの後ろにローカル画像を描画するボタン(フレームに見えるので)を持つフレーム画像を持っています。アップロードした画像をフレームに閉じ込めるにはどうしたらいいですか?私は透明な周囲の領域なしでフレーム画像を使用しようとしましたが、最終的に背景を使用したいと思います。イメージをfabricjs内の別のイメージに制限するにはどうすればよいですか?
私はさまざまなサイズの異なる形のフレームで作業しています。どうすればこれを達成できますか?どんな助けでも大歓迎です。私はこれを数日間変えてきました。問題をより明確に示すために、コードと画像を添付します。前もって感謝します!
var canvas = new fabric.Canvas('c');
document.getElementById('file').addEventListener("change", function(e) {
var file = e.target.files[0];
var reader = new FileReader();
reader.onload = function(f) {
var data = f.target.result;
fabric.Image.fromURL(data, function(img) {
var oImg = img.set({
scaleX: 0.8,
scaleY: 0.8,
left: 430,
top: 65
})
canvas.add(oImg);
canvas.setActiveObject(oImg);
var image = canvas.getActiveObject();
image.moveTo(-1);
canvas.discardActiveObject();
canvas.renderAll();
});
};
reader.readAsDataURL(file);
});
fabric.Image.fromURL('https://i.imgur.com/OeXL2CJ.png', function(img) {
var oImg = img.set({
scaleX: 0.5,
scaleY: 0.5,
selectable: false
})
canvas.add(oImg).renderAll();
});
canvas {
border: 1px solid #808080;
border-radius: 1px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://rawgit.com/kangax/fabric.js/master/dist/fabric.min.js"></script>
<input type="file" id="file"><br />
<canvas id="c" width="637" height="412"></canvas>
乾杯!これは実際に動くのを見るのに非常に役立ちます。ありがとうございました。 –