Question Peut zipper un fichier le casser?


Je viens de demander à quelqu'un de m'envoyer un zippé psd fichier.

Ils ont refusé, citant que compresser un fichier peut casser les polices.

J'ai supposé que la compression d'un fichier était parfaitement réversible, d'où son utilisation courante. Je pense que l'autre personne est incorrecte.

Y a-t-il une vérité sur la compression des contenus de ses fichiers?


86
2018-05-13 02:34


origine


Peut-être que l'autre personne a confondu la compression d'un fichier (sans perte) avec la compression JPEG (avec perte), ce qui peut rendre le test moche. - Matt H
Je sais que j’ai déjà eu des problèmes de compatibilité avec les fichiers zip, car le format de fichier est utilisé sur toutes les plates-formes ... - jokoon
J'ai certainement rencontré certains cas «pathologiques» où les installations intégrées de Winrar et de WinXP ont toutes deux échoué des dossiers (des dizaines de milliers dans un seul fichier zip). C'était il y a 4-5 ans, et le seulement La solution que je pouvais trouver à l'époque était d'utiliser 7-zip. Du mieux que je puisse me souvenir, même 7-Zip ne pouvait pas réussir décompresser fichiers créés par les autres routines, ce qui suggère que la panne était dans la compression, pas la décompression. De toute évidence, j'ai choisi d'utiliser 7-zip pour les deux côtés du système de production. - FumbleFingers
@jokoon: Je ne suis pas sûr que ce soit valable de parler d'un format de fichier ... utilisé sur toutes les plates-formes. Il existe plusieurs formats internes différents utilisés dans les fichiers zip, et il est toujours possible qu'une archive puisse être créée par une routine d'emballage en utilisant un format imparfaitement pris en charge par une autre routine que vous utilisez au moment du déballage. - FumbleFingers
@Tâtonner; Cependant, tout archiveur décent devrait détecter le changement de hachage et signaler l'opération comme un échec - ne pas laisser un fichier brisé traîner. - Phoshi


Réponses:


Non, compresser un fichier ne peut pas le casser. Si votre fichier zip n'est pas corrompu, il reproduira le fichier identique lorsqu'il sera décompressé.

Dans ce cas, la différence entre les polices installées sur les deux systèmes différents peut entraîner des problèmes, mais cela n’a aucun rapport avec le processus zip / unzip.


134
2018-05-13 02:38



C'est ce que je soupçonnais. Merci pour votre réponse. - alex
De plus, certains formats zip prennent en charge la redondance, ce qui signifie que le stockage sous forme de plus sûr que de stocker le fichier en clair. - BlueRaja - Danny Pflughoeft
Vous ne devriez pas dire non rapidement, il y a beaucoup d'implémentations de fichiers compressés / décompressés là-bas, en comptant tous les systèmes d'exploitation existants et d'autres choses qui peuvent faire des fichiers zip, je ne serais pas surpris . - jokoon
@jokoon: alors ces fichiers seraient corrompus, ce qu'il exclut explicitement - mbx
-1 En théorie, cela est vrai, mais en pratique, les polices Mac sont décompressées sur un PC de 0 octet. Cela est dû à la création d'une fourchette de ressources. Essayez-le pour vous et voyez. - Django Reinhardt


Dans général utilisation, zip est sans perte (en supposant une mise en œuvre sans bug), mais il y a un scénario qui pourrait s'appliquer à la perte de données: NTFS Alternate Data Streams. Cette fonctionnalité peu utilisée permet un seul fichier avoir plusieurs indépendant ensembles de contenus. La plupart des codes ne verront jamais que le anonyme flux, mais d'autres peuvent exister.

Alors; si un programme a décidé de stocker les données dans un flux de données alternatif NTFS, votre client zip ne verra pas cette partie (il doit le demander explicitement, et RAR est le seul qui le fait actuellement).

