javascript – 如何以编程方式绘制具有自动图形放松的非线性书写系统(例如在d3.js中)?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 如何以编程方式绘制具有自动图形放松的非线性书写系统(例如在d3.js中)?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1810字,纯文字阅读大概需要3分钟。
内容图文
Alex Fink&我有一个非线性书面语言,UNLWS.在Google Docs中维护它的语法文档变得过于繁琐,但是,因为加载每个图像需要多少时间 – 而且为嵌入gdocs而创建的图像并不是真正可组合的可出口的好方法.
UNLWS主要由各种glyphs组成 – 它们基本上是带有指定绑定点(术语表中的小蓝色圆圈)的小型矢量艺术 – 并且在这些绑定点(如图形)中相互互连,而不是吧)使用各种方法(主要是简单的线条).
一些字形也具有内部结构,例如,可变线或弧长,样条曲率,线段距离等,以及一些具有未用线条绘制的绑定(例如articles).
一般来说,只要字形连接正确并遵循一些关于如何连接的规则(例如避免交叉,尽可能制作平滑或直线,放松图形),结果将是合法的.
然而,还存在非图形组件,例如围绕或划分文本的部分的漫画,以及某些字形必须彼此靠近并且相对于彼此以特定方向或距离放置的一些情况.
在某些情况下,我们还想提示有关如何更美观地进行布局的图形包,例如: poetry(注意中心和侧面的装饰)或stories(注意三个品种的黑色划线).有关更简单的示例,请参阅我们的scratchpad.
理想情况下,我们希望能够使用合理的图形库(可能是d3.js,虽然我对其他建议持开放态度)以编程方式组合,例如,能够:
>定义可重用的字形(带变量)
>让我们制作自定义DSL以指定字形的形式(从较低级别的矢量“phonetics”构建)以及它们如何交互(用于语法)
>告诉包什么连接符号在什么绑定点和如何连接,并让它弄清楚如何做必要的图放松等,至少有一个合理的结果
>可选提示包装如何进行布局
>使用对齐/捕捉在各个地方添加英文文本(UNLWS本身没有,但它对文档很有用)
>导出为标准矢量格式(例如,用于打印海报或衬衫),并通过某些命令行工具(例如,用于嵌入LaTeX中)导出到stdout
这样做有什么好办法?
我故意以开放的方式表达这一点,因为我不知道适当的方法或包装集是什么(或者首先JS / D3是否合适).我会想象现有的软件包已经解决了问题的一部分(例如图形放松),但我对它们并不熟悉.
(FWIW:我们两个都是编码员.我非常广泛地使用Ruby而d3.js一点点.Alex是一位数学家,因此使用LaTeX和Asymptote很多,但是没有使用过很多JS.我们不是绑定到任何特定选项,包括Javascript.)
解决方法:
d3中的Force布局可能是最好的起点 – 这是自动图形放松工具的工具.
内容总结
以上是互联网集市为您收集整理的javascript – 如何以编程方式绘制具有自动图形放松的非线性书写系统(例如在d3.js中)?全部内容,希望文章能够帮你解决javascript – 如何以编程方式绘制具有自动图形放松的非线性书写系统(例如在d3.js中)?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。