win32com + word

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Gast

Hallo,
ich schreibe gerade an einem Programm, dass karten ausdrucken soll, wo ein barcode drauf ist. dazu müsste ich 2 texte mit 2 verschiedenen fonts und größen einfügen, leider funktionierts nicht so ganz. Hoffe Ihr könnt mir helfen :)


Gruß
ein Python-Fan

Code: Alles auswählen

def Pass(c,v,n,j):
    code=barcode(c)
    word = win32com.client.Dispatch("Word.Application")
    word.Visible = 1
    doc=word.Documents.Add()
    doc.PageSetup.LeftMargin = 20
    doc.PageSetup.TopMargin = 20
    doc.PageSetup.BottomMargin = 20
    doc.PageSetup.RightMargin = 20
    doc.Content.Font.Name = 'Lucida Console'
    doc.Content.Font.Size = 9
    doc.Content.Text = '\n\n\n\n\n\n   '+ v +(14-len(v))*' '+ n +(15-len(n))*' '+ j
    doc.Content.Font.Name = 'Code EAN13'
    doc.Content.Font.Size = 52
    doc.Content.Text = '\n    '+str(code)
    hw=doc.Shapes
    hw.AddPicture('E:\\pass.gif')
    
ums zu testen müsste man es natürlich etwas ändern... :P

Edit (Leonidas): Code in Python-Tags gesetzt.
N317V
User
Beiträge: 504
Registriert: Freitag 8. April 2005, 13:23
Wohnort: München

Was ist denn nun Deine Frage?
Es gibt für alles eine rationale Erklärung.
Außerdem gibt es eine irrationale.

Wie man Fragen richtig stellt
Gast

Wie kann ich 2 verschieden formatierte texte einfügen?

denn wenn man das so laufen lässt zeigt er nur den letzten text an. er überschreibt also den ersten text
N317V
User
Beiträge: 504
Registriert: Freitag 8. April 2005, 13:23
Wohnort: München

Das ist ja eigentlich eine VisualBasic-Frage. Ein Möglichkeit wäre InsertAfter bzw. InsertParagraphAfter.

Also z.B. fügt doc.Content.InsertAfter('BlahBlubb') den String 'BlahBlubb' am Ende Deines Dokumentes ein.

Schau mal, ob Du eine Datei namens VBAWRD8.HLP (Word 97) im System findest. Dort ist sowas dokumentiert. (Wenn man die microsoftschen Ergüsse als Dokumentation bezeichnen will :roll: ) Die Zahl am Ende des Dateinamens hängt von Deiner Word-Version ab. Sieht man in den Eigenschaften der WINWORD.EXE.
Es gibt für alles eine rationale Erklärung.
Außerdem gibt es eine irrationale.

Wie man Fragen richtig stellt
Antworten