我不确定标题是否传达了解决我问题的最佳方法,所以让我退后一步。
我的公司正在建立一个广告联盟计划。我们有一个小部件,它将很快显示在众多网页上,并且该小部件将包含一个广告块,该块将显示来自我们的附属零售商的各种广告。
我们需要一个解决方案,让我们能够快速(并使用尽可能多的自动化)为不同的产品制作数千个广告。不幸的是,我们的广告管理服务 (Google Ad Manager) 只接受基于图片的广告素材(它实际上接受 Flash,但我们不想使用它)。如果有人有任何建议,接受 HTML 广告的广告管理服务也可能是一个可行的解决方案。
来自 Web 开发世界,我们最初的想法是创建一个基于浏览器的 UI,允许非技术人员输入广告的所有内容(产品名称、MSRP、销售价格、产品评论等)和它的尺寸。使用此信息,应用程序将在输入表单旁边的“预览”<div> 中布置广告,以使用户能够查看和更新广告的布局和内容。然后,他们可以使用此 HTML 预览来调整文本、产品图像大小等,最终得到可接受的广告布局。
对我们来说,这一切似乎都是可以实现的。棘手的部分是找出一种有效且可扩展的方法,将我们可以在浏览器中看到的 HTML 预览转换为相当高质量的图像。我们可以在每个广告完成后截取页面的屏幕截图,但这需要几个额外的步骤 - 将屏幕截图复制到图像编辑器中、裁剪、保存并将其上传到我们的服务器,以便我们可以将 Google Ad Manager 指向图片的网址。将这些步骤乘以成千上万的广告,这将使该过程比我们认为需要的更加繁琐。
所以,我最终在寻找一种方法——无论是浏览器插件、书签、使用 Ruby、Java 或 JavaScript 等在服务器端或客户端执行此操作的方法——将我们在浏览器窗口以尽可能少的步骤进入我们服务器上的图像。
不管它如何工作,似乎无论截取屏幕截图都必须了解 HTML/CSS 渲染的概念,以了解广告“图像”的末端在哪里(如其父 HTML 元素的尺寸和位置),或者能够在空白的白色页面背景下仅裁剪出广告方块(我正在考虑使用魔术棒工具的 Photoshop 动作)。
如果有人有任何想法或建议要分享,我将非常感激!