Mais pour souligner: ceci est utilisé très rarement, et pas normalement avec des choses comme le PSD. Je soupçonne que votre ami / associé a tout simplement tort.


80
2018-05-13 06:28



Wow, c'est une connaissance totalement nouvelle pour moi. - kizzx2
Nouveau pour moi et bizarre. Quand est-ce qu'un fichier n'est pas un fichier? Lorsque son contenu change à volonté. J'ai entendu parler de pires problèmes, mais pas beaucoup. - msw
@msw - ils ne mutent pas à volonté; simplement - il peut y avoir plus d’un morceau de données associé à un seul enregistrement de fichier. Presque toujours il y en a exactement un (il est très rarement utilisé), mais ... - Marc Gravell♦
Retourner à SO! Trop technique! (je plaisante bien sûr;) - Byron Whitlock
Et à l'autre extrémité du spectre, nous avons les personnes se plaignant de l'inclusion forcée de métadonnées spécifiques au système dans les archives. - Daniel Beck♦


Il existe des circonstances dans lesquelles une police Mac peut ne pas être identique si elle est compressée puis décompressée. Cela peut ne pas le casser, mais contrairement à certaines déclarations ci-dessus, le processus peut ne pas fournir un fichier identique.

Les circonstances sont discutées ici:

http://xahlee.org/UnixResource_dir/macosx.html

http://ask.metafilter.com/59789/How-to-email-my-font

Mais en bref:

  1. Si ce sont des polices beaucoup plus anciennes qui contiennent des fourchettes de ressources et que l'utilisateur dispose d'une version antérieure de Mac OS X, généralement 10.4 ou antérieure. Les polices héritées comme celle-ci fonctionnent sous OS X, mais elles étaient à l’origine conçues pour OS 9 et les versions antérieures du système d’exploitation Macintosh. Il est tout à fait probable (et, selon mon expérience, commune) que certaines personnes utilisent encore une bibliothèque de polices construite il y a 20 ans. Ce sont généralement des artistes et des types de directeurs artistiques. Par exemple, j'ai quelques polices avec des dates de création de 1993 et ​​des centaines avec des dates de création de 1998, la plupart avec des fourchettes de ressources. Certes, j'aurais dû les convertir en formats plus modernes ou les arrêter, mais avouons-le: une fois que vous achetez la bibliothèque de polices Adobe, vous ne voulez plus jamais l'acheter. Au cours de mes années de travail avec des directeurs artistiques dans le domaine de la publicité, j'ai appris à respecter le dossier des polices comme s'il s'agissait d'un journal, d'un livre ordinaire ou d'un surmoi de directeurs artistiques.

  2. Certaines métadonnées seront supprimées dans certaines versions du système d'exploitation. Les métadonnées peuvent être des éléments ajoutés au champ d'information du fichier. Cela ne cassera pas le fichier, mais encore une fois, le zip-unzip décompressé ne produira pas un fichier identique.

PS: Je suppose ici que si l’on zippe un fichier PSD pour le remettre à une autre personne, qu’il n’a pas été aplati et que la police n’a pas été convertie en contour, ce qui signifie que les fichiers de police seront également livrés avec le PSD. afin que la personne à la réception puisse apporter ses propres modifications au fichier. C'est une pratique courante.


33
2018-05-13 13:22



