2010-04-07 5 views
1

J'utilise la commande convert pour convertir un pdf en plusieurs pngs, j'ai besoin que les conventions de nommage soient diapositives - ##. Png au moment où elles sortent comme diapo 1.png mais parce qu'il y a 20+ diapositives lorsque je les passe en boucle pour les ajouter dans le modèle l'ordre se trompe, donc il ressemble à slide-1.png slide-10.png slide-11.png et ainsi de suite, comment puis-je forcer la conversion à utiliser doubles chiffres comme 01 02 03 et ainsi de suite ou est-il une meilleure façon de boucle à travers eux, c'est le code que j'ai au momentImagemagick - Nommage de fichier

def convert_keynote_to_slides 
    system('convert -size 640x300 ' + keynote.queued_for_write[:original].path + ' ~/rails/arcticfox/public/system/keynotes/slides/'+File.basename(self.keynote_file_name)+'0%d.png') 

    slide_basename = File.basename(self.keynote_file_name) 

    files = Dir.entries('/Users/joshcrowder/rails/arcticfox/public/system/keynotes/slides') 
    for file in files 
     #puts file if file.include?(slide_basename +'-') 
     self.slides.build("slide" => "#{file}") if file.include?(slide_basename) 
    end 

    end 

Répondre

2

utilisez la commande convertir avec un format c-style pour l'indice de diapositives numéro:

% 02d.png

+0

Cela a fonctionné très bien merci! –