5
$\begingroup$

I would like to decrease the magnification to a value of my choosing for printing purposes. How can I do this?

  • Screen magnification, set at the bottom right of the window, doesn't carry to print output.

  • In the option inspector we have Notebook Options -> Printing Options -> PrintingOptions -> Magnification. It seems to have no effect on printing output.


Update: Below I show the exact steps I take to try to reduce the magnification. I am using Mathematica 11.0.0 on OS X 10.11.6.

First I create a notebook with a lot of text in it:

enter image description here

My printing style environment is set to "Printout"

enter image description here

I go to File -> Print, then choose Open PDF in Preview (on OS X). I get an 11-page PDF:

enter image description here

Now I set both the Display Options and Printing Options magnification to 0.5.

enter image description here

I still get 11 pages when printing.

Now I change the printing environment to "Working" and try again. I get 22 pages regardless of magnification settings.

$\endgroup$
  • 1
    $\begingroup$ Are you sure that you selected PrintingStyleEnvironment -> Printing in the advanced options for Printing? If it's set to Working, then I can change the print magnification by setting the Magnification not under Printing options but under Display Options instead. $\endgroup$ – Jens Aug 15 '16 at 17:23
  • $\begingroup$ @Jens Yes, it is set to "Printout" in File -> Printing Settings -> Printing Environment. Also in Notebook Options -> Printing Options -> PrintingStyleEnvironment in the Option Inspector, which I think is the same. I'm on OS X v11.0.0. Are you saying that it is working for you? $\endgroup$ – Szabolcs Aug 15 '16 at 20:02
  • $\begingroup$ Yes, it's working for me on version 11.0.0. I'll see if there are any other options I have manually changed, but I believe the only relevant setting I played with were Magnification in those two sub-lists, under Printing and Display options. I then printed it to PDF (open in Preview), and the number of pages was indeed cut in half when I chose 50% magnification. I've used this a lot, in order to produce two-column PDFs from notebooks (choosing two columns and landscape in the print layout dialog). $\endgroup$ – Jens Aug 15 '16 at 20:33
  • $\begingroup$ @Jens I described how I print exactly. Could you look over it and see if there is a difference in how you do it? $\endgroup$ – Szabolcs Aug 15 '16 at 20:49
  • $\begingroup$ Default.nb sets up the environment via Cell[StyleData[All, "Printout"], Magnification->0.72], so try altering that to see what effect it has. $\endgroup$ – rcollyer Aug 15 '16 at 21:03
4
$\begingroup$

With a little spelunking, you can find how the environment is initially setup:

Cell[StyleData[All, "Printout"], Magnification->0.72]‌​

So, add that to your notebook's private stylesheet, and modify the magnification at will.

$\endgroup$
  • $\begingroup$ Thanks for the suggestion. This did not work for me though with MMA 11.0.1 Home on a Windows-64 Intel PC. The "Printout" display string (in the private stylesheet Printout environment style cell) even changed in magnification, but this had no effect on the notebook's printout. Have submitted a bug report to Wolfram, and they are working on it. Once this gets fixed (hopefully), definitely using your method. $\endgroup$ – Bill N Dec 6 '16 at 12:53
  • $\begingroup$ @BillN I hadn't responded, since I didn't feel the need to. That said, testing out 11.0.1 on mac with print to pdf (I have no printers attached) worked fine. Would you elaborate on what it is you're doing? $\endgroup$ – rcollyer Dec 6 '16 at 14:04
  • $\begingroup$ Thanks for your interest @rcollyer. I am trying to print notebooks at decreased magnifications. Especially when printing in the "Working" print environment, the default is so large that it word wraps significantly and looks "blown up." I can change the Working mag on screen, but not when it prints. Can not change the Printout mag either. Have tried the printer directly, the MMA print previewer, and printing to PDF files, to no avail. No global or notebook Options Inspector Printout or Working mag settings have any effect, or any private stylesheet Printout environment mag setting. $\endgroup$ – Bill N Dec 6 '16 at 14:50
  • $\begingroup$ @BillN you misunderstand me, can you list the steps you have taken when you add the above to the stylesheet? Specifically, you have to edit the cell structure directly via Cell > Show Expression, but once you've done so, you need to turn it back into normal view, i.e. run Cell > Show Expression a second time. If you forget to do that, it doesn't work. Yes, I've been bitten by this myself. $\endgroup$ – rcollyer Dec 6 '16 at 14:58
  • $\begingroup$ Ah...I get what you're asking now (hehe). Yes, the steps you described is exactly what I do. In fact, the resultant "Printout environment" cell displays the example word "Printout" in the reduced magnification I set, but it still prints at the default magnification (or preprint or PDF). I even rebooted the computer, reloaded MMA and the notebook, and checked its personal stylesheet, which has the reduced magnification "Printout" word example as expected. But again it prints at the default mag. FYI, I'm running Windows 10 at default settings for everything (nothing fancy). Tks again. $\endgroup$ – Bill N Dec 6 '16 at 15:20
-1
$\begingroup$

This answer expands on @rcollyer's answer. I will be very specific as it took me a long time to figure out.

  1. Once you have your notebook open in Mathematica, click on format, edit stylesheet.
  2. A new window will open giving the private definitions for your notebook. In that window, you will see a link at the top called "Default.nb".
  3. Click on that link. It will open a new window. In that window, look for a line: "Local definition for all style in the environment printout".
  4. Click the RHS margin of that line and then go to the menu of that window and click on cell/showexpression.
  5. The line will now read "Cell[StyleData[All, "Printout"], Magnification->0.72]". Copy that line and then go back to the "private definitions" notebook.
  6. Paste that line in the private definitions notebook just after the line with the Default.nb link.
  7. Then click on the right-hand margin of this pasted line and change 0.72 to 0.5 or whatever magnification you require.
  8. Go to the menu of that window and clicked on cell/showexpression. It should then appear as "Local definition for all style in the environment printout".
  9. Return to your notebook and now when you print you should have your chosen magnification.

I love Mathematica but having to go through all this just to reduce the magnification of the printing seems very excessive.

$\endgroup$
  • $\begingroup$ You don't need to edit the Default.nb stylesheet... you can just do something like: SetOptions[ EvaluationNotebook[], StyleDefinitions -> Notebook[{ Cell[StyleData[StyleDefinitions -> "Default.nb"]], Cell[StyleData[All, "Printout"], Magnification -> .5] }] ]. I mean there are hundreds of ways to work with the stylesheet system, but this is an easy, unsophisticated one that is 1 step instead of 10. $\endgroup$ – b3m2a1 Oct 11 at 18:58
  • $\begingroup$ This causes my mathematica to hang when I execute it in the notebook and then try print. I am using mathematica 11.1.1.0 in Mint linux. Fortunately, my own method (outlined in my answer) has no such problems. $\endgroup$ – Virgo Oct 11 at 19:45
  • $\begingroup$ the two should be identical methods. I am editing the stylesheet programatically. You're finding stylesheet cells, copying them, pasting them, then editing them. There's no reason it should hang with that expression in there. $\endgroup$ – b3m2a1 Oct 11 at 20:28
  • $\begingroup$ There may be some details you have left out in your description which causes the difference in outcomes. That's why I think it is better to give detailed answers in the way I have done. $\endgroup$ – Virgo Oct 11 at 20:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.