Media
媒体文件包含不同类型的显示内容,例如图像,视频和许多其他文件。 Grav自动查找并处理这些文件以供任何页面使用。 通过使用页面的内置功能,您可以访问元数据并动态修改媒体。
Grav使用Smart-caching ,在必要时创建缓存生成的媒体。 这样,所有人都可以使用缓存版本而不是一次又一次地生成媒体。
支持的媒体文件
以下是Grav支持的媒体文件类型 -
Image - jpg,jpeg,png
Animated Image - gif
vectorized Image - svg
Video - mp4,mov,m4v,swf
Data/information - txt,doc,pdf,html,zip,gz
显示模式
以下是Grav中的几种显示模式 -
Source - 它是图像,视频或文件的可视化显示。
text - 媒体文件的文本显示。
thumbnail - 媒体文件的缩略图图像。
找到缩略图
您可以使用三个位置找到缩略图 -
In the same folder where your media files exists - [media-name].[media-extension].thumb.[thumb-extension]; 这里,媒体名称和媒体扩展名是实际媒体文件的名称和扩展名,拇指扩展名是图像媒体类型支持的扩展名。
User Folder − user/images/media/thumb-[media-extension].png; 这里,media-extension是实际媒体文件的扩展。
System folder - system/images/media/thumb-[media-extension].png; 这里,media-extension是实际媒体文件的扩展。
灯箱和链接
Grav给出了一个锚标记的输出,其中包含了一些要读取的lightbox插件的元素。 如果要使用插件中未包含的灯箱库,则可以使用以下属性创建自己的插件。
rel - 表示灯箱链接。 值是灯箱。
href - 它是媒体对象的URL。
data-width - 设置用户选择的灯箱宽度。
data-height - 设置用户选择的灯箱高度。
data-srcset - srcset字符串用于图像媒体。
Actions
Grav中的Builder模式用于处理媒体,以执行多个操作。 所有媒体都支持某些类型的操作,而有些操作仅适用于特定媒体。
General
有六种类型的常规操作可用于媒体类型。 每个动作都在下面解释。
Sr.No. | 行动和描述 |
---|---|
1 | url() url()返回媒体的raw url path 。 |
2 | html([title][, alt][, classes] 输出将具有有效的媒体html标签。 |
3 | display(mode) 它用于在不同的显示模式之间切换。 切换到显示模式时,将重置所有操作。 |
4 | link() 链接之前应用的操作将应用于链接的目标。 |
5 | lightbox([width, height]) Lightbox与链接操作类似,但它与一些额外属性创建链接有一点不同。 |
6 | Thumbnail 对于任何类型的媒体文件,在页面和默认值之间选择,这可以手动完成。 |
对图像的行动
下表列出了一些应用于图像的操作。
Sr.No. | 行动和描述 |
---|---|
1 | resize(width, height, [background]) 通过调整大小来更改图像的宽度和高度。 |
2 | forceResize(width, height) 不考虑原始比例,根据需要拉伸图像。 |
3 | cropResize(width, height) 根据图像的宽度和高度将图像调整为更小或更大的尺寸。 |
4 | crop(x, y, width, height) 根据x和y位置的宽度和高度来描绘图像。 |
5 | cropZoom(width, height) 根据请求帮助缩放和裁剪图像。 |
6 | quality(value) 设置0到100之间图像质量的值。 |
7 | negate() 颜色在否定中被反转。 |
8 | brightness(value) value -255到+255 ,亮度滤镜将添加到图像中。 |
9 | contrast(value) -100到+100之间的值用于将对比度滤镜应用于图像。 |
10 | grayscale() 他用灰度滤镜处理图像。 |
11 | emboss() 压花过滤器也用于处理图像。 |
12 | smooth(value) 通过将值设置为-10到+10,将平滑滤镜应用于图像。 |
13 | sharp() 锐化滤镜添加到图像上。 |
14 | edge() 边缘搜索过滤器添加在图像上。 |
15 | colorize(red, green, blue) 通过调整红色,绿色和蓝色来着色图像。 |
16 | sepia() 添加了棕褐色滤镜,带来复古外观。 |
动画和矢量化图像和视频
动画和矢量化动作在图像和视频上完成。 以下是对图像和视频进行的操作。
Sr.No. | 行动和描述 |
---|---|
1 | resize(width, height) 调整大小操作将设置width, height, data-width和data-height属性。 |
组合(Combinations)
Grav具有图像处理功能,可以轻松处理图像。
![My New Image](/images/maxresdefault.jpg?negate&cropZoom = 500, 500&lightbox & cropZoom = 600,
200&contrast = -100&sharp&sepia)
上面的代码将生成如下所示的输出 -
响应式图像
下表列出了几种类型的响应图像。
Sr.No. | 行动和描述 |
---|---|
1 | Higher density displays 在文件名中添加后缀,您可以向页面添加更高密度的图像。 |
2 | Sizes with media queries 在文件名中添加后缀,您可以向页面添加更高密度的图像。 |
图元文件(Metafiles)
image1.jpg, archive.zip或任何其他引用都能够设置变量或者可以被元文件覆盖。 然后这些文件采用《filename》.meta.yaml的格式。 例如,如果您有一个image2.jpg图像,那么您的图元文件可以创建为image2.jpg.meta.yaml 。 内容必须采用yaml语法。 您可以使用此方法添加任何您喜欢的文件或元数据。