鹈鹕的自动相册生成和缩略图。

pelican-albums的Python项目详细描述


鹈鹕专辑

鹈鹕相册是鹈鹕的一个插件,帮助您轻松管理您的 相册(或图库)。

功能

  • 使用{image}album/image.jpg轻松引用相册路径中的图像。
  • 使用自动为相册路径中的图像创建缩略图 {thumbnail}相册/image.jpg {thumbnail:nxn@q}相册/image.jpg
  • 通过将页面添加到相册目录,自动创建相册页面。

安装

要将鹈鹕相册安装到鹈鹕安装中,请使用:

$ pip install pelican-albums

然后,在publishconf.py:

PLUGINS = ['pelican_albums']

设置

鹈鹕专辑提供了一些设置:

  • 相册路径 图像 ):内容中的哪个目录包含 专辑:
  • 缩略图输出路径 图像/缩略图 ):内部的目录 输出 目录将用于存储缩略图。
  • 缩略图输出格式 jpeg ):缩略图应该采用什么格式 创建( jpeg png )。
  • 缩略图默认大小 192x192 ):默认大小 缩略图应该是。
  • 缩略图的默认质量 JPEG缩略图应该是。
  • 相册另存为 相册/{slug}.html ):存储相册索引的位置。
  • 相册url 相册{slug}.html ):引用相册的url方案。

相册

要创建新相册,只需在 相册路径中创建一个新目录 默认值为 内容/图像 )并将图像放入其中。请注意 鹈鹕相册不提供旋转或调整图像大小的工具 此时此刻您(除了创建缩略图之外)。

缩略图

鹈鹕相册将在 要求的尺寸。它将检查原始文件的mtime 以检查是否应刷新缩略图。

您可以在不同的位置指定缩略图的大小和质量:

  • 在{thumbnail}标记内:{thumbnail:128x128@80}相册/image.jpg
  • 在内容的元数据中:缩略图大小:128x128 @ 80
  • 作为模板中 album.thumbnail(spec=none) 的参数。
  • 在全球鹈鹕设置中。

缩略图大小说明符可以有多种不同的形式:

  • WidthXheight –裁剪图像并调整其大小,直到这些图像的缩略图 结果是精确的尺寸(F.E.192x192)。
  • 尺寸 –尺寸 的简写(F.E.192)。
  • widthx –创建具有给定宽度的缩略图,但保留原始宽度 宽高比,因此高度可能会变化(f.e.192x)。
  • xheight –创建具有给定高度的缩略图,但保持原始高度 宽高比,因此宽度可能会变化(f.e.x192)。

您可以选择在大小中添加 @nn 后缀以指示缩略图 应该使用的质量(f.e. 192 @ 80 对于80%的192x192缩略图 质量)。它指定jpeg文件质量,不适用于png 缩略图。

相册页

通过在相册文件夹中创建页,将使用 album.html 模板。 相册和 页都将可用 在模板内。 页面对象的工作方式与普通鹈鹕完全相同 页面对象。

相册对象有几个属性:

  • 图像>–此相册中包含的图像。
  • 相册 –子相册列表(如果有)。
  • –此相册的相册页(您可以创建多个页 如果你愿意的话,每一张专辑都可以。

相册返回的 图像 对象具有以下内容 属性:

  • 相册 –此图像所属的相册。
  • 文件名 –此图像的文件名。
  • url –此图像相对于站点url的url。
  • 缩略图(spec=none) –返回 相对于站点URL的给定(或默认)大小和质量。

album.html

相册页面的示例模板(在 模板目录:

{% extends "base.html" %}
{% block title %}{{ page.title }}{%endblock%}
{% block content %}
<article class="page">
    <header>
        <div class="title">
            {{ page.title }}
        </div>
    </header>

    <div class="entry-content">
        {{ page.content }}
    </div>

    <div class="album">
        {% for image in album.images %}
            <a href="{{ SITEURL }}/{{ image.url }}">
                <img src="{{ SITEURL }}/{{ image.thumbnail(page.metadata.get('thumbnail-size')) }}"
                     title="{{ image.filename }}" />
            </a>
        {% endfor %}
    </div>
</article>
{% endblock %}

发布历史记录

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
正则表达式Java使用关键字拆分字符串   Neo4j Java API模式索引范围查找?   java访问JButton[]   java如何混淆tomcat日志文件中的请求属性   apache运行CGI Java程序   java从一个Eclipse插件开始,我如何通过编程使Eclipse编辑某个文件?   从php中的SQL数据库到Java中的多个值作为单独的变量   java如何在多个osgi捆绑包之间共享资源   datetime Java time,无法从历元秒解析年份   java无法在安卓应用程序中使用morpho指纹扫描仪设备捕获指纹   java使用groovy/ratpack发送电子邮件   javascript在jsp页面中添加验证,但在控制台中仍然显示一些错误   java如何修复com。mysql。jdbc。DocsConnectionPropsHelper   java AlertDialog dispatchTouchEvent