feat: extraction OGC et génération de PDFs propres
Pipeline complet pour extraire les données structurées des fiches OGC scannées (recueil praticien conseil + concertation) et générer des PDFs propres et lisibles à partir des JSON extraits. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
99
output/pdf_propres_ocg/OGC 76 - propre.pdf
Normal file
99
output/pdf_propres_ocg/OGC 76 - propre.pdf
Normal file
@@ -0,0 +1,99 @@
|
||||
%PDF-1.4
|
||||
%“Œ‹ž ReportLab Generated PDF document (opensource)
|
||||
1 0 obj
|
||||
<<
|
||||
/F1 2 0 R /F2 3 0 R /F3 4 0 R
|
||||
>>
|
||||
endobj
|
||||
2 0 obj
|
||||
<<
|
||||
/BaseFont /Helvetica /Encoding /WinAnsiEncoding /Name /F1 /Subtype /Type1 /Type /Font
|
||||
>>
|
||||
endobj
|
||||
3 0 obj
|
||||
<<
|
||||
/BaseFont /Helvetica-Bold /Encoding /WinAnsiEncoding /Name /F2 /Subtype /Type1 /Type /Font
|
||||
>>
|
||||
endobj
|
||||
4 0 obj
|
||||
<<
|
||||
/BaseFont /Helvetica-Oblique /Encoding /WinAnsiEncoding /Name /F3 /Subtype /Type1 /Type /Font
|
||||
>>
|
||||
endobj
|
||||
5 0 obj
|
||||
<<
|
||||
/Contents 10 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 9 0 R /Resources <<
|
||||
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
|
||||
>> /Rotate 0 /Trans <<
|
||||
|
||||
>>
|
||||
/Type /Page
|
||||
>>
|
||||
endobj
|
||||
6 0 obj
|
||||
<<
|
||||
/Contents 11 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 9 0 R /Resources <<
|
||||
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
|
||||
>> /Rotate 0 /Trans <<
|
||||
|
||||
>>
|
||||
/Type /Page
|
||||
>>
|
||||
endobj
|
||||
7 0 obj
|
||||
<<
|
||||
/PageMode /UseNone /Pages 9 0 R /Type /Catalog
|
||||
>>
|
||||
endobj
|
||||
8 0 obj
|
||||
<<
|
||||
/Author (\(anonymous\)) /CreationDate (D:20260318161809+01'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20260318161809+01'00') /Producer (ReportLab PDF Library - \(opensource\))
|
||||
/Subject (\(unspecified\)) /Title (\(anonymous\)) /Trapped /False
|
||||
>>
|
||||
endobj
|
||||
9 0 obj
|
||||
<<
|
||||
/Count 2 /Kids [ 5 0 R 6 0 R ] /Type /Pages
|
||||
>>
|
||||
endobj
|
||||
10 0 obj
|
||||
<<
|
||||
/Filter [ /ASCII85Decode /FlateDecode ] /Length 4182
|
||||
>>
|
||||
stream
|
||||
Gb"/+>BAOW(4Q"]^sg<jCgc$(P2.Ke;IXcba,um_SZVe)aE4G@/rh>kgOHsC+E=*"0h'\d*]e"5JKK\hG]7V>!(dcR5?.YE>9`_2/NS5G&S:2"!E"CO]"LM,gQO9<[-5U8k!BE3_H>e_E";UC9JjEXF93[`4"(NDKE2sJolsGq(.X`\,SC+7hP8OYj2&\??/9KmLZ?5HjTl;cBJLKR(l^2rn,p7iSDT>3j3]_&]Xsc8Mg))2<Jhj[Zen^RQu(.1_q!QR5G6cWkk7O=\i`*ZrZ;'gYoaR=r=[^:%M[eW$Et'eb"%='mq6PuOpZV&k(1qEh<>pr"Dp*>.U/e)m3Y9D%P@-o5k!1TI"h!4BK3^mak((27C2Z%Q>X.QG.q8tChpa6('+dl/]9D=G71cKd3bEdmupNrRP,bHfiF*:8C.J:ghl[#.*]3ICR(af:Fel_8qKMPa&,6sPXNSHiNZ4Bn2mkqF9l@1Tfge-=,<GP<m_TfdpEim<f&dP-:?a`-p\6LaiD@_bL0r/ch`iS)F[-i4@OnGnb)\U#LJW8kEEaXi8WS#H/QgY1*LWg7!ps9DoUD(l*O'RErp[*Lhrm/UBjMSki"@RaYlT^C'Hoj[$keiG?bL%JI3?\T+Q7d#`WTop]^YG/nShgp&qbqIjZbc!(TZrn-B72$WUtnVA^TVF],eE>X,D^h(VNa>h07j%1Dc`j^M)kD%uL:rHY`,a2<@`Vq1'_ikN3;&o?Lpamu]+i/R=K;oKmjCZen>]Om%fo8i-FTdIDpH_7`Bq`snMkU2Uo]0<EBRg^Tm.[tCLAn[KH^apmE1XEN$00=;n]j-/sbcI?qokjqZX81?]N"n]"V->4lEkPX,KA-+5!c3EGS%V8gmd6\DBOT_SC=6Y4Hkh<8-V_&Jl8@83@.j+/<Np=B=9L`&J:_X5JG1qSfi\$gL^9Je/>KYkbM(V-3m6[M"tc%hQX*L%@nG_I;\A#N1Z$HhA]bZirMuV2S.VI=RT'c];UbJ[N#WQhIs_FS7Y;FsF&)lXn=\cJ7=]ZtPX9(GHo]"tb5[+Y="NnZ"[q96ar#MP#eh?Cr)i1e$7HeS')qnLroTa];5;]%/iI^><!.e'!kLc3-BqB%Cq>L+L?k+b5P-e%.>omFZKP\/hF/h*e$(PlO\u*?9]@a>j,W9lRX.;m^Asc4M*_khhJpCrV3Z9BX_KltBnfK'iW>^q,<ej%E2:ZZPr+ge[lIaVA=oq3W?\HESKUX`CTD!;@?26)L+4i"_1I1Bm_K:K&O]!HQeb-3a$)^f[4'p7%I7CZ#SsX.4Ft$i_XV`U^3A$-T%kf:Wnjo"/MInNf"r+<$V2&mIY+;f)uB2=Zi6E-2MA?"gs-n8%OEP-/IXpE0*9g"McunZlT$^6\)(raNZSb"e06#1,ShQhV+DX0jRG$ZP\4k;oU915@k/ag'6TQPUhs4%;(kWNJLBl1])Ln*NT77Qm"J>`fuk.C687sAD"KVG']]i$*22?9f[F`p[\t=p`;tsFW=)^RQO)n7SJ^)9;]=$@XK1k'K&qHDeRn'''a\[,agC!Ho&mlNS*WpH&eR&dBr%r(ro<0kFg]L]3U;4hG=sX&B;'l21rN<gR;&-],^Ad\AD*PeL]hkWH9]mP*oHG<k`dO^;"lC_]=:rre1JYg5ZinTUsTht9JOOTHBMmC6rX5Vr@]aCS6C^C>]sXZG-&<&0#abF7H;RO8's;sUJ\Ddkd_C!B8X^^e>\]jrcOmAc*a3!P-pr;<coP;P('9]'!Mtb<%97aL!nXU+)WtZ8%0S\2BP5Sof0PQ34eK:]'22cjZ'^-W)4sY2ek$^2X2u+2<ll*1eLkK`<Bp.?%E&\V2C2A^0blbrOa3%@5'?7r!_jjr$_4=B]XanKr@;^DbDj?obiL(TMaIJ0]`GlqO_Ua=GhJ4CY1H`*(TgVe$*OgQuSEF%p^M@%0oOo/$jt)_nqq*>kN1Rh)$+q7BS$W2@TnDl.*A>@FMHb!'@1172IjV_niu6;JFc?*"8--.uf9XUOX:V@hLgl;UWRj-t"`UP1Gu>e4-"2d_/\`KBljGMn$n/;(SJ-R[g]`q!s@+YKIrUpC=bhZ'TQdb0*s8F?H2Wqa]CO^<"[n`plpk>>sU61b+Hqnkg/,',\#Y@M3#9l,uWhmT_EF&@tDEWK,k2dFdQlA[H2KPrui_oHF_;+CK*TMkX6dg<4nZ;Jh.5YZ^q%*NmHN_69'i%Wjnh4[(L&YBO<NRM;(JONO4<"-E4Kl59:u+^XH\Tk:LZX]K@@bt_8cf<N&+Dt(W%eF2_55u_Zt=+Rg8VW%%@*DVC-!n:DMX_[I]6c%168_:1\3*aNYT+c'+9uGnK4/A%[Sp``>mWD*JQl!FM]6Bq2W4GW_kZRKm.HMP^5theb[4'(cnu*H]Q%9^'Fsof!0G.'l"[N7"X@lZR4Zf$E#bF)!`lp5L-)B4U4d2W,9[K;I31/\S\AeXEpH#kJFtGRsBkQfq\oN6%h5j6m\p2+/d@ln,Tl4ps^a:UX?=GjT9jU.P2Hne@O"h)*G.e9hE4lL^E1I)O@-mubViE?"=<')N8>\+*Vig@CNR+RGT$nb.Gu=;@B8Oji@VC>rX>?kIa2PRW]>S_uIX3YS_<P8E$VW*1aN_\PMAEB6bN%]2WhC0*3E'db;Z]Nb'L_m[LVtnUh9L>C"BWUTS=:p\@'jDH7b\#!$UYDo919(EVEpi3D+NmTemF]keMn#<Er:aJmDU$ZPj'@Ag"$<BH$HTPWRIFo0XgQ^B<e)AGZ`LEco>*uK?`TCAitK#<9J%8-DN"Ze+7RS=1!:$-l'QPB45V6_ZLgf-S&\4['JPG5,FOO>q;mmWWaoM0NUt)T@RC#B<J&4/[B(m\3[B6]4)!VrZ=e<)$t,817\,sm31AR@b6kjs&R/V<(AB@HoPcQ&#VQcQ5uE.69#l]0$L;]iOR\`014!!bBe&hK8R\6N&S$S60bMSLGc,N?eV1H`7s4]=hA_fAZ/3^i)lq>\1_R=\>jS=E5EVhG4qZ[UY/q#"2P3FEZ`DMPE+V10XC!+bIn>7V5JIE.WVT`=iU'J!MtQA"jbthigmP=NRAh@nT6fQ^E2V5Hj1DIX7<gVMp^V`AirC=mljFlm>!4I+YN"&>iO;59:hf82/67LCeI`!NiW:]&3ENb`(73qRX*m"@b@[\&lm5F>Fm=#jf++SSuSP'SgoQTW<.U>C#l8)9l<=L7\6&9KF215WgPs*aAW8I4B3!2;g#HF2H\!u"Xnu8k$Y8N(T:]3m@dL]RWmEV/_*[B`u5;'YG(I!)@A!K>Khe*ZlD=k16I&LZBqD;=k_'9^F\a5Ed>_q<crDMIA$GHbeYLIB-VnETP/;q)R_XCdKLhQ(J]kFr/&9bTZ\%CCb4?EK%LPjKq%k*6!m?(di.f]3+T:Pq9EX-e.7%VYW;!,^Ko4<POr2noC\pWf7eUmQb%<e`t.tEG-$0TesCK[1bQ>I\7:@=DD*a2SYeHVS$_N>PV;#s2eh6*l:0Rg-Ku3,Nrnu)LapR,ga&72e)=kFbC"Z12V*L.?@SmC(!,bGhTpRr1$q4i,Z4/N/IM[)@bQb8'hTOt8K*c&0-4(75.lK3ZoL(@+bV\bQgCVUkXuMAhoWL/`EI/-+]TO1N:Rq/NtW9<$O]RJJa"Ij)Ge&l)Gjg1F_k;=K\HtAXdO(!'(H;82k+>>T?YiMH>bu?kDQ5S7b*ckdoZiR^N*]V(lmq=R/[qkD=*5.IN#1o6dEq=+]q4YS&$9_#!Zp.j5;Qs9V2/38nIOqGOssXG*jKc#;^BaS#nXDqm;6(dJNRfs8;RYO.fIJ/?'ZV=7f_?!L[9&DSGt[bI7"t\c2@l78tf3#%aR.9(.s#*jmDM'MN[KFPF"XW.j"gC/Jn]CJR==Fp/[*oF"'.3$89:41qY/]3[/@C#[0]$O?)KH\A$LVGl$=jK$#.q.\Vp&qV/rEl/@_p\=.Kq;lfM&uTSO@N&7m@p,<VKC:D]-r4YHo1>ris-$EW'm`ucB%dlt:W!SgB>]T&_FpU1/"f8aFLB<af<[`%D?g,/g&C`CmU)rsCoNm/=6G*!mfhL@/B/n4>+Bf_5<bi'c<%@JICblHZcIGh("9-X;s@oI2QK.:Tj]g9$8h_-e"iJ/oJnF\0%QL#9a9W@Z^#o4B>sJ<Ir*TY.a@P)a>C@d10Z#,#!;t'FL,;Q04iCOY`'@S2\6>p5UZR:c4j2e~>endstream
|
||||
endobj
|
||||
11 0 obj
|
||||
<<
|
||||
/Filter [ /ASCII85Decode /FlateDecode ] /Length 1845
|
||||
>>
|
||||
stream
|
||||
Gau`SgMYb8&:O:SbaXh@VRa>i%gCB@9jQiFW'ufJ%r623Y9@5rMj+'ecg4ODAP6bXTI>K3,'Q"fk007P8<Aaj0`S%2d4]Q%qc/aIBYG`(3!%92e'%R/m>:$YrP7rU.#9:C78=]p5+]ZsCQ@`2#s=$[.GX!'kg@WL'C8Hg^(YgqO5kLTdhhK0^3Fo`Im1VlpQiac7gmY$l$9u-E`KJEf8?konqA0C9Vo=nZn0pWiCC^fFnHE:hpD9K3o0H9`#nL%LH=rF5B[4*hJWu&K>HrHChB1>V\F2ES$ZmU/mCcj$m'$-S5,45RHpJjY"1HAO$JU)-]+QBd)'`UpfGHE!!@DU6ft`D!"ul'Qpn@Y5eNmOL]T:JliJp$ED<^O#LWqK3<FW[@i$BVVlo<'ns*?YCq%J=b/(8P>J[>qK8d(9ENt^O;nMf!M$Q9Nl_LekMo!AL]%,BlVe0DO+k).pD_!$WC3;3aF7hcBPkmW'[\!&+!6=BZ]0#C9;5;"[gGU9J?(Y?n$4kfq^-s.#ZPX23gdR6T)fBgsm>#i&NAF\`0:/Y>1((eSK!YR^=hQ1lS(Ue5o'T(]+5aK8dRC._e:j7u/G]ggfg?-K$3\]e$*k.j<Le8NipB>#r4g]0@s?150aKbN^"A3$+GnGbIp:O[lEed+>Y183*`21+cQrfmpn5.atY4d&uu?XBR:XPJ<JGcJf.sY0h+<(J[h3K1&ol;^UP!_'K@8lfPXn?Sr2A1UC><C3IE(R6!ltLsl&Q(<VRA0[3]MKJP!Ak-!'sUV*de6jV<QH'k6<RH;d,a,j8c>tnC+b?.5iGHj,8.qZ5MaMBPs%D;(?<RnZOFX>Ytl23\hJnPS2"/<5l.'dr;\LmW=foX?9_o;9=O#MtE%O4)c^TT;$pN<Z]3JT1gj<L]tXf[\3KS+B-.`r?UVPMa_;<GHoC=j.\^c1LX-@=S6,m#k'/2%4;IA!:g:7GVoB3bsPZhdcoe.kL_[4HFKp&egVm@A9V3a&';QIf_!dcR,nmmC8s=mDC*Y14qajU;CK:7pNnT]X]NgZ+H'>eE)9]Ne-i0n#pk\O:pQp19o-ptK5c2K^a3a)bKg%lJ,Z?U6o4W="Y^Y;gsO.8r5oIYq#r>&2Z>V$YVU/9QS3Um'Z%jbsii,mm+%eu62>+[CoC`NsYI6Z4c!I/aE<db(EgYB@"kp=bs:)UN5eh7J<<7C2>SZSf$jFh5@oLrS(dieY61.)148=m_0\d.Ok?eQ:2K^:<FJ"#sUrp+<-MAk45%($6@pr!#E%!'?RqCMG2:`BD5eR7utW.l$H=f4BTg8JKd6-nY%JHbaJ10e4ClO='Eg>r,%`TAC]@.]c6EM!XdMdd##J9%1#F&i5t?LLR:kiV!B8Gt3'!NKqFXR.dl?h[[nC(^sQ(fnIYZdgq-&7&>[fc%t$_`"MHFa!UOY2f;55;"IL6Mi;"%p)Vk2nIjZcB;4;LQ)FLdcZ1Nj%&7"bQ-h=?,MJ0d%ST+AFrsH&@3.FU[[l=Gn#"u./mk//+al@"GR&5$PZ-cn:7,Dmji]N01e7!/^tlQgNXSE)HQ7GnZu8B>m'rW/*F/Ld&Ier*>.#$qM;o`3[q^8Z<VtQ&(##SePsduUQg1.)%kim(/"@l,K7aPAQpcSC,8S:Tr5Yu!]F#Q;iaqso)irf#3k50H,d?t<TpYCGRO5khW*;>-*e]T+,X/kh8%p4B0_hpBVJqojG$P"`Ne;`lm\i/DcE7G62oXo]`1uAO@Q=)!f[@XW_aT'&YbT(f-nd\68?fc^php<rDQa;1GU%@Ij14%nn*jfCM"`u[o`!1E43W/0+0pIlJGlT9&.So*rf(b1dpqr4pm[aJrW+U`Sp1~>endstream
|
||||
endobj
|
||||
xref
|
||||
0 12
|
||||
0000000000 65535 f
|
||||
0000000061 00000 n
|
||||
0000000112 00000 n
|
||||
0000000219 00000 n
|
||||
0000000331 00000 n
|
||||
0000000446 00000 n
|
||||
0000000650 00000 n
|
||||
0000000854 00000 n
|
||||
0000000922 00000 n
|
||||
0000001202 00000 n
|
||||
0000001267 00000 n
|
||||
0000005541 00000 n
|
||||
trailer
|
||||
<<
|
||||
/ID
|
||||
[<5336dd45d020386272ba4e1ce31bb1db><5336dd45d020386272ba4e1ce31bb1db>]
|
||||
% ReportLab generated PDF document -- digest (opensource)
|
||||
|
||||
/Info 8 0 R
|
||||
/Root 7 0 R
|
||||
/Size 12
|
||||
>>
|
||||
startxref
|
||||
7478
|
||||
%%EOF
|
||||
Reference in New Issue
Block a user