Дефис Prince XML для внешних языков, не работающих в DocRaptor API - PullRequest
0 голосов
/ 05 июня 2019

Я установил prince xml в локальной среде в linux.

Свойство переноса работает в локальной среде для тамильского языка, когда я добавляю приведенный ниже код CSS в файл hyph.css в исходной папке prince стиля.

:lang(ta) { 
    hyphens:auto;
    prince-hyphenate-patterns: url("../hyph/hyph-ta.pat"); 
}

и скопировав требуемый файл hyph-ta.pat в папку hyph в исходных папках принца.

  • Теперь перенос работает в сгенерированном pdf из htmlконтент в локальной среде, созданный принцем xml.

  • Контент, предоставляемый принцу xml, может быть предоставлен удаленным URL для генерации в локальной сети.

  • В случае API князя xml, такого как DocRaptor, у нас не было доступа к исходному файлу принца для копирования / редактирования файлов hyph-ta.pat и hyph.css.

  • Для DocRaptorAPI я дам контент для генерации pdf по HTML-содержимому, а не по удаленному URL.

  • Итак, я написал вышеупомянутый код CSS в свойстве стиля содержимого HTML, которое будет даноAPI DocRaptor.И если мы изменим значение свойства prince-hyphenate-pattern в html-содержимом на http-ресурс, URL-адрес указывает на файл hyph-ta.pat

    :lang(ta) { 
      hyphens:auto;
      prince-hyphenate-patterns: url("http://../hyph-ta.pat"); 
    }
    

    , то перенос не сработает в сгенерированном pdf.

Существуют ли какие-либо другие требования, необходимые для работы с переносами в API Docraptor?

Всякий раз, когда я указывал в файле ресурсов http для свойства "prince-hyphenate-Patterns" переносыне работал в сгенерированном документе PDF как в локальной среде, так и в API DocRaptor.

1 Ответ

0 голосов
/ 05 июня 2019

Основным отличием DocRaptor от локального экземпляра PrinceXML является тот факт, что преобразование DocRaptor происходит извне на наших собственных серверах.

Это означает, что, хотя ваш локальный экземпляр PrinceXML может использовать вашу локальную файловую систему для доступа к hyph-ta.pat, DocRaptor не может. Решением здесь является то, что hyph-ta.pat нужно будет связать либо из общедоступного источника, либо он будет виден извне другим способом. То есть, вместо того, чтобы URL был чем-то вроде "../hyph/hyph-ta.pat", он должен быть чем-то вроде "https://hyph -pattern-source.com / hyph / hyph-ta .pat"(Это просто пример формата, а не реальный URL).

Дайте мне знать, если это поможет ответить на ваш вопрос. Если вам нужно что-то еще, мы будем рады помочь!

С наилучшими пожеланиями,

Джон (который направил мне этот ответ)

Служба поддержки DocRaptor

...