В предположении, что вы работаете на сервере Windows, я собираюсь предложить другой подход: используя библиотеки классов COM или DOTNET, доступные в PHP на Windows (http://php.net/manual/en/book.com.php). Если нет, пожалуйста, игнорируйте мой ответ, поскольку он не будет работать.
Моя идея - использовать возможности макроса собственного Excel для выбора области печати и использования встроенной функции «Экспорт в PDF». Таким образом, форматы ячеек должны оставаться неповрежденными. Поэтому ваш .xlsw становится файлом .xlsm с добавлением необходимого кода VBA для выбора правильного диапазона (область печати) и экспорта в PDF. Затем библиотеки классов COM или DOTNET будут использоваться для установки электронной таблицы и доступа к открытым объектам (включая макросы). Вы также можете управлять экспортом через автоматизацию COM/DOTNET и не использовать макрос, если у вас нет контроля над самой электронной таблицей.
Заметил, что Dev перемещен в SpeadSheets, но я не могу этого сделать. –