”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 社交媒体自动生成图片指南

社交媒体自动生成图片指南

发布于2025-04-14
浏览:426

我一直在考虑社交媒体图像。您知道,当您在Twitter,Facebook或iMessage等地共享链接时(可以)显示的图像。您本质上是在没有他们的情况下将钱留在桌子上,因为他们将一份带有一些小链接的常规帖子变成了一个帖子,上面有一个很大的Honkin注意力Grabbin图像,并带有大量可单击的区域。在网站上的任何图像中,社交媒体图像可能是网站上最受欢迎,最记忆,最被网络要求的图像的第一。

本质上是HTML的实现:

我想我再次考虑它,因为Github似乎有新的社交媒体卡。这些是新的,对吗?

这些github社交媒体图像显然是编程生成的。查看一个示例URL。

自动化

虽然我认为您可以从完全手工制作的定制社交媒体形象中获得很多轰动,但对于拥有很多页面的网站而言,这是不切实际的:博客,电子商务……您知道我的意思是什么。这样的网站的诀窍是通过以某种方式模板来自动化其创建。我过去提到过其他人的意愿,但让我们回顾一下:

DREW MCLELLAN:动态社交共享图像

您知道所有这些共同之处吗? puppeteer。
  • 用作社交媒体映像? 我喜欢这个想法,但是这意味着可以访问一直在运行的节点服务器(Puppeteer在节点上运行),或者您可以作为无服务器函数点击。因此,难怪这个想法引起了jamstack人群的共鸣,他们已经习惯了运行构建过程和利用无服务器功能之类的事情。
  • 我认为在URL上“托管”无服务器函数的想法 - 并传递通过URL参数在屏幕截图中包含的内容的动态值也很聪明。
  • SVG路由
  • 我有点挖掘使用SVG作为您模板的社交媒体图像的事物的想法,部分是因为它具有如此固定的坐标,可以在内部设计,这与我的心理模型相匹配,以使您需要设计社交媒体图像所需的确切维度。我喜欢SVG如此合并。
  • 乔治·弗朗西斯(George Francis)博客“创建自己的生成SVG社交图像”,这是所有这些都很好地结合在一起的绝妙例子,并带有随机化和奇思妙想。我也喜欢可满足的技巧,使其成为一次性屏幕截图的有用工具。
  • 我也涉足动态SVG创建:在我们的会议网站上查看此会议页面。
  • 不幸的是,SVG不是社交媒体图像的支持图像格式。以下是Twitter:

在卡中使用的图像URL。图像的大小必须小于5MB。支持JPG,PNG,WebP和GIF格式。仅使用动画GIF的第一帧。不支持SVG。

仍然,在SVG中组成/模板可能很酷。您将其转换为另一种格式以供最终使用。一旦是SVG,从SVG到PNG的转换几乎很容易。就我而言,我使用了在构建过程中运行的SVG2PNG和非常小的Gulp任务。 wordpress呢?

我没有WordPress网站的构建过程 - 至少不是每次发布或更新帖子时运行的一个。但是WordPress将从动态的社交媒体图像中受益于

(在我的世界中)。

并不是我现在没有它们。 Jetpack在使这项工作很好的过程中有很长的路要走。它使《社交媒体形象》的“特色图像”成为了我的预览,并自动到社交网络。这是我对此进行的视频。那会让我到一个附着特色图像并很好地显示的地方。

,但并不能自动化他们的创建。有时,仅定制图形就是要走的路(上面的图形可能就是一个很好的例子),但也许更常见的模板卡是必经之路。

幸运的是,我从Daniel Post那里抓住了WordPress的社交图像生成器。看看如何花哨:

这正是WordPress所需的!

丹尼尔本人帮助我创建了一个针对CSS-Tricks的自定义模板。我有一个巨大的梦想,其中有一堆模板可供选择,其中包含标题,作者,选择的引号,特色图像和其他内容。到目前为止,我们仅定居两个,一个带有标题和作者的模板,以及带有特色图像,标题和作者的模板。这些图像是由该元数据创建的:

这不是木偶。这甚至不是Phantomjs供电的SVGTOPNG。这是PHP生成的图像!甚至不是想象中的,而是直截了当的GD,这是PHP中的东西。因此,这些图像不是用任何形式的语法创建的,这些语法可能对前端开发人员感到舒适。最好使用其中一个模板,但是如果您想了解我的自定义版本是如何编码的(Daniel),Lemme知道,我可以在公共场所发布代码。

很酷的结果,对?

