Je dois gérer des fichiers JPEG CMJN extraits d'une source PDF. Les fichiers PDF ont été créés avec Photoshop.
Le problème est que Photoshop stocke les données JPEG CMJN au format PDF / EPS en utilisant des valeurs "normales", tandis que dans les fichiers JPEG autonomes, il stocke les valeurs inversées. Ainsi, lorsque les flux DCTDecode sont extraits par octets et écrits sur le disque, les fichiers JPEG résultants apparaissent inversés.
(L'extraction proprement dite est effectuée par un utilitaire interne, qui extrait simplement les octets du flux DCTDecode et les écrit, non modifiés, dans un fichier se terminant par .jpg
Il s'agit essentiellement d'un copier-coller binaire. Les PDF sont disponibles pour le cas échéant.)
Comme les images doivent rester dans leur format JFIF, existe-t-il un moyen de placer un marqueur dans le .jpg
fichier extrait pour que Photoshop l'ouvre avec l'encodage approprié? Le processus doit être sans perte (ne pas impliquer de codage entropique supplémentaire).
Les fichiers JPEG contiennent déjà le APP14
marqueur et sa suppression n'a aucun effet.
Voici une citation des libjpeg
documents:
"... il semble qu'Adobe Photoshop écrit des données inversées dans des fichiers JPEG CMJN: 0 représente une couverture d'encre de 100%, plutôt que 0% d'encre comme prévu. ... Photoshop 3.0 [et plus récent] ... écrit YCCK non inversé dans les fichiers EPS / JPEG ... (Mais la polarité des données utilisée dans les fichiers JPEG nus ne changera pas ...) "
Réponses:
Ici, sur les forums Adobe, c'est un même problème avec des résultats réussis: http://forums.adobe.com/message/4271028
Peut-être que la balise APP14 n'est pas correcte? Il y a plus de balises APP14 que d'être simplement là. Sur les balises JPEG: http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/JPEG.html#Adobe
Balises Adobe JPEG
Le segment "Adobe" APP14 stocke les informations de codage d'image pour les filtres DCT. Ce segment peut être copié ou supprimé en tant que bloc à l'aide de la balise Extra "Adobe", mais notez qu'il n'est pas supprimé par défaut lors de la suppression de toutes les métadonnées car cela peut affecter l'apparence de l'image.
Mais cela pourrait ne pas aider, je me souviens que quelqu'un a déclaré que ces marqueurs privés ne sont pas destinés à guider les lecteurs PDF, mais que les tableaux de décodage appropriés devraient l'être.
La magie semble être
qui inverserait le mappage des couleurs. (Je suppose que c'est un indicateur dans libjpeg, quelque chose de similaire devrait être disponible dans n'importe quel outil similaire.) Les tableaux de décodage sont courants dans les PDF selon la référence PDF ici: http://partners.adobe.com/public/developer/en/pdf /PDFReference.pdf
Je n'ai aucune idée si vous pouvez ajouter ces tableaux de décodage dans des fichiers JPEG PDF ou si vous devez les ajouter au traitement de flux de votre outil interne. Je n'ai pas d'exemple de PDF sur lequel travailler, donc je ne peux pas faire d'autres recherches (aussi, la référence est énorme - tl; dr - mais vous devrez peut-être ..)
la source
/Decode
sur[1 0 1 0 1 0 1 0]
.(Avertissement: je n'ai pas d'image pour tester - si vous pouvez partager une telle image par un site de partage de fichiers, je peux tester et apporter des ajustements pour répondre si nécessaire).
Le problème est probablement lié au profil ICC manquant.
Pour intégrer (ou convertir) un tel profil, vous pouvez utiliser f.ex. ImageMagick pour effectuer ces pertes sans affecter les données.
ImageMagick:
http://imagemagick.org/script/index.php
L'utilitaire de ligne de commande peut être utilisé comme ceci pour incorporer un profil ICC:
Convertissez-le éventuellement en espace colorimétrique RVB natif.
Voir ici pour plus de détails:
http://www.imagemagick.org/Usage/formats/#color_profile
Vous pouvez télécharger des profils ICC ici:
http://www.adobe.com/support/downloads/detail.jsp?ftpID=4074
la source