r22545 by gpittman - update InfoBox.py so that PIL not needed
scribus-commit
scribus-commit at lists.scribus.net
Sat May 19 14:58:17 UTC 2018
Author: gpittman
Date: Sat May 19 14:58:17 2018
New Revision: 22545
URL: http://scribus.net/websvn/listing.php?repname=Scribus&sc=1&rev=22545
Log:
update InfoBox.py so that PIL not needed
Modified:
trunk/Scribus/scribus/plugins/scriptplugin/scripts/InfoBox.py
Modified: trunk/Scribus/scribus/plugins/scriptplugin/scripts/InfoBox.py
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=22545&path=/trunk/Scribus/scribus/plugins/scriptplugin/scripts/InfoBox.py
==============================================================================
--- trunk/Scribus/scribus/plugins/scriptplugin/scripts/InfoBox.py (original)
+++ trunk/Scribus/scribus/plugins/scriptplugin/scripts/InfoBox.py Sat May 19 14:58:17 2018
@@ -23,7 +23,9 @@
(C) 2005 by Thomas R. Koll, <tomk32 at gmx.de>, http://verlag.tomk32.de
-(c) 2008, 2010, 2012 modifications, additional features, and reversion back to using PIL again! by Gregory Pittman
+(c) 2008, 2010, 2012, 2018 modifications, additional features, and no need for PIL
+
+by Gregory Pittman
A simple script for exact placement of a frame (infobox)
over the current textbox, asking the user for the width
@@ -61,13 +63,6 @@
print "Unable to import the 'scribus' module. This script will only run within"
print "the Python interpreter embedded in Scribus. Try Script->Execute Script."
sys.exit(1)
-
-pil_found = 1
-
-try:
- from PIL import Image
-except ImportError:
- pil_found = 0
def main(argv):
unit = scribus.getUnit()
@@ -154,20 +149,18 @@
scribus.textFlowMode(new_textbox, 1)
else:
if (frametype == 'imageL'):
- imageload = scribus.fileDialog('Load image','Images(*.jpg *.png *.tif *.JPG *.PNG *.jpeg *.JPEG *.TIF)',haspreview=1)
- if (pil_found == 1):
- im = Image.open(imageload)
- xsize, ysize = im.size
- new_height = float(ysize)/float(xsize)*new_width
- else:
- scribus.messageBox('Please Note',"Your frame will be created once you click OK.\n\nUse the Context Menu to Adjust Frame to Image.\n\nIf your image does not fill the width completely,\nstretch the frame vertically first.",scribus.BUTTON_OK)
+ imageload = scribus.fileDialog('Load image','Images(*.jpg *.png *.tif *.JPG *.PNG *.jpeg *.JPEG *.TIF)',haspreview=1)
+ new_image = scribus.createImage(new_left, float(new_top), new_width, 100,framename)
+ scribus.textFlowMode(new_image, 1)
+ scribus.loadImage(imageload, new_image)
+ scribus.setScaleFrameToImage(new_image)
+ currwidth, currheight = scribus.getSize(new_image)
+ scribus.sizeObject(new_width, currheight/currwidth*new_width, new_image)
+ scribus.setScaleImageToFrame(1,1,new_image)
+ else:
new_image = scribus.createImage(new_left, float(new_top), new_width, float(new_height),framename)
- scribus.loadImage(imageload, new_image)
- else:
- new_image = scribus.createImage(new_left, float(new_top), new_width, float(new_height),framename)
- scribus.textFlowMode(new_image, 1)
- scribus.setScaleImageToFrame(1,1,new_image)
-# scribus.setScaleImageToFrame(scaletoframe=1, proportional=1, name=new_image)
+ scribus.textFlowMode(new_image, 1)
+ scribus.setScaleImageToFrame(1,1,new_image)
if __name__ == '__main__':
# This script makes no sense without a document open
if not scribus.haveDoc():
More information about the scribus-commit
mailing list