Ми можемо легко відобразити файли DOC або DOCX на веб-сторінках HTML програмним шляхом у хмарі. Це може бути корисним для перегляду документів Word у будь-якому браузері без надання спільного доступу до оригінальних файлів. У цій статті ми дізнаємося, як відобразити документ Word на сторінці HTML за допомогою REST API у PHP.
У цій статті будуть розглянуті такі теми:
- Word to HTML Viewer REST API та PHP SDK
- Відображення документа Word на сторінці HTML за допомогою REST API у PHP
- Вставити документ Word в існуючу сторінку HTML
- Відображайте документ Word у HTML із водяним знаком за допомогою PHP
Word to HTML Viewer REST API та PHP SDK
Для відтворення документів Word у HTML ми будемо використовувати PHP SDK GroupDocs.Viewer Cloud API. Це дозволяє програмно відтворювати та переглядати підтримувані формати файлів документів і зображень. Встановіть його за допомогою такої команди в консолі:
composer require groupdocscloud/groupdocs-viewer-cloud
Після інсталяції використовуйте автозавантаження Composers, щоб використовувати SDK, як показано нижче:
require_once('vendor/autoload.php');
Будь ласка, отримайте свій ідентифікатор клієнта та секрет із інформаційної панелі, перш ніж виконувати вказані дії. Отримавши ідентифікатор і секрет, додайте код, як показано нижче:
// Цей приклад коду демонструє, як додати ідентифікатор і секрет клієнта в код.
static $ClientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
static $ClientSecret = 'b377c36cfa28fa69960ebac6b6e36421';
static $ApiBaseUrl = 'https://api.groupdocs.cloud';
static $MyStorage = '';
// Ініціалізація конфігурації
$configuration = new GroupDocs\Viewer\Configuration();
// Налаштування конфігурацій
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);
Відображення документа Word на сторінці HTML за допомогою REST API у PHP
Ми можемо відобразити вміст документа Word у HTML, виконавши прості кроки, наведені нижче:
- Завантажте файл DOCX у хмару
- Відобразити документ Word на сторінці HTML
- Завантажити відтворений файл
Завантажте документ
По-перше, ми завантажимо файл DOCX у хмару за допомогою зразка коду, наведеного нижче:
// Цей приклад коду демонструє, як завантажити файл DOCX у хмару.
// Ініціалізувати API
$apiInstance = new GroupDocs\Viewer\FileApi($configuration);
// Вхідний шлях до файлу
$file = "C:\\Files\\Viewer\\input.docx";
// Запит на завантаження файлу
$request = new GroupDocs\Viewer\Model\Requests\uploadFileRequest("input.docx", $file);
// Завантажити файл
$response = $apiInstance->uploadFile($request);
У результаті завантажений файл буде доступний у розділі файлів інформаційної панелі в хмарі.
Відображення документа Word на сторінці HTML за допомогою PHP
Тепер ми відтворимо або відобразимо вміст завантаженого документа Word на сторінках HTML, виконавши наведені нижче дії.
- По-перше, створіть екземпляр ViewAPI.
- Далі створіть екземпляр ViewOptions.
- Потім укажіть шлях до вхідного файлу.
- Також встановіть ViewFormat як «HTML».
- Далі ініціалізуйте об’єкт HtmlOptions.
- Потім установіть різні властивості, наприклад IsResponsive, ForPrinting тощо.
- Після цього створіть CreateViewRequest з ViewOptions як аргумент.
- Нарешті, перетворіть Word у HTML за допомогою методу createView().
У наведеному нижче прикладі коду показано, як відобразити файл Word у HTML за допомогою REST API у PHP.
// Цей приклад коду демонструє, як перевести DOCX у HTML.
// Ініціалізувати API
$apiInstance = new GroupDocs\Viewer\ViewApi($configuration);
// Визначте ViewOptions
$viewOptions = new Model\ViewOptions();
// Вхідний шлях до файлу
$fileInfo = new Model\FileInfo();
$fileInfo->setFilePath("input.docx");
$viewOptions->setFileInfo($fileInfo);
// Встановити ViewFormat
$viewOptions->setViewFormat(Model\ViewOptions::VIEW_FORMAT_HTML);
// Визначте параметри HTML
$renderOptions = new Model\HtmlOptions();
// Налаштуйте його на реагування
$renderOptions->setIsResponsive(true);
// Набір для друку
$renderOptions->setForPrinting(true);
// Призначити параметри візуалізації
$viewOptions->setRenderOptions($renderOptions);
// Створити запит на перегляд
$request = new Requests\CreateViewRequest($viewOptions);
// Створити перегляд
$response = $apiInstance->createView($request);
// Готово
echo "HtmlViewerResponsiveLayout completed: ", count($response->getPages());
echo "\n";
Ми можемо налаштувати відтворення Word у HTML, застосувавши такі параметри:
- Відображати певний діапазон сторінок
// Pass specific range of page numbers to render.
// This will render all pages from starting from page 1 to 3.
$renderOptions->setStartPageNumber(1);
$renderOptions->setCountPagesToRender(3);
- Виводити лише вибрані сторінки
// Pass specific page numbers to render.
// This will render only page number 1 and 3.
$renderOptions->setPagesToRender([1, 3]);
- Переглядайте сторінки в певному порядку
// Pass page numbers in the order you want to render them
$renderOptions->setPagesToRender([2, 1]);
- Відобразити документ із коментарями
$renderOptions->setRenderComments(true);
Завантажити HTML-сторінки
Наведений вище зразок коду збереже відтворені сторінки HTML у хмарі. Його можна завантажити за допомогою наступного зразка коду:
// Цей приклад коду демонструє, як завантажити відтворені HTML-сторінки з хмари.
$fileApi = new GroupDocs\Viewer\FileApi($configuration);
// Отримати всі сторінки
$pages = $response->getPages();
// Зберігайте сторінки одну за одною
foreach ($pages as $page)
{
// Створити запит на завантаження файлу
$downloadFileRequest = new GroupDocs\Viewer\Model\Requests\DownloadFileRequest($page->getPath(), "");
// Завантажити файл
$file = $fileApi->DownloadFile($downloadFileRequest);
echo "$page downloaded!";
echo "\n";
}
Вставити документ Word в існуючу сторінку HTML
Ми також можемо вставити документ Word в існуючу сторінку HTML, виконавши наведені нижче дії.
- По-перше, створіть екземпляри ViewAPI і FileAPI.
- Далі створіть екземпляр ViewOptions.
- Потім укажіть шлях до вхідного файлу.
- Також встановіть ViewFormat як «HTML».
- Далі ініціалізуйте об’єкт HtmlOptions.
- Потім установіть різні властивості, наприклад IsResponsive, ForPrinting тощо.
- Після цього створіть CreateViewRequest з ViewOptions як аргумент.
- Потім перетворіть Word у HTML за допомогою методу createView().
- Далі завантажте існуючий файл HTML і отримайте елементи тегу body
- Потім прочитайте HTML кожної сторінки та додайте в тег body
- Після цього збережіть оновлений HTML за допомогою методу saveHTML().
- Нарешті, збережіть файл HTML за допомогою методу file\put\contents().
У наведеному нижче прикладі коду показано, як вставити документ Word у наявну сторінку HTML за допомогою REST API у PHP.
// Цей приклад коду демонструє, як перевести DOCX у HTML.
// Ініціалізувати API
$apiInstance = new GroupDocs\Viewer\ViewApi($configuration);
$fileApi = new GroupDocs\Viewer\FileApi($configuration);
// Визначте ViewOptions
$viewOptions = new Model\ViewOptions();
// Вхідний шлях до файлу
$fileInfo = new Model\FileInfo();
$fileInfo->setFilePath("input.docx");
$viewOptions->setFileInfo($fileInfo);
// Встановити ViewFormat
$viewOptions->setViewFormat(Model\ViewOptions::VIEW_FORMAT_HTML);
// Визначте параметри HTML
$renderOptions = new Model\HtmlOptions();
// Налаштуйте його на реагування
$renderOptions->setIsResponsive(true);
// Набір для друку
$renderOptions->setForPrinting(true);
// Призначити параметри візуалізації
$viewOptions->setRenderOptions($renderOptions);
// Створити запит на перегляд
$request = new Requests\CreateViewRequest($viewOptions);
// Створити перегляд
$response = $apiInstance->createView($request);
// Завантажте існуючий файл HTML
$domDoc = new DOMDocument();
$domDoc->loadHTMLFile("C:\Files\Viewer\Sample.html");
$body = $domDoc->GetElementsByTagName('body')->item(0);
// Отримати сторінки
$pages = $response->getPages();
// Вставте всі відтворені сторінки HTML у тег body існуючого HTML
foreach ($pages as $page)
{
// Створити запит на завантаження файлу
$downloadFileRequest = new GroupDocs\Viewer\Model\Requests\DownloadFileRequest($page->getPath(), "");
// Завантажити перетворену сторінку
$file = $fileApi->DownloadFile($downloadFileRequest);
// Прочитайте HTML із файлу завантаження
$html = file_get_contents($file->getRealPath());
//Додати вміст до фрагменту
$fragment = $domDoc->createDocumentFragment();
$fragment->appendXML("<div>$html</div>");
// Додайте елемент до тіла
$body->appendChild($fragment);
}
// Зберегти оновлений HTML
$output = $domDoc->saveHTML();
// Збережіть файл
file_put_contents("C:\Files\Viewer\Sample.html", $output);
Відображайте документ Word у HTML із водяним знаком за допомогою PHP
Ми можемо додати текст водяного знака під час програмного відтворення документів Word на сторінках HTML, виконавши наведені нижче кроки:
- По-перше, створіть екземпляр ViewAPI.
- Далі створіть екземпляр ViewOptions.
- Потім укажіть шлях до вхідного файлу.
- Також встановіть ViewFormat як «HTML».
- Далі створіть і призначте екземпляр водяного знака.
- Потім встановіть розмір водяного знака та текст.
- Після цього створіть CreateViewRequest з ViewOptions як аргумент.
- Нарешті, перетворіть Word у HTML за допомогою методу createView().
У наведеному нижче прикладі коду показано, як відобразити документ Word у HTML із водяним знаком за допомогою REST API у PHP.
// Цей приклад коду демонструє, як відобразити Word у HTML із водяним знаком.
// Ініціалізувати API
$apiInstance = new GroupDocs\Viewer\ViewApi($configuration);
// Визначте ViewOptions
$viewOptions = new Model\ViewOptions();
// Вхідний шлях до файлу
$fileInfo = new Model\FileInfo();
$fileInfo->setFilePath("input.docx");
$viewOptions->setFileInfo($fileInfo);
// Встановити ViewFormat
$viewOptions->setViewFormat(Model\ViewOptions::VIEW_FORMAT_HTML);
// Визначте водяний знак
$watermark = new Model\Watermark();
$watermark->setText("This is sample text watermark!");
$watermark->setSize(100);
$watermark->setColor("Red");
$viewOptions->setWatermark($watermark);
// Створити запит на перегляд
$request = new Requests\CreateViewRequest($viewOptions);
// Створити перегляд
$response = $apiInstance->createView($request);
// Готово
echo "AddWatermark completed: ", count($response->getPages());
echo "\n";
Спробуйте онлайн
Будь ласка, спробуйте наведений нижче безкоштовний онлайн-інструмент візуалізації DOCX, розроблений за допомогою вищезазначеного API. https://products.groupdocs.app/viewer/docx
Висновок
У цій статті ми дізналися, як:
- переглядати документ Word на веб-сторінці HTML, що підтримується браузером, за допомогою PHP;
- налаштувати відтворення Word у HTML;
- вставити документ Word в існуючу веб-сторінку HTML;
- перегляд вмісту файлу Word у форматі HTML із водяним знаком;
- програмно завантажити файл DOCX у хмару;
- завантажити відтворені HTML-файли з хмари.
Крім того, ви можете дізнатися більше про GroupDocs.Viewer Cloud API за допомогою документації. Ми також надаємо розділ API Reference, який дозволяє візуалізувати наші API та взаємодіяти з ними безпосередньо через браузер. У разі будь-яких неясностей зв’яжіться з нами на форумі.