OmniImage + ImageViewer Puzzle
William Shipley
wjs
Sun Apr 9 12:22:59 PDT 1995
And the number one problem we're hoping to address in OmniWeb 1.2 is...
IMAGE FILTERING!
You've run into a common problem. Image filtering is a dark art. NeXT
conveniently provided preferences for which application you launch when you
open a data file, but they never provided preferences for which filter gets
launched when you automatically filter a data file.
Bad, bad NeXT.
Your problem has two parts. Part one is that ImageViewer is launching
instead of OmniImageFilter.
ImageViewer comes before OmniImageFilter in the alphabet. Thus,
ImageViewer's advertised image filtering services are used before
OmniImageFilter. (At least, that's my guess why it's preferred.)
We generally recommend people open up the ImageViewer.app file package
(command-shift-O in the Workspace) and rename the "services" file to
something else. This insures that only OmniImageFilter's services will be
found. (This doesn't interfere with opening files in ImageViewer normallly,
which is a good thing, because really in some ways I like ImageViewer
better than OmniImage. But for filtering, I like OmniImageFilter, because
it doesn't visibly launch anything.)
Part two of your problem is you don't appear to have OmniImageFilter in the
right place or with the right permissions, so when you move aside
ImageViewer OmniImage can't find a filter for JPEGs. OmniImage is dumb as a
stone (check how small it is), all the conversion logic is in
OmniImageFilter.
Put OmniImageFitler in /LocalLibrary/Services, and you should be happy.
-Wil
PS: What are we doing to fix all this confusion? Glad you asked. We're
going to make our image filters a loadable bundle, and OmniImage, OmniWeb,
and OmniImageFilter will all load this common bundle. Since we won't be
relying on NeXT's services mechanism, we won't have to hassle with 60 second
timeouts or accidentally invoking someone else's filter or OmniImageFilter
not being installed.
Under 4.0, this bundle will become a dynamically loaded shared library, and
it'll be available for everyone to use in their programs. Pretty neat,
huh?
More information about the OmniWeb-l
mailing list