Discussion:
Magnifying a portion of the X screen
(too old to reply)
Norm Dresner
2004-11-17 14:45:30 UTC
Permalink
The "standard" program `xmag` allows static capturing a portion of an
X-window screen and magnifying it. But, compared to the programs available
for Microsoft Windows, it's badly crippled. There are relatively simple
programs available -- and some even ship with the base Windows
installation -- that allow
(a) dynamic changing magnification with a mouse-click
(b) live capturing the region surrounding the mouse as it's dragged
around
(c) live display as the area being magnified changes.

PLEASE don't think that this is a troll. I'm a long-time and committed user
and developer of both Windows and Linux and I find that right now for a
program that I'm working on I need some of the functionality that I have in
windows under Linux too.

One problem with the development of a really capable X window app is the
multiplicity of standards and toolkits so a developer has to either program
to a least common denominator system or supply enough in the way of
libraries to make his/her app work on "any" system.

As I see it right now, a reasonable target (though hardly inclusive) is
what's provided with something like a RedHat 7.x or 8.x distribution which
is, I think, X + Xt + Lesstif.

If there's a Windows-like screen region magnifier available, then it doesn't
ship with my "target" systems -- or at least doesn't get installed by
default in them.

1. If there is a program that does (most of) what I need, please tell me so
I won't start reinventing round objects. If the app needs extensions to do
some things, I just might do that instead of starting from scratch.

2. If there is no (readily available) program of this type, please tell me
a) is my target reasonable
b) what features should be included or excluded from the app

TIA
Norm
Måns Rullgård
2004-11-17 15:39:08 UTC
Permalink
Post by Norm Dresner
The "standard" program `xmag` allows static capturing a portion of an
X-window screen and magnifying it. But, compared to the programs available
for Microsoft Windows, it's badly crippled. There are relatively simple
programs available -- and some even ship with the base Windows
installation -- that allow
(a) dynamic changing magnification with a mouse-click
(b) live capturing the region surrounding the mouse as it's dragged
around
That seems easy to implement. XSelectInput(PointerMotionMask) on the
root window, and do XShmGetImage, magnify, XShmPutImage.
Post by Norm Dresner
(c) live display as the area being magnified changes.
Slightly trickier. The problem is to be notified when some area
changes. With a suitable graphics card (anything modern), it is
possible to set the overlay unit to read from the framebuffer. This
would give instant update of whatever region was configured, without
using a single CPU cycle. The source rectangle would need to be
reconfigured on mouse motion, of course, but it's a cheap operation.
The only catch is that X provides no means for implementing this.
--
Måns Rullgård
***@inprovide.com
John Reiser
2004-11-17 15:26:09 UTC
Permalink
Post by Norm Dresner
(a) dynamic changing magnification with a mouse-click
This should require only a small enhancement to xmag.
Post by Norm Dresner
(b) live capturing the region surrounding the mouse as it's dragged
around
This should require only a small enhancement to xmag.
Post by Norm Dresner
(c) live display as the area being magnified changes.
"100% live" probably requires a proxy X11 server (or an X11 protocol
extension) to filter and "tee" the protocol stream for the windows that
are subject to the magnification (currently are mapped to the portion
of the screen that is being magnified). Otherwise, this effect might
be simulated by repetitive re-read and re-magnify (say, at 10 Hz).

--
Dan Espen
2004-11-17 15:58:38 UTC
Permalink
Post by Norm Dresner
The "standard" program `xmag` allows static capturing a portion of an
X-window screen and magnifying it. But, compared to the programs available
for Microsoft Windows, it's badly crippled. There are relatively simple
programs available -- and some even ship with the base Windows
installation -- that allow
(a) dynamic changing magnification with a mouse-click
(b) live capturing the region surrounding the mouse as it's dragged
around
(c) live display as the area being magnified changes.
PLEASE don't think that this is a troll.
Sure sounds like a troll. Are you sure you didn't do a google
search for:

x windows screen magnifier

This site is good:

