"Je veux changer le DPI avec Imagemagick sans changer la taille réelle de l'octet des données de l'image.
C'est tout à fait impossible !
Parce que :
more "Dots per Inch"
<==> more pixels per area
<==> more total pixels per image
<==> more total bytes per image
De plus, vous ne semblez pas comprendre ce qu'est le DPI en réalité :
- Il s'agit d'une valeur totalement abstraite qui n'a de valeur pratique que dans le contexte de la connaissance de la taille absolue de l'impression ou du rendu sur l'écran ou le moniteur :
- Vous pouvez "imprimer" la même image de 72x72 pixels sur un carré de 1 pouce de large : la résolution de l'impression sera de
72dpi
.
- Vous pouvez également l'imprimer sur un carré d'un quart de pouce de large : la résolution de l'impression sera alors de
288dpi
.
- ( Note : Si vous l'imprimez à l'adresse
288dpi
sur un carré de 1 pouce, ce n'est plus la même image : elle aura subi une extrapolation par le pilote de l'imprimante ou un autre mécanisme de filtrage, et elle sera devenue une image de 288x288 pixels au lieu d'une image de 72x72 pixels... )
- Les deux impressions contiendront les mêmes informations sur l'image - l'image de 288 dpi n'en contiendra pas soudainement plus.
Si vous souhaitez imprimer l'image originale de 72x72 pixels sous la forme d'un carré de 1 pouce de large, mais au format 288dpi
Vous devrez alors rééchelonner l'image (dans ce cas, la mettre à l'échelle). Pour chaque pixel de l'image originale, il faut 4 pixels de la nouvelle image agrandie. Différents algorithmes peuvent être utilisés pour calculer les valeurs de couleur de ces 4 pixels (dont 3 sont de nouveaux pixels) :
- vous pourriez leur donner la même chose que le pixel original (qui est un algorithme très "brut"),
- ou vous pourriez faire une moyenne de la valeur de couleur du pixel original avec les valeurs de couleur des pixels voisins.
Dans tous les cas, vous créez une image plus grande composée de 288 rangées de pixels de 288 pixels de haut chacune (288x288 pixels).
Ce que Gimp fait pour vous lorsque vous passez par "Image -> Taille d'impression" : il simplifie le processus de recalcul des changements requis dans les tailles absolues de pixels, le rendant plus convivial. Pour ce faire...
- ...il vous demande d'abord le DPI parce qu'une imprimante donnée ne peut pas modifier arbitrairement sa résolution d'impression (certaines peuvent offrir non seulement une, mais peut-être même 2 ou 3 résolutions différentes). Il vous demande donc à quelle résolution vous souhaitez imprimer. C'est la première information.
- ...puis il demande également la deuxième information : à quelle taille (en
cm
, mm
o inch
), l'impression doit apparaître sur le papier.
En fonction de ces deux informations, Gimp calcule le nombre total de pixels qu'il doit utiliser (extrapoler à partir du nombre de pixels d'origine) pour remplir l'espace demandé à la résolution demandée.
Cependant, la mise à l'échelle d'une image matricielle en lui faisant contenir plus de pixels n'ajoute pas d'informations réelles et ne fait qu'ajouter une "qualité" fictive. Elle peut regarder plus agréable à l'œil humain si votre algorithme de mise à l'échelle est "bon". En revanche, si vous vous contentez de doubler, tripler ou quadrupler les pixels existants, comme le font certains algorithmes simples, l'aspect sera laid.
Pour les images matricielles,
le réglage du DPI n'est pertinent que dans le contexte de l'utilisation de l'Internet. l'impression o affichage il. En effet, les imprimantes et les écrans ont des résolutions fixes. C'est pourquoi il est...
- ...un pilote d'imprimante ou
- ...une application de traitement d'images qui prend en charge l'impression
doivent savoir.
Et Documentation d'ImageMagick est en plein accord avec moi :
-density width
-density widthxheight
Définir la résolution horizontale et verticale d'une image pour le rendu aux appareils.
Pour les images vectorielles ou les formats de fichiers
(tels que PDF ou PostScript), le paramètre DPI est toutefois extrêmement important dans le contexte de l'utilisation de l'Internet. tramage les. Un DPI plus élevé transfère plus d'informations sur l'image dans le format de trame et préserve donc plus de détails de la qualité originale réelle. Lors de la conversion d'une image vectorielle d'une taille donnée en mm
, cm
o inch
dans une trame avec un DPI plus élevé se traduira directement par un plus grand nombre de pixels totaux dans l'image.
De plus, ImageMagick ne prend pas en charge l'"impression" en tant que telle. Au lieu de cela, ImageMagick...
- ...convertit les fichiers d'un format matriciel donné vers d'autres formats matriciels ;
- ...ou il réduit ou augmente la taille des images matricielles ;
- ...ou il modifie les valeurs de couleur selon un algorithme spécifique ;
- ...ou il recadre les images, les superpose, les inverse, les reflète ;
- ...et autres....
...mais pour imprimer les images manipulées, vous devez utiliser un autre programme.
Certains formats d'image (TIFF, PNG,...) permettent de stocker un paramètre DPI en interne dans leurs métadonnées.
Mais il ne s'agit que d'un attribut de type "hint" qui ne modifie pas l'image matricielle sous-jacente. C'est la raison pour laquelle vous avez fait cette découverte :
"Lorsque je vérifie le dossier, il reste inchangé.
Cet "indice" peut éventuellement être évalué automatiquement par les pilotes d'imprimante ou par des programmes de création de pages tels que LaTeX. En l'absence de tels "indices" DPI (ou s'ils ne se présentent pas de la manière attendue par LaTeX), LaTeX devrait toujours être en mesure de commander le rendu d'une image donnée sur une page de la manière attendue - il suffit d'un peu de code LaTeX plus explicite autour de l'image !
Certains autres formats d'image (JPEG( ?), BMP,...) ne permettent même pas de stocker un indice DPI dans leurs métadonnées internes.
Gimp ne prend donc en charge ce que vous voyez qu'il fait avec "Picture -> Printing Size" que parce qu'il veut imprimer une image. Avec ImageMagick, il n'est pas possible d'imprimer.
Continuez à faire ce que vous voulez avec Gimp lorsque vous imprimez. Cela n'a pas de sens avec ImageMagick.
Voir aussi cet extrait supplémentaire de la documentation de l'IM qui explique le même sujet avec des mots différents.
Il ne reste donc plus que ceci :
- Si vous "manipulez" votre image avec Gimp, puis intégrez le résultat dans LaTeX, la page ressemble à ce que vous attendez d'elle.
- Si vous "manipulez" votre image avec ImageMagick, puis intégrez le résultat dans LaTeX, la page se présente comme suit pas comme vous l'attendez.
Veuillez fournir les éléments suivants pour résoudre le problème susmentionné :
- la version exacte de votre installation d'ImageMagick (sortie complète de
convert -version
y convert -list configure
) ;
- (un lien vers un) échantillon d'image original ;
- (un lien vers la) même image manipulée par Gimp ;
- (un lien vers la) même image manipulée par ImageMagick.
Nous pourrons ainsi contribuer à résoudre le problème.
Mais attention : il s'agit d'un problème différent de celui posé par votre sujet/titre actuel : "Je veux changer le DPI avec Imagemagick sans changer la taille réelle de l'octet des données de l'image.
Mise à jour
Puisqu'il s'agit encore Si certains lecteurs ne comprennent pas ce que j'ai noté ci-dessus, voici une nouvelle tentative...
Tout ce qui est noté comme Résolution o Densité à l'intérieur d'un fichier image, est un attribut de métadonnées . Il n'a aucune influence sur le nombre de pixels réels décrits par le fichier et n'est absolument pas pertinent à cet égard. Il s'agit simplement d'un indice qu'un dispositif d'impression ou de rendu ou une application peut ou non à suivre lors de l'impression, du rendu ou de l'affichage de l'image.
À cette fin, il s'agit simplement de quelques chiffres stockés dans le fichier image. Ces nombres indiquent aux périphériques de sortie tels que les imprimantes et les écrans combien de points (ou pixels) par pouce l'image doit être affichée. Pour les formats vectoriels tels que PostScript, PDF, MWF et SVG, il indique l'échelle des pixels pour dessiner toutes les coordonnées du monde réel utilisées par l'image.
Par exemple, lorsque la valeur de résolution notée par ImageMagick dans les métadonnées de l'image est la suivante PAS honoré par une application est Adobe Photoshop. Photoshop stocke ses indications sur la résolution d'impression ou d'affichage souhaitée dans un profil propriétaire nommé 8bim . ImageMagick ne touche pas à ce profil, même lorsqu'on lui demande d'écrire un changement de résolution dans les métadonnées d'un fichier image. Photoshop, en revanche, ignorera toutes les indications de résolution stockées par ImageMagick dans le champ de métadonnées standard défini à cet effet, dès qu'il verra son propre profil de résolution. 8bim profil.
L'OP aurait dû choisir le titre :
- Je souhaite modifier le DPI (indice de résolution des métadonnées) avec ImageMagick sans modifier le nombre réel de pixels dans l'image.
afin d'éviter tout malentendu...