2014-02-17 5 views
0

Windows 스토어 앱이 있습니다. 해당 페이지 중 하나를 인쇄하고 싶습니다. 웹에서 검색했는데 매력있는 장치에서 프린터를 선택해야하지만 나열된 것은 없습니다. 설정에서 기기를 들여다 보면 프린터가 추가 된 것을 볼 수 있습니다 (네트워크를 통해 연결되었지만 전화가 연결되지 않아도 아무 반응이 없음). 기기에서 "앱에서 아무것도 보낼 수 없습니다"라는 메시지가 나타납니다. 어떻게 프린터를 매력에 추가 할 수 있습니까? 거기에 C#으로 인쇄 할 수있는 명령이 있습니까?Windows에서 인쇄 앱 저장

+0

이 링크가 도움이 될 수도 있습니다. http://social.msdn.microsoft.com/Forums/windowsapps/en-US/3e23d1ca-9a4d-4677-b2d9-ea5b48f7c9a2/how-to-enumerate-a-network-printer -in-metro-apps? forum = tailoringappsfordevices –

+0

BenH에게 감사하지만 프린터를 enumarating에 관심이 없습니다. 내가 매력에 장치에 프린터를 표시하거나 인쇄 코드를 작성 – eomer

답변

0

http://msdn.microsoft.com/en-us/library/windows/apps/hh465196.aspx를 참조하십시오

앱은 사용자가 인쇄 할 수하고자하는 응용 프로그램의 각보기에서 인쇄 계약에 등록하여 Windows 인쇄에 액세스합니다. 인쇄 계약을 등록하면 PrintManager 객체를 가져 와서 PrintTask 객체를 만들고 PrintDocument 이벤트를 처리하는 것을 의미합니다.

+0

그게 내가 뭘했는지. 그것은 미리보기에 대한 이미지를로드하려고하면 예외를 throw합니다. "값이 예상 범위 내에 들지 않습니다.", 무작위로 한 번씩 null 개체가 있습니다. 이것은 구현하려고 시도한 샘플입니다. 거대합니다. – Redhead

0

UI에 나열된 프린터를 찾을 수없는 경우 드라이버를 업데이트해야합니다.

Page 또는 기타 FrameworkElement을 인쇄하려면이 라이브러리 Windows.Graphics.Printing.PrintManager이 필요합니다.

나는이 example을 권하고 싶습니다. 예를 따라하면 Page을 인쇄 할 수 있습니다.

Page으로 표시된 크기를 조정하려면주의하십시오. 이 경우이 페이지의 인쇄물을 초기화하고 크기를 조정하거나 RenderTargetBitmap으로 렌더링해야합니다. Page이 미리보기에 올바르게 표시되지 않거나 누락 된 부분이있을 수 있으므로이 방법으로도 도움이됩니다.