@@ -145,7 +145,7 @@ def pdfRepr(obj):
145
145
elif isinstance (obj , (float , np .floating )):
146
146
if not np .isfinite (obj ):
147
147
raise ValueError ("Can only output finite numbers in PDF" )
148
- r = ( "%.10f" % obj ). encode ( 'ascii' )
148
+ r = b "%.10f" % obj
149
149
return r .rstrip (b'0' ).rstrip (b'.' )
150
150
151
151
# Booleans. Needs to be tested before integers since
@@ -155,7 +155,7 @@ def pdfRepr(obj):
155
155
156
156
# Integers are written as such.
157
157
elif isinstance (obj , (int , np .integer )):
158
- return ( "%d" % obj ). encode ( 'ascii' )
158
+ return b "%d" % obj
159
159
160
160
# Unicode strings are encoded in UTF-16BE with byte-order mark.
161
161
elif isinstance (obj , str ):
@@ -236,11 +236,11 @@ def __repr__(self):
236
236
return "<Reference %d>" % self .id
237
237
238
238
def pdfRepr (self ):
239
- return ( "%d 0 R" % self .id ). encode ( 'ascii' )
239
+ return b "%d 0 R" % self .id
240
240
241
241
def write (self , contents , file ):
242
242
write = file .write
243
- write (( "%d 0 obj\n " % self .id ). encode ( 'ascii' ) )
243
+ write (b "%d 0 obj\n " % self .id )
244
244
write (pdfRepr (contents ))
245
245
write (b"\n endobj\n " )
246
246
@@ -378,7 +378,7 @@ def __init__(self, id, len, file, extra=None, png=None):
378
378
379
379
def _writeHeader (self ):
380
380
write = self .file .write
381
- write (( "%d 0 obj\n " % self .id ). encode ( 'ascii' ) )
381
+ write (b "%d 0 obj\n " % self .id )
382
382
dict = self .extra
383
383
dict ['Length' ] = self .len
384
384
if rcParams ['pdf.compression' ]:
@@ -858,7 +858,7 @@ def _get_xobject_symbol_name(self, filename, symbol_name):
858
858
os .path .splitext (os .path .basename (filename ))[0 ],
859
859
symbol_name )
860
860
861
- _identityToUnicodeCMap = """/CIDInit /ProcSet findresource begin
861
+ _identityToUnicodeCMap = b """/CIDInit /ProcSet findresource begin
862
862
12 dict begin
863
863
begincmap
864
864
/CIDSystemInfo
@@ -1096,18 +1096,17 @@ def embedTTFType42(font, characters, descriptor):
1096
1096
unicode_bfrange = []
1097
1097
for start , end in unicode_groups :
1098
1098
unicode_bfrange .append (
1099
- "<%04x> <%04x> [%s]" %
1099
+ b "<%04x> <%04x> [%s]" %
1100
1100
(start , end ,
1101
- " " .join ([ "<%04x>" % x for x in range (start , end + 1 )] )))
1101
+ b " " .join (b "<%04x>" % x for x in range (start , end + 1 ))))
1102
1102
unicode_cmap = (self ._identityToUnicodeCMap %
1103
- (len (unicode_groups ),
1104
- "\n " .join (unicode_bfrange ))).encode ('ascii' )
1103
+ (len (unicode_groups ), b"\n " .join (unicode_bfrange )))
1105
1104
1106
1105
# CIDToGIDMap stream
1107
1106
cid_to_gid_map = "" .join (cid_to_gid_map ).encode ("utf-16be" )
1108
1107
self .beginStream (cidToGidMapObject .id ,
1109
1108
None ,
1110
- {'Length' : len (cid_to_gid_map )})
1109
+ {'Length' : len (cid_to_gid_map )})
1111
1110
self .currentstream .write (cid_to_gid_map )
1112
1111
self .endStream ()
1113
1112
@@ -1529,7 +1528,7 @@ def writeXref(self):
1529
1528
"""Write out the xref table."""
1530
1529
1531
1530
self .startxref = self .fh .tell () - self .tell_base
1532
- self .write (( "xref\n 0 %d\n " % self .nextObject ). encode ( 'ascii' ) )
1531
+ self .write (b "xref\n 0 %d\n " % self .nextObject )
1533
1532
i = 0
1534
1533
borken = False
1535
1534
for offset , generation , name in self .xrefTable :
@@ -1538,12 +1537,9 @@ def writeXref(self):
1538
1537
file = sys .stderr )
1539
1538
borken = True
1540
1539
else :
1541
- if name == 'the zero object' :
1542
- key = "f"
1543
- else :
1544
- key = "n"
1545
- text = "%010d %05d %s \n " % (offset , generation , key )
1546
- self .write (text .encode ('ascii' ))
1540
+ key = b"f" if name == 'the zero object' else b"n"
1541
+ text = b"%010d %05d %b \n " % (offset , generation , key )
1542
+ self .write (text )
1547
1543
i += 1
1548
1544
if borken :
1549
1545
raise AssertionError ('Indirect object does not exist' )
@@ -1588,8 +1584,7 @@ def writeTrailer(self):
1588
1584
'Root' : self .rootObject ,
1589
1585
'Info' : self .infoObject }))
1590
1586
# Could add 'ID'
1591
- self .write (("\n startxref\n %d\n %%%%EOF\n " %
1592
- self .startxref ).encode ('ascii' ))
1587
+ self .write (b"\n startxref\n %d\n %%%%EOF\n " % self .startxref )
1593
1588
1594
1589
1595
1590
class RendererPdf (RendererBase ):
0 commit comments