Mercurial > octave
annotate scripts/plot/util/print.m @ 26063:4407b315339d
print.m: Fix localization of the default font file (bug #52193)
* print.m (svgconvert): First check if OCTAVE_FONTS_DIR is defined and fallback
to "octfontsdir".
* octave-svg-convert (main): Don't load the default font when printing to svg.
author | Pantxo Diribarne <pantxo.diribarne@gmail.com> |
---|---|
date | Mon, 12 Nov 2018 01:52:15 +0100 |
parents | 8b9e6a39e0a2 |
children | 15ebd65f18c9 |
rev | line source |
---|---|
25054
6652d3823428
maint: Update copyright dates in all source files.
John W. Eaton <jwe@octave.org>
parents:
25003
diff
changeset
|
1 ## Copyright (C) 2008-2018 David Bateman |
5361 | 2 ## |
5362 | 3 ## This file is part of Octave. |
4 ## | |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
24423
diff
changeset
|
5 ## Octave is free software: you can redistribute it and/or modify it |
5362 | 6 ## under the terms of the GNU General Public License as published by |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
24423
diff
changeset
|
7 ## the Free Software Foundation, either version 3 of the License, or |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22578
diff
changeset
|
8 ## (at your option) any later version. |
5362 | 9 ## |
10 ## Octave is distributed in the hope that it will be useful, but | |
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of | |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22578
diff
changeset
|
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22578
diff
changeset
|
13 ## GNU General Public License for more details. |
5361 | 14 ## |
15 ## You should have received a copy of the GNU General Public License | |
7016 | 16 ## along with Octave; see the file COPYING. If not, see |
24534
194eb4bd202b
maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents:
24423
diff
changeset
|
17 ## <https://www.gnu.org/licenses/>. |
5361 | 18 |
19 ## -*- texinfo -*- | |
20852
516bb87ea72e
2015 Code Sprint: remove class of function from docstring for all m-files.
Rik <rik@octave.org>
parents:
20778
diff
changeset
|
20 ## @deftypefn {} {} print () |
516bb87ea72e
2015 Code Sprint: remove class of function from docstring for all m-files.
Rik <rik@octave.org>
parents:
20778
diff
changeset
|
21 ## @deftypefnx {} {} print (@var{options}) |
516bb87ea72e
2015 Code Sprint: remove class of function from docstring for all m-files.
Rik <rik@octave.org>
parents:
20778
diff
changeset
|
22 ## @deftypefnx {} {} print (@var{filename}, @var{options}) |
516bb87ea72e
2015 Code Sprint: remove class of function from docstring for all m-files.
Rik <rik@octave.org>
parents:
20778
diff
changeset
|
23 ## @deftypefnx {} {} print (@var{h}, @var{filename}, @var{options}) |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
24 ## @deftypefnx {} {@var{rgb} =} print (@var{-RGBImage}, @dots{}) |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
25 ## Format a figure for printing and send it to a printer, save it to a file, or |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
26 ## return an RGB image. |
5361 | 27 ## |
20713
2469d78a1d8b
Consistently use 'filename' rather than 'file name' throughout code base.
Rik <rik@octave.org>
parents:
20231
diff
changeset
|
28 ## @var{filename} defines the name of the output file. If the filename has |
20173
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
29 ## no suffix, one is inferred from the specified device and appended to the |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
30 ## filename. In the absence of a filename or @qcode{"-RGBImage"} option, the |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
31 ## output is sent to the printer. The filename and options may be given in |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
32 ## any order. |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
33 ## |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
34 ## Example: Print to a file using the PDF and JPEG formats. |
14456
05635e4c605a
Improve documentation for print().
Ben Abbott <bpabbott@mac.com>
parents:
14382
diff
changeset
|
35 ## |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
36 ## @example |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
37 ## @group |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
38 ## figure (1); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
39 ## clf (); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
40 ## surf (peaks); |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
41 ## print figure1.pdf # The extension specifies the format |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
42 ## print -djpg figure1 # Will produce "figure1.jpg" file |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
43 ## @end group |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
44 ## @end example |
15301
3d05b55c91c7
doc: Clean up docstring for print.m.
Rik <rik@octave.org>
parents:
15214
diff
changeset
|
45 ## |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
46 ## If the first argument @var{h} is a handle to a figure object, it specifies |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
47 ## the figure to print. By default, the current figure is printed. |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
48 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
49 ## For outputs to paged formats, PostScript and PDF, the paper size is |
20173
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
50 ## specified by the figure's @code{papersize} property. The location and |
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
51 ## size of the image on the page are specified by the figure's |
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
52 ## @code{paperposition} property. The orientation of the page is specified |
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
53 ## by the figure's @code{paperorientation} property. |
14456
05635e4c605a
Improve documentation for print().
Ben Abbott <bpabbott@mac.com>
parents:
14382
diff
changeset
|
54 ## |
05635e4c605a
Improve documentation for print().
Ben Abbott <bpabbott@mac.com>
parents:
14382
diff
changeset
|
55 ## The width and height of images are specified by the figure's |
24608 | 56 ## @code{paperposition(3:4)} property values. |
14456
05635e4c605a
Improve documentation for print().
Ben Abbott <bpabbott@mac.com>
parents:
14382
diff
changeset
|
57 ## |
15301
3d05b55c91c7
doc: Clean up docstring for print.m.
Rik <rik@octave.org>
parents:
15214
diff
changeset
|
58 ## The @code{print} command supports many @var{options}: |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
59 ## |
5361 | 60 ## @table @code |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
61 ## @item -f@var{h} |
20173
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
62 ## Specify the handle, @var{h}, of the figure to be printed. The default |
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
63 ## is the current figure. |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
64 ## |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
65 ## Example: Print figure 1. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
66 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
67 ## @example |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
68 ## @group |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
69 ## figure (1); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
70 ## clf (); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
71 ## surf (peaks); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
72 ## figure (2); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
73 ## print -f1 figure1.pdf |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
74 ## ## Equivalent functional form: |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
75 ## print (1, "figure1.pdf") |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
76 ## @end group |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
77 ## @end example |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
78 ## |
5361 | 79 ## @item -P@var{printer} |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
80 ## Set the @var{printer} name to which the plot is sent if no @var{filename} |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
81 ## is specified. |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
82 ## |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
83 ## Example: Print to printer named PS_printer using PostScript format. |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
84 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
85 ## @example |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
86 ## @group |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
87 ## clf (); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
88 ## surf (peaks); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
89 ## print -dpswrite -PPS_printer |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
90 ## @end group |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
91 ## @end example |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
92 ## |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
93 ## @item -RGBImage |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
94 ## Return an M-by-N-by-3 RGB image of the figure. The size of the image |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
95 ## depends on the formatting options. |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
96 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
97 ## Example: Get the pixels of a figure image. |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
98 ## |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
99 ## @example |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
100 ## @group |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
101 ## clf (); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
102 ## surf (peaks); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
103 ## rgb = print ("-RGBImage"); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
104 ## @end group |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
105 ## @end example |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
106 ## |
17122
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
16933
diff
changeset
|
107 ## @item -portrait |
5361 | 108 ## @itemx -landscape |
20173
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
109 ## Specify the orientation of the plot for printed output. |
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
110 ## For non-printed output the aspect ratio of the output corresponds to the |
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
111 ## plot area defined by the @qcode{"paperposition"} property in the |
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
112 ## orientation specified. This option is equivalent to changing the figure's |
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
113 ## @qcode{"paperorientation"} property. |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
114 ## |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
115 ## @item -append |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
116 ## Append PostScript or PDF output to a pre-existing file of the same type. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
117 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
118 ## @item -r@var{NUM} |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
119 ## Resolution of bitmaps in pixels per inch. For both metafiles and SVG |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
120 ## the default is the screen resolution; for other formats it is 150 dpi. To |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
121 ## specify screen resolution, use @qcode{"-r0"}. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
122 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
123 ## Example: Get high resolution raster output. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
124 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
125 ## @example |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
126 ## @group |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
127 ## clf (); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
128 ## surf (peaks (), "facelighting", "gouraud"); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
129 ## light (); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
130 ## print ("-r600", "lit_peaks.png"); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
131 ## @end group |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
132 ## @end example |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
133 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
134 ## @item -S@var{xsize},@var{ysize} |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
135 ## Plot size in pixels for EMF, GIF, JPEG, PBM, PNG, and SVG@. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
136 ## For PS, EPS, PDF, and other vector formats the plot size is in points. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
137 ## This option is equivalent to changing the size of the plot box associated |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
138 ## with the @qcode{"paperposition"} property. When using the command form of |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
139 ## the print function you must quote the @var{xsize},@var{ysize} option. For |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
140 ## example, by writing @w{"-S640,480"}. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
141 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
142 ## @item -painters |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
143 ## @itemx -opengl |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
144 ## For raster formats, specifies which of the opengl (pixel based) or |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
145 ## painters (vector based) renderers is used. This is equivalent to changing |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
146 ## the figure's "renderer" property. By default the renderer is "opengl" for |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
147 ## raster formats and "painters" for vector formats. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
148 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
149 ## @item -loose |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
150 ## @itemx -tight |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
151 ## Force a tight or loose bounding box for EPS files. The default is loose. |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
152 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
153 ## @item -@var{preview} |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
154 ## Add a preview to EPS files. Supported formats are: |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
155 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
156 ## @table @code |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
157 ## @item -interchange |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
158 ## Provide an interchange preview. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
159 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
160 ## @item -metafile |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
161 ## Provide a metafile preview. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
162 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
163 ## @item -pict |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
164 ## Provide a pict preview. |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
165 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
166 ## @item -tiff |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
167 ## Provide a TIFF preview. |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
168 ## @end table |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
169 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
170 ## @item -F@var{fontname} |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
171 ## @itemx -F@var{fontname}:@var{size} |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
172 ## @itemx -F:@var{size} |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
173 ## Use @var{fontname} and/or @var{fontsize} for all text. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
174 ## @var{fontname} is ignored for some devices: dxf, fig, hpgl, etc. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
175 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
176 ## @item -color |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
177 ## @itemx -mono |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
178 ## Color or monochrome output. |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
179 ## |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
180 ## @item -solid |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
181 ## @itemx -dashed |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
182 ## Force all lines to be solid or dashed, respectively. |
14774
0d6dae0f6bc2
Allow setting of ghostscript TextAlphaBits and GraphicsAlphaBits.
John Hunt <huntj@gmx.us>
parents:
14620
diff
changeset
|
183 ## |
5361 | 184 ## @item -d@var{device} |
20173
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
185 ## The available output format is specified by the option @var{device}, and |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
186 ## is one of (devices marked with a "*" are only available with the Gnuplot |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
187 ## toolkit): |
14366
b76f0740940e
doc: Periodic grammar check of documentation.
Rik <octave@nomad.inbox5.com>
parents:
14356
diff
changeset
|
188 ## |
5361 | 189 ## @table @code |
17122
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
16933
diff
changeset
|
190 ## @item ps |
5361 | 191 ## @itemx ps2 |
192 ## @itemx psc | |
193 ## @itemx psc2 | |
23485
2f90ac754550
print.m: Update documentation to refer to OpenGL-based toolkits, not just FLTK.
Rik <rik@octave.org>
parents:
23219
diff
changeset
|
194 ## PostScript (level 1 and 2, mono and color). The OpenGL-based toolkits |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
195 ## always generate PostScript level 3.0 and have a limited support for text. |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
196 ## |
17122
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
16933
diff
changeset
|
197 ## @item eps |
5361 | 198 ## @itemx eps2 |
199 ## @itemx epsc | |
200 ## @itemx epsc2 | |
23485
2f90ac754550
print.m: Update documentation to refer to OpenGL-based toolkits, not just FLTK.
Rik <rik@octave.org>
parents:
23219
diff
changeset
|
201 ## Encapsulated PostScript (level 1 and 2, mono and color). The |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
202 ## OpenGL-based toolkits always generate PostScript level 3.0 and have a |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
203 ## limited support for text. Only the set of ASCII characters may be used and |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
204 ## the only supported fonts are the base PostScript fonts: Helvetica (the |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
205 ## default), Times, Courier and their variants (bold or italic). Any other |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
206 ## font will be replaced by Helvetica. |
10841
1577accf2ed8
print.m: Update documentation string. Change to active voice.
Rik <octave@nomad.inbox5.com>
parents:
10834
diff
changeset
|
207 ## |
19026
d6f1f46e5b8f
Fix double '-P' in print command to printer (bug #41957).
Michael Godfrey <michaeldgodfrey@gmail.com>
parents:
17751
diff
changeset
|
208 ## @item pslatex |
6739 | 209 ## @itemx epslatex |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
210 ## @itemx pdflatex |
19026
d6f1f46e5b8f
Fix double '-P' in print command to printer (bug #41957).
Michael Godfrey <michaeldgodfrey@gmail.com>
parents:
17751
diff
changeset
|
211 ## @itemx pslatexstandalone |
d6f1f46e5b8f
Fix double '-P' in print command to printer (bug #41957).
Michael Godfrey <michaeldgodfrey@gmail.com>
parents:
17751
diff
changeset
|
212 ## @itemx epslatexstandalone |
d6f1f46e5b8f
Fix double '-P' in print command to printer (bug #41957).
Michael Godfrey <michaeldgodfrey@gmail.com>
parents:
17751
diff
changeset
|
213 ## @itemx pdflatexstandalone |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
214 ## Generate a @LaTeX{} file @file{@var{filename}.tex} for the text portions |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
215 ## of a plot and a file @file{@var{filename}.(ps|eps|pdf)} for the remaining |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
216 ## graphics. The graphics file suffix .ps|eps|pdf is determined by the |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
217 ## specified device type. The @LaTeX{} file produced by the @samp{standalone} |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
218 ## option can be processed directly by @LaTeX{}. The file generated without |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
219 ## the @samp{standalone} option is intended to be included from another |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
220 ## @LaTeX{} document. In either case, the @LaTeX{} file contains an |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
221 ## @code{\includegraphics} command so that the generated graphics file is |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
222 ## automatically included when the @LaTeX{} file is processed. The text that |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
223 ## is written to the @LaTeX{} file contains the strings @strong{exactly} as |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
224 ## they were specified in the plot. If any special characters of the @TeX{} |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
225 ## mode interpreter were used, the file must be edited before @LaTeX{} |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
226 ## processing. Specifically, the special characters must be enclosed with |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
227 ## dollar signs (@code{$ @dots{} $}), and other characters that are recognized |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
228 ## by @LaTeX{} may also need editing (e.g., braces). The @samp{pdflatex} |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
229 ## device, and any of the @samp{standalone} formats, are not available with the |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
230 ## Gnuplot toolkit. |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
231 ## |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
232 ## @item epscairo* |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
233 ## @itemx pdfcairo* |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
234 ## @itemx epscairolatex* |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
235 ## @itemx pdfcairolatex* |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
236 ## @itemx epscairolatexstandalone* |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
237 ## @itemx pdfcairolatexstandalone* |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
238 ## Generate Cairo based output. The @samp{epscairo} and @samp{pdfcairo} |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
239 ## devices are synonymous with the @samp{epsc} device. The @LaTeX{} variants |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
240 ## generate a @LaTeX{} file, @file{@var{filename}.tex}, for the text portions |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
241 ## of a plot, and an image file, @file{@var{filename}.(eps|pdf)}, for the graph |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
242 ## portion of the plot. The @samp{standalone} variants behave as described for |
20964
6ac3d299c5ad
Add support for cairo based gnuplot terminals: "cairolatex", "epscairo",
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20936
diff
changeset
|
243 ## @samp{epslatexstandalone} above. |
6ac3d299c5ad
Add support for cairo based gnuplot terminals: "cairolatex", "epscairo",
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20936
diff
changeset
|
244 ## |
17122
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
16933
diff
changeset
|
245 ## @item ill |
25003
2365c2661b3c
doc: Spellcheck documentation ahead of 4.4 release.
Rik <rik@octave.org>
parents:
24687
diff
changeset
|
246 ## @itemx @nospell{aifm} |
25582
0df6454f58ea
print.m: Allow 'tif' to indicate 'tiff' format (bug #54282).
Rik <rik@octave.org>
parents:
25307
diff
changeset
|
247 ## Adobe Illustrator (obsolete for Gnuplot versions > 4.2) |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
248 ## |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
249 ## @item canvas* |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
250 ## Javascript-based drawing on HTML5 canvas viewable in a web browser. |
20971
22318eeaca3b
Add gnuplot "canvas" terminal to the print.m doc-string.
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20970
diff
changeset
|
251 ## |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
252 ## @item cdr* |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
253 ## @itemx @nospell{corel*} |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
254 ## CorelDraw |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
255 ## |
25307
f2eb8bfcccb6
Use consistent gnuplot toolkit font syntax allow SVG fractional font size (bug #53737)
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
25054
diff
changeset
|
256 ## @item cgm |
f2eb8bfcccb6
Use consistent gnuplot toolkit font syntax allow SVG fractional font size (bug #53737)
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
25054
diff
changeset
|
257 ## Computer Graphics Metafile, Version 1, ANSI X3.122-1986 |
f2eb8bfcccb6
Use consistent gnuplot toolkit font syntax allow SVG fractional font size (bug #53737)
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
25054
diff
changeset
|
258 ## (only available for the Gnuplot graphics toolkit). |
f2eb8bfcccb6
Use consistent gnuplot toolkit font syntax allow SVG fractional font size (bug #53737)
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
25054
diff
changeset
|
259 ## |
6965 | 260 ## @item dxf |
261 ## AutoCAD | |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
262 ## |
17122
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
16933
diff
changeset
|
263 ## @item emf |
9107
d0d507cbd123
Improvements to printing functionality.
Ben Abbott <bpabbott@mac.com>
parents:
9056
diff
changeset
|
264 ## @itemx meta |
6965 | 265 ## Microsoft Enhanced Metafile |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
266 ## |
6965 | 267 ## @item fig |
11576
8ac9687dbe9f
rename backend to graphics_toolkit
John W. Eaton <jwe@octave.org>
parents:
11563
diff
changeset
|
268 ## XFig. For the Gnuplot graphics toolkit, the additional options |
22571
83f106bfcb37
Make "pdflatex" an alias of "pdfcairolatex" for gnuplot toolkit print (bug #49223).
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
22517
diff
changeset
|
269 ## @option{-textspecial} or @option{-textnormal} can be used to control |
83f106bfcb37
Make "pdflatex" an alias of "pdfcairolatex" for gnuplot toolkit print (bug #49223).
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
22517
diff
changeset
|
270 ## whether the special flag should be set for the text in the figure. |
83f106bfcb37
Make "pdflatex" an alias of "pdfcairolatex" for gnuplot toolkit print (bug #49223).
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
22517
diff
changeset
|
271 ## (default is @option{-textnormal}) |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
272 ## |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
273 ## @item gif* |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
274 ## GIF image |
20969
984678f19352
Impproved support gnuplot terminals "eepic", "latex", "pstricks", & "texdraw".
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20968
diff
changeset
|
275 ## |
5361 | 276 ## @item hpgl |
277 ## HP plotter language | |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
278 ## |
20969
984678f19352
Impproved support gnuplot terminals "eepic", "latex", "pstricks", & "texdraw".
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20968
diff
changeset
|
279 ## @item jpg |
984678f19352
Impproved support gnuplot terminals "eepic", "latex", "pstricks", & "texdraw".
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20968
diff
changeset
|
280 ## @itemx jpeg |
984678f19352
Impproved support gnuplot terminals "eepic", "latex", "pstricks", & "texdraw".
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20968
diff
changeset
|
281 ## JPEG image |
984678f19352
Impproved support gnuplot terminals "eepic", "latex", "pstricks", & "texdraw".
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20968
diff
changeset
|
282 ## |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
283 ## @item latex* |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
284 ## @itemx eepic* |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
285 ## @LaTeX{} picture environment and extended picture environment. |
20969
984678f19352
Impproved support gnuplot terminals "eepic", "latex", "pstricks", & "texdraw".
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20968
diff
changeset
|
286 ## |
5361 | 287 ## @item mf |
288 ## Metafont | |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
289 ## |
5361 | 290 ## @item png |
25582
0df6454f58ea
print.m: Allow 'tif' to indicate 'tiff' format (bug #54282).
Rik <rik@octave.org>
parents:
25307
diff
changeset
|
291 ## Portable Network Graphics |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
292 ## |
5361 | 293 ## @item pbm |
294 ## PBMplus | |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
295 ## |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
296 ## @item pdf |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
297 ## @itemx pdfcrop |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
298 ## Portable Document Format. The @code{pdfcrop} device removes the default |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
299 ## surrounding page. |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
300 ## |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
301 ## By default PDF output has limited support for text and doesn't support |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
302 ## transparency at all. For complete text support and basic transparency, use |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
303 ## the @option{-svgconvert} option. |
20969
984678f19352
Impproved support gnuplot terminals "eepic", "latex", "pstricks", & "texdraw".
Daniel J Sebald <daniel.sebald@ieee.org>
parents:
20968
diff
changeset
|
304 ## |
6965 | 305 ## @item svg |
25582
0df6454f58ea
print.m: Allow 'tif' to indicate 'tiff' format (bug #54282).
Rik <rik@octave.org>
parents:
25307
diff
changeset
|
306 ## Scalable Vector Graphics |
0df6454f58ea
print.m: Allow 'tif' to indicate 'tiff' format (bug #54282).
Rik <rik@octave.org>
parents:
25307
diff
changeset
|
307 ## |
0df6454f58ea
print.m: Allow 'tif' to indicate 'tiff' format (bug #54282).
Rik <rik@octave.org>
parents:
25307
diff
changeset
|
308 ## @item tif |
0df6454f58ea
print.m: Allow 'tif' to indicate 'tiff' format (bug #54282).
Rik <rik@octave.org>
parents:
25307
diff
changeset
|
309 ## @itemx tiff |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
310 ## @itemx tiffn |
26048 | 311 ## TIFF image with LZW compression (@nospell{tif}, tiff) or uncompressed |
312 ## (@nospell{tiffn}). | |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
313 ## |
21122
dba88797f69f
doc: Periodic grammarcheck of documentation.
Rik <rik@octave.org>
parents:
20971
diff
changeset
|
314 ## @item tikz |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
315 ## @itemx tikzstandalone* |
23485
2f90ac754550
print.m: Update documentation to refer to OpenGL-based toolkits, not just FLTK.
Rik <rik@octave.org>
parents:
23219
diff
changeset
|
316 ## Generate a @LaTeX{} file using PGF/TikZ format. The OpenGL-based |
2f90ac754550
print.m: Update documentation to refer to OpenGL-based toolkits, not just FLTK.
Rik <rik@octave.org>
parents:
23219
diff
changeset
|
317 ## toolkits create a PGF file while Gnuplot creates a TikZ file. The |
2f90ac754550
print.m: Update documentation to refer to OpenGL-based toolkits, not just FLTK.
Rik <rik@octave.org>
parents:
23219
diff
changeset
|
318 ## @samp{tikzstandalone} device produces a @LaTeX{} document which includes the |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
319 ## TikZ file. |
24207
f3d754deb41d
print.m: fix device table formating in docstring
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
24139
diff
changeset
|
320 ## @end table |
5361 | 321 ## |
322 ## If the device is omitted, it is inferred from the file extension, | |
17122
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
16933
diff
changeset
|
323 ## or if there is no filename it is sent to the printer as PostScript. |
5361 | 324 ## |
10423
dfc662a47b7a
print.m: Add '-append' option.
Ben Abbott <bpabbott@mac.com>
parents:
10422
diff
changeset
|
325 ## @item -d@var{ghostscript_device} |
10854
d5a7db05d591
Add PS and PDF output for the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10841
diff
changeset
|
326 ## Additional devices are supported by Ghostscript. |
d5a7db05d591
Add PS and PDF output for the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10841
diff
changeset
|
327 ## Some examples are; |
9152
4c9aff0c9a61
print.m: Use Ghostscript rather than ImageMagick's 'convert'.
Ben Abbott <bpabbott@mac.com>
parents:
9107
diff
changeset
|
328 ## |
4c9aff0c9a61
print.m: Use Ghostscript rather than ImageMagick's 'convert'.
Ben Abbott <bpabbott@mac.com>
parents:
9107
diff
changeset
|
329 ## @table @code |
11587
c792872f8942
all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents:
11576
diff
changeset
|
330 ## @item ljet2p |
16826
a4969508008e
doc: Periodic spellcheck of the documentation.
Rik <rik@octave.org>
parents:
16766
diff
changeset
|
331 ## HP LaserJet @nospell{IIP} |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
332 ## |
9152
4c9aff0c9a61
print.m: Use Ghostscript rather than ImageMagick's 'convert'.
Ben Abbott <bpabbott@mac.com>
parents:
9107
diff
changeset
|
333 ## @item pcx24b |
4c9aff0c9a61
print.m: Use Ghostscript rather than ImageMagick's 'convert'.
Ben Abbott <bpabbott@mac.com>
parents:
9107
diff
changeset
|
334 ## 24-bit color PCX file format |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
335 ## |
9152
4c9aff0c9a61
print.m: Use Ghostscript rather than ImageMagick's 'convert'.
Ben Abbott <bpabbott@mac.com>
parents:
9107
diff
changeset
|
336 ## @item ppm |
4c9aff0c9a61
print.m: Use Ghostscript rather than ImageMagick's 'convert'.
Ben Abbott <bpabbott@mac.com>
parents:
9107
diff
changeset
|
337 ## Portable Pixel Map file format |
4c9aff0c9a61
print.m: Use Ghostscript rather than ImageMagick's 'convert'.
Ben Abbott <bpabbott@mac.com>
parents:
9107
diff
changeset
|
338 ## @end table |
4c9aff0c9a61
print.m: Use Ghostscript rather than ImageMagick's 'convert'.
Ben Abbott <bpabbott@mac.com>
parents:
9107
diff
changeset
|
339 ## |
17122
eaab03308c0b
doc: Rewrite docstrings for most plot functions.
Rik <rik@octave.org>
parents:
16933
diff
changeset
|
340 ## For a complete list, type @code{system ("gs -h")} to see what formats |
10854
d5a7db05d591
Add PS and PDF output for the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10841
diff
changeset
|
341 ## and devices are available. |
9152
4c9aff0c9a61
print.m: Use Ghostscript rather than ImageMagick's 'convert'.
Ben Abbott <bpabbott@mac.com>
parents:
9107
diff
changeset
|
342 ## |
20173
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
343 ## When Ghostscript output is sent to a printer the size is determined by |
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
344 ## the figure's @qcode{"papersize"} property. When the output is sent to a |
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
345 ## file the size is determined by the plot box defined by the figure's |
777f26aa8e3e
doc: Update more docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19990
diff
changeset
|
346 ## @qcode{"paperposition"} property. |
9152
4c9aff0c9a61
print.m: Use Ghostscript rather than ImageMagick's 'convert'.
Ben Abbott <bpabbott@mac.com>
parents:
9107
diff
changeset
|
347 ## |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
348 ## @item -G@var{ghostscript_command} |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
349 ## Specify the command for calling Ghostscript. For Unix the default is |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
350 ## @qcode{"gs"} and for Windows it is @qcode{"gswin32c"}. |
11009 | 351 ## |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
352 ## @item -svgconvert |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
353 ## For OpenGL based toolkits, this option adds support for printing |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
354 ## arbitrary characters and fonts in PDF outputs. It also avoids some |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
355 ## anti-aliasing artifacts in patch and surface objects rendering. Finally, it |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
356 ## adds support for printing transparent line, patch, and surface objects. |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
357 ## |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
358 ## This option only affects PDF outputs, unless it is combined with |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
359 ## @option{-painters} option, in which case raster outputs are also affected. |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
360 ## |
26043
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
361 ## Caution: @option{-svgconvert} may lead to innacurate rendering of image |
5cef57130cb9
doc: grammar check m-files in scripts/ directory.
Rik <rik@octave.org>
parents:
26027
diff
changeset
|
362 ## objects. |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
363 ## |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
364 ## @item -TextAlphaBits=@var{n} |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
365 ## @itemx -GraphicsAlphaBits=@var{n} |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
366 ## Octave is able to produce output for various printers, bitmaps, and |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
367 ## vector formats by using Ghostscript. For bitmap and printer output |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
368 ## anti-aliasing is applied using Ghostscript's TextAlphaBits and |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
369 ## GraphicsAlphaBits options. The default number of bits are 4 and 1 |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
370 ## respectively. Allowed values for @var{N} are 1, 2, or 4. |
5361 | 371 ## @end table |
372 ## | |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
373 ## @seealso{saveas, hgsave, getframe, orient, figure} |
5361 | 374 ## @end deftypefn |
375 | |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
376 function rgbout = print (varargin) |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
377 |
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
378 opts = __print_parse_opts__ (varargin{:}); |
7550
bffb1e2ab732
print.m: Figure handle as argument.
Ben Abbott <bpabbott@mac.com>
parents:
7543
diff
changeset
|
379 |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
380 ## Check the requested file is writable |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
381 if (! opts.rgb_output) |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
382 folder = fileparts (opts.name); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
383 if (! isempty (folder) && ! isfolder (folder)) |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
384 error ("print: directory %s does not exist", folder); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
385 endif |
23118
46b914a213db
Workaround segfault when an error occurs while printing (bug #49779)
Avinoam Kalma <a.kalma@gmail.com>
parents:
23083
diff
changeset
|
386 |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
387 do_unlink = (exist (opts.name, "file") != 2); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
388 fid = fopen (opts.name, "a"); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
389 if (fid == -1) |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
390 error ("print: cannot open file %s for writing", opts.name); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
391 endif |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
392 fclose (fid); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
393 if (do_unlink) |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
394 unlink (opts.name); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
395 endif |
23189
0c9195baea1a
print.m: fix regression with -append option (bug #50318)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23139
diff
changeset
|
396 endif |
23139
900ae902aa90
maint: strip trailing whitespace from source files.
John W. Eaton <jwe@octave.org>
parents:
23118
diff
changeset
|
397 |
11009 | 398 opts.pstoedit_cmd = @pstoedit; |
399 opts.fig2dev_cmd = @fig2dev; | |
400 opts.latex_standalone = @latex_standalone; | |
401 opts.lpr_cmd = @lpr; | |
402 opts.epstool_cmd = @epstool; | |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
403 opts.svgconvert_cmd = @svgconvert; |
11009 | 404 |
19026
d6f1f46e5b8f
Fix double '-P' in print command to printer (bug #41957).
Michael Godfrey <michaeldgodfrey@gmail.com>
parents:
17751
diff
changeset
|
405 if (isempty (opts.figure) || ! isfigure (opts.figure)) |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
406 error ("print: no figure to print"); |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
407 endif |
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
408 |
22099
4c0f78b3c86f
print.m: Fix typo "1" (char) to 1 (integer) as argument to findall -depth (bug #48478).
Rik <rik@octave.org>
parents:
21859
diff
changeset
|
409 if (isempty (findall (opts.figure, "-depth", 1, "type", "axes"))) |
19990
9a2d8b1f931e
Issue error when trying to print a figure with no axes object (bug #44655).
Rik <rik@octave.org>
parents:
19833
diff
changeset
|
410 error ("print: no axes object in figure to print"); |
9a2d8b1f931e
Issue error when trying to print a figure with no axes object (bug #44655).
Rik <rik@octave.org>
parents:
19833
diff
changeset
|
411 endif |
9a2d8b1f931e
Issue error when trying to print a figure with no axes object (bug #44655).
Rik <rik@octave.org>
parents:
19833
diff
changeset
|
412 |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
413 orig_figure = get (0, "currentfigure"); |
17146
bbda4d952eb5
Fix pop-up of invisible figures during printing.
Rik <rik@octave.org>
parents:
17129
diff
changeset
|
414 set (0, "currentfigure", opts.figure); |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
415 |
11009 | 416 if (opts.append_to_file) |
417 [~, ~, ext] = fileparts (opts.ghostscript.output); | |
19278
6ca096827123
Use tempname() rather than tmpnam() in core Octave.
Rik <rik@octave.org>
parents:
19078
diff
changeset
|
418 opts.ghostscript.prepend = [tempname() ext]; |
11014
92bb25c0da9e
When appending, delete temporary files at the end of the ghostscript pipeline.
Ben Abbott <bpabbott@mac.com>
parents:
11009
diff
changeset
|
419 copyfile (opts.ghostscript.output, opts.ghostscript.prepend); |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
420 endif |
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
421 |
10913
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
422 unwind_protect |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
423 |
10913
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
424 ## Modify properties as specified by options |
24139
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
425 tk = get (opts.figure, "__graphics_toolkit__"); |
10913
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
426 props = []; |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
427 nfig = 0; |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
428 |
14355
a6a5c5008e39
Print() function requires figure units to be "pixels".
Ben Abbott <bpabbott@mac.com>
parents:
14335
diff
changeset
|
429 drawnow (); |
a6a5c5008e39
Print() function requires figure units to be "pixels".
Ben Abbott <bpabbott@mac.com>
parents:
14335
diff
changeset
|
430 |
20936
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
431 ## print() requires children of axes to have units = "normalized", or "data" |
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
432 hobj = findall (opts.figure, "-not", "type", "figure", ... |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
433 "-not", "type", "axes", "-property", "units", ... |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
434 "-not", "units", "normalized", "-not", "units", "data"); |
22784
e58879c649b5
print.m: Fix incorrect optimization from cset 219c70d2ba28.
Rik <rik@octave.org>
parents:
22783
diff
changeset
|
435 hobj(strncmp (get (hobj, "type"), "ui", 2)) = []; |
20936
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
436 for n = 1:numel(hobj) |
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
437 props(n).h = hobj(n); |
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
438 props(n).name = "units"; |
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
439 props(n).value = {get(hobj(n), "units")}; |
21323
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
440 set (hobj(n), "units", "data"); |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
441 nfig += 1; |
20936
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
442 endfor |
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
443 |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
444 if (strcmp (opts.renderer, "opengl")) |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
445 ## Scale the figure to reach the required resolution |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
446 scale = opts.ghostscript.resolution / 72; |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
447 if (scale != 1) |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
448 props(end+1).h = opts.figure; |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
449 props(end).name = "__device_pixel_ratio__"; |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
450 props(end).value{1} = get (opts.figure, "__device_pixel_ratio__"); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
451 set (opts.figure, "__device_pixel_ratio__", scale); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
452 nfig += 1; |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
453 endif |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
454 elseif (strcmp (tk, "qt")) |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
455 ## Don't account for the actual pixel density |
25884
4e108574385c
Improve OpenGL rendering on high resolution screens with Qt 5 (bug #49053)
John Swensen <jpswensen@gmail.com>
parents:
25787
diff
changeset
|
456 props(end+1).h = opts.figure; |
4e108574385c
Improve OpenGL rendering on high resolution screens with Qt 5 (bug #49053)
John Swensen <jpswensen@gmail.com>
parents:
25787
diff
changeset
|
457 props(end).name = "__device_pixel_ratio__"; |
4e108574385c
Improve OpenGL rendering on high resolution screens with Qt 5 (bug #49053)
John Swensen <jpswensen@gmail.com>
parents:
25787
diff
changeset
|
458 props(end).value = {get(opts.figure, "__device_pixel_ratio__")}; |
4e108574385c
Improve OpenGL rendering on high resolution screens with Qt 5 (bug #49053)
John Swensen <jpswensen@gmail.com>
parents:
25787
diff
changeset
|
459 set (opts.figure, "__device_pixel_ratio__", 1); |
4e108574385c
Improve OpenGL rendering on high resolution screens with Qt 5 (bug #49053)
John Swensen <jpswensen@gmail.com>
parents:
25787
diff
changeset
|
460 nfig += 1; |
4e108574385c
Improve OpenGL rendering on high resolution screens with Qt 5 (bug #49053)
John Swensen <jpswensen@gmail.com>
parents:
25787
diff
changeset
|
461 endif |
4e108574385c
Improve OpenGL rendering on high resolution screens with Qt 5 (bug #49053)
John Swensen <jpswensen@gmail.com>
parents:
25787
diff
changeset
|
462 |
20936
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
463 ## print() requires axes units = "normalized" |
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
464 hax = findall (opts.figure, "-depth", 1, "type", "axes", ... |
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
465 "-not", "units", "normalized"); |
24139
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
466 for n = 1:numel (hax) |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
467 props(end+1).h = hax(n); |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
468 props(end).name = "units"; |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
469 props(end).value = {get(hax(n), "units")}; |
21323
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
470 set (hax(n), "units", "normalized"); |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
471 nfig += 1; |
20936
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
472 endfor |
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
473 |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
474 ## With the -painters (gl2ps) renderer, line transparency is only |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
475 ## handled for svg and pdf outputs using svgconvert. |
26063
4407b315339d
print.m: Fix localization of the default font file (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26055
diff
changeset
|
476 ## Otherwise, switch grid lines color to light gray so that the image |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
477 ## output approximately matches on-screen experience. |
24139
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
478 hax = findall (opts.figure, "type", "axes"); |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
479 if (! strcmp (tk, "gnuplot") && ! strcmp (opts.renderer, "opengl") |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
480 && ! (opts.svgconvert && strcmp (opts.devopt, "pdfwrite")) |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
481 && ! strcmp (opts.devopt, "svg")) |
24139
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
482 for n = 1:numel (hax) |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
483 if (strcmp (get (hax(n), "gridcolormode"), "auto")) |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
484 props(end+1).h = hax(n); |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
485 props(end).name = "gridcolormode"; |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
486 props(end).value = {"auto"}; |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
487 props(end+1).h = hax(n); |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
488 props(end).name = "gridcolor"; |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
489 props(end).value = {get(hax(n), "gridcolor")}; |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
490 set (hax(n), "gridcolor", [0.85 0.85 0.85]); |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
491 nfig += 2; |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
492 endif |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
493 |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
494 if (strcmp (get (hax(n), "minorgridcolormode"), "auto")) |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
495 props(end+1).h = hax(n); |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
496 props(end).name = "minorgridcolormode"; |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
497 props(end).value = {"auto"}; |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
498 props(end+1).h = hax(n); |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
499 props(end).name = "minorgridcolor"; |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
500 props(end).value = {get(hax(n), "minorgridcolor")}; |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
501 set (hax(n), "minorgridcolor", [0.75 0.75 0.75]); |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
502 nfig += 2; |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
503 endif |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
504 endfor |
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
505 endif |
24208
eec262017c6a
maint: Strip trailing whitespace from source files.
John W. Eaton <jwe@octave.org>
parents:
24207
diff
changeset
|
506 |
14355
a6a5c5008e39
Print() function requires figure units to be "pixels".
Ben Abbott <bpabbott@mac.com>
parents:
14335
diff
changeset
|
507 ## print() requires figure units to be "pixels" |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
508 props(end+1).h = opts.figure; |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
509 props(end).name = "units"; |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
510 props(end).value = {get(opts.figure, "units")}; |
14355
a6a5c5008e39
Print() function requires figure units to be "pixels".
Ben Abbott <bpabbott@mac.com>
parents:
14335
diff
changeset
|
511 set (opts.figure, "units", "pixels"); |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
512 nfig += 1; |
14355
a6a5c5008e39
Print() function requires figure units to be "pixels".
Ben Abbott <bpabbott@mac.com>
parents:
14335
diff
changeset
|
513 |
17742
4e225f952885
Fix shrinking axes when printing plots with legends (bug #40333).
Rik <rik@octave.org>
parents:
17723
diff
changeset
|
514 ## graphics toolkit translates figure position to eps bbox (points) |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
515 fpos = get (opts.figure, "position"); |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
516 props(end+1).h = opts.figure; |
24687
8b935067a257
Allow printing without updating qt visible or invisible figures (bug #52940).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
24609
diff
changeset
|
517 props(end).name = "__printing__"; |
8b935067a257
Allow printing without updating qt visible or invisible figures (bug #52940).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
24609
diff
changeset
|
518 props(end).value = {"off"}; |
8b935067a257
Allow printing without updating qt visible or invisible figures (bug #52940).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
24609
diff
changeset
|
519 props(end+1).h = opts.figure; |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
520 props(end).name = "position"; |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
521 props(end).value = {fpos}; |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
522 fpos(3:4) = opts.canvas_size; |
24687
8b935067a257
Allow printing without updating qt visible or invisible figures (bug #52940).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
24609
diff
changeset
|
523 set (opts.figure, "__printing__", "on", "position", fpos); |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
524 nfig += 1; |
7550
bffb1e2ab732
print.m: Figure handle as argument.
Ben Abbott <bpabbott@mac.com>
parents:
7543
diff
changeset
|
525 |
21323
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
526 ## Implement InvertHardCopy option |
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
527 do_hardcopy = strcmp (get (opts.figure, "inverthardcopy"), "on"); |
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
528 |
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
529 if (do_hardcopy) |
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
530 ## Set figure background to white. |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
531 props(end+1).h = opts.figure; |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
532 props(end).name = "color"; |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
533 props(end).value{1} = get (opts.figure, "color"); |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
534 set (opts.figure, "color", "white"); |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
535 nfig += 1; |
21323
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
536 endif |
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
537 |
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
538 if (do_hardcopy) |
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
539 ## Set background to white for all top-level axes objects |
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
540 hax = findall (opts.figure, "-depth", 1, "type", "axes", |
21859
ec3adcec1337
Fix "inverthardcopy" for transparent axes and plotyy (bug #48161).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
21759
diff
changeset
|
541 "-not", "tag", "legend", |
ec3adcec1337
Fix "inverthardcopy" for transparent axes and plotyy (bug #48161).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
21759
diff
changeset
|
542 "-not", "color", "none"); |
22578
956f5c71dc3c
Fix printing when axes has color "none" (bug #49243).
Rik <rik@octave.org>
parents:
22571
diff
changeset
|
543 if (! isempty (hax)) |
956f5c71dc3c
Fix printing when axes has color "none" (bug #49243).
Rik <rik@octave.org>
parents:
22571
diff
changeset
|
544 for n = 1:numel (hax) |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
545 props(end+1).h = hax(n); |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
546 props(end).name = "color"; |
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
547 props(end).value{1} = get(hax(n), "color"); |
22578
956f5c71dc3c
Fix printing when axes has color "none" (bug #49243).
Rik <rik@octave.org>
parents:
22571
diff
changeset
|
548 set (hax(n), "color", "white"); |
22783
219c70d2ba28
print.m: Don't change ui* objects units (bug #49600).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
22755
diff
changeset
|
549 nfig += 1; |
22578
956f5c71dc3c
Fix printing when axes has color "none" (bug #49243).
Rik <rik@octave.org>
parents:
22571
diff
changeset
|
550 endfor |
956f5c71dc3c
Fix printing when axes has color "none" (bug #49243).
Rik <rik@octave.org>
parents:
22571
diff
changeset
|
551 endif |
21323
030d4d6c2b58
Implement figure property "InvertHardCopy" for printing (bug #47230).
Rik <rik@octave.org>
parents:
21122
diff
changeset
|
552 endif |
10913
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
553 |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
554 if (opts.force_solid != 0) |
10913
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
555 h = findall (opts.figure, "-property", "linestyle"); |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
556 m = numel (props); |
14868
5d3a684236b0
maint: Use Octave coding conventions for cuddling parentheses in scripts directory
Rik <octave@nomad.inbox5.com>
parents:
14852
diff
changeset
|
557 for n = 1:numel (h) |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
558 props(m+n).h = h(n); |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
559 props(m+n).name = "linestyle"; |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
560 props(m+n).value = {get(h(n), "linestyle")}; |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
561 endfor |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
562 if (opts.force_solid > 0) |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
563 linestyle = "-"; |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
564 else |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
565 linestyle = "--"; |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
566 endif |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
567 set (h, "linestyle", linestyle); |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
568 endif |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
569 |
21365
5b9618f4f841
Rely upon print.m for mono/color conversion. This simplifies gnuplot support
Ben Abbott <bpabbott@mac.com>
parents:
21323
diff
changeset
|
570 if (opts.use_color < 0) |
10866
045558999570
print.m: Include 'colormap' when converting RGB to mono.
Ben Abbott <bpabbott@mac.com>
parents:
10860
diff
changeset
|
571 color_props = {"color", "facecolor", "edgecolor", "colormap"}; |
14868
5d3a684236b0
maint: Use Octave coding conventions for cuddling parentheses in scripts directory
Rik <octave@nomad.inbox5.com>
parents:
14852
diff
changeset
|
572 for c = 1:numel (color_props) |
10913
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
573 h = findall (opts.figure, "-property", color_props{c}); |
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
574 hnone = findall (opts.figure, color_props{c}, "none"); |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
575 h = setdiff (h, hnone); |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
576 m = numel (props); |
14868
5d3a684236b0
maint: Use Octave coding conventions for cuddling parentheses in scripts directory
Rik <octave@nomad.inbox5.com>
parents:
14852
diff
changeset
|
577 for n = 1:numel (h) |
24423
1d52db450db4
Change ishandle to return true for Java objects for Matlab compatibility.
Rik <rik@octave.org>
parents:
24370
diff
changeset
|
578 if (ishghandle (h(n))) |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
579 ## Need to verify objects exist since callbacks may delete objects |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
580 ## as the colors for others are modified. |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
581 rgb = get (h(n), color_props{c}); |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
582 props(end+1).h = h(n); |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
583 props(end).name = color_props{c}; |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
584 props(end).value = {get(h(n), color_props{c})}; |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
585 if (isnumeric (rgb)) |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
586 ## convert RGB color to RGB gray scale |
14872
c2dbdeaa25df
maint: use rows() and columns() to clarify m-files.
Rik <octave@nomad.inbox5.com>
parents:
14868
diff
changeset
|
587 xfer = repmat ([0.30, 0.59, 0.11], rows (rgb), 1); |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
588 ggg = repmat (sum (xfer .* rgb, 2), 1, 3); |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
589 set (h(n), color_props{c}, ggg); |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
590 endif |
10866
045558999570
print.m: Include 'colormap' when converting RGB to mono.
Ben Abbott <bpabbott@mac.com>
parents:
10860
diff
changeset
|
591 endif |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
592 endfor |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
593 endfor |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
594 endif |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
595 |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
596 if (! isempty (opts.font) || ! isempty (opts.fontsize)) |
10913
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
597 h = findall (opts.figure, "-property", "fontname"); |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
598 m = numel (props); |
14868
5d3a684236b0
maint: Use Octave coding conventions for cuddling parentheses in scripts directory
Rik <octave@nomad.inbox5.com>
parents:
14852
diff
changeset
|
599 for n = 1:numel (h) |
24423
1d52db450db4
Change ishandle to return true for Java objects for Matlab compatibility.
Rik <rik@octave.org>
parents:
24370
diff
changeset
|
600 if (ishghandle (h(n))) |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
601 if (! isempty (opts.font)) |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
602 props(end+1).h = h(n); |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
603 props(end).name = "fontname"; |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
604 props(end).value = {get(h(n), "fontname")}; |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
605 endif |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
606 endif |
24423
1d52db450db4
Change ishandle to return true for Java objects for Matlab compatibility.
Rik <rik@octave.org>
parents:
24370
diff
changeset
|
607 if (ishghandle (h(n))) |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
608 if (! isempty (opts.fontsize)) |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
609 props(end+1).h = h(n); |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
610 props(end).name = "fontsize"; |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
611 props(end).value = {get(h(n), "fontsize")}; |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
612 endif |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
613 endif |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
614 endfor |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
615 if (! isempty (opts.font)) |
24423
1d52db450db4
Change ishandle to return true for Java objects for Matlab compatibility.
Rik <rik@octave.org>
parents:
24370
diff
changeset
|
616 set (h(ishghandle (h)), "fontname", opts.font); |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
617 endif |
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
618 if (! isempty (opts.fontsize)) |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
619 if (ischar (opts.fontsize)) |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
620 fontsize = str2double (opts.fontsize); |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
621 else |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
622 fontsize = opts.fontsize; |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
623 endif |
15214
ae6b7ee0a733
print.m: Correct typo preventing fontsize to be set (bug #37163)
Rik <rik@octave.org>
parents:
14872
diff
changeset
|
624 if (! isempty (opts.scalefontsize) && ! opts.scalefontsize != 1) |
14206
df695e37d404
Make sure "print '-SX,Y' ..." doesn't round down a pixel. Bug # 35307.
Ben Abbott <bpabbott@mac.com>
parents:
14138
diff
changeset
|
625 ## This is done to work around the bbox being whole numbers. |
20231
83792dd9bcc1
Use in-place operators in m-files where possible.
Rik <rik@octave.org>
parents:
20181
diff
changeset
|
626 fontsize *= opts.scalefontsize; |
14206
df695e37d404
Make sure "print '-SX,Y' ..." doesn't round down a pixel. Bug # 35307.
Ben Abbott <bpabbott@mac.com>
parents:
14138
diff
changeset
|
627 endif |
17723
132d9f543cc5
print.m: 2nd fix for printing when using -F option (bug #40334)
Rik <rik@octave.org>
parents:
17721
diff
changeset
|
628 ## FIXME: legend child objects need to be acted on first. |
132d9f543cc5
print.m: 2nd fix for printing when using -F option (bug #40334)
Rik <rik@octave.org>
parents:
17721
diff
changeset
|
629 ## or legend fontsize callback will destroy them. |
24423
1d52db450db4
Change ishandle to return true for Java objects for Matlab compatibility.
Rik <rik@octave.org>
parents:
24370
diff
changeset
|
630 hlist = h(ishghandle (h)); |
17723
132d9f543cc5
print.m: 2nd fix for printing when using -F option (bug #40334)
Rik <rik@octave.org>
parents:
17721
diff
changeset
|
631 haxes = strcmp (get (hlist, "type"), "axes"); |
132d9f543cc5
print.m: 2nd fix for printing when using -F option (bug #40334)
Rik <rik@octave.org>
parents:
17721
diff
changeset
|
632 set (hlist(! haxes), "fontsize", fontsize); |
132d9f543cc5
print.m: 2nd fix for printing when using -F option (bug #40334)
Rik <rik@octave.org>
parents:
17721
diff
changeset
|
633 set (hlist(haxes), "fontsize", fontsize); |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
634 endif |
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
635 endif |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
636 |
26055
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
637 ## When exporting latex files use "latex" for the ticklabelinterpreter. |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
638 ## It will format tick labels in log axes correctly |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
639 if (strfind (opts.devopt, "latex")) |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
640 h = findall (opts.figure, "type", "axes"); |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
641 for n = 1:numel (h) |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
642 if (ishghandle (h(n))) |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
643 props(end+1).h = h(n); |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
644 props(end).name = "ticklabelinterpreter"; |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
645 props(end).value = {get(h(n), "ticklabelinterpreter")}; |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
646 set (h(n), "ticklabelinterpreter", "latex"); |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
647 endif |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
648 endfor |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
649 endif |
8b9e6a39e0a2
Allow log axes to be exported correctly in tex formats (bug #50130).
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26048
diff
changeset
|
650 |
19026
d6f1f46e5b8f
Fix double '-P' in print command to printer (bug #41957).
Michael Godfrey <michaeldgodfrey@gmail.com>
parents:
17751
diff
changeset
|
651 ## call the graphics toolkit print script |
24139
5d2d0e570e46
print.m: fake grid transparency with gray color (bug #49705)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
23991
diff
changeset
|
652 switch (tk) |
17174
c3c1ebfaa7dc
maint: Use common indentation for switch statement.
Rik <rik@octave.org>
parents:
17146
diff
changeset
|
653 case "gnuplot" |
c3c1ebfaa7dc
maint: Use common indentation for switch statement.
Rik <rik@octave.org>
parents:
17146
diff
changeset
|
654 opts = __gnuplot_print__ (opts); |
c3c1ebfaa7dc
maint: Use common indentation for switch statement.
Rik <rik@octave.org>
parents:
17146
diff
changeset
|
655 otherwise |
25998
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
656 if (strcmp (opts.renderer, "opengl")) |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
657 if (opts.rgb_output) |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
658 rgbout = __get_frame__ (opts.figure); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
659 else |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
660 compression = "none"; |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
661 |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
662 if (strcmp (opts.devopt, "tiff")) |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
663 compression = "lzw"; |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
664 elseif (strcmp (opts.devopt, "tiffn")) |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
665 opts.devopt = "tiff"; |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
666 endif |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
667 |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
668 imwrite (__get_frame__ (opts.figure), opts.name, ... |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
669 opts.devopt, "Compression", compression); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
670 endif |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
671 else |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
672 opts = __opengl_print__ (opts); |
8d2b3e3ff182
print.m: Implement "-opengl", "-painters" and "-RGBImage" options (bug #52866)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25884
diff
changeset
|
673 endif |
11009 | 674 endswitch |
19706
18fd412c7dc3
Remove erroneously added "keyboard" in cset ef3cdadc2a08
Andreas Weber <andy.weber.aw@gmail.com>
parents:
19705
diff
changeset
|
675 |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
676 unwind_protect_cleanup |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
677 ## restore modified properties |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
678 if (isstruct (props)) |
17751
e2f83152e64a
print.m: Restore figure position first (in pixels) and then original units.
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
679 ## Restore figure position and units first |
20936
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
680 for n = nfig:-1:1 |
24423
1d52db450db4
Change ishandle to return true for Java objects for Matlab compatibility.
Rik <rik@octave.org>
parents:
24370
diff
changeset
|
681 if (ishghandle (props(n).h)) |
17751
e2f83152e64a
print.m: Restore figure position first (in pixels) and then original units.
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
682 set (props(n).h, props(n).name, props(n).value{1}); |
e2f83152e64a
print.m: Restore figure position first (in pixels) and then original units.
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
683 endif |
e2f83152e64a
print.m: Restore figure position first (in pixels) and then original units.
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
684 endfor |
20936
80dd7b3529ee
Convert figure's descendants units to "normalized" during printing (Bug #46292).
Ben Abbott <bpabbott@mac.com>
parents:
20852
diff
changeset
|
685 for n = numel (props):-1:(nfig + 1) |
24423
1d52db450db4
Change ishandle to return true for Java objects for Matlab compatibility.
Rik <rik@octave.org>
parents:
24370
diff
changeset
|
686 if (ishghandle (props(n).h)) |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
687 set (props(n).h, props(n).name, props(n).value{1}); |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
688 endif |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
689 endfor |
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
690 endif |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
691 |
10913
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
692 ## Unlink temporary files |
14868
5d3a684236b0
maint: Use Octave coding conventions for cuddling parentheses in scripts directory
Rik <octave@nomad.inbox5.com>
parents:
14852
diff
changeset
|
693 for n = 1:numel (opts.unlink) |
10913
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
694 [status, output] = unlink (opts.unlink{n}); |
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
695 if (status != 0) |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
696 warning ("octave:print:unlinkerror", ... |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
697 "print.m: %s, '%s'", output, opts.unlink{n}); |
10913
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
698 endif |
dd6b90f44ae5
Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents:
10866
diff
changeset
|
699 endfor |
10860
3a5f5c99cc39
print.m: Modify texinfo. Add unwind_protect block.
Ben Abbott <bpabbott@mac.com>
parents:
10854
diff
changeset
|
700 end_unwind_protect |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
701 |
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
702 if (isfigure (orig_figure)) |
17146
bbda4d952eb5
Fix pop-up of invisible figures during printing.
Rik <rik@octave.org>
parents:
17129
diff
changeset
|
703 set (0, "currentfigure", orig_figure); |
10834
05ba991794d4
Improvements for fltk printing.
Ben Abbott <bpabbott@mac.com>
parents:
10821
diff
changeset
|
704 endif |
5363 | 705 |
5361 | 706 endfunction |
11009 | 707 |
708 function cmd = epstool (opts, filein, fileout) | |
709 ## As epstool does not work with pipes, a subshell is used to | |
21751
b571fc85953f
maint: Use two spaces after period to indicate sentence break.
Rik <rik@octave.org>
parents:
21578
diff
changeset
|
710 ## permit piping. Since this solution does not work with the DOS |
11009 | 711 ## command shell, the -tight and -preview options are disabled if |
712 ## output must be piped. | |
713 | |
714 ## DOS Shell: | |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
715 ## gs.exe [...] -sOutputFile=<filein> - & epstool -bbox -preview-tiff <filein> <fileout> & del <filein> |
11009 | 716 ## Unix Shell; |
717 ## cat > <filein> ; epstool -bbox -preview-tiff <filein> <fileout> ; rm <filein> | |
718 | |
19724
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
719 ## HACK: Keep track of whether ghostscript supports epswrite or eps2write. |
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
720 persistent epsdevice; |
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
721 if (isempty (epsdevice)) |
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
722 [status, devlist] = system (sprintf ("%s -h", opts.ghostscript.binary)); |
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
723 if (isempty (strfind (devlist, "eps2write"))) |
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
724 epsdevice = "epswrite"; |
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
725 else |
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
726 epsdevice = "eps2write"; |
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
727 endif |
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
728 endif |
19833
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19725
diff
changeset
|
729 |
11009 | 730 dos_shell = (ispc () && ! isunix ()); |
731 | |
732 cleanup = ""; | |
733 if (nargin < 3) | |
734 fileout = opts.name; | |
735 elseif (isempty (fileout)) | |
736 fileout = "-"; | |
737 endif | |
738 | |
739 if (nargin < 2 || strcmp (filein, "-") || isempty (filein)) | |
740 pipein = true; | |
19278
6ca096827123
Use tempname() rather than tmpnam() in core Octave.
Rik <rik@octave.org>
parents:
19078
diff
changeset
|
741 filein = [tempname() ".eps"]; |
11009 | 742 if (dos_shell) |
11252
d048ce3f7cef
Replace "delete" with "del" in DOS shell commands.
Michael Goffioul <michael.goffioul@gmail.com>
parents:
11120
diff
changeset
|
743 cleanup = sprintf ("& del %s ", strrep (filein, '/', '\')); |
11009 | 744 else |
745 cleanup = sprintf ("; rm %s ", filein); | |
746 endif | |
747 else | |
748 pipein = false; | |
20778
8513c84a13cb
Use parser string concatenation rather than strcat() for performance in m-files.
Rik <rik@octave.org>
parents:
20713
diff
changeset
|
749 filein = ["'" strtrim(filein) "'"]; |
11009 | 750 endif |
751 if (strcmp (fileout, "-")) | |
752 pipeout = true; | |
19278
6ca096827123
Use tempname() rather than tmpnam() in core Octave.
Rik <rik@octave.org>
parents:
19078
diff
changeset
|
753 fileout = [tempname() ".eps"]; |
11009 | 754 if (dos_shell) |
19833
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19725
diff
changeset
|
755 cleanup = [cleanup, sprintf("& del %s ", strrep (fileout, '/', '\'))]; |
11009 | 756 else |
19833
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19725
diff
changeset
|
757 cleanup = [cleanup, sprintf("; rm %s ", fileout)]; |
11009 | 758 endif |
759 else | |
760 pipeout = false; | |
20778
8513c84a13cb
Use parser string concatenation rather than strcat() for performance in m-files.
Rik <rik@octave.org>
parents:
20713
diff
changeset
|
761 fileout = ["'" strtrim(fileout) "'"]; |
11009 | 762 endif |
763 | |
764 if (! isempty (opts.preview) && opts.tight_flag) | |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
765 warning ("octave:print:previewandtight", |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
766 "print.m: eps preview may not be combined with -tight"); |
11009 | 767 endif |
768 if (! isempty (opts.preview) || opts.tight_flag) | |
23991
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
769 |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
770 if (isempty (opts.epstool_binary)) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
771 error ("print:noepstool", "print.m: 'epstool' is required for specified output format, but binary is not available in PATH"); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
772 endif |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
773 |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
774 if (opts.tight_flag) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
775 cmd = "--copy --bbox"; |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
776 elseif (! isempty (opts.preview)) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
777 switch (opts.preview) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
778 case "tiff" |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
779 cmd = sprintf ("--add-%s-preview --device tiffg3", opts.preview); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
780 case {"tiff6u", "tiff6p", "metafile"} |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
781 cmd = sprintf ("--add-%s-preview --device bmpgray", opts.preview); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
782 case {"tiff4", "interchange"} |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
783 cmd = sprintf ("--add-%s-preview", opts.preview); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
784 case "pict" |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
785 cmd = sprintf ("--add-%s-preview --mac-single", opts.preview); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
786 otherwise |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
787 error ("print:invalidpreview", |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
788 "print.m: epstool cannot include preview for format '%s'", |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
789 opts.preview); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
790 endswitch |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
791 if (! isempty (opts.ghostscript.resolution)) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
792 cmd = sprintf ("%s --dpi %d", cmd, fix (opts.ghostscript.resolution)); |
11009 | 793 endif |
23991
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
794 else |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
795 cmd = ""; |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
796 endif |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
797 if (! isempty (cmd)) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
798 cmd = sprintf ("%s --quiet %s %s %s ", opts.epstool_binary, |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
799 cmd, filein, fileout); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
800 endif |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
801 if (pipein) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
802 if (dos_shell) |
24370
b1d1229d9e83
maint: Use single quotes to simplify excessive backslash escapes in code.
Rik <rik@octave.org>
parents:
24208
diff
changeset
|
803 filein(filein=="'") = '"'; |
23991
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
804 gs_cmd = __ghostscript__ ("binary", opts.ghostscript.binary, |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
805 "device", epsdevice, |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
806 "source", "-", |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
807 "output", filein); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
808 cmd = sprintf ("%s %s & %s", gs_cmd, filein, cmd); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
809 else |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
810 cmd = sprintf ("cat > %s ; %s", filein, cmd); |
11009 | 811 endif |
23991
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
812 endif |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
813 if (pipeout) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
814 if (dos_shell) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
815 cmd = sprintf ("%s & type %s", cmd, fileout); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
816 else |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
817 cmd = sprintf ("%s ; cat %s", cmd, fileout); |
11009 | 818 endif |
23991
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
819 endif |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
820 if (! isempty (cleanup)) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
821 if (pipeout && dos_shell) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
822 error ("print:epstoolpipe", |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
823 "print.m: cannot pipe output of 'epstool' for DOS shell"); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
824 elseif (pipeout) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
825 cmd = sprintf ("( %s %s )", cmd, cleanup); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
826 else |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
827 cmd = sprintf ("%s %s", cmd, cleanup); |
11009 | 828 endif |
829 endif | |
830 else | |
831 if (pipein && pipeout) | |
832 if (dos_shell) | |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
833 cmd = __ghostscript__ ("binary", opts.ghostscript.binary, |
19724
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
834 "device", epsdevice, |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
835 "source", "-", |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
836 "output", "-"); |
11009 | 837 else |
838 cmd = " cat "; | |
839 endif | |
840 elseif (pipein && ! pipeout) | |
841 if (dos_shell) | |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
842 ## ghostscript expects double, not single, quotes |
24370
b1d1229d9e83
maint: Use single quotes to simplify excessive backslash escapes in code.
Rik <rik@octave.org>
parents:
24208
diff
changeset
|
843 fileout(fileout=="'") = '"'; |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
844 cmd = __ghostscript__ ("binary", opts.ghostscript.binary, |
19724
abc158e7122e
Use epswrite/eps2write depending on capabilities of ghostscript (bug #44186).
Rik <rik@octave.org>
parents:
19706
diff
changeset
|
845 "device", epsdevice, |
11551
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
846 "source", "-", |
84fa2ba414ee
print.m: Fix printing to eps for DOS.
Ben Abbott <bpabbott@mac.com>
parents:
11523
diff
changeset
|
847 "output", fileout); |
11009 | 848 else |
849 cmd = sprintf (" cat > %s ", fileout); | |
850 endif | |
851 elseif (! pipein && pipeout) | |
852 if (dos_shell) | |
853 cmd = sprintf (" type %s ", filein); | |
854 else | |
855 cmd = sprintf (" cat %s ", filein); | |
856 endif | |
857 else | |
858 if (dos_shell) | |
859 cmd = sprintf (" copy %s %s ", filein, fileout); | |
860 else | |
861 cmd = sprintf (" cp %s %s ", filein, fileout); | |
862 endif | |
863 endif | |
864 endif | |
865 if (opts.debug) | |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
866 fprintf ("epstool command: '%s'\n", cmd); |
11009 | 867 endif |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
868 |
11009 | 869 endfunction |
870 | |
871 function cmd = fig2dev (opts, devopt) | |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
872 |
11009 | 873 if (nargin < 2) |
19833
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19725
diff
changeset
|
874 devopt = opts.devopt; |
11009 | 875 endif |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
876 |
23991
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
877 if (isempty (opts.fig2dev_binary)) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
878 error ("print:nofig2dev", "print.m: 'fig2dev' is required for specified output format, but binary is not available in PATH"); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
879 endif |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
880 |
11009 | 881 dos_shell = (ispc () && ! isunix ()); |
23991
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
882 if (dos_shell) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
883 ## FIXME: Is this the right thing to do for DOS? |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
884 cmd = sprintf ("%s -L %s 2> NUL", opts.fig2dev_binary, devopt); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
885 else |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
886 cmd = sprintf ("%s -L %s 2> /dev/null", opts.fig2dev_binary, devopt); |
11009 | 887 endif |
23991
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
888 |
11009 | 889 if (opts.debug) |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
890 fprintf ("fig2dev command: '%s'\n", cmd); |
11009 | 891 endif |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
892 |
11009 | 893 endfunction |
894 | |
12199
3fc07861449b
Fix {eps,ps,pdf}latexstandalone printing for fltk, bug 32262.
Ben Abbott <bpabbott@mac.com>
parents:
11589
diff
changeset
|
895 function latex_standalone (opts) |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
896 |
12199
3fc07861449b
Fix {eps,ps,pdf}latexstandalone printing for fltk, bug 32262.
Ben Abbott <bpabbott@mac.com>
parents:
11589
diff
changeset
|
897 n = find (opts.name == ".", 1, "last"); |
3fc07861449b
Fix {eps,ps,pdf}latexstandalone printing for fltk, bug 32262.
Ben Abbott <bpabbott@mac.com>
parents:
11589
diff
changeset
|
898 if (! isempty (n)) |
3fc07861449b
Fix {eps,ps,pdf}latexstandalone printing for fltk, bug 32262.
Ben Abbott <bpabbott@mac.com>
parents:
11589
diff
changeset
|
899 opts.name = opts.name(1:n-1); |
3fc07861449b
Fix {eps,ps,pdf}latexstandalone printing for fltk, bug 32262.
Ben Abbott <bpabbott@mac.com>
parents:
11589
diff
changeset
|
900 endif |
20778
8513c84a13cb
Use parser string concatenation rather than strcat() for performance in m-files.
Rik <rik@octave.org>
parents:
20713
diff
changeset
|
901 latexfile = [opts.name ".tex"]; |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
902 |
16933
e39f00a32dc7
maint: Use parentheses around condition for switch(),while(),if() statements.
Rik <rik@octave.org>
parents:
16826
diff
changeset
|
903 switch (opts.devopt) |
17174
c3c1ebfaa7dc
maint: Use common indentation for switch statement.
Rik <rik@octave.org>
parents:
17146
diff
changeset
|
904 case {"pdflatexstandalone"} |
c3c1ebfaa7dc
maint: Use common indentation for switch statement.
Rik <rik@octave.org>
parents:
17146
diff
changeset
|
905 packages = "\\usepackage{graphicx,color}"; |
20778
8513c84a13cb
Use parser string concatenation rather than strcat() for performance in m-files.
Rik <rik@octave.org>
parents:
20713
diff
changeset
|
906 graphicsfile = [opts.name "-inc.pdf"]; |
17174
c3c1ebfaa7dc
maint: Use common indentation for switch statement.
Rik <rik@octave.org>
parents:
17146
diff
changeset
|
907 case {"pslatexstandalone"} |
c3c1ebfaa7dc
maint: Use common indentation for switch statement.
Rik <rik@octave.org>
parents:
17146
diff
changeset
|
908 packages = "\\usepackage{epsfig,color}"; |
20778
8513c84a13cb
Use parser string concatenation rather than strcat() for performance in m-files.
Rik <rik@octave.org>
parents:
20713
diff
changeset
|
909 graphicsfile = [opts.name "-inc.ps"]; |
17174
c3c1ebfaa7dc
maint: Use common indentation for switch statement.
Rik <rik@octave.org>
parents:
17146
diff
changeset
|
910 otherwise |
c3c1ebfaa7dc
maint: Use common indentation for switch statement.
Rik <rik@octave.org>
parents:
17146
diff
changeset
|
911 packages = "\\usepackage{epsfig,color}"; |
20778
8513c84a13cb
Use parser string concatenation rather than strcat() for performance in m-files.
Rik <rik@octave.org>
parents:
20713
diff
changeset
|
912 graphicsfile = [opts.name "-inc.eps"]; |
12199
3fc07861449b
Fix {eps,ps,pdf}latexstandalone printing for fltk, bug 32262.
Ben Abbott <bpabbott@mac.com>
parents:
11589
diff
changeset
|
913 endswitch |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
914 |
12199
3fc07861449b
Fix {eps,ps,pdf}latexstandalone printing for fltk, bug 32262.
Ben Abbott <bpabbott@mac.com>
parents:
11589
diff
changeset
|
915 papersize = sprintf ("\\usepackage[papersize={%.2fbp,%.2fbp},text={%.2fbp,%.2fbp}]{geometry}", |
19725
5f2c0ca0ef51
Ensure that numbers passed to integer *printf format codes are integers (bug #44245).
Rik <rik@octave.org>
parents:
19724
diff
changeset
|
916 fix (opts.canvas_size), fix (opts.canvas_size)); |
11009 | 917 prepend = {"\\documentclass{minimal}"; |
12199
3fc07861449b
Fix {eps,ps,pdf}latexstandalone printing for fltk, bug 32262.
Ben Abbott <bpabbott@mac.com>
parents:
11589
diff
changeset
|
918 packages; |
3fc07861449b
Fix {eps,ps,pdf}latexstandalone printing for fltk, bug 32262.
Ben Abbott <bpabbott@mac.com>
parents:
11589
diff
changeset
|
919 papersize; |
11009 | 920 "\\begin{document}"; |
921 "\\centering"}; | |
922 postpend = {"\\end{document}"}; | |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
923 |
11009 | 924 fid = fopen (latexfile, "r"); |
21759
b002b4331a12
maint: Use two newlines after endfunction and start of BIST tests.
Rik <rik@octave.org>
parents:
21758
diff
changeset
|
925 if (fid < 0) |
11009 | 926 error ("print:erroropeningfile", |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
927 "print.m: error opening file '%s'", latexfile); |
11009 | 928 endif |
21759
b002b4331a12
maint: Use two newlines after endfunction and start of BIST tests.
Rik <rik@octave.org>
parents:
21758
diff
changeset
|
929 latex = fscanf (fid, "%c", Inf); |
b002b4331a12
maint: Use two newlines after endfunction and start of BIST tests.
Rik <rik@octave.org>
parents:
21758
diff
changeset
|
930 status = fclose (fid); |
b002b4331a12
maint: Use two newlines after endfunction and start of BIST tests.
Rik <rik@octave.org>
parents:
21758
diff
changeset
|
931 if (status != 0) |
b002b4331a12
maint: Use two newlines after endfunction and start of BIST tests.
Rik <rik@octave.org>
parents:
21758
diff
changeset
|
932 error ("print:errorclosingfile", |
b002b4331a12
maint: Use two newlines after endfunction and start of BIST tests.
Rik <rik@octave.org>
parents:
21758
diff
changeset
|
933 "print.m: error closing file '%s'", latexfile); |
b002b4331a12
maint: Use two newlines after endfunction and start of BIST tests.
Rik <rik@octave.org>
parents:
21758
diff
changeset
|
934 endif |
b002b4331a12
maint: Use two newlines after endfunction and start of BIST tests.
Rik <rik@octave.org>
parents:
21758
diff
changeset
|
935 ## FIXME: should this be fixed in GL2PS? |
b002b4331a12
maint: Use two newlines after endfunction and start of BIST tests.
Rik <rik@octave.org>
parents:
21758
diff
changeset
|
936 latex = strrep (latex, "\\includegraphics{}", |
b002b4331a12
maint: Use two newlines after endfunction and start of BIST tests.
Rik <rik@octave.org>
parents:
21758
diff
changeset
|
937 sprintf ("\\includegraphics{%s}", graphicsfile)); |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
938 |
11009 | 939 fid = fopen (latexfile, "w"); |
940 if (fid >= 0) | |
941 fprintf (fid, "%s\n", prepend{:}); | |
942 fprintf (fid, "%s", latex); | |
943 fprintf (fid, "%s\n", postpend{:}); | |
944 status = fclose (fid); | |
945 if (status != 0) | |
946 error ("print:errorclosingfile", | |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
947 "print.m: error closing file '%s'", latexfile); |
11009 | 948 endif |
949 else | |
950 error ("print:erroropeningfile", | |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
951 "print.m: error opening file '%s'", latexfile); |
11009 | 952 endif |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
953 |
11009 | 954 endfunction |
955 | |
956 function cmd = lpr (opts) | |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
957 |
11009 | 958 if (nargin < 2) |
19833
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19725
diff
changeset
|
959 devopt = opts.devopt; |
11009 | 960 endif |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
961 |
11009 | 962 if (! isempty (opts.lpr_binary)) |
963 cmd = opts.lpr_binary; | |
964 if (! isempty (opts.lpr_options)) | |
965 cmd = sprintf ("%s %s", cmd, opts.lpr_options); | |
11113
a8ac114ec9ab
Stylefixes, replace end by endif.
Thorsten Meyer <thorsten.meyier@gmx.de>
parents:
11107
diff
changeset
|
966 endif |
11009 | 967 if (! isempty (opts.printer)) |
19026
d6f1f46e5b8f
Fix double '-P' in print command to printer (bug #41957).
Michael Godfrey <michaeldgodfrey@gmail.com>
parents:
17751
diff
changeset
|
968 cmd = sprintf ("%s %s", cmd, opts.printer); |
11113
a8ac114ec9ab
Stylefixes, replace end by endif.
Thorsten Meyer <thorsten.meyier@gmx.de>
parents:
11107
diff
changeset
|
969 endif |
11009 | 970 elseif (isempty (opts.lpr_binary)) |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
971 error ("print:nolpr", "print.m: 'lpr' not found in PATH"); |
11009 | 972 endif |
973 if (opts.debug) | |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
974 fprintf ("lpr command: '%s'\n", cmd); |
11009 | 975 endif |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
976 |
11009 | 977 endfunction |
978 | |
979 function cmd = pstoedit (opts, devopt) | |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
980 |
11009 | 981 if (nargin < 2) |
19833
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19725
diff
changeset
|
982 devopt = opts.devopt; |
11009 | 983 endif |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
984 |
23991
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
985 if (isempty (opts.pstoedit_binary)) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
986 error ("print:nopstoedit", "print.m: 'pstoedit' is required for specified output format, but binary is not available in PATH"); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
987 endif |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
988 |
11009 | 989 dos_shell = (ispc () && ! isunix ()); |
23991
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
990 if (dos_shell) |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
991 cmd = sprintf ("%s -f %s 2> NUL", opts.pstoedit_binary, devopt); |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
992 else |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
993 ## FIXME: Is this the right thing to do for DOS? |
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
994 cmd = sprintf ("%s -f %s 2> /dev/null", opts.pstoedit_binary, devopt); |
11009 | 995 endif |
23991
fcf7543e0d49
Only print warning messages about missing print tools when needed (bug #44152).
Rik <rik@octave.org>
parents:
23486
diff
changeset
|
996 |
11009 | 997 if (opts.debug) |
11589
b0084095098e
missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents:
11587
diff
changeset
|
998 fprintf ("pstoedit command: '%s'\n", cmd); |
11009 | 999 endif |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21751
diff
changeset
|
1000 |
11009 | 1001 endfunction |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1002 |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1003 function cmd = svgconvert (opts, devopt) |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1004 |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1005 cmd = ""; |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1006 |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1007 if (nargin < 2) |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1008 devopt = opts.devopt; |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1009 endif |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1010 |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1011 if (isempty (opts.svgconvert_binary)) |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1012 warning ("octave:print:nosvgconvert", ... |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1013 ["print.m: unale to find octave-svgconvert, ", ... |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1014 "falling back to eps convertion"]); |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1015 else |
26063
4407b315339d
print.m: Fix localization of the default font file (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26055
diff
changeset
|
1016 fontdir = getenv ("OCTAVE_FONTS_DIR"); |
4407b315339d
print.m: Fix localization of the default font file (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26055
diff
changeset
|
1017 |
4407b315339d
print.m: Fix localization of the default font file (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26055
diff
changeset
|
1018 if (isempty (fontdir)) |
4407b315339d
print.m: Fix localization of the default font file (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26055
diff
changeset
|
1019 fontdir = __octave_config_info__ ("octfontsdir"); |
4407b315339d
print.m: Fix localization of the default font file (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26055
diff
changeset
|
1020 endif |
4407b315339d
print.m: Fix localization of the default font file (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26055
diff
changeset
|
1021 |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1022 cmd = sprintf ("%s - %%s %3.2f %s %d %%s", opts.svgconvert_binary, ... |
26063
4407b315339d
print.m: Fix localization of the default font file (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26055
diff
changeset
|
1023 get (0, "screenpixelsperinch"), ... |
4407b315339d
print.m: Fix localization of the default font file (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
26055
diff
changeset
|
1024 fullfile (fontdir, "FreeSans.otf"), 1); |
26027
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1025 |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1026 if (opts.debug) |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1027 fprintf ("svgconvert command: '%s'\n", cmd); |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1028 endif |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1029 endif |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1030 |
98d7a111786a
Add SVG convertion option for printing to PDF and raster outputs (bug #52193)
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
25998
diff
changeset
|
1031 endfunction |