PDFTOIPE(1)

๐Ÿ’– PDFTOIPE ๐Ÿ’–

okay bestie, quick vibe check on the header first: this page is PDFTOIPE(1) โ€” that's pdftoipe, living in the General Commands Manual, section 1. so it's a user command, and it's here to make your PDFs editable. let's get into it ๐Ÿซถ


โœจ NAME โœจ

pdftoipe โ€” Convert PDF files into editable Ipe format


๐ŸŒธ SYNOPSIS ๐ŸŒธ

pdftoipe { options } PDF file [ XML file ]

so like: options, then a PDF file, then optionally an XML file. the square brackets are doing the "maybe, maybe not, your call" thing ๐Ÿ’…


๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

pdftoipe converts arbitrary PDF files to Ipe's XML format. like, any PDF. no cap. ๐Ÿ”ฅ

โš ๏ธ okay important plot twist: pdftoipe is not related to Ipe's use of the PDF file format. not even a little.

here's the tea โ˜• โ€” PDF files generated by Ipe contain an extra stream with Ipe markup information, and that stream is literally necessary for Ipe to read the file again. so if what you actually want is to convert an Ipe-generated PDF file to XML format, you should be using ipetoipe -xml instead! pdftoipe has a different job: it lets you take arbitrary PDF files and make them editable in Ipe. two different queens, two different lanes ๐Ÿ‘‘

and ngl, one honest warning before you get your hopes all the way up: pdftoipe does a pretty good job on drawings, but doesn't handle text very well. ๐Ÿ˜ญ why? because Ipe's text model is based on LaTeX, and LaTeX is just too different from the text found in most PDF files. it's giving incompatible texting styles, fr fr.


๐ŸŽ€ THE OPTIONS ๐ŸŽ€

  • -notext โ€” Ignore all text in the PDF file, convert graphics only. bye bye words, hello shapes โœŒ๏ธ
  • -literal โ€” Allow Latex markup in text objects. the default is to escape all characters special in Latex.
  • -math โ€” Use LaTeX math mode for all text in the PDF file. math girlies rise ๐Ÿงฎ
  • -merge int โ€” Set the text merge level, an integer between 0 (the default) and 2. it determines how eagerly pdftoipe tries to combine consecutive text in the PDF document into a single Ipe text object.
    • At level 0, only characters consecutively rendered in PDF are combined.
    • At level 1, more text is combined.
    • At level 2, all text is combined until a path or image is drawn.
  • -unicode int โ€” Determine what should be done with non-ASCII characters in text.
    • At level 0, all non-ASCII characters are represented as [U+XXX].
    • At level 1 (the default), some often used characters (such as bullets) are replaced by Latex equivalents, others are represented as [U+XXX].
    • At level 2, characters that are not replaced by Latex equivalents are included in UTF-8.
    • At level 3, all characters are included as UTF-8.

At level 2 and 3, UTF-8 is set as the input encoding in the Latex preamble of the generated Ipe document.

heads up: this only concerns characters for which the PDF file provides a mapping to Unicode. characters from embedded fonts without Unicode mapping (such as symbol fonts) are always represented as [S+XX]. no exceptions, that's just how it is ๐Ÿ’€
  • -f int โ€” First page to convert
  • -l int โ€” Last page to convert
  • -opw string โ€” Owner password for encrypted PDF files ๐Ÿ”
  • -upw string โ€” User password for encrypted PDF files ๐Ÿ”
  • -q โ€” Quiet mode (don't print any messages or errors). silent treatment, but make it intentional ๐Ÿคซ

๐Ÿ‘‘ AUTHOR ๐Ÿ‘‘

Otfried Cheong


๐Ÿ› REPORTING BUGS ๐Ÿ›

Please report bugs at https://github.com/otfried/ipe-tools/issues

(if something's broken, tell the maintainers! don't suffer in silence bestie, that's what the issue tracker is for ๐Ÿซถ)


๐ŸŒˆ SEE ALSO ๐ŸŒˆ

More information about Ipe can be found in The Ipe Manual, available online at http://ipe.otfried.org/manual/manual.html โœจ


and that's the whole page, bestie ๐ŸŽ€ this one's dated January 3, 2017, it's PDFTOIPE(1) from the General Commands Manual, and now you know everything it knows. go convert something iconic ๐Ÿ’…๐Ÿ’–