summaryrefslogtreecommitdiff
path: root/tex/context/base/grph-raw.lua
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/grph-raw.lua')
-rw-r--r--tex/context/base/grph-raw.lua39
1 files changed, 39 insertions, 0 deletions
diff --git a/tex/context/base/grph-raw.lua b/tex/context/base/grph-raw.lua
new file mode 100644
index 000000000..361f6944d
--- /dev/null
+++ b/tex/context/base/grph-raw.lua
@@ -0,0 +1,39 @@
+if not modules then modules = { } end modules ['grph-raw'] = {
+ version = 1.001,
+ comment = "companion to grph-raw.mkiv",
+ author = "Hans Hagen, PRAGMA-ADE, Hasselt NL",
+ copyright = "PRAGMA ADE / ConTeXt Development Team",
+ license = "see context related readme files"
+}
+
+-- This module is for Mojca, who wanted something like this for
+-- her gnuplot project. It's somewhat premliminary code but it
+-- works ok for that purpose.
+
+local report_bitmap = logs.reporter("graphics","bitmaps")
+
+local texsp = tex.sp
+
+function figures.bitmapimage(t)
+ local data = t.data
+ local xresolution = tonumber(t.xresolution)
+ local yresolution = tonumber(t.yresolution)
+ if data and xresolution and yresolution then
+ local width, height = t.width or "", t.height or ""
+ local n = backends.nodeinjections.injectbitmap {
+ xresolution = xresolution,
+ yresolution = yresolution,
+ width = width ~= "" and texsp(width) or nil,
+ height = height ~= "" and texsp(height) or nil,
+ data = data,
+ colorspace = t.colorspace,
+ }
+ if n then
+ context.hbox(n)
+ else
+ report_bitmap("format no supported by backend")
+ end
+ else
+ report_bitmap("invalid specification")
+ end
+end