일반화하다

일반화하다

내 요청이 지나치게 구체적이어서 사과드립니다. 하지만 그게 바로 그 내용입니다...

일반화하다

내가 사용하고 있는 컴퓨터는 데비안을 실행하고 있습니다. 나는 렌더링하고 싶다임상 문서 아키텍처 (CDA)문서를 PDF로 변환하여 첨부 파일로 보냅니다. Chrome이 완전히 실패했습니다. Firefox거의제대로 작동하고 xmltoTeX을 원합니다(과거에는 이 상자에 TeX를 설치하는 것이 문제였습니다). 대안이 있나요?

세부 사항

CDA 문서는 기본적으로 zipXML, 스타일 및 이미지를 포함하는 편집 파일 트리입니다. 내 경우에는 파일 트리가 다음과 같았습니다.

$ 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

노트:

  1. DOC0001.XML데이터 페이로드입니다. 다른 모든 파일은 단지 장식일 뿐입니다.
  2. INDEX.HTM렌더링이 아닙니다 DOC0001.XML. 링크가 포함된 완전히 별도의 페이지입니다 DOC0001.XML.외.) 및 일부 설명 텍스트.
  3. README.TXT그다지 많지는 않습니다. 위의 정보와 unzip파일을 만드는 방법만 설명되어 있습니다.
  4. Summary.pdf그렇다면 왜 내 문제 가 해결되지 않습니까 ? 불행하게도 이 PDF에는많은.../DOC0001.XML(실제 데이터를 포함하고 있는)에는 소비자와 관련 없는 항목이 많이 포함되어 있기 때문에 관련 없는 정보입니다 . 아무런 어려움 없이 해당 XML을 편집할 수 있고 편집된 XML을 렌더링할 수도 있지만( Firefox아래 섹션 참조) 편집된 XML을 PDF로 변환할 수 없습니다. 따라서 질문입니다.

시도했지만 실패했다

크롬 합금

나는 Chrome(일명 google-chrome-stable) 버전 = 60.0.3112.90(현재 Debian 버전 = 8.9라고 생각하며 현재 Debian 안정 버전이라고 생각함)을 가지고 있습니다. 내가 할 때

  1. Ctrl-o
  2. 정규화된 경로를 제공합니다..../MachineReadable_XDMFormat/IHE_XDM/my_ID/DOC0001.XML

Chrome은 아무 작업도 수행하지 않습니다. 오류는 없지만 완전히 빈 페이지/탭도 표시됩니다. 마찬가지로 만약 내가

  1. Ctrl-o
  2. 정규화된 경로를 제공합니다..../MachineReadable_XDMFormat/INDEX.HTM
  3. 링크를 클릭해 주세요DOC0001.XML

Chrome은 INDEX.HTM올바르게 렌더링되지만 에서는 이전과 같이 표시됩니다 DOC0001.XML.

파이어폭스 브라우저

내 Firefox 버전 = 54.0(현재 Debian 버전 = 8.9가 최신 버전이라고 생각하며 현재 Debian은 안정적이라고 생각합니다). 내가 할 때

  1. Ctrl-o
  2. 정규화된 경로를 제공합니다..../MachineReadable_XDMFormat/IHE_XDM/my_ID/DOC0001.XML

Firefox는 문서를 적절하고 예쁘게 렌더링합니다. 그래서 나는 일반적인 Firefox 기능을 사용하여 이것을 인쇄할 수 있다고 생각했지만 ... 꽤 긴 4페이지를 Print to File인쇄하려고 했기 때문에 실패했습니다 .DOC0001.XML

  1. 첫 번째는 Buncha 짧은 섹션입니다.
  2. 두 번째 항목에는 header=만 있고 Results다른 텍스트는 없습니다. XML에서는 <section>모든 실제 데이터(예: s)가 포함됩니다 <item>.
  3. 세 번째 인쇄 시도모두실제 데이터. 불행하게도 한 페이지에 인쇄할 데이터가 거의 없습니다. 상황을 처리하지 못하고 Print to File개별 페이지만 잘립니다.:-(
  4. 4th에는 일부 메타데이터가 있으며 대부분의 "정보"는 INDEX.HTM.

xmlto

xmlto(같은 이름의 데비안 패키지에서) 시도했지만

  1. FO를 실행하기를 원하며 이를 위해서는 로컬에서 문제가 되는 TeX가 필요합니다( internal아래 섹션 참조).
  2. 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

제한 요인

외부

  1. Big Faceless Org와 해당 CDA 문서에 인코딩된 정보가 이를 제공합니다. CDA는 해당 분야의 정보 교환을 위한 표준 형식으로 나타나므로 이것이 무리한 것은 아닙니다.
  2. 정보를 CDA 문서로 인코딩하려는 사람들은 이메일을 통해 팩스나 PDF를 사용할 수 있지만 그보다 더 복잡한 것은 없습니다.
  3. 팩스를 사용할 수 없습니다.

내부

즉, 내 쪽의 제약 사항은 다음과 같습니다.

  1. 저는 데비안 버전=8.9를 사용하고 있습니다...
  2. ...사용 가능한 디스크 공간이 충분하지 않은 상자에 있거나 디스크 공간이 올바르게 할당되지 않았을 수 있습니다. 대략적인 결과는...
  3. ...마지막으로 설치하려고 했을 때 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
    

관련 정보