从我的网站向 Twitter 帐户发布推文时如何使文本变为粗体或斜体

Posted

技术标签:

【中文标题】从我的网站向 Twitter 帐户发布推文时如何使文本变为粗体或斜体【英文标题】:How to make text bold or italic while posting a tweet to the Twitter account from my website 【发布时间】:2019-11-14 08:03:00 【问题描述】:

我正在使用 Twitter OAuth 库和 php 将推文从我的网站发布到我的 Twitter 帐户。我只想在发布时使一些文字加粗。但无法找出如何做到这一点。我尝试了 b 标签,但它不起作用。请帮助我解决问题。下面我给出了示例代码。

$CONSUMER_KEY = **********;
$CONSUMER_SECRET = **********;
$ACCESS_TOKEN = **********;
$ACCESS_TOKEN_SECRET = **********;

$postData = "Posting data from my website to twitter";

$connection = new TwitterOAuth($CONSUMER_KEY, $CONSUMER_SECRET, $ACCESS_TOKEN, $ACCESS_TOKEN_SECRET);
$content = $connection->get("account/verify_credentials");
$statues = $connection->post("statuses/update", ["status" => $postData]);

【问题讨论】:

【参考方案1】:

回答迟了半年,因为我想知道,所以我用谷歌搜索了这个,这是没有答案的最佳结果。

Twitter 不允许您以任何方式格式化文本。

不过,Twitter 似乎支持大多数(如果不是全部)Unicode 字符,并且有粗体 Unicode 字符 ???? ????? ????,它们没有格式化文本,而是完全分隔字符。

这两个句子由不同的字符组成。

?????????????????????????????????????????。

检查此答案的原始文本,上面的句子格式化为粗体,而底部使用的字符已经是粗体。这就是为什么它们看起来略有不同的原因。

因此,要在 twitter 上使用它,您需要将字符串转换为使用 unicode 粗体等效项。斜体和粗体都可以在这里找到一个很好的在线转换器。

https://yaytext.com/bold-italic/

你可以用下面我为我的python程序写的东西解决大多数用途(对不起,我不使用php,但想法是一样的)。

def bold(input_text):

    chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
    bold_chars = "??????????????????????????????????????????????????????????????"

    output = ""

    for character in input_text:
        if character in chars:
            output += bold_chars[chars.index(character)]
        else:
            output += character 

    return output

上面的代码只有两个字符串,相同的字母和数字,顺序相同。该函数通过逐个字符地遍历输入来创建输出字符串,如果在常规字符列表中找到它,它会添加与粗体字符字符串相同位置的字符。如果未找到,则仅使用原始字符。

如果需要,您可以在列表中添加更多粗体字符。我这里只用了主要的。

使用此方法生成的推文将如下所示。

所有这些同样适用于斜体 unicode 字符。

【讨论】:

【参考方案2】:

Twitter API 似乎不允许您这样做:

https://developer.twitter.com/en/docs/tweets/data-dictionary/overview/tweet-object.html

无论如何,我建议您更新您的问题并添加您正在使用的代码,有人可能会出现解决方法。

始终提供代码示例可以让每个人的生活更轻松。

【讨论】:

这不是答案。这不应该是评论吗? 实际上,这是一个直接引用源代码的答案。第一行“Twitter API 似乎不允许你这样做” 我刚刚阅读了您的答案,我必须同意它更好。实际上,我赞成它,因为您提供了一个很好的解决方法。

以上是关于从我的网站向 Twitter 帐户发布推文时如何使文本变为粗体或斜体的主要内容,如果未能解决你的问题,请参考以下文章

当机器人应用程序是在单独的帐户下创建时,我如何从我的机器人帐户发送推文?

当有人使用twitter api和php发布推文时如何获得通知

使用 twitter api 发布推文时出错

在从Golang Buffalo webapp发送推文时设置CSRF令牌时遇到问题

如何将推文发送到我的 Twitter 帐户?

当流媒体推文时,如何在Twitter Api中使用tweet_mode ='extended'?