오늘 아침에 좋은 생각이 나서 하고 싶었어요공유하다누군가가 이미 어딘가에서 개발했는지 확인해보세요!
Mozilla 그룹은 현재 모든 PDF 코드를 HTML5로 변환할 수 있는 JavaScript 애플리케이션을 구축하고 있으므로 외부 PDF 리더(Adobe, Evince, Xpdf 등)에 대한 플러그인이 필요하지 않습니다. 현재는 확장이지만 향후 브라우저 커널에 포함될 수 있습니다.https://github.com/mozilla/pdf.js.
그것과 온라인 텍스트 편집기(codeMirror)를 사용하여 내 응용 프로그램 중 일부가 실행되고 있습니다.PDF라텍스서버 측에서...일부 (La)TeX 온라인 기능을 제공합니다. 이것은 일반적입니다.
(La)TeX 코드를 직접 구문 분석하고 인쇄할 준비가 된 PDF와 화면의 페이지 방향을 렌더링할 수 있는 동일한 종류의 JavaScript를 사용하는 것은 어떻습니까? 최종 사용자의 경우 PDF 웹 브라우저가 있지만 소스 코드를 보라고 요청할 때 (LaTeX) 코드가 있습니다. 최종 HTML5 코드는 디버깅을 제외하면 실제로 보이지 않으며 클래식 C 개발의 어셈블리 코드와 비슷해집니다.
이것은 모든 과학 논문의 (LaTeX) 소스 코드에 대한 액세스를 제공합니다. 오히려 수학 공식을 재발명하고 제가 틀리지 않았다면이것이 바로 아이디어입니다.수십 년 전에 TeX을 만들 때였습니다. 사람들은 DVI, PS, PDF 코드가 아닌 (La)TeX 코드를 공유해야 합니다. 클라이언트 브라우저(Firefox, Chrome, Opera, Safari 등)가 처리해야 합니다.PDF라텍스로컬에서 처리하세요!
내 요구 사항을 다른 방식으로 설명하겠습니다.
저는 20년 동안 업계에 종사하고 있으며 여러분 중 많은 분들처럼 대학에서 TeX와 LaTeX를 사용하곤 합니다. 문서화 시스템에 대한 우리의 실제 주요 요구 사항을 살펴보면, 제가 일하는 적어도 중요한 임베디드 시스템인 산업계에서는 다음과 같은 요구 사항이 있다고 생각합니다.
프로그래밍 가능한 문서 시스템 비공식 영어 설명 내에서 고객 요구 사항을 처리하여 요구 사항 추적성, 설계 문서, 테스트 시퀀스 등과 같은 많은 항목을 도출하고 자동화할 수 있습니다.
매우 훌륭하고 전문적인 렌더링, 완벽한 그래프, 표, 다이어그램...
해당 문서가 해당 버전이고 내용이 변경되지 않음을 보장합니다. 웹은 인쇄물에 표시되는 일부 "디지털 서명/다이제스트"를 제공하지 않습니다. 최고의 "영구 링크", "영구 콘텐츠" 시스템은 PDF 형식이고 이것이 공식 문서가 PDF인 이유입니다(불행히도 이것은 최적화된 형식은 아니지만 정적 문서가 필요한 모든 곳에 사용됩니다)
LaTeX에서 생성된 PDF 문서는 업계에서 MS Word나 다른 LibreOffice만 사용하는 경우보다 이러한 요구 사항을 훨씬 더 잘 충족한다는 것은 잘 알려져 있습니다.
이 접근 방식을 바꿀 수 있는 것은 "클라우드 컴퓨팅"의 도래입니다. 그 자체로는 혁명적인 아이디어가 아니라 결코 클라우드 컴퓨팅이 될 수 없다는 사실입니다.다운로드 중파일.
Mozilla의 jsPDF 확장과 Chrome 내장 PDF 리더가 첫 번째 단계를 밟고 있으며 PDF가 실제로 다른 HTML 페이지와 유사하다는 점을 보여주고 있으며(Google도 이를 찾고 있음) 이는 정적(고유 링크/영구 콘텐츠)이 필요한 산업에 매우 중요합니다. ) 문서.
최고 품질의 PDF는 LaTeX/TikZ 소스에서 나오므로 이제 클라우드에서 실제로 효율적인 문서 시스템을 업계에 제공할 수 있는 기회입니다.
그러나 여러분(TeX 전문가)이 TeX 변형을 위한 그러한 작은 고급 기능을 놓고 싸우고 있다면 우리는 Web LaTeX를 볼 기회가 없을 것이며 더 중요한 것은 언젠가 업계에서 LateX가 사용되는 것을 볼 기회가 없을 것입니다.
복잡성 때문에 불가능하다고 말하는 것이 옳을 수도 있습니다. 저는 2년 전에 JavaScript PDF 리더에 대해 똑같은 생각을 했고 지금은 Adobe 기본 리더에 비해 결과가 꽤 좋은 것 같습니다.
JavaScript에 관해 저는 이 언어를 싫어하지만 이것이 클라이언트 측에서 지원되는 유일한 언어입니다.
답변1
재미를 망치고 싶지는 않지만 고려해야 할 몇 가지 문제가 있습니다.
LaTeX는 매크로 언어 TeX의 매크로 형식/패키지일 뿐입니다. 그러나 많은 TeX 컴파일러가 있습니다:
- 텍스
- e-TeX를 사용한 TeX
- pdfTeX
- XeTeX
- 루아텍스
- VTeX
- 다른 많은 …
LaTeX 파일은 다른 컴파일러에서 제공하지 않는 컴파일러 기능을 사용하기 때문에 특정 컴파일러에 따라 달라질 수 있습니다.
나는 TeX의 JavaScript 버전을 모릅니다. Java를 시도한 프로젝트(NTS, ExTeX)도 다소 실패했습니다.
파일을 컴파일하는 데 필요할 수 있는 다른 프로그램이 있습니다.
- 인덱스 생성: Makeindex, Xindy
- 참고문헌: bibtex, bibtex8, biber, …
- 외부 프로그램을 호출할 수 있는 쉘 이스케이프 기능이 있습니다.
- …
LaTeX 파일은 어떻게 컴파일해야 하는지, 어떤 프로그램이 어떤 순서로 필요한지, 어떤 인수가 필요한지, 얼마나 자주...
"LaTeX 파일"은 다른 파일, 외부 이미지 등을 포함하는 마스터 파일로 구성할 수 있습니다.
LaTeX 파일을 컴파일하려면 일반적으로 보조 파일을 쓰고 읽을 수 있는 기능이 필요합니다.
일반적으로 LaTeX 파일에는 다른 패키지, 파일 및 글꼴이 필요합니다. 따라서 (매일) 업데이트가 포함된 전체 TeX 배포판이 어느 정도 필요할 것입니다.
…