Отображение содержимого PDF-файла на странице с помощью Coldfusion - PullRequest
0 голосов
/ 12 февраля 2019

У меня есть страница, посвященная стандартным операционным процедурам (SOP).Я хочу, чтобы эта страница отображала СОП на странице с кнопкой загрузки над ней (а для администратора - кнопкой загрузки).По сути, я хочу, чтобы пользователь мог читать СОП, не загружая его.У меня отсортированы кнопки и у меня почти установлен дисплей, но формат выключен.

Администратор может загрузить PDF текущей SOP.Затем этот файл сохраняется и перезаписывает эту последнюю загрузку.Я пытался использовать cffile , но это было невозможно прочитать независимо от того, какую кодировку я пытался использовать.В настоящее время я беру файл и распаковываю его как .txt, затем использую cffile , чтобы прочитать его в переменную, которую я затем выведу на экран.Это вроде работает, но форматирование все неправильно.

Я знаю, что могу использовать cfcontent и просто сделать страницу PDF, но я бы не стал возиться с добавлением новой страницы только для администраторов для загрузки новых файлов SOP.(При создании сайта это должна быть новая страница)

<cfpdf
action="extracttext"
source="D:\file_path\SOP.pdf"
overwrite="true"
honourspaces="true"
type="string"
useStructure="true"
destination="D:\file_path\SOP.txt">

<cffile
action="read"
file="D:\file_path\SOP.txt"
variable="dcnSOP">

...


<cfoutput>#dcnSOP#</cfoutput>

По сути, я получаю блок неформатированного (как в пробелах и новых абзацах) текста.Это текст, который я хочу, и он находится на той странице, где я хочу.Но это выглядит ужасно.Кажется, что он просто избавляется от любых новых символов строки и просто представляет текст в BLOB-объекте.Есть ли лучший способ сделать это, не используя всю страницу в формате PDF, используя cfcontent ?

1 Ответ

0 голосов
/ 13 февраля 2019

Спасибо @ Miguel-F и @Ageax за предложения и наводящие меня на вопрос, который я пропустил здесь, когда искал ответ.

<embed src="\file_path\SOP.pdf" width="800px" height="2100px"/>

Это работает со всеми браузерами, кроме Chrome (наши клиенты не будут использовать мобильные браузеры).Я знаю, что вы можете использовать Google PDF Reader, чтобы обойти это, если кто-то заинтересован в этом, вот пример, приведенный @ Script47 здесь :

 <embed src="https://drive.google.com/viewerng/
viewer?embedded=true&url=http://example.com/the.pdf" width="500" height="375">
...