2

我正在寻找一个小应用程序,允许用户为一本书创建自定义封面。客户不希望只提供客户选择的内容,而是提供可打印的 300dpi JPEG 或 PDF。

我知道 PHP 可以处理其中的大部分。但是自定义似乎有点难以正确。我曾尝试使用画布创建客户端预览,效果还不错。

只是想看看我是否在浪费时间尝试重新创建轮子,有谁知道我需要的东西是否已经存在?

基本上它与此类似,但用于创建可打印的图像。

谢谢!

4

2 回答 2

1

如果您使用 Canvas 构建编辑器,为了获得最佳效果,我建议您使用 PHP 中适合您需要的任何技术在服务器上重新渲染自定义,而不是尝试拍摄他们正在查看的图像和通过将其发送到服务器使其以某种方式工作。如果您以标准方式使用 Canvas,DPI 将是错误的(它将在屏幕 DPI 处)。

例如,如果他们能够放置图像,则只需记下坐标并将图像放置在 Web 服务器创建的 300 DPI 图像中。文本,相同的东西等。是的,这将是额外的工作,但它应该具有更高的质量和更好的一致性。

这意味着有一个简单的序列化格式用于表示发送到 Web 服务器的自定义封面。

您也许可以使用 SVG,但您必须引入可靠的 SVG 到 PDF 的转换并处理字体。也许是这样的?(我不确定构建 SVG 编辑器是否比基于 Canvas 的更容易)。

于 2013-01-01T21:05:57.587 回答
0

从您的“工作足够预览”开始,jsPDF将能够轻松地从浏览器中生成 PDF。

  • 将画布转换为图像/jpeg(toDataURL 将是您最好的朋友)
  • 实例化一个 jsPDF 对象,添加图像
  • 输出 jsPDF 对象

棘手的细节:

  • 请注意您的屏幕显示的内容为 72dpi,但打印预计为 300dpi。因此,您可以放大画布,然后在 pdf PDF 中绘制图像
  • 当心跨域资源:如果您在域外使用图像,那么您注定要失败(或者您将需要代理)
于 2013-06-26T22:39:32.497 回答