Rozmiar tabeli w pptx

0

Cześć, stworzyłem pptx z tabelami i potrzebuje się dowiedzieć jaki rozmiar ma dana tabela po wstawieniu do niej tekstu by na podstawie tego móc dopasować drugą tabele która będzie pod pierwszą tabelą. Jakieś pomysły ?

2

sys.getsizeof()

0

próbuje tą funkcją i ciągle pokazuje mi ten sam rozmiar przy każdym przypadku. To jest kawałek z kodu (tekst do tabeli pobieram z excela, a literka k==2 to jest konkretna tabela w pptx)

for row in shape.table.rows:
  for cell in row.cells:
    if k == 2:
      cell.text = ws.cell(i, project_d).value
      if cell.text == "None":
          cell.text = "No data"
      for paragraph in cell.text_frame.paragraphs:
          for run in paragraph.runs:
              run.font.size = Pt(font_size)
              run.font.name = 'Arial'
      print(sys.getsizeof(shape.table.rows))
0

próbuje też tego:

print("width is %s cm" % shape.width.cm)
print("height is %s cm" % shape.height.cm)

ale cały czas pokazuje te same wartości

1

a sys.getsizeof(shape.table) ??

0

Niestety dalej pokazuje tą samą wartość i nie wiem czy to coś nie tak z tabelą jest czy z kodem. Kod dodaje tekst i w zależności od ilości tekstu powiększa tabele a twoja funkcja cały czas pokazuje tę samą wartość tak jakby nie widział żeby tabela się zwiększyła :/

0

Tu jest większość kodu może tu coś jest nie tak xd

prs = Presentation("IP template_v5_v13.pptx")
slides = prs.slides
slide1 = slides[0]
j = 1
for shape in slide1.shapes:
    if j == 3:
      k = 1
            for row in shape.table.rows:
                for cell in row.cells:
                    if k == 1:
                        for paragraph in cell.text_frame.paragraphs:
                            for run in paragraph.runs:
                                run.font.size = Pt(14)
                                run.font.name = 'Arial'                    
                    if k == 2:
                        cell.text = ws.cell(i, project_d).value  
                        if cell.text == "None":
                            cell.text = "No data"
                        for paragraph in cell.text_frame.paragraphs:
                            for run in paragraph.runs:
                                run.font.size = Pt(font_size)
                                run.font.name = 'Arial'
                        print(sys.getsizeof(shape.table))
              k = k + 1

Tabela jest tak jakby podzielona na 2 części stąd k==1 i k==2. Przy k == 1 jest tytuł tabeli (on jest już tam wpisany tylko program zmienia mu czcionek itd.) Przy k==2 dodaje tekst z Excela powiększając tę tabele w zależności od ilości tekstu

też pomyślałem żeby policzył mi ilość enterów w tej tabeli

count = 0
for line in shape:
    if line != "\n":
        count += 1
    print('Total Lines', count)

ale wychodzi z tego tylko to (przy każdym przykładzie):

Total Lines 1
Total Lines 2

1 użytkowników online, w tym zalogowanych: 0, gości: 1