pdfme.utils
- pdfme.utils.subs(string, *args, **kwargs)
Function to take
string
, format it usingargs
andkwargs
and encode it into bytes.- Parameters
string (str) – string to be transformed.
- Returns
the resulting bytes.
- Return type
bytes
- pdfme.utils.process_style(style, pdf=None)
Function to use a named style from the PDF instance passed, if
style
is a string orstyle
itself if this is a dict.- Parameters
style (str, dict) – a style name (str) or a style dict.
pdf (PDF, optional) – the PDF to extract the named style from.
- Returns
a style dict.
- Return type
dict
- pdfme.utils.get_page_size(size)
Function to get tuple with the width and height of a page, from the value in
size
.If
size
is a str, it should be the name of a page size:a5
,a4
,a3
,b5
,b4
,jis-b5
,jis-b4
,letter
,legal
andledger
.If
size
is a int, the page will be a square of size(int, int)
.If
size
is a list or tuple, it will be converted to a tuple.- Parameters
size (int, float, str, iterable) – the page size.
- Returns
tuple with the page width and height.
- Return type
tuple
- pdfme.utils.parse_margin(margin)
Function to transform
margin
into a dict containing keystop
,left
,bottom
andright
with the margins.If
margin
is a dict, it is returned as it is.If
margin
is a string, it will be splitted using commas or spaces, and each substring will be converted into a number, and after this, the list obtained will have the same treatment of an iterable.If
margin
is an iterable of 1 element, its value will be the margin for the four sides. If it has 2 elements, the first one will be thetop
andbottom
margin, and the second one will be theleft
andright
margin. If it has 3 elements, these will be thetop
,right
andbottom
margins, and theleft
margin will be the second number (the same asright
). If it has 4 elements, they will be thetop
,right
,bottom
andleft
margins respectively.- Parameters
margin (str, int, float, tuple, list, dict) – the margin element.
- Returns
dict containing keys
top
,left
,bottom
andright
with the margins.- Return type
dict
- pdfme.utils.parse_style_str(style_str, fonts)
Function to parse a style string into a style dict.
It parses a string with a semi-colon separeted list of the style attributes you want to apply (for a list of the attributes you can use in this string see
pdfme.text.PDFText
). For the ones that are of type bool, you just have to include the name and it will mean they areTrue
, and for the rest you need to include the name, a colon, and the value of the attribute. In case the value is a color, it can be any of the possible string inputs to functionpdfme.color.parse_color()
. Empty values meanNone
, and"1" == True
and"0" == False
for bool attributes.This is an example of a valid style string:
".b;s:10;c:1;u:0;bg:"
- Parameters
style_str (str) – The string representing the text style.
fonts (PDFFonts) – If a font family is included, this is needed to check if it is among the fonts already added to the PDFFonts instance passed.
- Raises
ValueError – If the string format is not valid.
- Returns
A style dict like the one described in
pdfme.text.PDFText
.- Return type
dict
- pdfme.utils.create_graphics(graphics)
Function to transform a list of graphics dicts (with lines and fill rectangles) into a PDF stream, ready to be added to a PDF page stream.
- Parameters
graphics (list) – list of graphics dicts.
- Returns
a PDF stream containing the passed graphics.
- Return type
str
- pdfme.utils.to_roman(n)
Function to transform
n
integer into a string with its corresponding Roman representation.- Parameters
n (int) – the number to be transformed.
- Returns
the Roman representation of the integer passed.
- Return type
str
- pdfme.utils.get_paragraph_stream(x, y, text_stream, graphics_stream)
Function to create a paragraph stream, in position
x
andy
, using stream information intext_stream
andgraphics_stream
.- Parameters
x (int, float) – the x coordinate of the paragraph.
y (int, float) – the y coordinate of the paragraph.
text_stream (str) – the text stream of the paragraph.
graphics_stream (str) – the graphics stream of the paragraph.
- Returns
the whole stream of the paragraph.
- Return type
str
- pdfme.utils.copy(obj)
Function to copy objects like the ones used in this project: dicts, lists, PDFText, PDFTable, PDFContent, etc.
- Parameters
obj (Any) – the object to be copied.
- Returns
the copy of the object passed as argument.
- Return type
Any
- pdfme.utils.parse_range_string(range_str)
Function to convert a string of comma-separated integers and integer ranges into a set of all the integers included in those.
- Parameters
range_str (str) – comma-separated list of integers and integer ranges.
- Returns
a set of integers.
- Return type