IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Comment creer une image TIFF multipages avec WIA


Sujet :

C++Builder

  1. #1
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : mars 2006
    Messages : 2 738
    Points : 3 701
    Points
    3 701
    Par défaut Comment creer une image TIFF multipages avec WIA
    Voici comment creer une image TIFF multipage, suite a ce tuto et ce post
    Le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    // #include <utilcls.h> // <---------ne pas oublier
     
    void __fastcall TForm1::Button10Click(TObject *Sender)
    {
    // creation Image Multipage TIFF
    Variant vMSWIAImageFile1, vMSWIAImageFile2, vMSWIAImageFile3, vMSWIAImageProcess;
     
    // Création des conteneurs pour les images à manipuler
    vMSWIAImageFile1 = Variant::CreateObject("WIA.ImageFile");
    vMSWIAImageFile2 = Variant::CreateObject("WIA.ImageFile");
    vMSWIAImageFile3 = Variant::CreateObject("WIA.ImageFile");
     
    // Création du gestionnaire de filtre
    vMSWIAImageProcess = Variant::CreateObject("WIA.ImageProcess");
     
    // chargement des images
    vMSWIAImageFile1.OleFunction("LoadFile", "C:\\Documents and Settings\\blondelle\\Mes documents\\Mes images\\Grue_Atelier.jpg");
    vMSWIAImageFile2.OleFunction("LoadFile", "C:\\Documents and Settings\\blondelle\\Mes documents\\Mes images\\resultat_Fusion_Deux_images.JPG");
    vMSWIAImageFile3.OleFunction("LoadFile", "C:\\Documents and Settings\\blondelle\\Mes documents\\Mes images\\fourmiz_ImageCombinee.JPG");
     
    // Ajoute un filtre pour gérer un premier Frame/Multipage
    vMSWIAImageProcess.OlePropertyGet("Filters").OleProcedure("Add", (vMSWIAImageProcess.OlePropertyGet("FilterInfos", "Frame").OlePropertyGet("FilterID")));
    // définit le contenu du Frame
    vMSWIAImageProcess.OlePropertyGet("Filters", (vMSWIAImageProcess.OlePropertyGet("Filters").OlePropertyGet("Count"))).OlePropertySet("Properties", "ImageFile", vMSWIAImageFile2);
    // Ajoute un filtre pour gérer un deuxieme Frame/Multipage
    vMSWIAImageProcess.OlePropertyGet("Filters").OleProcedure("Add", (vMSWIAImageProcess.OlePropertyGet("FilterInfos", "Frame").OlePropertyGet("FilterID")));
    // définit le contenu du Frame
    vMSWIAImageProcess.OlePropertyGet("Filters", (vMSWIAImageProcess.OlePropertyGet("Filters").OlePropertyGet("Count"))).OlePropertySet("Properties", "ImageFile", vMSWIAImageFile3);
    // Ajoute un filtre de conversion pour la nouvelle image (au format TIFF)
    // (TIFF est le seul format qui supporte la sauvegarde en multi-frames)
    vMSWIAImageProcess.OlePropertyGet("Filters").OleProcedure("Add", (vMSWIAImageProcess.OlePropertyGet("FilterInfos", "Convert").OlePropertyGet("FilterID")));
    // wiaFormatTIFF ="{B96B3CB1-0728-11D3-9D7B-0000F81EF32E}"
    vMSWIAImageProcess.OlePropertyGet("Filters", (vMSWIAImageProcess.OlePropertyGet("Filters").OlePropertyGet("Count"))).OlePropertySet("Properties", "FormatID", "{B96B3CB1-0728-11D3-9D7B-0000F81EF32E}");
     
    // Application du filtre à la 1ere image:
    // (ajoute 2 frames dans la 1ere image, au format Tiff
    vMSWIAImageFile1 = vMSWIAImageProcess.OleFunction("Apply", vMSWIAImageFile1);
     
    // sauvegarde de la nouvelle image
    vMSWIAImageFile1.OleFunction("SaveFile", "C:\\Documents and Settings\\blondelle\\Mes documents\\Mes images\\monImageMultipage.tif");
    }
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  2. #2
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    novembre 2015
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : novembre 2015
    Messages : 1
    Points : 1
    Points
    1
    Par défaut WIAAUT.DLL
    BONJOUR

    AVEC VISUAL STUDIO 2015 ET EN WINDOWS 10 64 BIT
    tous les exemples pour WIA ne fonctionnent plus.
    de plus en vb l'ocs Comdlg32.ocx n'existe pas , on peut le télécharger et l'enregistrer dans windows/syswow64.
    existe il une mise a jour de cet ocs en 64 bits ou il se sert plus ?????

    est ce que quelqu'un a les scripts mis a jour.
    PicTrans demo,
    WindowsImageAcquisition,
    wiascriptingdotnet,
    ou 6186-799218-redimensionner-une-image-sans-deformation


    merci de me tenir informé.

  3. #3
    Membre du Club
    Inscrit en
    avril 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : avril 2006
    Messages : 55
    Points : 54
    Points
    54
    Par défaut Wia
    Avec c++builder non plus et aucune nouvelle

Discussions similaires

  1. comment creer une campagne de phoning avec sugarcrm
    Par foulene dans le forum Débuter
    Réponses: 3
    Dernier message: 21/03/2009, 17h39
  2. Comment creer une image (jpeg,bmp,etc) a partir d'un GtkWidget?
    Par lterzolo dans le forum GTK+ avec C & C++
    Réponses: 3
    Dernier message: 09/01/2009, 07h07
  3. comment creer une matrice Walsh-Hadamard avec c++
    Par dev0077 dans le forum Eclipse C & C++
    Réponses: 1
    Dernier message: 03/10/2007, 12h06
  4. [Image] Comment créer une image à partir d'un fichier
    Par mereyj dans le forum Entrée/Sortie
    Réponses: 1
    Dernier message: 01/07/2005, 22h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo