Xcode 4로 앱 빌드-PNG 이미지에 대한 오류가 항상 표시됨


88

Xcode 4로 앱을 빌드하면 항상 다음 오류 메시지가 표시됩니다.

CopyPNGFile /Users/michaelchen/Library/Developer/Xcode/DerivedData/iMusicBox-boeawugacmhacbdtyymnprzfobyq/ArchiveIntermediates/iMusicBox/InstallationBuildProductsLocation/Applications/iMusicBox.app/list_cell.png Images/list_cell.png
    cd /Volumes/WORK/Works/iMusicBox
    setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    "/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/PrivatePlugIns/iPhoneOS Build System Support.xcplugin/Contents/Resources/copypng" -compress "" /Volumes/WORK/Works/iMusicBox/Images/list_cell.png /Users/michaelchen/Library/Developer/Xcode/DerivedData/iMusicBox-boeawugacmhacbdtyymnprzfobyq/ArchiveIntermediates/iMusicBox/InstallationBuildProductsLocation/Applications/iMusicBox.app/list_cell.png

/Volumes/WORK/Works/iMusicBox/Images/list_cell.png에서 알파를 확인하는 동안 pngcrush에 libpng 오류가 발생했습니다. 이미지 데이터가 충분하지 않습니다.

하지만 Xcode 3.2에서는 괜찮습니다-왜?

답변:


191

그것을 발견!!

PNG 파일을 NOT INTERLACED 로 저장해야 합니다 . 포토샵 (또는 유사)에서 파일을 열고 다른 이름으로 저장 한 다음 "인터레이스되지 않음"을 선택합니다.

제 경우에는 효과가 있습니다.

도움이 되었기를 바랍니다


에바, 당신 말이 맞아요, 고마워요! 나는 pixelmator에서 웹에서 내보내고 괜찮습니다.
Michael Chen

6
남자! 감사합니다! 그리고 너! 이 대답을 보았을 때 나는 옥상으로 가서 멍청한 노트북을 던져 버리려고했습니다. 감사합니다. 이제 잠을 잘 시간 이네요.
Sahil Chaudhary 2012

7
제 경우에는 Xcode에서 동일한 파일에 대한 여러 참조가 있음이 밝혀졌습니다 (이는 파일을 두 번 이상 처리하려고했음을 의미합니까?) 중복 참조를 제거하면 문제가 제거되었습니다.
Peter Johnson

내 png를 NOT INTERLACED로 저장했지만 처음 빌드 할 때 여전히이 오류가 발생했지만 두 번째 빌드 할 때이 오류가 사라졌습니다 ...
Jing

23

이는 프로젝트 파일에 이미지 파일에 대한 항목이 여러 개있을 때 발생합니다. 이유는 모르겠지만 모든 항목을 제거하고 프로젝트를 다시로드 한 다음 파일을 다시 추가했습니다.


흠, 더블 렛이있는 것과 동일한 컴파일러 메시지를 받았습니까?
brainray

8
이것도 제 문제였습니다. 문제를 일으키는 내 실행 이미지. 기본적으로 XCode는 내 지원 파일 폴더에 검은 색 이미지를 추가 한 다음 더 추가했지만 검은 색 이미지는 사라지지 않았습니다. Launch 이미지 홀더가 검은 색이면 프로젝트에 해당 이미지가 있음을 의미합니다. 검은 색 이미지를 제거하고 올바른 이미지를 가져 오십시오. 그랬고 이제 모든 것이 다시 잘되었습니다!
dbDev 2012

15

Target의 "Build Phase"-> "Copy Bundle Resources"에 중복 항목이 없는지 확인하십시오.


프로젝트에 이미지가없는 다른 사람에게는이 솔루션이 효과가 있었던 모든 답변 중 유일한 솔루션이었습니다. 이미지가 없지만 Facebook SDK를 사용 중이며 빌드 단계-> 번들 리소스 복사에서 빨간색으로 표시된 항목을 모두 삭제해야했습니다.
Jeff Grimes

9

빌드 설정의 패키징 섹션에있는 "PNG 파일 압축"설정일 수 있습니다.

이 오류를 "아니요"로 전환하여 해결했습니다.


6

제 경우에는 손상된 png가 포토샵에서 열리지 않는다는 것을 발견했습니다. 미리보기에서 열고 psd로 저장 한 다음 포토샵에서 다시 저장했습니다 (다른 이름으로 저장-> png-> 비 인터레이스). 이제 xcode 4에서 잘 컴파일됩니다.


5

사용하여이 * .PNG 파일을 찾아 다시 저장하려고 "미리보기" 정확한 수를 : 파일 - 내보내기를 ... - "PNG로 저장" . "웹용으로 저장"모드로 Photoshop에서 이미지를 저장하면이 이미지가 특수 압축 (LZW) 으로 저장 될 때 발생하는 것 같습니다 . 그게 다야, 행운을 빕니다!


3

PNG 파일 list_cell.png이 손상된 것 같습니다 . Xcode 4는 여러 영역에서 Xcode 3보다 더 많은 검사를 수행하고 항상 프로젝트에 숨어있는 문제를 보여줍니다.

