一套用于合并多个图像并一次性生成相应css的套件

spritemapper的Python项目详细描述


Homepage:http://yostudios.github.com/Spritemapper/
Authors:Yo Studios <opensource@yostudios.se>

spritemapper是一个将多个图像合并为一个和 为相应的切片生成css定位。

这个包由一个简单的命令行工具“执行任务”和 python库包括自己的png和css解析器。选择 编写/捆绑这是为了远离第三方的要求。任何人 曾经有过在各种平台上安装PIL的愉快工作 一个很好的关于我们要避免什么的主意。

spritemapper有多种选择,但它们都需要一点 很多手工劳动,而spritemapper读取当前的css,替换 背景图像和位置与生成的结果。

这项技术极大地提高了网站的加载速度,有效地 通过下载更少的图像减少带宽。

spritemapper正在运行

下面是一个简单的示例,说明spritemapper将如何处理css:

.emote.smile {
  background: red url(../img/emoticons/smile.png) no-repeat;
}
.emote.grin {
  background: white url(../img/emoticons/grin.png) no-repeat;
}

变成:

.emote.smile {
  background: red url(../img/emoticons.png) no-repeat 0 0;
}
.emote.grin {
  background: white url(../img/emoticons.png) no-repeat 0 -16px;
}

查看我们的homepage以获取真实的示例。

用法

-h--help
显示帮助消息并退出
-c INI--conf=INI
从ini读取基本配置(请参见Configuration options
--padding=N
在精灵之间保留n个像素的填充

配置选项

配置选项可以通过以下两种方式之一指定:在css中内联, 使用传递具有默认值的ini文件。对于css,它看起来像:

/* spritemapper.output_css = foofile.css

您可以使用ini文件执行完全相同的操作,如下所示:

[spritemapper]
output_css = foofile.css

需要注意的是,所有路径都与css文件相关 处理。

base_url
可以访问生成的css和图像文件的url。 默认情况下使用文件相对路径(推荐)。
sprite_dirs
允许在其中生成spritemaps的目录列表。 默认情况下,所有目录都符合条件。
recursive
设置在找到子目录时是否应生成子spritemaps。 默认设置。
output_image
输出spritemap图像的名称。 sprite_dirs与此不兼容,因为两者都告诉 spritemapper如何将精灵排序为spritemaps。 默认情况下,<;dir>;+.png
output_css
重写的css文件的名称。 默认情况下sm_{basename}{extension}
padding
两个图像之间的填充空间量。这对 抵消ios设备上的子像素渲染工件。 默认情况下为1。
anneal_steps
这里的一个较大的数字使box packer算法尝试更多的组合。 默认为9200。

运行测试

测试套件需要Nose。您可以通过setup.py、python setup.py test或普通的nosetests运行它们。

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

推荐PyPI第三方库


热门话题
java数据未插入SQLite数据库   Java中内存有效的对象创建   java在方法内部使用“this”(不用于调用方法、构造函数或变量)   java为什么这里会出现NullPointerException?   在REST中使用HATEOAS导致的java循环依赖   java如何定制spring boot横幅?   Java数字基数计算器(即基数10到基数5)   如果在Kotlin vs Java中声明,用作全局上下文的安卓 MainApplication类将崩溃   用于过滤对象的Java lambda函数   java从字符串数组中获取整数列表   java为什么Maven找不到org。json JPMS自动模块?   java将字符串数组转换为int   仅当与阈值字节匹配时,java才会在映射中填充字符串值