Cześć,
Poprzednie rozwiązanie nie było szczególnie efektywne. Douczyłem się Python i napisałem plug-in, który umożliwia automatyczne zapisanie obrazka dociętego do złotej proporcji w podkatalogu
/mod.
#!/usr/bin/env python
# Tutorial available at: https://www.youtube.com/watch?v=nmb-0KcgXzI
# Feedback welcome: jacksonbates@hotmail.com
from gimpfu import *
from os.path import *
import os
def lukasz_workflow1(image, drawable):
# function code goes here...
try:
os.stat(os.path.dirname(image.filename) + "\\mod\\")
except:
os.mkdir(os.path.dirname(image.filename) + "\\mod\\")
pdb.gimp_image_set_resolution(image, 300, 300)
pdb.gimp_image_scale(image, 924, 572)
pdb.file_jpeg_save(image, drawable, os.path.dirname(image.filename) + "\\mod\\" + os.path.splitext(basename(image.filename))[0] + ".jpg", os.path.dirname(image.filename) + "\\mod\\" + os.path.splitext(basename(image.filename))[0] + ".jpg", 0.5, 0.1, 1, 1, 'Lukasz Kukolowicz', 2, 1, 0, 2)
try:
os.stat(os.path.dirname(image.filename) + "\\mod\\")
except:
os.mkdir(os.path.dirname(image.filename) + "\\mod\\")
register(
"python-fu-lukasz-workflow1",
"Prepares files for report",
"Prepares files for report",
"Lukasz Kukolowicz", "Lukasz Kukolowicz", "2017",
"7.8 x 4.8 cm",
"*",
[
(PF_IMAGE, "image", "takes current image", None),
(PF_DRAWABLE, "drawable", "Input layer", None)
],
[],
lukasz_workflow1, menu="<Image>/Automation") # second item is menu location
main()
i drugi, który nie zmienia liczby pikseli, tylko przestawia DPI obrazka:
#!/usr/bin/env python
# Tutorial available at: https://www.youtube.com/watch?v=nmb-0KcgXzI
# Feedback welcome: jacksonbates@hotmail.com
from gimpfu import *
from os.path import *
import os
def lukasz_workflow5(image, drawable):
# function code goes here...
try:
os.stat(os.path.dirname(image.filename) + "\\mod\\")
except:
os.mkdir(os.path.dirname(image.filename) + "\\mod\\")
width = pdb.gimp_image_width(image)
DPI = width * 25.4 / 78.25
pdb.gimp_image_set_resolution(image, DPI, DPI)
# pdb.gimp_image_scale(image, 921, 921)
pdb.gimp_message(DPI)
pdb.file_jpeg_save(image, drawable, os.path.dirname(image.filename) + "\\mod\\" + os.path.splitext(basename(image.filename))[0] + ".jpg", os.path.dirname(image.filename) + "\\mod\\" + os.path.splitext(basename(image.filename))[0] + ".jpg", 0.5, 0.1, 1, 1, 'Lukasz Kukolowicz', 2, 1, 0, 2)
try:
os.stat(os.path.dirname(image.filename) + "\\mod\\")
except:
os.mkdir(os.path.dirname(image.filename) + "\\mod\\")
register(
"python-fu-lukasz-workflow5",
"Prepares files for report",
"Prepares files for report",
"Lukasz Kukolowicz", "Lukasz Kukolowicz", "2017",
"Change width to 7.8, no resize",
"*",
[
(PF_IMAGE, "image", "takes current image", None),
(PF_DRAWABLE, "drawable", "Input layer", None)
],
[],
lukasz_workflow5, menu="<Image>/Automation") # second item is menu location
main()
Może komuś się przyda