이미지 편집기에서 PNG 파일을 열고 다시 저장해 보셨습니까?


1
예, 이미 미리보기에서 열었습니다. 괜찮습니다. 다시 저장하려고하는데 오류가 계속 표시됩니다.
Michael Chen

미리보기에서 열지 마십시오. 이미지의 오류를 해결하려고 할 수도 있습니다. 이미지를 편집하고 새 버전의 이미지를 저장할 수있는 응용 프로그램으로 엽니 다.
Codo 2011 년

3

제 경우에는 폴더 / 파일 이름에서 빈 "스페이스 키"를 제거하여 문제를 해결했습니다.

이것이 누군가에게도 효과가 있기를 바랍니다.


2

내 것은 인터레이스되지 않았지만 pngcrush에서 이상한 오류가 계속 발생했습니다. 결국 디스크뿐만 아니라 XCode를 통해 파일을 삭제했습니다. 나는 그것들을 하나씩 XCode에 드롭 앤 드롭하여 하나씩 추가하고, 문제가있는 것을 공격 할 것으로 예상했다. 나는 결코하지 않았다. 내 결론은 파일 시스템이 아닌 XCode에서 파일을 조작해야한다는 것입니다.


2

xcode 4.5의 경우 문제는 터미널에 권한을 부여하여 해결됩니다.

chmod -R + rw / yourprojectpath / yourprojectfolder

이것은 파일 공유로 파일을 잠그기 때문에 최상의 솔루션이 아닐 수 있습니다. 그러나 서두르면 할 것입니다.


2

PNG에 대한 참조를 제거하고 프로젝트에 다시 추가해야했습니다. 누구든지 더 나은 솔루션이 있습니까?


1

png 파일을 제거한 다음 Targets-> AppName-> Build Phases-> Bundle Resources로 이동하여 거기에서 파일도 제거해야했습니다.


1

같은 오류가 발생했습니다. 실제로 jpeg가있는 내 png가 나왔습니다. XCode는 제대로 표시했지만 iOS 기기는 표시하지 않았습니다. jpg를 png로 저장하여 해결했습니다.


1

이 오류는 리소스에 너비 또는 높이가 5 픽셀 미만인 이미지가 있고 해당 이미지의 크기를 조정하려고하기 때문에 발생합니다. 모든 이미지를 최소 5 픽셀로 설정하면 오류가 사라집니다.


이것이 나에게 일어난 일이며, 이것이 고쳐졌습니다.
재활용 강철


0

제 경우에는 폴더에서 모든 PNG 파일을 제거한 다음 이미지를 Xcode UI (Launch Images 아래)로 드래그 앤 드롭 하지 않고 파일을 다시 추가해야했습니다 . 후자는 제 경우에 핵심이었습니다. 먼저 파일을 폴더에 추가 한 다음 UI로 드래그하면 복제가 발생하여 모든 것을 망쳤습니다. 다른 것이 당신을 위해 일하지 않는다면 그것을 시도하십시오.


0

나는 같은 문제가 있었다. 중복 사진을 제거하여 해결했습니다. 다른 폴더에서 확인하십시오. 그게 내 문제였습니다.


0

이 오류를 해결했는데 프로젝트에 넣은 후 이미지의 이름을 바꿀 때 나타납니다. 따라서이 문제를 해결하려면 먼저 현재 이미지를 삭제하고 파인더에서 파일 이름을 바꾼 다음 나중에이 이미지를 프로젝트에 복사해야합니다.


0

도움이 될 수 있습니다. Alpha Channel첨부 된 스크린 샷과 같이 속성을 확인하십시오 . 그것 YESNO.

여기에 이미지 설명 입력


0

도움이 될 수 있습니다. Alpha Channel첨부 된 스크린 샷과 같이 속성을 확인하십시오 . 그것 YESNO.

여기에 이미지 설명 입력


0

Eva Madrazo가 정답을 올렸지 만 (적어도 인터레이스 된 PNG 문제에 대해서는), 제가 한 것처럼 여러 이미지에서이 문제가있는 사람들에게는 mogrify를 재귀 적으로 사용하여 모든 파일을 한 번에 인터레이스를 해제 할 수 있습니다.

find ./ -name "*.png" -exec mogrify -interlace none {} \;

인터레이스 방법을 변경해도 이미지 품질에는 영향을 미치지 않지만 이미지 크기에는 영향을 미치며 어떤 것도 더 작은 이미지를 제공하지 않습니다.

Mogrify는 ImageMagick과 함께 제공되며 homebrew와 함께 설치할 수 있습니다.


0

오류:

/ Volumes / Mac OS / RDC / Workpot / RestApp / RestApp / default1024_768.png 읽는 동안 pngcrush에 libpng 오류가 발생했습니다. PNG 파일이 아닙니다 ..

해결책:

  1. PaintBrush 도구 에서 "default1024_768"파일을 열고 동일한 이름으로 saveAs PNG 파일을 열었습니다 .
  2. Xcode 프로젝트의 아이콘 파일을 대체했습니다.
  3. 정리-> 빌드

그게 매력 같은 모든 작업

이것이 누군가를 도울 수 있기를 바랍니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.