2016-10-25 2 views
0

C/C++에서 PS (사후 스크립트) 파일을 .PDF 파일로 변환 할 수있는 라이브러리/도구가 있습니다 (독점 운영 체제, windows, no linux)?임베디드 플랫폼에서 프로그래밍 방식으로 PS에서 PDF 만들기

나는 우리 OS에 포팅 될 수있는 일종의 라이브러리를 찾고 있었다. 기본적으로 Ghostscript 만 찾았지만 면허가있는 문제는 제대로 이해하면 우리 소스를 공개해야 할 것입니다 ...

조금 더 많은 배경, 우리는 사용자가 쉽게 볼 수있는 형식을 찾고 있습니다. 우리는 이미 다른 이유로 (프린터) PS로 출력했습니다. 그러나 이제 우리는이 출력을 파일 자체로 제공하고자하므로 가능한 파일 형식을 찾으려고합니다. 우리는 PS 자체를 고려하고 있지만 일반적인 사용자에게는 PS 뷰어가 없으므로이를 PDF로 변환 할 수있는 항목을 찾으려고합니다. 아마도 대체 질문이 될 수 있습니다. PS에서 쉽게 얻을 수있는 다른 형식이 있습니까? 예를 들어 "일반"사용자가 볼 수 있습니까?

+0

HTML이 명백한 솔루션 또는 아마도 SVG처럼 보입니까? – barny

+0

임베디드 장치에서이 작업을 수행해야합니까?파일을 오프라인에서 PDF로 변환하여 장치에서 쉽게 변환 한 파일을 사용할 수 있습니까? – teroi

+0

@barny Hm HTML은 내가 생각하기에 적합 할 것이지만, 그런 도서관이 있습니까? – Sil

답변

1

Ghostscript 용 AGPL 라이센스는 원본을 열어야합니다 (예). 그러나 Ghostscript는 이중 라이센스이며, AGPL 라이센스 외에도 상용 라이센스를 구입할 수 있습니다. 상용 라이센스를 구입하면 소스 코드를 열 필요가 없습니다.

PDF로 변환하는 대신 Ghostscript를 사용하여 PostScript를 비트 맵으로 렌더링 할 수 있습니다. 일반적으로 그 주위를 감싸기 쉽습니다.

PDF 파일을 만들고 포스트 스크립트를 렌더링 할 수있는 포스트 스크립트 인터프리터에 대한 상업용 라이센스를 제공하는 다른 회사가 있다는 점을 지적해야합니다. 어도비는 분명 하나, 글로벌 그래픽도있다.

최근에는 현장에 남아있는 플레이어가 많지 않습니다. PostScript를 다루고 싶다면 AGPL 또는 유사한 라이센스가 적합하지 않을 경우 상업용으로 이동해야합니다.

+0

관리자가 상용 라이센스로 이동하는 것보다 다른 형식으로 전환 할 가능성이 높기 때문에 이런 경우가 될지 걱정됩니다. 그러나 어쨌든 좋은, 답변 주셔서 감사합니다. – Sil

2

포스트 스크립트를 다른 것으로 변환하는 주된 복잡성은 실제로 포스트 스크립트는 프로그래밍 언어이며 PostScrip 파일은 실제로 프린터에서 실행되는 프로그램이라는 사실에서 비롯됩니다.

PostScript와 달리 PDF는 프로그래밍 언어가 아닙니다. PostScript를 PDF (또는 다른 것)로 변환 할 때 실제로 PostScript 프로그램을 실행하고 PostScript 프로그램의 실행 중에 실행되는 그래픽 원시 호출을 기록해야합니다.

포스트 스크립트 프로그램을 모든 소스에서 PDF로 변환하려는 경우이 일반적인 방법이 필요합니다.

하지만 당신은 직접 포스트 스크립트 코드를 작성한다고 썼습니다. 아마도 포스트 스크립트 프로그램은 드로잉 프리미티브에 대한 호출의 선형 시퀀스 일 뿐이며 서브 루틴이나 제어 구조와 같은 것을 사용하지 않을 수도 있습니다.

그렇지 않은 경우 생성시 생성시 계산이 수행되도록 변경할 수 있습니다 (현재 인쇄 시간에 수행됨). 드로잉 프리미티브 (primitive)에 대한 호출의 선형 시퀀스가 ​​끝날 것이다.

인쇄시 계산이 더 이상 필요하지 않은 경우 PostScript 대신 PDF를 직접 작성하는 것이 어렵지 않습니다. 이 answer은 MIT 스타일 라이센스를 사용하는 오픈 소스 PDF 생성 라이브러리에 대해 언급합니다.

+0

재미 있고, 당신 말이 맞습니다. 우리는 제한된 포스트 스크립트 명령 세트를 사용하고 있습니다. 아무 것도 복잡하다고 생각하지 않습니다. 그러나 당신의 생각은 내가 생각하기에 일해야합니다. 아마도 불필요하게 복잡한 솔루션을 찾고 있었을 것입니다 ... – Sil

관련 문제