[scribus] batch load svg files into scribus
Gregory Pittman
gpittman at iglou.com
Mon Aug 3 14:17:23 UTC 2020
On 8/3/20 2:47 AM, Meaux Mazey wrote:
> I'm new to email list servers. I'm not seeing my post on the archive. Do I
> need to resend?
>
>
> On Sat, Jul 25, 2020 at 5:59 PM Meaux Mazey <meauxmazey at gmail.com> wrote:
>
>> Hello world,
>> I was looking for a script to batch load svg files into a scribus document.
>> I found a thread from 2015 that gave the function placeSVG (filename, x,y)
>> one function is not a script.
>> Is there a batch script written?
>>
Hi Meaux,
I don't know what happened, but the message never showed up on the 25th.
As far as your question, I think that importing SVGs has a lot of considerations that are hard to generalize, since the placeSVG() command just places the SVG without regard to its size.
Here is a very small script that just places a chosen SVG at 100, 100 (I use points units).
********
#!/usr/bin/env python
# File: impsvg.py
# Imports SVG to document to current page
import scribus
import os
mySVG = scribus.fileDialog('Select an SVG','SVG files (*.svg)')
scribus.placeSVG(mySVG,100,100)
********
If you had a number of SVGs in a directory you could put in a command to select a directory, like
svgdir = scribus.fileDialog('Select SVG Directory','Directories',isdir=True)
d = os.listdir(svgdir)
D = []
for file in d:
if file.endswith('.svg') or file.endswith('.SVG'):
D.append(file)
After this, you would have to have some scheme of where the SVGs would be placed, and go through your list D to place them.
This is something like the script I wrote from creating an album of images, though there I had a much wider range to image types to consider, but this used a fixed layout:
https://wiki.scribus.net/canvas/Automatic_import_of_images:_Versions_not_requiring_Tkinter
Hopefully that's enough to get you started.
Greg
More information about the scribus
mailing list