Developpez.com - Rubrique Lazarus

Le Club des Développeurs et IT Pro

Sortie de la version 6.0 de LazPaint

Logiciel de dessin écrit avec Lazarus (alpha-blending, antialiasing, filtres)

Le 2011-02-10 18:22:14, par circular17, Membre confirmé
LazPaint est un logiciel opensource de dessin écrit avec Lazarus
Le dessin se fait avec transparence et antialiasing

LazPaint est un logiciel opensource de dessin utilisant la librairie BGRABitmap. Le dessin se fait avec transparence et antialiasing.



Il est possible de faire des sélections de n'importe quelle forme, d'effectuer une rotation de la sélection, et de dessin à l'intérieur. La sélection est aussi en antialiasing, ce qui permet par exemple de dessiner une ellipse avec un bord non crénelés à l'aide d'une sélection.

Des filtres sont inclus, comme des flous et le dessin des contours. Le programme est sur SourceForge avec des screenshots :
https://sourceforge.net/projects/lazpaint/

Qu'en pensez-vous ?
  Discussion forum
50 commentaires
  • circular17
    Membre confirmé
    En tenant compte des remarques, voila une nouvelle version 6.2.

    Au passage l'interface a ete amelioree pour faciliter le choix de taille de pinceau et les parametres de l'outil texte. De plus, les barres d'outils sont maintenant presque identiques entre la version Linux et la version Windows.

    Des bugs avec les outils ont ete corriges.

    http://sourceforge.net/projects/lazp...int/files/bin/

    Cordialement
  • circular17
    Membre confirmé
    Bonjour bonjour,

    Je fais un petit up ici aussi pour dire que les exécutables sont disponibles pour Windows et Linux (gtk), avec la toute dernière version qui permet de faire du remplissage avec une texture (en 2D).

    Pour le téléchargement, c'est par ici :
    http://sourceforge.net/projects/lazp...int/files/bin/
  • circular17
    Membre confirmé
    Oops, la personne qui a fait le fichier a oublié de mettre les langues. Voilà, j'ai ajouté les langues à l'archive et aussi l'update checker.

    C'est toujours là :

    http://sourceforge.net/projects/lazp...int/files/bin/

    Le fichier est un peu plus gros maintenant (3.5 Mo au lieu de 1.8 Mo)
  • circular17
    Membre confirmé
    Bonjour,

    Une nouvelle version est disponible avec notamment:
    - impression (menu Fichier)
    - ajustement des courbes (R/G/B/A, saturation, luminosite)
    - liste d'image (boite affichable avec le menu Vue)
    - texture sur les objets 3D (menu Fichier)

    Cordialement
  • circular17
    Membre confirmé
    Merci pour cette reponse detaillee. Certes, je peux faire des comparaison moi-meme, mais il y a aussi une question de sensibilite. Nous n'avons pas tous les memes besoins ni le meme point de vue.

    Envoyé par Coolman-2014
    en fait c'est plus une impression de rapidite et de fluidite concernant Photofiltre
    Ok. Je ne sais pas si on peut faire grand chose a ce sujet. Dans l'ensemble, le programme ne fait rien d'inutile.

    et certaines fonctions pratique, l'image charge s'adapte automatiquement a la taille de la fenetre de photofiltre (si l'image est plus grande)
    Je note. Oui, peut-etre est-ce mieux d'adapter le zoom dans ce cas. En attendant, il y a un bouton pour ajuster le zoom.

    les filtres sont beaucoups plus nombreux
    Ah oui, la j'avais remarque cela aussi. Ben disons, si je peux deviner comment reproduire des filtres existants, pourquoi pas. Peut-etre qu'il y aura la possibilite de faire des scripts, ce qui peut rendre l'ajout de nouveaux effets plus facile.

    j'ai la encore une impression de rapidite...
    Certains filtres peuvent sans doute etre optimises.

    avec Lazpaint la fenetre de l'explorateur d'image depasse bizarement la taille de l'ecran et deborde
    J'ai remarque que cela arrive des fois. Le but c'est qu'elle s'affiche en plein ecran. A voir pourquoi cela n'arrive pas toujours.

    il faudrait la mettre a une echelle pratique et de la centrer correctement ou sauvegarder la taille et position de la fenetre defini par l'utilisateur...
    Hmm, oui je pense que cela depend des utilisateurs alors en config ce serait ideal.

    concernant l'acces internet, l'utilisateur devrait etre prevenu d'une eventuelle mise a jour pour l'autoriser ou pas...
    Non non, le truc, c'est que c'est la verification s'il y a une mise a jour qui declenche un message de zone alarme. Mon programme ne se met pas a jour tout seul, a part le telechargement de fichiers de langues. Avant, il y avait un update-checker qui etait separe, mais cela ne va pas. Les utilisateurs ne vont pas faire cette demarche manuellement. S'il on ne peut plus lire quelques pages en HTTP, que peut-on faire ?

    a mon avis, une fenetre unique permet une meilleure utilisation, je ne comprend d'ailleurs toujours pas pourquoi gimp s'est obstine pendant des annees a ignorer cet aspect. personnellement c'est la raison qui m'a dissuade de l'utiliser bien que je l'ai installe...
    Oui, il faut dire que dans GIMP, c'est vraiment tres eparpille. Enfin c'etait parce que je vois des screenshot ou le tout est dans la meme fenetre. Une reconciliation peut-etre ?

    pour le rendu, contrairement a photofiltre qui reste en 32 bit (apparement delphi ne genere que des programmes 32) , Lazpaint a un avantage certain, celui de pouvoir fonctionner en 64 bits, j'ai constate clairement une grande difference entre la version 32 et 64...
    Cool.

    une autre suggestion, photofiltre peut gerer de nombreuses images en meme temp dans differentes fenetres dans la meme interface, c'est important... il faudrait egallement afficher dans le bas de la fenetre les informations sur l'image charge comme la taille, resolution, nombre de couleurs, position de la souris, chemin et nom de l'image. vous pourriez egallement afficher la barre de progression dans cette zone...
    Je comprends. La il y a differentes raisons pourquoi ce n'est pas le cas. Pour les nombreuses images en meme temps, c'est une question de simplicite de la programmation et de limitation de la memoire utilisee.

    Concernant une barre en bas de la fenetre, je voulais limiter l'espace utilise pour avoir le maximum pour l'image. Le nom est dans la barre de titre. C'est vrai que ce serait utile d'avoir des informations sur l'image. Pour la position de la souris elle est dans la barre d'outil. A reflechir comment organiser cela.

    Pour la resolution, cela n'est tout simplement pas gere par LazPaint. En partie parce que cela n'est pas gere au niveau des formats de fichier (que ce soit non prevu dans le format ou que les reader/writer de FreePascal ne le prennent pas en compte). J'aimerais bien inclure la resolution dans la prochaine version. J'ai deja un peu reecris des reader/writer pour augmenter leur vitesse.

    Je pense qu'en partie mon programme n'a pas eu beaucoup de succes au debut parce qu'il n'incluait pas la toutes les fonctions de base attendues, calques et compagnie. Maintenant, je pense qu'il lui manque encore les informations sur l'image que tu as justement releve, les formes de pinceau et le scan.

    L'optimisation est deja assez bonne encore qu'il faudra que je fasse des essais avec des grandes images. Disons que mon programme n'est pas encore tres adapte aux grandes images. Au dela de 2000x2000, c'est sur qu'il est un peu lent.
  • circular17
    Membre confirmé
    La dernière version est la 7.1.2. Le premier lieu de publication est à présent Github:
    https://github.com/bgrabitmap/lazpaint/releases

    Parmi les nouvelles fonctionalités :
    • Lecture des images de photographies RAW
    • Scripts en Python : les scripts fournis permettent de faire des effets sur les calques
    • Thème d'interface foncé
    • Ancrage des fenêtres de couleurs et de calques à l'intérieur de la fenêtre principale
    • Formes vectorielles modifiables avec remplissage gradient ou texture
    • Optimisations pour mieux supporter les grandes images
    • Mise à jour des traductions


    Si vous rencontrez des problèmes ou des fonctionnalités vous manquent, vous pouvez m'en faire part dans la section Issues du projet sur Github.
  • circular17
    Membre confirmé
    Ah oui, un wiki est une bonne idée. Alors voilà, une première version :
    http://wiki.lazarus.freepascal.org/LazPaint/fr

    Pour la version compilée, pourquoi pas. Mais bon, le programme peut être compilé sur trop de plateformes pour que je le fasse moi-même. Ce serait pratique si cela pouvait être collaboratif.
  • circular17
    Membre confirmé
    Salut les gens,

    J'ai pas mal avancé sur ce programme d'édition d'image. Notamment ce qu'on peut faire :
    - choisir la couleur en un clic sur le cercle de couleurs
    - les opérations habituelles sur l'image (taille du support, rotation 90°)
    - les transformations des couleurs (décalage de teinte, luminosité)
    - quelques filtres (nuages, projection sphérique ou cylindrique)
    - lecture des GIF et des ICO (choix de l'image)
    - lecture des fichiers Paint.NET (image aplatie)

    Je vais peut-être encore ajouter quelques fonctionnalités. Pour les binaires, je recherche des gens pour compiler le programme sur d'autres plateformes que Win64.
  • alanglet
    Membre confirmé
    Bravo.

    J'ai compilé cette version sous win32, mais il faut ajouter LResources dans les Uses de lazpaint.lpr pour déclarer LRSTranslator.
    Pour traduire les dialogues j'ai ajouté les fichiers lclstrconsts.po dans i18n et le code
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
      {$IFDEF WINDOWS}
      POFile:=ExtractFilePath(Application.ExeName)+'i18n/lclstrconsts.'+FallbackLang+'.po';
      {$ELSE}
        POFile:='i18n/lclstrconsts.'+FallbackLang+'.po';
      {$ENDIF}
    
      if FileExistsUTF8(POFile) then
        Translations.TranslateUnitResourceStrings('LCLStrConsts',POFile);
    en fin de la procédure TranslateLazPaint.
    André
  • circular17
    Membre confirmé
    Voilà une nouvelle version (4.7) avec :
    - choix de la langue (menu Fichier)
    - usage réduit de la CPU quand inactif
    - touche Ctrl pour dessiner que les coordonnées soit alignées aux pixels
    - plus de formes avec éclairages, y compris le texte

    http://sourceforge.net/projects/lazp...int/files/bin/