http://www.magnifiers.org/links/Screen_Magnifiers/UNIX_Linux/

As a result of your post I installed kmag, pretty neat.
Norm Dresner
2004-11-19 22:08:43 UTC
Permalink
Post by Dan Espen
Post by Norm Dresner
The "standard" program `xmag` allows static capturing a portion of an
X-window screen and magnifying it. But, compared to the programs available
for Microsoft Windows, it's badly crippled. There are relatively simple
programs available -- and some even ship with the base Windows
installation -- that allow
(a) dynamic changing magnification with a mouse-click
(b) live capturing the region surrounding the mouse as it's dragged
around
(c) live display as the area being magnified changes.
PLEASE don't think that this is a troll.
Sure sounds like a troll. Are you sure you didn't do a google
x windows screen magnifier
http://www.magnifiers.org/links/Screen_Magnifiers/UNIX_Linux/
As a result of your post I installed kmag, pretty neat.
Not everyone thinks of every keyword when googling.

Also, I looked at the site you suggest and there are several that look
promising.

BUT ... You said that you installed "kmag" -- where did you get it from ?
Certainly not from the site you cited.

Norm
Erik Max Francis
2004-11-19 22:38:39 UTC
Permalink
Post by Norm Dresner
Not everyone thinks of every keyword when googling.
Also, I looked at the site you suggest and there are several that look
promising.
BUT ... You said that you installed "kmag" -- where did you get it from ?
Certainly not from the site you cited.
Surely you can think of the Google keyword "kmag" when wanting to search
for kmag, couldn't you?
--
Erik Max Francis && ***@alcyone.com && http://www.alcyone.com/max/
San Jose, CA, USA && 37 20 N 121 53 W && AIM erikmaxfrancis
Courage is the fear of being thought a coward.
-- Horace Smith
Norm Dresner
2004-11-20 07:35:20 UTC
Permalink
Post by Erik Max Francis
Post by Norm Dresner
Not everyone thinks of every keyword when googling.
Also, I looked at the site you suggest and there are several that look
promising.
BUT ... You said that you installed "kmag" -- where did you get it from ?
Certainly not from the site you cited.
Surely you can think of the Google keyword "kmag" when wanting to search
for kmag, couldn't you?
Why would I ever want to search for "kmag" without knowing it existed in the
first place?
Dan Espen
2004-11-19 23:28:54 UTC
Permalink
Post by Norm Dresner
Post by Dan Espen
Post by Norm Dresner
The "standard" program `xmag` allows static capturing a portion of an
X-window screen and magnifying it. But, compared to the programs
available
Post by Dan Espen
Post by Norm Dresner
for Microsoft Windows, it's badly crippled. There are relatively
simple
Post by Dan Espen
Post by Norm Dresner
programs available -- and some even ship with the base Windows
installation -- that allow
(a) dynamic changing magnification with a mouse-click
(b) live capturing the region surrounding the mouse as it's dragged
around
(c) live display as the area being magnified changes.
PLEASE don't think that this is a troll.
Sure sounds like a troll. Are you sure you didn't do a google
x windows screen magnifier
http://www.magnifiers.org/links/Screen_Magnifiers/UNIX_Linux/
As a result of your post I installed kmag, pretty neat.
Not everyone thinks of every keyword when googling.
True, but what else could you use? OK, I just used your subject
line and it didn't work very well. I officially conceed that you
aren't a troll. :)
Post by Norm Dresner
Also, I looked at the site you suggest and there are several that look
promising.
BUT ... You said that you installed "kmag" -- where did you get it from ?
Certainly not from the site you cited.
I'm not sure what you mean. I followed the 5th link down to kmagnifier.
After I saw that the actual executable was kmag I used URPMI (a Mandrake
tool) to find the package name and install it.

I just checked their screenshots. The Mandrake package and KMagnifier
are the same thing.

