GitGraph - 缩放图表的大小

时间:2016-06-17 17:14:46

标签: javascript git

我使用的是GitGraph javascript库 - http://gitgraphjs.com/

我目前正在使用示例文件来查看GitGraph中的工作原理。指向示例文件的链接 - https://github.com/nicoespeon/gitgraph.js/blob/develop/examples/index.js

有没有可能的方法来缩放图表?我尝试重写CSS样式,图形的质量大大降低。

我期待GitGraph.scale选项之类的东西?可以吗?

1 个答案:

答案 0 :(得分:0)

主项目页面不易链接,但它看起来像标题为"定义自己的模板"你正在寻找什么?

编辑:

好的,通过更好地了解您正在寻找的内容,我自己玩弄它,并注意到canvas元素的widthheight属性为{ {3}},基于一些涉及template对象中的一组值的中等复杂数学,加上使用scalingFactor得出的window.devicePixelRatio值。

在渲染画布之前,似乎没有办法修改这些值,但是使用提供的graph:render事件,您可以在之后执行此操作

gitGraph.canvas.addEventListener("graph:render", function(event) {
  console.log(event.data.id, "has been rendered with a scaling factor of", gitGraph.scalingFactor);
  rescale();
}
function rescale() {
  var g = document.getElementById('gitGraph');
  var w = +g.style.width.slice(0,-2) * 0.5;  // < just change these two
  var h = +g.style.height.slice(0,-2) * 0.5; // multipliers to the same
  g.style.width = w + 'px';                  // value
  g.style.height = h + 'px';
};

这个函数正在使用官方示例代码(注意它确实搞砸了绝对定位的detail div):

added to the DOM programmatically in GitGraph.prototype.render()

这有帮助吗?

(编辑2:内联堆栈溢出示例代码没有添加任何值来回答,因为它不可编辑。替换为CodePen,以便读者可以通过更改乘数值来验证功能。)