Il y a certaines choses que PrusaSlicer ne fait tout simplement pas. Cependant, en utilisant des scripts de post-traitement, vous pouvez modifier automatiquement le G-code généré pour faire (presque) tout ce que vous voulez.
Vous pouvez spécifier le chemin d'accès au script dans Réglages d'impression - Options de sortie - Scripts de post-traitement.

Mise en place des scripts
Les scripts de post-traitement peuvent être écrits en n'importe quel langage de programmation (Perl, Python, Ruby, Bash, etc.). Ils doivent simplement être reconnus par votre système en tant qu'exécutable et accepter le chemin d'accès au fichier G-code comme seul argument.
Si vous souhaitez exécuter plusieurs scripts, placez chaque invocation de script sur sa propre ligne.
Exécution de scripts
Chaque script recevra le chemin absolu d'un fichier G-code temporaire généré par PrusaSlicer. Ce fichier est stocké dans un dossier temporaire sur votre disque (généralement votre disque système rapide). Le script est ensuite exécuté pour modifier le G-code sur place et le fichier G-code résultant est écrit dans le dossier cible sélectionné ou envoyé à un hôte d'impression, tel que PrusaConnect ou Octoprint.
Paramètres des scripts
Vous pouvez utiliser des paramètres avec votre script de cette façon :
/path/to/executable devient /path/to/executable avec l'argument outputfilename.gcode
/path/to/executable -arg -arg2 devient /path/to/executable avec les arguments -arg, -arg2 et outputfilename.gcode
Si le chemin vers l'exécutable ou les arguments contiennent des espaces, ces arguments doivent être échappés en utilisant le style d'échappement commun à la plate-forme (style d'échappement du shell sous Linux et OSX, échappement de la ligne de commande Windows).
Exemples
Python
Exemple d'ajout d'un compteur au nom de fichier
Chemin d'accès du fichier final exporté (ou son nom pour Octoprint)
env_slicer_pp_output_name = str(getenv('SLIC3R_PP_OUTPUT_NAME'))
Script Python qui modifie le chemin de sortie
with open(sourcefile + '.output_name', mode='w', encoding='UTF-8') as fopen:
fopen.write(counter + '_' + env_slicer_pp_output_name)
Changements historiques et rupture de compatibilité descendante
Avant la version 2.4, PrusaSlicer exécutait le script sur le G-code final exporté vers le support cible souhaité. Qui était très souvent un lecteur amovible, comme une carte SD. Les cartes SD sont lentes et s'usent, donc ce n'était pas idéal. Il y avait aussi des problèmes lors de l'envoi du G-code à Octoprint. La nouvelle approche avec le fichier temporaire sur votre disque système évite ces problèmes et étend la fonctionnalité des scripts de post-traitement. Cependant, cela pourrait casser certains de vos scripts existants.
Cette page de documentation comprend des textes de la documentation originale de Slic3r et du Bob's Project Notebook.