javascript - p5.j​​s:随机颜色并另存为pdf功能

标签 javascript html p5.js

这是我的代码:

<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.8.0/p5.min.js"></script>
<script>
var angle = 0;

function setup() {
  createCanvas(710, 400);
  background(255, 0, 0);
  noStroke();
  fill(0, 102);
}

function draw() {
  if (mouseIsPressed === true) {
    angle += 5;
    var val = cos(radians(angle)) * 20.0;
    for (var a = 0; a < 360; a += 75) {
      var xoff = cos(radians(a)) * val;
      var yoff = sin(radians(a)) * val;
      fill(random(0, 255));
      ellipse(mouseX, mouseY, random(20, 120), random(20, 120));
    }
  }
}
</script>

<button>Save as PDF</button>

我需要:

A) 对象的颜色当前为灰色(从白色到黑色)。我需要按随机顺序排列三种不同的红色。怎么可能编写这个代码?

B)“另存为 PDF”按钮应该可以使用...

最佳答案

对于 A 部分,你可以这样做

fill(random(0, 255),random(0, 255),random(0, 255))

但我建议您再看一下 P5.js文档以了解其工作原理和原理

对于 B: 您可以尝试使用jsPDF

<script src="//cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.3/jspdf.min.js"></script>
<canvas id="myCanvas" width="578" height="200"></canvas>
<button id="download">download</button>
<script>
  var download = document.getElementById('download');
  download.addEventListener("click", function() {
    var canvas = document.getElementById('myCanvas');
    var context = canvas.getContext('2d');
    // only jpeg is supported by jsPDF
    var imgData = canvas.toDataURL("image/jpeg", 1.0);
    var pdf = new jsPDF();
    pdf.addImage(imgData, 'JPEG', 0, 0);
    pdf.save("download.pdf");
  }, false);
</script>
   

关于javascript - p5.j​​s:随机颜色并另存为pdf功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59240171/

相关文章:

javascript - 1000 个元素的 Jquery 可拖动性能与重新渲染元素的对比

javascript - 与 Angular 一起使用时,p5.js 中的变量未定义?

javascript - 不变不保持不变?

javascript - PayPal 灯箱无法在 iPhone safari/网络应用程序中打开; 'win.location' 未定义

php - .php 文件的字符编码错误

javascript - file_put_content 数组结构不起作用

html - 内联div宽度问题

javascript - 如何在 p5.js 中管理多测验游戏的多个屏幕?

javascript - 服务器发送的事件在 Chrome 中不起作用

javascript - 带有弹出式图库的 Flexslider