MCPcopy Create free account
hub / github.com/pymupdf/PyMuPDF / show

Function show

src/__main__.py:157–217  ·  view source on GitHub ↗
(args)

Source from the content-addressed store, hash-verified

155
156
157def show(args):
158 doc = open_file(args.input, args.password, True)
159 size = os.path.getsize(args.input) / 1024
160 flag = "KB"
161 if size > 1000:
162 size /= 1024
163 flag = "MB"
164 size = round(size, 1)
165 meta = doc.metadata # pylint: disable=no-member
166 pymupdf.message(
167 "'%s', pages: %i, objects: %i, %g %s, %s, encryption: %s"
168 % (
169 args.input,
170 doc.page_count,
171 doc.xref_length() - 1,
172 size,
173 flag,
174 meta["format"],
175 meta["encryption"],
176 )
177 )
178 n = doc.is_form_pdf
179 if n > 0:
180 s = doc.get_sigflags()
181 sign_str = ""
182 if s != 3:
183 sign_str = "not "
184 pymupdf.message(f"document contains {n} root form fields and is {sign_str}signed")
185 n = doc.embfile_count()
186 if n > 0:
187 pymupdf.message(f"document contains {n:d} embedded files")
188 pymupdf.message()
189 if args.catalog:
190 pymupdf.message(mycenter("PDF catalog"))
191 xref = doc.pdf_catalog()
192 print_xref(doc, xref)
193 pymupdf.message()
194 if args.metadata:
195 pymupdf.message(mycenter("PDF metadata"))
196 print_dict(doc.metadata) # pylint: disable=no-member
197 pymupdf.message()
198 if args.xrefs:
199 pymupdf.message(mycenter("object information"))
200 xrefl = get_list(args.xrefs, doc.xref_length(), what="xref")
201 for xref in xrefl:
202 print_xref(doc, xref)
203 pymupdf.message()
204 if args.pages:
205 pymupdf.message(mycenter("page information"))
206 pagel = get_list(args.pages, doc.page_count + 1)
207 for pno in pagel:
208 n = pno - 1
209 xref = doc.page_xref(n)
210 pymupdf.message(f"Page {pno:d}:")
211 print_xref(doc, xref)
212 pymupdf.message()
213 if args.trailer:
214 pymupdf.message(mycenter("PDF trailer"))

Callers

nothing calls this directly

Calls 12

mycenterFunction · 0.85
xref_lengthMethod · 0.80
get_sigflagsMethod · 0.80
embfile_countMethod · 0.80
pdf_catalogMethod · 0.80
page_xrefMethod · 0.80
pdf_trailerMethod · 0.80
open_fileFunction · 0.70
print_xrefFunction · 0.70
print_dictFunction · 0.70
get_listFunction · 0.70
closeMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…