[Scribus] Scribus script (2nd try)

Kobus Wolvaardt kobuswolf
Wed Dec 15 04:52:49 CET 2004


Hi,

I think something might have gone wrong with my email and sending  
attachments (even if it was a small one)

Sorry for resending and clogging inboxes.

Take into acount that some of the comments might linewrap.

The two files are artscript.py:
 from scribus import *
x=1 # x starting point
y=53 # y starting point
kol=4 # amount of coloms the article should have
w=53*kol-6 # width of article 53 = colomn width and 6= gutter width  
between colomns
h=10 # intial article hight (it is incremented til the article fits the  
textbox)


myfile = open('frik.art', 'r')     #open file (also attached) that has the  
article in it



opskrif = myfile.readline() #read the article heading
oplen=len(opskrif)
fontg= (w*1.0)/oplen/0.18  #Get the font size (from the amount of chars)  
(is there a better way of doing this?)
h2=fontg/2.0 #determine textbox hight
opsk = createText(x, y, w,h2 ,"opskrif")
setFont("Arial Bold",opsk) ## COMMENT THIS LINE IF YOU DONT HAVE THIS  
FONT!!!
setFontSize(fontg,opsk)
insertText(opskrif, 0, opsk)


y1=y+h2+0.5 # determine y starting point for main text body

#####Namw
naam = myfile.readline() # get authors name





f = createText(x, y1, w, h,"teksligaam") # create body of text
SetTextAlignment(3, f)
setColumns(kol,f ) # set colomns


paragrawe = myfile.readline()   #get the amount of paragraphs
tel=0
for i in range(int(paragrawe)):  ##verander 5 na str->int van paragrawe
  a=myfile.readline() # read the paragraphs one by one (I dont think its  
neccesary but I had another bug that needed this)
  insertText(a, tel, f) # and insert in text box
  tel=tel+len(a)


fotokol = myfile.readline() # get the size of the photo (in colomns)
if int(fotokol) > 0:
    fotos=myfile.readline() # get photo name

myfile.close()
fokol=int(fotokol)
p=CreateImage(53,y1,51*fokol,4.24*10*fokol,"prentjie") # create image
   #I dont know to get the image size. At this point im just guesing the y  
size (and the picture doesnt want to scale to frame size - how do I set it  
to scale to frame size mode?)


LoadImage(fotos,p) # load image
TextFlowsAroundFrame("prentjie",1)

g = createText(x, y-h*2, w, h,"uitvee") # create a textbox to link to.  
(used to resize mainbody text)

linkTextFrames(f,g) # link it

while ( getTextLength(g) > 0 ):
     h=h+4.2437 # resize the main body text till there are no overflow  
chars in "uitvee"
     sizeObject(w,h,f)
deleteObject(g)

bolyn=CreateLine(1,y1+3,48,y1+3) # create the authors place (two lines  
with author name in between)
onderlyn=CreateLine(1,y1+8,48,y1+8)
naamboks = createText(1,y1+3,47,5.8,"naamdoos")
SetTextAlignment(1, naamboks)
TextFlowsAroundFrame("naamdoos",1) # set it that text flows around box
insertText(naam, 0, naamboks)
################################END OF SCRIPT#############################
The article file frik.art:
Die KOP word hier geplaas
Frikkinskie Wolwenhardt
5
Maandag vroegoggend is daar aan die Amerikaanse weskus geskiedenis gemaak  
toe die eerste privaat ruimtetuig die ruimte in is. Die span wat deur  
Microsoft se ander miljarder, Paul Allen, gefinansier is, is binne 'n  
korte drie jaar en met 'n skamele $30 miljoen suksesvol die ruimte in.
In Suid-Afrikaanse terme is dit 'n groot bedrag maar as 'n mens in ag neem  
dat een lansering van die pendeltuig $500 miljoen kos, dan is $30 miljoen  
vir die hele projek nie veel nie. Trouens, toe die sjampanjeproppe agterna  
geklap het, het daar reeds stemme opgegaan wat die Amerikaanse  
ruimtekorporasie, NASA, gekasty het vir hulle burokratiese  
ondoeltreffendheid. Die toekoms van ruimtevaart behoort aan die  
privaatsektor is gese.
`n Mislukte musiekfees, grootskaalse visumbedrog en regsaksies teen die  
voorsitter van die SA Business Club het die Suid-Afrikaanse gemeenskap in  
Londen die afgelope week geruk. In aldrie gevalle is Suid-Afrikaners wat  
geleenthede in die VK wou benut deur opportunistiese landsgenote  
uitgebuit. Die vraag ontstaan of - en hoe - sulke skades en skandes in die  
toekoms vermy kan word.
Die oorgangsgewigte vanaf die toestand na die volgende toestande by die  
begin toestand se gewig te tel. Met elke volgende simbool wat ontvang  
word, word die oorgangs gewigte na 'n toestand van al die vorige toestande  
af, bymekaar getel. Die kleinste gewig word gehou en die ander oorgange  
word weggegooi. Met elke volgende iterasie vind jy al agt toestande se  
gewigte en die toestand wat elkeen voorafgegeaan het.
Scaled Composites, die maatskappy wat die ontwikkeling gedoen het, het  
baie deurbrake gemaak. Hulle maak onder andere van 'n soort rubber en  
laggas gebruik om hulle vuurpyl sy vuur te gee. Verder het hulle nuwe  
oplossings bedink om ou probleme goedkoop en effektief op te los.
1
test.png
###################END OF ARTICLE FILE###### test.png should exist or be  
changed into something that exists.


Hope this helps somebody and I would like to know if this can be done in  
any other way (exept by hand obviously) because this seems to obvious to  
not be implemented in layout programs.

Cheers,
Kobus








-- 
Using Opera's revolutionary e-mail client: http://www.opera.com/m2/




More information about the scribus mailing list