एक मेज का आयात चित्रों के माध्यम से पुनरावृत्ति

वोट
0

अजगर docx का उपयोग कर छवियों को आयात करना। पुराने पोस्ट लेकिन यह एक 3 पंक्ति, 2 col मेज पर परिवर्तित करने में असमर्थ से कुछ मदद मिले।

from docx import Document

document = Document()
tables = document.tables
table = document.add_table(rows=1, cols=2)
row_cells = table.add_row().cells

**for i, image in enumerate(['image1.jpg', 'image2.jpg']):
    paragraph = row_cells[i].paragraphs[0]**
    run = paragraph.add_run()
    run.add_picture(image)
document.save('doc.docx')

मैं यह करने के लिए अनुकूलित है ...

document = Document()
tables = document.tables

table = document.add_table(rows=3, cols=2)
table.style = 'Table Grid'
row_cells = table.add_row().cells

Inc1 = ['1.jpg', '2.jpg','1.jpg', '2.jpg','1.jpg', '2.jpg']
length =  len (Inc1)
for i in range(length):
for j in table.rows:
    for k in table.columns:
        paragraph = table.add_row().cells[i].paragraphs[0]
        run =  table.add_row().cells[i].paragraphs[0].paragraph.add_run()
        run.add_picture('1.jpg', width = Inches(1))

document.save('test.docx')
02/12/2019 को 23:58
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


1 जवाब

वोट
1

आप बहुत अधिक पंक्तियाँ जोड़ रहे हैं। आप सभी पंक्तियों के बाद तालिका बनने की जरूरत नहीं होनी चाहिए। एक पंक्ति का उपयोग कर पहुंचें table.rows[i]जहां iमें है (0, 1, 2)

कुछ की तरह तो:

document = Document()
table = document.add_table(rows=3, cols=2)

Inc1 = ['1.jpg', '2.jpg','1.jpg', '2.jpg','1.jpg', '2.jpg']

for irow in range(3):
    for icol in range(2):
        paragraph = table.rows[irow].cells[icol].paragraphs[0]
        run = paragraph.add_run()
        run.add_picture(Inc1[(irow*2)+icol], width=Inches(1))

document.save('test.docx')
03/12/2019 को 00:29
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more