2009-11-14 2 views
1

PDF 파일의 경우 뷰어 역할을하는 응용 프로그램이 있습니다. 내 응용 프로그램이 PDF 파일을 편집하지는 않지만 사용자가 PDF 파일을 저장할 수 있습니다 (응용 프로그램이 처리하는 워크 플로에 비해 크기가 너무 크거나 복잡한 경우). SaveDocumentAs: 메서드를 호출 할 때"뷰어"역할이있는 응용 프로그램에 쓰기 가능한 유형을 정의하려면 어떻게합니까?

, 나는 다음과 같은 경고를 얻을 :

정의 적절한 쓰기 유형하지 않고 문서를 저장하려고합니다.

나는 편집기에 내 응용 프로그램의 역할을 변경하여이 경고를 피할 수 있지만, 응용 프로그램이 시작하면 빈 PDF 문서를 만들려고 시도로, 내 응용 프로그램 편집기를 만들고 싶어하지 않습니다.

내 애플리케이션이 인 것으로 선언하지 않고이 경고를 피하는 방법 PDF 파일 용?

답변

4

문서 메커니즘을 사용하여 저장하려면 편집자 역할이 있어야합니다. 이해합니다.

-applicationShouldOpenUntitledFile: 

그 위임 방법에 대한 귀하의 대답은 물론 "NO"가 될 것입니다 : 발사에 빈 문서를 만들지 않고 에디터 역할을하는 한 가지 간단한 방법은 NSApplication의 위임 방법을 사용하는 것입니다.

+0

즉, Randall, 앱 *은 편집자입니다. 새 문서를 만들 수 없습니다. NSDocumentController를 서브 클래스 화하고 메소드를 오버라이드하여 사용자가 새 PDF 문서를 명시 적으로 * 만들지 못하게해야합니다 (응용 프로그램에서 아무 것도 만들 수없는 경우 새로 만들기 메뉴 항목을 제거하는 것 이외에). –

+0

AppleScript는 모든 문서 기반 응용 프로그램에 기본적인 "새 문서"기능을 제공하기 때문에 사실이라고 생각합니다. 맞습니까? 따라서 메뉴를 제거하는 것으로는 충분하지 않습니다. –

+0

사용자가 새 문서를 만들 수있는 모든 방법을 제거했지만 두 번 클릭하여 응용 프로그램을 열면 제목이없는 새 문서가 만들어집니다. 나는 사용자가 응용 프로그램을 스크립팅하는 것에 대해 걱정하지 않습니다. 응용 프로그램을 수행 할 시점에 있다면 그렇게하지 않는 방법에 대해 충분히 알고 있습니다. 답변 해주셔서 감사합니다. – Randall

관련 문제