So I used that page...in a way.
Kalle Olavi Niemitalo
2004-11-17 16:16:10 UTC
Permalink
Post by Norm Dresner
1. If there is a program that does (most of) what I need, please tell me so
I won't start reinventing round objects. If the app needs extensions to do
some things, I just might do that instead of starting from scratch.
Xzoom updates its display automatically with a timer, and its
magnification ratio can be changed with keypresses, but
apparently not with the mouse. I don't think it can follow the
mouse automatically while you're using other programs.

There is also KMagnifier for KDE, and gnome-mag for GNOME.
I haven't used those myself.
Mårten Svantesson
2004-11-19 17:38:58 UTC
Permalink
Post by Norm Dresner
The "standard" program `xmag` allows static capturing a portion of an
X-window screen and magnifying it. But, compared to the programs available
for Microsoft Windows, it's badly crippled. There are relatively simple
programs available -- and some even ship with the base Windows
installation -- that allow
(a) dynamic changing magnification with a mouse-click
(b) live capturing the region surrounding the mouse as it's dragged
around
(c) live display as the area being magnified changes.
There do exist screen magnifyiers; of the ones listed in Dans link I
have tried UnWindows and Gnopernicus (these are actually collections
av accessability tools). Both these support your demands (well I don't
remember the possibility to change magnified area by mouse *click*),
but in different ways. This makes Gnopernicus easier to use, but
UnWindows is probably faster and might also run on a bigger variety of
systems. Both can also automatically focus on changes in the display
making it possible to--for example--follow the text you are writing in
Emacs.

Both of these (and all other screen magnifiers I've heard) of have the
problem that you can't magnify the area of the screen covered by the
magnifier. The problem is due to technical limitations in the X
servers. A way around this is using a system capable of managing
several screens and having the the magnifier on one a screen separate
from the applications you want to magnify. I haven't seen any sleek
solution for doing this while having only one monitor, though it would
be possible to make.

When I was about to help a visually impaired person some years ago we
ended up with letting him use a computer with the XFree86 server and
utilised the possiblity to adjust the screen resolution with key
strikes. See here
http://www.tldp.org/HOWTO/Accessibility-HOWTO/visual.html#AEN177 Since
the system he should mainly use was Solaris (itself using the Xsun
server) he used a Linux system running XFree86 to log in to a
Solaris system using XDMCP. Worked fine, though not that good security
wise (the X protocol is sent unencrypted over the network in this
case).
--
- Mårten

mail: ***@kth.se *** ICQ: 4356928 *** mobile: +46 (0)707390385
Tomas Carnecky
2004-11-19 22:27:49 UTC
Permalink
Post by Norm Dresner
The "standard" program `xmag` allows static capturing a portion of an
X-window screen and magnifying it. But, compared to the programs available
for Microsoft Windows, it's badly crippled. There are relatively simple
programs available -- and some even ship with the base Windows
installation -- that allow
(a) dynamic changing magnification with a mouse-click
(b) live capturing the region surrounding the mouse as it's dragged
around
(c) live display as the area being magnified changes.
Xdamage extension of the new X.org xserver?

tom
Mårten Svantesson
2004-11-20 14:42:11 UTC
Permalink
Post by Tomas Carnecky
Post by Norm Dresner
The "standard" program `xmag` allows static capturing a portion of an
X-window screen and magnifying it. But, compared to the programs available
for Microsoft Windows, it's badly crippled. There are relatively simple
programs available -- and some even ship with the base Windows
installation -- that allow
(a) dynamic changing magnification with a mouse-click
(b) live capturing the region surrounding the mouse as it's dragged
around
(c) live display as the area being magnified changes.
Xdamage extension of the new X.org xserver?
Gnopernicus magnifier will use that according to
http://blogs.sun.com/roller/comments/korn/Weblog/european_summer_tour_2004_part

Also other more or less new extension will be utilised: COMPOSITE and
XFIXES. XEvIE is already used if present.

As far as I understand COMPOSITE might fix the problem of magnifying
parts of the screen covered by the magnifier window.
--
- Mårten

mail: ***@kth.se *** ICQ: 4356928 *** mobile: +46 (0)707390385
Loading...