我刚开始接触Markdown。我喜欢它,但有一件事困扰着我:如何使用Markdown更改图像的大小?

文档仅为图像提供以下建议:

![drawing](drawing.jpg)

如果可能的话,我希望图片也居中。我问的是Markdown将军,而不仅仅是GitHub是如何做到的。


当前回答

对于那些热衷于手工和针织解决方案的人。有一些方法可以在不使用html的情况下调整.rmd文件中的图像大小:

您可以简单地通过添加{width=123px}来指定图像的宽度。不要在括号之间引入空格:

![image description]('your-image.png'){width=250px}

另一种选择是使用knifer::include_graphics:

```{r, fig.cap="image description", out.width = '50%'}
knitr::include_graphics('your-image.png')
```

其他回答

您可以在Markdown中使用一些HTML:

<img src="drawing.jpg" alt="drawing" width="200"/>

或通过样式属性(GitHub不支持)

<img src="drawing.jpg" alt="drawing" style="width:200px;"/>

或者您可以使用自定义CSS文件,如以下关于Markdown和图像对齐的回答所述

![drawing](drawing.jpg)

另一个文件中的CSS:

img[alt=drawing] { width: 200px; }

对于在Google Colaboratory上使用Markdown的用户,无需将图像上传到会话存储文件夹或链接到Google Drive。如果图像具有URL,并且可以包含在Jupyter笔记本上,并且其大小更改如下:

<img src="https://image.png" width="500" height="500" />

我只是在一些图像编辑器中编辑图像-水平放大图像,因此当渲染器调整大小到页面宽度时,它会垂直缩小。

所以,只需添加一些透明的左右边距即可。

通过纯向后兼容MD:

![<alt>](<imguri>#<w>x<h> "<title>")

其中w,h定义了要纵横适配的边界框,例如在Flutter包中https://pub.dev/packages/flutter_markdown

代码:https://github.com/flutter/packages/blob/9e8f5227ac14026c419f481ed1dfcb7b53961475/packages/flutter_markdown/lib/src/builder.dart#L473

重新考虑破坏兼容性的html解决方案,因为人们可能会使用本机/非html组件/应用程序来显示标记。

如果您正在使用kramdown,可以执行以下操作:

{:.foo}
![drawing](drawing.jpg)

然后将其添加到自定义CSS中:

.foo {
  text-align: center;
  width: 100px;
}