Expression > Forenhomepage > Deep Zoom Composer > How to limit how far one can zoom in & out
Stellen Sie eine FrageStellen Sie eine Frage
 

BeantwortetHow to limit how far one can zoom in & out

  • Montag, 15. Juni 2009 05:55Radeldudel TeilnehmermedaillenTeilnehmermedaillenTeilnehmermedaillenTeilnehmermedaillenTeilnehmermedaillen
     Enthält Code

    Is there a way to limit how far the viewer can zoom into or out of the picture?

    I would like to stop the zooming in when the viewer reaches the pixel level, and the zooming out to the size of the picture.

    To be able to zoom until the picture content either looks blurry or is small on the screen is not very appealing to me.

    Is there a way to achieve this, to limit the zoom range?

    kind regards,
    Sam

Antworten

  • Dienstag, 16. Juni 2009 04:02Baruni TeilnehmermedaillenTeilnehmermedaillenTeilnehmermedaillenTeilnehmermedaillenTeilnehmermedaillen
     BeantwortetEnthält Code
    You can change the code in the page.xaml.cs file. I'm not sure if there are other ways of setting it but this is how I set it:

    In the example below, the zoom level is set between 0.45 and 128


            private void Zoom(double newzoom, Point p)
            {
                if (newzoom < 0.45)
                {
                    newzoom = 0.45;
                }
                if (newzoom > 128)
                {
                    newzoom = 128;
                }
    
                msi.ZoomAboutLogicalPoint(newzoom / zoom, p.X, p.Y);
                zoom = newzoom;
            }
    
    • Als Antwort markiertRadeldudel Dienstag, 16. Juni 2009 06:45
    •  

Alle Antworten

  • Dienstag, 16. Juni 2009 04:02Baruni TeilnehmermedaillenTeilnehmermedaillenTeilnehmermedaillenTeilnehmermedaillenTeilnehmermedaillen
     BeantwortetEnthält Code
    You can change the code in the page.xaml.cs file. I'm not sure if there are other ways of setting it but this is how I set it:

    In the example below, the zoom level is set between 0.45 and 128


            private void Zoom(double newzoom, Point p)
            {
                if (newzoom < 0.45)
                {
                    newzoom = 0.45;
                }
                if (newzoom > 128)
                {
                    newzoom = 128;
                }
    
                msi.ZoomAboutLogicalPoint(newzoom / zoom, p.X, p.Y);
                zoom = newzoom;
            }
    
    • Als Antwort markiertRadeldudel Dienstag, 16. Juni 2009 06:45
    •