我明白为什么必须这样构建它:它使用的是WordPress可以运行的任何技术。这非常具有WordPress的精神。但这确实使我希望创建模板可以以更现代的方式完成。就像如果您的社交媒体映像的模板就像其他模板文件一样,您的社交媒体图像的模板就像social-image.php一样,那不是很酷吗?您是否使用所有普通的WordPress API来模板和设计该页面?几乎像ACF块?并且它获取屏幕截图并使用了吗?我会为你回答:是的,那太酷了。
最新教程 更多>
  • 如何使用Python理解有效地创建字典?
    如何使用Python理解有效地创建字典?
    在python中,词典综合提供了一种生成新词典的简洁方法。尽管它们与列表综合相似,但存在一些显着差异。与问题所暗示的不同,您无法为钥匙创建字典理解。您必须明确指定键和值。 For example:d = {n: n**2 for n in range(5)}This creates a dicti...
    编程 发布于2025-04-18
  • 为什么PYTZ最初显示出意外的时区偏移?
    为什么PYTZ最初显示出意外的时区偏移?
    与pytz 最初从pytz获得特定的偏移。例如,亚洲/hong_kong最初显示一个七个小时37分钟的偏移: 差异源利用本地化将时区分配给日期,使用了适当的时区名称和偏移量。但是,直接使用DateTime构造器分配时区不允许进行正确的调整。 example pytz.timezone(...
    编程 发布于2025-04-18
  • 如何为PostgreSQL中的每个唯一标识符有效地检索最后一行?
    如何为PostgreSQL中的每个唯一标识符有效地检索最后一行?
    postgresql:为每个唯一标识符在postgresql中提取最后一行,您可能需要遇到与数据集合中每个不同标识的信息相关的信息。考虑以下数据:[ 1 2014-02-01 kjkj 在数据集中的每个唯一ID中检索最后一行的信息,您可以在操作员上使用Postgres的有效效率: id dat...
    编程 发布于2025-04-18
  • 如何实时捕获和流媒体以进行聊天机器人命令执行?
    如何实时捕获和流媒体以进行聊天机器人命令执行?
    在开发能够执行命令的chatbots的领域中,实时从命令执行实时捕获Stdout,一个常见的需求是能够检索和显示标准输出(stdout)在cath cath cant cant cant cant cant cant cant cant interfaces in Chate cant inter...
    编程 发布于2025-04-18
  • 为什么不````''{margin:0; }`始终删除CSS中的最高边距?
    为什么不````''{margin:0; }`始终删除CSS中的最高边距?
    在CSS 问题:不正确的代码: 全球范围将所有余量重置为零,如提供的代码所建议的,可能会导致意外的副作用。解决特定的保证金问题是更建议的。 例如,在提供的示例中,将以下代码添加到CSS中,将解决余量问题: body H1 { 保证金顶:-40px; } 此方法更精确,避免了由全局保证金重置引...
    编程 发布于2025-04-18
  • 如何在鼠标单击时编程选择DIV中的所有文本?
    如何在鼠标单击时编程选择DIV中的所有文本?
    Programmatically Selecting DIV Text on Mouse ClickQuestionGiven a DIV element with text content, how can the user programmatically select the entire t...
    编程 发布于2025-04-18
  • 如何使用“ JSON”软件包解析JSON阵列?
    如何使用“ JSON”软件包解析JSON阵列?
    parsing JSON与JSON软件包 QUALDALS:考虑以下go代码:字符串 } func main(){ datajson:=`[“ 1”,“ 2”,“ 3”]`` arr:= jsontype {} 摘要:= = json.unmarshal([] byte(...
    编程 发布于2025-04-18
  • 如何使用FormData()处理多个文件上传?
    如何使用FormData()处理多个文件上传?
    )处理多个文件输入时,通常需要处理多个文件上传时,通常是必要的。 The fd.append("fileToUpload[]", files[x]); method can be used for this purpose, allowing you to send multi...
    编程 发布于2025-04-18
  • 使用jQuery如何有效修改":after"伪元素的CSS属性?
    使用jQuery如何有效修改":after"伪元素的CSS属性?
    在jquery中了解伪元素的限制:访问“ selector 尝试修改“:”选择器的CSS属性时,您可能会遇到困难。 This is because pseudo-elements are not part of the DOM (Document Object Model) and are th...
    编程 发布于2025-04-18
  • PHP阵列键值异常:了解07和08的好奇情况
    PHP阵列键值异常:了解07和08的好奇情况
    PHP数组键值问题,使用07&08 在给定数月的数组中,键值07和08呈现令人困惑的行为时,就会出现一个不寻常的问题。运行print_r($月份)返回意外结果:键“ 07”丢失,而键“ 08”分配给了9月的值。此问题源于PHP对领先零的解释。当一个数字带有0(例如07或08)的前缀时,PHP将...
    编程 发布于2025-04-18
  • 解决MySQL插入Emoji时出现的\\"字符串值错误\\"异常
    解决MySQL插入Emoji时出现的\\"字符串值错误\\"异常
    Resolving Incorrect String Value Exception When Inserting EmojiWhen attempting to insert a string containing emoji characters into a MySQL database us...
    编程 发布于2025-04-18
  • Android如何向PHP服务器发送POST数据?
    Android如何向PHP服务器发送POST数据?
    在android apache httpclient(已弃用) httpclient httpclient = new defaulthttpclient(); httppost httppost = new httppost(“ http://www.yoursite.com/script.p...
    编程 发布于2025-04-18
  • Python不会对超范围子串切片报错的原因
    Python不会对超范围子串切片报错的原因
    在python中用索引切片范围:二重性和空序列索引单个元素不同,该元素会引起错误,切片在序列的边界之外没有。这种行为源于索引和切片之间的基本差异。索引一个序列,例如“示例” [3],返回一个项目。但是,切片序列(例如“示例” [3:4])返回项目的子序列。索引不存在的元素时,例如“示例” [9] ...
    编程 发布于2025-04-18
  • Node.js 20新特性一览
    Node.js 20新特性一览
    于2023年4月18日发布,Node.JS版本20拥有重大改进,以解决Deno和Bun等替代方案以前解决的开发人员问题。 本文使用此广泛采用的JavaScript运行时探讨了开发人员的关键增强功能。 使用新的许可模型增强了安全性: node.js 20使用 - 实验性许可模型 - 实验 - p...
    编程 发布于2025-04-18
  • HTML格式标签
    HTML格式标签
    HTML 格式化元素 **HTML Formatting is a process of formatting text for better look and feel. HTML provides us ability to format text without us...
    编程 发布于2025-04-18

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3