1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
/**
* Fait et retourne la numérisation
* @return MorenaImage, la numérisation qui vient d'être faite
* @throws SK.gnome.morena.MorenaException
*/
protected MorenaImage doScan() throws MorenaException
{
// sélection du scanner si pas encore fait
if(this.source == null)
this.doScannerPick();
// interruption de la numérisation si sélection du scanner annulée
if(this.source == null)
return null;
this.source.setVisible(false); // n'affiche pas la fenêtre de paramétrage d'impression
if(this.colorMode > 0)
this.source.setColorMode(); // numérisation couleur
else
this.source.setGrayScaleMode(); // numérisation noir et blanc
this.currentScan = new MorenaImage(source); // numérisation
// enregistrement si quelque chose a vraiment été numérisé
if(this.currentScan.getWidth() > 0)
{
// insertion après la page affichée
if(this.bookInsertAfterCurrent)
{
this.book.add(this.bookIndex+1, this.currentScan); // sauvegarde de la numérisation après la page affichée
++this.bookIndex; // positionnement sur la page numérisée
}
// insertion à la dernière page
else
{
this.bookIndex = this.bookNpages - 1; // positionnement sur la dernière page
this.book.add(currentScan); // sauvegarde de la numérisation dans le livre
++this.bookIndex; // positionnement sur la dernière page du livre
}
++this.bookNpages; // incrémentation du nombre de page du livre
}
return this.currentScan;
} |
Partager