Domanda

Una delle Silverlight 4 caratteristiche elencate in un sacco di documenti PDC Anteprima di stampa.

Ho cercato esempi su come usare questo e trovato finora nulla. Qualcuno ha preso questa ancora lavorare? Mi può dare alcune indicazioni su come implementare una semplice applicazione web con anteprima di stampa in.

È stato utile?

Soluzione 3

Credo che dalla mancanza di risposte e il fatto che, come Hurricanepkt ha sottolineato nella sua risposta Tim Heuer e altri parlano di una stampa virtuale che se displying la stessa cosa sullo schermo potrebbe essere costruito abbastanza facilmente nella vostra misura Anteprima di stampa funzionalità che l'anteprima di stampa elencati in alcune liste è in realtà la gente misinterpretting ciò che i documenti di stampa virtuale in realtà sono.

Altri suggerimenti

anteprima di stampa

Non ho visto come qualcuno di loro ma il supporto di stampa reale in cui è possibile controllare quali controlli vengono stampati e gli eventi in base al processo di stampa.

Dopo aver guardato per un po 'ho trovato un modo per farlo, combinando alcune caratteristiche che ho trovato in altri progetti, ma hanno usato per la manipolazione delle immagini. Ho provato con la stampa e sembra funzionare bene.

Ecco come funziona: Prendi il contenitore di base per i contenuti di stampa convertiti in bitmap utilizzando WriteableBitmap, qui I'll usare un Canvas:

WriteableBitmap wb = new WriteableBitmap(this.canvas1, null);

Con questo bitmap come fonte per un controllo immagine (può essere all'interno di uno ScrollViewer, ciò che è ancora meglio).

this.imagePreview.Height = wb.PixelHeight;
this.imagePreview.Width = wb.PixelWidth;
this.imagePreview.Source = wb;

unità di base Set di scala (usato 1 per cento, in questo caso):

Point scale = new Point();      

scale.X = imagePreview.Width/100d;
scale.Y = imagePreview.Height/100d;

Quindi regolare la scala utilizzando un cursore (opzionale)

private void vSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
        {

                imagePreview.Height = scale.Y * vSlider.Value;
                imagePreview.Width = scale.X * vSlider.Value;           
        }
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top