From 8090f75681f02bfb30e62c77ddeea13a9ff50054 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 6 Jan 2021 21:44:53 +0000 Subject: graphicxpsd (6jan21) git-svn-id: svn://tug.org/texlive/trunk@57341 c570f23f-e606-0410-a88d-b1316a301751 --- .../tex/latex/graphicxpsd/graphicxpsd.sty | 42 ++++++++++++++++------ 1 file changed, 32 insertions(+), 10 deletions(-) (limited to 'Master/texmf-dist/tex/latex/graphicxpsd') diff --git a/Master/texmf-dist/tex/latex/graphicxpsd/graphicxpsd.sty b/Master/texmf-dist/tex/latex/graphicxpsd/graphicxpsd.sty index 3f170d9c2ff..ef6f1517b71 100644 --- a/Master/texmf-dist/tex/latex/graphicxpsd/graphicxpsd.sty +++ b/Master/texmf-dist/tex/latex/graphicxpsd/graphicxpsd.sty @@ -2,20 +2,21 @@ % #!rm -f tigerpsdfmt4* && xelatex -shell-escape test-gin-rule-psd % #!rm -f tigerpsdfmt4* && pdflatex -shell-escape test-gin-rule-psd %#!rm -f tigerpsdfmt4* && lualatex -shell-escape test-gin-rule-psd +% #!lualatex -shell-escape test-gin-rule-psd %% %% This is file 'graphicxpsd.sty'. %% -%% Copyright (c) 2017, 2018 Munehiro Yamamoto -%% +%% Copyright (c) 2017-2021 Munehiro Yamamoto +%% %% * e-mail: munepixyz@gmail.com, munepi@greencherry.jp %% * GitHub: https://github.com/munepi %% * Twitter: @munepixyz -%% +%% %% This package is licensed under the terms of the MIT License. %% \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{graphicxpsd} - [2018/01/30 v1.1 Adobe Photoshop Data format (PSD) support for graphicx package + [2021/01/07 v1.2 Adobe Photoshop Data format (PSD) support for graphicx package with sips (Darwin/macOS)/magick (ImageMagick) command] %% declare package errors @@ -32,8 +33,9 @@ \DeclareOption{luatex}{\@gfxpsd@dvipdfmxfalse\@gfxpsd@pdftextrue} \DeclareOption{pdftex}{\@gfxpsd@dvipdfmxfalse\@gfxpsd@pdftextrue} -%% support two psd-to-pdf commands: -%% sips (Darwin/macOS), magick/convert (ImageMagick) +%% support two psd-to-pdf commands: +%% sips (Darwin/macOS), magick/convert (ImageMagick), +%% graphicsmagick (GraphicsMagick) \newif\if@gfxpsd@imagemagick \@gfxpsd@imagemagickfalse \def\@gfxpsd@psdtopdf{sips}%% as default \DeclareOption{sips}{% @@ -44,6 +46,15 @@ \@gfxpsd@imagemagicktrue\gdef\@gfxpsd@psdtopdf{magick}} \DeclareOption{convert}{% \@gfxpsd@imagemagicktrue\gdef\@gfxpsd@psdtopdf{convert}} +\DeclareOption{graphicsmagick}{% + \@gfxpsd@imagemagicktrue\gdef\@gfxpsd@psdtopdf{gm\GPT@space convert}} + +%% image cache flag +\newif\if@gfxpsd@imagecache \@gfxpsd@imagecachefalse +\DeclareOption{cache=true}{\@gfxpsd@imagecachetrue} +\DeclareOption{cache=True}{\@gfxpsd@imagecachetrue} +\DeclareOption{cache=false}{\@gfxpsd@imagecachefalse} +\DeclareOption{cache=False}{\@gfxpsd@imagecachefalse} \ProcessOptions\relax @@ -79,11 +90,13 @@ %% read .psd file \let\clone@Gread@pdf\Gread@pdf \def\Gread@psdtopdf#1{% - \typeout{converting: \Gin@base\Gin@ext\GPT@space -> \Gin@base4gfxpsd.pdf}% - \if@gfxpsd@imagemagick - \ShellEscape{\@gfxpsd@psdtopdf\GPT@space\Gin@base\Gin@ext\GPT@space\Gin@base4gfxpsd.pdf}% + \if@gfxpsd@imagecache + \IfFileExists{\Gin@base4gfxpsd.pdf}{% + \typeout{including cached image: \Gin@base4gfxpsd.pdf}% + }{\typeout{not found: \Gin@base4gfxpsd.pdf}% + \@gfxpsd@convert@psd@to@pdf}% \else - \ShellEscape{sips -s format pdf \Gin@base\Gin@ext\GPT@space --out \Gin@base4gfxpsd.pdf}% + \@gfxpsd@convert@psd@to@pdf \fi %% renamed inside: foo.psd -> foo4gfxpsd.pdf \let\clone@Gin@base\Gin@base @@ -93,6 +106,15 @@ % \typeout{!!! \Gin@base\Gin@ext}%%=> tigerpsdfmt4gfxpsd.pdf \clone@Gread@pdf{#1}} +\def\@gfxpsd@convert@psd@to@pdf{% + \typeout{converting: \Gin@base\Gin@ext\GPT@space -> \Gin@base4gfxpsd.pdf}% + \if@gfxpsd@imagemagick + \ShellEscape{\@gfxpsd@psdtopdf\GPT@space\Gin@base\Gin@ext\GPT@space\Gin@base4gfxpsd.pdf}% + \else + \ShellEscape{sips -s format pdf \Gin@base\Gin@ext\GPT@space --out \Gin@base4gfxpsd.pdf}% + \fi +} + \endinput %% %% End of file `graphicxpsd.sty'. -- cgit v1.2.3