Switch to full style
Post all Gimp scripts and script writing questions here
Post a reply

script to load text file and create text layer

Thu Mar 18, 2021 4:04 pm

I wrote this script and when I click on the font button I get the error dialog.

Code:
(define (script-fu-text-box inText inFont inFontSize inTextColor))


(script-fu-register
    "script-fu-text-box"                        ;func name
    "Load Text"                                 ;menu label
    "Loads the corresponding text file."        ;description
    "me"                              ;author
    "copyright 2021, me"              ;copyright notice
    "March 16, 2021"                            ;date created
    ""                     ;image type that the script works on
    SF-STRING      "Text"          "Text Box"   ;a string variable
    SF-FONT        "Font"          "Charter"    ;a font variable
    SF-ADJUSTMENT  "Font size"     '(50 1 1000 1 10 0 1)
                                                ;a spin-button
    SF-COLOR       "Color"         '(0 0 0)     ;color variable
  )
  (script-fu-menu-register "script-fu-text-box" "<Image>/File/Create/Text")



Image


I have a bunch of jpg picture files that have corresponding text files (same name but .txt instead of .jpg).
I want the script to load the text of the corresponding text file.
I'm hoping I can get the full path of the loaded jpg and replace .jpg with .txt and then load the text and create a text layer.
I have hundreds of images with corresponding text files so I'm hoping I can run this from the command line.
If someone wants give me a head start then that would be great. :-)

Re: script to load text file and create text layer

Fri Mar 19, 2021 1:08 am

It's been a long time since I work in scheming. I think you should learn python, is much easier that scheme. You should start here:
www.youtube.com Video from : www.youtube.com

Re: script to load text file and create text layer

Fri Mar 19, 2021 7:28 pm

thanks.

Re: script to load text file and create text layer

Sat Mar 20, 2021 5:38 am

bjlockie wrote:I wrote this script and when I click on the font button I get the error dialog.

Code:
(define (script-fu-text-box inText inFont inFontSize inTextColor))


(script-fu-register
    "script-fu-text-box"                        ;func name
    "Load Text"                                 ;menu label
    "Loads the corresponding text file."        ;description
    "me"                              ;author
    "copyright 2021, me"              ;copyright notice
    "March 16, 2021"                            ;date created
    ""                     ;image type that the script works on
    SF-STRING      "Text"          "Text Box"   ;a string variable
    SF-FONT        "Font"          "Charter"    ;a font variable
    SF-ADJUSTMENT  "Font size"     '(50 1 1000 1 10 0 1)
                                                ;a spin-button
    SF-COLOR       "Color"         '(0 0 0)     ;color variable
  )
  (script-fu-menu-register "script-fu-text-box" "<Image>/File/Create/Text")



[ Image ]


I have a bunch of jpg picture files that have corresponding text files (same name but .txt instead of .jpg).
I want the script to load the text of the corresponding text file.
I'm hoping I can get the full path of the loaded jpg and replace .jpg with .txt and then load the text and create a text layer.
I have hundreds of images with corresponding text files so I'm hoping I can run this from the command line.
If someone wants give me a head start then that would be great. :-)


This would be a lot easier with ImageMagick and a shell script: https://legacy.imagemagick.org/Usage/annotating/

If you stick to Gimp, for a batch your don't need to register the script: https://stackoverflow.com/questions/444 ... 0#44435560

Re: script to load text file and create text layer

Thu Apr 15, 2021 6:53 pm

The problem with ImageMagick is that won't save the text as a layer.
I may use that though.

Re: script to load text file and create text layer

Thu Apr 15, 2021 10:26 pm

Where did you place the script? The script have to be install in: C:\Users\YourName\AppData\Roaming\GIMP\2.10\scripts

Re: script to load text file and create text layer

Fri Apr 16, 2021 6:14 am

@bjlockie

The error you are seeing was a bug in GIMP: https://gitlab.gnome.org/GNOME/gimp/-/issues/4641 which was fixed at GIMP 2.10.20 so I thing you need to update your version of GIMP to the latest: 2.10.24
Post a reply