From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/58191 Path: news.gmane.org!not-for-mail From: Michail Vidiassov Newsgroups: gmane.comp.tex.context Subject: Re: 3D annotations Date: Sat, 17 Apr 2010 11:00:58 +0400 (MSD) Message-ID: Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="4605117501603315712-1334423588-1271487659=:30012" X-Trace: dough.gmane.org 1271488088 22638 80.91.229.12 (17 Apr 2010 07:08:08 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 17 Apr 2010 07:08:08 +0000 (UTC) To: mailing list for ConTeXt users Original-X-From: ntg-context-bounces@ntg.nl Sat Apr 17 09:08:06 2010 connect(): No such file or directory Return-path: Envelope-to: gctc-ntg-context-518@m.gmane.org Original-Received: from balder.ntg.nl ([195.12.62.10]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1O328M-0006X0-0V for gctc-ntg-context-518@m.gmane.org; Sat, 17 Apr 2010 09:08:06 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 52D6AC9CD9; Sat, 17 Apr 2010 09:08:05 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at balder.ntg.nl Original-Received: from balder.ntg.nl ([127.0.0.1]) by localhost (balder.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id qA3QZcpnpnnR; Sat, 17 Apr 2010 09:07:53 +0200 (CEST) Original-Received: from balder.ntg.nl (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 80DD6C9CB9; Sat, 17 Apr 2010 09:07:43 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id A5E5CC9CCA for ; Sat, 17 Apr 2010 09:07:41 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at balder.ntg.nl Original-Received: from balder.ntg.nl ([127.0.0.1]) by localhost (balder.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id dcHjj2PkhTeG for ; Sat, 17 Apr 2010 09:07:29 +0200 (CEST) Original-Received: from serv.iaas.msu.ru (serv.iaas.msu.ru [212.192.224.252]) by balder.ntg.nl (Postfix) with ESMTP id 6D3B6C9CB9 for ; Sat, 17 Apr 2010 09:06:37 +0200 (CEST) Original-Received: from [192.168.0.102] ([81.200.24.4]) (authenticated bits=0) by serv.iaas.msu.ru (8.14.3/8.14.3) with ESMTP id o3H6xAIm002419 for ; Sat, 17 Apr 2010 10:59:10 +0400 (MSD) (envelope-from master@iaas.msu.ru) X-X-Sender: master@macbook.local User-Agent: Alpine 2.00 (OSX 1167 2008-08-23) X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.12 Precedence: list List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: ntg-context-bounces@ntg.nl Errors-To: ntg-context-bounces@ntg.nl Xref: news.gmane.org gmane.comp.tex.context:58191 Archived-At: This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --4605117501603315712-1334423588-1271487659=:30012 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Dear Hans, I wrote to you > thank you for your latest effort to put u3d support in a working state, but more thanks for more effort, but > May be a more robust way is to read first 3 bytes of the model file, since > "U3D" or "PRC" signature is always there - that can be done instead of > relying on file name extension or only in case it it not "u3d" or "prc". you have implemented reading the file signature, but it is now almost useless, since if a file has extension other but U3D or PRC 3D annotation code will not be called by file inclusion mechanism and "io.readdata" routine is called local subtype, subdata = "U3D", io.readdata(foundname) or "" - what's that? One more point - preview bitmap images in 3D annotations are now disabled since necessary functionality of measuring XForms is missing - please, consider the following workaround. --- lpdf-u3d.lua.org 2010-03-26 18:24:44.000000000 +0300 +++ lpdf-u3d.lua 2010-04-14 14:24:28.000000000 +0400 @@ -17,6 +17,7 @@ local cos, sin, sqrt, pi, atan2, abs = math.cos, math.sin, math.sqrt, math.pi, math.atan2, math.abs local pdfconstant = lpdf.constant +local pdfnumber = lpdf.number local pdfboolean = lpdf.boolean local pdfunicode = lpdf.unicode local pdfdictionary = lpdf.dictionary @@ -62,8 +63,7 @@ local function make3dview(view) - local name = viewname - local name = pdfunicode((view.name ~= "" and name) or "unknown view") + local name = pdfunicode((view.name ~= "" and view.name) or "unknown view") local viewdict = pdfdictionary { Type = pdfconstant("3DView"), @@ -311,9 +311,6 @@ for i=1,#nodes do local node = checkedkey(nodes,i,"table") if node then - local position = checkedkey(node,"position","table") - position = position and #position == 12 and pdfarray(position) - if position then nodelist[#nodelist+1] = pdfdictionary { Type = pdfconstant("3DNode"), N = node.name or ("node_" .. i), -- pdfunicode ? @@ -325,13 +322,18 @@ }, M = position, } + local position = checkedkey(node,"position","table") + position = position and #position == 12 and pdfarray(position) + if position then + nodelist[#nodelist].M = position end end end - viewdict.NR = true viewdict.NA = nodelist end + viewdict.NR = true + return viewdict end @@ -349,19 +351,19 @@ local activationdict = pdfdictionary { TB = pdfboolean(param.toolbar,true), - NP = pdfboolean(param.tree,true), + NP = pdfboolean(param.tree,false), } local stream = streams[label] if not stream then - local subtype, subdata = "U3D", io.readdata(foundname) or "" + local subtype, subdata = "U3D", file.readdata(foundname) or "" if find(subdata,"^PRC") then - subtype == "PRC" + subtype = "PRC" elseif find(subdata,"^U3D") then - subtype == "U3D" + subtype = "U3D" elseif file.extname(foundname) == "prc" then - subtype == "PRC" + subtype = "PRC" end local attr = pdfdictionary { @@ -423,12 +425,35 @@ local ref = stored_pr[tag] if not ref then -- weird, has to be a /Form and not an /Image so we need a wrap = true key - -- local figure = img.immediatewrite { filename = preview, width = width, height = height } - local figure = img.immediatewrite { stream = ".5 .75 .75 rg 0 0 20 10 re f", bbox = {0,0,20,10 } } + local figure = img.immediatewrite { filename = preview, width = width, height = height } + -- local figure = img.immediatewrite { stream = ".5 .75 .75 rg 0 0 20 10 re f", bbox = {0,0,20,10 } } ref = figure.objnum stored_pr[tag] = ref end - annot.AP = ref and pdfdictionary { N = pdfreference(ref) } + if ref then + local pw = pdfdictionary { + Type = pdfconstant("XObject"), + Subtype = pdfconstant("Form"), + FormType = pdfnumber(1), + BBox = pdfarray { pdfnumber(0), pdfnumber(0), pdfnumber(factor*width), pdfnumber(factor*height) }, + Matrix = pdfarray { pdfnumber(1), pdfnumber(0), pdfnumber(0), pdfnumber(1), pdfnumber(0), pdfnumber(0) }, + Resources = pdfdictionary { + XObject = pdfdictionary { + IM = pdfreference(ref) + } + }, + ExtGState = pdfdictionary { + GS = pdfdictionary { + Type = pdfconstant("ExtGState"), + CA = pdfnumber(1), + ca = pdfnumber(1) + } + }, + ProcSet = pdfarray { pdfconstant("PDF"), pdfconstant("ImageC") }, + } + local pwd = pdf.immediateobj("stream",format("q /GS gs %s 0 0 %s 0 0 cm /IM Do Q",factor*width,factor*height),pw()) + annot.AP = pdfdictionary { N = pdfreference(pwd) } + end return annot, figure, ref else activationdict.A = pdfconstant("PV") Also I try to remind you AGAIN and AGAIN about pdfboolean problem in lpdf-ini.lua (old code is not OK if b is "false" and default is "true") local function pdfboolean(b,default) - if ((type(b) == "boolean") and b) or default then - return p_true + if type(b) ~= "boolean" then + if default then + return p_true + else + return p_false + end else - return p_false + if b then + return p_true + else + return p_false + end end end Sincerely, Michail PS. And a great palliative way to deal with 3D annotations is via attaching a 3D PDF file made with LaTeX (by Asymptote, for example). But while your method of answering my messages in lua works OK for new code (updating minimals and making a diff with old code is not harder than checking e-mail inbox - "Your morning patch, sir!" ;), I can not deduce from existing sea of ConTeXt code the status of file attachments support. --4605117501603315712-1334423588-1271487659=:30012 Content-Type: APPLICATION/octet-stream; name=testprc.tgz Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=testprc.tgz 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 Ees72GWETz30/HMn3T3nH86NpBSWmA041krFzHqcbs7H9rS57JtHjHzuzi8+ GDlQKbSc+qLr1eMC2S3n385NyWdrVD0/8Zl3m3/quVmfYe/jU1K3PLDte2zA oielW66kfkp/5Vw1YZNVjqDZmpk2rA33Txt8rTgv6pz9ZfnQjB5FZ+I/WDok 3Z+icm5drzPt2oyTXXTm48RJCobXQ+V22B5b3V3341yjDp/Mcwfq7hK+GOk9 al0J83OS63ptUe7No+3arq68t6rMo5DjIOquoep86/3k4DleaSfkrS0WWY2y kyvOm6y2wkjTfKZu2cuTR5USDS7tHfn2Tv/S/KPar9atmtPdgiXqFRE0UlZ9 qEuvzfx3DhPP+jrnLY7gT3W84D2yctD230wKNYe/H1x4ecrqh+WvdxTaKuSc b03Z2XPlTBfXcw9lTl/fEZuYYqHhqPR5q/ntOLcC9+KrwivjjPdGOPdcPNDe dKloPM1592GRaVTI9gF36YxAi+1uq2YtWLRrf3/F1m9nH7hUERd0LFM/4oF5 ZulAlb3VmxMnrfYy2Hl26dHN5suWlZS9Hp17cMjOK6Wm8vftovPM+89x1Owf 384rkv829lq+YdsNJpZj2q9fu1vZaZJBp+Ndhi6UD8mbqlh4xqZj6wMFHv72 rZ499LE7VKy0tvO49N1Z8Z2471qO2pNDD40csVz51EXKOjndjf116Wc/p7e9 MWzm/msrp6YKV2wqf2G805173Fave/+g1LK+ccqT2Tt7bfVJXbCFwVZP2JPZ adAmE2r6PUpWiJ3cyE+28b30j+T3ulpQvPLzwr3RrgKGcURa66MlIp92rVIp YRpdTw29Nq97BuV8yMHcz/17n2xxzX1savAks/5x5w9Mvp2+VSjM2bNYe8kJ xuIZS05e6b1itUVno7nvlzoqdhq6Z+vly/zTbUNvdV3YIXZIrFPxtbIvm9ma TnKRVyo2rD+mppgmkDnj7+m3YMm2Zxs3pOrt/Dj8jWtR54G3Bt4Y31dhr1fm K3OtLxNc52W0ObHYpmrbmKiNkfPS/eYdM+Izuiq6mp2ZPGrVWcUTb9O+pmaG nH3rmPbKzUT5mZH/3c7KUXGyB5esqxg6LMU/X1aJvkR7cXu1SZ6f99q+/+Kx I8/ikfyxzDH3P+/3vj9c9fnnXSNbG+j23dmxS4jm2gPdTnBVD9gKVpyYHW7f +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 DnOflG9TfXrPZvVx8VP7pm21Nojh+U2bomV/ffyx8Ldm7CODQ1998ghS32ib k2h+aGkGw5SyXL60LD8//aFMyM51lgs/mJRGf73N2KLr+WIHLyPXISQudNvo 3KUvTDe/f2pUpeFbKIgf/mDs862f8j4d1R/26tKFWUVJL16nHH77qLysZK9Z +IphZ7ISq8ccK6le2+/kteJpssWrxiR7vt3sTp3+xm6BVaTN4VlJlnlzhl0+ 0d7Bh99719K0sbMPTY87LaP//HNy4h7jnZUzA1XXHL98XXPd6di5FV0DPt1s 4RoYY+u9btoy+uUP11gmT6bSziyPa/+4+uI71TXNPyRf3tzX6cTiZUme6/q7 3k/tINi2bONXldMj8oLPf3r0INm5g8PFPl1E+7wZu1aUpw7NUF/tGP2oudOB 5LHxx0Z1XfNxypzXx9X8S+6VdaJom7wPbhmXMStW8Zh/0LVE0VyVmKVTnsjE LD0kWyVgx8zv3Cl3be+7rx70KnsvXNxtj+zw3kO+dHB4rPxlQsWK4o4XJ2UN 2WV2WM4ov+WGiRFVludfJF599+LG86JPCR8+5z6lnlpvnrbzyn3vk/tHB2+9 4z5TKfxhe/dTbz5MWeSv8PlNlnmfisrVwgO8qBBGzFgT67GpI7vsLkjtRs+c rFpwqK1tqeKFvFdr5Dfa728Wd25y1KXlcwp5J31bNDfo5Z0SYfxQddKniwVf IygrL4RlX8/tzbjjvu6qskm/82o3DuVmPLs+YE9744uGL7u32s5eoEBr/2bR nXaiCdXy3stLPubPS7rTvl+zd+ceh990bt0h8SlFISDUe6H+kHXqei+dl815 Iltc5ngqmNMs5KbbCMZvFeX9Uzl2eW5B40VPnR7NLst70v/C5uQtfGqrSZGJ Sc89Yzm6XQoD717Z+lY/srzIuU/AsMUfJ3W9fOBT6rDDnjLWwmkhJhcOvD2Q 47M+iFNyoCQhdVavc8YmkzbHKrU4LdflS+K9FTteJyybnlrePrdvV2c1pcSw G4mGc6wO8xnegon9X4x0zz7JzXmev0R0UI0ycsyq/U9nbTYduPfj/WljrtE1 p3tMtLgza2bf4LfcI9NbJZYOeb7ddfTbd2krNlY9OH941dqjbc4q7B33JqPC Z+e6FZ0XPyKeQT8pIHbI17YXzPnbqw72dTe13BM/rTvf3qVk7MtU5UHlr5bE bL6tecZtEu9KRYDynZyTkwcPuB7F8b/4MEvQddeGeS89U30POI7bJHqSOWr/ 85KWKaGLH0fuG8GetaHfBNNQnV3FqfKVnjHOtDNaB9TuTU1/8nzjqz63KPKT L4+4deGwWoXDkokTDwf02nngRhZXW7c6uuBd3IkDk8d6dLv2sbRk5RSNWLbL ZJNbOo8WnX0RuGJJVsmjnPPZ5tOfJA/MzuH0/HDK9tMsQ1WZnPm7UyZfevdy EHeHa1WfYzHsnbcXDDrkwBttFDahWb4sxZT/jPVR1nm440rDiHFHNR6Knn15 Nz1ZNNbQYfzN1QO9tbIOBK/jNs9yiFFkDfvN8X5cn0PnW8dPjH+Y3Eq1Tyjf cKVKYfGOxaFbHA696nHpmU03X+coY033lZWjdpw6qGI4/lFCxn6fHtdYtx1d NfbabKderXZeuO/0wdDT7848FXDH7xwnu6n99HuuC1myRxc4ncxSi3todcah bzuNTPUxRjfk3h/VeHO6KjdozFAdm/nL+OvnKW/OedGmWdf8Qe1nL3p5ZP+q QwPatD+hE3RrelDgo6rWOgMG7ysp9bg95nLntDbZM9o4Pxr78NDQoaqMXiu0 Oz8pHjc6/RBts/KW1p6b3FuPSrwTPp99dZOvfcqF8T3OVSwtdV4TMsRCo3zU xEVTz8X2ZP3mnjd9/AWrrc7CIpunCU8rPpyPnZwpf9br6qnFx+zddrrudp9w IyrkxTHbQUO/hLszNq09UeiYcHxHoMnJyaYnT161NcnJHZPCa6PkvnVUdPGe CTMv93pg7R/Y+9ab1FGrhB6XqpKZZz2GXPCYEWP1xWSA6o4e6zXLJimlXTfu Jrid47DL/mk7lxfmlLVGxTOXd7n3YdGEG++fq2zN8blo+K77xBTHpeGXSnRN zrmryK4TLL8+7T3bOWhKW4cC9oap9jo3NhcVBLQbHnS7bOFiw8D9hx7E0Ye0 saPuvXD4mJ38a8OeCbfGre2RHDfJZdUEp0mPp1w/2WaW8YGcnBndz5m+SR+f YDP22tcR03XjEt0375l8KsF1cGaXcRO7xp6foR+gsNErucR0Z/9dY/0/DnUx ZR0cLXwuE3Hs7uy2xUMNOmf/Nvl5WN9jQ/t43Nu74+4Ci6kVjgZe064OpBcG Bu+5OdtkyNvhUZ3Uyy3zTp9xUnLU7avNPNVnz5mel2Ur6TfZS0Jn6Ou1M3xy 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 r+jhUnoiPcevJ6VgX791j8vHWnZ8s9ojuHqn2b5gPZvZ/imcmXmfh+S929Cm tMvGqXlPWnUdtWZxUfrerXY7zYbS2hldlFkpEFCy7o2wuN9uq1oz24Q315O7 du03okcy9fJYwx6nmz2O2xoybn5OhsbgRds1oi+d7lBcPOTJhznJQU8+F57a 1aXbuTOrSzukd5KV0ep+gjmq+660zvmr95+86rDr+Pmd1cXc65uHLx7utT+m KmHznc8B77cvdXO/TNms8cArn60TOG+m08XSl59uVUdQzSo73l4YvWTew5sZ nvlnlTu0TV0XYHa054YusYJ15+Mjsr4Ot+G8WNll5Zc9q9u2WX6iRLg02OZ8 xKyMyo77g1zyeAfjxoYOUZ805ShDJTiDK1t6dr1ra94IfbmPvYI2vkneFvCS K5DNuWA2a9WFWeks+tOhlaEl60VT5gxYOeKh0tQXucZh5lPZzjdmBvkPLzy7 pXj40DXrReV7bJTfH1go98zr/LaOrDOGnpNDblSc72tf7eu5v0SY+i5xREx5 pz2ls+JtZxSEDVp+MvT9zuWML/YKSx9rve+k2ZluNGhDrlqM6KB/h5nD9vJG smJnJVzI2xOhXnTNrjB73Jf7CR0n3+jm5VIY5vlOsdRvt7nH4Eme6p9Ki/Ku XH+ts+GCU+kbF9+qnV8+HViqSDFinbllF5bSm/c4eOR+hXYTr185OWFG9pYo /RnPRnjNMVp6SU/J2yjs9FuTTEbXi4/eOTYvc1mUsbs6WqPtdSF9j2ZAuX7m UNOiYRveabWyuTHRLPS89qFtob5GJxwnJO4KmWHSpl3JE7c7UbIPrScumKog unPnWH/n5m9W9rVwmVldqSJ/YGXrnV8tTln1zY9ZtjT24KBFzHPTbp/sLlC+ sqSlT+fWS708/JkUytiLCmdjlsmMpqyrHuL933wRoKyFlnb3VLZeIet44bAr 5uyVB926LPfz2+RTsX273OjNgcJsKmWQfc8nDXzhgv3dFy48hvkE8XyF1N+/ X+EQyvHnUenugVxhAE2PyaDS7XmB/gFC6W2rQGGEM09gHRYaHsbn8YW0AVS6 dVhImMA1nONLbG3Diwr05bkMsiL26MSJCKYx9cTf36j7xoY+Q4/NYHzzjY1q AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD4Zxw4 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 H9Os7nN5aLK+mV1ivgm/svh6XzD7Js2IRbgQN2XfFwDmm/Arq/8Fs2/SDF88 a8qI4GpwGIb5JvyavqnM+mkmXfRTWgU/V93nmN9/x0wacfgXz+FX8/ub/7Us iH9qP47HvxTQZNX/bsb3afbNlzd+ThMB/j/ff6YJANAYIc0AgByQZgBADkgz ACAHpBkAkAPSDADIAWkGAOSANAMAckCaAQA5IM0AgByQZgBADkgzACAHpBkA kAPSDADIAWkGAOSANAMAckCaAQA5IM0AgByQZgBADkgzACAHpBkAkAPSDADI AWkGAOSANAMAckCaAQA5IM0AgByQZgBADkgzACAHpBkAkAPSDADIAWkGAOSA NAMAckCaAQA5IM0AgByQZgBADkgzACAHpBkAkAPSDADIAWkGAOSANAMAckCa AQA5IM0AgByQZgBADkgzACAHpBkAkAPSDADIAWkGAOSANAMAckCaAQA5IM0A gByQZgBADkgzACAHpBkAkAPSDADIAWkGAOSANAMAckCaAQA5IM0AgByQZgBA DkgzACAHpBkAkAPSDADIAWkGAOSANAMAckCaAQA5IM0AgByQZgBADkgzACAH pBkAkAPSDADIAWkGAOSANAMAckCaAQA5IM0AgByQZgBADkgzACAHpBkAkAPS DADIAWkGAOSANAMAckCaAQA5IM0AgByQZgBADkgzACAHpBkAkAPSDADIAWkG AOSANAMAckCaAQA5IM0AgByQZgBADkgzACAHpBkAkAPSDADIAWkGAOSANAMA ckCaAQA5IM0AgByQZgBADkgzACAHpBkAkAPSDADIAWkGAOSANAMAckCaAQA5 IM0AgByQZgBADkgzACAHpBkAkAPSDADIAWkGAOSANAMAckCaAQA5IM0AgByQ ZgBADkgzACAHpBkAkAPSDADIAWkGAOSANAMAckCaAQA5IM0AgByQZgBADkgz ACAHpBkAkAPSDADIAWkGAOSANAMAckCaAQA5IM0AgByQZgBADkgzACAHpBkA kAPSDADIAWkGAOSANAMAckCaAQA5IM0AgByQZgBADkgzACAHpBkAkAPSDADI AWkGAOSANAMAckCaAQA5IM0AgByQZgBADkgzACAHpBkAkAPSDADIAWkGAOSA NAMAckCaAQA5IM0AgByQZgBADkgzACAHpBkAkAPSDADIAWkGAOSANAMAckCa AQA5IM0AgByQZgBADkgzACAHpBkAkAPSDADIAWkGAOSANAMAckCaAQA5IM0A gByQZgBADkgzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAXxOVx+dGCAU8Tqj4VphPEJWpR2PQ iBs0U1Mq3S02nEejewzzCeL5Cql010gfoeQRh1COP49Kdw/kCgNoekwGlW7P C/QPEEpvWwUKI5x5Auuw0PAwPo8vpA2g0q3DQsIEruEcX2JrG15UoC9vkIAT S6U78vj+xD7YbAMWg0EjUM3NqTUt+tkHBwAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+iAIAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 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 p+dF02fQPPXY+l40owE0T/YAAy/icOqLbzFpekYML6/aJGDVfzvg94pzsBE3 TNxfDOu6CGYyDZnfRbAMpXlzioyMTOfRjiNtRtr3c3RyCQvl8JksHReef2QI RyBeaFvRtaJbkqJ6hTqlQkOmgtasortshWbzSmtF2Z2KzauMK3O7ygk+V8p1 o1BkMtuI/97c7qOiJnGjuY1iT/H9dYq9KC2aUWQonSnqlN6UfpTPMq1k2st0 +dGzSia8DlzifA0UxrKITNGzDguPFYhPHvE8ly2d7dKsdGmDictRWHREcCCN w+fSBuvSnHRpQ8OiiUcDaVqS4W0AJ8SPFuZHIwYYtMgIYvBK8xeERYZHaOvS JGNiYnQSLB4YC4iJKCeCx6VF8rk8AU0YwKMNGuHqRpP0sWOgL49PpI2ODo0W wePRagYGwkh/yTTWL0w8gQ2RrhRBF2+nYzdsqJuOo4O17VBXW10h0enEbJXG Ja6jgSERut+94roHhorntCHid3/oFBbFhxJICZIlDhxBniIvPoTNKQmUpzJp MvebzaqsVtKasjJ6W0XXlaLAAmXRwRtJp5NutFdSmVyR0SFbYdC09H0aFR8U KjUS5PgKF+ZPH61ROV4hO8o7b6haZYs+2pXtK1VeaIua3di5f8USDTsFkUrz 2KTESZHqKnkBET78UWrjKykLRSOvZBSsytXYuLJg4361U3lj4xZqZExImh3b RamSO2WVyGtF0gqRe7Ryzg3RtFMqJyv6iVqpps1MmTFt9syZs9UNx9sLOWqc 3htElhorRDkKKvtWJSeteDvieWXrSnl2z8q2lZ3e9RXJilrtElGyNJxEnVQr p8qLmPMfLd+g9jGtsnvgXA2lyoWLokSs5aLM5TK5u0Sxu2RF5SIV1UNBm6Yu UPffGJ7mkNEiNM1qyYkuG7N2PxbJpOmGJKtPm5ueNE9tUVLqco0yheVJqVOm xUROna6+NiQkLVitsrW/g1tCUsDWAI1NYZun7556OGFx4troFssnLo4M6+It 8GQ7eG59E6k+a/mc5KQuKbNnJSWqJSTNjNWo7KoQmzRzYercuVnL1FPTk5Iz l7YYs/VQ0jK18gPHiomWZk5ZVdElW+QYrfz+bOQqUddVKuWiYlFb1aORbgrW fA53UNKzZeqiXFH37MruIkcFlYBI+Tk6/v0YiS2iFVSuPqjcKF8pe0148HTu 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 +Dv8Hf7/Gv4X/OdokgBwDQA= --4605117501603315712-1334423588-1271487659=:30012 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=lpdf-u3d.lua.diff Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=lpdf-u3d.lua.diff LS0tIGxwZGYtdTNkLmx1YS5vcmcJMjAxMC0wMy0yNiAxODoyNDo0NC4wMDAw MDAwMDAgKzAzMDANCisrKyBscGRmLXUzZC5sdWEJMjAxMC0wNC0xNCAxNDoy NDoyOC4wMDAwMDAwMDAgKzA0MDANCkBAIC0xNyw2ICsxNyw3IEBADQogbG9j YWwgY29zLCBzaW4sIHNxcnQsIHBpLCBhdGFuMiwgYWJzID0gbWF0aC5jb3Ms IG1hdGguc2luLCBtYXRoLnNxcnQsIG1hdGgucGksIG1hdGguYXRhbjIsIG1h dGguYWJzDQogDQogbG9jYWwgcGRmY29uc3RhbnQgICA9IGxwZGYuY29uc3Rh bnQNCitsb2NhbCBwZGZudW1iZXIgICAgID0gbHBkZi5udW1iZXINCiBsb2Nh bCBwZGZib29sZWFuICAgID0gbHBkZi5ib29sZWFuDQogbG9jYWwgcGRmdW5p Y29kZSAgICA9IGxwZGYudW5pY29kZQ0KIGxvY2FsIHBkZmRpY3Rpb25hcnkg PSBscGRmLmRpY3Rpb25hcnkNCkBAIC02Miw4ICs2Myw3IEBADQogDQogbG9j YWwgZnVuY3Rpb24gbWFrZTNkdmlldyh2aWV3KQ0KIA0KLSAgICBsb2NhbCBu YW1lID0gdmlld25hbWUNCi0gICAgbG9jYWwgbmFtZSA9IHBkZnVuaWNvZGUo KHZpZXcubmFtZSB+PSAiIiBhbmQgbmFtZSkgb3IgInVua25vd24gdmlldyIp DQorICAgIGxvY2FsIG5hbWUgPSBwZGZ1bmljb2RlKCh2aWV3Lm5hbWUgfj0g IiIgYW5kIHZpZXcubmFtZSkgb3IgInVua25vd24gdmlldyIpDQogDQogICAg IGxvY2FsIHZpZXdkaWN0ID0gcGRmZGljdGlvbmFyeSB7DQogICAgICAgIFR5 cGUgPSBwZGZjb25zdGFudCgiM0RWaWV3IiksDQpAQCAtMzExLDkgKzMxMSw2 IEBADQogICAgICAgICBmb3IgaT0xLCNub2RlcyBkbw0KICAgICAgICAgICAg IGxvY2FsIG5vZGUgPSBjaGVja2Vka2V5KG5vZGVzLGksInRhYmxlIikNCiAg ICAgICAgICAgICBpZiBub2RlIHRoZW4NCi0gICAgICAgICAgICAgICAgbG9j YWwgcG9zaXRpb24gPSBjaGVja2Vka2V5KG5vZGUsInBvc2l0aW9uIiwidGFi bGUiKQ0KLSAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IHBvc2l0aW9uIGFu ZCAjcG9zaXRpb24gPT0gMTIgYW5kIHBkZmFycmF5KHBvc2l0aW9uKQ0KLSAg ICAgICAgICAgICAgICBpZiBwb3NpdGlvbiB0aGVuDQogICAgICAgICAgICAg ICAgICAgICBub2RlbGlzdFsjbm9kZWxpc3QrMV0gPSBwZGZkaWN0aW9uYXJ5 IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICBUeXBlID0gcGRmY29uc3Rh bnQoIjNETm9kZSIpLA0KICAgICAgICAgICAgICAgICAgICAgICAgIE4gICAg PSBub2RlLm5hbWUgb3IgKCJub2RlXyIgLi4gaSksIC0tIHBkZnVuaWNvZGUg Pw0KQEAgLTMyNSwxMyArMzIyLDE4IEBADQogICAgICAgICAgICAgICAgICAg ICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICBNICAgID0gcG9z aXRpb24sDQogICAgICAgICAgICAgICAgICAgICB9DQorICAgICAgICAgICAg ICAgIGxvY2FsIHBvc2l0aW9uID0gY2hlY2tlZGtleShub2RlLCJwb3NpdGlv biIsInRhYmxlIikNCisgICAgICAgICAgICAgICAgcG9zaXRpb24gPSBwb3Np dGlvbiBhbmQgI3Bvc2l0aW9uID09IDEyIGFuZCBwZGZhcnJheShwb3NpdGlv bikNCisgICAgICAgICAgICAgICAgaWYgcG9zaXRpb24gdGhlbg0KKyAgICAg ICAgICAgICAgICAgICAgbm9kZWxpc3RbI25vZGVsaXN0XS5NID0gcG9zaXRp b24NCiAgICAgICAgICAgICAgICAgZW5kDQogICAgICAgICAgICAgZW5kDQog ICAgICAgZW5kDQotICAgICAgdmlld2RpY3QuTlIgPSB0cnVlDQogICAgICAg dmlld2RpY3QuTkEgPSBub2RlbGlzdA0KICAgIGVuZA0KIA0KKyAgICB2aWV3 ZGljdC5OUiA9IHRydWUNCisNCiAgICByZXR1cm4gdmlld2RpY3QNCiANCiBl bmQNCkBAIC0zNDksMTkgKzM1MSwxOSBAQA0KIA0KICAgICBsb2NhbCBhY3Rp dmF0aW9uZGljdCA9IHBkZmRpY3Rpb25hcnkgew0KICAgICAgICBUQiA9IHBk ZmJvb2xlYW4ocGFyYW0udG9vbGJhcix0cnVlKSwNCi0gICAgICAgTlAgPSBw ZGZib29sZWFuKHBhcmFtLnRyZWUsdHJ1ZSksDQorICAgICAgIE5QID0gcGRm Ym9vbGVhbihwYXJhbS50cmVlLGZhbHNlKSwNCiAgICAgfQ0KIA0KICAgICBs b2NhbCBzdHJlYW0gPSBzdHJlYW1zW2xhYmVsXQ0KICAgICBpZiBub3Qgc3Ry ZWFtIHRoZW4NCiANCi0gICAgICAgIGxvY2FsIHN1YnR5cGUsIHN1YmRhdGEg PSAiVTNEIiwgaW8ucmVhZGRhdGEoZm91bmRuYW1lKSBvciAiIg0KKyAgICAg ICAgbG9jYWwgc3VidHlwZSwgc3ViZGF0YSA9ICJVM0QiLCBmaWxlLnJlYWRk YXRhKGZvdW5kbmFtZSkgb3IgIiINCiAgICAgICAgIGlmIGZpbmQoc3ViZGF0 YSwiXlBSQyIpIHRoZW4NCi0gICAgICAgICAgICBzdWJ0eXBlID09ICJQUkMi DQorICAgICAgICAgICAgc3VidHlwZSA9ICJQUkMiDQogICAgICAgICBlbHNl aWYgZmluZChzdWJkYXRhLCJeVTNEIikgdGhlbg0KLSAgICAgICAgICAgIHN1 YnR5cGUgPT0gIlUzRCINCisgICAgICAgICAgICBzdWJ0eXBlID0gIlUzRCIN CiAgICAgICAgIGVsc2VpZiBmaWxlLmV4dG5hbWUoZm91bmRuYW1lKSA9PSAi cHJjIiB0aGVuDQotICAgICAgICAgICAgc3VidHlwZSA9PSAiUFJDIg0KKyAg ICAgICAgICAgIHN1YnR5cGUgPSAiUFJDIg0KICAgICAgICAgZW5kDQogDQog ICAgICAgICBsb2NhbCBhdHRyID0gcGRmZGljdGlvbmFyeSB7DQpAQCAtNDIz LDEyICs0MjUsMzUgQEANCiAgICAgICAgIGxvY2FsIHJlZiA9IHN0b3JlZF9w clt0YWddDQogICAgICAgICBpZiBub3QgcmVmIHRoZW4NCiAgICAgICAgIC0t ICB3ZWlyZCwgaGFzIHRvIGJlIGEgL0Zvcm0gYW5kIG5vdCBhbiAvSW1hZ2Ug c28gd2UgbmVlZCBhIHdyYXAgPSB0cnVlIGtleQ0KLSAgICAgICAgLS0gIGxv Y2FsIGZpZ3VyZSA9IGltZy5pbW1lZGlhdGV3cml0ZSB7IGZpbGVuYW1lID0g cHJldmlldywgd2lkdGggPSB3aWR0aCwgaGVpZ2h0ID0gaGVpZ2h0IH0NCi0g ICAgICAgICAgICBsb2NhbCBmaWd1cmUgPSBpbWcuaW1tZWRpYXRld3JpdGUg eyBzdHJlYW0gPSAiLjUgLjc1IC43NSByZyAwIDAgMjAgMTAgcmUgZiIsIGJi b3ggPSB7MCwwLDIwLDEwIH0gfQ0KKyAgICAgICAgICAgIGxvY2FsIGZpZ3Vy ZSA9IGltZy5pbW1lZGlhdGV3cml0ZSB7IGZpbGVuYW1lID0gcHJldmlldywg d2lkdGggPSB3aWR0aCwgaGVpZ2h0ID0gaGVpZ2h0IH0NCisgICAgICAgIC0t ICBsb2NhbCBmaWd1cmUgPSBpbWcuaW1tZWRpYXRld3JpdGUgeyBzdHJlYW0g PSAiLjUgLjc1IC43NSByZyAwIDAgMjAgMTAgcmUgZiIsIGJib3ggPSB7MCww LDIwLDEwIH0gfQ0KICAgICAgICAgICAgIHJlZiA9IGZpZ3VyZS5vYmpudW0N CiAgICAgICAgICAgICBzdG9yZWRfcHJbdGFnXSA9IHJlZg0KICAgICAgICAg ZW5kDQotICAgICAgICBhbm5vdC5BUCA9IHJlZiBhbmQgcGRmZGljdGlvbmFy eSB7IE4gPSBwZGZyZWZlcmVuY2UocmVmKSB9DQorICAgICAgICBpZiByZWYg dGhlbg0KKyAgICAgICAgICAgIGxvY2FsIHB3ICAgPSBwZGZkaWN0aW9uYXJ5 IHsNCisgICAgICAgICAgICAgICAgVHlwZSAgICAgID0gcGRmY29uc3RhbnQo IlhPYmplY3QiKSwNCisgICAgICAgICAgICAgICAgU3VidHlwZSAgID0gcGRm Y29uc3RhbnQoIkZvcm0iKSwNCisgICAgICAgICAgICAgICAgRm9ybVR5cGUg ID0gcGRmbnVtYmVyKDEpLA0KKyAgICAgICAgICAgICAgICBCQm94ICAgICAg PSBwZGZhcnJheSB7IHBkZm51bWJlcigwKSwgcGRmbnVtYmVyKDApLCBwZGZu dW1iZXIoZmFjdG9yKndpZHRoKSwgcGRmbnVtYmVyKGZhY3RvcipoZWlnaHQp IH0sDQorICAgICAgICAgICAgICAgIE1hdHJpeCAgICA9IHBkZmFycmF5IHsg cGRmbnVtYmVyKDEpLCBwZGZudW1iZXIoMCksIHBkZm51bWJlcigwKSwgcGRm bnVtYmVyKDEpLCBwZGZudW1iZXIoMCksIHBkZm51bWJlcigwKSB9LA0KKyAg ICAgICAgICAgICAgICBSZXNvdXJjZXMgPSBwZGZkaWN0aW9uYXJ5IHsNCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhPYmplY3QgPSBwZGZk aWN0aW9uYXJ5IHsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBJTSA9IHBkZnJlZmVyZW5jZShyZWYpDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB9DQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH0sDQorICAgICAgICAgICAgICAgIEV4dEdTdGF0ZSA9IHBkZmRpY3Rp b25hcnkgew0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR1Mg PSBwZGZkaWN0aW9uYXJ5IHsNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBUeXBlID0gcGRmY29uc3RhbnQoIkV4dEdTdGF0ZSIpLA0K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENBICAgPSBw ZGZudW1iZXIoMSksDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY2EgICA9IHBkZm51bWJlcigxKQ0KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICB9LA0KKyAgICAgICAgICAgICAgICBQcm9jU2V0ICAgID0gcGRmYXJyYXkg eyBwZGZjb25zdGFudCgiUERGIiksIHBkZmNvbnN0YW50KCJJbWFnZUMiKSB9 LA0KKyAgICAgICAgICAgIH0NCisgICAgICAgICAgICBsb2NhbCBwd2QgPSBw ZGYuaW1tZWRpYXRlb2JqKCJzdHJlYW0iLGZvcm1hdCgicSAvR1MgZ3MgJXMg MCAwICVzIDAgMCBjbSAvSU0gRG8gUSIsZmFjdG9yKndpZHRoLGZhY3Rvcipo ZWlnaHQpLHB3KCkpDQorICAgICAgICAgICAgYW5ub3QuQVAgPSBwZGZkaWN0 aW9uYXJ5IHsgTiA9IHBkZnJlZmVyZW5jZShwd2QpIH0NCisgICAgICAgIGVu ZA0KICAgICAgICAgcmV0dXJuIGFubm90LCBmaWd1cmUsIHJlZg0KICAgICBl bHNlDQogICAgICAgICBhY3RpdmF0aW9uZGljdC5BID0gcGRmY29uc3RhbnQo IlBWIikNCg== --4605117501603315712-1334423588-1271487659=:30012 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=lpdf-ini.lua.diff Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=lpdf-ini.lua.diff LS0tIGxwZGYtaW5pLmx1YS5vcmcJMjAxMC0wNC0wNyAxOTo1MTozMS4wMDAw MDAwMDAgKzA0MDANCisrKyBscGRmLWluaS5sdWEJMjAxMC0wMy0yNSAyMDoz MzoyNy4wMDAwMDAwMDAgKzAzMDANCkBAIC0yNzgsMTAgKzI4MCwxOCBAQA0K IGVuZA0KIA0KIGxvY2FsIGZ1bmN0aW9uIHBkZmJvb2xlYW4oYixkZWZhdWx0 KQ0KLSAgICBpZiAoKHR5cGUoYikgPT0gImJvb2xlYW4iKSBhbmQgYikgb3Ig ZGVmYXVsdCB0aGVuDQotICAgICAgICByZXR1cm4gcF90cnVlDQorICAgIGlm IHR5cGUoYikgfj0gImJvb2xlYW4iIHRoZW4NCisgICAgICAgIGlmIGRlZmF1 bHQgdGhlbg0KKyAgICAgICAgICAgIHJldHVybiBwX3RydWUNCisgICAgICAg IGVsc2UNCisgICAgICAgICAgICByZXR1cm4gcF9mYWxzZQ0KKyAgICAgICAg ZW5kDQogICAgIGVsc2UNCi0gICAgICAgIHJldHVybiBwX2ZhbHNlDQorICAg ICAgICBpZiBiIHRoZW4NCisgICAgICAgICAgICByZXR1cm4gcF90cnVlDQor ICAgICAgICBlbHNlDQorICAgICAgICAgICAgcmV0dXJuIHBfZmFsc2UNCisg ICAgICAgIGVuZA0KICAgICBlbmQNCiBlbmQNCiANCg== --4605117501603315712-1334423588-1271487659=:30012 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline ___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________ --4605117501603315712-1334423588-1271487659=:30012--