v2 使用 imgur 图床的时候 如何得到 域名为 i.imgur.com 且带有格式后缀的图片?

132 天前
 tomorrow092
imgur 上传图片后得到的是 网页的链接 https://imgur.com/IokkDIW


default 语法中要求 域名为 i.imgur.com 且带有 格式后缀 比如 https:空格占位 //i.imgur.com/IokkDIW.png 这种二级域名+后缀的方式才能正常显示 比如下面这个图片链接




markdown 语法中 可以是: A: ![]空格占位( https://imgur.com/IokkDIW.png) 这种不带 i 域名,但需要带后缀的格式
或者是 ![] 空格占位( ) 这种使用了 i.imgur.com 域名的方式

问题一:一般都是得到 https://imgur.com/IokkDIW 链接, 如何方便得到 域名为 i.imgur.com 且带有 格式后缀的链接? 自己手动拼接? 写自动化脚本热字符触发替换?


问题二: v2 的回复 还是不支持 markdown 语法, 为啥不做支持?

备注: 空格占位 的含义是避免 v2 直接 将文字解析为图片.
510 次点击
所在节点    问与答
9 条回复
NewYear
132 天前
不可以拼接。
imgur 这种 URL 有两种,一种是单个图片,一种是多图片(虽然也可能只放了 1 个图)。

单图片理论上拼接后缀名可以成功,但要猜测后缀名难咯。

我的解决办法是通过 API 获取原图 URL 。
你去看看吧,API 没有门槛的,直接可以用。
NewYear
132 天前
"单图片理论上拼接后缀名可以成功,但要猜测后缀名难咯。"

单个图片 URL ,直接拼后缀可以,但要猜测后缀名。
多图片 URL (但页面可能也显示为单图片),则要通过 API 获取“原图 URL”,多图方式的图片文件名和 URL 是无关的。
tomorrow092
130 天前
单个图片 URL ,直接拼后缀可以,但要猜测后缀名。


后缀名随便写,写错了也没关系. imgurl 是不关心后缀名的.

i.imgur 链接直接指向图像,而 imgur.com 链接指向 imgur 页面,该页面还显示图片、带宽和其他图片。
任何 imgur 链接都可以替换为 i.imgur ,您将看到没有其他信息的图片。
tomorrow092
130 天前
tomorrow092
130 天前
@NewYear #1
@NewYear 你看下
tomorrow092
130 天前
@NewYear #2 这个 BBcode 里面有 i.imgur + 文件扩展名的完整格式. 不过 imgurl 好像对扩展名不敏感, 随便写个扩展名就都能显示.

NewYear
130 天前
@tomorrow092 #5

如果你懒,就按照我说的方法最简单。
如果你很勤快,看一眼他家的 API ,直接写一个也很容易,事实上我就是写过一次了,不过我的是套件,不适合拿出来。

如果你又懒又勤快,可以发给 AI 帮你解决,它都可以做到。
tomorrow092
130 天前
@NewYear #7
我现在写了个热字符串脚本
/**
 * 使用 Default 语法发图片 Imgur ,域名为 i.imgur.com,且带有格式后缀
 */
:*:v2defaultimg:: {
    genV2_DefaultImg()
}
:*:v2img:: {
    genV2_DefaultImg()
}
genV2_DefaultImg() {
    ; Trim clipboard content
    tempClipboard := Trim(A_Clipboard)

    ; Check if clipboard is empty or not a URL
    if (tempClipboard = "" || !RegExMatch(tempClipboard, "^https?://")) {
        commonShowNotify("info", "剪贴板为空或者不是 url", 6)

        return
    }
    commonShowNotify("info", "![替代文字](图片链接).", 6)
    ; Process each line in the clipboard
    urls := StrSplit(tempClipboard, "`n", "`r")
    for url in urls {
        trimUrl := Trim(url)
        if (trimUrl != "") {
            ; 检查 URL 是否以 https://imgur.com/ 开头
            if (InStr(trimUrl, "https://imgur.com/", CaseSensitive := false) == 1) {
                ; 对于 imgur 图片链接,转换为 i.imgur.com 并添加 .png 后缀
                imgurId := SubStr(trimUrl, StrLen("https://imgur.com/") + 1)
                defaultImgUrl := "https://i.imgur.com/" . imgurId . ".png"
                SendText(defaultImgUrl)
            } else {
                ; 对于其他链接,直接使用标准 Markdown 链接格式
                SendText(trimUrl)
            }

            SendEvent "{End}{Enter}"
        }
    }

}
NewYear
130 天前
@tomorrow092 #8

可以的,很好,你自用能用就很好。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1133140

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX