From 99a23e4af090cdc2e649d812f6dfdcb7be5b54ed Mon Sep 17 00:00:00 2001 From: nageh Date: Fri, 7 Sep 2012 18:23:54 +0200 Subject: [PATCH] Add support to MathJax for RGB colors PS2: Make the number matcher limited to 3 digits. Fix at base 10. Originally, but had broken merge: Iff04d5d650ae87d957d57420f71975ccdf4a5370 Change-Id: I6885ea90e920734e324b6d1d1f70af69cdeab033 --- modules/MathJax/extensions/TeX/texvc.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/modules/MathJax/extensions/TeX/texvc.js b/modules/MathJax/extensions/TeX/texvc.js index d506867..c39ced5 100644 --- a/modules/MathJax/extensions/TeX/texvc.js +++ b/modules/MathJax/extensions/TeX/texvc.js @@ -7,6 +7,22 @@ MathJax.Hub.Register.StartupHook("TeX Jax Ready",function () { var MML = MathJax.ElementJax.mml; + /* + * Get an RGB color (a triplet of values between 0 and 255) + */ + MathJax.Extension["TeX/color"].get_RGB = function (rgb) { + rgb = rgb.split(/,/); var RGB = "#"; + if (rgb.length !== 3) {this.TEX.Error("RGB colors require 3 decimal numbers")} + for (var i = 0; i < 3; i++) { + if (!rgb[i].match(/^(\d{1,3})$/)) {this.TEX.Error("Invalid decimal number")} + var n = parseInt(rgb[i], 10); + if (n < 0 || n > 255) {this.TEX.Error("RGB values must be between 0 and 255")} + n = n.toString(16); if (n.length < 2) {n = "0"+n} + RGB += n; + } + return RGB; + } + MathJax.Hub.Insert(MathJax.InputJax.TeX.Definitions,{ mathchar0mi: {