내 요청이 지나치게 구체적이어서 사과드립니다. 하지만 그게 바로 그 내용입니다...
일반화하다
내가 사용하고 있는 컴퓨터는 데비안을 실행하고 있습니다. 나는 렌더링하고 싶다임상 문서 아키텍처 (CDA)문서를 PDF로 변환하여 첨부 파일로 보냅니다. Chrome이 완전히 실패했습니다. Firefox거의제대로 작동하고 xmlto
TeX을 원합니다(과거에는 이 상자에 TeX를 설치하는 것이 문제였습니다). 대안이 있나요?
세부 사항
CDA 문서는 기본적으로 zip
XML, 스타일 및 이미지를 포함하는 편집 파일 트리입니다. 내 경우에는 파일 트리가 다음과 같았습니다.
$ find | sort # edited for brevity and PII
.
./MachineReadable_XDMFormat
./MachineReadable_XDMFormat/HTML
./MachineReadable_XDMFormat/HTML/IMAGES
# list of PNGs omitted
./MachineReadable_XDMFormat/HTML/STYLE
./MachineReadable_XDMFormat/HTML/STYLE/colors.css
./MachineReadable_XDMFormat/HTML/STYLE/main.css
./MachineReadable_XDMFormat/IHE_XDM
./MachineReadable_XDMFormat/IHE_XDM/my_ID
./MachineReadable_XDMFormat/IHE_XDM/my_ID/DOC0001.XML # see note#=1
./MachineReadable_XDMFormat/IHE_XDM/my_ID/METADATA.XML
./MachineReadable_XDMFormat/IHE_XDM/my_ID/STYLE.XSL
./MachineReadable_XDMFormat/INDEX.HTM # see note#=2
./MachineReadable_XDMFormat/README.TXT # see note#=3
./MachineReadable_XDMFormat/Summary.pdf # see note#=4
노트:
DOC0001.XML
데이터 페이로드입니다. 다른 모든 파일은 단지 장식일 뿐입니다.INDEX.HTM
렌더링이 아닙니다DOC0001.XML
. 링크가 포함된 완전히 별도의 페이지입니다DOC0001.XML
.외.) 및 일부 설명 텍스트.README.TXT
그다지 많지는 않습니다. 위의 정보와unzip
파일을 만드는 방법만 설명되어 있습니다.Summary.pdf
그렇다면 왜 내 문제 가 해결되지 않습니까 ? 불행하게도 이 PDF에는많은.../DOC0001.XML
(실제 데이터를 포함하고 있는)에는 소비자와 관련 없는 항목이 많이 포함되어 있기 때문에 관련 없는 정보입니다 . 아무런 어려움 없이 해당 XML을 편집할 수 있고 편집된 XML을 렌더링할 수도 있지만(Firefox
아래 섹션 참조) 편집된 XML을 PDF로 변환할 수 없습니다. 따라서 질문입니다.
시도했지만 실패했다
크롬 합금
나는 Chrome(일명 google-chrome-stable
) 버전 = 60.0.3112.90(현재 Debian 버전 = 8.9라고 생각하며 현재 Debian 안정 버전이라고 생각함)을 가지고 있습니다. 내가 할 때
Ctrl-o
- 정규화된 경로를 제공합니다.
.../MachineReadable_XDMFormat/IHE_XDM/my_ID/DOC0001.XML
Chrome은 아무 작업도 수행하지 않습니다. 오류는 없지만 완전히 빈 페이지/탭도 표시됩니다. 마찬가지로 만약 내가
Ctrl-o
- 정규화된 경로를 제공합니다.
.../MachineReadable_XDMFormat/INDEX.HTM
- 링크를 클릭해 주세요
DOC0001.XML
Chrome은 INDEX.HTM
올바르게 렌더링되지만 에서는 이전과 같이 표시됩니다 DOC0001.XML
.
파이어폭스 브라우저
내 Firefox 버전 = 54.0(현재 Debian 버전 = 8.9가 최신 버전이라고 생각하며 현재 Debian은 안정적이라고 생각합니다). 내가 할 때
Ctrl-o
- 정규화된 경로를 제공합니다.
.../MachineReadable_XDMFormat/IHE_XDM/my_ID/DOC0001.XML
Firefox는 문서를 적절하고 예쁘게 렌더링합니다. 그래서 나는 일반적인 Firefox 기능을 사용하여 이것을 인쇄할 수 있다고 생각했지만 ... 꽤 긴 4페이지를 Print to File
인쇄하려고 했기 때문에 실패했습니다 .DOC0001.XML
- 첫 번째는 Buncha 짧은 섹션입니다.
- 두 번째 항목에는 header=만 있고
Results
다른 텍스트는 없습니다. XML에서는<section>
모든 실제 데이터(예: s)가 포함됩니다<item>
. - 세 번째 인쇄 시도모두실제 데이터. 불행하게도 한 페이지에 인쇄할 데이터가 거의 없습니다. 상황을 처리하지 못하고
Print to File
개별 페이지만 잘립니다.:-(
- 4th에는 일부 메타데이터가 있으며 대부분의 "정보"는
INDEX.HTM
.
xmlto
xmlto
(같은 이름의 데비안 패키지에서) 시도했지만
- FO를 실행하기를 원하며 이를 위해서는 로컬에서 문제가 되는 TeX가 필요합니다(
internal
아래 섹션 참조). xmlto
오류 메시지(아래)로 판단하면 이(CDA) 문서의 루트가 ∉이므로 이 XML이 올바르게 렌더링되는지 조차 확신할 수 없습니다{appendix article bibliography book chapter colophon dedication glossary index part preface qandaset refentry reference sect1 section set setindex}
.
내가 시도한 것:
me@it:~ $ pushd /path/to/CDA/
me@it:/path/to/CDA $ ls -al
> drwxr-xr-x 4 me me 4096 Jul 21 10:38 MachineReadable_XDMFormat
> -rw-r--r-- 1 me me 1075851 Jul 21 13:35 Summary.pdf
me@it:/path/to/CDA $ date ; xmlto pdf ./MachineReadable_XDMFormat/IHE_XDM/my_ID/DOC0001.XML ; date
> Wed Aug 2 15:03:17 MST 2017
> xmlto: /path/to/CDA/MachineReadable_XDMFormat/IHE_XDM/my_ID/DOC0001.XML does not validate (status 3)
> xmlto: Fix document syntax or use --skip-validation option
> validity error : no DTD found!
...
me@it:/path/to/CDA $ date ; find ./ -type f | fgrep -ie 'dtd' | wcl
> Wed Aug 2 15:04:10 MST 2017
> 0
me@it:/path/to/CDA $ date ; xmlto --skip-validation pdf ./MachineReadable_XDMFormat/IHE_XDM/my_ID/DOC0001.XML ; date
> Wed Aug 2 15:04:32 MST 2017
> ERROR: Document root element for FO output must be one of the following elements: appendix article bibliography book chapter colophon dedication glossary index part preface qandaset refentry reference sect1 section set setindex
> PassiveTeX is needed for this format, but it is not installed. Please install the passivetex package.
> Wed Aug 2 15:04:33 MST 2017
# Note PassiveTeX is a *TeX package
me@it:/path/to/CDA $ date ; xmlto --with-fop --skip-validation pdf ./MachineReadable_XDMFormat/IHE_XDM/my_ID/DOC0001.XML ; date
> Wed Aug 2 15:12:39 MST 2017
> ERROR: Document root element for FO output must be one of the following elements: appendix article bibliography book chapter colophon dedication glossary index part preface qandaset refentry reference sect1 section set setindex
> [Fatal Error] :-1:-1: Premature end of file.
> Exception
> org.apache.fop.apps.FOPException: org.xml.sax.SAXParseException; Premature end of file.
> javax.xml.transform.TransformerException: org.xml.sax.SAXParseException; Premature end of file.
>
> /tmp/xmlto.SEzLdk
> Wed Aug 2 15:12:41 MST 2017
제한 요인
외부
- Big Faceless Org와 해당 CDA 문서에 인코딩된 정보가 이를 제공합니다. CDA는 해당 분야의 정보 교환을 위한 표준 형식으로 나타나므로 이것이 무리한 것은 아닙니다.
- 정보를 CDA 문서로 인코딩하려는 사람들은 이메일을 통해 팩스나 PDF를 사용할 수 있지만 그보다 더 복잡한 것은 없습니다.
- 팩스를 사용할 수 없습니다.
내부
즉, 내 쪽의 제약 사항은 다음과 같습니다.
- 저는 데비안 버전=8.9를 사용하고 있습니다...
- ...사용 가능한 디스크 공간이 충분하지 않은 상자에 있거나 디스크 공간이 올바르게 할당되지 않았을 수 있습니다. 대략적인 결과는...
...마지막으로 설치하려고 했을 때
texlive
공간 부족으로 인해 설치(IIRC)가 실패했습니다. 이는 단순히 파티션이 아닌 모든 파티션의 파티션인 내 파티션/
에 할당된 공간이 부족 하기 때문일 수 있습니다{/boot, /home, /swap}
. 세부 사항:# I tweak the header, but the data comes from ... me@it:~ $ df --human-readable | fgrep -ve 'Filesystem' | sort --key=2 --reverse --sort=human-numeric Filesystem Size Used Avail Use% Mounted on /dev/mapper/LVM2_crypt-home 322G 304G 19G 95% /home /dev/dm-2 20G 18G 891M 96% / tmpfs 1.6G 1.3M 1.6G 1% /run/shm /dev/sda3 477M 73M 375M 17% /boot # ... rest are fake filesystems like `/dev` # Notes on `lsblk`: # `sda1` == pre-installed Windows system drive # `sda2` == pre-installed Windows apps drive # Both are whackable, but I lack the time to reallocate the space # (and possibly reinstall after unforeseen/disastrous failure). me@it:~ $ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 465.8G 0 disk ├─sda1 8:1 0 16.6G 0 part ├─sda2 8:2 0 97.7G 0 part ├─sda3 8:3 0 500M 0 part /boot └─sda5 8:5 0 351G 0 part └─LVM2_crypt 254:0 0 351G 0 crypt ├─LVM2_crypt-swap 254:1 0 3.9G 0 lvm ├─LVM2_crypt-root 254:2 0 20G 0 lvm / └─LVM2_crypt-home 254:3 0 327.1G 0 lvm /home sr0 11:0 1 1024M 0 rom