Php 渲染和保存图像的最佳方法
我正在从事一个由在线商店组成的项目,销售印刷电路板。 但是孔系统将是自动化的,并且能够在线查看Gerber文件(Gerber是包含pcb机器代码的文件) 我需要选择最好的方式“输出”这个文件由用户上传到网页。仅用于购买前查看PCB 我已经完成了处理Gerber的全部PHP代码,但是,我无法决定是否处理该文件,然后:Php 渲染和保存图像的最佳方法,php,web-applications,canvas,svg,rendering,Php,Web Applications,Canvas,Svg,Rendering,我正在从事一个由在线商店组成的项目,销售印刷电路板。 但是孔系统将是自动化的,并且能够在线查看Gerber文件(Gerber是包含pcb机器代码的文件) 我需要选择最好的方式“输出”这个文件由用户上传到网页。仅用于购买前查看PCB 我已经完成了处理Gerber的全部PHP代码,但是,我无法决定是否处理该文件,然后: 我将另存为PNG文件(渲染将使用PHP图像库{that is a shit}完成),如果用户缩放或执行任何操作,它将不是完美的。。。(我需要以高分辨率进行渲染,并且需要占用大量空间
- 我将另存为PNG文件(渲染将使用PHP图像库{that is a shit}完成),如果用户缩放或执行任何操作,它将不是完美的。。。(我需要以高分辨率进行渲染,并且需要占用大量空间和加载时间)
- 呈现为SVG文件(矢量文件),并在HTML上显示为嵌入元素(它在所有新浏览器上都有效吗?处理速度慢吗?)
- 最后一个但并非最不重要的方法是创建一个JavaScript命令列表,它在画布元素上绘制(我已经实现了这一点,效果非常好,但我不想认为我实际上是在“渲染”代码…)
我选择SVG文件,即使它比
画布
慢,但考虑到用户与绘图对象的交互不会是实时绘图过程,这是一个不错的选择。SVG实际上是向量,因此在大型图像上图像不会清晰。有一些非常好的库正在使用svg-s,如:
我认为d3是最好的之一。我绝对不会推荐PHP图像库。我会使用SVG。你认为在浏览器上渲染不同大小的SVG会耗费大量的进程,而且会太慢吗?当你使用SVG时,你需要考虑图像的大小。由于SVG是一种用于大图像大小的矢量图形,因此可能会大大降低渲染过程的速度。