Drawing Lines and Python "For loops"

From Scribus Wiki
Revision as of 21:34, 15 February 2005 by Owencook (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Here is another border, pretty useless but at least I am learnt a bit about Python - the 'for' loops need their following lines to be indented. Also helps to understand the x and y co-ordinates of Scribus

Introduces: CreateLine SetLineWidth SetLineColor and Python for loops.

from scribus import *
Margins = (10, 10, 10, 10)
if NewDoc(Paper_A4, Margins, Portrait, 1, Points, NoFacingPages, FirstPageRight):
#some constants
a = 5						#line width
b="Blue"
m=33						#Fill shade, integer 0-100
g60="Grey60"
spx=30						#Start X
spy=30						#Start Y
a4w=595					        #Width A4 getPageSize ?
a4d=842					        #depth A4 getPageSize ?
#Draw the lines
d = CreateLine(spx-a/2,spy,a4w-30+a/2,spy)	#Top
setLineColor(g60, d)
setLineWidth(a, d)
e = CreateLine(spx,spy,spx,a4d-27)		#LH vertical
setLineWidth(a, e)
setLineColor(g60, e)
f = CreateLine(a4w-30,spy,a4w-30,a4d-27)	#RH vertical
setLineWidth(a, f)
setLineColor(g60, f)
g = CreateLine(spx-a/2,a4d-27,a4w-30+a/2,a4d-27)#Bottom
setLineWidth(a, g)
setLineColor(g60, g)
#Draw the "holes"
for i in range(0,int(770/10)):
 l = CreateRect(spx+5,spy+10+10*i,10,5)
 setFillShade(m,l)
 setLineColor(g60,l)		
for i in range(0,int(770/10)):
 k = CreateRect(a4w-45,spy+10+10*i,10,5)
 setFillShade(m,k)		
 setLineColor(g60,k)
SaveDocAs("Fancy_border.sla") #Make sure this is writable