빠른 답변 - 아니요. 브라우저 간 해결책을 찾지 못할 가능성이 있습니다. PDF 완벽 솔루션을 찾는 것은 거의 불가능합니다. 사용자가 HTML을 편집하고 서버에서 PDF를 생성하도록하는 것이 좋습니다.
왜 - PDF 형식은 동시에 화려하고 악마처럼 보입니다. 이식성이 뛰어나기 때문에 훌륭하지만 내부 구조와 저장 메커니즘으로 인해 악마 같은 존재입니다. HTML과 같이 친숙한 'DOM'은 없습니다. 우리가 이식 가능한 문서 형식을 개발하기 위해 새로 시작한다면 우리가 선택할 PDF가 아닙니다. 그러나 PDF는 현재 너무 많은 기세가 없어져 버립니다.
젊은 시청자는이 조병의 형식이 어떻게 시장을 선도하는 위치에 왔는지, 어디에서 왔는지 궁금 할 것입니다. 글쎄, PDF의 창립자가 XML, JSON, HTML 및 인터넷 이전의 디자인을 발표했을 때, 그들은 오늘날의 문서 공유를 염두에두고 작업하지 않았다. PostScript 프린터 드라이버 개념 인 인쇄 지침을 인코딩하는 더 나은 방법을 연구하고있었습니다. 프린터가 프린터를 사용하기 전에는 편집 할 수 없으며 다른 용도로는 쓸모가 없었습니다. 그런 다음 누군가가 PostScript 드로잉 지침을 화면으로 해석 할 수 있다는 사실을 알아 차린 후이를 이동 가능한 교차 장치 디스플레이 개념으로 채택 할 수있는 환상적인 잠재력을 발견했습니다. 그리고 여기 있습니다.
질문으로 돌아 가기 - 의미있는 GUI 방식으로 PDF를 편집하려면 PDF의 압축을 풀고 구성 요소 (이미지, 형식이 지정된 텍스트, 페이지)를 디스플레이 장치에 렌더링해야합니다. 그러면 사람들이 레이아웃을 엉망으로 만들 수 있습니다. 그런 다음 PDF를 다시 포장하십시오. PDF 표준에 따라이 작업을 완벽하게 수행해야합니다. 그렇지 않으면 편집 된 PDF 파일의 다운 스트림 소비자가 충돌하거나 렌더링 할 수없는 경우가 있습니다.다양한 Acrobat 표준 레벨과 편집 패키지 (Word, Illustrator, InDesign) 공급 업체가 PDF 파일을 처리하는 단축키 및 확장 기능을 제공해야합니다. 레이어, 축소판 그림 등이 포함됩니다.
그러면 색상이 나타납니다. PDF 사양을 읽으면 원래 PDF 제작자가 사용할 수있는 색상 공간 옵션 배열이 있음을 알 수 있습니다. 화면상의 적절한 장치 색상과 뒷면의 색상으로이를 해석해야합니다.
글꼴. 글꼴은 부분 집합에 포함되거나 포함되지 않을 수 있습니다. PDF와의 충실도를 유지하려면 그리기 표면의 벡터 그래픽으로 PDF에 정의 된 크기로 글리프를 구현해야합니다. 이는 주로 플랫폼에 종속적 인 유형 라이브러리 (까다로운 크로스 플랫폼)를 활용하는 것을 의미합니다. 또한 대부분의 사람들이 엉덩이와 전문가를 보는데 사용하기를 원하는 글꼴에 대해 비싸지 만 적절한 사용을 위해 글꼴을 라이센스해야합니다.
PDF에서 레이어링, 크기 조정 및 회전 기능을 사용하면 HTML 캔버스를 그리기 화면으로 볼 수 있습니다. 알고있는 사람이라면 캔버스 세계에서 워드 프로세싱 유형 기능에 대해 많은 것을 알게 될 것입니다.
불가능하지 않지만 어렵습니다.
PDF를 디스플레이로 렌더링하는 구성 요소는 주로 인쇄 드라이버로 작동하며 PDF 드로잉 지침을 철저히 준수하며 대개 래스터 또는 SVG 그래픽을 생성합니다. 이것은 일방 통행 거리입니다. 그들은 읽고 그리지 만, 그려진 물건에 '핸들'에 대한 감각이 없습니다. 아무 핸들도 조작을 의미하지 않으며,이 사람들은 확실히 당신이 수정하고 다시 쓸 수 있도록하려는 의도가 거의 없습니다.
많은 'PDF로 저장'제품을 찾을 수 있습니다. 클라이언트 측에서는 픽셀 집합을 잡아 내고 래스터 그래픽을 'PDF'정의가 가장 얇은 베니어 파일로 감싸는쪽으로 기울어 질 것입니다. 서버 기반의 경우에는 매우 강력합니다. Aspose와 ABCPDF와 같은 도구가 많이 있지만, PDF 서버를 제공하는 것이 좋습니다.하지만 이는 OP에서 찾지 않은 것입니다.
요약 - 매우 복잡한 주제입니다. 잠재적 인 것으로 여겨지는 것이 있다면 PDF 기능에 대한 많은 제약이있을 수 있으며 따라서 안전하게 편집 할 수있는 것에 대한 제한이있을 것입니다.
궁극적으로 PDF로 내 보낸 문서를 온라인으로 편집하려면 문서 소스의 html 버전을 유지하고 사용자가 TinyMCE, CKEditor 등으로이 파일을 편집하도록 한 다음 저장된 원본 HTML을 가져 와서 PDF로 렌더링하는 서버 측 도구 ABCPDF와 같은 도구를 사용하면 이미지, 머리말 및 꼬리말, 페이지 번호 등을 충실하게 HTML에 렌더링 할 수 있습니다.
이것은 글꼴에 대한 절충점이 있지만 (가정의 필요성에 대한 실용적인 답입니다. 라이센싱) 문제, 브라우저 기반 편집자의 clunkiness, 일부 HTML 편집 구성 요소에 의해 규정 된 HTML의 모든 이상한 점 등이 있습니다. 그러나 그것은 실행 가능합니다.
최종 생각 - 필요한 범위를 다시 생각해보십시오. 서버에서 HTML 편집 및 PDF로 변환하는 것이 유용 할 수 있다면 잘된 방법이며 클라이언트 및 서버가 무료 및 상용 구성 요소를 모두 찾을 수 있습니다.
편집 : PDF에 주석을 추가해야하는 경우 작업이 훨씬 수월합니다. 서버에서 문서의 페이지 이미지를 생성하여 클라이언트로 보내고 사용자에게 표시하고 사용자가 마크 업하도록하고 주석의 좌표를 서버에 다시 캡처 한 다음 서버 측 PDF 라이브러리를 사용하여 주석을 PDF로 렌더링합니다. 서버 측 PDF를 이미지 조작 및 클라이언트 측 프리젠 테이션 및 주석 캡처에 사용하려면 다양한 스킬 셋이 필요하지만 성취 할 수 있습니다.
[PDFNetJS] (https://blog.pdftron.com/2015/11/10/pdfnetjs-html5-pdf-viewer-and-editor/)에서 살펴볼 수 있습니다. – ConnorsFan
나는 그것을 보았다. 그것은 조금 과잉이다. 하나 또는 두 개의 JS 파일을 포함하는 대신 여러 개의 자산 폴더를 포함해야하는 것처럼 보입니다.이 파일을 내 환경 (Siebel 응용 프로그램)에서 작동시키기는 어려울 것입니다. 그럼에도 불구하고 나는이 파일을 찾을 때까지이 파일을 시도하고 있습니다. 더 나은 솔루션. – neilsimp1
PDFNetJS는 일부 이진 데이터 인 .mem 파일을 검색하려고합니다. 이것은 내가 사용하고있는 응용 프로그램 (Siebel)에서 제공 할 수 없으므로 이것이 옵션이 아닌 것처럼 보입니다. – neilsimp1