[NTG-context] setmemstream to use pdfe.new instead of epdf.openMemStream

Adam Reviczky reviczky at gmail.com
Sat Jun 23 23:55:21 CEST 2018


Hi,

I am using the "figures.setmemstream" for inline images and it is
broken now with the latest luatex on the changes from
epdf.openMemStream to pdfe.new.

Although it does say "very experimental and likely to change", but can
we update the call from epdf.openMemStream?

Minimal example:
\starttext
\startluacode
figures.setmemstream("inline",mime.unb64("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAAACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII="))
context.externalfigure({"memstream:///inline"})
\stopluacode
\stoptext

or as in grph-mem.lua:
-- \startluacode
--     figures.setmemstream("whatever",io.loaddata("t:/sources/cow.pdf"))
-- \stopluacode
--
-- \externalfigure[memstream:///t:/sources/cow.pdf]
-- \externalfigure[memstream:///whatever]

The error message is:
/usr/share/texmf/tex/context/base/mkiv/grph-mem.lua:32: attempt to
index global 'epdf' (a nil value)
stack traceback:
    /usr/share/texmf/tex/context/base/mkiv/grph-mem.lua:32: in
function 'setmemstream'
    [ctxlua]:2: in main chunk

Which points to the line of "local memstream, identifier =
epdf.openMemStream(stream,#stream,name)"
LuaTeX commit 6822 change was "epdf.new (aka memstreams) (HH)"

ConTeXt  ver: 2018.06.23 12:12 MKIV beta  fmt: 2018.6.23  int: english/english
luatex version 1.09 with functionality level 6823,

Thanks,
Adam


More information about the ntg-context mailing list