forked from rbrito/scripts
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpdfa.ps
More file actions
42 lines (39 loc) · 9.34 KB
/
pdfa.ps
File metadata and controls
42 lines (39 loc) · 9.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
%!
% Define an ICC profile.
%
% Most of the following was stolen from
% https://github.com/jbarlow83/OCRmyPDF/commit/17ac9d7a
%
% The contents of the /ICCProfile below were generated with:
%
% with open('/usr/share/color/icc/sRGB.icc', 'rb') as f:
% bytes_icc_profile = f.read()
% icc_profile = base64.a85encode(bytes_icc_profile, adobe=True).decode('ascii')
% with open('/tmp/foo.ps', 'w') as fwr:
% fwr.write(icc_profile)
%
/ICCProfile <~!!!rFCh%='!\aTSD/OH9;Fa%r=BSfM#Li_Z!"Ao:!"o89@:O@t9iFM\zCh%='zzzz!!)`D!!*'"!!(J"Ch%='zzzzzzzzzzz!!!!-A8Q3p!!!$6!!!"6A7]gl!!!%M!!!"4A8Pjf!!!&`!!!"4GB@eG!!!'s!!!!5E`cIJ!!!(2!!!!5@TZc:!!!(F!!!!5B38;?!!!(Z!!!!5E`>q(!!!(n!!!95B2hbr!!!A-!!!95@T65m!!!YA!!!95@q]n"!!!qU!!!!E@rQI1!!!r$!!!!BA7]glz!!!!1Ch%='+D58'ATD4$ARln`zzzzzzzzzzzzzzzzzzzzA7]glz!!!!&F&GLpzzzzzzzzzzzzzzzzzzzzzzA7]glz!!!!&F&GLpzzzzzzzzzzzzzzzzzzzzzz=BSfMz!!)UR!!*'"!!*k&=BSfMz!!$r%!!#"H!!!+_=BSfMz!!":8!!!O^!!'IA=BSfMz!!$K)!!'Ki!!!km@s)g8z!!!-%!!!!&!"&]:!#,DN!$2+b!%7h!!&=O5!':0G!(?l[!)ESo!*K;.!+Q"B!,V^V!-\Ej!.b-)!/gi=!0mPQ!1s7e!3#t$!3uU6!5&<J!6,#^!71_r!8@M3!9F4H!:U!^!;cct!=&W7!>>JO!?V=g!@n1+!B:*D!C[#_!E&r$!FPq@!H%p\!IOp#!K-uA!La%_!N?+)!P&6I!QbAi!SIM4!U0XU!Vuj"!Xo,E!Z_=h!\XU7!^Ql\!`T5,!bVRS!dXp$!fd>L!hoat!k&0H!m:Yq!oO.G!qcWq!t,2H"!Iau"#pBM"&B#&"(hXU"+C?0"-s%`"0Ma;"31Mm"5j:J"8N'(";:n\">'a<"@rYq"ChRS"F^K4"I]Il"L\HO"OdM4"RlQn"UtVT"Y0a;"\Al""_S!_"bm2H"f;I2"iUYq"m#p]"pP8I"t'U6#"Sr$#&4?h#)ibW#-S6H#13Y8#5&3+#8mas#<`;f#@RjZ#DNJO#HS0F#LWk=#P\Q4#Tj=-#Y#)'#]9p"#aPar#egSm#j2Kj#nRCh#s&Ag$"O?f$',Cg$+^Gh$0;Kj$5!Um$9\_q$>Kp!$CD1'$H3A-$M+W5$R,s=$W.:G$\/VP$a:#[$fMKh$k`su$ptG.%!;u=%&XNL%+u'\%1Nan%6tA+%<N&>%B0fS%GhQh%MK=)%S7.@%Y"tX%^lkq%dji6%j_`P%pfcm&!da4&'kdQ&.&mp&47";&:P1[&@iA(&G6VK&MXkn&T&,=&ZQGb&a0i4&ge5[&nDW.&u-)W'&sW-'-e/X'4V].';Q;\'BKo4'IOSd'P\>?'Wi(p'^uhM'f6Y+'mLI_'tk@?('>=!(.f9X(696:(=j8t(EF;X(M+D>(TnS&(\\ac(dJpL(lB06(tBK")'Bec)/C+P)7LL>)?^s.)GqDs)P.kd)XJCW)`o!K)i>T?)ql85*%Dq+*.&[#*6]Dq*?H4k*H3$e*Q&oa*Yoe^*bla\*ki][*to_[+))g]+28o_+;H"b+D`0f+N,Dl+WMXr+a"s%+jM8.+t"R7,(_#B,2FIN,<-o[,EsFi,Ocs#,Y]P3,c`3E,mbkW-"nTk--%>+-7:-A-ANqW-Klfo-V5\3-`\WM-k.Rh-ugZ0.+B[M.6&[email protected](W.VL<$.aKUH.lJnl/"J3</-RRb/8d#5/CuH^/O:t3/ZUJ^/f$'5/qP^b0((A<03U#k0?5aF0JtP#0VgDW0bQ350nM-k1%I(L11N)/1=S)h1Ia0M1Uo721b1Co1nHPV2%qiA22='+2>oEl2KC^Y2X*.G2deS72qL#'3)DSn364)`3C5`U3P7BJ3]9$@3jLg84"WO04/tC+4=<7&4JY+"4X*$t4eY$s4s3$s5+k*t59W7"5GCC%5U/O)5c-g05q,*76**B?681`H6FB/S6TRS_6bl(l6q9Y&7*\4679)dF7G^KX7V>2k7dro*7sdbA8-MOW8<HHp8KCB48Z>;N8iK@j9#O@292eKP9B&Vp9QEh<9`e$]9p8<,:*iYQ::F"!:J"?G:Yehp:iT=D;$Klo;4CGF;DD's;TD]L;dWJ';ta0W<0(#5<@Cji<PhcI<a8\)<qfZ`=-?YC=>*d)=Nahc=_V$K=pJ53>,GKr>=Db]>NK*I>_ZM7>pip&?--Ck?>Nr]?OpLP?aF,D?rpa9@/OG/@A73'@S(%!@dmkpA!^]kA3a[iAEdYgAWgWfAj'ahB'<kjB9QumBKp0rB^BG#Bprc+C.N*3CA2L>CSttJCfbGVD$XudD7ONsDJO..D]WhADp`MSE/&>iEB8*)EU\!AEi*mYF'WjsF;/h9FNekUFbOtsG!:)=G5-8^GI)N+G]%cMGq+)rH09KCHDPrkHXhE>Hm*lgI,TK>IA))jIU[cCIj9GrJ)u2NJ>e#+JSTh]JhVe>K(O[sK=Z^VKRea9Kh$itL(8rYL=_2BLS'A*LhV[jM)1!VM>iBCMTUi2MjB;!N+7ghNA6E[NW5#NNm<\DO.MF;OD^02O["u,OqEk'P2ha#PI?\uP_t^tQ!]fuQ8Fo"QO9(%Qf+6)R(/P0R?3j7RV8/?RmNUJS/e&USG/RbS^O)pT!"\+T8T?<TP:(OTgtfbU*cV#UB[K:UZS@QUrT;kV5^=1VMh>MVf&EjW)BS4WAgfUWZ8%"Wrf>EX6H]jXO+(;XgkMcY+`$7YD]UbY][28Z!aifZ:hL?ZT,:oZmE)L[1fs*[K3g^[d^b>\)=c!\C%iZ\\bp>]!].&];N:b]UQSL]oTl7^4a6#^O!Zf^i7*U_.UUE_I(17_cXh+`)4Iu`Cn1k`^[tca$Ib\a?@VWaZ@PSauIPQb;RPPbVdVPbr*bRc8NtVcSs1[coKIad6,gjdQc0rdmV[)e4J05eP=ZBelC;Rf3HqcfOWXufkf@3g323IgOS&_gkso!h3Qn;hP/mVhlkrri4\);iQU:[inNL'j6PcIjS\+mjpgI=k9&ldkVDA7ksjpal<EQ8lYu1em"Xm>m@<Smm^2FJn'(9'nE'1\nc/0=o,7.toJH3Wohb><p20O#pPS_`po+!Jq8`>5qWIa"r!3.er@.]Vr_*7Gs)%f9@s)g8z!!!-%!!!!&!"&]:!#,DN!$2+b!%7h!!&=O5!':0G!(?l[!)ESo!*K;.!+Q"B!,V^V!-\Ej!.b-)!/gi=!0mPQ!1s7e!3#t$!3uU6!5&<J!6,#^!71_r!8@M3!9F4H!:U!^!;cct!=&W7!>>JO!?V=g!@n1+!B:*D!C[#_!E&r$!FPq@!H%p\!IOp#!K-uA!La%_!N?+)!P&6I!QbAi!SIM4!U0XU!Vuj"!Xo,E!Z_=h!\XU7!^Ql\!`T5,!bVRS!dXp$!fd>L!hoat!k&0H!m:Yq!oO.G!qcWq!t,2H"!Iau"#pBM"&B#&"(hXU"+C?0"-s%`"0Ma;"31Mm"5j:J"8N'(";:n\">'a<"@rYq"ChRS"F^K4"I]Il"L\HO"OdM4"RlQn"UtVT"Y0a;"\Al""_S!_"bm2H"f;I2"iUYq"m#p]"pP8I"t'U6#"Sr$#&4?h#)ibW#-S6H#13Y8#5&3+#8mas#<`;f#@RjZ#DNJO#HS0F#LWk=#P\Q4#Tj=-#Y#)'#]9p"#aPar#egSm#j2Kj#nRCh#s&Ag$"O?f$',Cg$+^Gh$0;Kj$5!Um$9\_q$>Kp!$CD1'$H3A-$M+W5$R,s=$W.:G$\/VP$a:#[$fMKh$k`su$ptG.%!;u=%&XNL%+u'\%1Nan%6tA+%<N&>%B0fS%GhQh%MK=)%S7.@%Y"tX%^lkq%dji6%j_`P%pfcm&!da4&'kdQ&.&mp&47";&:P1[&@iA(&G6VK&MXkn&T&,=&ZQGb&a0i4&ge5[&nDW.&u-)W'&sW-'-e/X'4V].';Q;\'BKo4'IOSd'P\>?'Wi(p'^uhM'f6Y+'mLI_'tk@?('>=!(.f9X(696:(=j8t(EF;X(M+D>(TnS&(\\ac(dJpL(lB06(tBK")'Bec)/C+P)7LL>)?^s.)GqDs)P.kd)XJCW)`o!K)i>T?)ql85*%Dq+*.&[#*6]Dq*?H4k*H3$e*Q&oa*Yoe^*bla\*ki][*to_[+))g]+28o_+;H"b+D`0f+N,Dl+WMXr+a"s%+jM8.+t"R7,(_#B,2FIN,<-o[,EsFi,Ocs#,Y]P3,c`3E,mbkW-"nTk--%>+-7:-A-ANqW-Klfo-V5\3-`\WM-k.Rh-ugZ0.+B[M.6&[email protected](W.VL<$.aKUH.lJnl/"J3</-RRb/8d#5/CuH^/O:t3/ZUJ^/f$'5/qP^b0((A<03U#k0?5aF0JtP#0VgDW0bQ350nM-k1%I(L11N)/1=S)h1Ia0M1Uo721b1Co1nHPV2%qiA22='+2>oEl2KC^Y2X*.G2deS72qL#'3)DSn364)`3C5`U3P7BJ3]9$@3jLg84"WO04/tC+4=<7&4JY+"4X*$t4eY$s4s3$s5+k*t59W7"5GCC%5U/O)5c-g05q,*76**B?681`H6FB/S6TRS_6bl(l6q9Y&7*\4679)dF7G^KX7V>2k7dro*7sdbA8-MOW8<HHp8KCB48Z>;N8iK@j9#O@292eKP9B&Vp9QEh<9`e$]9p8<,:*iYQ::F"!:J"?G:Yehp:iT=D;$Klo;4CGF;DD's;TD]L;dWJ';ta0W<0(#5<@Cji<PhcI<a8\)<qfZ`=-?YC=>*d)=Nahc=_V$K=pJ53>,GKr>=Db]>NK*I>_ZM7>pip&?--Ck?>Nr]?OpLP?aF,D?rpa9@/OG/@A73'@S(%!@dmkpA!^]kA3a[iAEdYgAWgWfAj'ahB'<kjB9QumBKp0rB^BG#Bprc+C.N*3CA2L>CSttJCfbGVD$XudD7ONsDJO..D]WhADp`MSE/&>iEB8*)EU\!AEi*mYF'WjsF;/h9FNekUFbOtsG!:)=G5-8^GI)N+G]%cMGq+)rH09KCHDPrkHXhE>Hm*lgI,TK>IA))jIU[cCIj9GrJ)u2NJ>e#+JSTh]JhVe>K(O[sK=Z^VKRea9Kh$itL(8rYL=_2BLS'A*LhV[jM)1!VM>iBCMTUi2MjB;!N+7ghNA6E[NW5#NNm<\DO.MF;OD^02O["u,OqEk'P2ha#PI?\uP_t^tQ!]fuQ8Fo"QO9(%Qf+6)R(/P0R?3j7RV8/?RmNUJS/e&USG/RbS^O)pT!"\+T8T?<TP:(OTgtfbU*cV#UB[K:UZS@QUrT;kV5^=1VMh>MVf&EjW)BS4WAgfUWZ8%"Wrf>EX6H]jXO+(;XgkMcY+`$7YD]UbY][28Z!aifZ:hL?ZT,:oZmE)L[1fs*[K3g^[d^b>\)=c!\C%iZ\\bp>]!].&];N:b]UQSL]oTl7^4a6#^O!Zf^i7*U_.UUE_I(17_cXh+`)4Iu`Cn1k`^[tca$Ib\a?@VWaZ@PSauIPQb;RPPbVdVPbr*bRc8NtVcSs1[coKIad6,gjdQc0rdmV[)e4J05eP=ZBelC;Rf3HqcfOWXufkf@3g323IgOS&_gkso!h3Qn;hP/mVhlkrri4\);iQU:[inNL'j6PcIjS\+mjpgI=k9&ldkVDA7ksjpal<EQ8lYu1em"Xm>m@<Smm^2FJn'(9'nE'1\nc/0=o,7.toJH3Wohb><p20O#pPS_`po+!Jq8`>5qWIa"r!3.er@.]Vr_*7Gs)%f9@s)g8z!!!-%!!!!&!"&]:!#,DN!$2+b!%7h!!&=O5!':0G!(?l[!)ESo!*K;.!+Q"B!,V^V!-\Ej!.b-)!/gi=!0mPQ!1s7e!3#t$!3uU6!5&<J!6,#^!71_r!8@M3!9F4H!:U!^!;cct!=&W7!>>JO!?V=g!@n1+!B:*D!C[#_!E&r$!FPq@!H%p\!IOp#!K-uA!La%_!N?+)!P&6I!QbAi!SIM4!U0XU!Vuj"!Xo,E!Z_=h!\XU7!^Ql\!`T5,!bVRS!dXp$!fd>L!hoat!k&0H!m:Yq!oO.G!qcWq!t,2H"!Iau"#pBM"&B#&"(hXU"+C?0"-s%`"0Ma;"31Mm"5j:J"8N'(";:n\">'a<"@rYq"ChRS"F^K4"I]Il"L\HO"OdM4"RlQn"UtVT"Y0a;"\Al""_S!_"bm2H"f;I2"iUYq"m#p]"pP8I"t'U6#"Sr$#&4?h#)ibW#-S6H#13Y8#5&3+#8mas#<`;f#@RjZ#DNJO#HS0F#LWk=#P\Q4#Tj=-#Y#)'#]9p"#aPar#egSm#j2Kj#nRCh#s&Ag$"O?f$',Cg$+^Gh$0;Kj$5!Um$9\_q$>Kp!$CD1'$H3A-$M+W5$R,s=$W.:G$\/VP$a:#[$fMKh$k`su$ptG.%!;u=%&XNL%+u'\%1Nan%6tA+%<N&>%B0fS%GhQh%MK=)%S7.@%Y"tX%^lkq%dji6%j_`P%pfcm&!da4&'kdQ&.&mp&47";&:P1[&@iA(&G6VK&MXkn&T&,=&ZQGb&a0i4&ge5[&nDW.&u-)W'&sW-'-e/X'4V].';Q;\'BKo4'IOSd'P\>?'Wi(p'^uhM'f6Y+'mLI_'tk@?('>=!(.f9X(696:(=j8t(EF;X(M+D>(TnS&(\\ac(dJpL(lB06(tBK")'Bec)/C+P)7LL>)?^s.)GqDs)P.kd)XJCW)`o!K)i>T?)ql85*%Dq+*.&[#*6]Dq*?H4k*H3$e*Q&oa*Yoe^*bla\*ki][*to_[+))g]+28o_+;H"b+D`0f+N,Dl+WMXr+a"s%+jM8.+t"R7,(_#B,2FIN,<-o[,EsFi,Ocs#,Y]P3,c`3E,mbkW-"nTk--%>+-7:-A-ANqW-Klfo-V5\3-`\WM-k.Rh-ugZ0.+B[M.6&[email protected](W.VL<$.aKUH.lJnl/"J3</-RRb/8d#5/CuH^/O:t3/ZUJ^/f$'5/qP^b0((A<03U#k0?5aF0JtP#0VgDW0bQ350nM-k1%I(L11N)/1=S)h1Ia0M1Uo721b1Co1nHPV2%qiA22='+2>oEl2KC^Y2X*.G2deS72qL#'3)DSn364)`3C5`U3P7BJ3]9$@3jLg84"WO04/tC+4=<7&4JY+"4X*$t4eY$s4s3$s5+k*t59W7"5GCC%5U/O)5c-g05q,*76**B?681`H6FB/S6TRS_6bl(l6q9Y&7*\4679)dF7G^KX7V>2k7dro*7sdbA8-MOW8<HHp8KCB48Z>;N8iK@j9#O@292eKP9B&Vp9QEh<9`e$]9p8<,:*iYQ::F"!:J"?G:Yehp:iT=D;$Klo;4CGF;DD's;TD]L;dWJ';ta0W<0(#5<@Cji<PhcI<a8\)<qfZ`=-?YC=>*d)=Nahc=_V$K=pJ53>,GKr>=Db]>NK*I>_ZM7>pip&?--Ck?>Nr]?OpLP?aF,D?rpa9@/OG/@A73'@S(%!@dmkpA!^]kA3a[iAEdYgAWgWfAj'ahB'<kjB9QumBKp0rB^BG#Bprc+C.N*3CA2L>CSttJCfbGVD$XudD7ONsDJO..D]WhADp`MSE/&>iEB8*)EU\!AEi*mYF'WjsF;/h9FNekUFbOtsG!:)=G5-8^GI)N+G]%cMGq+)rH09KCHDPrkHXhE>Hm*lgI,TK>IA))jIU[cCIj9GrJ)u2NJ>e#+JSTh]JhVe>K(O[sK=Z^VKRea9Kh$itL(8rYL=_2BLS'A*LhV[jM)1!VM>iBCMTUi2MjB;!N+7ghNA6E[NW5#NNm<\DO.MF;OD^02O["u,OqEk'P2ha#PI?\uP_t^tQ!]fuQ8Fo"QO9(%Qf+6)R(/P0R?3j7RV8/?RmNUJS/e&USG/RbS^O)pT!"\+T8T?<TP:(OTgtfbU*cV#UB[K:UZS@QUrT;kV5^=1VMh>MVf&EjW)BS4WAgfUWZ8%"Wrf>EX6H]jXO+(;XgkMcY+`$7YD]UbY][28Z!aifZ:hL?ZT,:oZmE)L[1fs*[K3g^[d^b>\)=c!\C%iZ\\bp>]!].&];N:b]UQSL]oTl7^4a6#^O!Zf^i7*U_.UUE_I(17_cXh+`)4Iu`Cn1k`^[tca$Ib\a?@VWaZ@PSauIPQb;RPPbVdVPbr*bRc8NtVcSs1[coKIad6,gjdQc0rdmV[)e4J05eP=ZBelC;Rf3HqcfOWXufkf@3g323IgOS&_gkso!h3Qn;hP/mVhlkrri4\);iQU:[inNL'j6PcIjS\+mjpgI=k9&ldkVDA7ksjpal<EQ8lYu1em"Xm>m@<Smm^2FJn'(9'nE'1\nc/0=o,7.toJH3Wohb><p20O#pPS_`po+!Jq8`>5qWIa"r!3.er@.]Vr_*7Gs)%f9@q]n"z!!<3$!!&eG!!#uF!!#^;!!&FU!!"?X!!!O7FCf]=zDJpY-DfBuBBkM+$/0K(VAKYT*AS#\'!"&~>
def
[/_objdef {icc_PDFA} /type /stream /OBJ pdfmark
[{icc_PDFA}
<<
/N currentpagedevice /ProcessColorModel known {
currentpagedevice /ProcessColorModel get dup /DeviceGray eq
{pop 1} {
/DeviceRGB eq
{3}{4} ifelse
} ifelse
} {
(ERROR, unable to determine ProcessColorModel) == flush
} ifelse
>> /PUT pdfmark
[{icc_PDFA} ICCProfile /PUT pdfmark
% Define the output intent dictionary :
[/_objdef {OutputIntent_PDFA} /type /dict /OBJ pdfmark
[{OutputIntent_PDFA} <<
/Type /OutputIntent % Must be so (the standard requires).
/S /GTS_PDFA1 % Must be so (the standard requires).
/DestOutputProfile {icc_PDFA} % Must be so (see above).
/OutputConditionIdentifier (sRGB)
>> /PUT pdfmark
[{Catalog} <</OutputIntents [ {OutputIntent_PDFA} ]>> /PUT pdfmark