summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/scripts')
-rw-r--r--Master/texmf-dist/scripts/epspdf/epspdf.help78
-rwxr-xr-xMaster/texmf-dist/scripts/epspdf/epspdf.tlu17
-rwxr-xr-xMaster/texmf-dist/scripts/epspdf/epspdftk.tcl65
3 files changed, 103 insertions, 57 deletions
diff --git a/Master/texmf-dist/scripts/epspdf/epspdf.help b/Master/texmf-dist/scripts/epspdf/epspdf.help
index c200849f0a5..8ee499c019b 100644
--- a/Master/texmf-dist/scripts/epspdf/epspdf.help
+++ b/Master/texmf-dist/scripts/epspdf/epspdf.help
@@ -24,23 +24,26 @@ Epspdf and epspdftk
5 Troubleshooting
5.1 No options for output format visible
5.2 Ghostscript stackunderflow error
- 5.3 Part of the graphic gets cut off
- 5.4 Fonts look ugly
- 5.5 The page has been converted to a bitmap
- 5.6 Temporary files are not removed
- 5.7 Resources for troubleshooting
+ 5.3 Error message mentioning failure of pdf_crop
+ 5.4 Wrong boundingbox (.eps or .ps output)
+ 5.5 Part of the graphic gets cut off
+ 5.6 Fonts look ugly
+ 5.7 The page has been converted to a bitmap
+ 5.8 Temporary files are not removed
+ 5.9 Resources for troubleshooting
Appendix A Requirements
Appendix B Change history
- B.1 Version 6.4
- B.2 Version 0.6
- B.3 Version 0.5
- B.4 Version 0.4
+ B.1 Version 0.6.5
+ B.2 Version 0.6.4
+ B.3 Version 0.6
+ B.4 Version 0.5
+ B.5 Version 0.4
Epspdf and epspdftk
*******************
-This manual is for epspdf and epspdftk, version 0.6.4.
+This manual is for epspdf and epspdftk, version 0.6.5.
-Copyright (C) 2006-2019 Siep Kroonenberg.
+Copyright (C) 2006-2020 Siep Kroonenberg.
Copying and distribution of this file, with or without
modification, are permitted in any medium without royalty provided
@@ -116,6 +119,9 @@ in this screen. Epspdf looks for a number of PostScript- and pdf
viewers, from which you can select one, but you can also enter one
manually.
+Some viewers require a plugin for eps and PostScript. The GUI does not
+check whether such a plugin is actually installed.
+
For Windows and Mac OS there is no such configuration option. Epspdf
will use the program associated with the file type, which can be
configured outside epspdf.
@@ -163,7 +169,7 @@ elaborate command-line interface.
Below, we assume that there is a suitable wrapper or symlink for epspdf
on your searchpath. This is the case if you installed epspdf as a TeX
-Live package.
+Live- or MiKTeX package.
Basic usage of epspdf itself:
@@ -346,14 +352,26 @@ when converting to pdf: selecting "printer" as target may lead to an
error 'stackunderflow in .setdistillerparams'. If you run into this,
use the "default" or "prepress" target instead.
-5.3 Part of the graphic gets cut off
+5.3 Error message mentioning failure of pdf_crop
+================================================
+
+Problably, the luatex format has not been generated. Fix this with TeX
+Live Manager or with the MiKTeX Console.
+
+5.4 Wrong boundingbox (.eps or .ps output)
+==========================================
+
+This may be a bug in pdftops. Do not use pdftops (epspdftk: see
+configuration screen; command-line epspdf: use the "-I" option)
+
+5.5 Part of the graphic gets cut off
====================================
-If the PostScript file was generated with the Windows PostScript driver,
-experiment with the PostScript Output option. Don't choose Optimize for
-Speed.
+If the PostScript file was generated with the old Windows PostScript
+driver, experiment with the PostScript Output option. Don't choose
+Optimize for Speed.
-5.4 Fonts look ugly
+5.6 Fonts look ugly
===================
If Ghostscript has to do the conversion from pdf to ps then text may not
@@ -362,7 +380,7 @@ tend to do better in this respect than older ones, but as to preserving
fonts, the pdftops utility may still handle more cases. It is part of
the xpdf suite and of the Poppler utilities.
-5.5 The page has been converted to a bitmap
+5.7 The page has been converted to a bitmap
===========================================
The usual cause is that the page contains features such as transparency
@@ -371,7 +389,7 @@ which are not supported by the target format.
Otherwise, set pdf target use and target version both to "default" to
avoid unnecessary conversions: '-T default -N default'
-5.6 Temporary files are not removed
+5.8 Temporary files are not removed
===================================
* Command-line: make sure that you did not specify the option '-d'.
@@ -382,7 +400,7 @@ avoid unnecessary conversions: '-T default -N default'
However, you should have no trouble removing temporary files
manually.
-5.7 Resources for troubleshooting
+5.9 Resources for troubleshooting
=================================
Logfile. The GUI has a button for viewing log output. This same output
@@ -429,8 +447,18 @@ creates a menu shortcut and an uninstaller.
Appendix B Change history
*************************
-B.1 Version 6.4
-===============
+B.1 Version 0.6.5
+=================
+
+Epspdf: Compatibility change for ghostscript 9.50 and later.
+
+Epspdftk: improvements to viewer selection; does not impact Windows or
+MacOS.
+
+A few updates to the manual, mostly for the troubleshooting section.
+
+B.2 Version 0.6.4
+=================
Compatibility changes for luatex 1.9 and later.
@@ -443,7 +471,7 @@ The GUI now requires Tcl/Tk version 8.5 or higher. On Windows,
epspdf.tlu is now invoked via a batchfile. This should prevent black
console windows popping up.
-B.2 Version 0.6
+B.3 Version 0.6
===============
The command-line backend component has been rewritten in texlua and
@@ -462,7 +490,7 @@ The current version has no provisions for custom Ghostscript- or pdftops
parameters. The corresponding command-line options are accepted but
have no effect.
-B.3 Version 0.5
+B.4 Version 0.5
===============
The GUI has been rewritten in Tcl/Tk, removing the dependence on the
@@ -496,7 +524,7 @@ the desired pdf version.
The "-info" option now also prints the number of pages for pdf files.
-B.4 Version 0.4
+B.5 Version 0.4
===============
Hi-res boundingboxes are now supported. By default, conversion from eps
diff --git a/Master/texmf-dist/scripts/epspdf/epspdf.tlu b/Master/texmf-dist/scripts/epspdf/epspdf.tlu
index 0007ade0742..1dba171bf18 100755
--- a/Master/texmf-dist/scripts/epspdf/epspdf.tlu
+++ b/Master/texmf-dist/scripts/epspdf/epspdf.tlu
@@ -11,8 +11,10 @@ epspdf conversion utility
0.6.3: compatibility fixes for luatex 0.9x
0.6.4: adaptations for newer versions of LuaTeX and ghostscript;
some refactoring; better handling of some corner cases
+0.6.5: eliminate .setpdfwrite from ghostscript commandlines,
+ since this is now considered obsolete
-Copyright (C) 2006-2019 Siep Kroonenberg
+Copyright (C) 2006-2020 Siep Kroonenberg
siepo at bitmuis nl
@@ -1895,17 +1897,13 @@ function any_to_any()
-- `distiller' settings
-- these depend on whether final output is pdf
- -- '.setpdfwrite' is just some optimization option for ghostscript
if options.type=='pdf' then
if settings.pdf_target and (settings.pdf_target~='default') then
table.insert(pdf_options, '-dPDFSETTINGS#/'..settings.pdf_target)
end
- if settings.pdf_target=='screen' or settings.pdf_target=='ebook' then
- pdf_tail_options = {'-c', '.setpdfwrite', '-f'}
- -- -f ensures that the input filename is not added to the -c string
- else
+ if settings.pdf_target~='screen' and settings.pdf_target~='ebook' then
pdf_tail_options = {
- '-c', '.setpdfwrite <</NeverEmbed [ ] >> setdistillerparams', '-f'}
+ '-c', '<</NeverEmbed [ ] >> setdistillerparams', '-f'}
end
end
@@ -2228,7 +2226,7 @@ descriptions.use_pdftops = 'Use pdftops if available'
settings.ps_viewer = false
descriptions.ps_viewer =
- 'Epspdftk: viewer for PostScript files; not used on Windows or OS X'
+ 'Epspdftk: viewer for PostScript files; not used on Windows or Mac OS'
settings.pdf_viewer = false
descriptions.pdf_viewer =
@@ -2271,7 +2269,8 @@ gs_options = {'-q', '-dNOPAUSE', '-dBATCH', '-P-', '-dSAFER'}
pdf_options = {'-sDEVICE#pdfwrite'} -- '-dUseCIEColor' causes serious slowdown
-- options for final conversion to pdf;
-- will be completed after reading settings and options
-pdf_tail_options = {'-c', '.setpdfwrite', '-f'}
+-- -f ensures that the input filename is not added to a -c string
+pdf_tail_options = {'-f'}
gray_options = {'-dProcessColorModel#/DeviceGray',
'-sColorConversionStrategy#Gray'}
diff --git a/Master/texmf-dist/scripts/epspdf/epspdftk.tcl b/Master/texmf-dist/scripts/epspdf/epspdftk.tcl
index 26ed17efcfd..5ea94b6f037 100755
--- a/Master/texmf-dist/scripts/epspdf/epspdftk.tcl
+++ b/Master/texmf-dist/scripts/epspdf/epspdftk.tcl
@@ -3,7 +3,7 @@
# epspdf conversion utility, GUI frontend
#####
-# Copyright (C) 2006-2019 Siep Kroonenberg
+# Copyright (C) 2006-2020 Siep Kroonenberg
# siepo at bitmuis dot nl
#
# This program is free software, licensed under the GNU GPL, >=2.0.
@@ -130,34 +130,38 @@ proc getsettings {} {
}
# unix: viewer settings
+ # It may depend on installed plugins whether a pdf viewer
+ # can render postscript.
+ # AFAIK, no such plugins exist for xpdf or mupdf.
+ # chrome and firefox also only render pdf and not postscript.
# configured viewer, if valid, heads the list
if {$::classic_unix} {
- set ::ps_viewers {}
- if {$::settings(ps_viewer) ne "" && [is_prog $::settings(ps_viewer)]} {
- lappend ::ps_viewers $::settings(ps_viewer)
- }
- foreach v {evince okular gv qpdfview} {
- if {$v ne $::settings(ps_viewer) && [is_prog $v]} {
- lappend ::ps_viewers $v
- }
- }
- # puts [join $::ps_viewers " "]
-
set ::pdf_viewers {}
if {$::settings(pdf_viewer) ne "" && [is_prog $::settings(pdf_viewer)]} {
lappend ::pdf_viewers $::settings(pdf_viewer)
}
- foreach v {evince okular mupdf qpdfview texworks xpdf zathura} {
+ foreach v {
+ atril evince okular qpdfview mupdf xpdf zathura gv firefox chrome \
+ chromium chromium-browser} {
if {$v ne $::settings(pdf_viewer) && [is_prog $v]} {
lappend ::pdf_viewers $v
}
}
# puts [join $::pdf_viewers " "]
- if {[llength ::pdf_viewers] == 0 && [llength ::ps_viewers] != 0} {
- lappend ::pdf_viewers [lindex $::ps_viewers 0]
+ set ::ps_viewers {}
+ if {$::settings(ps_viewer) ne "" && [is_prog $::settings(ps_viewer)]} {
+ lappend ::ps_viewers $::settings(ps_viewer)
+ }
+ foreach v $::pdf_viewers {
+ if {$v ne $::settings(ps_viewer) && \
+ $v ni {xpdf mupdf firefox chrome chromium chromium-browser}} {
+ lappend ::ps_viewers $v
+ }
}
+ # puts [join $::ps_viewers " "]
+
if {[llength ::pdf_viewers] == 0} {
tk_messageBox -message "No viewers found"
} elseif {[llength ::ps_viewers] == 0} {
@@ -227,19 +231,30 @@ proc ppack {b args} {pack $b {*}$args -padx 3 -pady 3}
font create bfont {*}[font configure TkDefaultFont]
font configure bfont -weight bold
-proc update_combo {w vls} {
- upvar $vls vs
+proc update_combo w {
+ # check that a manually supplied entry is actually a program
+ # proc used for postscript- and pdf viewers
+ set vls [$w cget -values]
set new [$w get]
- if {$new ni $vs} {
+ if {$new ni $vls} {
if {[is_prog $new]} {
- set vs [linsert $vs 0 $new]
- $w configure -values $vs
+ set vls [linsert $vls 0 $new]
+ $w configure -values $vls
} else {
- tk_messageBox -title Error -icon error -message "$vl Not a program"
+ tk_messageBox -title Error -icon error -message "$new not a program"
+ raise .config_t
+ focus $w
}
}
}
+proc revert_combo w {
+ # aborts entry of new value
+ if {[$w current] < 0} {
+ $w current 0
+ }
+}
+
### and now the actual GUI ###################################
wm title . "PostScript- and pdf conversions"
@@ -319,11 +334,15 @@ if {$::classic_unix} {
grid [ttk::combobox .config_t.viewf.pdf] -row 1 -column 1 -sticky e
.config_t.viewf.pdf configure -values $::pdf_viewers
.config_t.viewf.pdf configure -textvariable ::settings(pdf_viewer)
- bind .config_t.viewf.pdf <Return> {update_combo %W $::pdf_viewers}
+ bind .config_t.viewf.pdf <Escape> {revert_combo %W}
+ bind .config_t.viewf.pdf <Return> {update_combo %W}
+ bind .config_t.viewf.pdf <FocusOut> {update_combo %W}
grid [ttk::combobox .config_t.viewf.ps] -row 2 -column 1 -sticky e
.config_t.viewf.ps configure -values $::ps_viewers
.config_t.viewf.ps configure -textvariable ::settings(ps_viewer)
- bind .config_t.viewf.ps <Return> {update_combo %W $::ps_viewers}
+ bind .config_t.viewf.ps <Escape> {revert_combo %W}
+ bind .config_t.viewf.ps <Return> {update_combo %W}
+ bind .config_t.viewf.ps <FocusOut> {update_combo %W}
grid columnconfigure .config_t.viewf 1 -weight 1 -pad 2
}