Since 2014, viewmat generated png format file instead of bmp.

On Tue, Sep 20, 2022 at 11:34 AM Ian Clark <earthspo...@gmail.com> wrote:

> I confess I'm slightly baffled by Richard's post. AFAIK the value returned
> by the verb: viewmat is undefined, and no meaning can be attached to it.
> Viewmat works in different ways on different platforms, but when I trace
> the code of verb: viewmat as defined in line 361 of
> ~addons/graphics/viewmat/viewmat.ijs it typically returns some variant of
> empty, EMPTY or i.0 0.
>
>
> So, taking Richard's sample sentences and replacing the argument with y,
> it's no surprise that:
>
>
>    viewmat y
>
> NB. no output
>
>
>    $viewmat y
>
> 0 0
>
>
> However while checking this out I've stumbled on the tip of an iceberg.
> Thank you Richard for alerting me to the fact.
>
>
> The code of Viewmat is involved. It looks as if it's been patched and
> patched over the years. But whatever the platform, it basically works by
> generating a bitmap (BMP) file (i.e. having the extension .bmp) and then
> picking one of a bunch of ways to display it.
>
>
> Both j701 and j901 apps for iOS generate a BMP file. j701 wraps the file
> path in html code which it then displays using UIKit's (deprecated) browser
> object UIWebView. j901 uses neither UIWebView nor the replacement WkWebView
> to display the BMP file, but instead calls UIKit's image display object
> UIImageView, which can handle BMP. Or it did once.
>
>
> Apple had recently released updates to several of its systems fixing major
> security exposures. Since then Viewmat *in both j701 and j901* has broken.
> (It was working in both apps in July of this year.)
>
>
> JQt is unaffected. Viewmat still works on a Mac running the latest version
> of Monterey. I'm guessing this is because JQt does not use Apple system
> code to display the generated BMP. Instead it converts the BMP file
> contents into an RGB array (a J noun of integer type) and then uses gl2
> (glpixels) to display it on a Qt-managed canvas.
>
>
> When I copy the BMP file generated by j901 onto a Mac MBA which is still
> running Big Sur, I can readily display it using Preview – and the icon
> itself shows a thumbnail of the file contents. But I cannot get a newer Mac
> running Monterey to display the very same BMP. Yet Monterey was able to do
> so back in July, before the recent Apple fixes. It's the same story with
> iOS. On both platforms Preview now tells me that my BMP file is either
> corrupt or an unsupported file format.
>
>
> This cannot be a coincidence. It looks as if Apple has simply decided to
> cancel BMP on the latest versions of Monterey and iOS. But I find it hard
> to believe. Maybe it's just a bug introduced by Apple in its haste to shore
> up its systems. Or maybe the BMP spec is being more closely adhered-to than
> hitherto.
>
>
> I propose to take the matter up with Apple. J needs BMP, even if Apple
> doesn't.
>
> On Mon, 19 Sept 2022 at 18:24, 'Mike Day' via Programming <
> programm...@jsoftware.com> wrote:
>
> > Confirming Raul’s observations on this iPad running J701 under iOS 12.5.5
> > .
> > viewmat shows the circle, square and intermediate shape without problem,
> > presumably as required, after copying from the email and pasting into the
> > terminal screen,  so Raul probably typed correctly.  Also, same result
> > using either @ or @: as he found.  And image is ok running with the
> > one-liner pasted into the J701 E screen, ie the script-edit page.
> >
> > Cheers,
> >
> > Mike
> >
> > Sent from my iPad
> >
> > > On 19 Sep 2022, at 16:52, Raul Miller <rauldmil...@gmail.com> wrote:
> > >
> > >> On Mon, Sep 19, 2022 at 11:15 AM Richard Donovan <
> rsdono...@hotmail.com>
> > wrote:
> > >> viewmat((1>+/~@:(4^~(%~i:)))*.1<+/~@:(2^~(%~i:)))666
> > >> NB. no output
> > >>
> > >>   $viewmat((1>+/~@:(4^~(%~i:)))*.1<+/~@:(2^~(%~i:)))666
> > >> 0 0
> > >
> > > This is probably more a topic for the general forum than the
> > > programming forum, but viewmat also produces a shape 0 0 result in
> > > jqt. (In jplayground, it produces a shape 1 result which is a single
> > > space..)
> > >
> > > In the jqt viewmat, it pops up a new window with the image. In the
> > > jplayground viewmat, it produces an inline image (JHS viewmat would be
> > > similar to jplayground's viewmat). On my iphone, running j701, the
> > > above expression presented the viewmat image at the top of the phone
> > > (or an expression close to the above -- I hand entered the line, and
> > > used @ instead of @: which should produce an equivalent result here,
> > > but the point is that I may have inadvertently changed something
> > > else...).
> > >
> > > To be sure that a viewmat image consistently appears, I copied the
> > > line into the edit window and ran it from there -- when I did so, the
> > > edit window was hidden (icon at bottom of region changed from E to J)
> > > and the session window and the image window appeared.
> > >
> > > So... whatever the problem is, it might depend on the version of J you
> > > are running and/or the version of ios that you are running?
> > >
> > > I hope this helps,
> > >
> > > --
> > > Raul
> > > ----------------------------------------------------------------------
> > > For information about J forums see http://www.jsoftware.com/forums.htm
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to