summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/intopdf
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-03-14 21:13:06 +0000
committerKarl Berry <karl@freefriends.org>2018-03-14 21:13:06 +0000
commit7ddb36376cada699f0a26f00ace2e15809fca57a (patch)
treeec2164364a3a2ee1c9ca9b8edfad298e23e8f56b /Master/texmf-dist/tex/latex/intopdf
parentbbbf26ea31647d52447620ba586a4ff4ebee90fa (diff)
intopdf (14mar18)
git-svn-id: svn://tug.org/texlive/trunk@46963 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/intopdf')
-rw-r--r--Master/texmf-dist/tex/latex/intopdf/intopdf.sty94
1 files changed, 94 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/intopdf/intopdf.sty b/Master/texmf-dist/tex/latex/intopdf/intopdf.sty
new file mode 100644
index 00000000000..40214d20e89
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/intopdf/intopdf.sty
@@ -0,0 +1,94 @@
+%%
+%% This is file `intopdf.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% intopdf.dtx (with options: `package')
+%%
+%% Copyright (C) 2018 by Marcel Krueger
+%%
+%% This file may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3c of this license or (at your option) any later
+%% version. The latest version of this license is in:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% and version 1.3 or later is part of all distributions of
+%% LaTeX version 2005/12/01 or later.
+\NeedsTeXFormat{LaTeX2e}
+\RequirePackage{expl3}
+\ProvidesExplPackage
+ {intopdf}
+ {2018/03/13}
+ {0.0.1}
+ {Embed non-PDF files into PDF with hyperlink}
+
+\RequirePackage{hyperref}
+\cs_new_eq:NN\__intopdf_escape_name:n\pdfescapename
+\cs_new_eq:NN\__intopdf_escape_string:n\pdfescapestring
+\cs_new:Nn\__intopdf_pdfobj:n{
+ \tex_immediate:D\pdftex_pdfobj:D{<<#1>>}
+}
+\cs_new:Nn\__intopdf_pdfstream_file:nn{
+ \tex_immediate:D\pdftex_pdfobj:D stream attr {#1} file {#2}
+}
+\cs_new:Nn\__intopdf_lastobj_ref:{
+ \c_space_tl
+ \int_use:N\pdftex_pdflastobj:D
+ \c_space_tl
+ 0
+ \c_space_tl
+ R
+}
+\cs_new:Npn\__intopdf_annot:nnw#1#2{
+ \leavevmode
+ \pdftex_pdfstartlink:D attr{#1} user {#2}
+}
+\cs_new:Nn\__intopdf_annot_end:{
+ \pdftex_pdfendlink:D
+}
+\cs_new:Nn\__intopdf_annot:nnn{
+ \__intopdf_annot:nnw{#1}{#2}
+ #3
+ \__intopdf_annot_end:
+}
+\cs_new_protected:Nn\intopdf_attach_link:nnnn{
+ \__intopdf_pdfstream_file:nn{
+ /Subtype /\__intopdf_escape_name:n{#2}
+ }{#1}
+ \__intopdf_pdfobj:n{
+ /Type /Filespec
+ /F (\__intopdf_escape_string:n{#1})
+ /EF << /F \__intopdf_lastobj_ref: >>
+ /Desc (\__intopdf_escape_string:n{#3})
+ }%
+ \__intopdf_annot:nnn{
+ \Hy@setpdfborder
+ \tl_if_empty:NF\@pdfhighlight{
+ /H\@pdfhighlight
+ }
+ \cs_if_free:NF\@urlbordercolor{
+ /C[\@urlbordercolor]
+ }
+ }{
+ /Subtype /Link
+ }{
+ \__intopdf_annot:nnn{}{
+ /Subtype /FileAttachment
+ /FS \__intopdf_lastobj_ref:
+ /F\c_space_tl 416
+ /CA\c_space_tl 0
+ /Contents (\__intopdf_escape_string:n{#3})
+ }{
+ #4
+ }
+ }
+}
+\cs_new_protected:Npn\attachandlink#1[#2]#3#4{
+ \intopdf_attach_link:nnnn{#1}{#2}{#3}{#4}
+}
+\endinput
+%%
+%% End of file `intopdf.sty'.