Adjoumani commited on
Commit
ebdb667
·
verified ·
1 Parent(s): a470693

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +27 -12
app.py CHANGED
@@ -125,16 +125,17 @@ if doc_file and st.button("Lancer la traduction"):
125
  english_text = block[4]
126
 
127
  # Traduction du texte
128
- translated_text = translator.translate(english_text)
129
-
 
130
  # Remplacement du texte
131
- page.draw_rect(bbox, color=None, fill=blanc, oc=ocg_xref)
132
 
133
  # Correction : s'assurer que french est une chaîne de caractères
134
- if isinstance(translated_text, list):
135
- translated_text = " ".join(translated_text) # Joint les éléments de la liste en une seule chaîne
136
- elif translated_text is None: # Gère le cas où la traduction est None
137
- translated_text = "" # Remplace par une chaîne vide
138
  #page.insert_textbox(
139
  # bbox,
140
  # translated_text,
@@ -143,11 +144,25 @@ if doc_file and st.button("Lancer la traduction"):
143
  # oc=ocg_xref,
144
  #)
145
 
146
- page.insert_htmlbox(
147
- bbox,
148
- translated_text,
149
- oc=ocg_xref,
150
- )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
151
 
152
  # Mise à jour de la barre de progression
153
  progress_bar.progress((page_num + 1) / total_pages)
 
125
  english_text = block[4]
126
 
127
  # Traduction du texte
128
+ #translated_text = translator.translate(english_text)
129
+ # Découper le texte en segments de 500 caractères max
130
+ chunks = [english_text[i:i+500] for i in range(0, len(english_text), 500)]
131
  # Remplacement du texte
132
+ #page.draw_rect(bbox, color=None, fill=blanc, oc=ocg_xref)
133
 
134
  # Correction : s'assurer que french est une chaîne de caractères
135
+ #if isinstance(translated_text, list):
136
+ # translated_text = " ".join(translated_text) # Joint les éléments de la liste en une seule chaîne
137
+ #elif translated_text is None: # Gère le cas où la traduction est None
138
+ # translated_text = "" # Remplace par une chaîne vide
139
  #page.insert_textbox(
140
  # bbox,
141
  # translated_text,
 
144
  # oc=ocg_xref,
145
  #)
146
 
147
+ #page.insert_htmlbox(
148
+ # bbox,
149
+ # translated_text,
150
+ # oc=ocg_xref,
151
+ #)
152
+ translated_text = ""
153
+
154
+ for chunk in chunks:
155
+ if chunk.strip(): # Ignorer les chunks vides
156
+ try:
157
+ translated_chunk = translator.translate(chunk)
158
+ translated_text += translated_chunk + " "
159
+ except Exception as e:
160
+ st.warning(f"Erreur sur un segment : {str(e)}")
161
+ translated_text += chunk + " " # Garde le texte original en cas d'échec
162
+
163
+ # Appliquer la traduction au PDF
164
+ page.draw_rect(bbox, color=None, fill=blanc, oc=ocg_xref)
165
+ page.insert_htmlbox(bbox, translated_text.strip(), oc=ocg_xref)
166
 
167
  # Mise à jour de la barre de progression
168
  progress_bar.progress((page_num + 1) / total_pages)