+1 - Je voudrais pouvoir donner suffisamment de points pour le pousser en haut de la pile. Mac OS possède des variantes de police Type 1 et TrueType dans lesquelles les données de police sont stockées dans la fourchette de ressources. Alors que les outils zip / unzip natifs du système d'exploitation peuvent gérer cette situation de manière harmonieuse, tous les outils (en particulier les outils de ligne de commande portés sur OS X) ne le seront pas. Ce qui est pire, ne pas compresser les polices et essayer de les envoyer par courrier électronique ou FTP volonté Cassez-les! - afrazier
Mais le problème ici semble être lié à la façon dont vous les compressez, pas à votre capacité. Il semble que vous ayez besoin d'un programme qui comprenne les fourchettes de ressources et que vous devez savoir comment l'utiliser. Est-ce que je lis bien? - uSlackr
@uSlackr, c'est vrai, mais le problème persiste à la réception. Si l'archive est ensuite déplacée Windows, vous obtiendrez probablement une pile de fichiers de polices inutiles car, bien que Windows (en particulier NTFS) autorise plusieurs flux de données dans un fichier, les polices Windows ne fonctionnent pas de cette façon. Le fichier PSD lui-même est susceptible d'être portable entre Mac et Windows, cependant. - RBerteig
+1 - à titre d'exemple, sauvegardez vos polices Mac sur un lecteur réseau et voyez leur taille à partir d'un PC Windows ou Linux - 0 octet! C'est la chose fourchue de ressources qui confond l'idée de «ça marche». - ʍǝɥʇɐɯ
Oui, il est bien connu dans mon secteur que les polices Mac ne sont pas bien compressées. Souvent, un utilisateur de PC les décompresse de 0 octet. - Django Reinhardt


ZIP utilise la somme de contrôle pour vérifier si le fichier décompressé est exactement le même qu'avant l'emballage.

Donc, si cela a été changé pour une raison quelconque (archive cassée, par exemple) - il ne serait même pas décompressé.


14
2018-05-13 02:37



sans importance puisque zip utilise la compression sans perte (ou «stockage», la compression pourrait être désactivée). le check-check est seulement pour être en mesure de fournir des commentaires si quelque chose ne va pas. - akira
Pardonnez le pédantry, mais ZIP n'utilise pas de somme de contrôle - il utilise un contrôle de redondance cyclique 32 bits (alias CRC-32) qui détecte une gamme d'erreurs beaucoup plus large. - Bevan
Le terme "somme de contrôle" est clairement devenu un peu plus large en termes de signification que sa définition initiale si les gens peuvent [et ils le font] appeler les résultats de fonctions de hachage cryptographiques "sommes de contrôle". - Random832


Seulement s'ils font quelque chose d'idiot comme faire une conversion en mode texte, ou s'il y a un zip / unzip quelque part qui se confond avec un zip incorporé. (De tels bugs avoir a eu lieu dans le passé - ce qui signifie peut-être il y a 10 ans.)


9
2018-05-13 02:37





Zip utilise un algorithme de compression sans perte pour garantir que les données que vous recevez sont identiques aux données que vous avez insérées.

(BTW, d'autres technologies comme jpg, mpeg, mp3, utilisent des techniques avec compression pour compresser avec la théorie que nos yeux et nos oreilles ne sont pas si sensibles)


4
2018-05-13 03:07





La seule vérité que je puisse voir dans la déclaration "compresser les polices" consiste à utiliser une version ou une option "compressée" que vous pouvez activer dans le programme qui crée ces fichiers. Cette option gère différemment les polices.

Utiliser n'importe quel programme zip devrait être correct sauf si c'est bogué.

En réponse à Marc, il existe également des problèmes de systèmes de fichiers sur les systèmes de fichiers EXT si vous essayez de compresser une structure de répertoires contenant des liens logiciels et matériels dans un format compressé qui ne les comprend pas. d'un .zip là-bas). De plus, compresser des liens logiciels avec des chemins relatifs, puis les décompresser ailleurs ne fonctionnera évidemment pas, mais ce n'est pas la faute du programme zip.


0
2018-05-13 09:04





S'ils ont déjà eu ce problème (compresser la corruption d'un PSD), leur logiciel de compression est défectueux, ils n'incluent pas tous les fichiers dont ils ont besoin sur le PSD et / ou leurs ordinateurs sont infectés par un virus.

Je leur demanderais s'ils ont eu des corruptions similaires en déplaçant des fichiers sur des disques USB, juste pour se défaire de cette dernière option.


0
2018-05-13 15:51