How does one add a LaTeX output* to a question/answer?
*the thing you see in the PDF/DVI when you compile the LaTeX code.
Here's my method, on Windows. Your mileage may vary:
Nothing against it, but I use the "appropriate" document class
rather than standalone
.
I open the result in my PDF reader, at 100%
I take a screen shot (usually a subrectangle of the whole window),
using MWSNAP, and save it (automatically) as a .png
for
uploading
When, occasionally, the output is too big for a convenient screen
capture, my PDF reader, PDFXCHANGE Viewer, allows me to export
the .pdf
to a number of different graphic formats, at a chosen,
appropriate DPI resolution, again for uploading.
My method, on Mac OS X.
Sometimes I use \usepackage[convert,border=2]{standalone}
, which requires pdflatex --shell-escape
and that ImageMagick is installed (it is if one has a full MacTeX distribution). This has a limitation, because not everything can be obtained just as if a real class were used.
So most of the times I compile the document with the proper class, open the PDF at full screen and take a snapshot with the system tool: Command-Shift-4 allows to choose a rectangle and writes a PNG (72 dpi) on the desktop.
Hopefully my answer below is still useful for you and others, especially for Windows users.
Once you have had a PDF output, you need to convert it to PNG by using the following batch file named pdf2png.bat
. It is convenient to register the batch path to the system variable.
rem pdf2png.bat
echo off
rem %1 PDF filename without extension
rem %2 density
rem %3 alpha, choose one of {on,off,remove}
del "%~1-*.png"
convert -compose copy -bordercolor red -border 3x3 -density %2 -alpha %3 "%~1.pdf" "%~1-%%02d.png"
Notes:
%1
is the first mandatory argument that specifies the filename (without extension) of your PDF to convert. %2
is the second mandatory argument that specifies the density. The higher density makes the PNG dimension larger.%3
is the third mandatory argument that specifies whether or not you preserve the transparency. Use on
if you want to preserve the transparency, otherwise choose remove
. I don't use off
because it produces a lousy output.-compose copy -bordercolor red -border 3x3
from the code above.It is just an example. Your scenario in which you get a PDF might be different from mine. My scenario is as follows: compile the following input file with latex->dvips->ps2pdf
to get a PDF output.
% myfilename.tex
\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pst-eucl}
\addtopsstyle{gridstyle}{gridlabels=0}
\begin{document}
\begin{pspicture}[showgrid](4,3)
\pstGeonode[
PointName=none,
PointSymbol={x,none,x},
dotscale=2]
(0,0){A}
(1,3){B}
(4,1){C}
\psline(A)(B)(C)
\end{pspicture}
\end{document}
You can invoke the batch from the editor of your choice, but here I invoke the batch from the DOS prompt:
The output is:
The red rectangle is the border produced by -compose copy -bordercolor red -border 3x3
.
convert
alone no longer works. Instead it must be preceded by both magick
and a space because convert
has a special meaning in Windows.
Nov 14, 2018 at 16:25
In TeXmaker Cross-platform Editor, Starting from Version 3.4 It is easily possible to export a .png
image from the internal pdf viewer with simple right click
on the current .pdf
page.
Screenshot for .png preparation from .pdf using TeXmaker: Zoom your browser to see closer to code
This tool allows you to quickly capture portions of your screen, automatically uploads the screenshot to imgur.com
, then automatically copies the imgur
link to your clipboard. All you need to do is press CTRL+V
wherever you need it.
Personally, made the hotkeys such that...
You can have the ShareX automatically copy the filepath, the image, the file, etc. It may also be possible to configure ShareX to upload to a specific imgur
account automatically.
I use this tool constantly. Cheers~
Maybe this could be useful for someone: the convert
command of ImageMagick has an option which allows you to cut out the written part of an image: -trim +repage
.
If you use arara
package you may use a rule like this to do the conversion automatically.
For example if you have this myfile.tex
(I've setted the background to red only to show the trimming):
% arara: pdflatex
% arara: convert: {background: red, otheroptions: -trim +repage}
\documentclass{book}
\pagenumbering{gobble}
\begin{document}
Quack
\end{document}
and you run:
arara myfile,tex
you will get this myfile.png
:
Of course, you can get the same result if you have myfile.pdf
and run:
convert -background red -alpha remove -density 150 -trim +repage "myfile.pdf" -quality 100 "myfile.png"
In the particular case of a beamer question with overlays, it is often useful to attach the output in the form of an (animated) GIF.
The answer to that (brought to me courtesy of @Schrödinger'scat) is that you can use convert from ImageMagick.org
: convert -density <density> -delay <delay> -loop 0 -alpha remove multipage.pdf animated.gif
, as explained in this answer.
I'm just adding this here in case someone else is looking for this little piece of magic. :)
On OSX, try LaTexIt, which comes with MacTeX.
You will want to copy the essentials of your preamble to the the "document preamble" (which can be made visible by choosing LaTeX->Show preamble).
Then, copy the essentials of what lies between \begin{document}
and \end{document}
into the main box. (If it is an equation, the best is to copy what lies between the delimiters and select the appropriate environment.)
An image can then be easily exported or copied to the clipboard.
After compiling the .tex-file you have the .pdf-file.
Many .pdf-viewing programs, when displaying a .pdf-file, let you select an area of what is displayed, and copy that to clipboard. Often copying as image is also possible here.
Alternatively many operating systems provide a tool which can be used for making a screenshot of a selected area of the screen, which can as well be an area where a .pdf-viewing-program displays an area of a .pdf-file. (Under Windows, e.g., the so-called snipping-tool.)
With many of these tools the screenshot can either be saved to file (.jpg, .png, .gif) or be copied to clipboard.
On the TeX-LaTeX-StackExchange website the process of embedding an image into a question/an answer is initiated by clicking the symbol .
You find this symbol in the tool-bar at the top of the editing-window where you type your question/answer.
When you do that, beneath other options, you are also offered the possibility of pasting an image from the clipboard.
With approaches involving screenshots, the quality of the obtained image also depends on the quality and settings of the hardware in use for displaying.
There are countless methods and tools/programs for obtaining .jpg- or .png- or .gif-images for embedding into a question/an answer at TeX-LaTeX StackExchange.
Many programs/methods have already been presented in other answers/comments.
Some pdf-viewing-programs let you save selections and/or single pages as .jpg- or .png- or .gif-images.
With this kind of approach, the image quality depends mainly on the algorithms and settings of the routine used for conversion.
With .pdf-viewing-programs that don't offer such functionality you can obtain an image by displaying the .pdf file on the screen by means of the .pdf-viewing-program and then using a tool (e.g., "snipping tool" on more recent MS-Windows platforms) that takes a screenshot of a selected area of the screen and saves that screenshot as an image file in .png or .jpg or .gif format.
With this kind of approach, the quality of the obtained image also depends on the quality and settings of the hardware in use for displaying.
There are also graphics processing programs and command line tools that can convert .pdf files to other file formats, for example .png or .jpg or .gif.
With this kind of approach, the image quality depends mainly on the algorithms and settings of the programs used for conversion.
When you have your .jpg-file/.png-file/animated .gif-file, then you can upload it to https://i.stack.imgur.com/ and thus embed it as an image into your question/answer at TeX-LaTeX StackExchange simply by clicking (on the site of TeX-LaTeX StackExchange) the symbol .
You find this symbol in the tool-bar at the top of the editing-window where you type your question/answer.
I use the program GIMP=GNU Image Manipulation Program to convert .pdf files to other formats. I use GIMP because GIMP is under the GNU license, and because GIMP is available both for Windows and for Linux, so I don't have to get used to multiple/different tools for the two operating systems I use most often.
Both on Linux and on Windows I have GIMP 2.10.8, the GNU Image Manipulation Program, installed.
After compiling the .tex-file you have the .pdf-file.
You start GIMP.
In GIMP you select "File" → "Open".
A dialog-box "Open Image" appears. Here you can browse and select the .pdf-file.
Then a window "Import from .pdf" apppears. Here you can select which pages of the .pdf-file you wish to be loaded and whether to load them as single images or to load them as different layers of one single image/animation. Width, height and resolution can be adjusted, too. Then you click "import".
Then the Window "Import from .pdf" disappears and the images are loaded into the main window of GIMP.
If (selected) pages were loaded as single images, you can with any of the images do "File" → "Export as" and export it as .jpg- or .png-image. Hereby several dialog boxes appear where you can do several adjustments.
If (selected) pages were loaded as single images, you alternatively can use GIMP's "rectangle select tool" and select an area of one of the images. Via "Edit" → "Copy" you can copy the selected area to clipboard. Via "Edit" → "Paste" → "as new image" you can paste the selected area as a new image. Then you can do "File" → "Export as" and export the new image containing only the selected area as .jpg- or .png-image. Hereby several dialog boxes appear where you can do several adjustments.
If (selected) pages were loaded as layers of one single image/animation, then at the top of the right side of GIMP's window you find a list with the names/numbers of the different frames.
The frame whose name/number is listed at the bottom of the list will be displayed as the first one. The frame whose name/number is listed at the top of the list will be displayed as the last one.
In that list you can left-click names/numbers of single frames and while holding the left mouse-button move the corresponding list-entry upwards or downwards in order to change the order of the elements of the list and thus the order in which frames will be displayed.
In that list you also can select/right-click the name of a single frame. Then a context-menu opens up where you can do adjustments to the properties of the frame in question.
E.g., you can append to the name/number of a frame something like (1250ms)
to specify that the frame in question will be displayed for 1250 milliseconds.
There also is "Filters" → "Animation" → "Optimize (for GIF)" / "Optimize (Difference)".
There also is "Filters" → "Animation" → "Playback" for watching the animation.
When everything is according to your wishes you can do "File" → "Export as", select "file type: gif" and save the thing as an animated .gif-file.
E.g., compiling the following MWE
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\scalebox{10}{\Huge{A}}
\newpage
\scalebox{10}{\Huge{B}}
\newpage
\scalebox{10}{\Huge{C}}
\end{document}
yields a .pdf-file from which via GIMP you can derive an animated .gif-file where pages are displayed one by one:
standalone
class to get a 'focussed' PDF, then convert using a tool of your choice to.png
format. Which operating system do you use?.tex
file to output needs a TeX system, and there is not one available via the 'back end'. Moreover, many issues depend on particular versions of packages or similar, and so need to be compiled 'locally' (on a known set up, which a remote server would not be). On Windows, I would use IrfanView to convert the PDF to.png
(needs GhostScript installed). There is a question on the main site about this: various approaches are possible.standalone
?