Sac-Thumbnails

Processo em Elixir para criação de Thumbnails de imagens, vídeos, pdf e Arquivos Office

Requisitos:

ImageMagick (Para tratamento de imagens e PDFs)
FFMPEG      (Para tratamento de vídeos)
libreoffice (Para tratamento de arquivos office)
chrome instalado e com alias "chrome" adicionado ao $Path (testando)

Instalação:

Add this to your mix.exs file, then run mix do deps.get, deps.compile:

{:sac_thumbnails, "~> 0.1.1"},

Como usar:

Importe a biblioteca para seu modulo

import SacThumbnails

Chame a função create_thumb/2

@spec create_thumb(:docs | :image | :pdf | :video, %{
    filename: binary,
    height: any,
    to_path: binary,
    width: any
}) :: :ok | {:error, atom}

A função espera um atom que representa o tipo de arquivo:

(:image | :video | :pdf | :docs) # ( :docs -> Arquivos do Pacote Office)

e um map com as keys:

%{
    :filename,
    :to_path #(diretório de destino do arquivo. Ele precisa existir previamente),
    :width #(largura da thumb, se for omitido será usado valor 200 por padrao),:height #(altura da thumb, se for omitido será usado valor 200 por padrao)
}

Exemplo

SacThumbnails.create_thumb(:image, %{filename: "/home/arcanjo/Documentos/elixir/sacdigital-thumbnails/priv/the-dark-angel-hd-wallpaper-hd-1080p.jpg", to_path: "teste/", width: 150, height: 150})