Script Resize selected objects

From Scribus Wiki
Jump to navigation Jump to search
This article is part of the Scripts series.
#!/usr/bin/python

"""
this script asks for a percentage and scales all the selected by that percentage
@author: alessandro rimoldi
@version: 1.0 / 20091025
@copyright (c) 2009 alessandro rimoldi under the mit license
           http://www.opensource.org/licenses/mit-license.html
"""
import sys
try:
   import scribus
except ImportError:
   print "This script only works from within Scribus"
   sys.exit(1)

n = scribus.selectionCount()

if n == 0 :
    scribus.messageBox('Error:', 'No frame selected');
    sys.exit(1)

x = int(scribus.valueDialog('group resize', 'precent resize incremen', '10'))

for i in range(0, n):
    frame = scribus.getSelectedObject(i)
    (w, h) = scribus.getSize(frame)
    w = w + (x * w / 100)
    h = h + (x * h / 100)
    scribus.sizeObject(w, h, frame)