python脚本,它编译本机二进制文件,使用ncurses在终端上以ascii格式播放gif。

giftoa的Python项目详细描述


详细信息

编译在终端上使用ascii格式播放gif的本机二进制文件 课程。

Demo

演示

giftoa -i cat.gif -o cat_gif --invert && ./cat_gif

要求

  • gcc或兼容编译器,可以使用^{tt2}指定编译器$ 或--compiler
  • python 3.x
  • ImageMagick
  • JP2A
  • libncurses为您的发行版开发包

关于基于debian的发行版:

sudo apt-get install gcc python3 imagemagick jp2a libncurses-dev

安装pip3时可能需要也可能不需要这样做:

sudo apt-get install python3-pip

PIP安装

在安装了上述依赖项之后,可以安装 giftoarightgif脚本到您的环境中,使用pip 这样的包管理器:

sudo pip3 install giftoa

或升级:

sudo pip3 install giftoa --upgrade

Debian包装

您还可以为rightgifgiftoa通过在 debian_packaging目录。

giftoa.deb文件将安装上面列出的依赖项。

一旦构建了.deb包,就可以有选择地安装每个包 使用:

sudo dpkg -i deb_package_here.deb

sudo apt-get install -f

基本用法

giftoa -i gif_file.gif -o output_exe [jp2a options...]

giftoa -i gif_file.gif [jp2a options...](可执行文件以 gif文件)

giftoa -ihttp://gifwebsite.com/somegif.gif-o output_exe [jp2a options...]

-o/–使用URL时必须指定输出。

您可以指定包含JPEG文件的目录,在 目录将用作动画的帧。

它们将按名称按自然顺序排序,因此您应该包括一些 在每个文件名的开头或结尾处的帧编号。

只考虑JPEG文件,其他类型的文件 忽略。

如果这样做,则必须指定输出可执行文件的名称 明确地。

giftoa -i directory -o output_file_name_required.exe [jp2a options...]

使用--stdin-frames读取以换行分隔的JPEG帧列表 从标准输入。

示例:

find image_dir -mindepth 1 | sort --version-sort | giftoa --stdin-frames-o output_exe [jp2a options...]

注意--version-sort是特定于gnu sort的。

上面的命令模拟将目录传递给-i的行为 大部分。

giftoa不接受来自stdin的非jpeg文件路径,它将生成 检测到非JPEG时出错。

与rightgif配套脚本一起使用

rightgif.py是rightgif的简单客户端

它返回一个指向gif的url,该gif与任何句子/语句相关 你作为辩论通过了。

例如:

rightgif really fat cats

您不需要引用查询,但可以:

rightgif "horrifically obese cats"

与Giftoa配对:

giftoa -i $(rightgif kitties) -o kitties_exe

giftoa -i $(rightgif kitties) -o kitties_exe && ./kitties_exe

注意:向giftoa传递url时,必须指定输出文件。

帧延迟/fps

-fps--frames-per-second可用于为 动画。

如果未指定,则默认为每秒10帧。

此选项不能与-fss-fsn一起使用。

最小值为1,最大值为1000000000,数值为 一定是个整数。

示例:

giftoa -i gif_file.gif -fps 25 -o output_exe [jp2a options...]


-fsn--framesleep-nanoseconds可用于调整延迟 在gif帧之间以纳秒为单位。

此选项不能与-fps/--frames-per-second一起使用。

最小值为0,最大值为999999999,数值为 一定是个整数。

示例:

giftoa -i gif_file.gif -fsn 100000000 -o output_exe [jp2a options...]


-fss--framesleep-seconds可用于调整 gif帧之间的秒数。这是除了 指定的纳秒。

此选项不能与^{tt22}一起使用$/--frames-per-second

^使用-fss时,{tt25}$将默认为0,并且 未显式指定纳秒。

示例(1秒100纳秒):

giftoa -i gif_file.gif -fss 1 -fsn 100 -o output_exe [jp2a options...]

最小值为0,最大值为2147483647,数值为 也必须是一个整数。

C编译器选择

-cc--compiler可用于指定用于 编译二进制文件

示例:

giftoa -i gif_file.gif -cc clang -o output_exe [jp2a options...]

JP2A选项

安装后请参阅jp2a -h以获取更多选项。

jp2a主页:https://csl.name/jp2a/

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

推荐PyPI第三方库


热门话题
JavaI从另一个Jframe类B扩展了一个J帧类a,但在显示帧B时,它也在B中播放帧a   java适配器模式应用程序   使用并行流从java列表中获取Pojo,而不使用任何类型的索引   java更新文本文件中的双精度   java从webservice返回自定义对象   java在查找多个集合的交集时使用Retainal()的最快顺序   java如何在安卓社交媒体应用程序中应用用户对用户支付?   c代码能引发java异常吗?   Java数组填充了最后一个插槽中的内容   java JOOQ从大表中获取数据:良好实践   使用ApachePOI在JavaSwing中嵌入excel工作表   java如何使用枚举定义常量值组   java JavaFX将文本追加到TextArea引发异常   javascript JS在firefox中无法正常工作   java如何在同一片段中的片段打开后编辑该片段打开的活动中的值   对夏洛克的命令。py的解释不同于linux命令行和java进程api   php在Java中动态创建全局多维数组   html Java XML Transformer将“\n”替换为空格   Javac编译编码问题