pdfme.utils
- pdfme.utils.subs(string, *args, **kwargs)
Function to take
string, format it usingargsandkwargsand 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
styleis a string orstyleitself 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
sizeis a str, it should be the name of a page size:a5,a4,a3,b5,b4,jis-b5,jis-b4,letter,legalandledger.If
sizeis a int, the page will be a square of size(int, int).If
sizeis 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
margininto a dict containing keystop,left,bottomandrightwith the margins.If
marginis a dict, it is returned as it is.If
marginis 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
marginis 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 thetopandbottommargin, and the second one will be theleftandrightmargin. If it has 3 elements, these will be thetop,rightandbottommargins, and theleftmargin will be the second number (the same asright). If it has 4 elements, they will be thetop,right,bottomandleftmargins respectively.- Parameters
margin (str, int, float, tuple, list, dict) – the margin element.
- Returns
dict containing keys
top,left,bottomandrightwith 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" == Trueand"0" == Falsefor 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
ninteger 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
xandy, using stream information intext_streamandgraphics_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