summaryrefslogtreecommitdiff
path: root/Master/texmf/scripts/tlgs/gswin32/pdfopt.tlu
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf/scripts/tlgs/gswin32/pdfopt.tlu')
-rwxr-xr-xMaster/texmf/scripts/tlgs/gswin32/pdfopt.tlu70
1 files changed, 70 insertions, 0 deletions
diff --git a/Master/texmf/scripts/tlgs/gswin32/pdfopt.tlu b/Master/texmf/scripts/tlgs/gswin32/pdfopt.tlu
new file mode 100755
index 00000000000..30f89492dc5
--- /dev/null
+++ b/Master/texmf/scripts/tlgs/gswin32/pdfopt.tlu
@@ -0,0 +1,70 @@
+#!/usr/bin/env texlua
+--*-Lua-*-
+-- $Id$
+
+-- Copyright (C) 2008 Reinhard Kotucha.
+-- You may freely use, modify and/or distribute this file.
+
+-- Replacement for pdfopt.bat.
+-- Linearize PDF
+
+function fixwin (args_unix)
+ if os.type == 'windows' then
+ local args_win={} -- new table
+ args_win[0]=args_unix[1]
+ for i=1, #args_unix do
+ args_win[i]='"'..args_unix[i]..'"'
+ end
+ return args_win
+ else
+ return args_unix
+ end
+end
+
+kpse.set_program_name('pdfopt.bat', 'pdfopt')
+
+TEXDIR=kpse.var_value('SELFAUTOPARENT')
+
+if os.type == 'windows' then
+ os.setenv('GS_LIB', TEXDIR..'/tlpkg/tlgs/lib;'..TEXDIR..'/tlpkg/tlgs/fonts')
+ os.setenv('PATH', TEXDIR..'/tlpkg/tlgs/bin;'..os.getenv('PATH'))
+ gs='gswin32c'
+else
+ gs='gs'
+end
+
+command={gs, '-q', '-dNODISPLAY', '-dSAFER', '-dDELAYSAFER'}
+
+files={}
+
+for i=1, #arg do
+ if string.find(arg[i], '^-') then
+ command[#command+1]=arg[i]
+ else
+ files[#files+1]=arg[i]
+ end
+end
+
+command[#command+1]='--'
+command[#command+1]='pdfopt.ps'
+
+if #files ~= 2 then
+ io.stderr:write('Usage: pdfopt [options] input.pdf output.pdf')
+ os.exit(0)
+else
+ for i=1, #files do
+ command[#command+1]=files[i]
+ end
+end
+
+command=fixwin(command)
+
+--[[ prepend an additional hyphen to activate this code
+for i=0, #command do
+ print (command[i])
+end
+os.exit(ret)
+--]]
+
+ret=os.spawn(command)
+os.exit(ret)